[prev in list] [next in list] [prev in thread] [next in thread] 

List:       webkit-dev
Subject:    Re: [webkit-dev] Request for position on Badging API
From:       Maciej Stachowiak <mjs () apple ! com>
Date:       2020-02-20 0:37:53
Message-ID: 3A0034E1-2A4F-4332-AFE5-67239FF25F51 () apple ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


> On Feb 19, 2020, at 4:35 PM, Maciej Stachowiak <mjs@apple.com> wrote:
> 
> 
> 
> > On Feb 19, 2020, at 4:31 PM, Matt Giuca <mgiuca@chromium.org <mailto:mgiuca@chromium.org>> wrote:
> > 
> > 
> > 
> > On Thu, 20 Feb 2020 at 11:18, Ryosuke Niwa <rniwa@webkit.org <mailto:rniwa@webkit.org>> wrote:
> > 
> > On Wed, Feb 19, 2020 at 3:29 PM Matt Giuca <mgiuca@chromium.org <mailto:mgiuca@chromium.org>> wrote:
> > On Wed, 19 Feb 2020 at 18:14, Ryosuke Niwa <rniwa@webkit.org <mailto:rniwa@webkit.org>> wrote:
> > 
> > On Tue, Feb 18, 2020 at 4:02 PM Matt Giuca <mgiuca@chromium.org <mailto:mgiuca@chromium.org>> wrote:
> > Thanks for the replies. Folding both Dean and Ryosuke's emails into one.
> > 
> > On Mon, 17 Feb 2020 at 03:03, Dean Jackson <dino@apple.com <mailto:dino@apple.com>> wrote:
> > Not speaking for all of WebKit, and definitely not all of Apple, but I think this seems like a good \
> > idea. 
> > I'm not sure I get the distinction between app badges and document badges though. I'd also like to \
> > see some specification text describing how the browser should ignore multiple set/clear operations \
> > executed in rapid succession (e.g. to create a blinking badge) - maybe the limit is one badge \
> > operation per minute or something? 
> > Good suggestion. Filed an issue: https://github.com/WICG/badging/issues/68 \
> > <https://github.com/WICG/badging/issues/68> 
> > Also, given that the main use case for this would be alerting the user to a notification, it seems \
> > like it should be able to link it directly to that. This would provide the ability for a push \
> > notification to trigger the badge without ever firing up the page context. 
> > I'm not sure what you mean by "link directly to that". We've deliberately specified this as separate \
> > to notifications (since you may or may not want the badge to be set without one). If you want to show \
> > a notification and a badge at the same time, you can use both APIs together. If you want to have a \
> > push notification set the badge when the service worker runs, you can do that (but as has been \
> > discussed at length: https://github.com/WICG/badging/issues/28 \
> > <https://github.com/WICG/badging/issues/28>, you can't currently set a badge without a notification \
> > from a push message). 
> > On Mon, 17 Feb 2020 at 03:49, Ryosuke Niwa <rniwa@webkit.org <mailto:rniwa@webkit.org>> wrote:
> > For the record, we have two concerns raised internally at Apple:
> > * The integration of this API with push service worker would require running scripts in order to \
> > update the badge. This will pose a serious power consumption issue. 
> > That isn't a feature of the current proposal. The spec doesn't give service worker push any new \
> > capabilities that it didn't already have (in particular, if the browser requires the push message to \
> > show a notification, that is still true; you simply cannot set a badge from a push message without \
> > showing a notification). See https://github.com/WICG/badging/issues/28 \
> > <https://github.com/WICG/badging/issues/28>and \
> > https://github.com/WICG/badging/blob/master/explainer.md#background-updates \
> > <https://github.com/WICG/badging/blob/master/explainer.md#background-updates>. 
> > This is something we've given some thought to. We (Google) would like to eventually see it possible \
> > to set a badge in the background without a notification. But the power consumption and privacy issues \
> > are well known, and at this stage, it is not being proposed. 
> > Because all background processes (including non-foreground tabs) are suspend on iOS, this makes this \
> > feature pretty much useless. If the user is currently seeing a website, then there is no need for \
> > updating the badge since the user is already there. On the other hand, if the user isn't currently \
> > seeing the website, then the website' scripts are never gonna run. 
> > I see. So it sounds like this API would be useful but only once combined with a future proposal to \
> > let badges be set via push. 
> > 
> > * We don't want every website to start using this API to increase "engagement".
> > 
> > Do you mean as a way of drawing additional attention to itself? Well, the setAppBadge API can only be \
> > used by installed applications, so that doesn't apply to every site the user might visit. And the \
> > user agent / OS can provide the user with UI to suppress badges on a per-app basis if an app is too \
> > spammy. The setClientBadge API could be used by any website to draw attention, but the user agent \
> > should make the badge sufficiently subtle that this is no more abusive than a favicon, which can \
> > already be used to show a pseudo-badge. 
> > Since there is not a concept of installed web apps in Safari on macOS, this isn't going to work \
> > there. 
> > The setClientBadge API still makes sense on Safari on macOS.
> > 
> > It doesn't because we don't have a concept of installed apps, and we don't want to let any website \
> > use this API as that may annoy users. 
> > I just want to be clear about what setClientBadge is for. (And note that nobody has implemented this \
> > yet; it's just in the draft spec as proposed by Marcos Caceres from Firefox.) 
> > This has nothing to do with installed apps. It's just about being able to badge the current \
> > document's tab, as seen in the first screenshot in the explainer: \
> > https://github.com/WICG/badging/blob/master/explainer.md#overview \
> > <https://github.com/WICG/badging/blob/master/explainer.md#overview> This is something that sites can \
> > already do (by modifying the page's favicon), but the API gives sites a way to set the badge \
> > semantically, which is advantageous because it means the UA can provide a consistent look and feel \
> > across all sites, accessibility features can announce badge changes, etc.
> 
> Does this mean it's specifically not intended for app icon badging at all? Would that need a whole \
> different API, then, or can this API scale to that use case?

I should have read the link. It looks like it's intended for both use cases. We were probably only \
thinking of app icon badging (macOS dock, iOS home screen, etc when reviewing the spec).

 - Maciej


> - Maciej
> 
> > 
> > 
> > - R. Niwa
> > 
> > On Sun, Jan 19, 2020 at 16:27 Matt Giuca <mgiuca@chromium.org <mailto:mgiuca@chromium.org>> wrote:
> > Hi WebKit team,
> > 
> > I have previously proposed the Badging API (https://github.com/WICG/badging \
> > <https://github.com/WICG/badging>) to provide websites with a mechanism to set a badge (a small dot \
> > or number) on the current document's tab, or for installed applications, on the app icon in the \
> > system shelf or home screen. 
> > Would WebKit / Safari be interested in implementing the API now or in the future?
> > 
> > We are planning to ship in Chromium soon:
> > https://groups.google.com/a/chromium.org/g/blink-dev/c/fHc49JNFTAU/m/bJD25Yr7CAAJ \
> > <https://groups.google.com/a/chromium.org/g/blink-dev/c/fHc49JNFTAU/m/bJD25Yr7CAAJ> 
> > Regards
> > 
> > 
> > Matt Giuca
> > _______________________________________________
> > webkit-dev mailing list
> > webkit-dev@lists.webkit.org <mailto:webkit-dev@lists.webkit.org>
> > https://lists.webkit.org/mailman/listinfo/webkit-dev \
> >                 <https://lists.webkit.org/mailman/listinfo/webkit-dev>
> > -- 
> > - R. Niwa
> > _______________________________________________
> > webkit-dev mailing list
> > webkit-dev@lists.webkit.org <mailto:webkit-dev@lists.webkit.org>
> > https://lists.webkit.org/mailman/listinfo/webkit-dev \
> > <https://lists.webkit.org/mailman/listinfo/webkit-dev>
> _______________________________________________
> webkit-dev mailing list
> webkit-dev@lists.webkit.org <mailto:webkit-dev@lists.webkit.org>
> https://lists.webkit.org/mailman/listinfo/webkit-dev \
> <https://lists.webkit.org/mailman/listinfo/webkit-dev>


[Attachment #5 (unknown)]

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body \
style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br \
class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Feb 19, 2020, at 4:35 PM, \
Maciej Stachowiak &lt;<a href="mailto:mjs@apple.com" class="">mjs@apple.com</a>&gt; wrote:</div><br \
class="Apple-interchange-newline"><div class=""><div style="caret-color: rgb(0, 0, 0); font-family: \
Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; \
letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; \
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><br \
class="Apple-interchange-newline"><br class=""><blockquote type="cite" class=""><div class="">On Feb 19, \
2020, at 4:31 PM, Matt Giuca &lt;<a href="mailto:mgiuca@chromium.org" \
class="">mgiuca@chromium.org</a>&gt; wrote:</div><br class="Apple-interchange-newline"><div class=""><div \
dir="ltr" class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: \
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; \
text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; \
-webkit-text-stroke-width: 0px; text-decoration: none;"><br class="Apple-interchange-newline"><br \
class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, 20 Feb 2020 at 11:18, Ryosuke \
Niwa &lt;<a href="mailto:rniwa@webkit.org" class="">rniwa@webkit.org</a>&gt; wrote:<br \
class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; \
border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" \
class=""><div dir="ltr" class=""><br class=""></div><div class="gmail_quote"><div dir="ltr" \
class="gmail_attr">On Wed, Feb 19, 2020 at 3:29 PM Matt Giuca &lt;<a href="mailto:mgiuca@chromium.org" \
target="_blank" class="">mgiuca@chromium.org</a>&gt; wrote:<br class=""></div><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" class=""><div dir="ltr" \
class="">On Wed, 19 Feb 2020 at 18:14, Ryosuke Niwa &lt;<a href="mailto:rniwa@webkit.org" target="_blank" \
class="">rniwa@webkit.org</a>&gt; wrote:<br class=""></div><div class="gmail_quote"><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" class=""><div dir="ltr" \
class=""><br class=""></div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 18, \
2020 at 4:02 PM Matt Giuca &lt;<a href="mailto:mgiuca@chromium.org" target="_blank" \
class="">mgiuca@chromium.org</a>&gt; wrote:<br class=""></div><blockquote class="gmail_quote" \
style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: \
rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" class=""><div dir="ltr" class="">Thanks for the \
replies. Folding both Dean and Ryosuke's emails into one.</div><div dir="ltr" class=""><br \
class=""></div><div dir="ltr" class=""><div dir="ltr" class="gmail_attr">On Mon, 17 Feb 2020 at 03:03, \
Dean Jackson &lt;<a href="mailto:dino@apple.com" target="_blank" class="">dino@apple.com</a>&gt; \
wrote:<br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; \
border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: \
1ex;"><div class="">Not speaking for all of WebKit, and definitely not all of Apple, but I think this \
seems like a good idea.<div class=""><br class=""></div><div class="">I'm not sure I get the distinction \
between app badges and document badges though. I'd also like to see some specification text describing \
how the browser should ignore multiple set/clear operations executed in rapid succession (e.g. to create \
a blinking badge) - maybe the limit is one badge operation per minute or \
something?</div></div></blockquote><div class=""><br class=""></div><div class="">Good suggestion. Filed \
an issue:&nbsp;<a href="https://github.com/WICG/badging/issues/68" target="_blank" \
class="">https://github.com/WICG/badging/issues/68</a></div><div class=""><br class=""></div><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div class=""><div class="">Also, given that \
the main use case for this would be alerting the user to a notification, it seems like it should be able \
to link it directly to that. This would provide the ability for a push notification to trigger the badge \
without ever firing up the page context.<br class=""></div></div></blockquote><div class=""><br \
class=""></div><div class="">I'm not sure what you mean by "link directly to that". We've deliberately \
specified this as separate to notifications (since you may or may not want the badge to be set without \
one). If you want to show a notification and a badge at the same time, you can use both APIs together. If \
you want to have a push notification set the badge when the service worker runs, you can do that (but as \
has been discussed at length:&nbsp;<a href="https://github.com/WICG/badging/issues/28" target="_blank" \
class="">https://github.com/WICG/badging/issues/28</a>, you<span \
class="Apple-converted-space">&nbsp;</span><i class="">can't</i>&nbsp;currently set a badge without a \
notification from a push message).</div></div><br class=""><div class="gmail_quote"><div dir="ltr" \
class="gmail_attr">On Mon, 17 Feb 2020 at 03:49, Ryosuke Niwa &lt;<a href="mailto:rniwa@webkit.org" \
target="_blank" class="">rniwa@webkit.org</a>&gt; wrote:<br class=""></div><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div class=""><div class=""><div dir="auto" \
class="">For the record, we have two concerns raised internally at Apple:</div></div><div dir="auto" \
class="">&nbsp;* The integration of this API with push service worker would require running scripts in \
order to update the badge. This will pose a serious power consumption issue.</div></div></blockquote><div \
class=""><br class=""></div><div class="">That isn't a feature of the current proposal. The spec doesn't \
give service worker push any new capabilities that it didn't already have (in particular, if the browser \
requires the push message to show a notification, that is still true; you simply cannot set a badge from \
a push message without showing a notification). See&nbsp;<a \
href="https://github.com/WICG/badging/issues/28" target="_blank" \
class="">https://github.com/WICG/badging/issues/28</a>and&nbsp;<a \
href="https://github.com/WICG/badging/blob/master/explainer.md#background-updates" target="_blank" \
class="">https://github.com/WICG/badging/blob/master/explainer.md#background-updates</a>.</div><div \
class=""><br class=""></div><div class="">This is something we've given some thought to. We (Google) \
would like to eventually see it possible to set a badge in the background without a notification. But the \
power consumption and privacy issues are well known, and at this stage, it is not being \
proposed.</div></div></div></blockquote><div class=""><br class=""></div><div class="">Because all \
background processes (including non-foreground tabs) are suspend on iOS, this makes this feature pretty \
much useless. If the user is currently seeing a website, then there is no need for updating the badge \
since the user is already there. On the other hand, if the user isn't currently seeing the website, then \
the website' scripts are never gonna run.</div></div></div></blockquote><div class=""><br \
class=""></div><div class="">I see. So it sounds like this API would be useful but only once combined \
with a future proposal to let badges be set via push.</div><div class="">&nbsp;</div><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" class=""><div \
class="gmail_quote"><div class=""><br class=""></div><blockquote class="gmail_quote" style="margin: 0px \
0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); \
padding-left: 1ex;"><div dir="ltr" class=""><div class="gmail_quote"><blockquote class="gmail_quote" \
style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: \
rgb(204, 204, 204); padding-left: 1ex;"><div class=""><div dir="auto" class="">&nbsp;* We don't want \
every website to start using this API to increase "engagement".</div></div></blockquote><div class=""><br \
class=""></div><div class="">Do you mean as a way of drawing additional attention to itself? Well, the \
setAppBadge API can only be used by installed applications, so that doesn't apply to every site the user \
might visit. And the user agent / OS can provide the user with UI to suppress badges on a per-app basis \
if an app is too spammy. The setClientBadge API could be used by any website to draw attention, but the \
user agent should make the badge sufficiently subtle that this is no more abusive than a favicon, which \
can already be used to show a pseudo-badge.</div></div></div></blockquote><div class=""><br \
class=""></div><div class="">Since there is not a concept of installed web apps in Safari on macOS, this \
isn't going to work there.</div></div></div></blockquote><div class=""><br class=""></div><div \
class="">The setClientBadge API still makes sense on Safari on macOS.</div></div></div></blockquote><div \
class=""><br class=""></div><div class="">It doesn't because we don't have a concept of installed apps, \
and we don't want to let any website use this API as that may annoy \
users.</div></div></div></blockquote><div class=""><br class=""></div><div class="">I just want to be \
clear about what setClientBadge is for. (And note that nobody has implemented this yet; it's just in the \
draft spec as proposed by Marcos Caceres from Firefox.)</div><div class=""><br class=""></div><div \
class="">This has nothing to do with installed apps. It's just about being able to badge the current \
document's&nbsp;tab, as seen in the first screenshot in the explainer:</div><div class=""><a \
href="https://github.com/WICG/badging/blob/master/explainer.md#overview" \
class="">https://github.com/WICG/badging/blob/master/explainer.md#overview</a><br class=""></div><div \
class="">This is something that sites can already do (by modifying the page's favicon), but the API gives \
sites a way to set the badge semantically, which is advantageous because it means the UA can provide a \
consistent look and feel across all sites, accessibility features can announce badge changes, \
etc.</div></div></div></div></blockquote><div class=""><br class=""></div><div class="">Does this mean \
it's specifically not intended for app icon badging at all? Would that need a whole different API, then, \
or can this API scale to that use case?</div></div></div></blockquote><div><br class=""></div>I should \
have read the link. It looks like it's intended for both use cases. We were probably only thinking of app \
icon badging (macOS dock, iOS home screen, etc when reviewing the spec).</div><div><br \
class=""></div><div>&nbsp;- Maciej<br class=""><div><br class=""></div><br class=""><blockquote \
type="cite" class=""><div class=""><div style="caret-color: rgb(0, 0, 0); font-family: Helvetica; \
font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: \
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: \
0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><div class="">&nbsp;- \
Maciej</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class="" \
style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none;"><div class="gmail_quote"><div class="">&nbsp;</div><blockquote \
class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; \
border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" class=""><div \
class="gmail_quote"><div class=""><br class=""></div><div class="">- R. Niwa</div><div class=""><br \
class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; \
border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" \
class=""><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; \
border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: \
1ex;"><div dir="ltr" class=""><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0px \
0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); \
padding-left: 1ex;"><div dir="ltr" class=""><div class="gmail_quote"><blockquote class="gmail_quote" \
style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: \
rgb(204, 204, 204); padding-left: 1ex;"><div class=""><div class=""><div class="gmail_quote"><div \
dir="ltr" class="gmail_attr">On Sun, Jan 19, 2020 at 16:27 Matt Giuca &lt;<a \
href="mailto:mgiuca@chromium.org" target="_blank" class="">mgiuca@chromium.org</a>&gt; wrote:<br \
class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; \
border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div dir="ltr" \
class="">Hi WebKit team,<br class=""><br class="">I have previously proposed the Badging API (<a \
href="https://github.com/WICG/badging" target="_blank" class="">https://github.com/WICG/badging</a>) to \
provide websites with a mechanism to set a badge (a small dot or number) on the current document's tab, \
or for installed applications, on the app icon in the system shelf or home screen.<br class=""><br \
class="">Would WebKit / Safari be interested in implementing the API now or in the future?<br \
class=""><br class="">We are planning to ship in Chromium soon:<br class=""><a \
href="https://groups.google.com/a/chromium.org/g/blink-dev/c/fHc49JNFTAU/m/bJD25Yr7CAAJ" target="_blank" \
class="">https://groups.google.com/a/chromium.org/g/blink-dev/c/fHc49JNFTAU/m/bJD25Yr7CAAJ</a><br \
class=""><br class="">Regards</div><div dir="ltr" class=""><br class=""><br class="">Matt Giuca<br \
class=""></div>_______________________________________________<br class="">webkit-dev mailing list<br \
class=""><a href="mailto:webkit-dev@lists.webkit.org" target="_blank" \
class="">webkit-dev@lists.webkit.org</a><br class=""><a \
href="https://lists.webkit.org/mailman/listinfo/webkit-dev" rel="noreferrer" target="_blank" \
class="">https://lists.webkit.org/mailman/listinfo/webkit-dev</a><br \
class=""></blockquote></div></div></div>--<span class="Apple-converted-space">&nbsp;</span><br \
class=""><div dir="ltr" class="">- R. \
Niwa</div></blockquote></div></div></blockquote></div></div></blockquote></div></div></blockquote></div></div></blockquote></div></div><span \
class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none; float: none; display: inline \
!important;">_______________________________________________</span><br class="" style="caret-color: \
rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; \
font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; \
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><span \
class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none; float: none; display: inline !important;">webkit-dev mailing list</span><br \
class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none;"><span class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; \
font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: \
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: \
0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;"><a \
href="mailto:webkit-dev@lists.webkit.org" class="">webkit-dev@lists.webkit.org</a></span><br class="" \
style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none;"><span class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; \
font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: \
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: \
0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;"><a \
href="https://lists.webkit.org/mailman/listinfo/webkit-dev" \
class="">https://lists.webkit.org/mailman/listinfo/webkit-dev</a></span></div></blockquote></div><br \
class="" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \
font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none;"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; \
font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: \
start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; \
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" \
class="">_______________________________________________</span><br style="caret-color: rgb(0, 0, 0); \
font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: \
normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: \
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><span \
style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; \



_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-dev


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic