Skip to content

Commit

Permalink
Bug 1935232 [wpt PR 49528] - Update dialog closedby behavior to only …
Browse files Browse the repository at this point in the history
…close one at a time, a=testonly

Automatic update from web-platform-tests
Update dialog closedby behavior to only close one at a time

Per the discussions at:
- openui/open-ui#1128
- whatwg/html#9373 (comment)

both developer and editor feedback is that the prior behavior was
a bit odd. In the case where there are "nested" dialogs, the desired
behavior is for light dismiss clicks to just pop the topmost dialog
off the stack, rather than trying to close all non-clicked dialogs.

This CL implements that behavior and updates the test. After
implementing this behavior and playing with it a bit, I agree
with the feedback - this feels more like what users would expect.

Once this lands and I get a bit of feedback, I'll incorporate this
into the spec PR.

Bug: 376516550
Change-Id: I4b5cfb7dd4a27fc304e52759d882b47394e55524
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6068807
Commit-Queue: David Baron <dbaronchromium.org>
Auto-Submit: Mason Freed <masonfchromium.org>
Reviewed-by: David Baron <dbaronchromium.org>
Cr-Commit-Position: refs/heads/main{#1391794}

--

wpt-commits: e96c4c3d5c6510202598f558ea520b80f9507b31
wpt-pr: 49528

UltraBlame original commit: 4079bdd253f749bea402e22f1929ca53a25c228b
  • Loading branch information
marco-c committed Dec 13, 2024
1 parent afef19f commit 7c8a62b
Showing 1 changed file with 108 additions and 64 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,13 @@
0
;
}
dialog
{
position
:
fixed
;
}
<
/
style
Expand Down Expand Up @@ -692,14 +699,50 @@
inside
popoverA
.
/
/
Either
way
both
popoverB
and
dialogB
should
close
.
assertStates
(
false
true
modalB
false
false
)
;
await
clickOn
(
unrelated
)
;
/
/
Clicking
outside
again
should
close
the
remaining
two
.
assertStates
(
false
false
false
false
)
;
}
clicking
outside
Expand Down Expand Up @@ -740,27 +783,14 @@
/
Clicking
popoverB
will
should
keep
both
popovers
plus
the
intervening
dialogB
/
/
everything
open
because
they
'
re
a
stack
.
assertStates
(
false
true
true
true
true
Expand Down Expand Up @@ -803,15 +833,16 @@
;
/
/
dialogB
is
nested
inside
popoverA
Only
popoverB
should
be
light
dismissed
.
assertStates
(
false
true
true
true
false
Expand Down Expand Up @@ -854,45 +885,20 @@
;
/
/
If
dialogB
is
modal
then
clicking
popoverA
is
actually
a
backdrop
/
/
click
on
dialogB
which
will
close
it
.
PopoverA
stays
open
because
/
/
Both
dialogB
is
nested
inside
popoverA
and
popoverB
should
be
light
dismissed
.
assertStates
(
false
true
!
modalB
true
false
false
)
;
Expand Down Expand Up @@ -928,26 +934,64 @@
await
clickOn
(
dialogB
dialogA
)
;
/
/
Again
this
If
dialogB
is
a
backdrop
click
modal
clicking
on
dialogA
is
actually
clicking
on
dialogB
/
/
which
means
popoverB
will
stay
open
.
assertStates
(
false
true
modalB
false
false
)
;
await
clickOn
(
dialogA
)
;
/
/
The
next
click
on
dialogA
should
light
dismiss
popoverA
.
assertStates
(
true
false
false
false
)
;
}
Expand Down

0 comments on commit 7c8a62b

Please sign in to comment.