The obvious solution here is to make alerts tab-modal, but there are nasty technical reasons as to why we can't do so. (I can elaborate if you want.)
--
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CACWgwAaSZ21AETDn2hF991MaacYzxRUHxezXsTZQDJi5btmd5Q%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CABg10jyw5PrsmFSa-9AZNStbTTEePBW7LBw11GF4c_heW35irg%40mail.gmail.com.
The problem that I have with 2 is that rather than a contained change that doesn't affect the content api and is easily implementable today, that approach would involve massive plumbing changes.
Also, you speak about the "top-level window being blurred". Is that something that the web authors can see? I don't see how we can do this entirely using web-visible attributes.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CACWgwAYjsW-Uj-267DsFmbUfFZH8HT692yfmFEuh7b%3D7K6y9OQ%40mail.gmail.com.
I was picturing that this all happens on the blink side of the content boundary and that content doesn't need to know anything about this. But, I haven't looked at the code in question in a long while. Is that unreasonable for some reason? Ultimately, the calls all originate in Blink.
We might want consider in extending visibilitychange to have a new value for the case where a tab is foreground, but in an unfocused window.+Ilya Grigorik wdyt?
We need *some* way for web authors to reason about what's going to happen when they use these APIs.
On Thu, Apr 14, 2016 at 12:49 AM, Ojan Vafai <oj...@chromium.org> wrote:I was picturing that this all happens on the blink side of the content boundary and that content doesn't need to know anything about this. But, I haven't looked at the code in question in a long while. Is that unreasonable for some reason? Ultimately, the calls all originate in Blink.Doing this at the embedder level simplifies things greatly, because that means that we can implement it one platform at a time. Otherwise this becomes a huge discussion that we'll have to have with every embedder.
We might want consider in extending visibilitychange to have a new value for the case where a tab is foreground, but in an unfocused window.+Ilya Grigorik wdyt?And this is where I start worrying. We're trying to reduce usage of these ancient APIs that are way too powerful by reducing their power, and you're suggesting that to do so we start adding new stuff to the web platform, just for them? :(
We need *some* way for web authors to reason about what's going to happen when they use these APIs.But the web authors have better solutions: don't do that. They have notifications. They're easy to sub in for alert, and for confirm they can be used for the focus stealing, alerting the user that a decision needs to be made when they switch back.
I see us as having two choices. 1. Do this at the embedder level. It's significantly simpler and easier to implement, but has the downside that perhaps the web authors have less visibility into what's going on, or 2. Do this in Blink, which significantly complicates things as it affects every embedder out there, but has the upside that we can give web authors more visibility as to what's going on... for an obsolete API that we're already trying to discourage, and only if we add more stuff to the web platform to support us depowering this obsolete API.
--Avi
You received this message because you are subscribed to the Google Groups "Chrome Intervention Team" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chrome-interventio...@google.com.
To post to this group, send email to chrome-inter...@google.com.
To view this discussion on the web visit https://groups.google.com/a/google.com/d/msgid/chrome-intervention-team/CACWgwAZ2jvo9yRR_OhcH5cYVv4knBfiEwpLhCMJh%3DtGfwwx9Cg%40mail.gmail.com.
For the sake of codebase simplicity, I think we want to do this for all embedders eventually unless there is specific pushback. Who do we contact for this? The embedders I know of are Opera and Chromium Embedded Framework. Are there others? Can we ask them if they care?
I'm sold.
On Mon, Apr 18, 2016 at 2:11 PM, Ojan Vafai <oj...@chromium.org> wrote:For the sake of codebase simplicity, I think we want to do this for all embedders eventually unless there is specific pushback. Who do we contact for this? The embedders I know of are Opera and Chromium Embedded Framework. Are there others? Can we ask them if they care?Opera and CEF are the big ones. I've already run this by Philip Jägenstedt, who's commented on the doc, but he didn't comment on the "Opera" section which is good news. :) I haven't yet run this by Marshall; I'm going to do that right now.Every time I've done any significant change to this area, it's never been an issue with the embedders, but with Android WebView. Any change we make has to allow it to continue to comply with the API contracts that it has made.
I'm sold.Excellent.As a side note, I'm planning on logging in the devtools console when we do anything fancy. Even though this will be embedder-side, I want to make ensure that the answer to "wait, what just happened" is still "look at the console".
Avi