Changeset 246224 in webkit
- Timestamp:
- Jun 7, 2019, 4:59:22 PM (7 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 17 edited
- 6 copied
-
ChangeLog (modified) (2 diffs)
-
Shared/API/APIObject.h (modified) (1 diff)
-
Shared/API/Cocoa/WebKit.h (modified) (1 diff)
-
Shared/Cocoa/APIObject.mm (modified) (2 diffs)
-
Sources.txt (modified) (1 diff)
-
SourcesCocoa.txt (modified) (1 diff)
-
UIProcess/API/APIContextMenuElementInfo.cpp (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (2 diffs)
-
UIProcess/API/APIContextMenuElementInfo.h (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (2 diffs)
-
UIProcess/API/Cocoa/WKContextMenuElementInfo.h (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (3 diffs)
-
UIProcess/API/Cocoa/WKContextMenuElementInfo.mm (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (2 diffs)
-
UIProcess/API/Cocoa/WKContextMenuElementInfoInternal.h (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (2 diffs)
-
UIProcess/API/Cocoa/WKContextMenuElementInfoPrivate.h (copied) (copied from trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h ) (2 diffs)
-
UIProcess/API/Cocoa/WKPreviewElementInfo.h (modified) (1 diff)
-
UIProcess/API/Cocoa/WKUIDelegatePrivate.h (modified) (3 diffs)
-
UIProcess/API/Cocoa/_WKActivatedElementInfo.h (modified) (1 diff)
-
UIProcess/API/Cocoa/_WKActivatedElementInfo.mm (modified) (3 diffs)
-
UIProcess/Cocoa/WebViewImpl.h (modified) (1 diff)
-
UIProcess/Cocoa/WebViewImpl.mm (modified) (2 diffs)
-
UIProcess/ios/WKActionSheetAssistant.h (modified) (2 diffs)
-
UIProcess/ios/WKActionSheetAssistant.mm (modified) (2 diffs)
-
UIProcess/ios/WKContentView.h (modified) (1 diff)
-
UIProcess/ios/WKContentViewInteraction.mm (modified) (8 diffs)
-
WebKit.xcodeproj/project.pbxproj (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r246213 r246224 1 2019-06-07 Antoine Quint <graouts@apple.com>2 3 Restrict fast clicks everywhere to desktop content mode4 https://bugs.webkit.org/show_bug.cgi?id=1986105 <rdar://problem/50114230>6 7 Reviewed by Dean Jackson.8 9 We now set a new allowsFastClicksEverywhere property on the WebPageProxy when the content mode changes, set to true10 when we're in desktop browsing mode. We now check on this property to opt into the fast clicks everywhere behavior.11 12 This patch had been reverted once because it yielded some regressions in existing tests, notably under13 fast/events/touch/ios/content-observation. This updated patch addresses this by ensuring the gesture recognizers14 used for double-tap-to-zoom are disabled in -[WKContentViewInteraction _didStartProvisionalLoadForMainFrame]15 to ensure that two tests dispatching a tap at the same location don't yield the recognition of a double-tap16 rathern than the recognition of two single taps.17 18 * UIProcess/WebPageProxy.h:19 (WebKit::WebPageProxy::allowsFastClicksEverywhere const):20 * UIProcess/ios/WKContentViewInteraction.mm:21 (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]):22 (_didStartProvisionalLoadForMainFrame):23 * UIProcess/ios/WebPageProxyIOS.mm:24 (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):25 26 2019-06-07 Brent Fulgham <bfulgham@apple.com>27 28 [iOS] Update sandboxes to address iokit-get-property errors29 https://bugs.webkit.org/show_bug.cgi?id=19849430 <rdar://problem/51322072> and <rdar://problem/50602737>31 32 Reviewed by Per Arne Vollan.33 34 * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:35 36 2019-06-07 Andy Estes <aestes@apple.com>37 38 process-swap-on-navigation error when loading blocked website on iOS 12.2 only.39 https://bugs.webkit.org/show_bug.cgi?id=19693040 <rdar://problem/47819301>41 42 Reviewed by Chris Dumez.43 44 The ContentFilterDidBlockLoadForFrame message needs to be handled by ProvisionalPageProxy in45 order to look up the blocked frame in the correct WebProcessProxy.46 47 * UIProcess/Cocoa/WebPageProxyCocoa.mm:48 (WebKit::WebPageProxy::contentFilterDidBlockLoadForFrame):49 (WebKit::WebPageProxy::contentFilterDidBlockLoadForFrameShared):50 * UIProcess/ProvisionalPageProxy.cpp:51 (WebKit::ProvisionalPageProxy::contentFilterDidBlockLoadForFrame):52 (WebKit::ProvisionalPageProxy::didReceiveMessage):53 * UIProcess/ProvisionalPageProxy.h:54 * UIProcess/WebPageProxy.h:55 56 2019-06-07 Carlos Garcia Campos <cgarcia@igalia.com>57 58 Unreviewed. Fix api used to release wpe_fdo_egl_exported_image in GTK59 60 We are using the old deprecated API in AcceleratedBackingStoreWayland::displayBuffer().61 62 * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:63 (WebKit::AcceleratedBackingStoreWayland::displayBuffer):64 65 2019-06-06 Carlos Garcia Campos <cgarcia@igalia.com>66 67 REGRESSION(r243094): [GTK][WPE] Stale content after restoring the web view session68 https://bugs.webkit.org/show_bug.cgi?id=19856169 70 Reviewed by Chris Dumez.71 72 This is another regression of delaying the web process launch until the first load. If the session is restored73 before anything has been loaded, which is the normal way, the RestoreSession message is just ignored and the74 state is sent to the WebPage on creation via creation parameters. The WebPage considers that restoring a session75 from creation parameters only happens when re-launching a process after a crash or in case of process swap. In76 those cases, the history item is not marked as restored from session. We need to ensure the session is restored77 in the web process from the IPC message handler, by launching the initial process before the session is78 restored.79 80 * UIProcess/WebPageProxy.cpp:81 (WebKit::WebPageProxy::restoreFromSessionState):82 83 2019-06-06 Youenn Fablet <youenn@apple.com>84 85 Use an enumeration in UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo callback86 https://bugs.webkit.org/show_bug.cgi?id=19854887 88 Reviewed by Eric Carlson.89 90 Move from an Optional<bool> to an enum having three values to ease readability.91 92 * UIProcess/UserMediaPermissionCheckProxy.cpp:93 (WebKit::UserMediaPermissionCheckProxy::setUserMediaAccessInfo):94 (WebKit::UserMediaPermissionCheckProxy::complete):95 * UIProcess/UserMediaPermissionCheckProxy.h:96 (WebKit::UserMediaPermissionCheckProxy::invalidate):97 * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:98 (WebKit::UserMediaPermissionRequestManagerProxy::captureDevicesChanged):99 (WebKit::UserMediaPermissionRequestManagerProxy::startProcessingUserMediaPermissionRequest):100 (WebKit::UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo):101 (WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame):102 * UIProcess/UserMediaPermissionRequestManagerProxy.h:103 104 2019-06-06 Youenn Fablet <youenn@apple.com>105 106 Allow WebKitTestRunner to terminate network process after it finishes service worker file operations107 https://bugs.webkit.org/show_bug.cgi?id=198584108 109 Reviewed by Geoffrey Garen.110 111 Add IPC binding to new internal API.112 113 * NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in:114 * WebProcess/Storage/WebSWClientConnection.cpp:115 (WebKit::WebSWClientConnection::storeRegistrationsOnDiskForTesting):116 * WebProcess/Storage/WebSWClientConnection.h:117 118 2019-06-06 Commit Queue <commit-queue@webkit.org>119 120 Unreviewed, rolling out r246165.121 https://bugs.webkit.org/show_bug.cgi?id=198636122 123 Causing test failures in 7 content-observation tests.124 (Requested by ShawnRoberts on #webkit).125 126 Reverted changeset:127 128 "Restrict fast clicks everywhere to desktop content mode"129 https://bugs.webkit.org/show_bug.cgi?id=198610130 https://trac.webkit.org/changeset/246165131 132 2019-06-06 Commit Queue <commit-queue@webkit.org>133 134 Unreviewed, rolling out r246123.135 https://bugs.webkit.org/show_bug.cgi?id=198634136 137 Causes test failures (Requested by ShawnRoberts on #webkit).138 139 Reverted changeset:140 141 "[iOS] Update sandboxes to address iokit-get-property errors"142 https://bugs.webkit.org/show_bug.cgi?id=198494143 https://trac.webkit.org/changeset/246123144 145 2019-06-06 Geoffrey Garen <ggaren@apple.com>146 147 Crash using WKHTTPCookieStore when you use WKWebView and UIWebView in the same app148 https://bugs.webkit.org/show_bug.cgi?id=198622149 150 Reviewed by Chris Dumez.151 152 Today in a WWDC lab, I saw some crash reports from an app that mixed153 WKWebView and UIWebView. The proximate cause of the crash is that154 WKHTTPCookieStore queues a callOnMainThread function, and then155 UIWebView dequeues it on the WebThread.156 157 No test because this crash depends on mixing WKWebView and UIWebView and158 getting (un)lucky on the timing.159 160 * UIProcess/API/APIHTTPCookieStore.cpp:161 (API::HTTPCookieStore::cookies):162 (API::HTTPCookieStore::setCookies):163 (API::HTTPCookieStore::deleteCookie): Avoid using callOnMainThread164 becuase it is prohibited in the UI process.165 166 2019-06-06 Antoine Quint <graouts@apple.com>167 168 Remove duplicated websiteDataStoreParameters code from WebsitePoliciesData::applyToDocumentLoader()169 https://bugs.webkit.org/show_bug.cgi?id=198608170 171 Reviewed by Wenson Hsieh.172 173 Due to a rebasing error, r244218 re-introduced code that was removed in r244197. This patch removes this code for good.174 175 * Shared/WebsitePoliciesData.cpp:176 (WebKit::WebsitePoliciesData::applyToDocumentLoader):177 178 2019-06-06 Antoine Quint <graouts@apple.com>179 180 Restrict fast clicks everywhere to desktop content mode181 https://bugs.webkit.org/show_bug.cgi?id=198610182 <rdar://problem/50114230>183 184 Reviewed by Dean Jackson.185 186 * UIProcess/WebPageProxy.h:187 (WebKit::WebPageProxy::allowsFastClicksEverywhere const):188 * UIProcess/ios/WKContentViewInteraction.mm:189 (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]):190 * UIProcess/ios/WebPageProxyIOS.mm:191 (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies):192 193 2019-06-06 Sihui Liu <sihui_liu@apple.com>194 195 NetworkHTTPSUpgradeChecker should construct and destruct database on the background thread196 https://bugs.webkit.org/show_bug.cgi?id=198496197 198 Reviewed by Chris Dumez.199 200 * NetworkProcess/NetworkHTTPSUpgradeChecker.cpp:201 (WebKit::NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker):202 (WebKit::NetworkHTTPSUpgradeChecker::~NetworkHTTPSUpgradeChecker):203 * NetworkProcess/NetworkHTTPSUpgradeChecker.h:204 205 2019-06-06 Truitt Savell <tsavell@apple.com>206 207 Unreviewed, rolling out r246137.208 209 Broke internal builds.210 211 Reverted changeset:212 213 "Introduce new SPI for context menus on iOS"214 https://bugs.webkit.org/show_bug.cgi?id=198590215 https://trac.webkit.org/changeset/246137216 217 2019-06-06 Antti Koivisto <antti@apple.com>218 219 Position fixed is buggy with overflow:auto scrolling inside iframes220 https://bugs.webkit.org/show_bug.cgi?id=154399221 <rdar://problem/24742251>222 223 Reviewed by Frederic Wang and Simon Fraser.224 225 * UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:226 (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):227 228 Remove viewportChangedViaDelegatedScrolling call as we were just relying on its side effect of (partially) applying229 the scrolling tree. Instead call the new applyScrollingTreeLayerPositionsAfterCommit() unconditionally.230 It only does work if there are local deltas to apply.231 232 Local deltas will potentially need to be applied in non-fixed cases too and it is hard to reason about the conditions.233 234 * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:235 (WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositionsAfterCommit):236 (WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositions): Deleted.237 * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:238 239 2019-06-06 Michael Catanzaro <mcatanzaro@igalia.com>240 241 [WPE][GTK] Clean up use of initiatingPageID in implementation of webkit_uri_scheme_request_get_web_view()242 https://bugs.webkit.org/show_bug.cgi?id=198564243 244 Reviewed by Carlos Garcia Campos.245 246 Note that we have to use RefPtr rather than Ref here because the priv struct has to remain247 default-constructible.248 249 * UIProcess/API/glib/WebKitURISchemeRequest.cpp:250 (webkitURISchemeRequestCreate):251 (webkit_uri_scheme_request_get_web_view):252 253 2019-06-06 Carlos Garcia Campos <cgarcia@igalia.com>254 255 [GTK][WPE] Enable PSON256 https://bugs.webkit.org/show_bug.cgi?id=194979257 258 Reviewed by Žan Doberšek.259 260 * Shared/WebPreferencesDefaultValues.h:261 262 2019-06-05 Said Abou-Hallawa <sabouhallawa@apple.com>263 264 [Cocoa] REGRESSION(r244182): Inspector thinks CA commits can be nested265 https://bugs.webkit.org/show_bug.cgi?id=198497266 267 Reviewed by Simon Fraser.268 269 Call InspectorController::willComposite() from the CA preCommit handler270 similar to the call to InspectorController::didComposite() in the CA271 postCommit handler. Ensure these calls will be once for nested commits.272 273 * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h:274 * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:275 (WebKit::RemoteLayerTreeDrawingArea::addCommitHandlers):276 (WebKit::RemoteLayerTreeDrawingArea::flushLayers):277 * WebProcess/WebPage/WebPage.h:278 (WebKit::WebPage::firstFlushAfterCommit const):279 (WebKit::WebPage::setFirstFlushAfterCommit):280 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:281 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:282 (WebKit::TiledCoreAnimationDrawingArea::addCommitHandlers):283 (WebKit::TiledCoreAnimationDrawingArea::flushLayers):284 285 1 2019-06-05 Alex Christensen <achristensen@webkit.org> 286 2 … … 323 39 * WebKit.xcodeproj/project.pbxproj: 324 40 41 2019-06-07 Antoine Quint <graouts@apple.com> 42 43 Restrict fast clicks everywhere to desktop content mode 44 https://bugs.webkit.org/show_bug.cgi?id=198610 45 <rdar://problem/50114230> 46 47 Reviewed by Dean Jackson. 48 49 We now set a new allowsFastClicksEverywhere property on the WebPageProxy when the content mode changes, set to true 50 when we're in desktop browsing mode. We now check on this property to opt into the fast clicks everywhere behavior. 51 52 This patch had been reverted once because it yielded some regressions in existing tests, notably under 53 fast/events/touch/ios/content-observation. This updated patch addresses this by ensuring the gesture recognizers 54 used for double-tap-to-zoom are disabled in -[WKContentViewInteraction _didStartProvisionalLoadForMainFrame] 55 to ensure that two tests dispatching a tap at the same location don't yield the recognition of a double-tap 56 rathern than the recognition of two single taps. 57 58 * UIProcess/WebPageProxy.h: 59 (WebKit::WebPageProxy::allowsFastClicksEverywhere const): 60 * UIProcess/ios/WKContentViewInteraction.mm: 61 (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]): 62 (_didStartProvisionalLoadForMainFrame): 63 * UIProcess/ios/WebPageProxyIOS.mm: 64 (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies): 65 66 2019-06-07 Brent Fulgham <bfulgham@apple.com> 67 68 [iOS] Update sandboxes to address iokit-get-property errors 69 https://bugs.webkit.org/show_bug.cgi?id=198494 70 <rdar://problem/51322072> and <rdar://problem/50602737> 71 72 Reviewed by Per Arne Vollan. 73 74 * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: 75 76 2019-06-07 Andy Estes <aestes@apple.com> 77 78 process-swap-on-navigation error when loading blocked website on iOS 12.2 only. 79 https://bugs.webkit.org/show_bug.cgi?id=196930 80 <rdar://problem/47819301> 81 82 Reviewed by Chris Dumez. 83 84 The ContentFilterDidBlockLoadForFrame message needs to be handled by ProvisionalPageProxy in 85 order to look up the blocked frame in the correct WebProcessProxy. 86 87 * UIProcess/Cocoa/WebPageProxyCocoa.mm: 88 (WebKit::WebPageProxy::contentFilterDidBlockLoadForFrame): 89 (WebKit::WebPageProxy::contentFilterDidBlockLoadForFrameShared): 90 * UIProcess/ProvisionalPageProxy.cpp: 91 (WebKit::ProvisionalPageProxy::contentFilterDidBlockLoadForFrame): 92 (WebKit::ProvisionalPageProxy::didReceiveMessage): 93 * UIProcess/ProvisionalPageProxy.h: 94 * UIProcess/WebPageProxy.h: 95 96 2019-06-07 Carlos Garcia Campos <cgarcia@igalia.com> 97 98 Unreviewed. Fix api used to release wpe_fdo_egl_exported_image in GTK 99 100 We are using the old deprecated API in AcceleratedBackingStoreWayland::displayBuffer(). 101 102 * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp: 103 (WebKit::AcceleratedBackingStoreWayland::displayBuffer): 104 105 2019-06-06 Carlos Garcia Campos <cgarcia@igalia.com> 106 107 REGRESSION(r243094): [GTK][WPE] Stale content after restoring the web view session 108 https://bugs.webkit.org/show_bug.cgi?id=198561 109 110 Reviewed by Chris Dumez. 111 112 This is another regression of delaying the web process launch until the first load. If the session is restored 113 before anything has been loaded, which is the normal way, the RestoreSession message is just ignored and the 114 state is sent to the WebPage on creation via creation parameters. The WebPage considers that restoring a session 115 from creation parameters only happens when re-launching a process after a crash or in case of process swap. In 116 those cases, the history item is not marked as restored from session. We need to ensure the session is restored 117 in the web process from the IPC message handler, by launching the initial process before the session is 118 restored. 119 120 * UIProcess/WebPageProxy.cpp: 121 (WebKit::WebPageProxy::restoreFromSessionState): 122 123 2019-06-06 Youenn Fablet <youenn@apple.com> 124 125 Use an enumeration in UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo callback 126 https://bugs.webkit.org/show_bug.cgi?id=198548 127 128 Reviewed by Eric Carlson. 129 130 Move from an Optional<bool> to an enum having three values to ease readability. 131 132 * UIProcess/UserMediaPermissionCheckProxy.cpp: 133 (WebKit::UserMediaPermissionCheckProxy::setUserMediaAccessInfo): 134 (WebKit::UserMediaPermissionCheckProxy::complete): 135 * UIProcess/UserMediaPermissionCheckProxy.h: 136 (WebKit::UserMediaPermissionCheckProxy::invalidate): 137 * UIProcess/UserMediaPermissionRequestManagerProxy.cpp: 138 (WebKit::UserMediaPermissionRequestManagerProxy::captureDevicesChanged): 139 (WebKit::UserMediaPermissionRequestManagerProxy::startProcessingUserMediaPermissionRequest): 140 (WebKit::UserMediaPermissionRequestManagerProxy::getUserMediaPermissionInfo): 141 (WebKit::UserMediaPermissionRequestManagerProxy::enumerateMediaDevicesForFrame): 142 * UIProcess/UserMediaPermissionRequestManagerProxy.h: 143 144 2019-06-06 Youenn Fablet <youenn@apple.com> 145 146 Allow WebKitTestRunner to terminate network process after it finishes service worker file operations 147 https://bugs.webkit.org/show_bug.cgi?id=198584 148 149 Reviewed by Geoffrey Garen. 150 151 Add IPC binding to new internal API. 152 153 * NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in: 154 * WebProcess/Storage/WebSWClientConnection.cpp: 155 (WebKit::WebSWClientConnection::storeRegistrationsOnDiskForTesting): 156 * WebProcess/Storage/WebSWClientConnection.h: 157 158 2019-06-06 Commit Queue <commit-queue@webkit.org> 159 160 Unreviewed, rolling out r246165. 161 https://bugs.webkit.org/show_bug.cgi?id=198636 162 163 Causing test failures in 7 content-observation tests. 164 (Requested by ShawnRoberts on #webkit). 165 166 Reverted changeset: 167 168 "Restrict fast clicks everywhere to desktop content mode" 169 https://bugs.webkit.org/show_bug.cgi?id=198610 170 https://trac.webkit.org/changeset/246165 171 172 2019-06-06 Commit Queue <commit-queue@webkit.org> 173 174 Unreviewed, rolling out r246123. 175 https://bugs.webkit.org/show_bug.cgi?id=198634 176 177 Causes test failures (Requested by ShawnRoberts on #webkit). 178 179 Reverted changeset: 180 181 "[iOS] Update sandboxes to address iokit-get-property errors" 182 https://bugs.webkit.org/show_bug.cgi?id=198494 183 https://trac.webkit.org/changeset/246123 184 185 2019-06-06 Geoffrey Garen <ggaren@apple.com> 186 187 Crash using WKHTTPCookieStore when you use WKWebView and UIWebView in the same app 188 https://bugs.webkit.org/show_bug.cgi?id=198622 189 190 Reviewed by Chris Dumez. 191 192 Today in a WWDC lab, I saw some crash reports from an app that mixed 193 WKWebView and UIWebView. The proximate cause of the crash is that 194 WKHTTPCookieStore queues a callOnMainThread function, and then 195 UIWebView dequeues it on the WebThread. 196 197 No test because this crash depends on mixing WKWebView and UIWebView and 198 getting (un)lucky on the timing. 199 200 * UIProcess/API/APIHTTPCookieStore.cpp: 201 (API::HTTPCookieStore::cookies): 202 (API::HTTPCookieStore::setCookies): 203 (API::HTTPCookieStore::deleteCookie): Avoid using callOnMainThread 204 becuase it is prohibited in the UI process. 205 206 2019-06-06 Antoine Quint <graouts@apple.com> 207 208 Remove duplicated websiteDataStoreParameters code from WebsitePoliciesData::applyToDocumentLoader() 209 https://bugs.webkit.org/show_bug.cgi?id=198608 210 211 Reviewed by Wenson Hsieh. 212 213 Due to a rebasing error, r244218 re-introduced code that was removed in r244197. This patch removes this code for good. 214 215 * Shared/WebsitePoliciesData.cpp: 216 (WebKit::WebsitePoliciesData::applyToDocumentLoader): 217 218 2019-06-06 Antoine Quint <graouts@apple.com> 219 220 Restrict fast clicks everywhere to desktop content mode 221 https://bugs.webkit.org/show_bug.cgi?id=198610 222 <rdar://problem/50114230> 223 224 Reviewed by Dean Jackson. 225 226 * UIProcess/WebPageProxy.h: 227 (WebKit::WebPageProxy::allowsFastClicksEverywhere const): 228 * UIProcess/ios/WKContentViewInteraction.mm: 229 (-[WKContentView _handleSmartMagnificationInformationForPotentialTap:renderRect:fitEntireRect:viewportMinimumScale:viewportMaximumScale:]): 230 * UIProcess/ios/WebPageProxyIOS.mm: 231 (WebKit::WebPageProxy::effectiveContentModeAfterAdjustingPolicies): 232 233 2019-06-06 Sihui Liu <sihui_liu@apple.com> 234 235 NetworkHTTPSUpgradeChecker should construct and destruct database on the background thread 236 https://bugs.webkit.org/show_bug.cgi?id=198496 237 238 Reviewed by Chris Dumez. 239 240 * NetworkProcess/NetworkHTTPSUpgradeChecker.cpp: 241 (WebKit::NetworkHTTPSUpgradeChecker::NetworkHTTPSUpgradeChecker): 242 (WebKit::NetworkHTTPSUpgradeChecker::~NetworkHTTPSUpgradeChecker): 243 * NetworkProcess/NetworkHTTPSUpgradeChecker.h: 244 245 2019-06-06 Truitt Savell <tsavell@apple.com> 246 247 Unreviewed, rolling out r246137. 248 249 Broke internal builds. 250 251 Reverted changeset: 252 253 "Introduce new SPI for context menus on iOS" 254 https://bugs.webkit.org/show_bug.cgi?id=198590 255 https://trac.webkit.org/changeset/246137 256 257 2019-06-06 Antti Koivisto <antti@apple.com> 258 259 Position fixed is buggy with overflow:auto scrolling inside iframes 260 https://bugs.webkit.org/show_bug.cgi?id=154399 261 <rdar://problem/24742251> 262 263 Reviewed by Frederic Wang and Simon Fraser. 264 265 * UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm: 266 (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): 267 268 Remove viewportChangedViaDelegatedScrolling call as we were just relying on its side effect of (partially) applying 269 the scrolling tree. Instead call the new applyScrollingTreeLayerPositionsAfterCommit() unconditionally. 270 It only does work if there are local deltas to apply. 271 272 Local deltas will potentially need to be applied in non-fixed cases too and it is hard to reason about the conditions. 273 274 * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp: 275 (WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositionsAfterCommit): 276 (WebKit::RemoteScrollingCoordinatorProxy::applyScrollingTreeLayerPositions): Deleted. 277 * UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h: 278 279 2019-06-06 Michael Catanzaro <mcatanzaro@igalia.com> 280 281 [WPE][GTK] Clean up use of initiatingPageID in implementation of webkit_uri_scheme_request_get_web_view() 282 https://bugs.webkit.org/show_bug.cgi?id=198564 283 284 Reviewed by Carlos Garcia Campos. 285 286 Note that we have to use RefPtr rather than Ref here because the priv struct has to remain 287 default-constructible. 288 289 * UIProcess/API/glib/WebKitURISchemeRequest.cpp: 290 (webkitURISchemeRequestCreate): 291 (webkit_uri_scheme_request_get_web_view): 292 293 2019-06-06 Carlos Garcia Campos <cgarcia@igalia.com> 294 295 [GTK][WPE] Enable PSON 296 https://bugs.webkit.org/show_bug.cgi?id=194979 297 298 Reviewed by Žan Doberšek. 299 300 * Shared/WebPreferencesDefaultValues.h: 301 302 2019-06-05 Said Abou-Hallawa <sabouhallawa@apple.com> 303 304 [Cocoa] REGRESSION(r244182): Inspector thinks CA commits can be nested 305 https://bugs.webkit.org/show_bug.cgi?id=198497 306 307 Reviewed by Simon Fraser. 308 309 Call InspectorController::willComposite() from the CA preCommit handler 310 similar to the call to InspectorController::didComposite() in the CA 311 postCommit handler. Ensure these calls will be once for nested commits. 312 313 * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h: 314 * WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm: 315 (WebKit::RemoteLayerTreeDrawingArea::addCommitHandlers): 316 (WebKit::RemoteLayerTreeDrawingArea::flushLayers): 317 * WebProcess/WebPage/WebPage.h: 318 (WebKit::WebPage::firstFlushAfterCommit const): 319 (WebKit::WebPage::setFirstFlushAfterCommit): 320 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: 321 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: 322 (WebKit::TiledCoreAnimationDrawingArea::addCommitHandlers): 323 (WebKit::TiledCoreAnimationDrawingArea::flushLayers): 324 325 2019-06-05 Alex Christensen <achristensen@webkit.org> 326 327 Introduce new SPI for context menus on iOS 328 https://bugs.webkit.org/show_bug.cgi?id=198590 329 330 Reviewed by Tim Horton. 331 332 Also introduce WKContextMenuElementInfo which is API. 333 This is part of <rdar://problem/51003503> 334 335 * Shared/API/APIObject.h: 336 * Shared/API/Cocoa/WebKit.h: 337 * Shared/Cocoa/APIObject.mm: 338 (API::Object::newObject): 339 * Sources.txt: 340 * SourcesCocoa.txt: 341 * UIProcess/API/APIContextMenuElementInfo.cpp: Added. 342 (API::ContextMenuElementInfo::ContextMenuElementInfo): 343 * UIProcess/API/APIContextMenuElementInfo.h: Added. 344 * UIProcess/API/Cocoa/WKContextMenuElementInfo.h: Added. 345 * UIProcess/API/Cocoa/WKContextMenuElementInfo.mm: Added. 346 (-[WKContextMenuElementInfo linkURL]): 347 (-[WKContextMenuElementInfo _apiObject]): 348 (-[WKContextMenuElementInfo _activatedElementInfo]): 349 * UIProcess/API/Cocoa/WKContextMenuElementInfoInternal.h: Added. 350 * UIProcess/API/Cocoa/WKContextMenuElementInfoPrivate.h: Added. 351 * UIProcess/API/Cocoa/WKPreviewElementInfo.h: 352 * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: 353 * UIProcess/API/Cocoa/_WKActivatedElementInfo.h: 354 * UIProcess/API/Cocoa/_WKActivatedElementInfo.mm: 355 (-[_WKActivatedElementInfo _initWithInteractionInformationAtPosition:]): 356 (-[_WKActivatedElementInfo isAnimatedImage]): 357 * UIProcess/ios/WKActionSheetAssistant.h: 358 * UIProcess/ios/WKActionSheetAssistant.mm: 359 (-[WKActionSheetAssistant defaultActionsForLinkSheet:]): 360 (-[WKActionSheetAssistant defaultActionsForImageSheet:]): 361 * UIProcess/ios/WKContentView.h: 362 * UIProcess/ios/WKContentViewInteraction.mm: 363 * WebKit.xcodeproj/project.pbxproj: 364 325 365 2019-06-05 Jer Noble <jer.noble@apple.com> 326 366 -
trunk/Source/WebKit/Shared/API/APIObject.h
r246157 r246224 110 110 ContentRuleListAction, 111 111 ContentRuleListStore, 112 #if PLATFORM(IOS_FAMILY) 113 ContextMenuElementInfo, 114 #endif 112 115 ContextMenuListener, 113 116 CookieManager, -
trunk/Source/WebKit/Shared/API/Cocoa/WebKit.h
r246157 r246224 28 28 #import <WebKit/WKContentRuleList.h> 29 29 #import <WebKit/WKContentRuleListStore.h> 30 #import <WebKit/WKContextMenuElementInfo.h> 30 31 #import <WebKit/WKError.h> 31 32 #import <WebKit/WKFoundation.h> -
trunk/Source/WebKit/Shared/Cocoa/APIObject.mm
r246157 r246224 34 34 #import "WKContentRuleListInternal.h" 35 35 #import "WKContentRuleListStoreInternal.h" 36 #import "WKContextMenuElementInfoInternal.h" 36 37 #import "WKFrameInfoInternal.h" 37 38 #import "WKHTTPCookieStoreInternal.h" … … 314 315 break; 315 316 317 #if PLATFORM(IOS_FAMILY) 318 case Type::ContextMenuElementInfo: 319 wrapper = [WKContextMenuElementInfo alloc]; 320 break; 321 #endif 322 316 323 case Type::CustomHeaderFields: 317 324 wrapper = [_WKCustomHeaderFields alloc]; -
trunk/Source/WebKit/Sources.txt
r246157 r246224 301 301 UIProcess/API/APIContentRuleListAction.cpp 302 302 UIProcess/API/APIContentRuleListStore.cpp 303 UIProcess/API/APIContextMenuElementInfo.cpp 303 304 UIProcess/API/APIExperimentalFeature.cpp 304 305 UIProcess/API/APIFrameInfo.cpp -
trunk/Source/WebKit/SourcesCocoa.txt
r246157 r246224 285 285 UIProcess/API/Cocoa/WKContentRuleList.mm 286 286 UIProcess/API/Cocoa/WKContentRuleListStore.mm 287 UIProcess/API/Cocoa/WKContextMenuElementInfo.mm 287 288 UIProcess/API/Cocoa/WKError.mm 288 289 UIProcess/API/Cocoa/WKFrameInfo.mm -
trunk/Source/WebKit/UIProcess/API/APIContextMenuElementInfo.cpp
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #import <WebKit/WKFoundation.h> 26 #include "config.h" 27 #include "APIContextMenuElementInfo.h" 27 28 28 #if TARGET_OS_IPHONE29 #if PLATFORM(IOS_FAMILY) 29 30 30 #import <Foundation/Foundation.h> 31 namespace API { 31 32 32 NS_ASSUME_NONNULL_BEGIN 33 ContextMenuElementInfo::ContextMenuElementInfo(const WebKit::InteractionInformationAtPosition& info) 34 : m_interactionInformation(info) 35 { 36 } 33 37 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 38 } // namespace API 36 39 37 @property (nonatomic, readonly, nullable) NSURL *linkURL; 38 39 @end 40 41 NS_ASSUME_NONNULL_END 42 43 #endif 40 #endif // PLATFORM(IOS_FAMILY) -
trunk/Source/WebKit/UIProcess/API/APIContextMenuElementInfo.h
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 # import <WebKit/WKFoundation.h>26 #pragma once 27 27 28 #if TARGET_OS_IPHONE28 #if PLATFORM(IOS_FAMILY) 29 29 30 #import <Foundation/Foundation.h> 30 #include "APIObject.h" 31 #include "InteractionInformationAtPosition.h" 31 32 32 NS_ASSUME_NONNULL_BEGIN 33 namespace API { 33 34 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 35 class ContextMenuElementInfo final : public ObjectImpl<Object::Type::ContextMenuElementInfo> { 36 public: 37 template<typename... Args> static Ref<ContextMenuElementInfo> create(Args&&... args) 38 { 39 return adoptRef(*new ContextMenuElementInfo(std::forward<Args>(args)...)); 40 } 41 42 const WTF::URL& url() const { return m_interactionInformation.url; } 36 43 37 @property (nonatomic, readonly, nullable) NSURL *linkURL; 44 const WebKit::InteractionInformationAtPosition& interactionInformation() const { return m_interactionInformation; } 38 45 39 @end 46 private: 47 ContextMenuElementInfo(const WebKit::InteractionInformationAtPosition&); 48 49 WebKit::InteractionInformationAtPosition m_interactionInformation; 50 }; 40 51 41 NS_ASSUME_NONNULL_END 52 } // namespace API 42 53 43 54 #endif -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKContextMenuElementInfo.h
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 32 32 NS_ASSUME_NONNULL_BEGIN 33 33 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 34 WK_CLASS_AVAILABLE(ios(WK_IOS_TBA)) 35 @interface WKContextMenuElementInfo : NSObject 36 37 - (instancetype)init NS_UNAVAILABLE; 36 38 37 39 @property (nonatomic, readonly, nullable) NSURL *linkURL; … … 42 44 43 45 #endif 46 -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKContextMenuElementInfo.mm
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #import <WebKit/WKFoundation.h> 26 #import "config.h" 27 #import "WKContextMenuElementInfoInternal.h" 27 28 28 #if TARGET_OS_IPHONE29 #if PLATFORM(IOS_FAMILY) 29 30 30 #import <Foundation/Foundation.h>31 #import "_WKActivatedElementInfoInternal.h" 31 32 32 NS_ASSUME_NONNULL_BEGIN 33 @implementation WKContextMenuElementInfo 33 34 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 35 - (NSURL *)linkURL 36 { 37 return _elementInfo->url(); 38 } 36 39 37 @property (nonatomic, readonly, nullable) NSURL *linkURL; 40 - (API::Object&)_apiObject 41 { 42 return *_elementInfo; 43 } 38 44 39 45 @end 40 46 41 NS_ASSUME_NONNULL_END 47 @implementation WKContextMenuElementInfo (WKPrivate) 48 49 - (_WKActivatedElementInfo *)_activatedElementInfo 50 { 51 return [_WKActivatedElementInfo activatedElementInfoWithInteractionInformationAtPosition:_elementInfo->interactionInformation()]; 52 } 53 54 @end 42 55 43 56 #endif 57 -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKContextMenuElementInfoInternal.h
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #import <WebKit/WKFoundation.h> 26 #import "APIContextMenuElementInfo.h" 27 #import "WKContextMenuElementInfo.h" 28 #import "WKObject.h" 27 29 28 #if TARGET_OS_IPHONE30 #if PLATFORM(IOS_FAMILY) 29 31 30 #import <Foundation/Foundation.h> 32 namespace WebKit { 31 33 32 NS_ASSUME_NONNULL_BEGIN 34 template<> struct WrapperTraits<API::ContextMenuElementInfo> { 35 using WrapperClass = WKContextMenuElementInfo; 36 }; 33 37 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 38 } 36 39 37 @property (nonatomic, readonly, nullable) NSURL *linkURL; 38 40 @interface WKContextMenuElementInfo () <WKObject> { 41 @package 42 API::ObjectStorage<API::ContextMenuElementInfo> _elementInfo; 43 } 39 44 @end 40 45 41 NS_ASSUME_NONNULL_END 42 43 #endif 46 #endif // PLATFORM(IOS_FAMILY) -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKContextMenuElementInfoPrivate.h
r246223 r246224 1 1 /* 2 * Copyright (C) 201 5Apple Inc. All rights reserved.2 * Copyright (C) 2019 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 24 24 */ 25 25 26 #import <WebKit/WK Foundation.h>26 #import <WebKit/WKContextMenuElementInfo.h> 27 27 28 #if TARGET_OS_IPHONE 28 @class _WKActivatedElementInfo; 29 29 30 #import <Foundation/Foundation.h> 30 @interface WKContextMenuElementInfo (WKPrivate) 31 31 32 NS_ASSUME_NONNULL_BEGIN 33 34 WK_CLASS_AVAILABLE(ios(10.0)) 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 36 37 @property (nonatomic, readonly, nullable) NSURL *linkURL; 32 @property (nonatomic, copy, readonly) _WKActivatedElementInfo *_activatedElementInfo; 38 33 39 34 @end 40 41 NS_ASSUME_NONNULL_END42 43 #endif -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKPreviewElementInfo.h
r246157 r246224 32 32 NS_ASSUME_NONNULL_BEGIN 33 33 34 WK_CLASS_ AVAILABLE(ios(10.0))34 WK_CLASS_DEPRECATED_WITH_REPLACEMENT("WKContextMenuElementInfo", ios(10.0, WK_IOS_TBA)) 35 35 @interface WKPreviewElementInfo : NSObject <NSCopying> 36 36 -
trunk/Source/WebKit/UIProcess/API/Cocoa/WKUIDelegatePrivate.h
r246157 r246224 41 41 42 42 #if TARGET_OS_IOS 43 @class UIContextMenuConfiguration; 43 44 @class UIDragItem; 44 45 @class UITargetedDragPreview; 46 @class WKContextMenuElementInfo; 47 @protocol UIContextMenuInteractionCommitAnimating; 45 48 @protocol UIDragSession; 46 49 @protocol UIDropSession; … … 136 139 - (BOOL)_webView:(WKWebView *)webView shouldRequestGeolocationAuthorizationForURL:(NSURL *)url isMainFrame:(BOOL)isMainFrame mainFrameURL:(NSURL *)mainFrameURL; 137 140 - (void)_webView:(WKWebView *)webView requestGeolocationAuthorizationForURL:(NSURL *)url frame:(WKFrameInfo *)frame decisionHandler:(void (^)(BOOL authorized))decisionHandler WK_API_AVAILABLE(ios(11.0)); 138 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForURL:(NSURL *)url WK_API_AVAILABLE(ios(9.0)); 139 - (void)_webView:(WKWebView *)webView commitPreviewedViewController:(UIViewController *)previewedViewController WK_API_AVAILABLE(ios(9.0)); 140 - (void)_webView:(WKWebView *)webView willPreviewImageWithURL:(NSURL *)imageURL WK_API_AVAILABLE(ios(9.0)); 141 - (void)_webView:(WKWebView *)webView commitPreviewedImageWithURL:(NSURL *)imageURL WK_API_AVAILABLE(ios(9.0)); 142 - (void)_webView:(WKWebView *)webView didDismissPreviewViewController:(UIViewController *)previewedViewController committing:(BOOL)committing WK_API_AVAILABLE(ios(9.0)); 143 - (void)_webView:(WKWebView *)webView didDismissPreviewViewController:(UIViewController *)previewedViewController WK_API_AVAILABLE(ios(9.0)); 141 142 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForURL:(NSURL *)url WK_API_DEPRECATED_WITH_REPLACEMENT("webView:contextMenuConfigurationForElement:completionHandler:", ios(9.0, WK_IOS_TBA)); 143 - (void)_webView:(WKWebView *)webView commitPreviewedViewController:(UIViewController *)previewedViewController WK_API_DEPRECATED_WITH_REPLACEMENT("webView:commitContextMenu:", ios(9.0, WK_IOS_TBA)); 144 - (void)_webView:(WKWebView *)webView willPreviewImageWithURL:(NSURL *)imageURL WK_API_DEPRECATED_WITH_REPLACEMENT("webView:contextMenuConfigurationForElement:completionHandler:", ios(9.0, WK_IOS_TBA)); 145 - (void)_webView:(WKWebView *)webView commitPreviewedImageWithURL:(NSURL *)imageURL WK_API_DEPRECATED_WITH_REPLACEMENT("webView:commitContextMenu:", ios(9.0, WK_IOS_TBA)); 146 - (void)_webView:(WKWebView *)webView didDismissPreviewViewController:(UIViewController *)previewedViewController committing:(BOOL)committing WK_API_DEPRECATED_WITH_REPLACEMENT("webView:dismissContextMenu:", ios(9.0, WK_IOS_TBA)); 147 - (void)_webView:(WKWebView *)webView didDismissPreviewViewController:(UIViewController *)previewedViewController WK_API_DEPRECATED_WITH_REPLACEMENT("webView:dismissContextMenu:", ios(9.0, WK_IOS_TBA)); 148 149 #if TARGET_OS_IOS 150 // This needs to be removed once there is an API version to continue to do callbacks for image element context menus. 151 - (void)_webView:(WKWebView *)webView contextMenuConfigurationForElement:(WKContextMenuElementInfo *)elementInfo completionHandler:(void(^)(UIContextMenuConfiguration *))completionHandler WK_API_AVAILABLE(ios(WK_IOS_TBA)); 152 153 // These can be removed once there is an API version. 154 - (void)_webView:(WKWebView *)webView contextMenuForElement:(WKContextMenuElementInfo *)elementInfo willCommitWithAnimator:(id<UIContextMenuInteractionCommitAnimating>)animator WK_API_AVAILABLE(ios(WK_IOS_TBA)); 155 - (void)_webView:(WKWebView *)webView contextMenuWillPresentForElement:(WKContextMenuElementInfo *)elementInfo WK_API_AVAILABLE(ios(WK_IOS_TBA)); 156 - (void)_webView:(WKWebView *)webView contextMenuDidEndForElement:(WKContextMenuElementInfo *)elementInfo WK_API_AVAILABLE(ios(WK_IOS_TBA)); 157 #endif 158 144 159 - (BOOL)_webView:(WKWebView *)webView showCustomSheetForElement:(_WKActivatedElementInfo *)element WK_API_AVAILABLE(ios(10.0)); 145 160 - (void)_webView:(WKWebView *)webView alternateActionForURL:(NSURL *)url WK_API_AVAILABLE(ios(10.0)); … … 148 163 - (NSUInteger)_webView:(WKWebView *)webView indexIntoAttachmentListForElement:(_WKActivatedElementInfo *)element WK_API_AVAILABLE(ios(10.3)); 149 164 - (UIEdgeInsets)_webView:(WKWebView *)webView finalObscuredInsetsForScrollView:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset WK_API_AVAILABLE(ios(9.0)); 150 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo WK_API_ AVAILABLE(ios(9.0));151 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForAnimatedImageAtURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo imageSize:(CGSize)imageSize WK_API_ AVAILABLE(ios(9.0));165 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo WK_API_DEPRECATED_WITH_REPLACEMENT("webView:contextMenuConfigurationForElement:", ios(9.0, WK_IOS_TBA)); 166 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForAnimatedImageAtURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo imageSize:(CGSize)imageSize WK_API_DEPRECATED_WITH_REPLACEMENT("webView:contextMenuConfigurationForElement:", ios(9.0, WK_IOS_TBA)); 152 167 - (UIViewController *)_presentingViewControllerForWebView:(WKWebView *)webView WK_API_AVAILABLE(ios(10.0)); 153 168 - (void)_webView:(WKWebView *)webView getAlternateURLFromImage:(UIImage *)image completionHandler:(void (^)(NSURL *alternateURL, NSDictionary *userInfo))completionHandler WK_API_AVAILABLE(ios(11.0)); 154 169 - (NSURL *)_webView:(WKWebView *)webView alternateURLFromImage:(UIImage *)image userInfo:(NSDictionary **)userInfo WK_API_AVAILABLE(ios(11.0)); 155 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForImage:(UIImage *)image alternateURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo WK_API_ AVAILABLE(ios(11.0));170 - (UIViewController *)_webView:(WKWebView *)webView previewViewControllerForImage:(UIImage *)image alternateURL:(NSURL *)url defaultActions:(NSArray<_WKElementAction *> *)actions elementInfo:(_WKActivatedElementInfo *)elementInfo WK_API_DEPRECATED_WITH_REPLACEMENT("webView:contextMenuConfigurationForElement:", ios(11.0, WK_IOS_TBA)); 156 171 - (NSArray *)_webView:(WKWebView *)webView adjustedDataInteractionItemProviders:(NSArray *)originalItemProviders WK_API_AVAILABLE(ios(11.0)); 157 172 - (NSArray *)_webView:(WKWebView *)webView adjustedDataInteractionItemProvidersForItemProvider:(id)itemProvider representingObjects:(NSArray *)representingObjects additionalData:(NSDictionary *)additionalData WK_API_AVAILABLE(ios(11.0)); -
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.h
r246157 r246224 48 48 @property (nonatomic, readonly) CGRect boundingRect; 49 49 @property (nonatomic, readonly) NSString *ID WK_API_AVAILABLE(macos(10.12), ios(10.0)); 50 @property (nonatomic, readonly) BOOL isAnimatedImage WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA)); 50 51 #if TARGET_OS_IPHONE 51 52 @property (nonatomic, readonly) NSDictionary *userInfo WK_API_AVAILABLE(ios(11.0)); -
trunk/Source/WebKit/UIProcess/API/Cocoa/_WKActivatedElementInfo.mm
r246157 r246224 52 52 RetainPtr<NSImage> _nsImage; 53 53 #endif 54 BOOL _animatedImage; 54 55 } 55 56 … … 82 83 _image = information.image; 83 84 _ID = information.idAttribute; 85 _animatedImage = information.isAnimatedImage; 84 86 85 87 return self; … … 137 139 } 138 140 141 - (BOOL)isAnimatedImage 142 { 143 return _animatedImage; 144 } 145 139 146 #if PLATFORM(IOS_FAMILY) 140 147 - (NSDictionary *)userInfo -
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.h
r246157 r246224 141 141 class WebPageProxy; 142 142 class WebProcessPool; 143 class WebProcessProxy; 143 144 struct ColorSpaceData; 144 145 struct WebHitTestResultData; -
trunk/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
r246157 r246224 1570 1570 NSView *webView = m_view.getAutoreleased(); 1571 1571 1572 if (direction == FocusDirectionForward) {1572 if (direction == WebCore::FocusDirectionForward) { 1573 1573 // Since we're trying to move focus out of m_webView, and because 1574 1574 // m_webView may contain subviews within it, we ask it for the next key … … 3612 3612 if ([parameter isKindOfClass:[NSValue class]]) { 3613 3613 NSRect rect = [(NSValue *)parameter rectValue]; 3614 return [NSValue valueWithRect:m_pageClient->rootViewToScreen( IntRect(rect))];3614 return [NSValue valueWithRect:m_pageClient->rootViewToScreen(WebCore::IntRect(rect))]; 3615 3615 } 3616 3616 } -
trunk/Source/WebKit/UIProcess/ios/WKActionSheetAssistant.h
r246157 r246224 39 39 @class WKActionSheetAssistant; 40 40 @class _WKActivatedElementInfo; 41 @class _WKElementAction; 41 42 @protocol WKActionSheetDelegate; 42 43 … … 77 78 - (void)cleanupSheet; 78 79 - (void)updateSheetPosition; 79 - (RetainPtr<NSArray >)defaultActionsForLinkSheet:(_WKActivatedElementInfo *)elementInfo;80 - (RetainPtr<NSArray >)defaultActionsForImageSheet:(_WKActivatedElementInfo *)elementInfo;80 - (RetainPtr<NSArray<_WKElementAction *>>)defaultActionsForLinkSheet:(_WKActivatedElementInfo *)elementInfo; 81 - (RetainPtr<NSArray<_WKElementAction *>>)defaultActionsForImageSheet:(_WKActivatedElementInfo *)elementInfo; 81 82 - (BOOL)isShowingSheet; 82 83 - (void)interactionDidStartWithPositionInformation:(const WebKit::InteractionInformationAtPosition&)information; -
trunk/Source/WebKit/UIProcess/ios/WKActionSheetAssistant.mm
r246157 r246224 530 530 } 531 531 532 - (RetainPtr<NSArray >)defaultActionsForLinkSheet:(_WKActivatedElementInfo *)elementInfo532 - (RetainPtr<NSArray<_WKElementAction *>>)defaultActionsForLinkSheet:(_WKActivatedElementInfo *)elementInfo 533 533 { 534 534 NSURL *targetURL = [elementInfo URL]; … … 557 557 } 558 558 559 - (RetainPtr<NSArray >)defaultActionsForImageSheet:(_WKActivatedElementInfo *)elementInfo559 - (RetainPtr<NSArray<_WKElementAction *>>)defaultActionsForImageSheet:(_WKActivatedElementInfo *)elementInfo 560 560 { 561 561 NSURL *targetURL = [elementInfo URL]; -
trunk/Source/WebKit/UIProcess/ios/WKContentView.h
r246157 r246224 55 55 @package 56 56 RefPtr<WebKit::WebPageProxy> _page; 57 WKWebView *_webView; 57 WKWebView *_webView; // FIXME: This should be made a WeakObjCPtr once everything that refers to it is moved to OpenSource. 58 58 } 59 59 -
trunk/Source/WebKit/UIProcess/ios/WKContentViewInteraction.mm
r246213 r246224 43 43 #import "UIKitSPI.h" 44 44 #import "WKActionSheetAssistant.h" 45 #import "WKContextMenuElementInfoInternal.h" 45 46 #import "WKDatePickerViewController.h" 46 47 #import "WKDrawingCoordinator.h" … … 7520 7521 if ([uiDelegate respondsToSelector:@selector(_webView:previewViewControllerForAnimatedImageAtURL:defaultActions:elementInfo:imageSize:)]) { 7521 7522 RetainPtr<NSArray> actions = [_actionSheetAssistant defaultActionsForImageSheet:animatedImageElementInfo.get()]; 7523 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7522 7524 return [uiDelegate _webView:_webView previewViewControllerForAnimatedImageAtURL:targetURL defaultActions:actions.get() elementInfo:animatedImageElementInfo.get() imageSize:_positionInformation.image->size()]; 7525 ALLOW_DEPRECATED_DECLARATIONS_END 7523 7526 } 7524 7527 } … … 7542 7545 } 7543 7546 7547 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7544 7548 if ([uiDelegate respondsToSelector:@selector(_webView:previewViewControllerForURL:defaultActions:elementInfo:)]) 7545 7549 return [uiDelegate _webView:_webView previewViewControllerForURL:targetURL defaultActions:actions.get() elementInfo:elementInfo.get()]; … … 7547 7551 if ([uiDelegate respondsToSelector:@selector(_webView:previewViewControllerForURL:)]) 7548 7552 return [uiDelegate _webView:_webView previewViewControllerForURL:targetURL]; 7553 ALLOW_DEPRECATED_DECLARATIONS_END 7554 7549 7555 return nil; 7550 7556 } … … 7567 7573 _page->startInteractionWithElementAtPosition(_positionInformation.request.point); 7568 7574 7575 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7569 7576 if ([uiDelegate respondsToSelector:@selector(_webView:willPreviewImageWithURL:)]) 7570 7577 [uiDelegate _webView:_webView willPreviewImageWithURL:targetURL]; 7578 ALLOW_DEPRECATED_DECLARATIONS_END 7571 7579 7572 7580 auto defaultActions = [_actionSheetAssistant defaultActionsForImageSheet:elementInfo.get()]; 7573 7581 if (imageInfo && [uiDelegate respondsToSelector:@selector(_webView:previewViewControllerForImage:alternateURL:defaultActions:elementInfo:)]) { 7582 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7574 7583 UIViewController *previewViewController = [uiDelegate _webView:_webView previewViewControllerForImage:uiImage.get() alternateURL:alternateURL.get() defaultActions:defaultActions.get() elementInfo:elementInfo.get()]; 7584 ALLOW_DEPRECATED_DECLARATIONS_END 7575 7585 if (previewViewController) 7576 7586 return previewViewController; … … 7591 7601 if (imageURL.isEmpty() || !(imageURL.protocolIsInHTTPFamily() || imageURL.protocolIs("data"))) 7592 7602 return; 7603 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7593 7604 [uiDelegate _webView:_webView commitPreviewedImageWithURL:(NSURL *)imageURL]; 7605 ALLOW_DEPRECATED_DECLARATIONS_END 7594 7606 return; 7595 7607 } … … 7605 7617 7606 7618 if ([uiDelegate respondsToSelector:@selector(_webView:commitPreviewedViewController:)]) { 7619 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7607 7620 [uiDelegate _webView:_webView commitPreviewedViewController:viewController]; 7621 ALLOW_DEPRECATED_DECLARATIONS_END 7608 7622 return; 7609 7623 } … … 7629 7643 { 7630 7644 id<WKUIDelegatePrivate> uiDelegate = static_cast<id <WKUIDelegatePrivate>>([_webView UIDelegate]); 7645 ALLOW_DEPRECATED_DECLARATIONS_BEGIN 7631 7646 if ([uiDelegate respondsToSelector:@selector(_webView:didDismissPreviewViewController:committing:)]) 7632 7647 [uiDelegate _webView:_webView didDismissPreviewViewController:viewController committing:committing]; 7633 7648 else if ([uiDelegate respondsToSelector:@selector(_webView:didDismissPreviewViewController:)]) 7634 7649 [uiDelegate _webView:_webView didDismissPreviewViewController:viewController]; 7635 7650 ALLOW_DEPRECATED_DECLARATIONS_END 7651 7636 7652 [_webView _didDismissForcePressPreview]; 7637 7653 } -
trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj
r246157 r246224 1075 1075 5C5D238C227A2CDA000B9BDA /* _WKCustomHeaderFields.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C5D2389227A1892000B9BDA /* _WKCustomHeaderFields.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1076 1076 5C62FDF91EFC271C00CE072E /* WKURLSchemeTaskPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C62FDF81EFC263C00CE072E /* WKURLSchemeTaskPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1077 5C795D70229F373F003FF1C4 /* WKContextMenuElementInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CE0C369229F2D4A003695F0 /* WKContextMenuElementInfo.h */; settings = {ATTRIBUTES = (Public, ); }; }; 1078 5C795D71229F3757003FF1C4 /* WKContextMenuElementInfoPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CE0C36A229F2D4A003695F0 /* WKContextMenuElementInfoPrivate.h */; settings = {ATTRIBUTES = (Private, ); }; }; 1077 1079 5C7FB47021E97DC5009E3241 /* WebCookieJar.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C7FB46F21E97C0C009E3241 /* WebCookieJar.h */; }; 1078 1080 5C8BC797218CBB4800813886 /* SafeBrowsing.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5C8BC796218CB58A00813886 /* SafeBrowsing.xcassets */; }; … … 3577 3579 5CD2864F1E722F440094FDC8 /* WKContentRuleListStoreInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContentRuleListStoreInternal.h; sourceTree = "<group>"; }; 3578 3580 5CD286501E722F440094FDC8 /* WKContentRuleListStorePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContentRuleListStorePrivate.h; sourceTree = "<group>"; }; 3581 5CE0C366229F2D3D003695F0 /* APIContextMenuElementInfo.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = APIContextMenuElementInfo.cpp; sourceTree = "<group>"; }; 3582 5CE0C367229F2D3E003695F0 /* APIContextMenuElementInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIContextMenuElementInfo.h; sourceTree = "<group>"; }; 3583 5CE0C368229F2D4A003695F0 /* WKContextMenuElementInfo.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKContextMenuElementInfo.mm; sourceTree = "<group>"; }; 3584 5CE0C369229F2D4A003695F0 /* WKContextMenuElementInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContextMenuElementInfo.h; sourceTree = "<group>"; }; 3585 5CE0C36A229F2D4A003695F0 /* WKContextMenuElementInfoPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContextMenuElementInfoPrivate.h; sourceTree = "<group>"; }; 3586 5CE0C36B229F2D4B003695F0 /* WKContextMenuElementInfoInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKContextMenuElementInfoInternal.h; sourceTree = "<group>"; }; 3579 3587 5CE85B1F1C88E6430070BFCE /* PingLoad.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PingLoad.h; sourceTree = "<group>"; }; 3580 3588 5CE9120B2293C1E0005BEC78 /* WKMain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKMain.h; sourceTree = "<group>"; }; … … 6258 6266 5CD2864F1E722F440094FDC8 /* WKContentRuleListStoreInternal.h */, 6259 6267 5CD286501E722F440094FDC8 /* WKContentRuleListStorePrivate.h */, 6268 5CE0C369229F2D4A003695F0 /* WKContextMenuElementInfo.h */, 6269 5CE0C368229F2D4A003695F0 /* WKContextMenuElementInfo.mm */, 6270 5CE0C36B229F2D4B003695F0 /* WKContextMenuElementInfoInternal.h */, 6271 5CE0C36A229F2D4A003695F0 /* WKContextMenuElementInfoPrivate.h */, 6260 6272 1AF4592D19464B2000F9D4A2 /* WKError.h */, 6261 6273 1AF4592C19464B2000F9D4A2 /* WKError.mm */, … … 7724 7736 7C3A06A61AAB903E009D74BA /* APIContentRuleListStore.h */, 7725 7737 076E884D1A13CADF005E90FC /* APIContextMenuClient.h */, 7738 5CE0C366229F2D3D003695F0 /* APIContextMenuElementInfo.cpp */, 7739 5CE0C367229F2D3E003695F0 /* APIContextMenuElementInfo.h */, 7726 7740 5C5D238A227A1D9B000B9BDA /* APICustomHeaderFields.h */, 7727 7741 7A821F4F1E2F7A5C00604577 /* APICustomProtocolManagerClient.h */, … … 9900 9914 1A445BA1184D5FC1004B3414 /* WKContextHistoryClient.h in Headers */, 9901 9915 1A445B9F184D5FB5004B3414 /* WKContextInjectedBundleClient.h in Headers */, 9916 5C795D70229F373F003FF1C4 /* WKContextMenuElementInfo.h in Headers */, 9917 5C795D71229F3757003FF1C4 /* WKContextMenuElementInfoPrivate.h in Headers */, 9902 9918 51A555F6128C6C47009ABCEC /* WKContextMenuItem.h in Headers */, 9903 9919 51A55601128C6D92009ABCEC /* WKContextMenuItemTypes.h in Headers */,
Note:
See TracChangeset
for help on using the changeset viewer.