Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3d85c92f718f3ce85c7e71c800810dfde1669403
https://github.com/WebKit/WebKit/commit/3d85c92f718f3ce85c7e71c800810dfde1669403
Author: Shu Ren <[email protected]>
Date: 2023-10-31 (Tue, 31 Oct 2023)
Changed paths:
A LayoutTests/fast/selectors/focus-visible-setSelectionRange-expected.txt
A LayoutTests/fast/selectors/focus-visible-setSelectionRange.html
M Source/WebCore/editing/FrameSelection.cpp
M Source/WebCore/editing/FrameSelection.h
M Source/WebCore/html/HTMLInputElement.cpp
M Source/WebCore/html/HTMLTextAreaElement.cpp
M Source/WebCore/html/HTMLTextAreaElement.h
M Source/WebCore/html/HTMLTextAreaElement.idl
M Source/WebCore/html/HTMLTextFormControlElement.cpp
M Source/WebCore/html/HTMLTextFormControlElement.h
Log Message:
-----------
setSelectionRange will reset the m_latestFocusTrigger variable, causing the
subsequently focused element to match the :focus-visible selector
https://bugs.webkit.org/show_bug.cgi?id=256929
<rdar://problem/109803748>
Reviewed by Ryosuke Niwa.
This patch adds ForBindings to differentiate when setSelectionRange is called
from Javascript.
In this way, if it is called from Javascript and focus occurs,
its behavior can be consistent with Element::focusForBindings.
* LayoutTests/fast/selectors/focus-visible-setSelectionRange-expected.txt:
Added.
* LayoutTests/fast/selectors/focus-visible-setSelectionRange.html: Added.
* Source/WebCore/editing/FrameSelection.cpp:
(WebCore::FrameSelection::moveWithoutValidationTo):
(WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance):
(WebCore::FrameSelection::setFocusedElementIfNeeded):
* Source/WebCore/editing/FrameSelection.h:
* Source/WebCore/html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setSelectionRangeForBindings):
* Source/WebCore/html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::setSelectionRangeForBindings):
* Source/WebCore/html/HTMLTextAreaElement.h:
* Source/WebCore/html/HTMLTextAreaElement.idl:
* Source/WebCore/html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::setSelectionRange):
* Source/WebCore/html/HTMLTextFormControlElement.h:
Canonical link: https://commits.webkit.org/270043@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes