feat: add Notification Web API binding (#34842)

* feat: add Notification Web API binding

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: update spec link

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: fix clippy

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: index overflow

Signed-off-by: Jason Tsai <git@pews.dev>

* test(tidy): add notification WebIDL standard URL

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: allow crown::unrooted_must_root

Signed-off-by: Jason Tsai <git@pews.dev>

* implement GetPermission

Signed-off-by: Jason Tsai <git@pews.dev>

* fix silent type

Signed-off-by: Jason Tsai <git@pews.dev>

* add all properties

Signed-off-by: Jason Tsai <git@pews.dev>

* test: add Notification to global

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: update wpt manifest and fix clippy

Signed-off-by: Jason Tsai <git@pews.dev>

* test: temp skip notifications

Signed-off-by: Jason Tsai <git@pews.dev>

* add vibration and apply suggestions

Signed-off-by: Jason Tsai <git@pews.dev>

* partially implement RequestPermission

Signed-off-by: Jason Tsai <git@pews.dev>

* call Permission request permission algorithm

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: pub crate Notification

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: fix clippy

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: crown attribute

Signed-off-by: Jason Tsai <git@pews.dev>

* fix part of suggestions

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: store private `Action` structure

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: fix typo

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: serialize images URL

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: use globalscope as environment settings object

Signed-off-by: Jason Tsai <git@pews.dev>

* chore: add pref `dom_notification_enabled` and default to disabled

Signed-off-by: Jason Tsai <git@pews.dev>

* fix: use `descriptor_permission_state`

Signed-off-by: Jason Tsai <git@pews.dev>

* apply suggestions

Signed-off-by: Jason Tsai <git@pews.dev>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>

* test: remove passed meta

Signed-off-by: Jason Tsai <git@pews.dev>

* test: enable notification prefs in mozilla tests

Signed-off-by: Jason Tsai <git@pews.dev>

---------

Signed-off-by: Jason Tsai <git@pews.dev>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
Jason Tsai 2025-02-19 00:56:57 +08:00 committed by GitHub
parent 14d591c462
commit 22c3a63737
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
21 changed files with 717 additions and 370 deletions

View file

@ -10518,7 +10518,7 @@
[]
],
"interfaces.js": [
"e2c2de8556c7fa88f54a76a3c18e06be14722de9",
"fbfc396b62c55415c0493b7528bd5e2b959452e6",
[]
],
"max-session-history-frame.html": [
@ -13506,14 +13506,14 @@
]
],
"interfaces.https.html": [
"501caf7410bba6533e11c0d83acb2729da48a289",
"4e9a583f82479e20dfa932459d3eff607e530d01",
[
null,
{}
]
],
"interfaces.worker.js": [
"5288c40b0fb6e67f2b903f82f074580faa4dca33",
"fc621bbafeec167942f802caae43b9f2ef23b29b",
[
"mozilla/interfaces.worker.html",
{}

View file

@ -1 +1 @@
prefs: [dom_webxr_test: false]
prefs: [dom_webxr_test: false, dom_notification_enabled: true]

View file

@ -0,0 +1 @@
prefs: [dom_notification_enabled: true]