Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 8db235e14a7fcce78fc3896d18b2259f7cf75406
      
https://github.com/WebKit/WebKit/commit/8db235e14a7fcce78fc3896d18b2259f7cf75406
  Author: Timothy Hatcher <[email protected]>
  Date:   2024-06-20 (Thu, 20 Jun 2024)

  Changed paths:
    M 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIAlarmsCocoa.mm
    M 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPITabsCocoa.mm
    M 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIWindowsCocoa.mm
    M Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm

  Log Message:
  -----------
  WebExtensionContext::tabsUpdate and windowsUpdate need to properly capture 
lambdas.
https://webkit.org/b/270804
rdar://problem/124393562

Reviewed by Jeff Miller.

Fix tabsUpdate, windowsUpdate, and tabsRemove to properly capture the lambdas’
variables so the completion handler blocks can be called async. Also fixed
alarmsCreate to protect the WebExtensionContext lambda capture with a Ref.

Updated the TestWebExtensionTab and TestWebExtensionWindow to call all the 
completion
handlers async so this is tested.

* 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIAlarmsCocoa.mm:
(WebKit::WebExtensionContext::alarmsCreate):
* 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPITabsCocoa.mm:
(WebKit::WebExtensionContext::tabsUpdate):
(WebKit::WebExtensionContext::tabsRemove):
* 
Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIWindowsCocoa.mm:
(WebKit::WebExtensionContext::windowsUpdate):
* Tools/TestWebKitAPI/cocoa/WebExtensionUtilities.mm:
(-[TestWebExtensionTab 
toggleReaderModeForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab 
detectWebpageLocaleForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab reloadForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab 
reloadFromOriginForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab goBackForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab goForwardForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab setParentTab:forWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab pinForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab unpinForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab muteForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab unmuteForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab 
duplicateForWebExtensionContext:withOptions:completionHandler:]):
(-[TestWebExtensionTab activateForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab selectForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab deselectForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionTab closeForWebExtensionContext:completionHandler:]):
(-[TestWebExtensionWindow 
setWindowState:forWebExtensionContext:completionHandler:]):
(-[TestWebExtensionWindow setFrame:forWebExtensionContext:completionHandler:]):
(-[TestWebExtensionWindow closeForWebExtensionContext:completionHandler:]):

Canonical link: https://commits.webkit.org/280233@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