- From: Darin Fisher <darin@chromium.org>
- Date: Fri, 12 Feb 2010 01:00:24 -0800
- To: Drew Wilson <atwilson@google.com>
- Cc: robert@ocallahan.org, Henri Sivonen <hsivonen@iki.fi>, John Gregg <johnnyg@google.com>, Olli@pettay.fi, public-webapps <public-webapps@w3.org>
- Message-ID: <bd8f24d21002120100l14acb5b4k1a2fd73950aed1ed@mail.gmail.com>
On Wed, Feb 10, 2010 at 4:16 PM, Drew Wilson <atwilson@google.com> wrote: > > > On Wed, Feb 10, 2010 at 3:31 PM, Robert O'Callahan <robert@ocallahan.org>wrote: > >> On Thu, Feb 11, 2010 at 12:03 PM, Drew Wilson <atwilson@google.com>wrote: >> >>> On Wed, Feb 10, 2010 at 2:33 PM, Robert O'Callahan < >>> robert@ocallahan.org> wrote: >>> >>> >>>> I think a better way to go would be to support a restricted subset of >>>> HTML, and then consider how the UA should extract text for a plaintext-only >>>> notification framework (possibly opting to fall back to non-native >>>> notifications if the text extraction doesn't work). For example, you could >>>> allow only <b> and <img> elements, and for text-only notifications you would >>>> strip <b> and use the alt text for <img>, and if the author didn't provide >>>> alt text for <img> then and only then you would fall back to non-native >>>> notifications. >>>> >>>> It seems unusual to me that in a spec directed at HTML-based UAs, we >>> would define some sort of domain-specific markup language rather than simply >>> supporting HTML. Browsers know how to render HTML and can extract text >>> appropriately if for some reason they need to down-render (for example, see >>> the textContent and innerText element properties). Why would we define a >>> separate markup language to allow defining marked up text that can be >>> rendered differently depending on the display capabilities - isn't that what >>> HTML is for? Is there an advantage to defining a subset? >>> >> >> If it supports, e.g., scripting, then you have to define what the >> relationship is between the browsing context for the notification and the >> browsing context for the opener. Can a notification document navigate itself >> using document.location = "..."? At that point, this sounds like a >> specialized version of window.open. If that's your intent, maybe we should >> just add a flag to window.open? >> > > I agree - the spec needs to define all of the implications of HTML support > as well as any restrictions as to its use. On the bright side, from a > security standpoint treating an HTML notification as its own browsing > context ala window.open() is a well-understood model. > > As for using a specialized version of window.open() for notifications - > that's an interesting suggestion. I think we'd still need to deal with the > permission grant issue as well as having a good way to generate > icon+header+body notifications from the HTML for compatibility with > Growl/NotifyOSD/mobile platforms - I still think that having some way for > the developer to explicitly specify a title/icon/body is superior to having > the browser have to infer these pieces from a parsed DOM tree. But it's a > good point that this starts to feel more like window.open(). > > Maybe something like this? icon ==> <link rel="icon" header ==> <title> body ==> document.body.innerText > Stepping back from the HTML issue, I note that one of the things in the > NotifyOSD/DBUS API is the concept of a client-specified "replace ID" - the > idea is that client applications can give their notifications a replace ID, > and when that application displays a notification with that ID it replaces > any currently displayed notification with that ID. I think that something > like this would solve one of the core issues with the proposed notification > API, which is avoiding duplicate notifications in the case where you have > the same web page open in multiple windows. > > If we supported an optional "replace ID" parameter in createNotification(), > then a page that wanted to have (say) a "you have new mail" notification > could give that notification an ID of "new_mail", so if any other page under > the same origin tried to display a notification with a "new_mail" ID it > would just replace the existing notification rather than displaying a > duplicate notification. If we don't support this, apps have to jump through > hoops using SharedWorkers or other methods to make sure they don't annoy the > user with duplicate notifications. > ReplaceID sounds quite useful. -Darin > > >> >> Rob >> -- >> "He was pierced for our transgressions, he was crushed for our iniquities; >> the punishment that brought us peace was upon him, and by his wounds we are >> healed. We all, like sheep, have gone astray, each of us has turned to his >> own way; and the LORD has laid on him the iniquity of us all." [Isaiah >> 53:5-6] >> > >
Received on Friday, 12 February 2010 09:00:54 UTC