⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 245690 in webkit


Ignore:
Timestamp:
May 23, 2019, 10:01:00 AM (7 years ago)
Author:
Kocsen Chung
Message:

Cherry-pick r245661. rdar://problem/50613388

REGRESSION(r245148): Removing inputmode="none" does not bring up software keyboard
https://bugs.webkit.org/show_bug.cgi?id=198141

Reviewed by Geoffrey Garen.

Source/WebKit:

r245148 changed _requiresKeyboardWhenFirstResponder to return NO when shouldShowAutomaticKeyboardUI
returns NO with regards to software keyboard. This introduced a regression that removing inputmode="none"
no longer brings up the software keyboard. Fixed the bug by making it return YES when inputmode="none"
is present on an editable element in shouldShowAutomaticKeyboardUI, partially restoring the old behavior.

  • UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView shouldShowAutomaticKeyboardUI]): (-[WKContentView _shouldShowAutomaticKeyboardUIIgnoringInputMode]): (-[WKContentView _requiresKeyboardWhenFirstResponder]):

LayoutTests:

Added a regression test.

  • fast/forms/ios/inputmode-removing-none-expected.txt: Added.
  • fast/forms/ios/inputmode-removing-none.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Location:
branches/safari-608.1.24.20-branch
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-608.1.24.20-branch/LayoutTests/ChangeLog

    r245632 r245690  
     12019-05-23  Kocsen Chung  <kocsen_chung@apple.com>
     2
     3        Cherry-pick r245661. rdar://problem/50613388
     4
     5    REGRESSION(r245148): Removing inputmode="none" does not bring up software keyboard
     6    https://bugs.webkit.org/show_bug.cgi?id=198141
     7   
     8    Reviewed by Geoffrey Garen.
     9   
     10    Source/WebKit:
     11   
     12    r245148 changed _requiresKeyboardWhenFirstResponder to return NO when shouldShowAutomaticKeyboardUI
     13    returns NO with regards to software keyboard. This introduced a regression that removing inputmode="none"
     14    no longer brings up the software keyboard. Fixed the bug by making it return YES when inputmode="none"
     15    is present on an editable element in shouldShowAutomaticKeyboardUI, partially restoring the old behavior.
     16   
     17    * UIProcess/ios/WKContentViewInteraction.mm:
     18    (-[WKContentView shouldShowAutomaticKeyboardUI]):
     19    (-[WKContentView _shouldShowAutomaticKeyboardUIIgnoringInputMode]):
     20    (-[WKContentView _requiresKeyboardWhenFirstResponder]):
     21   
     22    LayoutTests:
     23   
     24    Added a regression test.
     25   
     26    * fast/forms/ios/inputmode-removing-none-expected.txt: Added.
     27    * fast/forms/ios/inputmode-removing-none.html: Added.
     28   
     29    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     30
     31    2019-05-22  Ryosuke Niwa  <rniwa@webkit.org>
     32
     33            REGRESSION(r245148): Removing inputmode="none" does not bring up software keyboard
     34            https://bugs.webkit.org/show_bug.cgi?id=198141
     35
     36            Reviewed by Geoffrey Garen.
     37
     38            Added a regression test.
     39
     40            * fast/forms/ios/inputmode-removing-none-expected.txt: Added.
     41            * fast/forms/ios/inputmode-removing-none.html: Added.
     42
    1432019-05-22  Kocsen Chung  <kocsen_chung@apple.com>
    244
  • branches/safari-608.1.24.20-branch/Source/WebKit/ChangeLog

    r245558 r245690  
     12019-05-23  Kocsen Chung  <kocsen_chung@apple.com>
     2
     3        Cherry-pick r245661. rdar://problem/50613388
     4
     5    REGRESSION(r245148): Removing inputmode="none" does not bring up software keyboard
     6    https://bugs.webkit.org/show_bug.cgi?id=198141
     7   
     8    Reviewed by Geoffrey Garen.
     9   
     10    Source/WebKit:
     11   
     12    r245148 changed _requiresKeyboardWhenFirstResponder to return NO when shouldShowAutomaticKeyboardUI
     13    returns NO with regards to software keyboard. This introduced a regression that removing inputmode="none"
     14    no longer brings up the software keyboard. Fixed the bug by making it return YES when inputmode="none"
     15    is present on an editable element in shouldShowAutomaticKeyboardUI, partially restoring the old behavior.
     16   
     17    * UIProcess/ios/WKContentViewInteraction.mm:
     18    (-[WKContentView shouldShowAutomaticKeyboardUI]):
     19    (-[WKContentView _shouldShowAutomaticKeyboardUIIgnoringInputMode]):
     20    (-[WKContentView _requiresKeyboardWhenFirstResponder]):
     21   
     22    LayoutTests:
     23   
     24    Added a regression test.
     25   
     26    * fast/forms/ios/inputmode-removing-none-expected.txt: Added.
     27    * fast/forms/ios/inputmode-removing-none.html: Added.
     28   
     29    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@245661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
     30
     31    2019-05-22  Ryosuke Niwa  <rniwa@webkit.org>
     32
     33            REGRESSION(r245148): Removing inputmode="none" does not bring up software keyboard
     34            https://bugs.webkit.org/show_bug.cgi?id=198141
     35
     36            Reviewed by Geoffrey Garen.
     37
     38            r245148 changed _requiresKeyboardWhenFirstResponder to return NO when shouldShowAutomaticKeyboardUI
     39            returns NO with regards to software keyboard. This introduced a regression that removing inputmode="none"
     40            no longer brings up the software keyboard. Fixed the bug by making it return YES when inputmode="none"
     41            is present on an editable element in shouldShowAutomaticKeyboardUI, partially restoring the old behavior.
     42
     43            * UIProcess/ios/WKContentViewInteraction.mm:
     44            (-[WKContentView shouldShowAutomaticKeyboardUI]):
     45            (-[WKContentView _shouldShowAutomaticKeyboardUIIgnoringInputMode]):
     46            (-[WKContentView _requiresKeyboardWhenFirstResponder]):
     47
    1482019-05-20  Kocsen Chung  <kocsen_chung@apple.com>
    249
  • branches/safari-608.1.24.20-branch/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm

    r245227 r245690  
    16351635        return NO;
    16361636
     1637    return [self _shouldShowAutomaticKeyboardUIIgnoringInputMode];
     1638}
     1639
     1640- (BOOL)_shouldShowAutomaticKeyboardUIIgnoringInputMode
     1641{
    16371642    switch (_focusedElementInformation.elementType) {
    16381643    case WebKit::InputType::None:
     
    16651670- (BOOL)_requiresKeyboardWhenFirstResponder
    16661671{
    1667     // FIXME: Only create keyboard if [self shouldShowAutomaticKeyboardUI] returns YES or
    1668     // on first hardware keydown in a non-editable element. See <https://bugs.webkit.org/show_bug.cgi?id=197746>.
     1672    // FIXME: We should add the logic to handle keyboard visibility during focus redirects.
     1673    return [self _shouldShowAutomaticKeyboardUIIgnoringInputMode]
    16691674#if USE(UIKIT_KEYBOARD_ADDITIONS)
    16701675    if (GSEventIsHardwareKeyboardAttached())
Note: See TracChangeset for help on using the changeset viewer.