Skip to content
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

Yet more fixes to focus delegation #8174

Merged
merged 1 commit into from
Oct 22, 2022
Merged

Yet more fixes to focus delegation #8174

merged 1 commit into from
Oct 22, 2022

Conversation

domenic
Copy link
Member

@domenic domenic commented Aug 9, 2022

Fixes #8156. Fixes #8157.

This is the latest in a series of PRs as we slowly iterate toward correct algorithms for these. For previous work in the series, see #7361, #7284, #7079.

/cc @emilio, @nt1m, @rniwa, @smaug----, @josepharhar as people who seem to be working on these areas in implementations. @emilio can you review in particular?

(See WHATWG Working Mode: Changes for more details.)


/interaction.html ( diff )

@domenic domenic added topic: shadow Relates to shadow trees (as defined in DOM) topic: focus labels Aug 9, 2022
Copy link
Contributor

@emilio emilio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks correct to me now. I'm not convinced tests cover nested delegateFocus and so on, but I haven't looked super-closely.

@nt1m
Copy link
Member

nt1m commented Aug 10, 2022

Regarding the tests, we implemented proper focus delegation for dialogs recently in WebKit, and we found some failures, where we think the test might be incorrect:

https://searchfox.org/wubkat/rev/3728a98461ce1ad0e74b7a416e823bd17ae6872e/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow-expected.txt

For the after sibling test, @rniwa and I don't understand why we expect the outside <button> to be focused, and not one of the elements in shadow root.

The implementation was done: WebKit/WebKit#2828

@josepharhar
Copy link
Contributor

I think some of the test cases in dialog-focus-shadow.html seem contradictory now that I've finally gotten around to implementing all this dialog shadowdom focus stuff:

<dialog data-description="No autofocus, yes delegatesFocus, sibling after">
  <template class="turn-into-shadow-tree delegates-focus">
    <button disabled>Non-focusable</button>
    <button tabindex="-1" class="focus-me">Focusable</button>
    <button disabled>Non-focusable</button>
  </template>
  <button tabindex="-1">Focusable</button>
</dialog>
<dialog data-description="Autofocus inside shadow tree, yes delegatesFocus, sibling after">
  <template class="turn-into-shadow-tree delegates-focus">
    <button tabindex="-1">Focusable</button>
    <button tabindex="-1" autofocus>Focusable</button>
    <button disabled>Non-focusable</button>
  </template>
  <button tabindex="-1" class="focus-me">Focusable</button>
</dialog>

If I'm reading this correctly, the only difference between the tests is that the second one has the autofocus attribute on the element which should be focused according to the first test, but that causes a different element outside the shadowroot to be focused instead? Shouldn't the element with autofocus be focused in the second test? I made a patch for this here: https://chromium-review.googlesource.com/c/chromium/src/+/3866548/1/third_party/blink/web_tests/external/wpt/html/semantics/interactive-elements/the-dialog-element/dialog-focus-shadow.html

For the after sibling test, @rniwa and I don't understand why we expect the outside to be focused, and not one of the elements in shadow root.

@nt1m I'm not sure if this is the same issue, can you confirm?

@josepharhar josepharhar mentioned this pull request Oct 10, 2022
3 tasks
@josepharhar
Copy link
Contributor

I think we also need tests for potentially focusable elements being slotted into shadowroots in the dialog. I can propose some behavior and provide test cases like I did in my last comment soon.

@sefeng211
Copy link
Contributor

I am working on the Firefox implementation, and I agree with #8174 (comment) from Joey.

@domenic
Copy link
Member Author

domenic commented Oct 16, 2022

Thanks @sefeng211! Do you have a link to the tests you've written handy? And if so, do you believe those tests cover both the listed issues? If so we're ready to merge this PR.

@domenic domenic requested a review from annevk October 16, 2022 12:55
Copy link
Member

@annevk annevk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good editorially.

@sefeng211
Copy link
Contributor

@domenic Yeah, I fixed them and it's web-platform-tests/wpt#36449. I need to figure out why it's not automatically merged.

chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Oct 17, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Bug: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
@josepharhar
Copy link
Contributor

Ah I also just finished my test changes here: web-platform-tests/wpt#36498
I'm happy to add my changes after yours are merged, it sounds like they should be compatible

