[webkit-changes] [WebKit/WebKit] e8cd69: Fix [dir=auto] invalidation with password fields

Tim Nguyen noreply at github.com
Fri Sep 22 10:52:26 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: e8cd6950f18500186d21867ca5f3550f5bc4a429
      https://github.com/WebKit/WebKit/commit/e8cd6950f18500186d21867ca5f3550f5bc4a429
  Author: Tim Nguyen <ntim at apple.com>
  Date:   2023-09-22 (Fri, 22 Sep 2023)

  Changed paths:
    M LayoutTests/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element.html
    M LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt
    R LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-pseudo/dir-pseudo-on-input-element-expected.txt
    M LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt
    M Source/WebCore/html/BaseTextInputType.cpp
    M Source/WebCore/html/BaseTextInputType.h
    M Source/WebCore/html/HTMLElement.cpp
    M Source/WebCore/html/HTMLElement.h
    M Source/WebCore/html/HTMLInputElement.cpp
    M Source/WebCore/html/HTMLInputElement.h
    M Source/WebCore/html/HTMLTextAreaElement.h
    M Source/WebCore/html/HTMLTextFormControlElement.h
    M Source/WebCore/html/InputType.cpp
    M Source/WebCore/html/InputType.h
    M Source/WebCore/html/PasswordInputType.cpp
    M Source/WebCore/html/PasswordInputType.h

  Log Message:
  -----------
  Fix [dir=auto] invalidation with password fields
https://bugs.webkit.org/show_bug.cgi?id=261941
rdar://115887776

Reviewed by Aditya Keerthi.

Some text input types compute their directionality from the input value, some don't (password fields).

We did not invalidate when switching between these input types. This commit fixes that.

Inspired from https://chromium-review.googlesource.com/c/chromium/src/+/4851878

Spec: https://html.spec.whatwg.org/multipage/dom.html#auto-directionality

* LayoutTests/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element.html:
* LayoutTests/platform/mac-wk1/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt:
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/css-pseudo/dir-pseudo-on-input-element-expected.txt: Removed.
* LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/selectors/dir-pseudo-on-input-element-expected.txt:
* Source/WebCore/html/BaseTextInputType.cpp:
(WebCore::BaseTextInputType::dirAutoUsesValue const):
* Source/WebCore/html/BaseTextInputType.h:
* Source/WebCore/html/HTMLElement.cpp:
(WebCore::HTMLElement::computeDirectionalityFromText const):
(WebCore::HTMLElement::updateTextDirectionalityAfterInputTypeChange):
(WebCore::HTMLElement::updateTextDirectionalityAfterTelephoneInputTypeChange): Deleted.
* Source/WebCore/html/HTMLElement.h:
* Source/WebCore/html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::dirAutoUsesValue const):
* Source/WebCore/html/HTMLInputElement.h:
* Source/WebCore/html/HTMLTextAreaElement.h:
* Source/WebCore/html/HTMLTextFormControlElement.h:
* Source/WebCore/html/InputType.cpp:
(WebCore::InputType::dirAutoUsesValue const):
* Source/WebCore/html/InputType.h:
* Source/WebCore/html/PasswordInputType.cpp:
(WebCore::PasswordInputType::dirAutoUsesValue const):
* Source/WebCore/html/PasswordInputType.h:

Canonical link: https://commits.webkit.org/268322@main




More information about the webkit-changes mailing list