Title: [246099] trunk/Source/WebCore
Revision
246099
Author
[email protected]
Date
2019-06-04 23:09:24 -0700 (Tue, 04 Jun 2019)

Log Message

iPadOS: Google calendars new event picker moves and flickers in landscape with software keyboard
https://bugs.webkit.org/show_bug.cgi?id=198556

Reviewed by Wenson Hsieh.

Fix the issuse that it's really hard to create a new event using Google calendar on iPadOS with
a software keyboard enabled because tapping on date brings up software keyboard and erratically
shifts up/down the new event dialog/pane.

Add a site specific quirk to pretend these input elements have inputmode=none for now.

No new tests since this is a site specific quirk.

* page/Quirks.cpp:
(WebCore::Quirks::needsInputModeNoneImplicitly const):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (246098 => 246099)


--- trunk/Source/WebCore/ChangeLog	2019-06-05 05:41:48 UTC (rev 246098)
+++ trunk/Source/WebCore/ChangeLog	2019-06-05 06:09:24 UTC (rev 246099)
@@ -1,3 +1,21 @@
+2019-06-04  Ryosuke Niwa  <[email protected]>
+
+        iPadOS: Google calendars new event picker moves and flickers in landscape with software keyboard
+        https://bugs.webkit.org/show_bug.cgi?id=198556
+
+        Reviewed by Wenson Hsieh.
+
+        Fix the issuse that it's really hard to create a new event using Google calendar on iPadOS with
+        a software keyboard enabled because tapping on date brings up software keyboard and erratically
+        shifts up/down the new event dialog/pane.
+
+        Add a site specific quirk to pretend these input elements have inputmode=none for now.
+
+        No new tests since this is a site specific quirk.
+
+        * page/Quirks.cpp:
+        (WebCore::Quirks::needsInputModeNoneImplicitly const):
+
 2019-06-04  Zalan Bujtas  <[email protected]>
 
         [ContentChangeObserver] Gmail text editing controls require two taps

Modified: trunk/Source/WebCore/page/Quirks.cpp (246098 => 246099)


--- trunk/Source/WebCore/page/Quirks.cpp	2019-06-05 05:41:48 UTC (rev 246098)
+++ trunk/Source/WebCore/page/Quirks.cpp	2019-06-05 06:09:24 UTC (rev 246099)
@@ -338,6 +338,17 @@
     if (!needsQuirks())
         return false;
 
+    if (element.hasTagName(HTMLNames::inputTag)) {
+        if (!equalLettersIgnoringASCIICase(m_document->url().host(), "calendar.google.com"))
+            return false;
+        static NeverDestroyed<QualifiedName> dataInitialValueAttr(nullAtom(), "data-initial-value", nullAtom());
+        static NeverDestroyed<QualifiedName> dataPreviousValueAttr(nullAtom(), "data-previous-value", nullAtom());
+
+        return equalLettersIgnoringASCIICase(element.attributeWithoutSynchronization(HTMLNames::autocompleteAttr), "off")
+            && element.hasAttributeWithoutSynchronization(dataInitialValueAttr)
+            && element.hasAttributeWithoutSynchronization(dataPreviousValueAttr);
+    }
+
     if (!element.hasTagName(HTMLNames::textareaTag))
         return false;
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to