Title: [262526] trunk/Source/WebKit
Revision
262526
Author
wenson_hs...@apple.com
Date
2020-06-03 17:25:02 -0700 (Wed, 03 Jun 2020)

Log Message

[watchOS] fast/events/watchos/change-focus-during-change-event.html crashes
https://bugs.webkit.org/show_bug.cgi?id=212722
<rdar://problem/60633339>

Reviewed by Andy Estes.

When HAVE(QUICKBOARD_COLLECTION_VIEWS) is enabled, the codepath that's used to simulate interacting with the
select menu view controller on watchOS will crash, since it tries to pretend that the user has selected an item
in a table view section (`PUICQuickboardListSectionTextOptions`) that only exists when Quickboard collection
views are disabled. Fix the crash by adjusting the testing codepath to select the item in the first section when
HAVE(QUICKBOARD_COLLECTION_VIEWS) is defined.

* UIProcess/ios/forms/WKSelectMenuListViewController.mm:
(-[WKSelectMenuListViewController selectItemAtIndex:]):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (262525 => 262526)


--- trunk/Source/WebKit/ChangeLog	2020-06-04 00:01:55 UTC (rev 262525)
+++ trunk/Source/WebKit/ChangeLog	2020-06-04 00:25:02 UTC (rev 262526)
@@ -1,3 +1,20 @@
+2020-06-03  Wenson Hsieh  <wenson_hs...@apple.com>
+
+        [watchOS] fast/events/watchos/change-focus-during-change-event.html crashes
+        https://bugs.webkit.org/show_bug.cgi?id=212722
+        <rdar://problem/60633339>
+
+        Reviewed by Andy Estes.
+
+        When HAVE(QUICKBOARD_COLLECTION_VIEWS) is enabled, the codepath that's used to simulate interacting with the
+        select menu view controller on watchOS will crash, since it tries to pretend that the user has selected an item
+        in a table view section (`PUICQuickboardListSectionTextOptions`) that only exists when Quickboard collection
+        views are disabled. Fix the crash by adjusting the testing codepath to select the item in the first section when
+        HAVE(QUICKBOARD_COLLECTION_VIEWS) is defined.
+
+        * UIProcess/ios/forms/WKSelectMenuListViewController.mm:
+        (-[WKSelectMenuListViewController selectItemAtIndex:]):
+
 2020-06-03  Jer Noble  <jer.no...@apple.com>
 
         [iOS] Hide the PiP button in fullscreen mode if PiP is disabled in preferences

Modified: trunk/Source/WebKit/UIProcess/ios/forms/WKSelectMenuListViewController.mm (262525 => 262526)


--- trunk/Source/WebKit/UIProcess/ios/forms/WKSelectMenuListViewController.mm	2020-06-04 00:01:55 UTC (rev 262525)
+++ trunk/Source/WebKit/UIProcess/ios/forms/WKSelectMenuListViewController.mm	2020-06-04 00:25:02 UTC (rev 262526)
@@ -276,7 +276,12 @@
 
 - (void)selectItemAtIndex:(NSInteger)index
 {
-    [self didSelectListItem:index];
+#if HAVE(QUICKBOARD_COLLECTION_VIEWS)
+    NSInteger itemSection = 0;
+#else
+    NSInteger itemSection = PUICQuickboardListSectionTextOptions;
+#endif
+    [self didSelectListItemAtIndexPath:[NSIndexPath indexPathForRow:index inSection:itemSection]];
 }
 
 @end
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to