@domenic domenic merged commit 4d6609f into main Oct 22, 2022
@domenic domenic deleted the focus-delegate-fixes branch October 22, 2022 06:28
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Oct 27, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Bug: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Oct 27, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Oct 29, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Oct 31, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 1, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 1, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 3, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 4, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
aarongable pushed a commit to chromium/chromium that referenced this pull request Nov 5, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067796}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 5, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067796}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 5, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067796}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 7, 2022
This reverts commit afeccd1f5b2dd72595abe55bc9ef093f11b495f1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
aarongable pushed a commit to chromium/chromium that referenced this pull request Nov 7, 2022
This reverts commit afeccd1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4005547
Commit-Queue: Tim Sergeant <tsergeant@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Tim Sergeant <tsergeant@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tim Sergeant <tsergeant@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067950}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 7, 2022
This reverts commit afeccd1f5b2dd72595abe55bc9ef093f11b495f1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4005547
Commit-Queue: Tim Sergeant <tsergeant@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Tim Sergeant <tsergeant@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tim Sergeant <tsergeant@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067950}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 7, 2022
This reverts commit afeccd1f5b2dd72595abe55bc9ef093f11b495f1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4005547
Commit-Queue: Tim Sergeant <tsergeant@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Tim Sergeant <tsergeant@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tim Sergeant <tsergeant@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067950}
chromium-wpt-export-bot pushed a commit to web-platform-tests/wpt that referenced this pull request Nov 7, 2022
This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: If024ab0f22716c55b439e44b2298e39897ee844e
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Nov 12, 2022
…or, a=testonly

Automatic update from web-platform-tests
Implement new dialog shadow focus behavior

This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067796}

--

wpt-commits: e1d2b674fbcc1ca01eccb624fdd758c38f3407a7
wpt-pr: 36498
moz-v2v-gh pushed a commit to mozilla/gecko-dev that referenced this pull request Nov 12, 2022
…s behavior", a=testonly

Automatic update from web-platform-tests
Revert "Implement new dialog shadow focus behavior"

This reverts commit afeccd1f5b2dd72595abe55bc9ef093f11b495f1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4005547
Commit-Queue: Tim Sergeant <tsergeant@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Tim Sergeant <tsergeant@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tim Sergeant <tsergeant@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067950}

--

wpt-commits: 011077556f5634fe685c613564c3325e77387462
wpt-pr: 36838
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Nov 14, 2022
…or, a=testonly

Automatic update from web-platform-tests
Implement new dialog shadow focus behavior

This implements the new dialog initial focus behavior specified in these
changes:
whatwg/html#7079
whatwg/html#7284
whatwg/html#7361
whatwg/html#8174

The gist of the changes are:
1. Use the DOM tree instead of the flat tree to search for an element to
   give initial focus.
2. Don't traverse into shadow roots when looking for elements to give
   initial focus unless the shadow root has delegatesFocus.

This will stay experimental until I have also made the other changes for
dialog initial focus: whatwg/html#8199
After those changes have been made as well, I will carefully enable the
flag by default.

Fixed: 383230, 670130, 1292852
Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
Reviewed-by: Mason Freed <masonf@chromium.org>
Commit-Queue: Joey Arhar <jarhar@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067796}

--

wpt-commits: e1d2b674fbcc1ca01eccb624fdd758c38f3407a7
wpt-pr: 36498
jamienicol pushed a commit to jamienicol/gecko that referenced this pull request Nov 14, 2022
…s behavior", a=testonly

Automatic update from web-platform-tests
Revert "Implement new dialog shadow focus behavior"

This reverts commit afeccd1f5b2dd72595abe55bc9ef093f11b495f1.

Reason for revert: dialog-focus-shadow.html is failing on a couple of mac builders:

https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.13%20Tests/57992/overview
https://ci.chromium.org/ui/p/chromium/builders/ci/Mac10.14%20Tests/28597/overview

Original change's description:
> Implement new dialog shadow focus behavior
>
> This implements the new dialog initial focus behavior specified in these
> changes:
> whatwg/html#7079
> whatwg/html#7284
> whatwg/html#7361
> whatwg/html#8174
>
> The gist of the changes are:
> 1. Use the DOM tree instead of the flat tree to search for an element to
>    give initial focus.
> 2. Don't traverse into shadow roots when looking for elements to give
>    initial focus unless the shadow root has delegatesFocus.
>
> This will stay experimental until I have also made the other changes for
> dialog initial focus: whatwg/html#8199
> After those changes have been made as well, I will carefully enable the
> flag by default.
>
> Fixed: 383230, 670130, 1292852
> Change-Id: I13995197f1942aa356cab0f3b41a0e226d1d170d
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3961528
> Reviewed-by: Mason Freed <masonf@chromium.org>
> Commit-Queue: Joey Arhar <jarhar@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1067796}

Change-Id: I010be9a77fd8c289edb8c028355182d0fe7dec39
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4005547
Commit-Queue: Tim Sergeant <tsergeant@chromium.org>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Tim Sergeant <tsergeant@chromium.org>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Owners-Override: Tim Sergeant <tsergeant@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1067950}

--

wpt-commits: 011077556f5634fe685c613564c3325e77387462
wpt-pr: 36838
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: focus topic: shadow Relates to shadow trees (as defined in DOM)
6 participants