Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 4b1807e408da8f0c5b34a4f653db8cadb3cb2fcf
      
https://github.com/WebKit/WebKit/commit/4b1807e408da8f0c5b34a4f653db8cadb3cb2fcf
  Author: Wenson Hsieh <[email protected]>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M Tools/TestWebKitAPI/cocoa/DragAndDropSimulator.h
    M Tools/TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm

  Log Message:
  -----------
  REGRESSION(283463@main?): [ Debug iOS iPad ] 61x 
TestWebKitAPI.DragAndDropTests*(api-tests) are constant asserts
https://bugs.webkit.org/show_bug.cgi?id=281168
rdar://137627811

Reviewed by Abrar Rahman Protyasha.

Tests that use DragAndDropSimulator currently hit debug assertions on iOS 17.*, 
and only on iPad.
That's because iPad on iOS 17.4+ is the one remaining configuration where 
`USE(BROWSERENGINEKIT)` is
defined, but the OS feature flag `UIKit/async_text_input_ipad` is disabled by 
default.

Under this configuration, `-[WKWebView(DragAndDropTesting) dragInteraction]` 
currently returns `nil`
because the underlying drag interaction is a `UIDragInteraction` instead of 
`BEDragInteraction`.
In release builds, this is actually innocuous since this it's only used to pass 
the drag interaction
instance back to the delegate methods on the content view, where it's unused. 
However, on debug
builds, we use the incoming `interaction` only to `ASSERT` that it's equal to 
`_dragInteraction`.

Work around the issue above by making this return a `UIInteraction` of type 
`UIDragInteraction`
instead of `BEDragInteraction`. To keep this building, we also need to make the 
return type `id`
instead of `UIDragInteraction`, otherwise the build will fail when passing 
`-dragInteraction` into
the `BEDragInteractionDelegate` methods.

* Tools/TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* Tools/TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[WKWebView dragInteraction]):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to