-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Figure out a means to "consume user activation" #36727
Comments
Why are those not interoperable? At least PaymentRequest calls "consume user activation" in its spec, and per the WebDex link I posted, so do several others. |
Thanks... this is what I found:
Generally speaking, anything that requires user permission prompts probably can't be used, because those are usually modal (and non-cancellable) on mobile browsers. So, a third option is seeing if there is a useful intersection in the above that covers all engines (and it would be a somewhat ugly hack). However, I'm not seeing anything very viable from the above. |
Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. #36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3
Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. #36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4023882 Commit-Queue: Mustaq Ahmed <[email protected]> Reviewed-by: Robert Flack <[email protected]> Cr-Commit-Position: refs/heads/main@{#1070478}
Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. web-platform-tests/wpt#36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4023882 Commit-Queue: Mustaq Ahmed <[email protected]> Reviewed-by: Robert Flack <[email protected]> Cr-Commit-Position: refs/heads/main@{#1070478}
Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. #36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4023882 Commit-Queue: Mustaq Ahmed <[email protected]> Reviewed-by: Robert Flack <[email protected]> Cr-Commit-Position: refs/heads/main@{#1070478}
@domenic, @mustaqahmed, what's the resistance (if any) to adding Even if we get agreement that .requestFullscreen() will consume it, Having a sync |
Or a method on |
Sorry if this is a silly question, but wouldn't |
It doesn't solve any user- or web-developer facing problems. Test-only utilities should be done via Web Driver, not via exposed APIs. |
Ok, I agree. So we have consensus that Web Driver is the way to go then? I can try to put together a PR for that. |
I don't really understand TestUtils vs. WebDriver, but yeah, seems reasonable to me. |
oh! TestUtils is this spec: Given the discussions we've had elsewhere, I would argue that this is generally useful for web developers doing automated testing because it allows them to test for situations where transient activation has expired (and they many need to recover somehow). Thus, this fits into the "Web Driver" bucket, instead of the "browser vendor" bucket. @jgraham, @EdgarChen, would you agree? |
I slapped together a quick PR: Would appreciate any feedback there. |
Doesn't have strong opinion on TestUtils vs Webdriver, just learn about TestUtils few days ago and share a possible altertive here :) |
Ok, implemented It makes the tests super nice 😍 (plus WebKit now passes a lot more tests ✅): consumed = await test_driver.consume_user_activation(); Everyone ok with making this a thing? |
This would be a great complement to |
This per our normal process should require an RFC. |
@gsnedders, ok cool. I can draft that up for WPT. For Web Driver, I followed: However, for the tests... I don't know any Python... I can try to copy/pasta 🍝 my way to success, but if anyone wants to help me with that, it would be massively appreciated. 🙏 |
Hey everyone, I put together the RFC: Would love you feedback and, if you agree, show of support there. |
…n as tentative., a=testonly Automatic update from web-platform-tests Mark WPTs for user activation consumption as tentative. Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. web-platform-tests/wpt#36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4023882 Commit-Queue: Mustaq Ahmed <[email protected]> Reviewed-by: Robert Flack <[email protected]> Cr-Commit-Position: refs/heads/main@{#1070478} -- wpt-commits: c5b10ac48ded5aa6b2a13006888da217bf9a63c8 wpt-pr: 36938
…n as tentative., a=testonly Automatic update from web-platform-tests Mark WPTs for user activation consumption as tentative. Currently these WPTs assume window.open() consumes user activation. While this is true for most browsers, we still don't have any spec standardizing this behavior. web-platform-tests/wpt#36727 Change-Id: Ia1cb6a343e4c8ab86b0b672a583398c9d6c27ad3 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4023882 Commit-Queue: Mustaq Ahmed <[email protected]> Reviewed-by: Robert Flack <[email protected]> Cr-Commit-Position: refs/heads/main@{#1070478} -- wpt-commits: c5b10ac48ded5aa6b2a13006888da217bf9a63c8 wpt-pr: 36938
Tests in WPT are currently relying on various indirect means to "consume user activation". Some of these means are non-standard, meaning that the tests are inshrining non-standard behavior for conformance purposes.
These workarounds are:
The are not interoperable solutions. We should come up with something better.
Some proposed straw-persons:
UserActivation
itself to consume user activation.The text was updated successfully, but these errors were encountered: