| 2015-01-09 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the GTK and EFL builds. |
| |
| * CMakeLists.txt: |
| |
| 2015-01-09 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of the database strategy |
| https://bugs.webkit.org/show_bug.cgi?id=140322 |
| |
| Reviewed by Sam Weinig. |
| |
| * NetworkProcess/NetworkProcessPlatformStrategies.cpp: |
| (WebKit::NetworkProcessPlatformStrategies::createDatabaseStrategy): Deleted. |
| * NetworkProcess/NetworkProcessPlatformStrategies.h: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createDatabaseStrategy): Deleted. |
| (WebKit::WebPlatformStrategies::getDatabaseServer): Deleted. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2015-01-09 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Remove deprecated WKRenderingProgressEvents |
| https://bugs.webkit.org/show_bug.cgi?id=140325 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/Cocoa/WKRenderingProgressEvents.h: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: |
| |
| 2015-01-09 Sam Weinig <sam@webkit.org> |
| |
| Move Navigation creation out of the Cocoa layer and down into the WebPageProxy level |
| https://bugs.webkit.org/show_bug.cgi?id=140319 |
| |
| Reviewed by Anders Carlsson. |
| |
| - Adds WebNavigationState, a class at the WebPageProxy level to handle the creation |
| and storage of Navigations. Starts moving some of the functionality from NavigationState |
| there. |
| |
| * UIProcess/API/APINavigation.cpp: |
| (API::Navigation::Navigation): |
| * UIProcess/API/APINavigation.h: |
| (API::Navigation::create): |
| (API::Navigation::navigationID): |
| Have each Navigation store its navigationID and generate it via the WebNavigationState |
| that is passed to the constructor. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView loadRequest:]): |
| (-[WKWebView loadFileURL:allowingReadAccessToURL:]): |
| (-[WKWebView loadData:MIMEType:characterEncodingName:baseURL:]): |
| (-[WKWebView goToBackForwardListItem:]): |
| (-[WKWebView goBack]): |
| (-[WKWebView goForward]): |
| (-[WKWebView reload]): |
| (-[WKWebView reloadFromOrigin]): |
| (-[WKWebView _restoreFromSessionStateData:]): |
| (-[WKWebView _restoreSessionState:andNavigate:]): |
| Update for WebPageProxy functions returning the Navigations directly, rather than |
| the navigationID. |
| |
| * UIProcess/Cocoa/NavigationState.h: |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction): |
| Remove creation of the load request navigation which is now handled by the WebPageProxy. |
| |
| (WebKit::NavigationState::LoaderClient::didStartProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailProvisionalLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didCommitLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishDocumentLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didSameDocumentNavigationForFrame): |
| (WebKit::NavigationState::LoaderClient::didDestroyNavigation): |
| (WebKit::NavigationState::LoaderClient::processDidCrash): |
| Change to get/take/remove Navigations from the WebPageProxy's WebNavigationState |
| |
| (WebKit::NavigationState::createLoadRequestNavigation): Deleted. |
| (WebKit::NavigationState::createBackForwardNavigation): Deleted. |
| (WebKit::NavigationState::createReloadNavigation): Deleted. |
| (WebKit::NavigationState::createLoadDataNavigation): Deleted. |
| Move Navigation creation to WebNavigationState. |
| |
| * UIProcess/WebFrameListenerProxy.cpp: |
| (WebKit::WebFrameListenerProxy::WebFrameListenerProxy): |
| (WebKit::WebFrameListenerProxy::receivedPolicyDecision): |
| * UIProcess/WebFrameListenerProxy.h: |
| (WebKit::WebFrameListenerProxy::navigation): |
| (WebKit::WebFrameListenerProxy::setNavigation): |
| (WebKit::WebFrameListenerProxy::navigationID): Deleted. |
| (WebKit::WebFrameListenerProxy::setNavigationID): Deleted. |
| * UIProcess/WebFrameProxy.cpp: |
| (WebKit::WebFrameProxy::receivedPolicyDecision): |
| * UIProcess/WebFrameProxy.h: |
| Store a Navigation rather than a navigationID on the WebFrameListenerProxy. |
| |
| * UIProcess/WebNavigationState.cpp: Added. |
| (WebKit::WebNavigationState::WebNavigationState): |
| (WebKit::WebNavigationState::~WebNavigationState): |
| (WebKit::WebNavigationState::createLoadRequestNavigation): |
| (WebKit::WebNavigationState::createBackForwardNavigation): |
| (WebKit::WebNavigationState::createReloadNavigation): |
| (WebKit::WebNavigationState::createLoadDataNavigation): |
| (WebKit::WebNavigationState::navigation): |
| (WebKit::WebNavigationState::takeNavigation): |
| (WebKit::WebNavigationState::didDestroyNavigation): |
| (WebKit::WebNavigationState::clearAllNavigations): |
| * UIProcess/WebNavigationState.h: Added. |
| (WebKit::WebNavigationState::generateNavigationID): |
| New class to manage navigations. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcessForReload): |
| (WebKit::WebPageProxy::reattachToWebProcessWithItem): |
| (WebKit::WebPageProxy::loadRequest): |
| (WebKit::WebPageProxy::loadFile): |
| (WebKit::WebPageProxy::loadData): |
| (WebKit::WebPageProxy::loadHTMLString): |
| (WebKit::WebPageProxy::reload): |
| (WebKit::WebPageProxy::goForward): |
| (WebKit::WebPageProxy::goBack): |
| (WebKit::WebPageProxy::goToBackForwardItem): |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| (WebKit::WebPageProxy::restoreFromSessionState): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::generateNavigationID): Deleted. |
| Create navigations directly rather than generating a navigation ID and letting |
| the API level create Navigation. |
| |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::navigationState): |
| Add WebNavigationState member and accessor. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add WebNavigationState.h/cpp |
| |
| 2015-01-09 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Make DumpRenderTree build with public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=140311 |
| |
| Reviewed by Sam Weinig. |
| |
| Add more SPI declarations. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2015-01-09 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Remove or use TimelineAgent Resource related event types |
| https://bugs.webkit.org/show_bug.cgi?id=140155 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: |
| (WebKit::WebResourceLoadScheduler::scheduleLoad): |
| |
| 2015-01-09 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Fix the WebKit2 build with the public SDK |
| |
| Forward declare class WebView. |
| |
| * Platform/spi/ios/UIKitSPI.h: |
| |
| 2015-01-09 Sam Weinig <sam@webkit.org> |
| |
| Make WKNavigation bridged to API::Navigation (Take 2) |
| https://bugs.webkit.org/show_bug.cgi?id=140272 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/API/APIObject.h: |
| Add Navigation. |
| |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::newObject): |
| Bridge to WKNavigation. |
| |
| * UIProcess/API/APINavigation.cpp: Added. |
| (API::Navigation::Navigation): |
| (API::Navigation::~Navigation): |
| * UIProcess/API/APINavigation.h: Added. |
| (API::Navigation::create): |
| (API::Navigation::request): |
| Add initial implementation. |
| |
| * UIProcess/API/Cocoa/WKNavigation.mm: |
| (-[WKNavigation dealloc]): |
| (-[WKNavigation _request]): |
| (-[WKNavigation _apiObject]): |
| * UIProcess/API/Cocoa/WKNavigationInternal.h: |
| (API::wrapper): |
| Implement bridging to API::Navigation and get the request from the underlying object. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView loadRequest:]): |
| (-[WKWebView loadFileURL:allowingReadAccessToURL:]): |
| (-[WKWebView loadData:MIMEType:characterEncodingName:baseURL:]): |
| (-[WKWebView goToBackForwardListItem:]): |
| (-[WKWebView goBack]): |
| (-[WKWebView goForward]): |
| (-[WKWebView reload]): |
| (-[WKWebView reloadFromOrigin]): |
| (-[WKWebView _restoreSessionState:andNavigate:]): |
| * UIProcess/Cocoa/NavigationState.h: |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::NavigationState::createLoadRequestNavigation): |
| (WebKit::NavigationState::createBackForwardNavigation): |
| (WebKit::NavigationState::createReloadNavigation): |
| (WebKit::NavigationState::createLoadDataNavigation): |
| (WebKit::NavigationState::LoaderClient::didStartProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailProvisionalLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didCommitLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishDocumentLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didSameDocumentNavigationForFrame): |
| Switch to storing API::Navigations. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add the new files. |
| |
| 2015-01-09 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| Rename GraphicsLayerAnimation to TextureMapperAnimation |
| https://bugs.webkit.org/show_bug.cgi?id=140296 |
| |
| Reviewed by Martin Robinson. |
| |
| GraphicsLayerAnimation is changed to TextureMapperAnimation |
| * Scripts/webkit/messages.py: |
| (headers_for_type): |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextureMapperAnimation>::encode): |
| (IPC::ArgumentCoder<TextureMapperAnimation>::decode): |
| (IPC::ArgumentCoder<TextureMapperAnimations>::encode): |
| (IPC::ArgumentCoder<TextureMapperAnimations>::decode): |
| (IPC::ArgumentCoder<GraphicsLayerAnimation>::encode): Deleted. |
| (IPC::ArgumentCoder<GraphicsLayerAnimation>::decode): Deleted. |
| (IPC::ArgumentCoder<GraphicsLayerAnimations>::encode): Deleted. |
| (IPC::ArgumentCoder<GraphicsLayerAnimations>::decode): Deleted. |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h: |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: |
| |
| 2015-01-08 Enrica Casucci <enrica@apple.com> |
| |
| [iOS] Cannot paste an image URL in a plain text field in a page. |
| https://bugs.webkit.org/show_bug.cgi?id=140274 |
| rdar://problem/18590809 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| supportedPasteboardTypesForCurrentSelection should include kUTTypeURL for plain |
| text controls and WebArchivePboardType for rich text controls. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView supportedPasteboardTypesForCurrentSelection]): Remove obsolete and |
| incorrect FIXME. |
| |
| 2015-01-09 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r178141. |
| https://bugs.webkit.org/show_bug.cgi?id=140294 |
| |
| Broke multiple API tests (Requested by ap on #webkit). |
| |
| Reverted changeset: |
| |
| "Make WKNavigation bridged to API::Navigation" |
| https://bugs.webkit.org/show_bug.cgi?id=140272 |
| http://trac.webkit.org/changeset/178141 |
| |
| 2015-01-08 Benjamin Poulain <benjamin@webkit.org> |
| |
| [WK2] Start a prototype for declarative site specific extensions |
| https://bugs.webkit.org/show_bug.cgi?id=140160 |
| |
| Reviewed by Andreas Kling. |
| |
| Provide a small SPI for OS X. This will likely move |
| to a better place. |
| |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _loadContentExtensionWithIdentifier:serializedRules:successCompletionHandler:errorCompletionHandler:]): |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::processDidFinishLaunching): |
| (WebKit::WebProcessPool::loadContentExtension): |
| * UIProcess/WebProcessPool.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::loadContentExtension): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2015-01-08 Sam Weinig <sam@webkit.org> |
| |
| Make WKNavigation bridged to API::Navigation |
| https://bugs.webkit.org/show_bug.cgi?id=140272 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/APIObject.h: |
| Add Navigation. |
| |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::newObject): |
| Bridge to WKNavigation. |
| |
| * UIProcess/API/APINavigation.cpp: Added. |
| (API::Navigation::Navigation): |
| (API::Navigation::~Navigation): |
| * UIProcess/API/APINavigation.h: Added. |
| (API::Navigation::create): |
| (API::Navigation::request): |
| Add initial implementation. |
| |
| * UIProcess/API/Cocoa/WKNavigation.mm: |
| (-[WKNavigation dealloc]): |
| (-[WKNavigation _request]): |
| (-[WKNavigation _apiObject]): |
| * UIProcess/API/Cocoa/WKNavigationInternal.h: |
| (API::wrapper): |
| Implement bridging to API::Navigation and get the request from the underlying object. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView loadRequest:]): |
| (-[WKWebView loadFileURL:allowingReadAccessToURL:]): |
| (-[WKWebView loadData:MIMEType:characterEncodingName:baseURL:]): |
| (-[WKWebView goToBackForwardListItem:]): |
| (-[WKWebView goBack]): |
| (-[WKWebView goForward]): |
| (-[WKWebView reload]): |
| (-[WKWebView reloadFromOrigin]): |
| (-[WKWebView _restoreSessionState:andNavigate:]): |
| * UIProcess/Cocoa/NavigationState.h: |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::NavigationState::createLoadRequestNavigation): |
| (WebKit::NavigationState::createBackForwardNavigation): |
| (WebKit::NavigationState::createReloadNavigation): |
| (WebKit::NavigationState::createLoadDataNavigation): |
| (WebKit::NavigationState::LoaderClient::didStartProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailProvisionalLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didCommitLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishDocumentLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFinishLoadForFrame): |
| (WebKit::NavigationState::LoaderClient::didFailLoadWithErrorForFrame): |
| (WebKit::NavigationState::LoaderClient::didSameDocumentNavigationForFrame): |
| Switch to storing API::Navigations. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add the new files. |
| |
| 2015-01-08 Dean Jackson <dino@apple.com> |
| |
| Text not drawn or white-on-white for "Close Page"/"Go Back" button on safe browsing warning page |
| https://bugs.webkit.org/show_bug.cgi?id=140232 |
| |
| Yet another attempt to get the Safari 7/8 build to work. I've moved the |
| stubs back into a place where they can be seen (both definition and implementation). |
| I also removed the previous workaround. |
| |
| * Shared/API/c/WKDeprecatedFunctions.cpp: |
| (WKPreferencesSetApplicationChromeModeEnabled): Deleted. |
| (WKPreferencesGetApplicationChromeModeEnabled): Deleted. |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetApplicationChromeModeEnabled): |
| (WKPreferencesGetApplicationChromeModeEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| |
| 2015-01-08 Dean Jackson <dino@apple.com> |
| |
| Text not drawn or white-on-white for "Close Page"/"Go Back" button on safe browsing warning page |
| https://bugs.webkit.org/show_bug.cgi?id=140232 |
| |
| Unreviewed followup to try to get the Mavericks Safari to build. |
| |
| * Shared/WebPreferencesDefinitions.h: Add the application chrome mode definition. |
| |
| 2015-01-08 Dean Jackson <dino@apple.com> |
| |
| Text not drawn or white-on-white for "Close Page"/"Go Back" button on safe browsing warning page |
| https://bugs.webkit.org/show_bug.cgi?id=140232 |
| <rdar://problem/19371010> |
| |
| Reviewed by Anders Carlsson. |
| |
| Remove the applicationChromeMode setting, but leave stubs in to make |
| sure existing binaries don't break. |
| |
| * Shared/API/c/WKDeprecatedFunctions.cpp: |
| (WKPreferencesSetApplicationChromeModeEnabled): |
| (WKPreferencesGetApplicationChromeModeEnabled): |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetApplicationChromeModeEnabled): Deleted. |
| (WKPreferencesGetApplicationChromeModeEnabled): Deleted. |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorPageGroups::createInspectorPageGroup): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2015-01-08 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [ThreadedCompositor] Update active animations without interrupting the main-thread |
| https://bugs.webkit.org/show_bug.cgi?id=140245 |
| |
| Reviewed by Martin Robinson. |
| |
| In the Threaded Compositor, CoordinatedGraphicsScene can directly |
| request updateViewport to the compositing thread if it has any active |
| animation. |
| |
| To keep current behavior of CoordinatedGraphics, this patch modifies |
| CoordinatedGraphicsScene to remember the constructed thread as a |
| clientRunLoop, and dispatch updateViewport calls to clientRunLoop. |
| |
| No new tests. No change in functionality. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop): |
| (WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): |
| (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext): |
| (WebKit::CoordinatedGraphicsScene::updateViewport): |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: |
| (WebKit::ThreadedCompositor::ThreadedCompositor): |
| (WebKit::ThreadedCompositor::runCompositingThread): |
| |
| 2015-01-08 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [GTK] Seperate updateBackingStore from flushCompositingState. |
| https://bugs.webkit.org/show_bug.cgi?id=136887 |
| |
| Reviewed by Žan Doberšek. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::flushPendingLayerChanges): |
| Modified to call GraphicsLayerTextureMapper::updateBackingStoreIncludingSubLayers |
| |
| 2015-01-07 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [GTK][ThreadedCompositor] Add support for threaded compositor. |
| https://bugs.webkit.org/show_bug.cgi?id=118265 |
| |
| Reviewed by Martin Robinson. |
| |
| This patch introduces a threaded compositor for WebKitGTK+. |
| It is disabled as a default because it is a initial implementation. |
| The threaded compositor can be enabled using --threaded-compositor |
| option at compile time. |
| |
| No new tests, this is an experimental feature. |
| |
| * PlatformGTK.cmake: |
| Adds CoodinatedGraphics and threaded compositor related classes to |
| support threaded compositor |
| |
| * Shared/DrawingAreaInfo.h: |
| Use DrawingAreaImpl for threaded compositor |
| |
| * UIProcess/API/gtk/WebKitSettings.cpp: |
| (_WebKitSettingsPrivate::_WebKitSettingsPrivate): |
| Modified to use forceCompositingMode when the threaded compositor used. |
| If we does not set this mode here, it cannot draw the root content layer. |
| |
| * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp: Added. |
| * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h: Added. |
| (WebKit::ThreadedCoordinatedLayerTreeHost::rootLayer): |
| Implements ThreadedCoordinatedLayerTreeHost to use the threaded |
| compositor. It is basically similar with CoordinatedLayerTreeHost but it uses ThreadedCompositor instead of IPC. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::contentsSizeChanged): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h: |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): |
| (WebKit::DrawingArea::DrawingArea): |
| * WebProcess/WebPage/DrawingArea.h: |
| COORDINATED_GRAPHICS_MULTIPROCESS is introduced to classify IPC specific codes |
| from Coordinated Graphics. |
| And COORDINATED_GRAPHICS_THREADED is used to guard the threaded |
| compositor specific codes. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| Modified to use forceCompositingMode when the threaded compositor used. |
| If we does not set this mode here, it will crash because of PageOverlay. |
| (WebKit::DrawingAreaImpl::mainFrameContentSizeChanged): |
| (WebKit::DrawingAreaImpl::updateBackingStoreState): |
| Modified to handle contents / viewport size changes for threaded compositor. |
| (WebKit::DrawingAreaImpl::attachViewOverlayGraphicsLayer): |
| Added to support Overlay layer in the threaded compositor. |
| (WebKit::DrawingAreaImpl::setNativeSurfaceHandleForCompositing): |
| Push the surface handle for compositing to the threaded compositor. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.h: Use COORDINATED_GRAPIHCS_THREADED to guard the threaded compositor related codes. |
| * WebProcess/WebPage/LayerTreeHost.cpp: Ditto. |
| * WebProcess/WebPage/LayerTreeHost.h: Ditto. |
| * WebProcess/WebPage/WebPage.cpp: Ditto. |
| * WebProcess/WebPage/WebPage.h: Ditto. |
| * WebProcess/WebPage/WebPage.messages.in: Ditto. |
| |
| * WebProcess/gtk/WebProcessMainGtk.cpp: |
| Modified to call XInitThreads to use thread-safe xlib. |
| |
| 2015-01-07 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Make WebKit2 build with public iOS SDK and more build fixes for DRT |
| https://bugs.webkit.org/show_bug.cgi?id=137371 |
| |
| Reviewed by David Kilzer. |
| |
| * Configurations/BaseTarget.xcconfig: Append directory $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks to |
| the list of directories to search for frameworks so that we the linker can find and link against iOS private |
| frameworks (e.g. AssertionServices). |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: |
| (WebKit::NetworkResourceLoader::willCacheResponseAsync): Add PLATFORM(IOS)-guard around call to NetworkDiskCacheMonitor::monitorFileBackingStoreCreation(). |
| * Platform/IPC/mac/ConnectionMac.mm: Add header sys/mman.h. |
| * Platform/spi/ios/BKSProcessAssertionSPI.h: Added. |
| * Platform/spi/ios/CorePDFSPI.h: Added. |
| * Platform/spi/ios/DataDetectorsUISPI.h: Added. |
| * Platform/spi/ios/ManagedConfigurationSPI.h: Added. |
| * Platform/spi/ios/TCCSPI.h: Added. |
| * Platform/spi/ios/TextInputSPI.h: Added. |
| * Platform/spi/ios/UIKitSPI.h: Added. |
| * Shared/Downloads/ios/DownloadIOS.mm: Add USE(CFNETWORK)-guard around CFNetwork-specific code and conditionally |
| include header CFNetwork/CFURLDownload.h. |
| (WebKit::Download::startWithHandle): Ditto. |
| * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm: Include header ServersSPI.h instead |
| of directly including private headers. |
| * Shared/ios/NativeWebTouchEventIOS.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * Shared/mac/SandboxUtilities.cpp: Include header sys/param.h. |
| * UIProcess/API/Cocoa/WKWebView.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: Ditto. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: Ditto. |
| * UIProcess/API/ios/WKViewIOS.mm: Ditto. |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: Include header ServersSPI.h instead of directly including private headers. |
| * UIProcess/ios/PageClientImplIOS.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/ProcessAssertionIOS.mm: Include header BKSProcessAssertionSPI.h instead of directly including private headers. |
| * UIProcess/ios/SmartMagnificationController.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/ViewGestureControllerIOS.mm: Ditto. |
| * UIProcess/ios/WKActionSheet.mm: Ditto. |
| * UIProcess/ios/WKActionSheetAssistant.h: Include header DataDetectorsUISPI.h instead of directly including private headers. |
| * UIProcess/ios/WKActionSheetAssistant.mm: Include headers TCCSPI.h and UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKContentView.mm: Include header UIKitSPI.h instead of directly including private headers. Also, move CALayer SPI |
| forward declarations to QuartzCoreSPI.h |
| * UIProcess/ios/WKContentViewInteraction.h: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKContentViewInteraction.mm: Ditto. Also, include headers CoreGraphicsSPI.h, CoreText/CTFont.h, DataDetectorsUISPI.h, |
| ManagedConfigurationSPI.h, TextInputSPI.h. |
| * UIProcess/ios/WKGeolocationProviderIOSObjCSecurityOrigin.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKPDFPageNumberIndicator.mm: Ditto. |
| * UIProcess/ios/WKPDFView.h: Include header CorePDFSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKPDFView.mm: Ditto. Also, remove header _UIHighlightViewSPI.h and include UIKitSPI.h. |
| * UIProcess/ios/WKScrollView.h: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKSyntheticClickTapGestureRecognizer.h: Ditto. |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: Ditto. |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Ditto. |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: Ditto. |
| * UIProcess/ios/forms/WKFormInputControl.mm: Ditto. |
| * UIProcess/ios/forms/WKFormPopover.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectControl.h: Ditto. |
| * UIProcess/ios/forms/WKFormSelectControl.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectPicker.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectPopover.mm: Ditto. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: Include headers ServersSPI.h and GraphicsServicesSPI.h instead of |
| directly including private headers. Also, ignore deprecated declaration for bootstrap_register2(). |
| * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm: Include header GraphicsServicesSPI.h instead of directly |
| including private headers. |
| * config.h: Moved EXTERN_C_BEGIN and EXTERN_C_END macros from here to file wtf/Compiler.h and renamed them to WTF_EXTERN_C_BEGIN |
| and WTF_EXTERN_C_END, respectively, so that we can make use of them in SPI wrapper headers (e.g. UIKitSPI.h). |
| |
| 2015-01-07 Simon Fraser <simon.fraser@apple.com> |
| |
| Make WebKitAcceleratedDrawingEnabled into a "debug" pref, so that it's read without page group prefixes |
| https://bugs.webkit.org/show_bug.cgi?id=140221 |
| |
| Reviewed by Sam Weinig. |
| |
| Applications should not be toggling WebKitAcceleratedDrawingEnabled; it's really only |
| useful to toggle for debugging, so make it a debug pref. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| |
| 2015-01-07 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r178068. |
| https://bugs.webkit.org/show_bug.cgi?id=140235 |
| |
| Breaks the iOS build (Requested by enrica on #webkit). |
| |
| Reverted changeset: |
| |
| "[iOS] Make WebKit2 build with public iOS SDK and more build |
| fixes for DRT" |
| https://bugs.webkit.org/show_bug.cgi?id=137371 |
| http://trac.webkit.org/changeset/178068 |
| |
| 2015-01-07 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Make WebKit2 build with public iOS SDK and more build fixes for DRT |
| https://bugs.webkit.org/show_bug.cgi?id=137371 |
| |
| Reviewed by David Kilzer. |
| |
| * Configurations/BaseTarget.xcconfig: Append directory $(SDKROOT)$(SYSTEM_LIBRARY_DIR)/PrivateFrameworks to |
| the list of directories to search for frameworks so that we the linker can find and link against iOS private |
| frameworks (e.g. AssertionServices). |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: |
| (WebKit::NetworkResourceLoader::willCacheResponseAsync): Add PLATFORM(IOS)-guard around call to NetworkDiskCacheMonitor::monitorFileBackingStoreCreation(). |
| * Platform/IPC/mac/ConnectionMac.mm: Add header sys/mman.h. |
| * Platform/spi/ios/BKSProcessAssertionSPI.h: Added. |
| * Platform/spi/ios/CorePDFSPI.h: Added. |
| * Platform/spi/ios/DataDetectorsUISPI.h: Added. |
| * Platform/spi/ios/ManagedConfigurationSPI.h: Added. |
| * Platform/spi/ios/TCCSPI.h: Added. |
| * Platform/spi/ios/TextInputSPI.h: Added. |
| * Platform/spi/ios/UIKitSPI.h: Added. |
| * Shared/Downloads/ios/DownloadIOS.mm: Add USE(CFNETWORK)-guard around CFNetwork-specific code and conditionally |
| include header CFNetwork/CFURLDownload.h. |
| (WebKit::Download::startWithHandle): Ditto. |
| * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm: Include header ServersSPI.h instead |
| of directly including private headers. |
| * Shared/ios/NativeWebTouchEventIOS.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * Shared/mac/SandboxUtilities.cpp: Include header sys/param.h. |
| * UIProcess/API/Cocoa/WKWebView.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: Ditto. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: Ditto. |
| * UIProcess/API/ios/WKViewIOS.mm: Ditto. |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: Include header ServersSPI.h instead of directly including private headers. |
| Also, ignore deprecated declaration for bootstrap_register2(). |
| * UIProcess/ios/PageClientImplIOS.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/ProcessAssertionIOS.mm: Include header BKSProcessAssertionSPI.h instead of directly including private headers. |
| * UIProcess/ios/SmartMagnificationController.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/ViewGestureControllerIOS.mm: Ditto. |
| * UIProcess/ios/WKActionSheet.mm: Ditto. |
| * UIProcess/ios/WKActionSheetAssistant.h: Include header DataDetectorsUISPI.h instead of directly including private headers. |
| * UIProcess/ios/WKActionSheetAssistant.mm: Include headers TCCSPI.h and UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKContentView.mm: Include header UIKitSPI.h instead of directly including private headers. Also, move CALayer SPI |
| forward declarations to QuartzCoreSPI.h |
| * UIProcess/ios/WKContentViewInteraction.h: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKContentViewInteraction.mm: Ditto. Also, include headers CoreGraphicsSPI.h, CoreText/CTFont.h, DataDetectorsUISPI.h, |
| ManagedConfigurationSPI.h, TextInputSPI.h. |
| * UIProcess/ios/WKGeolocationProviderIOSObjCSecurityOrigin.mm: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKPDFPageNumberIndicator.mm: Ditto. |
| * UIProcess/ios/WKPDFView.h: Include header CorePDFSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKPDFView.mm: Ditto. Also, remove header _UIHighlightViewSPI.h and include UIKitSPI.h. |
| * UIProcess/ios/WKScrollView.h: Include header UIKitSPI.h instead of directly including private headers. |
| * UIProcess/ios/WKSyntheticClickTapGestureRecognizer.h: Ditto. |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: Ditto. |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Ditto. |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: Ditto. |
| * UIProcess/ios/forms/WKFormInputControl.mm: Ditto. |
| * UIProcess/ios/forms/WKFormPopover.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectControl.h: Ditto. |
| * UIProcess/ios/forms/WKFormSelectControl.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectPicker.mm: Ditto. |
| * UIProcess/ios/forms/WKFormSelectPopover.mm: Ditto. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: Include headers ServersSPI.h and GraphicsServicesSPI.h instead of |
| directly including private headers. |
| * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm: Include header GraphicsServicesSPI.h instead of directly |
| including private headers. |
| * config.h: Moved EXTERN_C_BEGIN and EXTERN_C_END macros from here to file wtf/Compiler.h and renamed them to WTF_EXTERN_C_BEGIN |
| and WTF_EXTERN_C_END, respectively, so that we can make use of them in SPI wrapper headers (e.g. UIKitSPI.h). |
| |
| 2015-01-07 Beth Dakin <bdakin@apple.com> |
| |
| Adopt delegate callbacks so that standardQuickLookMenuItem does not obscure the |
| link |
| https://bugs.webkit.org/show_bug.cgi?id=140206 |
| -and corresponding- |
| rdar://problem/19300492 |
| |
| Reviewed by Tim Horton. |
| |
| Providing and item frame will ensure that the original link is not obscured. |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController menuItem:itemFrameForPoint:]): |
| |
| For now use a max size that is smaller than the WKView, with the screen’s aspect |
| ratio, and scaled down. |
| (-[WKImmediateActionController menuItem:maxSizeForPoint:]): |
| |
| 2015-01-07 Alexey Proskuryakov <ap@apple.com> |
| |
| Release build fix. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| |
| 2015-01-06 Alexey Proskuryakov <ap@apple.com> |
| |
| [Mac] Secondary WebKit processes get re-exec'ed twice when running under ASan |
| https://bugs.webkit.org/show_bug.cgi?id=140175 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::addDYLDEnvironmentAdditions): |
| If the main process is ASanified, add the ASan dynamic library to DYLD_INSERT_LIBRARIES. |
| This avoids an extra re-exec, which is very annoying when debugging. |
| The library is linked in using @rpath, so the only reliable way to find its location |
| is by examining binary images loaded into the current process. |
| |
| 2015-01-07 Zan Dobersek <zdobersek@igalia.com> |
| |
| [TexMap] m_layer member in GraphicsLayerTextureMapper is always non-null |
| https://bugs.webkit.org/show_bug.cgi?id=140135 |
| |
| Reviewed by Darin Adler. |
| |
| GraphicsLayerTextureMapper::layer() now returns a reference, |
| so the call sites are updated. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::initialize): |
| (WebKit::LayerTreeHostGtk::layerFlushTimerFired): |
| (WebKit::LayerTreeHostGtk::compositeLayersToContext): |
| |
| 2015-01-06 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| Remove the remaining uses of OwnPtr in threaded compositor. |
| https://bugs.webkit.org/show_bug.cgi?id=140172 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: |
| (WebKit::ThreadedCompositor::runCompositingThread): |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: |
| |
| 2015-01-06 Timothy Horton <timothy_horton@apple.com> |
| |
| View state change callbacks are sometimes dropped on the floor |
| https://bugs.webkit.org/show_bug.cgi?id=140156 |
| <rdar://problem/19255417> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| Always send SetViewState to the Web process if we have any |
| registered view state change callbacks. Otherwise, if nothing changed, |
| we can end up never calling the callback. |
| |
| 2015-01-06 Timothy Horton <timothy_horton@apple.com> |
| |
| Make explicit which TextIndicator animations are driven manually, and which run automatically |
| https://bugs.webkit.org/show_bug.cgi?id=140113 |
| <rdar://problem/19383425> |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Delete an inaccurate comment. |
| |
| 2015-01-06 Anders Carlsson <andersca@apple.com> |
| |
| Remove now unused IndexedDB code |
| https://bugs.webkit.org/show_bug.cgi?id=140128 |
| |
| Reviewed by Darin Adler. |
| |
| Remove a function. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createIDBFactoryBackend): Deleted. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2015-01-06 Darin Adler <darin@apple.com> |
| |
| Fix race in FindController code |
| https://bugs.webkit.org/show_bug.cgi?id=140114 |
| |
| Reviewed by Anders Carlsson. |
| |
| No idea how to reproduce this. Just ran into the crash in my local testing. |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::findString): Use a RefPtr to guarantee the FindController is |
| not deleted while a this pointer is stored in a function. |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Add a DatabaseProvider subclass in WebKit2 and use it for IndexedDB |
| https://bugs.webkit.org/show_bug.cgi?id=140108 |
| |
| Reviewed by Darin Adler. |
| |
| * CMakeLists.txt: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Databases/WebDatabaseProvider.cpp: Added. |
| (WebKit::databaseProviders): |
| (WebKit::WebDatabaseProvider::getOrCreate): |
| (WebKit::WebDatabaseProvider::WebDatabaseProvider): |
| (WebKit::WebDatabaseProvider::~WebDatabaseProvider): |
| (WebKit::WebDatabaseProvider::createIDBFactoryBackend): |
| * WebProcess/Databases/WebDatabaseProvider.h: Added. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| |
| 2015-01-05 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: inspector view top inset should not include height of web view banners |
| https://bugs.webkit.org/show_bug.cgi?id=140076 |
| |
| Reviewed by Anders Carlsson. |
| |
| Added _totalHeightOfBanners property to WKView, which is used by the WebInspectorProxy |
| to calculate the correct vertical position of the Inspector view frame. The browser is |
| responsible for setting the property value whenever banners are installed or uninstalled from |
| the view. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setTotalHeightOfBanners:]): |
| (-[WKView _totalHeightOfBanners]): |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::inspectedViewFrameDidChange): |
| |
| 2015-01-05 Timothy Horton <timothy_horton@apple.com> |
| |
| Implicitly dismissed DD popovers don't clear immediate action state, prematurely dismissing the next DD highlight |
| https://bugs.webkit.org/show_bug.cgi?id=140088 |
| <rdar://problem/19298391> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _menuItemForDataDetectedText]): |
| Instead of just tearing down the TextIndicator, clear all state. |
| |
| 2015-01-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| One more URTBF after r177917. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: |
| * WebProcess/Battery/WebBatteryManager.h: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: |
| (WebKit::CoordinatedDrawingArea::didReceiveCoordinatedLayerTreeHostMessage): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: |
| * WebProcess/WebPage/LayerTreeHost.h: |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of PassRefPtr from IPC::Connection |
| https://bugs.webkit.org/show_bug.cgi?id=140092 |
| |
| Reviewed by Andreas Kling. |
| |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::DatabaseToWebProcessConnection): |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess): |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::createServerConnection): |
| (IPC::Connection::createClientConnection): |
| (IPC::Connection::Connection): |
| * Platform/IPC/Connection.h: |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::WebProcessConnection): |
| * Shared/ChildProcess.cpp: |
| (WebKit::ChildProcess::initialize): |
| * Shared/ChildProcessProxy.cpp: |
| (WebKit::ChildProcessProxy::didFinishLaunching): |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::didFinishLaunching): |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::WebToDatabaseProcessConnection): |
| * WebProcess/Network/NetworkProcessConnection.cpp: |
| (WebKit::NetworkProcessConnection::NetworkProcessConnection): |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::PluginProcessConnection): |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::createInspectorPage): |
| * WebProcess/WebPage/WebInspectorUI.cpp: |
| (WebKit::WebInspectorUI::establishConnection): |
| |
| 2015-01-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177917. |
| |
| * UIProcess/WebBatteryManagerProxy.h: |
| * UIProcess/WebVibrationProxy.h: |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Clean up Connection::SyncMessageState |
| https://bugs.webkit.org/show_bug.cgi?id=140087 |
| |
| Reviewed by Andreas Kling. |
| |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::SyncMessageState::syncMessageStateMapMutex): |
| Change this to return an std::mutex and use std::call_once to initialize it properly. |
| |
| (IPC::Connection::SyncMessageState::getOrCreate): |
| Return a Ref. |
| |
| (IPC::Connection::SyncMessageState::~SyncMessageState): |
| Use an std::lock_guard. |
| |
| (IPC::Connection::SyncMessageState::processIncomingMessage): |
| Replace a bind call with a lambda. |
| |
| (IPC::Connection::SyncMessageState::dispatchMessages): |
| ConnectionAndIncomingMessage now holds a Ref<Connection>. |
| |
| (IPC::Connection::SyncMessageState::dispatchMessageAndResetDidScheduleDispatchMessagesForConnection): |
| Change Connection to a reference. |
| |
| (IPC::Connection::processIncomingMessage): |
| Change Connection to a reference. |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Clean up the storage manager some more |
| https://bugs.webkit.org/show_bug.cgi?id=140086 |
| |
| Reviewed by Andreas Kling. |
| |
| Use lambdas instead of WTF::bind and get rid of a couple of internal functions. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::createSessionStorageNamespace): |
| (WebKit::StorageManager::destroySessionStorageNamespace): |
| (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection): |
| (WebKit::StorageManager::cloneSessionStorageNamespace): |
| (WebKit::StorageManager::processWillCloseConnection): |
| (WebKit::StorageManager::createSessionStorageNamespaceInternal): Deleted. |
| (WebKit::StorageManager::destroySessionStorageNamespaceInternal): Deleted. |
| (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal): Deleted. |
| (WebKit::StorageManager::cloneSessionStorageNamespaceInternal): Deleted. |
| (WebKit::StorageManager::invalidateConnectionInternal): Deleted. |
| * UIProcess/Storage/StorageManager.h: |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Change more connection pointers to references |
| https://bugs.webkit.org/show_bug.cgi?id=140085 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::StorageArea::addListener): |
| (WebKit::StorageManager::StorageArea::removeListener): |
| (WebKit::StorageManager::createLocalStorageMap): |
| (WebKit::StorageManager::createTransientLocalStorageMap): |
| (WebKit::StorageManager::createSessionStorageMap): |
| (WebKit::StorageManager::destroyStorageMap): |
| (WebKit::StorageManager::getValues): |
| (WebKit::StorageManager::setItem): |
| (WebKit::StorageManager::removeItem): |
| (WebKit::StorageManager::clear): |
| (WebKit::StorageManager::applicationWillTerminate): |
| (WebKit::StorageManager::invalidateConnectionInternal): |
| (WebKit::StorageManager::findStorageArea): |
| * UIProcess/Storage/StorageManager.h: |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Change more of the IPC code to take connections by reference |
| https://bugs.webkit.org/show_bug.cgi?id=140083 |
| |
| Reviewed by Andreas Kling. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::didReceiveMessage): |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::didReceiveMessage): |
| (WebKit::DatabaseToWebProcessConnection::didReceiveSyncMessage): |
| * DatabaseProcess/DatabaseToWebProcessConnection.h: |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::didReceiveMessage): |
| (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage): |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::didReceiveMessage): |
| (WebKit::NetworkProcess::didReceiveSyncMessage): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/NetworkResourceLoader.h: |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::dispatchWorkQueueMessageReceiverMessage): |
| (IPC::Connection::dispatchSyncMessage): |
| (IPC::Connection::dispatchMessage): |
| * Platform/IPC/Connection.h: |
| (IPC::Connection::waitForAndDispatchImmediately): |
| * Platform/IPC/MessageReceiver.h: |
| (IPC::MessageReceiver::didReceiveSyncMessage): |
| * Platform/IPC/MessageReceiverMap.cpp: |
| (IPC::MessageReceiverMap::dispatchMessage): |
| (IPC::MessageReceiverMap::dispatchSyncMessage): |
| * Platform/IPC/MessageReceiverMap.h: |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::didReceiveMessage): |
| * PluginProcess/PluginProcess.h: |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::didReceiveMessage): |
| (WebKit::WebProcessConnection::didReceiveSyncMessage): |
| * PluginProcess/WebProcessConnection.h: |
| * Scripts/webkit/messages.py: |
| (async_message_statement): |
| (sync_message_statement): |
| (generate_message_handler): |
| * Shared/API/Cocoa/RemoteObjectRegistry.h: |
| * Shared/Authentication/AuthenticationManager.h: |
| * Shared/ChildProcessProxy.cpp: |
| (WebKit::ChildProcessProxy::dispatchMessage): |
| (WebKit::ChildProcessProxy::dispatchSyncMessage): |
| * Shared/ChildProcessProxy.h: |
| * Shared/Network/CustomProtocols/CustomProtocolManager.h: |
| * Shared/Plugins/NPObjectMessageReceiver.h: |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| (WebKit::NPRemoteObjectMap::didReceiveSyncMessage): |
| * Shared/Plugins/NPRemoteObjectMap.h: |
| * Shared/WebConnection.h: |
| * Shared/mac/SecItemShim.h: |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::didReceiveMessage): |
| * UIProcess/Databases/DatabaseProcessProxy.h: |
| * UIProcess/Downloads/DownloadProxy.h: |
| * UIProcess/DrawingAreaProxy.h: |
| * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h: |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::didReceiveMessage): |
| (WebKit::NetworkProcessProxy::didReceiveSyncMessage): |
| * UIProcess/Network/NetworkProcessProxy.h: |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Storage/StorageManager.h: |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| * UIProcess/VisitedLinkProvider.h: |
| * UIProcess/WebApplicationCacheManagerProxy.h: |
| * UIProcess/WebCookieManagerProxy.h: |
| * UIProcess/WebDatabaseManagerProxy.h: |
| * UIProcess/WebFullScreenManagerProxy.h: |
| * UIProcess/WebGeolocationManagerProxy.h: |
| * UIProcess/WebIconDatabase.h: |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebMediaCacheManagerProxy.h: |
| * UIProcess/WebOriginDataManagerProxy.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPasteboardProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::dispatchMessage): |
| (WebKit::WebProcessPool::dispatchSyncMessage): |
| * UIProcess/WebProcessPool.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebResourceCacheManagerProxy.h: |
| * UIProcess/ios/SmartMagnificationController.h: |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h: |
| * UIProcess/mac/SecItemShimProxy.h: |
| * UIProcess/mac/ViewGestureController.h: |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.h: |
| * WebProcess/Cookies/WebCookieManager.h: |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h: |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::didReceiveMessage): |
| * WebProcess/Databases/WebToDatabaseProcessConnection.h: |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: |
| (WebKit::WebFullScreenManager::didReceiveMessage): |
| * WebProcess/FullScreen/WebFullScreenManager.h: |
| * WebProcess/Geolocation/WebGeolocationManager.h: |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.h: |
| * WebProcess/MediaCache/WebMediaCacheManager.h: |
| * WebProcess/Network/NetworkProcessConnection.cpp: |
| (WebKit::NetworkProcessConnection::didReceiveMessage): |
| (WebKit::NetworkProcessConnection::didReceiveSyncMessage): |
| * WebProcess/Network/NetworkProcessConnection.h: |
| * WebProcess/Network/WebResourceLoader.h: |
| * WebProcess/Notifications/WebNotificationManager.h: |
| * WebProcess/OriginData/WebOriginDataManager.h: |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::didReceiveMessage): |
| (WebKit::PluginProcessConnection::didReceiveSyncMessage): |
| * WebProcess/Plugins/PluginProcessConnection.h: |
| * WebProcess/Plugins/PluginProcessConnectionManager.h: |
| * WebProcess/Plugins/PluginProxy.h: |
| * WebProcess/ResourceCache/WebResourceCacheManager.h: |
| * WebProcess/Scrolling/RemoteScrollingCoordinator.h: |
| * WebProcess/Storage/StorageAreaMap.h: |
| * WebProcess/UserContent/WebUserContentController.h: |
| * WebProcess/WebCoreSupport/WebDatabaseManager.h: |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/EventDispatcher.h: |
| * WebProcess/WebPage/ViewGestureGeometryCollector.h: |
| * WebProcess/WebPage/ViewUpdateDispatcher.h: |
| * WebProcess/WebPage/VisitedLinkTableController.h: |
| * WebProcess/WebPage/WebInspector.h: |
| * WebProcess/WebPage/WebInspectorUI.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didReceiveMessage): |
| (WebKit::WebPage::didReceiveSyncMessage): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveSyncMessage): |
| (WebKit::WebProcess::didReceiveMessage): |
| * WebProcess/WebProcess.h: |
| * WebProcess/ios/WebVideoFullscreenManager.h: |
| |
| 2015-01-05 Anders Carlsson <andersca@apple.com> |
| |
| Pass IPC::Connection by reference to IPC message handlers |
| https://bugs.webkit.org/show_bug.cgi?id=140082 |
| |
| Reviewed by Darin Adler. |
| |
| * Platform/IPC/HandleMessage.h: |
| (IPC::callMemberFunctionImpl): |
| (IPC::callMemberFunction): |
| (IPC::handleMessage): |
| (IPC::handleMessageDelayed): |
| * Scripts/webkit/messages.py: |
| (async_message_statement): |
| (sync_message_statement): |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::createLocalStorageMap): |
| (WebKit::StorageManager::createTransientLocalStorageMap): |
| (WebKit::StorageManager::createSessionStorageMap): |
| (WebKit::StorageManager::destroyStorageMap): |
| (WebKit::StorageManager::getValues): |
| (WebKit::StorageManager::setItem): |
| (WebKit::StorageManager::removeItem): |
| (WebKit::StorageManager::clear): |
| * UIProcess/Storage/StorageManager.h: |
| * UIProcess/UserContent/WebUserContentControllerProxy.cpp: |
| (WebKit::WebUserContentControllerProxy::didPostMessage): |
| * UIProcess/UserContent/WebUserContentControllerProxy.h: |
| * UIProcess/WebGeolocationManagerProxy.cpp: |
| (WebKit::WebGeolocationManagerProxy::startUpdating): |
| (WebKit::WebGeolocationManagerProxy::stopUpdating): |
| (WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy): |
| * UIProcess/WebGeolocationManagerProxy.h: |
| * UIProcess/WebOriginDataManagerProxy.cpp: |
| (WebKit::WebOriginDataManagerProxy::didGetOrigins): |
| (WebKit::WebOriginDataManagerProxy::didDeleteEntries): |
| (WebKit::WebOriginDataManagerProxy::didDeleteAllEntries): |
| * UIProcess/WebOriginDataManagerProxy.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::handleMessage): |
| (WebKit::WebProcessPool::handleSynchronousMessage): |
| * UIProcess/WebProcessPool.h: |
| * UIProcess/mac/SecItemShimProxy.cpp: |
| (WebKit::SecItemShimProxy::secItemRequest): |
| * UIProcess/mac/SecItemShimProxy.h: |
| |
| 2015-01-04 Anders Carlsson <andersca@apple.com> |
| |
| Clean up some of the IPC code |
| https://bugs.webkit.org/show_bug.cgi?id=140057 |
| |
| Reviewed by Antti Koivisto. |
| |
| Use std::mutex instead of WTF::Mutex. Change a couple of pointers to references in the connection client. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::didClose): |
| (WebKit::DatabaseProcess::didReceiveInvalidMessage): |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/DatabaseToWebProcessConnection.cpp: |
| (WebKit::DatabaseToWebProcessConnection::didClose): |
| (WebKit::DatabaseToWebProcessConnection::didReceiveInvalidMessage): |
| * DatabaseProcess/DatabaseToWebProcessConnection.h: |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::didClose): |
| (WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage): |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::didClose): |
| (WebKit::NetworkProcess::didReceiveInvalidMessage): |
| * NetworkProcess/NetworkProcess.h: |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::sendMessage): |
| (IPC::Connection::waitForMessage): |
| (IPC::Connection::connectionDidClose): |
| (IPC::Connection::sendOutgoingMessages): |
| (IPC::Connection::dispatchDidReceiveInvalidMessage): |
| (IPC::Connection::enqueueIncomingMessage): |
| (IPC::Connection::dispatchMessage): |
| (IPC::Connection::dispatchOneMessage): |
| * Platform/IPC/Connection.h: |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::didClose): |
| (WebKit::PluginProcess::didReceiveInvalidMessage): |
| * PluginProcess/PluginProcess.h: |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::didClose): |
| (WebKit::WebProcessConnection::didReceiveInvalidMessage): |
| * PluginProcess/WebProcessConnection.h: |
| * UIProcess/Databases/DatabaseProcessProxy.cpp: |
| (WebKit::DatabaseProcessProxy::didClose): |
| (WebKit::DatabaseProcessProxy::didReceiveInvalidMessage): |
| * UIProcess/Databases/DatabaseProcessProxy.h: |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::didClose): |
| (WebKit::NetworkProcessProxy::didReceiveInvalidMessage): |
| * UIProcess/Network/NetworkProcessProxy.h: |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::didClose): |
| (WebKit::PluginProcessProxy::didReceiveInvalidMessage): |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didClose): |
| (WebKit::WebProcessProxy::didReceiveInvalidMessage): |
| * UIProcess/WebProcessProxy.h: |
| * WebProcess/Databases/WebToDatabaseProcessConnection.cpp: |
| (WebKit::WebToDatabaseProcessConnection::didClose): |
| (WebKit::WebToDatabaseProcessConnection::didReceiveInvalidMessage): |
| * WebProcess/Databases/WebToDatabaseProcessConnection.h: |
| * WebProcess/Network/NetworkProcessConnection.cpp: |
| (WebKit::NetworkProcessConnection::didClose): |
| (WebKit::NetworkProcessConnection::didReceiveInvalidMessage): |
| * WebProcess/Network/NetworkProcessConnection.h: |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::didClose): |
| (WebKit::PluginProcessConnection::didReceiveInvalidMessage): |
| * WebProcess/Plugins/PluginProcessConnection.h: |
| * WebProcess/WebPage/WebInspector.h: |
| * WebProcess/WebPage/WebInspectorUI.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didClose): |
| (WebKit::WebProcess::didReceiveInvalidMessage): |
| * WebProcess/WebProcess.h: |
| |
| 2015-01-01 Sam Weinig <sam@webkit.org> |
| |
| Remove GroupSettings |
| https://bugs.webkit.org/show_bug.cgi?id=140037 |
| |
| Reviewed by Dan Bernstein. |
| |
| Remove unused databaseDirectoryIdentifier parameters. |
| |
| * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: |
| (WebKit::WebIDBFactoryBackend::WebIDBFactoryBackend): |
| (WebKit::WebIDBFactoryBackend::getDatabaseNames): |
| (WebKit::WebIDBFactoryBackend::deleteDatabase): |
| * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h: |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createIDBFactoryBackend): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2015-01-01 Jeff Miller <jeffm@apple.com> |
| |
| Update user-visible copyright strings to include 2015 |
| https://bugs.webkit.org/show_bug.cgi?id=139880 |
| |
| Reviewed by Darin Adler. |
| |
| * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: |
| * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: |
| * Info.plist: |
| * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: |
| * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: |
| * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist: |
| * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: |
| * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: |
| * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: |
| * mac/Info-WebKit2.plist: |
| |
| 2014-12-31 Sam Weinig <sam@webkit.org> |
| |
| Move scrolling code off of WTF::bind |
| https://bugs.webkit.org/show_bug.cgi?id=140019 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/EventDispatcher.cpp: |
| (WebKit::EventDispatcher::wheelEvent): |
| (WebKit::EventDispatcher::touchEvent): |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::updatePreferences): |
| |
| 2015-01-01 Darin Adler <darin@apple.com> |
| |
| We often misspell identifier as "identifer" |
| https://bugs.webkit.org/show_bug.cgi?id=140025 |
| |
| Reviewed by Michael Saboff. |
| |
| * Shared/WebPageGroupData.cpp: |
| (WebKit::WebPageGroupData::encode): |
| (WebKit::WebPageGroupData::decode): |
| * Shared/WebPageGroupData.h: |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::pageGroupData): |
| (WebKit::WebPageGroup::WebPageGroup): |
| * UIProcess/WebPageGroup.h: |
| (WebKit::WebPageGroup::identifier): |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::createInspectorPage): |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::WebPageGroupProxy): |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| (WebKit::WebPageGroupProxy::identifier): |
| Fix misspellings. |
| |
| 2014-12-31 Yusuke Suzuki <utatane.tea@gmail.com> |
| |
| [GTK] Suppress unused parameter warnings in ui clients |
| https://bugs.webkit.org/show_bug.cgi?id=140012 |
| |
| Drop the parameter name of WebKitUIClient::isPlayingAudioDidChange |
| to suppress warnings. |
| |
| Reviewed by Benjamin Poulain. |
| |
| * UIProcess/API/gtk/WebKitUIClient.cpp: |
| |
| 2014-12-31 Sam Weinig <sam@webkit.org> |
| |
| Remove the remaining uses of OwnPtr from WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=140017 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp: |
| (WebKit::RemoteScrollingCoordinatorTransaction::decode): |
| * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h: |
| (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode): |
| (WebKit::RemoteScrollingCoordinatorTransaction::scrollingStateTree): |
| * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm: |
| * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp: |
| (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::PageClientImpl): |
| * UIProcess/mac/WKFullScreenWindowController.h: |
| * UIProcess/mac/WKPrintingView.mm: |
| (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]): |
| (-[WKPrintingView _askPageToComputePageRects]): |
| (-[WKPrintingView _drawPreview:]): |
| * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm: |
| |
| 2014-12-31 Bartlomiej Gajda <b.gajda@samsung.com> |
| |
| Fix build warnings after r177792. |
| https://bugs.webkit.org/show_bug.cgi?id=140005. |
| |
| Reviewed by Anders Carlsson. |
| |
| Add UNUSED_PARAM(connection) for async messages. |
| |
| * Scripts/webkit/messages.py: |
| (generate_message_handler): |
| |
| 2014-12-31 Zan Dobersek <zdobersek@igalia.com> |
| |
| Unreviewed build fix for the GTK port. |
| |
| Move the ArgumentCodersGtk.h inclusion from WebPageProxy.cpp to |
| WebPageProxy.h. This makes GTK-specific IPC coders available to |
| WebPageProxyMessageReceiver, fixing a build error due to missing |
| ArgumentCoder template specializations for WebCore::DragData type |
| that is used in the GTK-specific StartDrag message. |
| |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| |
| 2014-12-31 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r177824 and r177826. |
| https://bugs.webkit.org/show_bug.cgi?id=140011 |
| |
| The new test crashes (Requested by ap on #webkit). |
| |
| Reverted changesets: |
| |
| "Too large plugins are crashing." |
| https://bugs.webkit.org/show_bug.cgi?id=139856 |
| http://trac.webkit.org/changeset/177824 |
| |
| "Fix bug number typo in the previous commit." |
| http://trac.webkit.org/changeset/177826 |
| |
| 2014-12-30 Gabor Rapcsanyi <rgabor@webkit.org> |
| |
| Too large plugins are crashing. |
| https://bugs.webkit.org/show_bug.cgi?id=139868 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::updateBackingStore): Return false if backingStore cannot be allocated. |
| |
| 2014-12-30 Anders Carlsson <andersca@apple.com> |
| |
| Transient local storage namespaces need to ref their storage areas |
| https://bugs.webkit.org/show_bug.cgi?id=140006 |
| <rdar://problem/19225389> |
| |
| Reviewed by Sam Weinig. |
| |
| We need to keep transient storage areas around even if they have no active connections, |
| so use a RefPtr instead of a raw pointer. This matches what we do for session storage namespaces. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Remove unneeded StorageNamespace functions |
| https://bugs.webkit.org/show_bug.cgi?id=139997 |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::close): Deleted. |
| (WebKit::StorageNamespaceImpl::clearOriginForDeletion): Deleted. |
| (WebKit::StorageNamespaceImpl::clearAllOriginsForDeletion): Deleted. |
| (WebKit::StorageNamespaceImpl::sync): Deleted. |
| (WebKit::StorageNamespaceImpl::closeIdleLocalStorageDatabases): Deleted. |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Move storage code from WebCore to WebKit |
| https://bugs.webkit.org/show_bug.cgi?id=139558 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebProcess.cpp: |
| |
| 2014-12-29 Dan Bernstein <mitz@apple.com> |
| |
| Fixed the iOS build. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Another iOS build fix. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::elementDidFocus): |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Turn on transient local storage support again |
| https://bugs.webkit.org/show_bug.cgi?id=139995 |
| |
| Reviewed by Sam Weinig. |
| |
| Using transient local storage caused weird crashes in the UI process so that change had to |
| be backed out - let's turn it on and see if it still happens. |
| |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: |
| (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace): |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Remove more old coder code gunk. |
| |
| Rubber-stamped by Sam Weinig. |
| |
| * Scripts/webkit/messages.py: |
| (argument_coder_headers_for_type): |
| (handler_function): Deleted. |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the iOS build. |
| |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::startAssistingNode): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::elementDidFocus): |
| |
| 2014-12-29 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177805. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Remove the old user message coder code |
| https://bugs.webkit.org/show_bug.cgi?id=139994 |
| |
| Reviewed by Sam Weinig. |
| |
| * Platform/IPC/HandleMessage.h: |
| (IPC::callMemberFunctionImpl): Deleted. |
| (IPC::callMemberFunction): Deleted. |
| (IPC::handleMessageVariadic): Deleted. |
| * Scripts/webkit/messages.py: |
| (decode_type): |
| (async_message_statement): |
| (sync_message_statement): |
| * Shared/UserMessageCoders.h: Removed. |
| * Shared/mac/ObjCObjectGraphCoders.h: Removed. |
| * Shared/mac/ObjCObjectGraphCoders.mm: Removed. |
| * UIProcess/WebConnectionToWebProcess.cpp: |
| * UIProcess/WebContextUserMessageCoders.h: Removed. |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebProcessPool.cpp: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h: Removed. |
| * WebProcess/WebConnectionToUIProcess.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebPage/WebContextMenu.cpp: |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| * WebProcess/WebProcess.cpp: |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Move WebPasteboardProxy from Shared to UIProcess, where it should have been all along |
| Rubber-stamped by Anders Carlsson. |
| |
| * Shared/WebPasteboardProxy.cpp: Removed. |
| * Shared/WebPasteboardProxy.h: Removed. |
| * Shared/WebPasteboardProxy.messages.in: Removed. |
| * UIProcess/WebPasteboardProxy.cpp: Copied from Shared/WebPasteboardProxy.cpp. |
| * UIProcess/WebPasteboardProxy.h: Copied from Shared/WebPasteboardProxy.h. |
| * UIProcess/WebPasteboardProxy.messages.in: Copied from Shared/WebPasteboardProxy.messages.in. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the iOS build. |
| |
| * Shared/WebPasteboardProxy.h: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Convert injected bundle message posting to UserData |
| https://bugs.webkit.org/show_bug.cgi?id=139993 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): |
| (WebKit::WebProcessPool::postMessageToInjectedBundle): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::handleInjectedBundleMessage): |
| (WebKit::WebProcess::postInjectedBundleMessage): Deleted. |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the iOS build. |
| |
| * Shared/WebPasteboardProxy.h: |
| |
| 2014-12-29 Csaba Osztrogonác <ossy@webkit.org> |
| |
| One more speculative buildfix after r177794. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Try to fix the iOS build. |
| |
| * Shared/WebPasteboardProxy.h: |
| |
| 2014-12-29 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Speculative buildfix after r177793. |
| |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-12-29 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Speculative buildfix after r177794. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Removes some unnecessary use of LegacyReceiver |
| https://bugs.webkit.org/show_bug.cgi?id=139992 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/WebConnection.cpp: |
| (WebKit::WebConnection::didReceiveMessage): Deleted. |
| * Shared/WebConnection.h: |
| * Shared/WebConnection.messages.in: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::didReceiveMessage): Deleted. |
| (WebKit::WebProcessPool::didReceiveSyncMessage): Deleted. |
| * UIProcess/WebProcessPool.h: |
| * UIProcess/WebProcessPool.messages.in: |
| Remove unnecessary use of LegacyReceiver. |
| |
| * UIProcess/WebPageProxy.h: |
| Remove declarations for functions that don't exist. |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Convert all variadic web process messages to UserData |
| https://bugs.webkit.org/show_bug.cgi?id=139991 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::loadRequest): |
| (WebKit::WebPageProxy::loadFile): |
| (WebKit::WebPageProxy::loadData): |
| (WebKit::WebPageProxy::loadHTMLString): |
| (WebKit::WebPageProxy::loadAlternateHTMLString): |
| (WebKit::WebPageProxy::loadPlainTextString): |
| (WebKit::WebPageProxy::loadWebArchiveData): |
| (WebKit::WebPageProxy::postMessageToInjectedBundle): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::loadRequest): |
| (WebKit::WebPage::loadDataImpl): |
| (WebKit::WebPage::loadString): |
| (WebKit::WebPage::loadData): |
| (WebKit::WebPage::loadHTMLString): |
| (WebKit::WebPage::loadAlternateHTMLString): |
| (WebKit::WebPage::loadPlainTextString): |
| (WebKit::WebPage::loadWebArchiveData): |
| (WebKit::WebPage::postInjectedBundleMessage): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Convert all variadic WebProcessProxy message over to UserData |
| https://bugs.webkit.org/show_bug.cgi?id=139990 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::willGoToBackForwardListItem): |
| (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): |
| (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame): |
| (WebKit::WebPageProxy::didFailProvisionalLoadForFrame): |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| (WebKit::WebPageProxy::didFinishDocumentLoadForFrame): |
| (WebKit::WebPageProxy::didFinishLoadForFrame): |
| (WebKit::WebPageProxy::didFailLoadForFrame): |
| (WebKit::WebPageProxy::didSameDocumentNavigationForFrame): |
| (WebKit::WebPageProxy::didReceiveTitleForFrame): |
| (WebKit::WebPageProxy::didFirstLayoutForFrame): |
| (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame): |
| (WebKit::WebPageProxy::didLayout): |
| (WebKit::WebPageProxy::didRemoveFrameFromHierarchy): |
| (WebKit::WebPageProxy::didDisplayInsecureContentForFrame): |
| (WebKit::WebPageProxy::didRunInsecureContentForFrame): |
| (WebKit::WebPageProxy::didDetectXSSForFrame): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForNewWindowAction): |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| (WebKit::WebPageProxy::decidePolicyForResponseSync): |
| (WebKit::WebPageProxy::unableToImplementPolicy): |
| (WebKit::WebPageProxy::willSubmitForm): |
| (WebKit::WebPageProxy::mouseDidMoveOverElement): |
| (WebKit::WebPageProxy::didBeginTrackingPotentialLongMousePress): |
| (WebKit::WebPageProxy::didRecognizeLongMousePress): |
| (WebKit::WebPageProxy::didCancelTrackingPotentialLongMousePress): |
| (WebKit::WebPageProxy::showContextMenu): |
| (WebKit::WebPageProxy::internalShowContextMenu): |
| (WebKit::WebPageProxy::didPerformActionMenuHitTest): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::showSelectionServiceMenu): |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::mouseDidMoveOverElement): |
| (WebKit::WebChromeClient::didBeginTrackingPotentialLongMousePress): |
| (WebKit::WebChromeClient::didRecognizeLongMousePress): |
| (WebKit::WebChromeClient::didCancelTrackingPotentialLongMousePress): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::detachedFromParent2): |
| (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage): |
| (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle): |
| (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFailLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad): |
| (WebKit::WebFrameLoaderClient::dispatchDidLayout): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| (WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy): |
| (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm): |
| (WebKit::WebFrameLoaderClient::shouldGoToHistoryItem): |
| (WebKit::WebFrameLoaderClient::didDisplayInsecureContent): |
| (WebKit::WebFrameLoaderClient::didRunInsecureContent): |
| (WebKit::WebFrameLoaderClient::didDetectXSS): |
| * WebProcess/WebPage/WebContextMenu.cpp: |
| (WebKit::WebContextMenu::show): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| |
| 2014-12-29 Sam Weinig <sam@webkit.org> |
| |
| Move Pasteboard code out of WebProcessPool and into its own singleton class |
| https://bugs.webkit.org/show_bug.cgi?id=139987 |
| |
| Reviewed by Anders Carlsson. |
| |
| * DerivedSources.make: |
| * Shared/WebPasteboardProxy.cpp: Added. |
| (WebKit::WebPasteboardProxy::shared): |
| (WebKit::WebPasteboardProxy::WebPasteboardProxy): |
| (WebKit::WebPasteboardProxy::addWebProcessProxy): |
| * Shared/WebPasteboardProxy.h: Added. |
| * Shared/WebPasteboardProxy.messages.in: Added. |
| * UIProcess/Cocoa/WebPasteboardProxyCocoa.mm: Added. |
| * UIProcess/Cocoa/WebProcessPoolCocoa.mm: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::didReceiveSyncMessage): |
| (WebKit::WebProcessPool::dummy): Deleted. |
| * UIProcess/WebProcessPool.h: |
| * UIProcess/WebProcessPool.messages.in: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Plugins/PDF/PDFPlugin.mm: |
| (WebKit::PDFPlugin::writeItemsToPasteboard): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| |
| 2014-12-29 Anders Carlsson <andersca@apple.com> |
| |
| Use UserData for bundle initialization data |
| https://bugs.webkit.org/show_bug.cgi?id=139989 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::~WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::createNewWebProcess): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-12-28 Anders Carlsson <andersca@apple.com> |
| |
| Use UserData when sending messages to the process pool |
| https://bugs.webkit.org/show_bug.cgi?id=139978 |
| |
| Reviewed by Sam Weinig. |
| |
| * Scripts/webkit/messages.py: |
| (generate_message_handler): |
| Include the connection parameter for legacy receivers as well. |
| |
| * Shared/CoreIPCSupport/WebContextMessageKinds.h: |
| Remove this, it's no longer needed. |
| |
| * UIProcess/WebProcessPool.cpp: |
| (WebKit::WebProcessPool::didReceiveMessage): |
| No need to special case the postMessage message. |
| |
| (WebKit::WebProcessPool::didReceiveSyncMessage): |
| No need to special case the postSynchronousMessageMessage message. |
| |
| (WebKit::WebProcessPool::handleMessage): |
| Convert handles to objects and call didReceiveMessageFromInjectedBundle. |
| |
| (WebKit::WebProcessPool::handleSynchronousMessage): |
| Convert handles to objects, call didReceiveSynchronousMessageFromInjectedBundle, and then |
| convert objects back to handles in the reply. |
| |
| (WebKit::WebProcessPool::didReceiveMessageFromInjectedBundle): Deleted. |
| (WebKit::WebProcessPool::didReceiveSynchronousMessageFromInjectedBundle): Deleted. |
| (WebKit::WebProcessPool::dummy): Deleted. |
| * UIProcess/WebProcessPool.h: |
| Add handleMessage and handleSynchronousMessage message handlers. |
| |
| * UIProcess/WebProcessPool.messages.in: |
| Add new messages. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Remove a now unused file. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::postMessage): |
| Convert objects to handles in the message body and then send the HandleMessage to the UI process. |
| |
| (WebKit::InjectedBundle::postSynchronousMessage): |
| Convert objects to handles in the message body, send the HandleSynchronousMessage message to the UI process, |
| and then convert handles back to objects in the reply. |
| |
| 2014-12-28 Anders Carlsson <andersca@apple.com> |
| |
| Transform nested objects inside arrays |
| https://bugs.webkit.org/show_bug.cgi?id=139976 |
| |
| Reviewed by Oliver Hunt. |
| |
| Call transformGraph on each element so that we'll transform other nested objects correctly. |
| |
| * Shared/UserData.cpp: |
| (WebKit::transformGraph): |
| |
| 2014-12-27 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix after r177765. |
| |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::ObjCObjectGraph::encode): |
| |
| 2014-12-27 Anders Carlsson <andersca@apple.com> |
| |
| Switch WebConnection over to sending objects with UserData |
| https://bugs.webkit.org/show_bug.cgi?id=139967 |
| |
| Reviewed by Oliver Hunt. |
| |
| * Shared/WebConnection.cpp: |
| (WebKit::WebConnection::postMessage): |
| No need to construct the message manually anymore. |
| |
| (WebKit::WebConnection::handleMessage): |
| No need to decode the message manually, just get the object from the UserData message body, |
| convert any handles to objects, and dispatch the message. |
| |
| * Shared/WebConnection.h: |
| Remove now unused members. |
| |
| * Shared/WebConnection.messages.in: |
| Give HandleMessage a proper signature. |
| |
| * UIProcess/WebConnectionToWebProcess.cpp: |
| (WebKit::WebConnectionToWebProcess::transformHandlesToObjects): |
| (WebKit::WebConnectionToWebProcess::transformObjectsToHandles): |
| Call the WebProcessProxy version. |
| |
| (WebKit::WebConnectionToWebProcess::encodeMessageBody): Deleted. |
| (WebKit::WebConnectionToWebProcess::decodeMessageBody): Deleted. |
| |
| * UIProcess/WebConnectionToWebProcess.h: |
| * WebProcess/WebConnectionToUIProcess.cpp: |
| (WebKit::WebConnectionToUIProcess::encodeMessageBody): Deleted. |
| (WebKit::WebConnectionToUIProcess::decodeMessageBody): Deleted. |
| * WebProcess/WebConnectionToUIProcess.h: |
| Delete more unused members. |
| |
| 2014-12-27 Anders Carlsson <andersca@apple.com> |
| |
| Encode and decode WKTypeRefWrapper objects |
| https://bugs.webkit.org/show_bug.cgi?id=139966 |
| |
| Reviewed by Oliver Hunt. |
| |
| * Shared/UserData.cpp: |
| (WebKit::UserData::encode): |
| * Shared/UserData.h: |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::typeFromObject): |
| (WebKit::ObjCObjectGraph::encode): |
| (WebKit::ObjCObjectGraph::decode): |
| |
| 2014-12-27 Anders Carlsson <andersca@apple.com> |
| |
| Implement encoding and decoding of ObjCObjectGraph objects |
| https://bugs.webkit.org/show_bug.cgi?id=139965 |
| |
| Reviewed by Oliver Hunt. |
| |
| * Shared/UserData.cpp: |
| (WebKit::UserData::encode): |
| (WebKit::UserData::decode): |
| * Shared/mac/ObjCObjectGraph.h: |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::typeFromObject): |
| (WebKit::ObjCObjectGraph::encode): |
| (WebKit::ObjCObjectGraph::decode): |
| |
| 2014-12-27 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] WKWebProcessPlugInLoadDelegate uses the deprecated WKRenderingProgressEvents enum |
| https://bugs.webkit.org/show_bug.cgi?id=139964 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/Cocoa/WKRenderingProgressEventsInternal.h: Removed. |
| |
| * Shared/API/Cocoa/_WKRenderingProgressEvents.h: Added. Moved the enum definition from |
| WKWebViewPrivate.h to here. |
| |
| * Shared/API/Cocoa/_WKRenderingProgressEventsInternal.h: Added. |
| (renderingProgressEvents): Moved from NavigationState.mm to here. |
| |
| * UIProcess/API/Cocoa/WKBrowsingContextController.h: Removed observedRenderingProgressEvents |
| property declaration. |
| * UIProcess/API/Cocoa/WKBrowsingContextController.mm: |
| (layoutMilestones): Deleted. |
| (-[WKBrowsingContextController setObservedRenderingProgressEvents:]): Deleted. This is not |
| needed for binary compatibility. |
| (didLayout): Deleted. |
| (setUpPageLoaderClient): Removed setting up didLayout callback. |
| * UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Removed unused delegate method. |
| |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: Import definition of _WKRenderingProgressEvents |
| from new header. |
| |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::renderingProgressEvents): Moved into its own header. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Updated for file additions and removeals, and moved |
| WKRenderingProgressEvents.h into a new Deprecated group. |
| |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Changed the type of |
| a delegate method parameter to _WKRenderingProgressEvents. |
| * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: |
| (didLayout): Pass the new type. |
| |
| 2014-12-26 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Safari build crashes when "zooming into"/choosing a tab from tab view |
| https://bugs.webkit.org/show_bug.cgi?id=139934 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setIgnoresNonWheelEvents:]): |
| Trying to add a nil gesture recognizer raises an exception. Stop assuming that a |
| gesture recognizer is non-nil. |
| |
| 2014-12-26 Anders Carlsson <andersca@apple.com> |
| |
| Handle more types in the UserData encode/decode functions |
| https://bugs.webkit.org/show_bug.cgi?id=139959 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/UserData.cpp: |
| (WebKit::UserData::encode): |
| (WebKit::UserData::decode): |
| |
| 2014-12-26 Anders Carlsson <andersca@apple.com> |
| |
| Move handle encoding functions to their respective implementation files |
| https://bugs.webkit.org/show_bug.cgi?id=139957 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/API/APIFrameHandle.cpp: |
| (API::FrameHandle::encode): |
| (API::FrameHandle::decode): |
| * Shared/API/APIFrameHandle.h: |
| * Shared/API/APIPageGroupHandle.cpp: |
| (API::PageGroupHandle::PageGroupHandle): |
| (API::PageGroupHandle::encode): |
| (API::PageGroupHandle::decode): |
| * Shared/API/APIPageGroupHandle.h: |
| * Shared/API/APIPageHandle.cpp: |
| (API::PageHandle::encode): |
| (API::PageHandle::decode): |
| * Shared/API/APIPageHandle.h: |
| * Shared/UserData.cpp: |
| (WebKit::UserData::encode): |
| (WebKit::UserData::decode): |
| |
| 2014-12-26 Anders Carlsson <andersca@apple.com> |
| |
| Add the notion of auto-converting page and frame handles |
| https://bugs.webkit.org/show_bug.cgi?id=139954 |
| |
| Reviewed by Dan Bernstein. |
| |
| This makes it possible to tell the difference between page and frame handles that |
| should be converted to their respective UI or web process object representations |
| and handles that should stay the same (for the modern API for example). |
| |
| * Shared/API/APIFrameHandle.cpp: |
| (API::FrameHandle::create): |
| (API::FrameHandle::createAutoconverting): |
| (API::FrameHandle::FrameHandle): |
| * Shared/API/APIFrameHandle.h: |
| (API::FrameHandle::isAutoconverting): |
| * Shared/API/APIPageHandle.cpp: |
| (API::PageHandle::create): |
| (API::PageHandle::createAutoconverting): |
| (API::PageHandle::PageHandle): |
| * Shared/API/APIPageHandle.h: |
| (API::PageHandle::isAutoconverting): |
| * Shared/API/Cocoa/_WKFrameHandle.mm: |
| (-[_WKFrameHandle initWithCoder:]): |
| * Shared/UserData.cpp: |
| (WebKit::shouldTransform): |
| * Shared/UserData.h: |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::UIClient::printFrame): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::transformHandlesToObjects): |
| (WebKit::WebProcessProxy::transformObjectsToHandles): |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm: |
| (-[WKWebProcessPlugInFrame handle]): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| |
| 2014-12-26 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] Some modern SPI changes have missing or incorrect availability annotations |
| https://bugs.webkit.org/show_bug.cgi?id=139940 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/API/c/WKDeclarationSpecifiers.h: Renamed WK_DEPRECATED to WK_C_DEPRECATED. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Define WK_DEPRECATED when API availability is not enabled |
| to mean that the declaration is currently deprecated. |
| |
| * Shared/API/c/WKConnectionRef.h: Updated for the renaming of the existing WK_DEPRECATED to |
| WK_C_DEPRECATED. |
| * UIProcess/API/C/WKContext.h: Ditto. |
| * UIProcess/API/C/WKContextConnectionClient.h: Ditto. |
| * UIProcess/API/C/WKContextDownloadClient.h: Ditto. |
| * UIProcess/API/C/WKContextHistoryClient.h: Ditto. |
| * UIProcess/API/C/WKContextInjectedBundleClient.h: Ditto. |
| * UIProcess/API/C/WKCookieManager.h: Ditto. |
| * UIProcess/API/C/WKDatabaseManager.h: Ditto. |
| * UIProcess/API/C/WKGeolocationManager.h: Ditto. |
| * UIProcess/API/C/WKIconDatabase.h: Ditto. |
| * UIProcess/API/C/WKNotificationProvider.h: Ditto. |
| * UIProcess/API/C/WKPageContextMenuClient.h: Ditto. |
| * UIProcess/API/C/WKPageFindClient.h: Ditto. |
| * UIProcess/API/C/WKPageFindMatchesClient.h: Ditto. |
| * UIProcess/API/C/WKPageFormClient.h: Ditto. |
| * UIProcess/API/C/WKPageUIClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundle.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h: Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h: Ditto. |
| |
| * Shared/API/Cocoa/WKRenderingProgressEvents.h: Added missing availability annotation. |
| |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: Changed to use WK_MAC_TBA and WK_IOS_TBA for |
| _WKDebugOverlayRegions enum. Added availability annotations to new properties. |
| |
| * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Added availability annotation to new method. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Annotated new method, changed Mac |
| availability of iOS-only method to NA. |
| |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: Added availability annotation to new enum value, |
| new property, and new method. Added deprecation annotation to one method. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.h: Annotated new method. |
| |
| * mac/rewrite-availability-macros.sh: Rewrite WK_DEPRECATED to NS_DEPRECATED. |
| |
| 2014-12-26 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/19348208> REGRESSION (r177027): iOS builds use the wrong toolchain |
| https://bugs.webkit.org/show_bug.cgi?id=139950 |
| |
| Reviewed by David Kilzer. |
| |
| * Configurations/Base.xcconfig: Only define TOOLCHAINS when building for OS X, doing so |
| in a manner that works with Xcode 5.1.1. |
| |
| 2014-12-25 Hunseop Jeong <hs85.jeong@samsung.com> |
| |
| Fix build warning after r177700 |
| https://bugs.webkit.org/show_bug.cgi?id=139948 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * UIProcess/WebConnectionToWebProcess.cpp: |
| (WebKit::WebConnectionToWebProcess::transformHandlesToObjects): |
| (WebKit::WebConnectionToWebProcess::transformObjectsToHandles): |
| |
| 2014-12-25 Chris Dumez <cdumez@apple.com> |
| |
| [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources |
| https://bugs.webkit.org/show_bug.cgi?id=139921 |
| |
| Reviewed by Gavin Barraclough and Alexey Proskuryakov. |
| |
| Call PageCache::pruneToCapacityNow() instead of multiple calls to |
| setCapacity() as it does exactly what we want. Also pass the new |
| PrunedReason argument so help us do better logging. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::releasePageCache): |
| |
| 2014-12-25 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r177712 and r177717. |
| https://bugs.webkit.org/show_bug.cgi?id=139944 |
| |
| Caused flaky assertion failures (Requested by ap on #webkit). |
| |
| Reverted changesets: |
| |
| "[iOS] Log better using FeatureCounter why PageCache is |
| failing due to pruned resources" |
| https://bugs.webkit.org/show_bug.cgi?id=139921 |
| http://trac.webkit.org/changeset/177712 |
| |
| "Unreviewed, fix build warning after r177712" |
| http://trac.webkit.org/changeset/177717 |
| |
| 2014-12-24 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] WebKit private headers shouldn’t contain “inappropriate” macros |
| https://bugs.webkit.org/show_bug.cgi?id=139942 |
| |
| Reviewed by Darin Adler. |
| |
| * WebKit2.xcodeproj/project.pbxproj: In the Check For Inappropriate Macros in External |
| Headers script build phase, check the PrivateHeaders directory as well. |
| |
| 2014-12-24 Dan Bernstein <mitz@apple.com> |
| |
| Addressed a linker warning about the definition of a method in a category overridng a method from the class. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView(Private) _targetWindowForMovePreparation]): Deleted. This was identical to the |
| definition in the main WKView implementation above. |
| |
| 2014-12-23 ChangSeok Oh <changseok.oh@collabora.com> |
| |
| [GTK] Build fix after r177692 |
| https://bugs.webkit.org/show_bug.cgi?id=139919 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| This change addresses build failures introduced after r177692. |
| |
| * PlatformEfl.cmake: Renamed WebContextSoup to WebProcessPoolSoup.cpp |
| * PlatformGTK.cmake: ditto. |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| * UIProcess/API/gtk/WebKitDownloadClient.cpp: |
| * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp: |
| (webkitFormSubmissionRequestCreate): |
| (webkit_form_submission_request_get_text_fields): |
| * UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h: |
| * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: |
| (didReceiveWebViewMessageFromInjectedBundle): |
| (didReceiveMessageFromInjectedBundle): |
| * UIProcess/API/gtk/WebKitSecurityManager.cpp: |
| (registerSecurityPolicyForURIScheme): |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextConstructed): |
| (webkit_web_context_prefetch_dns): |
| (webkitWebContextGetContext): |
| * UIProcess/API/gtk/WebKitWebContextPrivate.h: |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_get_snapshot): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseCreate): |
| (webkitWebViewBaseCreateWebPage): |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: |
| * UIProcess/API/gtk/WebKitWindowProperties.cpp: |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| * UIProcess/gtk/WebProcessPoolGtk.cpp: Renamed from Source/WebKit2/UIProcess/gtk/WebContextGtk.cpp. |
| (WebKit::initInspectorServer): |
| (WebKit::WebProcessPool::platformDefaultApplicationCacheDirectory): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| (WebKit::WebProcessPool::platformInvalidateContext): |
| (WebKit::WebProcessPool::platformDefaultWebSQLDatabaseDirectory): |
| (WebKit::WebProcessPool::platformDefaultIndexedDBDatabaseDirectory): |
| (WebKit::WebProcessPool::platformDefaultIconDatabasePath): |
| (WebKit::WebProcessPool::platformDefaultLocalStorageDirectory): |
| (WebKit::WebProcessPool::platformDefaultMediaKeysStorageDirectory): |
| (WebKit::WebProcessPool::platformDefaultDiskCacheDirectory): |
| (WebKit::WebProcessPool::platformDefaultCookieStorageDirectory): |
| (WebKit::WebProcessPool::setIgnoreTLSErrors): |
| * UIProcess/soup/WebProcessPoolSoup.cpp: Renamed from Source/WebKit2/UIProcess/soup/WebContextSoup.cpp. |
| (WebKit::WebProcessPool::platformInitializeNetworkProcess): |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp: |
| (webkitWebExtensionDidReceiveMessage): |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp: |
| (didInitiateLoadForResource): |
| (willSendRequestForFrame): |
| (didReceiveResponseForResource): |
| (didReceiveContentLengthForResource): |
| (didFinishLoadForResource): |
| (didFailLoadForResource): |
| (webkitWebPageDidReceiveMessage): |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebPagePrivate.h: |
| |
| 2014-12-23 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix |
| |
| * UIProcess/API/Cocoa/WKProcessGroup.mm: |
| (-[WKProcessGroup _geolocationProvider]): |
| |
| 2014-12-23 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| [EFL][WK2] Fix a lot of build break since r177692 |
| https://bugs.webkit.org/show_bug.cgi?id=139932 |
| |
| Unreviewed EFL build fix. |
| |
| Rename WebContext with WebProcessPool in EFL port files. |
| |
| * CMakeLists.txt: |
| * UIProcess/API/efl/EwkView.cpp: |
| * UIProcess/API/efl/ewk_context.cpp: |
| * UIProcess/API/efl/tests/test_ewk2_context.cpp: |
| (TEST_F): |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::WebView): |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp: |
| (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy): |
| (WebKit::CustomProtocolManagerProxy::startLoading): |
| (WebKit::CustomProtocolManagerProxy::stopLoading): |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp: |
| (WebKit::WebSoupCustomProtocolRequestManager::create): |
| (WebKit::WebSoupCustomProtocolRequestManager::WebSoupCustomProtocolRequestManager): |
| (WebKit::WebSoupCustomProtocolRequestManager::registerSchemeForCustomProtocol): |
| (WebKit::WebSoupCustomProtocolRequestManager::unregisterSchemeForCustomProtocol): |
| (WebKit::WebSoupCustomProtocolRequestManager::didReceiveResponse): |
| (WebKit::WebSoupCustomProtocolRequestManager::didLoadData): |
| (WebKit::WebSoupCustomProtocolRequestManager::didFailWithError): |
| (WebKit::WebSoupCustomProtocolRequestManager::didFinishLoading): |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h: |
| * UIProcess/WebBatteryManagerProxy.cpp: |
| (WebKit::WebBatteryManagerProxy::create): |
| (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy): |
| (WebKit::WebBatteryManagerProxy::providerDidChangeBatteryStatus): |
| (WebKit::WebBatteryManagerProxy::providerUpdateBatteryStatus): |
| * UIProcess/WebBatteryManagerProxy.h: |
| * UIProcess/WebTextChecker.cpp: |
| (WebKit::updateStateForAllContexts): |
| * UIProcess/WebVibrationProxy.cpp: |
| (WebKit::WebVibrationProxy::WebVibrationProxy): |
| (WebKit::WebVibrationProxy::~WebVibrationProxy): |
| * UIProcess/efl/RequestManagerClientEfl.h: |
| * UIProcess/efl/WebContextEfl.cpp: |
| (WebKit::WebProcessPool::platformDefaultApplicationCacheDirectory): |
| (WebKit::WebProcessPool::platformInitializeWebProcess): |
| (WebKit::WebProcessPool::platformInvalidateContext): |
| (WebKit::WebProcessPool::platformDefaultWebSQLDatabaseDirectory): |
| (WebKit::WebProcessPool::platformDefaultIndexedDBDatabaseDirectory): |
| (WebKit::WebProcessPool::platformDefaultIconDatabasePath): |
| (WebKit::WebProcessPool::platformDefaultLocalStorageDirectory): |
| (WebKit::WebProcessPool::platformDefaultMediaKeysStorageDirectory): |
| (WebKit::WebProcessPool::platformDefaultDiskCacheDirectory): |
| (WebKit::WebProcessPool::platformDefaultCookieStorageDirectory): |
| (WebKit::WebProcessPool::setIgnoreTLSErrors): |
| (WebKit::WebContext::platformDefaultApplicationCacheDirectory): Deleted. |
| (WebKit::WebContext::platformInitializeWebProcess): Deleted. |
| (WebKit::WebContext::platformInvalidateContext): Deleted. |
| (WebKit::WebContext::platformDefaultWebSQLDatabaseDirectory): Deleted. |
| (WebKit::WebContext::platformDefaultIndexedDBDatabaseDirectory): Deleted. |
| (WebKit::WebContext::platformDefaultIconDatabasePath): Deleted. |
| (WebKit::WebContext::platformDefaultLocalStorageDirectory): Deleted. |
| (WebKit::WebContext::platformDefaultMediaKeysStorageDirectory): Deleted. |
| (WebKit::WebContext::platformDefaultDiskCacheDirectory): Deleted. |
| (WebKit::WebContext::platformDefaultCookieStorageDirectory): Deleted. |
| (WebKit::WebContext::setIgnoreTLSErrors): Deleted. |
| * UIProcess/efl/WebInspectorProxyEfl.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| * UIProcess/efl/WebViewEfl.cpp: |
| (WebKit::WebView::create): |
| (WebKit::WebViewEfl::WebViewEfl): |
| * UIProcess/efl/WebViewEfl.h: |
| * UIProcess/soup/WebContextSoup.cpp: |
| (WebKit::WebProcessPool::platformInitializeNetworkProcess): |
| (WebKit::WebContext::platformInitializeNetworkProcess): Deleted. |
| * UIProcess/soup/WebCookieManagerProxySoup.cpp: |
| (WebKit::WebCookieManagerProxy::setCookiePersistentStorage): |
| * UIProcess/soup/WebSoupRequestManagerProxy.h: |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| Remove telephone number context support from ContextMenuContextData, it is unused |
| https://bugs.webkit.org/show_bug.cgi?id=139931 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| m_isTelephoneNumberContext was only ever set to true in the ContextMenuContextData |
| constructor that took a TelephoneNumberContextTag, which never got called. Remove it |
| all. |
| |
| * Shared/ContextMenuContextData.cpp: |
| (WebKit::ContextMenuContextData::ContextMenuContextData): |
| (WebKit::ContextMenuContextData::encode): |
| (WebKit::ContextMenuContextData::decode): |
| * Shared/ContextMenuContextData.h: |
| (WebKit::ContextMenuContextData::ContextMenuContextData): |
| (WebKit::ContextMenuContextData::isTelephoneNumberContext): Deleted. |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::showContextMenu): |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| Attempt to fix the Mountain Lion build. |
| |
| * Shared/ContextMenuContextData.h: |
| (WebKit::ContextMenuContextData::isTelephoneNumberContext): |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Handle WKTypeRefWrapper when converting object graphs |
| https://bugs.webkit.org/show_bug.cgi?id=139927 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Cocoa/WebProcessProxyCocoa.mm: |
| (WebKit::WebProcessProxy::transformHandlesToObjects): |
| (WebKit::WebProcessProxy::transformObjectsToHandles): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| |
| 2014-12-23 Chris Dumez <cdumez@apple.com> |
| |
| [iOS] Log better using FeatureCounter why PageCache is failing due to pruned resources |
| https://bugs.webkit.org/show_bug.cgi?id=139921 |
| <rdar://problem/19255690> |
| |
| Reviewed by Gavin Barraclough. |
| |
| Call PageCache::pruneToCapacityNow() instead of multiple calls to |
| setCapacity() as it does exactly what we want. Also pass the new |
| PrunedReason argument so help us do better logging. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::releasePageCache): |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| Attempt to fix the iOS build. |
| |
| * UIProcess/API/Cocoa/WKProcessGroup.mm: |
| (-[WKProcessGroup _geolocationProvider]): |
| * UIProcess/API/ios/WKViewIOS.mm: |
| (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]): |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Handle coding object graphs in the UI process |
| https://bugs.webkit.org/show_bug.cgi?id=139925 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/Cocoa/WebProcessProxyCocoa.mm: Added. |
| (WebKit::WebProcessProxy::transformHandlesToObjects): |
| (WebKit::WebProcessProxy::transformObjectsToHandles): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::transformHandlesToObjects): |
| (WebKit::WebProcessProxy::transformObjectsToHandles): |
| * UIProcess/WebProcessProxy.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::transformObjectsToHandles): |
| * WebProcess/WebProcess.h: |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| ContextMenuContextData should store a ShareableBitmap not a ShareableBitmap::Handle |
| https://bugs.webkit.org/show_bug.cgi?id=139924 |
| |
| Reviewed by Anders Carlsson. |
| |
| Replaces the ShareableBitmap::Handle in ContextMenuContextData with a RefPtr<ShareableBitmap>. |
| Removes the now unnecessary override copy-constructor and assignment-operator. |
| |
| * Shared/ContextMenuContextData.cpp: |
| (WebKit::ContextMenuContextData::ContextMenuContextData): |
| (WebKit::ContextMenuContextData::encode): |
| (WebKit::ContextMenuContextData::decode): |
| (WebKit::ContextMenuContextData::controlledDataIsEditable): |
| (WebKit::ContextMenuContextData::operator=): Deleted. |
| * Shared/ContextMenuContextData.h: |
| (WebKit::ContextMenuContextData::ContextMenuContextData): |
| (WebKit::ContextMenuContextData::controlledImage): |
| (WebKit::ContextMenuContextData::needsServicesMenu): |
| (WebKit::ContextMenuContextData::controlledImageHandle): Deleted. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::internalShowContextMenu): |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::setupServicesMenu): |
| |
| 2014-12-23 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed iOS build fix after 177692. |
| |
| Missing WebKit:: namespace. |
| |
| * UIProcess/ios/WKContentView.h: |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Fix 32-build. |
| |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| |
| 2014-12-23 Timothy Horton <timothy_horton@apple.com> |
| |
| Install a TextIndicator for link immediate actions |
| https://bugs.webkit.org/show_bug.cgi?id=139897 |
| <rdar://problem/19333076> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _defaultAnimationController]): |
| Install the link's TextIndicator. |
| |
| (-[WKImmediateActionController menuItemDidClose:]): |
| Dismiss the TextIndicator and clean up when the item closes. |
| |
| 2014-12-23 Timothy Horton <timothy_horton@apple.com> |
| |
| Expose ElementBoundingBox on WKHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=139895 |
| <rdar://problem/19333075> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/C/WKHitTestResult.cpp: |
| (WKHitTestResultGetElementBoundingBox): |
| * UIProcess/API/C/WKHitTestResult.h: |
| Expose the rect. |
| |
| 2014-12-23 Timothy Horton <timothy_horton@apple.com> |
| |
| Remove the custom web page preview code |
| https://bugs.webkit.org/show_bug.cgi?id=139894 |
| <rdar://problem/19333074> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _dismissContentRelativeChildWindows]): |
| (-[WKView _viewForPreviewingURL:initialFrameSize:]): Deleted. |
| (-[WKView _titleForPreviewOfURL:]): Deleted. |
| (-[WKView _setPreviewTitle:]): Deleted. |
| (-[WKView _setPreviewLoading:]): Deleted. |
| (-[WKView _setPreviewOverrideImage:]): Deleted. |
| (-[WKView _finishPreviewingURL:withPreviewView:]): Deleted. |
| (-[WKView _handleClickInPreviewView:URL:]): Deleted. |
| (-[WKView _shouldUseStandardQuickLookPreview]): Deleted. |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController willDestroyView:]): |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]): |
| (-[WKImmediateActionController _defaultAnimationController]): |
| (-[WKImmediateActionController hidePreview]): Deleted. |
| (-[WKImmediateActionController setPreviewTitle:]): Deleted. |
| (-[WKImmediateActionController setPreviewLoading:]): Deleted. |
| (-[WKImmediateActionController setPreviewOverrideImage:]): Deleted. |
| (-[WKImmediateActionController _animationControllerForCustomPreview]): Deleted. |
| * UIProcess/mac/WKPagePreviewViewController.h: Removed. |
| * UIProcess/mac/WKPagePreviewViewController.mm: Removed. |
| * UIProcess/mac/WKPreviewPopoverAnimationController.h: Removed. |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: Removed. |
| * WebKit2.xcodeproj/project.pbxproj: |
| Remove all of the custom web page preview code. Clients that want the custom |
| preview can implement it by overriding the immediate action. |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Add WebProcessProxy::transformHandlesToObjects |
| https://bugs.webkit.org/show_bug.cgi?id=139922 |
| |
| Reviewed by Tim Horton. |
| |
| This will be used to convert between the handles and their respective UI side objects. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::transformHandlesToObjects): |
| (WebKit::WebProcessProxy::transformObjectsToHandles): |
| (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): Deleted. |
| * UIProcess/WebProcessProxy.h: |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Add handle transform functions to WebConnection |
| https://bugs.webkit.org/show_bug.cgi?id=139920 |
| |
| Reviewed by Sam Weinig. |
| |
| This will be used by the web connection code to convert between objects and their respective handles. |
| |
| * Shared/WebConnection.h: |
| * UIProcess/WebConnectionToWebProcess.cpp: |
| (WebKit::WebConnectionToWebProcess::transformHandlesToObjects): |
| (WebKit::WebConnectionToWebProcess::transformObjectsToHandles): |
| * UIProcess/WebConnectionToWebProcess.h: |
| * WebProcess/WebConnectionToUIProcess.cpp: |
| (WebKit::WebConnectionToUIProcess::transformHandlesToObjects): |
| (WebKit::WebConnectionToUIProcess::transformObjectsToHandles): |
| * WebProcess/WebConnectionToUIProcess.h: |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| Rename ImmutableDictionary to API::Dictionary and merge MutableDictionary into it |
| https://bugs.webkit.org/show_bug.cgi?id=139917 |
| |
| Reviewed by Anders Carlsson. |
| |
| - Renames ImmutableDictionary -> API::Dictionary |
| - Merges MutableDictionary into the new API::Dictionary |
| (as a result WKDictionaryIsMutable() now always returns true) |
| |
| * File list elided * |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Add WebProcess::transformObjectsToHandles |
| https://bugs.webkit.org/show_bug.cgi?id=139918 |
| |
| Reviewed by Tim Horton. |
| |
| This function will be used for transforming bundle objects to their respective handle types |
| when sending messages to the UI process. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| * WebProcess/WebProcess.h: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Move dynamic_objc_cast to RetainPtr.h |
| https://bugs.webkit.org/show_bug.cgi?id=139915 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::dynamic_objc_cast): Deleted. |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Add WebProcess::transformHandlesToObjects |
| https://bugs.webkit.org/show_bug.cgi?id=139913 |
| |
| Reviewed by Tim Horton. |
| |
| Rename objectGraphByTransformingObjectsToHandles to transformObjectsToHandles and add |
| transformHandlesToObjects that will try to convert handles to the actual bundle type objects. |
| |
| * WebProcess/WebProcess.h: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::transformObjectsToHandles): |
| (WebKit::WebProcess::objectGraphByTransformingObjectsToHandles): Deleted. |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Add WebProcess::objectGraphByTransformingObjectsToHandles |
| https://bugs.webkit.org/show_bug.cgi?id=139912 |
| |
| Reviewed by Tim Horton. |
| |
| This will be used to convert Objective-C object graphs containing bundle types to their handle counterparts. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::transformHandlesToObjects): |
| (WebKit::WebProcess::apiObjectByConvertingFromHandles): Deleted. |
| Rename apiObjectByConvertingFromHandles to transformHandlesToObjects. |
| |
| * WebProcess/WebProcess.h: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::objectGraphByTransformingObjectsToHandles): |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Fix UserMessage::transform to only call shouldTransform once |
| https://bugs.webkit.org/show_bug.cgi?id=139911 |
| |
| Reviewed by Sam Weinig. |
| |
| Also, make it possible for transformers to return null objects and change the transformers |
| to return the passed in object when there's no need to do a transform. |
| |
| * Shared/UserData.cpp: |
| (WebKit::transformGraph): |
| (WebKit::UserData::transform): |
| (WebKit::UserData::encode): Deleted. |
| (WebKit::UserData::decode): Deleted. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::apiObjectByConvertingFromHandles): |
| |
| 2014-12-23 Sam Weinig <sam@webkit.org> |
| |
| Rename WebContext to WebProcessPool |
| https://bugs.webkit.org/show_bug.cgi?id=139909 |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| - Major renames: |
| WebContext -> WebProcessPool |
| WebContextConfiguration -> WebProcessPoolConfiguration |
| API::ContextConfiguration -> API::ProcessPoolConfiguration |
| |
| * File list elided * |
| |
| 2014-12-23 Anders Carlsson <andersca@apple.com> |
| |
| Only call shouldTransformGraph once per graph |
| https://bugs.webkit.org/show_bug.cgi?id=139910 |
| |
| Reviewed by Sam Weinig. |
| |
| Don't call shouldTransformGraph for each node in the object graph. Instead, call it once |
| and then transform the entire graph if needed. |
| |
| * Shared/mac/ObjCObjectGraph.h: |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::shouldTransformGraph): |
| (WebKit::transformGraph): |
| (WebKit::ObjCObjectGraph::transform): |
| (WebKit::shouldTransform): Deleted. |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Use a Transformer for UserData as well, to avoid always copying arrays and dictionaries |
| https://bugs.webkit.org/show_bug.cgi?id=139896 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/UserData.cpp: |
| (WebKit::shouldTransform): |
| (WebKit::UserData::transform): |
| * Shared/UserData.h: |
| (WebKit::UserData::Transformer::~Transformer): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::apiObjectByConvertingFromHandles): |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Make it possible to transform Objective-C object graphs, replacing certain elements with others |
| https://bugs.webkit.org/show_bug.cgi?id=139893 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/mac/ObjCObjectGraph.h: |
| (WebKit::ObjCObjectGraph::Transformer::~Transformer): |
| * Shared/mac/ObjCObjectGraph.mm: |
| (WebKit::dynamic_objc_cast): |
| (WebKit::shouldTransform): |
| (WebKit::ObjCObjectGraph::transform): |
| |
| 2014-12-22 Jaehun Lim <ljaehun.lim@samsung.com> |
| |
| Unreviewed build fix after r177661 and r177662 |
| |
| * CMakeLists.txt: Add APIPageGroupHandle.cpp to the source list. |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Convert pages and page groups to their respective handle objects |
| https://bugs.webkit.org/show_bug.cgi?id=139891 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::apiObjectByConvertingFromHandles): |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Add a bunch of missing header includes in preparation for making toImpl require the complete type |
| https://bugs.webkit.org/show_bug.cgi?id=139887 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| |
| 2014-12-22 Chris Dumez <cdumez@apple.com> |
| |
| [iOS] Log using FeatureCounter user-triggered zooming |
| https://bugs.webkit.org/show_bug.cgi?id=139879 |
| <rdar://problem/19329130> |
| |
| Reviewed by Benjamin Poulain. |
| |
| Log using FeatureCounter user-triggered zooming on iOS. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::willStartUserTriggeredZooming): |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Add an API::PageGroupHandle object |
| https://bugs.webkit.org/show_bug.cgi?id=139881 |
| |
| Reviewed by Sam Weinig. |
| |
| API::PageGroupHandle won't be exposed to any API, it will only be used to facilitate passing page groups |
| between the UI and web process inside UserData objects. |
| |
| * Shared/API/APIObject.h: |
| * Shared/API/APIPageGroupHandle.cpp: Added. |
| (API::PageGroupHandle::create): |
| (API::PageGroupHandle::~PageGroupHandle): |
| (API::PageGroupHandle::PageGroupHandle): |
| * Shared/API/APIPageGroupHandle.h: Added. |
| (API::PageGroupHandle::webPageGroupData): |
| * Shared/UserData.cpp: |
| (WebKit::UserData::UserData): |
| (WebKit::UserData::encode): |
| (WebKit::UserData::decode): |
| * Shared/UserData.h: |
| * UIProcess/WebPageGroup.h: |
| (WebKit::WebPageGroup::data): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::apiObjectByConvertingToHandles): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-22 Daniel Bates <dabates@apple.com> |
| |
| Fix the iOS build after <https://trac.webkit.org/changeset/177639> |
| (https://bugs.webkit.org/show_bug.cgi?id=139866) |
| |
| Substitute APISecurityOrigin.h for WebSecurityOrigin.h as the latter was renamed to the former. |
| |
| * UIProcess/ios/WKGeolocationProviderIOS.mm: |
| |
| 2014-12-22 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177649. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-22 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Last URTBF after r177639, GTK builds now. |
| |
| * UIProcess/API/gtk/WebKitJavascriptResult.cpp: |
| * UIProcess/API/gtk/WebKitUIClient.cpp: |
| * UIProcess/API/gtk/WebKitUserContentManager.cpp: |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp: |
| (webkitUserMediaPermissionRequestCreate): |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h: |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewRunJavaScriptCallback): |
| (webkit_web_view_run_javascript): |
| (resourcesStreamReadCallback): |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Move more API classes from Shared to Shared/API. |
| |
| Rubber-stamped by Sam Weinig. |
| |
| * Shared/API/APIArray.cpp: Renamed from Source/WebKit2/Shared/APIArray.cpp. |
| * Shared/API/APIArray.h: Renamed from Source/WebKit2/Shared/APIArray.h. |
| * Shared/API/APIClient.h: Renamed from Source/WebKit2/Shared/APIClient.h. |
| * Shared/API/APIData.cpp: Renamed from Source/WebKit2/Shared/APIData.cpp. |
| * Shared/API/APIData.h: Renamed from Source/WebKit2/Shared/APIData.h. |
| * Shared/API/APIError.cpp: Renamed from Source/WebKit2/Shared/APIError.cpp. |
| * Shared/API/APIError.h: Renamed from Source/WebKit2/Shared/APIError.h. |
| * Shared/API/APIFrameHandle.cpp: Renamed from Source/WebKit2/Shared/APIFrameHandle.cpp. |
| * Shared/API/APIFrameHandle.h: Renamed from Source/WebKit2/Shared/APIFrameHandle.h. |
| * Shared/API/APIGeometry.cpp: Renamed from Source/WebKit2/Shared/APIGeometry.cpp. |
| * Shared/API/APIGeometry.h: Renamed from Source/WebKit2/Shared/APIGeometry.h. |
| * Shared/API/APINumber.h: Renamed from Source/WebKit2/Shared/APINumber.h. |
| * Shared/API/APIObject.cpp: Renamed from Source/WebKit2/Shared/APIObject.cpp. |
| * Shared/API/APIObject.h: Renamed from Source/WebKit2/Shared/APIObject.h. |
| * Shared/API/APIPageHandle.cpp: Renamed from Source/WebKit2/Shared/APIPageHandle.cpp. |
| * Shared/API/APIPageHandle.h: Renamed from Source/WebKit2/Shared/APIPageHandle.h. |
| * Shared/API/APIString.h: Renamed from Source/WebKit2/Shared/APIString.h. |
| * Shared/API/APIURL.h: Renamed from Source/WebKit2/Shared/APIURL.h. |
| * Shared/API/APIURLRequest.cpp: Renamed from Source/WebKit2/Shared/APIURLRequest.cpp. |
| * Shared/API/APIURLRequest.h: Renamed from Source/WebKit2/Shared/APIURLRequest.h. |
| * Shared/API/APIURLResponse.cpp: Renamed from Source/WebKit2/Shared/APIURLResponse.cpp. |
| * Shared/API/APIURLResponse.h: Renamed from Source/WebKit2/Shared/APIURLResponse.h. |
| |
| 2014-12-22 Csaba Osztrogonác <ossy@webkit.org> |
| |
| One more URTBF after r177639 to try to make GTK happy. |
| |
| * UIProcess/API/gtk/WebKitUserContentManager.cpp: |
| |
| 2014-12-22 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177639 to try to make GTK happy. |
| |
| * UIProcess/API/gtk/WebKitJavascriptResult.cpp: |
| |
| 2014-12-22 Anders Carlsson <andersca@apple.com> |
| |
| Rename a bunch of API classes and move them to Shared/API |
| https://bugs.webkit.org/show_bug.cgi?id=139866 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/API/APISecurityOrigin.h: Renamed from Source/WebKit2/Shared/WebSecurityOrigin.h. |
| (API::SecurityOrigin::createFromString): |
| (API::SecurityOrigin::create): |
| (API::SecurityOrigin::securityOrigin): |
| (API::SecurityOrigin::SecurityOrigin): |
| * Shared/API/APISerializedScriptValue.h: Renamed from Source/WebKit2/Shared/WebSerializedScriptValue.h. |
| (API::SerializedScriptValue::create): |
| (API::SerializedScriptValue::adopt): |
| (API::SerializedScriptValue::deserialize): |
| (API::SerializedScriptValue::dataReference): |
| (API::SerializedScriptValue::internalRepresentation): |
| (API::SerializedScriptValue::SerializedScriptValue): |
| * Shared/API/APIUserContentURLPattern.h: Renamed from Source/WebKit2/Shared/WebUserContentURLPattern.h. |
| (API::UserContentURLPattern::create): |
| (API::UserContentURLPattern::host): |
| (API::UserContentURLPattern::scheme): |
| (API::UserContentURLPattern::isValid): |
| (API::UserContentURLPattern::matchesURL): |
| (API::UserContentURLPattern::matchesSubdomains): |
| (API::UserContentURLPattern::patternString): |
| (API::UserContentURLPattern::UserContentURLPattern): |
| * Shared/API/c/WKSecurityOrigin.cpp: |
| (WKSecurityOriginGetTypeID): |
| (WKSecurityOriginCreateFromString): |
| (WKSecurityOriginCreateFromDatabaseIdentifier): |
| (WKSecurityOriginCreate): |
| * Shared/API/c/WKSerializedScriptValue.cpp: |
| (WKSerializedScriptValueGetTypeID): |
| (WKSerializedScriptValueCreate): |
| (WKSerializedScriptValueCreateWithInternalRepresentation): |
| * Shared/API/c/WKSharedAPICast.h: |
| (WebKit::toCopiedAPI): |
| * Shared/API/c/WKUserContentURLPattern.cpp: |
| (WKUserContentURLPatternGetTypeID): |
| (WKUserContentURLPatternCreate): |
| * Shared/SecurityOriginData.cpp: |
| (WebKit::performAPICallbackWithSecurityOriginDataVector): |
| * Shared/UserData.cpp: |
| (WebKit::UserData::encode): |
| (WebKit::UserData::decode): |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::exceededDatabaseQuota): |
| (API::UIClient::decidePolicyForGeolocationPermissionRequest): |
| (API::UIClient::decidePolicyForUserMediaPermissionRequest): |
| (API::UIClient::decidePolicyForNotificationPermissionRequest): |
| * UIProcess/API/C/WKNotification.cpp: |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView evaluateJavaScript:completionHandler:]): |
| * UIProcess/Cocoa/UIDelegate.h: |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::UIClient::exceededDatabaseQuota): |
| * UIProcess/GenericCallback.h: |
| * UIProcess/Notifications/WebNotification.cpp: |
| (WebKit::WebNotification::WebNotification): |
| * UIProcess/Notifications/WebNotification.h: |
| (WebKit::WebNotification::origin): |
| * UIProcess/Notifications/WebNotificationManagerProxy.cpp: |
| (WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy): |
| (WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies): |
| * UIProcess/Notifications/WebNotificationManagerProxy.h: |
| * UIProcess/Notifications/WebNotificationProvider.cpp: |
| * UIProcess/Notifications/WebNotificationProvider.h: |
| * UIProcess/PageClient.h: |
| (WebKit::PageClient::decidePolicyForGeolocationPermissionRequest): |
| * UIProcess/WebApplicationCacheManagerProxy.cpp: |
| (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin): |
| * UIProcess/WebApplicationCacheManagerProxy.h: |
| * UIProcess/WebCookieManagerProxy.cpp: |
| * UIProcess/WebDatabaseManagerProxy.cpp: |
| (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin): |
| (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin): |
| (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin): |
| (WebKit::WebDatabaseManagerProxy::didModifyOrigin): |
| (WebKit::WebDatabaseManagerProxy::didModifyDatabase): |
| * UIProcess/WebDatabaseManagerProxy.h: |
| * UIProcess/WebDatabaseManagerProxyClient.cpp: |
| (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin): |
| (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase): |
| * UIProcess/WebDatabaseManagerProxyClient.h: |
| * UIProcess/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin): |
| (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin): |
| * UIProcess/WebKeyValueStorageManager.h: |
| * UIProcess/WebMediaCacheManagerProxy.cpp: |
| * UIProcess/WebOriginDataManagerProxy.cpp: |
| (WebKit::WebOriginDataManagerProxy::didGetOrigins): |
| (WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin): |
| * UIProcess/WebOriginDataManagerProxy.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): |
| (WebKit::WebPageProxy::scriptValueCallback): |
| (WebKit::WebPageProxy::exceededDatabaseQuota): |
| (WebKit::WebPageProxy::requestGeolocationPermissionForFrame): |
| (WebKit::WebPageProxy::requestUserMediaPermissionForFrame): |
| (WebKit::WebPageProxy::requestNotificationPermission): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin): |
| * UIProcess/WebResourceCacheManagerProxy.h: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest): |
| * UIProcess/ios/WKContentView.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: |
| (API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota): |
| (API::InjectedBundle::PageUIClient::didExceedDatabaseQuota): |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota): |
| (WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota): |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::exceededDatabaseQuota): |
| (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota): |
| |
| 2014-12-21 Sam Weinig <sam@webkit.org> |
| |
| Allow the WebContext's history client to coexist with WKWebView's history delegate |
| https://bugs.webkit.org/show_bug.cgi?id=139857 |
| |
| Reviewed by Anders Carlsson. |
| |
| - Renames API::HistoryClient to API::LegacyContextHistoryClient to make it clear what it is for. |
| - Re-routes the history client functions from the WebProcessProxy to the WebPageProxy. |
| - Add history client functions to API::LoaderClient and implement them for NavigationState's |
| LoaderClient subclass. Removes the need for WKProcessPool to have to setup a history client and |
| forward to the NavigationState. |
| |
| * UIProcess/API/APIHistoryClient.h: Removed. |
| * UIProcess/API/APILegacyContextHistoryClient.h: Copied from Source/WebKit2/UIProcess/API/APIHistoryClient.h. |
| (API::LegacyContextHistoryClient::~LegacyContextHistoryClient): |
| (API::LegacyContextHistoryClient::didNavigateWithNavigationData): |
| (API::LegacyContextHistoryClient::didPerformClientRedirect): |
| (API::LegacyContextHistoryClient::didPerformServerRedirect): |
| (API::LegacyContextHistoryClient::didUpdateHistoryTitle): |
| (API::LegacyContextHistoryClient::populateVisitedLinks): |
| (API::HistoryClient::~HistoryClient): Deleted. |
| (API::HistoryClient::didNavigateWithNavigationData): Deleted. |
| (API::HistoryClient::didPerformClientRedirect): Deleted. |
| (API::HistoryClient::didPerformServerRedirect): Deleted. |
| (API::HistoryClient::didUpdateHistoryTitle): Deleted. |
| (API::HistoryClient::populateVisitedLinks): Deleted. |
| * UIProcess/API/APILoaderClient.h: |
| (API::LoaderClient::didNavigateWithNavigationData): |
| (API::LoaderClient::didPerformClientRedirect): |
| (API::LoaderClient::didPerformServerRedirect): |
| (API::LoaderClient::didUpdateHistoryTitle): |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextSetHistoryClient): |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _initWithConfiguration:]): |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/Cocoa/HistoryClient.h: Removed. |
| * UIProcess/Cocoa/HistoryClient.mm: Removed. |
| * UIProcess/Cocoa/NavigationState.h: |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::NavigationState::LoaderClient::didNavigateWithNavigationData): |
| (WebKit::NavigationState::LoaderClient::didPerformClientRedirect): |
| (WebKit::NavigationState::LoaderClient::didPerformServerRedirect): |
| (WebKit::NavigationState::LoaderClient::didUpdateHistoryTitle): |
| (WebKit::NavigationState::didNavigateWithNavigationData): Deleted. |
| (WebKit::NavigationState::didPerformClientRedirect): Deleted. |
| (WebKit::NavigationState::didPerformServerRedirect): Deleted. |
| (WebKit::NavigationState::didUpdateHistoryTitle): Deleted. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::setHistoryClient): |
| (WebKit::WebContext::populateVisitedLinks): |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::historyClient): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didNavigateWithNavigationData): |
| (WebKit::WebPageProxy::didPerformClientRedirect): |
| (WebKit::WebPageProxy::didPerformServerRedirect): |
| (WebKit::WebPageProxy::didUpdateHistoryTitle): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didNavigateWithNavigationData): Deleted. |
| (WebKit::WebProcessProxy::didPerformClientRedirect): Deleted. |
| (WebKit::WebProcessProxy::didPerformServerRedirect): Deleted. |
| (WebKit::WebProcessProxy::didUpdateHistoryTitle): Deleted. |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::updateGlobalHistory): |
| (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): |
| (WebKit::WebFrameLoaderClient::setTitle): |
| |
| 2014-12-22 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] another outdated comment |
| https://bugs.webkit.org/show_bug.cgi?id=139863 |
| |
| Reviewed by Darin Adler. |
| |
| Remove outdated comment. We nowadays block untrusted connections by |
| default. |
| |
| * WebProcess/gtk/WebProcessMainGtk.cpp: |
| |
| 2014-12-21 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] avoid WebVideoFullscreenManager crash |
| https://bugs.webkit.org/show_bug.cgi?id=139852 |
| <rdar://problem/19319302> |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/ios/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::didExitFullscreen): NULL-check m_layerHostingContext and m_page. |
| (WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): NULL-check m_layerHostingContext. |
| |
| 2014-12-21 David Kilzer <ddkilzer@apple.com> |
| |
| Fix WebKit2 build with newer clang compiler |
| |
| Fixes the following build error: |
| |
| In file included from DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:32: |
| Source/WebKit2/Platform/IPC/HandleMessage.h:16:25: error: non-const lvalue reference to type 'Vector<[3 * ...]>' cannot bind to a temporary of type 'Vector<[3 * ...]>' |
| (object->*function)(std::get<ArgsIndex>(std::forward<ArgsTuple>(args))...); |
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| Source/WebKit2/Platform/IPC/HandleMessage.h:22:5: note: in instantiation of function template specialization 'IPC::callMemberFunctionImpl<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, 0>' requested here |
| callMemberFunctionImpl(object, function, std::forward<ArgsTuple>(args), ArgsIndicies()); |
| ^ |
| Source/WebKit2/Platform/IPC/HandleMessage.h:120:5: note: in instantiation of function template specialization 'IPC::callMemberFunction<WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &), std::__1::tuple<WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> >, std::make_index_sequence<1> >' requested here |
| callMemberFunction(WTF::move(arguments), object, function); |
| ^ |
| DerivedSources/WebKit2/WebVideoFullscreenManagerProxyMessageReceiver.cpp:55:14: note: in instantiation of function template specialization 'IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector, WebKit::WebVideoFullscreenManagerProxy, void (WebKit::WebVideoFullscreenManagerProxy::*)(WTF::Vector<std::__1::pair<double, double>, 0, WTF::CrashOnOverflow> &)>' requested here |
| IPC::handleMessage<Messages::WebVideoFullscreenManagerProxy::SetSeekableRangesVector>(decoder, this, &WebVideoFullscreenManagerProxy::setSeekableRangesVector); |
| ^ |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector): |
| Make Vector<std::pair<double, double>>& argument const because a |
| temporary is not allowed to bind to a non-const reference. |
| |
| 2014-12-20 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] add optimized fullscreen API |
| https://bugs.webkit.org/show_bug.cgi?id=139833 |
| <rdar://problem/18844486> |
| |
| Reviewed by Simon Fraser. |
| |
| * Configurations/FeatureDefines.xcconfig: Add ENABLE_VIDEO_PRESENTATION_MODE. |
| |
| 2014-12-20 David Kilzer <ddkilzer@apple.com> |
| |
| Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2 |
| <http://webkit.org/b/139463> |
| |
| Reviewed by Mark Rowe. |
| |
| * Configurations/All.xcconfig: |
| - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS. |
| * Configurations/Base.xcconfig: |
| - Only set FRAMEWORK_CONTENT_DIRECTORY, GCC_ENABLE_OBJC_GC and |
| TOOLCHAINS on OS X. |
| * Configurations/BaseLegacyProcess.xcconfig: |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/BaseTarget.xcconfig: |
| - Set WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on |
| SDK, and simply them. |
| * Configurations/BaseXPCService.xcconfig: |
| - Set INSTALL_PATH_ACTUAL_Normal based on SDK. |
| * Configurations/DebugRelease.xcconfig: |
| - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X. |
| - Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK. |
| * Configurations/NetworkProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME and CODE_SIGN_ENTITLEMENTS on |
| iOS. |
| * Configurations/NetworkService.Development.xcconfig: |
| - Set INFOPLIST_FILE based on SDK. |
| - Simplify CODE_SIGN_ENTITLEMENTS for iOS. |
| * Configurations/NetworkService.xcconfig: |
| - Set INFOPLIST_FILE based on SDK. |
| - Simplify CODE_SIGN_ENTITLEMENTS for iOS. |
| * Configurations/PluginProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME and SKIP_INSTALL on iOS. |
| * Configurations/PluginProcessShim.xcconfig: |
| - Set OTHER_LDFLAGS based on SDK. |
| * Configurations/PluginService.32.xcconfig: |
| - Only set VALID_ARCHS on OS X. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/PluginService.64.xcconfig: |
| - Set ARCHS based on SDK. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/PluginService.Development.xcconfig: |
| - Only set SKIP_INSTALL on iOS. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/SecItemShim.xcconfig: |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/Version.xcconfig: |
| - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X. |
| * Configurations/WebContentProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME on iOS. |
| - Only set CODE_SIGN_ENTITLEMENTS on iOS Simulator. |
| * Configurations/WebContentService.Development.xcconfig: |
| - Set INFOPLIST_FILE and BUNDLE_LOCALIZATION_KEY based on SDK. |
| - Only set CODE_SIGN_ENTITLEMENTS on iOS hardware. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/WebContentService.xcconfig: Ditto. |
| * Configurations/WebKit.xcconfig: |
| - Set FRAMEWORK_AND_LIBRARY_LDFLAGS, SECTORDER_FLAGS, and |
| WK_API_AVAILABILITY_ENABLED based on SDK. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS. |
| * Configurations/WebKit2.xcconfig: |
| - Set INSTALL_PATH, INSTALL_PATH_ACTUAL, DYLIB_INSTALL_NAME_BASE, |
| NORMAL_WEBKIT2_FRAMEWORKS_DIR, WEBKIT2_FRAMEWORKS_DIR and |
| NORMAL_PRODUCTION_FRAMEWORKS_DIR based on SDK. |
| - Set SKIP_INSTALL on iOS. |
| * Configurations/WebProcessShim.xcconfig: |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| |
| 2014-12-19 Jessie Berlin <jberlin@webkit.org> |
| |
| Build fix. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| |
| 2014-12-19 Jessie Berlin <jberlin@webkit.org> |
| |
| Simplify the build fixes from r177615 and r177617. |
| |
| Rubber-stamped by Dan Bernstein. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| |
| 2014-12-19 Jessie Berlin <jberlin@webkit.org> |
| |
| Another attempt at a speculative build fix. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| |
| 2014-12-19 Jessie Berlin <jberlin@webkit.org> |
| |
| Speculative build fix after r177610. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| |
| 2014-12-19 Chris Dumez <cdumez@apple.com> |
| |
| [iOS] Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate |
| https://bugs.webkit.org/show_bug.cgi?id=139835 |
| <rdar://problem/19312042> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add didEnterFullscreen / didExitFullscreen callbacks to WKUIDelegatePrivate |
| so that they can be implemented in MobileSafari. |
| |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::didEnterFullscreen): |
| (API::UIClient::didExitFullscreen): |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/Cocoa/UIDelegate.h: |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::setDelegate): |
| (WebKit::UIDelegate::UIClient::didEnterFullscreen): |
| (WebKit::UIDelegate::UIClient::didExitFullscreen): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didEnterFullscreen): |
| (WebKit::WebPageProxy::didExitFullscreen): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::didExitFullscreen): |
| (WebKit::WebVideoFullscreenManagerProxy::didEnterFullscreen): |
| |
| 2014-12-19 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Inspector does not reopen correctly after Inspector Process crashes |
| https://bugs.webkit.org/show_bug.cgi?id=139838 |
| |
| Reviewed by Timothy Hatcher. |
| |
| When the WebContentProcess holding the Inspector Frontend crashes, we |
| would properly tear down the inspector objects. However, the next time |
| the inspector is opened, when creating the new page in the Inspector |
| Page Group, a WebPageProxy is created with a Terminated WebProcessProxy. |
| |
| That Terminated WebProcessProxy is automatically replaced with the next |
| load request is given. The newly created process was missing the |
| message listeners and assumed URL access settings that the |
| WebInspectorProxy had set on the old process. |
| |
| So, WebInspectorProxy now listens for and resets the process properties |
| when the inspector process is recreated. |
| |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess): |
| Reset process properties when the process is relaunched. |
| |
| (WebKit::WebInspectorProxy::createInspectorPage): |
| (WebKit::WebInspectorProxy::didClose): |
| Save connection identifier if we need to establish connections later. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (-[WKWebInspectorProxyObjCAdapter didRelaunchProcess]): |
| (-[WKWebInspectorWKView _didRelaunchProcess]): |
| (WebKit::WebInspectorProxy::closeTimerFired): |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| Send WebInspectorProxy a message when the process underlying the |
| WKView is relaunched. |
| |
| 2014-12-19 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of the hardcoded set of structs in the message generation script |
| https://bugs.webkit.org/show_bug.cgi?id=139844 |
| |
| Reviewed by Tim Horton. |
| |
| Instead, make it possible to use 'struct' in front of the type name to declare that the type is a struct. |
| |
| * DatabaseProcess/DatabaseProcess.messages.in: |
| * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in: |
| * NetworkProcess/NetworkProcess.messages.in: |
| * PluginProcess/PluginProcess.messages.in: |
| * PluginProcess/WebProcessConnection.messages.in: |
| * Scripts/webkit/messages.py: |
| (struct_or_class): |
| (forward_declarations_for_namespace): |
| (forward_declarations_and_headers): |
| * Scripts/webkit/model.py: |
| (Parameter.__init__): |
| * Scripts/webkit/parser.py: |
| (parse_parameters_string): |
| * UIProcess/Storage/StorageManager.messages.in: |
| * UIProcess/WebContext.messages.in: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebProcessProxy.messages.in: |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in: |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in: |
| * WebProcess/OriginData/WebOriginDataManager.messages.in: |
| * WebProcess/ResourceCache/WebResourceCacheManager.messages.in: |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2014-12-19 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setIgnoresNonWheelEvents:]): |
| |
| 2014-12-19 Beth Dakin <bdakin@apple.com> |
| |
| Preview popovers don't show an arrow for large links |
| https://bugs.webkit.org/show_bug.cgi?id=139842 |
| -and corresponding- |
| <rdar://problem/19301470> |
| |
| Reviewed by Tim Horton. |
| |
| This patch addresses the case where the link is so large that there is no |
| available space on any side once you factor in screen padding. In that case, we |
| should give up early on not obscuring the link. |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: |
| (-[WKPreviewPopoverAnimationController _targetSizeForPagePreview]): |
| (-[WKPreviewPopoverAnimationController _effectivePaddingWithPreviewPadding:]): |
| (-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnYEdgeForOriginRect:withScreenRect:previewPadding:]): |
| (-[WKPreviewPopoverAnimationController _maxSpaceAvailableOnXEdgeForOriginRect:withScreenRect:previewPadding:]): |
| (-[WKPreviewPopoverAnimationController _preferredPopoverSizeWithPreviewPadding:forTargetSize:]): |
| |
| 2014-12-19 Timothy Horton <timothy_horton@apple.com> |
| |
| WKView's ignoresNonWheelEvents should ignore immediate actions |
| https://bugs.webkit.org/show_bug.cgi?id=139839 |
| <rdar://problem/19312111> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| (-[WKView _setIgnoresNonWheelEvents:]): |
| Install/uninstall the immediate action gesture recognizer when |
| toggling ignoresNonWheelEvents. |
| |
| 2014-12-19 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177593. |
| |
| * PluginProcess/PluginProcess.h: |
| * PluginProcess/unix/PluginProcessUnix.cpp: |
| (WebKit::PluginProcess::platformInitializePluginProcess): |
| * Shared/WebProcessCreationParameters.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| * WebProcess/WebProcess.h: |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-12-19 Anders Carlsson <andersca@apple.com> |
| |
| Use WebCore::MachSendRights for the compositing render server port |
| https://bugs.webkit.org/show_bug.cgi?id=139834 |
| |
| Reviewed by Tim Horton. |
| |
| * Platform/IPC/HandleMessage.h: |
| (IPC::callMemberFunctionImpl): |
| * Platform/mac/LayerHostingContext.h: |
| * Platform/mac/LayerHostingContext.mm: |
| (WebKit::LayerHostingContext::createForPort): |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::PluginProcess): |
| (WebKit::PluginProcess::initializePluginProcess): |
| * PluginProcess/PluginProcess.h: |
| (WebKit::PluginProcess::compositingRenderServerPort): |
| * PluginProcess/mac/PluginControllerProxyMac.mm: |
| (WebKit::PluginControllerProxy::compositingRenderServerPort): |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::PluginProcess::platformInitializePluginProcess): |
| * Shared/Plugins/PluginProcessCreationParameters.cpp: |
| * Shared/Plugins/PluginProcessCreationParameters.h: |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/WebProcessCreationParameters.h: |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (IPC::ArgumentCoder<MachSendRight>::encode): |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::platformInitializePluginProcess): |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::compositingRenderServerPort): |
| (WebKit::NetscapePlugin::setLayerHostingMode): |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::compositingRenderServerPort): |
| * WebProcess/Plugins/PluginView.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::compositingRenderServerPort): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-12-19 Andreas Kling <akling@apple.com> |
| |
| Ref-ify TextIterator API. |
| <https://webkit.org/b/139823> |
| |
| Reviewed by Antti Koivisto. |
| |
| * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm: |
| (-[WKDOMTextIterator currentRange]): |
| |
| 2014-12-19 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r177574. |
| https://bugs.webkit.org/show_bug.cgi?id=139821 |
| |
| "Broke Production builds by installing |
| libWebCoreTestSupport.dylib in the wrong directory" (Requested |
| by ddkilzer on #webkit). |
| |
| Reverted changeset: |
| |
| "Switch from using PLATFORM_NAME to SDK selectors in WebCore, |
| WebInspectorUI, WebKit, WebKit2" |
| https://bugs.webkit.org/show_bug.cgi?id=139463 |
| http://trac.webkit.org/changeset/177574 |
| |
| 2014-12-19 David Kilzer <ddkilzer@apple.com> |
| |
| Switch from using PLATFORM_NAME to SDK selectors in WebCore, WebInspectorUI, WebKit, WebKit2 |
| <http://webkit.org/b/139463> |
| |
| Reviewed by Mark Rowe. |
| |
| * Configurations/All.xcconfig: |
| - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS. |
| * Configurations/Base.xcconfig: |
| - Only set FRAMEWORK_CONTENT_DIRECTORY, GCC_ENABLE_OBJC_GC and |
| TOOLCHAINS on OS X. |
| * Configurations/BaseLegacyProcess.xcconfig: |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/BaseTarget.xcconfig: |
| - Set WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on |
| SDK, and simply them. |
| * Configurations/BaseXPCService.xcconfig: |
| - Set INSTALL_PATH_ACTUAL_Normal based on SDK. |
| * Configurations/DebugRelease.xcconfig: |
| - Only set MACOSX_DEPLOYMENT_TARGET and SDKROOT on OS X. |
| - Set WEBKIT_SYSTEM_INTERFACE_LIBRARY based on SDK. |
| * Configurations/NetworkProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME and CODE_SIGN_ENTITLEMENTS on |
| iOS. |
| * Configurations/NetworkService.Development.xcconfig: |
| - Set INFOPLIST_FILE based on SDK. |
| - Simplify CODE_SIGN_ENTITLEMENTS for iOS. |
| * Configurations/NetworkService.xcconfig: |
| - Set INFOPLIST_FILE based on SDK. |
| - Simplify CODE_SIGN_ENTITLEMENTS for iOS. |
| * Configurations/PluginProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME and SKIP_INSTALL on iOS. |
| * Configurations/PluginProcessShim.xcconfig: |
| - Set OTHER_LDFLAGS based on SDK. |
| * Configurations/PluginService.32.xcconfig: |
| - Only set VALID_ARCHS on OS X. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/PluginService.64.xcconfig: |
| - Set ARCHS based on SDK. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set SKIP_INSTALL on iOS. |
| * Configurations/PluginService.Development.xcconfig: |
| - Only set SKIP_INSTALL on iOS. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/SecItemShim.xcconfig: |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/Version.xcconfig: |
| - Set SYSTEM_VERSION_PREFIX separately for iOS and OS X. |
| * Configurations/WebContentProcess.xcconfig: |
| - Only set EXCLUDED_SHIM_FILE_NAME on iOS. |
| - Only set CODE_SIGN_ENTITLEMENTS on iOS Simulator. |
| * Configurations/WebContentService.Development.xcconfig: |
| - Set INFOPLIST_FILE and BUNDLE_LOCALIZATION_KEY based on SDK. |
| - Only set CODE_SIGN_ENTITLEMENTS on iOS hardware. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| * Configurations/WebContentService.xcconfig: Ditto. |
| * Configurations/WebKit.xcconfig: |
| - Set FRAMEWORK_AND_LIBRARY_LDFLAGS, SECTORDER_FLAGS, and |
| WK_API_AVAILABILITY_ENABLED based on SDK. |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| - Only set EXCLUDED_SOURCE_FILE_NAMES on iOS. |
| * Configurations/WebKit2.xcconfig: |
| - Set INSTALL_PATH, INSTALL_PATH_ACTUAL, DYLIB_INSTALL_NAME_BASE, |
| NORMAL_WEBKIT2_FRAMEWORKS_DIR, WEBKIT2_FRAMEWORKS_DIR and |
| NORMAL_PRODUCTION_FRAMEWORKS_DIR based on SDK. |
| - Set SKIP_INSTALL on iOS. |
| * Configurations/WebProcessShim.xcconfig: |
| - Set OTHER_LDFLAGS based on platform-specific values. |
| |
| 2014-12-18 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| iOS build fix. |
| |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: |
| |
| 2014-12-18 Jessie Berlin <jberlin@webkit.org> |
| |
| Speculative build-fix after r177522. |
| |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: |
| (-[WKPreviewPopoverAnimationController setPreviewOverrideImage:]): |
| |
| 2014-12-18 Andreas Kling <akling@apple.com> |
| |
| Ref-ify various Document-related things. |
| <https://webkit.org/b/139796> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm: |
| (-[WKDOMDocument createTextNode:]): |
| |
| 2014-12-18 Beth Dakin <bdakin@apple.com> |
| |
| Speculative build fix. |
| |
| * UIProcess/ProcessThrottler.h: |
| |
| 2014-12-18 Anders Carlsson <andersca@apple.com> |
| |
| Use MachSendRight in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139800 |
| |
| Reviewed by Tim Horton. |
| |
| * Platform/IPC/ArgumentEncoder.h: |
| (IPC::ArgumentEncoder::encode): |
| (IPC::ArgumentEncoder::operator<<): |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::encode): |
| (WebKit::RemoteLayerBackingStore::decode): |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (IPC::ArgumentCoder<MachSendRight>::encode): |
| (IPC::ArgumentCoder<MachSendRight>::decode): |
| |
| 2014-12-18 Gavin Barraclough <barraclough@apple.com> |
| |
| Remove custom token mechanism from ProcessThrottler |
| https://bugs.webkit.org/show_bug.cgi?id=139744 |
| |
| Reviewed by Geoff Garen. |
| |
| ProcessThrottler implements its own token-based counter mechanism, but should |
| just use RefCounter. |
| |
| * UIProcess/Cocoa/NavigationState.h: |
| - remove std::unique_ptr. |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::NavigationState::didChangeIsLoading): |
| - remove std::make_unique. |
| * UIProcess/GenericCallback.h: |
| (WebKit::CallbackBase::CallbackBase): |
| (WebKit::GenericCallback::create): |
| (WebKit::GenericCallback::GenericCallback): |
| (WebKit::CallbackMap::put): |
| - remove std::unique_ptr. |
| * UIProcess/ProcessThrottler.cpp: |
| (WebKit::ProcessThrottler::ProcessThrottler): |
| (WebKit::m_backgroundCounter): |
| (WebKit::ProcessThrottler::assertionState): |
| (WebKit::ProcessThrottler::updateAssertion): |
| (WebKit::ProcessThrottler::ForegroundActivityToken::ForegroundActivityToken): Deleted. |
| (WebKit::ProcessThrottler::ForegroundActivityToken::~ForegroundActivityToken): Deleted. |
| (WebKit::ProcessThrottler::BackgroundActivityToken::BackgroundActivityToken): Deleted. |
| (WebKit::ProcessThrottler::BackgroundActivityToken::~BackgroundActivityToken): Deleted. |
| - removed old implementation of ForegroundActivityToken/BackgroundActivityToken. |
| * UIProcess/ProcessThrottler.h: |
| (WebKit::ProcessThrottler::foregroundActivityToken): |
| (WebKit::ProcessThrottler::backgroundActivityToken): |
| - added accessors to create activity tokens. |
| (WebKit::ProcessThrottler::weakPtr): Deleted. |
| - removed members replaced by RefCounter types. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::updateActivityToken): |
| (WebKit::WebPageProxy::validateCommand): |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): |
| (WebKit::WebPageProxy::getRenderTreeExternalRepresentation): |
| (WebKit::WebPageProxy::getSourceForFrame): |
| (WebKit::WebPageProxy::getContentsAsString): |
| (WebKit::WebPageProxy::getBytecodeProfile): |
| (WebKit::WebPageProxy::getContentsAsMHTMLData): |
| (WebKit::WebPageProxy::getSelectionOrContentsAsString): |
| (WebKit::WebPageProxy::getSelectionAsWebArchiveData): |
| (WebKit::WebPageProxy::getMainResourceDataOfFrame): |
| (WebKit::WebPageProxy::getResourceDataFromFrame): |
| (WebKit::WebPageProxy::getWebArchiveOfFrame): |
| (WebKit::WebPageProxy::getMarkedRangeAsync): |
| (WebKit::WebPageProxy::getSelectedRangeAsync): |
| (WebKit::WebPageProxy::characterIndexForPointAsync): |
| (WebKit::WebPageProxy::firstRectForCharacterRangeAsync): |
| (WebKit::WebPageProxy::takeSnapshot): |
| (WebKit::WebPageProxy::installViewStateChangeCompletionHandler): |
| - remove std::make_unique. |
| * UIProcess/WebPageProxy.h: |
| - remove std::unique_ptr. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::setIsHoldingLockedFiles): |
| - remove std::make_unique. |
| * UIProcess/WebProcessProxy.h: |
| - remove std::unique_ptr. |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::selectWithGesture): |
| (WebKit::WebPageProxy::updateSelectionWithTouches): |
| (WebKit::WebPageProxy::requestAutocorrectionData): |
| (WebKit::WebPageProxy::applyAutocorrection): |
| (WebKit::WebPageProxy::executeEditCommand): |
| (WebKit::WebPageProxy::selectTextWithGranularityAtPoint): |
| (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection): |
| (WebKit::WebPageProxy::selectPositionAtPoint): |
| (WebKit::WebPageProxy::beginSelectionInDirection): |
| (WebKit::WebPageProxy::updateSelectionWithExtentPoint): |
| (WebKit::WebPageProxy::requestDictationContext): |
| (WebKit::WebPageProxy::requestAutocorrectionContext): |
| (WebKit::WebPageProxy::selectWithTwoTouches): |
| (WebKit::WebPageProxy::moveSelectionByOffset): |
| (WebKit::WebPageProxy::focusNextAssistedNode): |
| - remove std::make_unique. |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::attributedSubstringForCharacterRangeAsync): |
| - remove std::make_unique. |
| |
| 2014-12-18 Gavin Barraclough <barraclough@apple.com> |
| |
| Add strong typing to RefCounter interface, return value as a bool. |
| https://bugs.webkit.org/show_bug.cgi?id=139776 |
| |
| Reviewed by Geoff Garen. |
| |
| Currently all token vended by a RefCounter have the same type - Ref<RefCounter::Count>. |
| This means there is no compile time type checking to prevent mistakes. Update the count() |
| method to token<>(), templated on type used to identify the token being returned. |
| Calls to token<T>() will return a result of type RefCounter::Token<T>. |
| |
| There are a few problems with the fact the counter will return you an exact count of the |
| number of outstanding tokens: |
| - It is desirable to only fire the callback on zero-edge changes; it is more consistent |
| to do so if the value is only readable as a boolean. |
| - It is desirable to provide the value as an argument to the callback, however to make |
| this useful for integer values it is also necessary to indicate the direction of change |
| (0->1 is often interesting where 2->1 is not). |
| - There is a mismatch between the precision of returning a count, and the inherent |
| imprecision of a token based mechanism, where it may be difficult to guarantee |
| absolutely no unnecessary refcount churn, and thus unintentional counter values. |
| |
| Removed PluginProcessManager::m_processSuppressionEnabled. Now the callback only fires on |
| zero-edge transitions we no longer need this to filter changes. |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::PluginProcessManager): |
| - updateProcessSuppressionState -> updateProcessSuppressionDisabled. |
| * UIProcess/Plugins/PluginProcessManager.h: |
| (WebKit::PluginProcessManager::processSuppressionDisabledForPageCount): Deleted. |
| (WebKit::PluginProcessManager::processSuppressionDisabledToken): |
| - processSuppressionDisabledForPageCount -> processSuppressionDisabledToken. |
| (WebKit::PluginProcessManager::processSuppressionEnabled): Deleted. |
| (WebKit::PluginProcessManager::processSuppressionDisabled): |
| - processSuppressionEnabled -> processSuppressionDisabled. |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::didFinishLaunching): |
| - processSuppressionEnabled -> processSuppressionDisabled. |
| * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: |
| (WebKit::PluginProcessManager::updateProcessSuppressionState): Deleted. |
| (WebKit::PluginProcessManager::updateProcessSuppressionDisabled): |
| - updateProcessSuppressionState -> updateProcessSuppressionDisabled |
| * UIProcess/ProcessThrottler.h: |
| - added UserObservablePageToken, ProcessSuppressionDisabledToken types. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::m_processSuppressionDisabledForPageCounter): |
| - lambda now has bool argument. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::userObservablePageCount): |
| (WebKit::WebContext::processSuppressionDisabledForPageCount): |
| - count() -> token<>(), changed return type. |
| * UIProcess/WebPageProxy.h: |
| - changed types of token members. |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::updateProcessSuppressionState): |
| renamed m_pluginProcessManagerProcessSuppressionDisabledCount -> m_pluginProcessManagerProcessSuppressionDisabledToken. |
| |
| 2014-12-18 Timothy Horton <timothy_horton@apple.com> |
| |
| Try to fix some builds. |
| |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: |
| |
| 2014-12-18 Anders Carlsson <andersca@apple.com> |
| |
| Fix build. |
| |
| * UIProcess/API/mac/WKViewInternal.h: |
| |
| 2014-12-18 Chris Dumez <cdumez@apple.com> |
| |
| Add missing availability annotation on @property _featureCounterEnabled |
| https://bugs.webkit.org/show_bug.cgi?id=139794 |
| <rdar://problem/19266254> |
| |
| Rubber-stamped by Dan Bernstein. |
| |
| Follow-up to r177526 adding availability annotation on @property |
| _featureCounterEnabled. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| |
| 2014-12-18 Beth Dakin <bdakin@apple.com> |
| |
| Need to re-enable action menus |
| https://bugs.webkit.org/show_bug.cgi?id=139795 |
| -and corresponding- |
| rdar://problem/19299367 |
| |
| Reviewed by Tim Horton. |
| |
| Re-enable the menus by un-commenting the code to create the menu and controller. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| performActionMenuHitTest already takes a parameter indicating whether the hit test |
| is for an immediate action or not. The callback didPerformActionMenuHitTest needs |
| that information too so that it knows whether to call into the |
| ActionMenuController or the ImmediateActionController. |
| (-[WKView _didPerformActionMenuHitTest:forImmediateAction:userData:]): |
| (-[WKView _didPerformActionMenuHitTest:userData:]): Deleted. |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didPerformActionMenuHitTest): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformActionMenuHitTest): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| |
| 2014-12-18 Chris Dumez <cdumez@apple.com> |
| |
| [WK2] Stop using WKPreferencesPrivate API to toggle FeatureCounter support |
| https://bugs.webkit.org/show_bug.cgi?id=139794 |
| <rdar://problem/19266254> |
| |
| Reviewed by Anders Carlsson. |
| |
| Stop using WKPreferencesPrivate API to toggle FeatureCounter support |
| and use WKWebViewConfigurationPrivate API instead. FeatureCounter is |
| not meant to change state after the view has been created. |
| |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetFeatureCounterEnabled): Deleted. |
| (WKPreferencesGetFeatureCounterEnabled): Deleted. |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _featureCounterEnabled]): Deleted. |
| (-[WKPreferences _setFeatureCounterEnabled:]): Deleted. |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (-[WKWebViewConfiguration _featureCounterEnabled]): |
| (-[WKWebViewConfiguration _setFeatureCounterEnabled:]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| |
| 2014-12-18 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setPreviewOverrideImage:]): |
| |
| 2014-12-18 Timothy Horton <timothy_horton@apple.com> |
| |
| Change page preview loading order, and add a TextIndicator |
| https://bugs.webkit.org/show_bug.cgi?id=139793 |
| <rdar://problem/19288547> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Build a TextIndicator for links. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _dismissContentRelativeChildWindows]): |
| (-[WKView _setPreviewTitle:]): |
| (-[WKView _setPreviewLoading:]): |
| Remove unneeded WK_API_ENABLED #ifs. |
| |
| (-[WKView _setPreviewOverrideImage:]): |
| Add; forward to WKImmediateActionController. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController willDestroyView:]): |
| Shut down the WKPreviewPopoverAnimationController. |
| |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]): |
| Don't build an immediate action item here; we'll always build it in |
| willBeginAnimation, and the one we build here is likely to be wrong. |
| |
| (-[WKImmediateActionController _defaultAnimationController]): |
| (-[WKImmediateActionController hidePreview]): |
| (-[WKImmediateActionController setPreviewTitle:]): |
| (-[WKImmediateActionController setPreviewLoading:]): |
| (-[WKImmediateActionController setPreviewOverrideImage:]): |
| (-[WKImmediateActionController _animationControllerForCustomPreview]): |
| (-[WKImmediateActionController _createPreviewPopoverIfNeededForURL:]): Deleted. |
| (-[WKImmediateActionController popoverWillClose:]): Deleted. |
| (targetSizeFitsInAvailableSpace): Deleted. |
| (-[WKImmediateActionController largestPopoverSize]): Deleted. |
| (-[WKImmediateActionController _preferredPopoverSizeWithPreviewPadding:]): Deleted. |
| (-[WKImmediateActionController pagePreviewViewController:viewForPreviewingURL:initialFrameSize:]): Deleted. |
| (-[WKImmediateActionController pagePreviewViewController:titleForPreviewOfURL:]): Deleted. |
| (-[WKImmediateActionController pagePreviewViewControllerWasClicked:]): Deleted. |
| Move preview popover code to WKPreviewPopoverAnimationController. |
| Install and uninstall the link text indicator when necessary. |
| |
| * UIProcess/mac/WKPagePreviewViewController.h: |
| * UIProcess/mac/WKPagePreviewViewController.mm: |
| (-[WKPagePreviewViewController setLoading:]): |
| (-[WKPagePreviewViewController loadView]): |
| (-[WKPagePreviewViewController replacePreviewWithImage:atSize:]): |
| Allow overriding the preview with a full-view NSImage. |
| Hide the preview view until the loading spinner goes away. |
| |
| * UIProcess/mac/WKPreviewPopoverAnimationController.h: Copied from Source/WebKit2/UIProcess/mac/WKImmediateActionController.h. |
| * UIProcess/mac/WKPreviewPopoverAnimationController.mm: Added. |
| (+[WKPreviewPopoverAnimationController _shouldImmediatelyShowPreview]): |
| (-[WKPreviewPopoverAnimationController initWithURL:view:page:originRect:eventLocationInView:]): |
| (-[WKPreviewPopoverAnimationController close]): |
| (-[WKPreviewPopoverAnimationController setPreviewLoading:]): |
| (-[WKPreviewPopoverAnimationController setPreviewOverrideImage:]): |
| If we have shown the popover, choose a size strictly smaller than |
| its current size. |
| |
| (-[WKPreviewPopoverAnimationController _hidePreview]): |
| (-[WKPreviewPopoverAnimationController setPreviewTitle:]): |
| (-[WKPreviewPopoverAnimationController _createPreviewPopover]): |
| (-[WKPreviewPopoverAnimationController _showPreview]): |
| (targetSizeFitsInAvailableSpace): |
| (-[WKPreviewPopoverAnimationController largestPopoverSize]): |
| (-[WKPreviewPopoverAnimationController _targetSizeForPagePreview]): |
| (-[WKPreviewPopoverAnimationController _preferredPopoverSizeWithPreviewPadding:forTargetSize:]): |
| (-[WKPreviewPopoverAnimationController _previewWatchdogTimerFired:]): |
| (-[WKPreviewPopoverAnimationController recognizerWillBeginAnimation:]): |
| (-[WKPreviewPopoverAnimationController recognizerDidUpdateAnimation:]): |
| (-[WKPreviewPopoverAnimationController recognizerDidCancelAnimation:]): |
| (-[WKPreviewPopoverAnimationController recognizerDidCompleteAnimation:]): |
| (-[WKPreviewPopoverAnimationController recognizerDidDismissAnimation:]): |
| (-[WKPreviewPopoverAnimationController pagePreviewViewController:viewForPreviewingURL:initialFrameSize:]): |
| (-[WKPreviewPopoverAnimationController pagePreviewViewController:titleForPreviewOfURL:]): |
| (-[WKPreviewPopoverAnimationController pagePreviewViewControllerWasClicked:]): |
| (-[WKPreviewPopoverAnimationController popoverWillClose:]): |
| Move code in from WKImmediateActionController. |
| Forward NSImmediateActionAnimationControllerDelegate methods |
| to the popover's animation controller if we've popped it. |
| Pop the popover if we've loaded or 1 second has passed, whichever |
| comes first. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-18 Anders Carlsson <andersca@apple.com> |
| |
| Add a MachSendRight class to WebCore and use it in IOSurface |
| https://bugs.webkit.org/show_bug.cgi?id=139787 |
| |
| Reviewed by Tim Horton. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::encode): |
| |
| 2014-12-18 Daniel Bates <dabates@apple.com> |
| |
| Attempt to fix the iOS build after <http://trac.webkit.org/changeset/177486> |
| (https://bugs.webkit.org/show_bug.cgi?id=139755) |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::selectWithGesture): Wrap return value of Range::create() in RefPtr<Range>() |
| to make the the compiler happy since it wants clauses of the ternary operator to have the same data type |
| and Ref<Range> object does not support nullptr. |
| (WebKit::WebPage::selectWordBackward): Substitute Ref::ptr() for PassRefPtr::get(). |
| (WebKit::WebPage::moveSelectionByOffset): Ditto. |
| (WebKit::WebPage::selectPositionAtPoint): Ditto. |
| (WebKit::WebPage::selectPositionAtBoundaryWithDirection): Ditto. |
| (WebKit::WebPage::requestDictationContext): Ditto. |
| (WebKit::computeAutocorrectionContext): Ditto. |
| |
| 2014-12-18 Antti Koivisto <antti@apple.com> |
| |
| Remove alwaysUseBaselineOfPrimaryFont setting |
| https://bugs.webkit.org/show_bug.cgi?id=139770 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2014-12-18 Adrian Perez de Castro <aperez@igalia.com> |
| |
| [GTK] Implement webkit_web_view_is_playing_audio() |
| https://bugs.webkit.org/show_bug.cgi?id=138918 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Implements webkit_web_view_is_playing_audio(), and overrides |
| UIClient::isPlayingAudioDidChange() to be able to emit change |
| notification signals for the new WebKitWebView::is-playing-audio |
| property. |
| |
| * UIProcess/API/gtk/WebKitUIClient.cpp: |
| (isPlayingAudioDidChange): Added. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewIsPlayingAudioChanged): Helper function to emit the |
| emit the notify::is-playing-audio signal when needed. |
| (webkitWebViewGetProperty): Handle the WebKitWebView::is-playing-audio |
| property. |
| (webkit_web_view_class_init): Install the |
| WebKitWebView::is-playing-audio property. |
| (webkit_web_view_is_playing_audio): Added. |
| * UIProcess/API/gtk/WebKitWebView.h: |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add |
| webkit_web_view_is_playing_audio() to the list of public API |
| functions. |
| |
| 2014-12-18 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Allow to build with ENABLE_NETWORK_CACHE |
| https://bugs.webkit.org/show_bug.cgi?id=139728 |
| |
| Reviewed by Antti Koivisto. |
| |
| Just make it build for now. |
| |
| * CMakeLists.txt: Add new files to compilation. |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): Use |
| ENABLE(SHAREABLE_RESOURCE) when ShareableResource is used. |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::decodeStorageEntry): Ditto. |
| (WebKit::makeCacheKey): Use ENABLE(CACHE_PARTITIONING) for ResourceRequest::cachePartition(). |
| * NetworkProcess/cache/NetworkCache.h: |
| * NetworkProcess/cache/NetworkCacheStorage.h: |
| (WebKit::NetworkCacheStorage::Data::isNull): Move implementation |
| to platform specific files. |
| * NetworkProcess/cache/NetworkCacheStorageCocoa.mm: |
| (WebKit::NetworkCacheStorage::Data::isNull): Moved from the header. |
| * NetworkProcess/cache/NetworkCacheStorageSoup.cpp: Added. |
| (WebKit::NetworkCacheStorage::Data::Data): |
| (WebKit::NetworkCacheStorage::Data::data): |
| (WebKit::NetworkCacheStorage::Data::isNull): |
| (WebKit::NetworkCacheStorage::open): |
| (WebKit::NetworkCacheStorage::NetworkCacheStorage): |
| (WebKit::NetworkCacheStorage::initializeKeyFilter): |
| (WebKit::NetworkCacheStorage::removeEntry): |
| (WebKit::NetworkCacheStorage::dispatchRetrieveOperation): |
| (WebKit::NetworkCacheStorage::dispatchPendingRetrieveOperations): |
| (WebKit::NetworkCacheStorage::retrieve): |
| (WebKit::NetworkCacheStorage::store): |
| (WebKit::NetworkCacheStorage::setMaximumSize): |
| (WebKit::NetworkCacheStorage::clear): |
| * PlatformGTK.cmake: Add NetworkCacheStorageSoup.cpp. |
| * config.h: |
| |
| 2014-12-17 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/19282508> WebKitLegacy is unusable due to bad dylib identifier |
| https://bugs.webkit.org/show_bug.cgi?id=139760 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Configurations/WebKit2.xcconfig: |
| |
| 2014-12-17 Beth Dakin <bdakin@apple.com> |
| |
| Page previews are sometimes sized much smaller than it seems they should be |
| https://bugs.webkit.org/show_bug.cgi?id=139754 |
| -and corresponding- |
| rdar://problem/19286550 |
| |
| Reviewed by Tim Horton. |
| |
| Increase the minimum size and add in a missing else!! |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _preferredPopoverSizeWithPreviewPadding:]): |
| |
| 2014-12-17 Anders Carlsson <andersca@apple.com> |
| |
| Ref-ify WebPageProxy and WebProcessProxy creation functions |
| https://bugs.webkit.org/show_bug.cgi?id=139751 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::createNewWebProcess): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::create): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::create): |
| (WebKit::WebProcessProxy::createWebPage): |
| * UIProcess/WebProcessProxy.h: |
| |
| 2014-12-17 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Unreviewed iOS Build Fix after r177459. |
| |
| * UIProcess/ios/WebInspectorProxyIOS.mm: |
| (WebKit::WebInspectorProxy::platformInvalidate): |
| (WebKit::WebInspectorProxy::platformHide): |
| Add missing WebInspectorProxy platform methods. |
| |
| 2014-12-17 Enrica Casucci <enrica@apple.com> |
| |
| [iOS] Define button and action should respect profile settings. |
| https://bugs.webkit.org/show_bug.cgi?id=139739 |
| rdar://problem/15461887 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView canPerformAction:withSender:]): |
| (-[WKContentView _define:]): |
| |
| 2014-12-17 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: [Mac] Occosional Crashes Closing Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=139740 |
| |
| Reviewed by Timothy Hatcher. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveEvent): |
| The WebPageProxy could have gotten destroyed in handling (e.g. keyboard shortcut |
| to close the Inspector Window), so protect the object to avoid destruction |
| during handling. |
| |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebPageProxy.cpp: |
| Add platformInvalidate opportunity for the platform to do invalidation work. |
| |
| * UIProcess/efl/WebInspectorProxyEfl.cpp: |
| (WebKit::WebInspectorProxy::platformInvalidate): |
| * UIProcess/gtk/WebInspectorProxyGtk.cpp: |
| (WebKit::WebInspectorProxy::platformInvalidate): |
| Empty implementations, these ports do not need to do anything. |
| |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::closeTimerFired): |
| (WebKit::WebInspectorProxy::platformDidClose): |
| (WebKit::WebInspectorProxy::platformInvalidate): |
| When closing / invalidating make sure we close the WKView to clear client |
| for any delayed callbacks. |
| |
| 2014-12-17 Chris Dumez <cdumez@apple.com> |
| |
| [iOS] Make it possible to toggle FeatureCounter support at runtime |
| https://bugs.webkit.org/show_bug.cgi?id=139688 |
| <rdar://problem/19266254> |
| |
| Reviewed by Andreas Kling. |
| |
| Add private settings API to toggle FeatureCounter support on Safari and |
| MobileSafari. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetFeatureCounterEnabled): |
| (WKPreferencesGetFeatureCounterEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _featureCounterEnabled]): |
| (-[WKPreferences _setFeatureCounterEnabled:]): |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2014-12-17 Anders Carlsson <andersca@apple.com> |
| |
| Clean up SQL statement building in SQLiteIDBCursor |
| https://bugs.webkit.org/show_bug.cgi?id=139741 |
| |
| Reviewed by Andreas Kling. |
| |
| This vastly simplifies the code and gets rid of the last |
| uses of DEPRECATED_DEFINE_STATIC_LOCAL in WebKit2. |
| |
| * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp: |
| (WebKit::buildIndexStatement): |
| (WebKit::buildObjectStoreStatement): |
| (WebKit::SQLiteIDBCursor::establishStatement): |
| (WebKit::getIndexStatement): Deleted. |
| (WebKit::getObjectStoreStatement): Deleted. |
| |
| 2014-12-17 Andreas Kling <akling@apple.com> |
| |
| Purge PassRefPtr from Frame. |
| <https://webkit.org/b/139731> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createSubframe): |
| |
| 2014-12-17 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix |
| |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::PageClient::setTextIndicatorAnimationProgress): |
| |
| 2014-12-17 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix GTK+ build after r177427. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::setTextIndicatorAnimationProgress): |
| * UIProcess/API/gtk/PageClientImpl.h: |
| |
| 2014-12-16 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Unreviewed, EFL build fix since r177427. |
| |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::setTextIndicatorAnimationProgress): Added. |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| |
| 2014-12-16 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Move WebCore/platform/graphics/surfaces to std::unique_ptr |
| https://bugs.webkit.org/show_bug.cgi?id=139641 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: |
| |
| 2014-12-16 Timothy Horton <timothy_horton@apple.com> |
| |
| Implement and adopt two new TextIndicator presentation animations |
| https://bugs.webkit.org/show_bug.cgi?id=139715 |
| <rdar://problem/19237945> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setTextIndicator:fadeOut:]): |
| (-[WKView _setTextIndicatorAnimationProgress:]): |
| (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]): Deleted. |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::setTextIndicatorAnimationProgress): |
| (WebKit::WebPageProxy::performActionMenuHitTestAtLocation): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::setTextIndicatorAnimationProgress): |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Remove the completion handler block argument from TextIndicator |
| installation. |
| Plumb animation progress through PageClient to TextIndicatorWindow. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]): |
| (-[WKImmediateActionController immediateActionRecognizerDidUpdateAnimation:]): |
| (-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]): |
| (-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]): |
| (-[WKImmediateActionController _menuItemForDataDetectedText]): |
| (-[WKImmediateActionController _animationControllerForText]): |
| Forward immediate action gesture recognizer animation progress |
| to TextIndicator. Force us to keep the selection when immediate |
| action popovers steal first responder status from the WebView. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::textIndicatorTransitionForActionMenu): |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Factor out the presentation animation decision code. |
| For immediate actions, of the Lookup range is equal to the |
| selection range, use a Crossfade animation; otherwise, use a FadeIn |
| animation. |
| Push whether the actionMenuHitTest is for an immediate action |
| or a menu to the Web process, to make the presentation animation |
| decision code live entirely in the Web process. |
| Avoid extracting encoded image data if we know we're doing |
| an immediate action and will never need it. |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Fix lambda and std::function formatting |
| https://bugs.webkit.org/show_bug.cgi?id=139719 |
| |
| Reviewed by Sam Weinig. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::getOrigins): |
| (WebKit::DatabaseProcess::deleteEntriesForOrigin): |
| (WebKit::DatabaseProcess::deleteEntriesModifiedBetweenDates): |
| (WebKit::DatabaseProcess::deleteAllEntries): |
| * DatabaseProcess/DatabaseProcess.h: |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp: |
| (WebKit::UniqueIDBDatabase::deleteDatabase): |
| (WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): |
| (WebKit::UniqueIDBDatabase::openTransaction): |
| (WebKit::UniqueIDBDatabase::beginTransaction): |
| (WebKit::UniqueIDBDatabase::commitTransaction): |
| (WebKit::UniqueIDBDatabase::resetTransaction): |
| (WebKit::UniqueIDBDatabase::rollbackTransaction): |
| (WebKit::UniqueIDBDatabase::postTransactionOperation): |
| (WebKit::UniqueIDBDatabase::changeDatabaseVersion): |
| (WebKit::UniqueIDBDatabase::createObjectStore): |
| (WebKit::UniqueIDBDatabase::deleteObjectStore): |
| (WebKit::UniqueIDBDatabase::clearObjectStore): |
| (WebKit::UniqueIDBDatabase::createIndex): |
| (WebKit::UniqueIDBDatabase::deleteIndex): |
| (WebKit::UniqueIDBDatabase::putRecord): |
| (WebKit::UniqueIDBDatabase::getRecord): |
| (WebKit::UniqueIDBDatabase::openCursor): |
| (WebKit::UniqueIDBDatabase::cursorAdvance): |
| (WebKit::UniqueIDBDatabase::cursorIterate): |
| (WebKit::UniqueIDBDatabase::count): |
| (WebKit::UniqueIDBDatabase::deleteRange): |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h: |
| * NetworkProcess/cache/NetworkCacheStorageCocoa.mm: |
| (WebKit::NetworkCacheStorage::store): |
| * Shared/AsyncTask.h: |
| (WebKit::AsyncTask::AsyncTask): |
| * Shared/ChildProcess.cpp: |
| (WebKit::didCloseOnConnectionWorkQueue): |
| * Shared/WebContextMenuItemData.cpp: |
| (WebKit::WebContextMenuItemData::WebContextMenuItemData): |
| * Shared/WebContextMenuItemData.h: |
| (WebKit::WebContextMenuItemData::selectionHandler): |
| * Shared/mac/SecItemShim.cpp: |
| (WebKit::responseMap): |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::PluginProcessManager): |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::m_processSuppressionDisabledForPageCounter): |
| * UIProcess/WebOriginDataManagerProxy.cpp: |
| (WebKit::CallbackSynchronizer::create): |
| (WebKit::CallbackSynchronizer::CallbackSynchronizer): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (-[WKSelectionHandlerWrapper initWithSelectionHandler:]): |
| (WebKit::nsMenuItemVector): |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp: |
| (WebKit::WebIDBServerConnection::deleteDatabase): |
| (WebKit::WebIDBServerConnection::getOrEstablishIDBDatabaseMetadata): |
| (WebKit::WebIDBServerConnection::openTransaction): |
| (WebKit::WebIDBServerConnection::beginTransaction): |
| (WebKit::WebIDBServerConnection::commitTransaction): |
| (WebKit::WebIDBServerConnection::resetTransaction): |
| (WebKit::WebIDBServerConnection::rollbackTransaction): |
| (WebKit::WebIDBServerConnection::setIndexKeys): |
| (WebKit::WebIDBServerConnection::createObjectStore): |
| (WebKit::WebIDBServerConnection::createIndex): |
| (WebKit::WebIDBServerConnection::deleteIndex): |
| (WebKit::WebIDBServerConnection::get): |
| (WebKit::WebIDBServerConnection::put): |
| (WebKit::WebIDBServerConnection::count): |
| (WebKit::WebIDBServerConnection::deleteRange): |
| (WebKit::WebIDBServerConnection::clearObjectStore): |
| (WebKit::WebIDBServerConnection::deleteObjectStore): |
| (WebKit::WebIDBServerConnection::changeDatabaseVersion): |
| (WebKit::WebIDBServerConnection::openCursor): |
| (WebKit::WebIDBServerConnection::cursorAdvance): |
| (WebKit::WebIDBServerConnection::cursorIterate): |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h: |
| * WebProcess/OriginData/WebOriginDataManagerSupplement.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::getOrigins): |
| (WebKit::WebProcess::deleteEntriesForOrigin): |
| (WebKit::WebProcess::deleteEntriesModifiedBetweenDates): |
| (WebKit::WebProcess::deleteAllEntries): |
| * WebProcess/WebProcess.h: |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of a couple of binds in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139717 |
| |
| Reviewed by Sam Weinig. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::postDatabaseTask): |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp: |
| (WebKit::UniqueIDBDatabase::didShutdownBackingStore): |
| (WebKit::UniqueIDBDatabase::postMainThreadTask): |
| (WebKit::UniqueIDBDatabase::performNextMainThreadTask): |
| (WebKit::UniqueIDBDatabase::postDatabaseTask): |
| (WebKit::UniqueIDBDatabase::performNextMainThreadTaskWithoutAdoptRef): Deleted. |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h: |
| * Platform/IPC/mac/ConnectionMac.mm: |
| (IPC::Connection::initializeDeadNameSource): |
| * UIProcess/Launcher/ProcessLauncher.cpp: |
| (WebKit::processLauncherWorkQueue): |
| (WebKit::ProcessLauncher::ProcessLauncher): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::unprotectPluginFromDestruction): |
| (WebKit::derefPluginView): Deleted. |
| |
| 2014-12-16 Andreas Kling <akling@apple.com> |
| |
| Use Ref for SecurityOrigin. |
| <https://webkit.org/b/139710> |
| |
| Reviewed by Anders Carlsson. |
| |
| * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp: |
| (WebKit::UniqueIDBDatabase::databaseFilenameIdentifier): |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: |
| (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin): |
| * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp: |
| (WebKit::WebIDBServerConnection::WebIDBServerConnection): |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addOriginAccessWhitelistEntry): |
| (WebKit::InjectedBundle::removeOriginAccessWhitelistEntry): |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Remove deprecated StorageNamespaceImpl overloads |
| https://bugs.webkit.org/show_bug.cgi?id=139713 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::storageArea): |
| (WebKit::StorageNamespaceImpl::copy): |
| (WebKit::StorageNamespaceImpl::createSessionStorageNamespace): Deleted. |
| (WebKit::StorageNamespaceImpl::createLocalStorageNamespace): Deleted. |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| |
| 2014-12-16 Beth Dakin <bdakin@apple.com> |
| |
| Speculative build fix. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _animationControllerForCustomPreview]): |
| |
| 2014-12-16 Beth Dakin <bdakin@apple.com> |
| |
| REGRESSION: Preview popovers obscure the link, look wrong |
| https://bugs.webkit.org/show_bug.cgi?id=139711 |
| -and corresponding- |
| rdar://problem/19271854 |
| |
| Reviewed by Tim Horton. |
| |
| Switch to using NSPopoverAnimationController. |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _defaultAnimationController]): |
| (-[WKImmediateActionController _animationControllerForCustomPreview]): |
| |
| 2014-12-16 Timothy Horton <timothy_horton@apple.com> |
| |
| Immediate action popovers can get stuck open |
| https://bugs.webkit.org/show_bug.cgi?id=139709 |
| <rdar://problem/19270279> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| Don't clear the animation controller; it breaks things and was unnecessary. |
| |
| 2014-12-16 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Add a progress indicator to the preview popover |
| https://bugs.webkit.org/show_bug.cgi?id=139699 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setPreviewLoading:]): |
| Wrap -[WKImmediateActionController setPreviewLoading:]. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _createPreviewPopoverIfNeededForURL:]): |
| Flag the preview view controller as loading before beginning the load. |
| (-[WKImmediateActionController setPreviewLoading:]): |
| Wrap -[WKPagePreviewViewController setLoading:]. |
| |
| * UIProcess/mac/WKPagePreviewViewController.h: |
| * UIProcess/mac/WKPagePreviewViewController.mm: |
| (-[WKPagePreviewViewController setLoading:]): |
| Toggle the progress indicator animation state. |
| (-[WKPagePreviewViewController isLoading]): |
| Accessor. |
| (-[WKPagePreviewViewController loadView]): |
| Create and center an indeterminate progress indicator that won't scale with the preview content. |
| |
| 2014-12-16 Enrica Casucci <enrica@apple.com> |
| |
| Fix iOS builders for 8.0 |
| https://bugs.webkit.org/show_bug.cgi?id=139495 |
| |
| Reviewed by Jer Noble |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _mayAutomaticallyShowVideoOptimized]): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| |
| 2014-12-16 Gavin Barraclough <barraclough@apple.com> |
| |
| Move Mac process suppression from WebCore to WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139705 |
| |
| Reviewed by Geoff Garen. |
| |
| Currently PageThrottler constructs the PageActivityState, holds a copy of the ViewState, |
| and an optional UserActivity. |
| |
| Instead, still construct the PageActivityState but just pass this out via the Page to WebPage. |
| Logic From PageThrottler::updateUserActivity merged into WebPage::updateUserActivity. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::setPageActivityState): |
| - added to propagate PageActivityState to WebPage. |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| - added setPageActivityState to propagate PageActivityState to WebPage. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| - calls to updateUserActivity. |
| (WebKit::WebPage::setPageActivityState): |
| - calls to updateUserActivity. |
| (WebKit::WebPage::updateUserActivity): |
| - incorporate logic from PageThrottler::updateUserActivity. |
| (WebKit::WebPage::setViewState): |
| - calls to updateUserActivity. |
| (WebKit::WebPage::updatePreferences): |
| - calls to updateUserActivity. |
| * WebProcess/WebPage/WebPage.h: |
| - added setPageActivityState, m_activityState. |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| More StorageManager modernization |
| https://bugs.webkit.org/show_bug.cgi?id=139704 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::createSessionStorageMap): |
| (WebKit::StorageManager::destroyStorageMap): |
| (WebKit::StorageManager::findStorageArea): |
| (WebKit::StorageManager::getOrCreateLocalStorageNamespace): |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Use Ref in another StorageManager function |
| https://bugs.webkit.org/show_bug.cgi?id=139700 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea): |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Use Ref in StorageManager |
| https://bugs.webkit.org/show_bug.cgi?id=139698 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::TransientLocalStorageNamespace::create): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::StorageArea::create): |
| (WebKit::StorageManager::StorageArea::clone): |
| (WebKit::StorageManager::LocalStorageNamespace::create): |
| (WebKit::StorageManager::SessionStorageNamespace::create): |
| (WebKit::StorageManager::create): |
| * UIProcess/Storage/StorageManager.h: |
| |
| 2014-12-16 Gavin Barraclough <barraclough@apple.com> |
| |
| Split UserActivity from disabled flag in WebPage |
| https://bugs.webkit.org/show_bug.cgi?id=139696 |
| |
| Reviewed by Geoffrey Garen. |
| |
| In preparation for other things driving the UserActivity. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| - initialize new members. |
| (WebKit::WebPage::updateUserActivity): |
| - start/stop the m_userActivity, based on m_processSupressionEnabled |
| (WebKit::WebPage::updatePreferences): |
| - call updateUserActivity to account for m_processSupressionEnabled changes. |
| * WebProcess/WebPage/WebPage.h: |
| - split m_processSuppressionDisabledByWebPreference -> m_processSupressionEnabled, m_userActivity. |
| |
| 2014-12-16 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of PassRefPtr inside StorageManager |
| https://bugs.webkit.org/show_bug.cgi?id=139693 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::StorageArea::create): |
| (WebKit::StorageManager::StorageArea::StorageArea): |
| (WebKit::StorageManager::StorageArea::clone): |
| (WebKit::StorageManager::LocalStorageNamespace::create): |
| (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::SessionStorageNamespace::create): |
| (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::create): |
| * UIProcess/Storage/StorageManager.h: |
| |
| 2014-12-16 Tim Horton <timothy_horton@apple.com> |
| |
| Disable TextIndication for Lookup immediate actions |
| https://bugs.webkit.org/show_bug.cgi?id=139684 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _animationControllerForText]): |
| |
| 2014-12-16 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] WKWebProcessPlugInLoadDelegate can’t tell what type of same-document navigation has happened |
| https://bugs.webkit.org/show_bug.cgi?id=139669 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/Cocoa/_WKSameDocumentNavigationType.h: Added. Moved the |
| _WKSameDocumentNavigationType type definition here from WKNavigationDelegatePrivate.h. |
| * Shared/API/Cocoa/_WKSameDocumentNavigationTypeInternal.h: Added. |
| (WebKit::toWKSameDocumentNavigationType): Moved from NavigationState.mm. |
| |
| * Shared/API/c/WKSharedAPICast.h: |
| (WebKit::toSameDocumentNavigationType): Added this conversion helper. |
| |
| * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Added #import. |
| |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::toWKSameDocumentNavigationType): Deleted. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Updated for added headers. |
| |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Declared new |
| delegate method that take a navigation type parameter. |
| |
| * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: |
| (didSameDocumentNavigationForFrame): Changed to call the new delegate method, passing the |
| navigation type. |
| |
| 2014-12-16 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.7.3 release. |
| |
| * gtk/NEWS: Add release notes for 2.7.3. |
| |
| 2014-12-16 Antti Koivisto <antti@apple.com> |
| |
| WebKit level persistent caching |
| https://bugs.webkit.org/show_bug.cgi?id=30322 |
| |
| Minor cleanups based on comments by Joseph Pecoraro. |
| |
| * NetworkProcess/cache/NetworkCache.cpp: |
| (WebKit::decodeStorageEntry): |
| * NetworkProcess/cache/NetworkCache.h: |
| * NetworkProcess/cache/NetworkCacheStorage.h: |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa): |
| |
| 2014-12-15 Bartlomiej Gajda <b.gajda@samsung.com> |
| |
| Build fix after r177301. |
| https://bugs.webkit.org/show_bug.cgi?id=139666 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: |
| (WebKit::WebPage::findZoomableAreaForPoint): |
| |
| 2014-12-15 Simon Fraser <simon.fraser@apple.com> |
| |
| [iOS WK2] Possible crash when setting the WKWebViews's scroll view delegate, if the scroll view outlives the web view |
| https://bugs.webkit.org/show_bug.cgi?id=139662 |
| rdar://problem/18083882 |
| |
| Reviewed by Benjamin Poulain. |
| |
| Null out the internal delegate on the WKScrollView when the WKWebView goes away, since |
| it's possible for a client to set its own scroll view delegate, forcing the creation of |
| a WKScrollViewDelegateForwarder, and then retain the UIScrollView past the lifetime of |
| the WKWebView. In this situation, the WKScrollViewDelegateForwarder's internalDelegate |
| would point to a deleted WKWebView. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView dealloc]): |
| |
| 2014-12-15 Beth Dakin <bdakin@apple.com> |
| |
| Make lookup an immediate action instead of an action menu item |
| https://bugs.webkit.org/show_bug.cgi?id=139661 |
| -and corresponding- |
| rdar://problem/19198414 |
| |
| Reviewed by Tim Horton. |
| |
| New type. |
| * Shared/API/c/WKImmediateActionTypes.h: |
| |
| ActionMenuHitTestResult now includes a DictionaryPopupInfo. |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| |
| Remove all lookup menu items. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForText]): |
| (-[WKActionMenuController _defaultMenuItemsForEditableText]): |
| (-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (-[WKActionMenuController _lookupText:]): Deleted. |
| |
| Set the defaultAnimationController to the lookup-provided animation controller |
| when appropriate. |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _defaultAnimationController]): |
| (-[WKImmediateActionController _animationControllerForText]): |
| |
| Re-factor performDictionaryLookupForRange() so that most of the work is done in a |
| new function called dictionaryPopupInfoForRange(). This was that code can be used |
| for both performing a dictionary lookup and just getting the DictionaryPopupInfo |
| for the ActionMenuHitTest. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::dictionaryPopupInfoForRange): |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::lookupTextAtLocation): |
| |
| 2014-12-15 Matt Baker <mattbaker@apple.com> |
| |
| Web Inspector: Docked inspector repositioned incorrectly when dragging frame borders |
| https://bugs.webkit.org/show_bug.cgi?id=139415 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| The _ignoreNextInspectedViewFrameDidChange flag wasn't set back to NO after |
| being tested by inspectedViewFrameDidChange. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (-[WKWebInspectorProxyObjCAdapter inspectedViewFrameDidChange:]): |
| |
| 2014-12-15 Gavin Barraclough <barraclough@apple.com> |
| |
| Simplify tracking of process suppression disabled for PluginProcessManager |
| https://bugs.webkit.org/show_bug.cgi?id=139611 |
| |
| Unreviewed gtk/efl build fix. |
| |
| * UIProcess/Plugins/PluginProcessManager.h: |
| - missing #ifdef |
| |
| 2014-12-15 Timothy Horton <timothy_horton@apple.com> |
| |
| Implement Data Detectors immediate actions for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139617 |
| <rdar://problem/19198539> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _menuItemForDataDetectedText]): |
| Note that this action context is only for immediate actions. |
| |
| 2014-12-15 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Addressing post-review comments in r177035 |
| https://bugs.webkit.org/show_bug.cgi?id=139557 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates): Migrate off rendererBoundingBox(). |
| * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: |
| (WebKit::WebPage::findZoomableAreaForPoint): Ditto. |
| |
| 2014-12-15 Timothy Horton <timothy_horton@apple.com> |
| |
| Implement Data Detectors immediate actions for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139617 |
| <rdar://problem/19198539> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/API/c/WKImmediateActionTypes.h: |
| Add a new type. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseDown:]): |
| Send mouseDown along to the WKImmediateActionController too. |
| |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| Temporarily disable action menus. |
| |
| (-[WKView _dismissContentRelativeChildWindows]): |
| Hide the immediate action preview when detaching child windows. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController willDestroyView:]): |
| Clear the DDActionContext when tearing down the view. |
| |
| (-[WKImmediateActionController wkView:willHandleMouseDown:]): |
| (-[WKImmediateActionController _cancelImmediateAction]): |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]): |
| (-[WKImmediateActionController immediateActionRecognizerWillBeginAnimation:]): |
| (-[WKImmediateActionController _defaultAnimationController]): |
| (-[WKImmediateActionController _updateImmediateActionItem]): |
| (-[WKImmediateActionController hidePreview]): |
| (-[WKImmediateActionController popoverWillClose:]): |
| (-[WKImmediateActionController _menuItemForDataDetectedText]): |
| Copy most of the DataDetectors implementation into WKImmediateActionController. |
| |
| 2014-12-15 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Delete Notation because we don't use it |
| https://bugs.webkit.org/show_bug.cgi?id=139171 |
| |
| Reviewed by Kent Tamura. |
| |
| * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm: |
| (WebKit::WKDOMNodeClass): |
| * mac/MigrateHeadersFromWebKitLegacy.make: |
| |
| 2014-12-15 David Kilzer <ddkilzer@apple.com> |
| |
| Remove last references to OfflineStorage process |
| <http://webkit.org/b/139648> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Remove last references to |
| the OfflineStorage process. See r154251 and r154256. |
| |
| 2014-12-15 Gavin Barraclough <barraclough@apple.com> |
| |
| Change HysteresisActivity to use a lambda |
| https://bugs.webkit.org/show_bug.cgi?id=139636 |
| |
| Reviewed by Darin Adler. |
| |
| The current implementation provides notifications via callbacks to a delegate. Using a delegate |
| with callbacks is limiting a number of ways. The callback names are very ambiguous, the callbacks |
| must either be on a separate object (more boilerplate), or the callback must be public for |
| HysteresisActivity to call them, or friends get involved. Without the boilerplate of extra |
| delegate objects it's hard to scale use of these objects - a single object can't serve as a |
| delegate for multiple HysteresisActivity members. |
| |
| Instead, make HysteresisActivity take a lambda to callback on state change. To simplify, changed |
| HysteresisState to only track Started/Stopped states (removed WillStopPendingTimeout). |
| |
| * WebProcess/WebCoreSupport/WebSQLiteDatabaseTracker.cpp: |
| (WebKit::WebSQLiteDatabaseTracker::WebSQLiteDatabaseTracker): |
| - HysteresisActivity now takes a lambda, not a delegate. |
| (WebKit::WebSQLiteDatabaseTracker::hysteresisUpdated): |
| (WebKit::WebSQLiteDatabaseTracker::started): Deleted. |
| (WebKit::WebSQLiteDatabaseTracker::stopped): Deleted. |
| - started/stopped merged into hysteresisUpdated |
| * WebProcess/WebCoreSupport/WebSQLiteDatabaseTracker.h: |
| - HysteresisActivity is no longer templated on delegate type, changed function declarations. |
| |
| 2014-12-15 Antti Koivisto <antti@apple.com> |
| |
| WebKit level persistent caching |
| https://bugs.webkit.org/show_bug.cgi?id=30322 |
| |
| Reviewed by Sam Weinig. |
| |
| We can improve performance and open new optimization possibilities by bringing network caching into WebKit. |
| |
| This patch implements an experimental HTTP cache living in the network process. |
| |
| The main classes are: |
| |
| NetworkCache |
| - Implements HTTP cache validation logic including Vary header |
| - Initially non-range GET only |
| - Fast serialization using WebKit types (ResourcesResponse etc) instead of native network layer types |
| |
| NetworkCacheKey |
| - Unique identifier for cache entries |
| - Keyed on method/partition/URL |
| |
| NetworkCacheStorage |
| - Storage backend |
| - dispatch-IO based implementation (generic posix implementation wouldn't be difficult) |
| - File system only (no SQLite or similar) |
| - One file per resource containing both header and body data |
| - Zero persistent global metadata |
| - Bloom filter for fast fail |
| |
| NetworkCacheEncoder/Decoder |
| - Serializisation support with integrity verification. |
| |
| The code is behind the NETWORK_CACHE feature flag and requires network process to be enabled to use. |
| |
| This patch does not enable the feature yet by default. |
| |
| Test: http/tests/cache/disk-cache-validation.html |
| |
| * NetworkProcess/cache/NetworkCache.cpp: Added. |
| * NetworkProcess/cache/NetworkCache.h: Added. |
| * NetworkProcess/cache/NetworkCacheKey.cpp: Added. |
| * NetworkProcess/cache/NetworkCacheKey.h: Added. |
| * NetworkProcess/cache/NetworkCacheStorage.h: Added. |
| * NetworkProcess/cache/NetworkCacheStorage.mm: Added. |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa): |
| (WebKit::NetworkProcess::platformSetCacheModel): |
| * NetworkProcess/ios/NetworkProcessIOS.mm: |
| (WebKit::NetworkProcess::clearCacheForAllOrigins): |
| * NetworkProcess/mac/NetworkProcessMac.mm: |
| (WebKit::NetworkProcess::clearCacheForAllOrigins): |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: |
| (WebKit::tryGetShareableHandleFromCFData): |
| * Platform/Logging.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * config.h: |
| |
| 2014-12-15 Gavin Barraclough <barraclough@apple.com> |
| |
| Simplify tracking of process suppression disabled for PluginProcessManager |
| https://bugs.webkit.org/show_bug.cgi?id=139611 |
| |
| Reviewed by Darin Adler. |
| |
| Previously if process suppression state changed for any context we would |
| iterate over all contexts to recompute. |
| |
| There was also an inconsistency in the code. When plugin processes are |
| created they called processSuppressionIsEnabledForAllContexts(), which |
| checked WebContext::processSuppressionEnabled(), which in turn checks |
| two things - whether any page is currently visible, and whether the |
| suppression is currently disabled for any page. However when updating |
| process supression state we would call |
| processSuppressionPreferenceIsEnabledForAllContexts(), which would just |
| check the value of the key from the context's default PageGroup. |
| |
| We shouldn't be taking visibility into account (this is handled from the |
| content, where we know which pages have instances of which plugins), but |
| we should be checking the current pref value of each page. |
| |
| We already track in each context whether any page has teh pref set to |
| disable throttling; add a counter to the shared PluginProcessManager to |
| coallesce across all contexts. |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::PluginProcessManager): |
| - added m_processSuppressionDisabledForPageCounter, m_processSuppressionEnabled. |
| * UIProcess/Plugins/PluginProcessManager.h: |
| (WebKit::PluginProcessManager::processSuppressionDisabledForPageCount): |
| - accessor for WebContext to increment count. |
| (WebKit::PluginProcessManager::processSuppressionEnabled): |
| - accessor for PluginProcessProxy. |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::didFinishLaunching): |
| - get initial supression state from the PluginProcessManager, not WebContext. |
| * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: |
| (WebKit::PluginProcessManager::updateProcessSuppressionState): |
| (WebKit::PluginProcessManager::setProcessSuppressionEnabled): Deleted. |
| - setProcessSuppressionEnabled -> updateProcessSuppressionState |
| rather than WebContext setting suppression state, PluginProcessManager detects |
| when this may need to change & determines a new value for itself. |
| * UIProcess/WebContext.h: |
| - removed processSuppressionIsEnabledForAllContexts, processSuppressionPreferenceIsEnabledForAllContexts |
| updateProcessSuppressionState is no longer const (updates m_pluginProcessManagerProcessSuppressionDisabledCount). |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::updateProcessSuppressionState): |
| - instead of explicitly recomputing plugin throttling state from Within the WebContext, just update |
| m_pluginProcessManagerProcessSuppressionDisabledCount to count a RefCounter on the shared PluginProcessManager. |
| (WebKit::WebContext::processSuppressionIsEnabledForAllContexts): Deleted. |
| (WebKit::WebContext::processSuppressionPreferenceIsEnabledForAllContexts): Deleted. |
| - removed. |
| |
| 2014-12-15 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Use API::LoaderClient instead of WKPageLoaderClient |
| https://bugs.webkit.org/show_bug.cgi?id=139583 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| It simplifies the code and it will make easier to implement new |
| loader client methods. |
| |
| * UIProcess/API/gtk/WebKitBackForwardList.cpp: |
| (webkitBackForwardListChanged): |
| * UIProcess/API/gtk/WebKitBackForwardListPrivate.h: |
| * UIProcess/API/gtk/WebKitLoaderClient.cpp: |
| (LoaderClient::LoaderClient): |
| (attachLoaderClientToView): |
| (didStartProvisionalLoadForFrame): Deleted. |
| (didReceiveServerRedirectForProvisionalLoadForFrame): Deleted. |
| (didFailProvisionalLoadWithErrorForFrame): Deleted. |
| (didCommitLoadForFrame): Deleted. |
| (didFinishLoadForFrame): Deleted. |
| (didFailLoadWithErrorForFrame): Deleted. |
| (didDisplayInsecureContentForFrame): Deleted. |
| (didRunInsecureContentForFrame): Deleted. |
| (didChangeBackForwardList): Deleted. |
| (didReceiveAuthenticationChallengeInFrame): Deleted. |
| (processDidCrash): Deleted. |
| |
| 2014-12-15 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| Add initial implementation of ThreadSafeCoordinatedSurface, ThreadedCompositor, and SimpleViewportController |
| https://bugs.webkit.org/show_bug.cgi?id=118383 |
| |
| Reviewed by Martin Robinson. |
| |
| Implements an initial version of the Threaded Compositor. |
| |
| Threaded Compositor is a variant of Coordinated Graphics implementation. |
| Basic structure of the implementaion is simliar, thus, Threaded |
| Compositor reuses lots of classes from Coordinated Graphics. However, |
| instead of compositing on UI Process, Threaded Compositor performs |
| compositing on a dedicate thread of Web Process. |
| |
| No new test, because it is in experimental stage. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebKit::CoordinatedGraphicsScene::CoordinatedGraphicsScene): |
| Removed a assertion not to force its creation in the main thread. In |
| the Threaded Compositor, it can be created in the dedicated thread. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp: Added. |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.h: Added. |
| Implements a surface using ImageBuffer as a backend to use in the Web |
| Process. |
| |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h: Added. |
| * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp: Added. |
| Implements a compositor which runs on the created thread. It owns |
| SimpleViewportController and CoordinatedGraphicsScene to render scene on the |
| actual surface. |
| |
| * Shared/CoordinatedGraphics/SimpleViewportController.cpp: Added. |
| * Shared/CoordinatedGraphics/SimpleViewportController.h: Added. |
| This class is responsible to handle scale factor and scrolling position |
| with a simplifed logic in the compositing thread. |
| |
| 2014-12-14 Andreas Kling <akling@apple.com> |
| |
| Replace PassRef with Ref/Ref&& across the board. |
| <https://webkit.org/b/139587> |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/WebBackForwardList.h: |
| (WebKit::WebBackForwardList::create): |
| * UIProcess/WebBatteryManagerProxy.cpp: |
| (WebKit::WebBatteryManagerProxy::create): |
| * UIProcess/WebBatteryManagerProxy.h: |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::WebPageGroup::createNonNull): |
| * UIProcess/WebPageGroup.h: |
| * UIProcess/efl/BatteryProvider.cpp: |
| (BatteryProvider::create): |
| * UIProcess/efl/BatteryProvider.h: |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.h: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::shouldApplyStyle): |
| * WebProcess/WebCoreSupport/WebUserMediaClient.cpp: |
| (WebKit::WebUserMediaClient::requestPermission): |
| * WebProcess/WebCoreSupport/WebUserMediaClient.h: |
| * WebProcess/WebPage/ViewUpdateDispatcher.cpp: |
| (WebKit::ViewUpdateDispatcher::create): |
| * WebProcess/WebPage/ViewUpdateDispatcher.h: |
| |
| 2014-12-12 Gavin Barraclough <barraclough@apple.com> |
| |
| Split WebPageProxy::m_preventProcessSuppression to track pref/visibility separately |
| https://bugs.webkit.org/show_bug.cgi?id=139600 |
| |
| Reviewed by Geoff Garen. |
| |
| Previously WebPageProxy::m_preventProcessSuppression would be set if either the page was visible |
| or its suppression was disabled by the pref. Instead track these separately. This will make the |
| user observability state applicable on iOS, too. |
| |
| Add a new counter to WebContext, and split the counting in WebPageProxy. |
| ::updateProccessSuppressionState continues to track the pref change (which matches its name), |
| tracking of user observability changes moved to updateActivityToken (which we should further |
| merge with; it already tracks observability to control process state for iOS). |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::m_processSuppressionDisabledForPageCounter): |
| - added new RefCounter. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::processSuppressionDisabledForPageCount): |
| - added new RefCounter. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| - no longer needs to call updateProccessSuppressionState (pref has not changed; handled by the call to updateActivityToken). |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| - no longer needs to call updateProccessSuppressionState (pref has not changed; handled by the call to updateActivityToken). |
| (WebKit::WebPageProxy::updateActivityToken): |
| - this now also updated the user observability counter. |
| (WebKit::WebPageProxy::updateProccessSuppressionState): |
| - now only tracks whether this is disabled via the preference. |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| - clear the user observability counter; thsi will be reset on reattach. |
| * UIProcess/WebPageProxy.h: |
| - added new RefCounter::Count. |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::processSuppressionEnabled): |
| - processSuppressionEnabled is disabled if *neither*: |
| - there are user observable pages |
| - disabled by pref for any page. |
| |
| 2014-12-12 Beth Dakin <bdakin@apple.com> |
| |
| Need a fake mouse move after hiding data detectors UI |
| https://bugs.webkit.org/show_bug.cgi?id=139608 |
| -and corresponding- |
| rdar://problem/19221935 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::dataDetectorsDidHideUI): |
| |
| 2014-12-12 Anders Carlsson <andersca@apple.com> |
| |
| Handle caches in WebsiteDataStore |
| https://bugs.webkit.org/show_bug.cgi?id=139607 |
| <rdar://problem/19107614> |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::computeNetworkProcessAccessType): |
| |
| 2014-12-12 Enrica Casucci <enrica@apple.com> |
| |
| [iOS] Predictions are not updated when using navigation buttons. |
| https://bugs.webkit.org/show_bug.cgi?id=139567 |
| rdar://problem/19132585 |
| |
| Reviewed by Dan Bernstein. |
| |
| When moving focus programmatically, we need to notify the keyboard so that it |
| can update the prediction bar. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKFormInputSession setAccessoryViewCustomButtonTitle:]): |
| (-[WKContentView requiresAccessoryView]): |
| (-[WKContentView inputAssistantButtonItems]): |
| (-[WKContentView accessoryTab:]): |
| (-[WKContentView _startAssistingKeyboard]): |
| (-[WKContentView _stopAssistingNode]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::focusNextAssistedNode): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::focusNextAssistedNode): |
| |
| 2014-12-12 Timothy Horton <timothy_horton@apple.com> |
| |
| TextIndicator (and other view-relative subwindows) is not dismissed on zoom gesture |
| https://bugs.webkit.org/show_bug.cgi?id=139580 |
| <rdar://problem/19226350> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::dismissContentRelativeChildWindows): |
| (WebKit::PageClientImpl::dismissDictionaryLookupPanel): Deleted. |
| (WebKit::PageClientImpl::dismissActionMenuPopovers): Deleted. |
| Merge dismissDictionaryLookupPanel and dismissActionMenuPopovers into |
| _dismissContentRelativeChildWindows, which also dismisses TextIndicator and the |
| text correction panel. Dismissal of any child windows which are anchored to |
| the page content now bottlenecks through this function. |
| |
| (WebKit::PageClientImpl::navigationGestureDidBegin): |
| Dismiss all anchored subwindows when starting a navigation gesture, not |
| just TextIndicator and action menu popovers. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView scrollWheel:]): |
| No need to dismiss TextIndicator here; we've got this covered in the more-inclusive |
| WebPageProxy::pageDidScroll, and will now dismiss more things. |
| |
| (-[WKView mouseDown:]): |
| Dismiss more things. |
| |
| (-[WKView viewDidMoveToWindow]): |
| Dismiss more things. |
| |
| (-[WKView _dismissContentRelativeChildWindows]): |
| The aforementioned combined dismissal function. |
| |
| (-[WKView magnifyWithEvent:]): |
| (-[WKView smartMagnifyWithEvent:]): |
| (-[WKView setMagnification:centeredAtPoint:]): |
| (-[WKView setMagnification:]): |
| Any time the page magnification changes, dismiss all the things. |
| |
| * UIProcess/API/mac/WKViewPrivate.h: |
| Expose _dismissContentRelativeChildWindows instead of _dismissActionMenuPopovers; |
| for all existing clients, it makes more sense to dismiss all view-relative subwindows |
| than just a subset of them. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| (WebKit::WebPageProxy::pageDidScroll): |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| Make use of dismissAnchoredSubwindows. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Dismiss more things. |
| |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| (-[WKActionMenuController dismissActionMenuPopovers]): Deleted. |
| dismissActionMenuPopovers is folded into WKView's _dismissContentRelativeChildWindows. |
| |
| (-[WKActionMenuController _showTextIndicator]): Deleted. |
| (-[WKActionMenuController _hideTextIndicator]): Deleted. |
| Fold _showTextIndicator and _hideTextIndicator into their only callers. |
| _isShowingTextIndicator was never necessary, because it's OK to change |
| the current TextIndicator at any time, and a newer one is always more relevant. |
| |
| 2014-12-12 Gavin Barraclough <barraclough@apple.com> |
| |
| Keep single RefCounter to track whether any pages in a context are process suppressible |
| https://bugs.webkit.org/show_bug.cgi?id=139576 |
| |
| Reviewed by Sam Weinig. |
| |
| Currently we keep separate counters in each process, and coallesce these in the |
| context. Instead we should have a counter in the WebContext. |
| |
| Also, changed the name to better describe the state we're tracking, rather than |
| describing what it's currently used for. This counter will also be useful for |
| iOS, to better manage background state of the networking process. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| - initialize m_userObservablePageCounter. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::updateProcessSuppressionState): |
| - Added no-op implementation for non-cocoa platforms. |
| (WebKit::WebContext::userObservablePageCount): |
| - Count the number of user visible (audible / visible) pages in Context. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::updateProccessSuppressionState): |
| - WebProcessProxy::processSuppressionCounter -> WebContext::userObservablePageCount |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| (WebKit::WebProcessProxy::didFinishLaunching): |
| - moved all processs supression state tracking to the WebContext. |
| * UIProcess/WebProcessProxy.h: |
| (WebKit::WebProcessProxy::processSuppressionCounter): Deleted. |
| - moved all processs supression state tracking to the WebContext. |
| * UIProcess/ios/WebProcessProxyIOS.mm: |
| (WebKit::WebProcessProxy::allPagesAreProcessSuppressible): Deleted. |
| (WebKit::WebProcessProxy::updateProcessSuppressionState): Deleted. |
| - moved all processs supression state tracking to the WebContext. |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::processSuppressionEnabled): |
| - no need to interate all processes; just have a single counter. |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::WebProcessProxy::allPagesAreProcessSuppressible): Deleted. |
| (WebKit::WebProcessProxy::updateProcessSuppressionState): Deleted. |
| - moved all processs supression state tracking to the WebContext. |
| |
| 2014-12-12 Alexey Proskuryakov <ap@apple.com> |
| |
| Layout Test http/tests/loading/307-after-303-after-post.html is flaky |
| https://bugs.webkit.org/show_bug.cgi?id=73030 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::createNewWebProcess): Added a FIXME comment. |
| (WebKit::WebContext::setIconDatabasePath): Don't enable m_iconDatabase if the path |
| is empty, meaning that the database is disabled (which is not a great way to say |
| that, but WebKit2 icon database doesn't support enabling/disabling cleanly). |
| (WebKit::WebContext::iconDatabasePath): Keep it empty if it was empty. |
| |
| 2014-12-12 Mark Rowe <mrowe@apple.com> |
| |
| Fix the 32-bit build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setPreviewTitle:]): |
| |
| 2014-12-12 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the 32-bit build. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| |
| 2014-12-12 Rohit Kumar <kumar.rohit@samsung.com> |
| |
| Fix Build Warning in WebKit2/UIProcess module for GTK build and WebKit2/NetworkProcess module in GTK and EFL build |
| https://bugs.webkit.org/show_bug.cgi?id=139535 |
| |
| Reviewed by Martin Robinson. |
| |
| * UIProcess/API/gtk/WebKitWebView.cpp: Use UNUSED_PARAM for conditional #if case |
| (webkitWebViewShowNotification): |
| (webkitWebViewCloseNotification): |
| |
| 2014-12-12 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| [EFL] Disable all EWK2Accessibility unit tests |
| https://bugs.webkit.org/show_bug.cgi?id=139577 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| WebAccessibility functionality isn't supported by EFL WebKit2 though, |
| EWK2Accessibility unit tests have been tested. That's why those tests have been failed |
| so far. |
| |
| * UIProcess/API/efl/tests/test_ewk2_accessibility.cpp: |
| (TEST_F): |
| |
| 2014-12-12 Simon Fraser <simon.fraser@apple.com> |
| |
| Layer borders on contentsLayers don't correctly toggle with the rest of the borders |
| https://bugs.webkit.org/show_bug.cgi?id=139570 |
| rdar://problem/18007746 |
| |
| Reviewed by Tim Horton. |
| |
| Return nil if the color is invalid, to remove the color from the layer's |
| border or background. |
| |
| * Shared/mac/RemoteLayerTreePropertyApplier.mm: |
| (WebKit::cgColorFromColor): |
| |
| 2014-12-11 Gavin Barraclough <barraclough@apple.com> |
| |
| Track pages preventing suppression in WebProcessProxy using RefCounter |
| https://bugs.webkit.org/show_bug.cgi?id=139108 |
| |
| Reviewed by Benjamin Poulain. |
| |
| The networking process is allowed to app nap if all web pages are also currently in app nap. |
| In order to detect whether any page in any process currently requires the networking process |
| to be active we: |
| - maintain hash sets in every WebProcessProxy of pages that are okay with suppression. |
| - if anything changes, the WebContext iterates every WebProcessProxy to recompute state. |
| |
| This is all crazy - all we actually need is a simple count of the number of pages that need |
| to prevent the networking process from entering app nap. This patch gets us half way there - |
| replace the HashSet with a RefCounter. Next step will be to hoist the RefCounters from the |
| process proxies up to the context to do away with the iteration. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| - make sure we prevent process suppression, per current viewstate & preferences. |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| - make sure we prevent process suppression, per viewstate change. |
| (WebKit::WebPageProxy::updateProccessSuppressionState): |
| - recompute whether we need to prevent process suppression. |
| (WebKit::WebPageProxy::preferencesDidChange): |
| - when preferences change process supression may be disabled. |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| - we need to drop the old ref, to allow a new one to be taken when we reattach. |
| (WebKit::WebPageProxy::isProcessSuppressible): Deleted. |
| - moreged into updateProccessSuppressionState. |
| * UIProcess/WebPageProxy.h: |
| - added m_preventProcessSuppression. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| - initialize m_pagesPreventingSuppression |
| (WebKit::WebProcessProxy::createWebPage): |
| - moved to WebPageProxy::WebPageProxy |
| (WebKit::WebProcessProxy::addExistingWebPage): |
| - moved to WebPageProxy::reattachToWebProcess |
| (WebKit::WebProcessProxy::removeWebPage): |
| - now implicit; when the page is destroyed the RefPtr will release. |
| (WebKit::WebProcessProxy::pageSuppressibilityChanged): Deleted. |
| - moved to WebPageProxy::dispatchViewStateChange. |
| (WebKit::WebProcessProxy::pagePreferencesChanged): Deleted. |
| - moved to WebPageProxy::preferencesDidChange. |
| * UIProcess/WebProcessProxy.h: |
| (WebKit::WebProcessProxy::preventProcessSuppressionForPage): |
| - reference count m_pagesPreventingSuppression |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::WebProcessProxy::allPagesAreProcessSuppressible): |
| - converted to use m_pagesPreventingSuppression. |
| - removed guard that meant processes with no pages would keep the networking |
| process from entering app nap, which made no sense. |
| |
| 2014-12-11 Anders Carlsson <andersca@apple.com> |
| |
| Temporarily use WebCore session storage for transient local storage |
| https://bugs.webkit.org/show_bug.cgi?id=139574 |
| |
| Reviewed by Dan Bernstein. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| Change the header guard so it won't conflict with StorageNamespaceImpl.h in WebCore. |
| |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: |
| (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace): |
| Use the WebCore session storage for now, to avoid crashes. |
| |
| 2014-12-11 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r177081. |
| https://bugs.webkit.org/show_bug.cgi?id=139569 |
| |
| broke iOS video playback (Requested by eric_carlson on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "Fix iOS builders for 8.0" |
| https://bugs.webkit.org/show_bug.cgi?id=139495 |
| http://trac.webkit.org/changeset/177081 |
| |
| 2014-12-11 Beth Dakin <bdakin@apple.com> |
| |
| WK2: Need new SPI for Webkit clients to override default immediate action |
| https://bugs.webkit.org/show_bug.cgi?id=139564 |
| -and corresponding- |
| rdar://problem/19225448 |
| |
| Reviewed by Tim Horton. |
| |
| New SPI _immediateActionAnimationControllerForHitTestResult:withType:userData: |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _immediateActionAnimationControllerForHitTestResult:withType:userData:]): |
| |
| Keep at ivar for the userData so that it can be passed to the new SPI. |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController didPerformActionMenuHitTest:userData:]): |
| |
| Always give the SPI a chance to override the animationController. |
| (-[WKImmediateActionController _updateImmediateActionItem]): |
| |
| Need to mark WKImmediateActionTypes.h as Private. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-11 Timothy Horton <timothy_horton@apple.com> |
| |
| Move the preview popover to WebImmediateActionController |
| https://bugs.webkit.org/show_bug.cgi?id=139563 |
| <rdar://problem/19208291> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| Remove an unnecessary forward declaration. |
| |
| * UIProcess/mac/WKImmediateActionController.mm: |
| (-[WKImmediateActionController willDestroyView:]): |
| Clear the immediate action recognizer when the view goes away. |
| |
| 2014-12-11 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| |
| 2014-12-11 Timothy Horton <timothy_horton@apple.com> |
| |
| Move the preview popover to WKImmediateActionController |
| https://bugs.webkit.org/show_bug.cgi?id=139560 |
| <rdar://problem/19208291> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/API/c/WKImmediateActionTypes.h: |
| Add a link preview type. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| Pass the gesture recognizer to the WKImmediateActionController. |
| |
| (-[WKView _setPreviewTitle:]): |
| Forward preview title changes to the WKImmediateActionController, |
| because that's where the preview popover lives now. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| Move WKPagePreviewViewController into its own file. |
| Move page preview popover related code to WKImmediateActionController. |
| |
| * UIProcess/mac/WKImmediateActionController.h: |
| * UIProcess/mac/WKImmediateActionController.mm: |
| Compare the gesture recognizers directly instead of their views, for accuracy. |
| Move page preview popover related code in from WKActionMenuController. |
| Some of this should eventually move to WKPagePreviewViewController, but |
| for now for ease of transition we will move it here. |
| |
| * UIProcess/mac/WKPagePreviewViewController.h: Added. |
| * UIProcess/mac/WKPagePreviewViewController.mm: Added. |
| * WebKit2.xcodeproj/project.pbxproj: |
| Move WKPagePreviewViewController into its own file. |
| |
| 2014-12-11 Tomas Popela <tpopela@redhat.com> |
| |
| [GTK] Minor fixes for documentation and translations |
| https://bugs.webkit.org/show_bug.cgi?id=139450 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| * UIProcess/API/gtk/WebKitNavigationAction.cpp: |
| Fix typo in documentation. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_class_init): |
| Mark zoom-level and is-loading properties names for translation and |
| when touching them also fix the indentation style. |
| |
| 2014-12-11 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Inspector Process crash when navigating to non-inspectable page |
| https://bugs.webkit.org/show_bug.cgi?id=139508 |
| |
| Reviewed by Zalan Bujtas. |
| |
| The Inspector Process can still receive InspectorFrontendHost messages |
| even though the backend connection has been invalidated and cleared. |
| Only send messages if the connection exists. |
| |
| * WebProcess/WebPage/WebInspectorUI.cpp: |
| (WebKit::WebInspectorUI::openInNewTab): |
| (WebKit::WebInspectorUI::sendMessageToBackend): |
| |
| 2014-12-11 Yongjun Zhang <yongjun_zhang@apple.com> |
| |
| WebKit2 should expose FirstVisuallyNonEmptyLayout rendering milestone. |
| https://bugs.webkit.org/show_bug.cgi?id=139514 |
| |
| Expose DidFirstVisuallyNonEmptyLayout so that WebKit2 client can listen to visually non-empty layout rendering event. |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/API/Cocoa/WKRenderingProgressEvents.h: Add WKRenderingProgressEventFirstVisuallyNonEmptyLayout to WKRenderingProgressEvents. |
| * Shared/API/Cocoa/WKRenderingProgressEventsInternal.h: Also map kWKDidFirstVisuallyNonEmptyLayout to WKRenderingProgressEventFirstVisuallyNonEmptyLayout. |
| (renderingProgressEvents): |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (layoutMilestones): Map _WKRenderingProgressEventFirstVisuallyNonEmptyLayout to WebCore::DidFirstVisuallyNonEmptyLayout. |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| * UIProcess/Cocoa/NavigationState.mm: Add _WKRenderingProgressEventFirstVisuallyNonEmptyLayout to _WKRenderingProgressEventFirstLayout. |
| (WebKit::renderingProgressEvents): Map WebCore::DidFirstVisuallyNonEmptyLayout to _WKRenderingProgressEventFirstVisuallyNonEmptyLayout. |
| |
| 2014-12-11 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Disable backspace key navigation |
| https://bugs.webkit.org/show_bug.cgi?id=136231 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): remove handling |
| for backspace and <shift>backspace key combinations. |
| |
| 2014-12-11 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] String changes for the HTTP authentication dialog |
| https://bugs.webkit.org/show_bug.cgi?id=136782 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp: |
| (webkitAuthenticationDialogInitialize): Add a title to the dialog, add |
| some missing mnemonics, and tweak a few strings. |
| |
| 2014-12-09 Jeremy Jones <jeremyj@apple.com> |
| |
| Restore interface state when stopping optimized fullscreen. |
| https://bugs.webkit.org/show_bug.cgi?id=139465 |
| |
| Reviewed by Simon Fraser. |
| |
| Implement fullscreenMayReturnToInline() to request the client application show the corresponding tab. |
| |
| * UIProcess/API/APIUIClient.h: |
| (API::UIClient::fullscreenMayReturnToInline): added |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: add declaration |
| * UIProcess/Cocoa/UIDelegate.h: add declaration |
| * UIProcess/Cocoa/UIDelegate.mm: |
| (WebKit::UIDelegate::setDelegate): check for responds to selector |
| (WebKit::UIDelegate::UIClient::fullscreenMayReturnToInline): added |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::fullscreenMayReturnToInline): added. |
| * UIProcess/WebPageProxy.h: add declaration |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: add declaration |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::fullscreenMayReturnToInline): show the tab. |
| |
| 2014-12-11 Alexey Proskuryakov <ap@apple.com> |
| |
| REGRESSION (Async Text Input): Text input method state is not reset when reloading a page |
| https://bugs.webkit.org/show_bug.cgi?id=139504 |
| rdar://problem/19034674 |
| |
| Reviewed by Enrica Casucci. |
| |
| WebKit2 used to look at EditorState changes and guess when to cancel a composition. |
| This was quite unreliable, and needlessly complicated - WebCore knows when it decides |
| to destroy a composition, so it now explicitly notifies the clients. |
| |
| * UIProcess/API/mac/WKView.mm: (-[WKView _processDidExit]): Address crashing case too. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::discardedComposition): |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeSelection): |
| (WebKit::WebPage::discardedComposition): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Get rid of the storage strategy |
| https://bugs.webkit.org/show_bug.cgi?id=139519 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkProcessPlatformStrategies.cpp: |
| (WebKit::NetworkProcessPlatformStrategies::createStorageStrategy): Deleted. |
| * NetworkProcess/NetworkProcessPlatformStrategies.h: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createStorageStrategy): Deleted. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2014-12-11 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] WebKitNotification is defined twice |
| https://bugs.webkit.org/show_bug.cgi?id=139538 |
| |
| Reviewed by Martin Robinson. |
| |
| Remove the typedef from WebKitForwardDeclarations.h since it's |
| already in WebKitNotification.h and include WebKitNotification.h |
| in WebKitWebView.h. |
| |
| * UIProcess/API/gtk/WebKitForwardDeclarations.h: |
| * UIProcess/API/gtk/WebKitWebView.h: |
| |
| 2014-12-11 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Move click counter logic back to WebKitWebViewBase |
| https://bugs.webkit.org/show_bug.cgi?id=137685 |
| |
| Reviewed by Martin Robinson. |
| |
| It was moved to a shared class in platform to be used by both |
| WebKit1 and WebKit2, but it's currently only used by WebKitWebViewBase. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (ClickCounter::reset): |
| (ClickCounter::currentClickCountForGdkButtonEvent): |
| (webkitWebViewBaseButtonPressEvent): |
| |
| 2014-12-11 Carlos Alberto Lopez Perez <clopez@igalia.com> |
| |
| [SOUP] [GTK] warning: unused parameter at NetworkProcessSoup.cpp after r177056. |
| https://bugs.webkit.org/show_bug.cgi?id=139534 |
| |
| Reviewed by Martin Robinson. |
| |
| * NetworkProcess/soup/NetworkProcessSoup.cpp: |
| (WebKit::NetworkProcess::clearDiskCache): Comment the parameter names. |
| |
| 2014-12-11 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Timers might never be fired during animations |
| https://bugs.webkit.org/show_bug.cgi?id=139062 |
| |
| Reviewed by Martin Robinson. |
| |
| This can happen in old/slow machines where the time to render |
| layers might take more than 0.016. Since the layer flush timer is |
| using a higher priority than WebCore timers, when scheduling all |
| (or several) layer flushes immediately, no other sources with |
| lower priority are dispatched in the main loop. We could detect if |
| we are scheduling layer flushes immediately for too long (100ms) |
| and schedule the next flush after a delay to ensure other sources |
| with lower priority have a chance to be dispatched. Also use a |
| lower priority, GDK_PRIORITY_EVENTS is too high, so we use |
| GDK_PRIORITY_REDRAW - 1 to ensure it's higher than WebCore timers. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::LayerTreeHostGtk): Rename |
| m_lastFlushTime as m_lastImmediateFlushTime. |
| (WebKit::LayerTreeHostGtk::layerFlushTimerFired): Save the |
| fireTime before calling flushAndRenderLayers() and compute the |
| next flush delay based on the elapsed time using monotonically |
| increasing time instead of current time. Use the target delay |
| as next flush delay if we have scheduled flushes immediately for |
| more than 100ms. |
| (WebKit::LayerTreeHostGtk::flushAndRenderLayers): Do not save the |
| layer flush time here, it's done in layerFlushTimerFired() so that |
| we don't need to keep it as a member. |
| (WebKit::LayerTreeHostGtk::scheduleLayerFlush): Use global |
| layerFlushTimerPriority. |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: |
| |
| 2014-12-10 Jaehun Lim <ljaehun.lim@samsung.com> |
| |
| [CMake] Fix build after WebStorageNamespaceProvider |
| |
| Unreviewed, fix build. |
| |
| * CMakeLists.txt: Add WebStorageNamespaceProvider.cpp to the source list. |
| |
| 2014-12-10 Sanghyup Lee <sh53.lee@samsung.com> |
| |
| Build fix for EFL and GTK ports since r177104 |
| https://bugs.webkit.org/show_bug.cgi?id=139513 |
| |
| Reviewed by Tim Horton. |
| |
| Moved WebPageProxy::installViewStateChangeCompletionHandler in PLATFORM(MAC) macro. |
| |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Switch WebKit2 over to using the storage namespace provider |
| https://bugs.webkit.org/show_bug.cgi?id=139509 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::createLocalStorageNamespace): |
| (WebKit::StorageNamespaceImpl::~StorageNamespaceImpl): |
| (WebKit::localStorageNamespaceMap): Deleted. |
| Get rid of the storage namespace map - we have a map inside WebStorageNamespaceProvider now. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createStorageStrategy): |
| (WebKit::WebPlatformStrategies::populatePluginCache): Deleted. |
| (WebKit::WebPlatformStrategies::localStorageNamespace): Deleted. |
| (WebKit::WebPlatformStrategies::transientLocalStorageNamespace): Deleted. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| Get rid of the storage strategy. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Set a storage namespace provider. |
| |
| 2014-12-10 Beth Dakin <bdakin@apple.com> |
| |
| Follow-up build fix. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| 2014-12-09 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| Null dereference performing a "TapAndAHalf" gesture in Google search field |
| |
| <https://bugs.webkit.org/show_bug.cgi?id=139506> |
| <rdar://problem/19028828> |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::selectWithGesture): |
| Add a null check in the case that there is no word range for the |
| current position. |
| |
| 2014-12-10 Beth Dakin <bdakin@apple.com> |
| |
| Speculative build fix. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| 2014-12-10 Beth Dakin <bdakin@apple.com> |
| |
| WK2: Add initial support for immediate actions |
| https://bugs.webkit.org/show_bug.cgi?id=139511 |
| |
| Reviewed by Tim Horton. |
| |
| New enum to track immediate action types as we add them. |
| * Shared/API/c/WKImmediateActionTypes.h: Added. |
| |
| Create an NSImmediateActionGestureRecognizer if possible and a controller. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| (-[WKView _didPerformActionMenuHitTest:userData:]): |
| |
| This basic implementation of the controller will use the delegate methods to |
| perform an ActionMenuHitTest when relevant. Future patches will patch |
| _updateImmediateActionItem to use the hit test result to determine if there is any |
| immediate action that should be taken. |
| * UIProcess/mac/WKImmediateActionController.h: Added. |
| * UIProcess/mac/WKImmediateActionController.mm: Added. |
| (-[WKImmediateActionController willDestroyView:]): |
| (-[WKImmediateActionController _clearImmediateActionState]): |
| (-[WKImmediateActionController didPerformActionMenuHitTest:userData:]): |
| |
| Does much of the work done in Action Menu’s prepareForMenu. |
| (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]): |
| |
| Does much of the work done in Action Menu’s menuNeedsUpdate. |
| (-[WKImmediateActionController immediateActionRecognizerWillBeginAnimation:]): |
| |
| Does much of the work done in Action Menu’s didCloseMenu. |
| (-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]): |
| |
| Does much of the work done in Action Menu’s willOpenMenu. |
| (-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]): |
| |
| To be filled in. |
| (-[WKImmediateActionController _updateImmediateActionItem]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-10 Timothy Horton <timothy_horton@apple.com> |
| |
| Should have copy and paste items in all text menus |
| https://bugs.webkit.org/show_bug.cgi?id=139510 |
| <rdar://problem/19198388> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForText]): |
| Add a disabled paste menu item into the read-only text menu. |
| |
| (-[WKActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]): |
| Add a disabled copy menu item into the editable whitespace text menu. |
| |
| 2014-12-10 Martin Hock <mhock@apple.com> |
| |
| [iOS] Add setting to ignore viewport scaling constraints |
| https://bugs.webkit.org/show_bug.cgi?id=139466 |
| <rdar://problem/19200328> |
| |
| Reviewed by Benjamin Poulain. |
| |
| * Shared/WebPreferencesDefinitions.h: Add ignoreViewportScalingConstraints preference. |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetIgnoreViewportScalingConstraints): |
| (WKPreferencesGetIgnoreViewportScalingConstraints): |
| * UIProcess/API/C/WKPreferencesRef.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2014-12-10 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _targetWindowForMovePreparation]): |
| |
| 2014-12-10 Timothy Horton <timothy_horton@apple.com> |
| |
| Provide SPI to asynchronously move a WKView into a window and know when it has painted |
| https://bugs.webkit.org/show_bug.cgi?id=139460 |
| <rdar://problem/19135389> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Add _prepareForMoveToWindow:withCompletionHandler:, which internally |
| goes through the motions of being parented in that window and calls |
| the completion handler once painting is done and the view is ready |
| to be displayed (upon which we expect the view to actually move into the window). |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewWillMoveToWindow:]): |
| If we currently have a _targetWindowForMovePreparation (and are |
| pretending to be in that window), avoid performing viewWillMoveToWindow: |
| for a different window. |
| |
| (-[WKView viewDidMoveToWindow]): |
| (-[WKView doWindowDidChangeScreen]): |
| (-[WKView _intrinsicDeviceScaleFactor]): |
| (-[WKView _colorSpace]): |
| (-[WKView _targetWindowForMovePreparation]): |
| If we have a _targetWindowForMovePreparation, use its properties instead |
| of self.window's. |
| |
| (-[WKView _prepareForMoveToWindow:withCompletionHandler:]): |
| Simulate a move into the target window, but defer sending the view state update. |
| Then, send the view state update after registering the completion handler. |
| |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| Rename m_viewStateChangeWantsReply to m_viewStateChangeWantsSynchronousReply. |
| |
| (WebKit::WebPageProxy::installViewStateChangeCompletionHandler): |
| Added. Allow installing a block that will be called the next time |
| we get a didUpdateViewState back from the WebProcess after pushing the |
| current view state changes. |
| |
| (WebKit::WebPageProxy::viewStateDidChange): |
| Adapt to the aforementioned rename. |
| |
| (WebKit::WebPageProxy::dispatchViewStateChange): |
| Adapt to the aforementioned rename. |
| Send the view state change callback IDs along with SetViewState. |
| |
| (WebKit::WebPageProxy::updateViewState): |
| Adapt to the aforementioned rename. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::activeWindow): |
| (WebKit::PageClientImpl::isViewWindowActive): |
| (WebKit::PageClientImpl::isViewVisible): |
| (WebKit::PageClientImpl::isViewVisibleOrOccluded): |
| (WebKit::PageClientImpl::isViewInWindow): |
| (WebKit::PageClientImpl::viewLayerHostingMode): |
| If we have a _targetWindowForMovePreparation, use its properties instead |
| of the WKView's window's. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::viewStateDidChange): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::reinitializeWebPage): |
| (WebKit::WebPage::setViewState): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::viewStateDidChange): |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange): |
| Push the callback IDs to the WebProcess, and accumulate them in TiledCoreAnimationDrawingArea. |
| |
| (WebKit::TiledCoreAnimationDrawingArea::didUpdateViewStateTimerFired): |
| Call all of the callbacks after one runloop cycle, just like DidUpdateViewState. |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Add session storage handling to StorageNamespaceProvider |
| https://bugs.webkit.org/show_bug.cgi?id=139507 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::createSessionStorageNamespace): |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: |
| (WebKit::WebStorageNamespaceProvider::createSessionStorageNamespace): |
| * WebProcess/Storage/WebStorageNamespaceProvider.h: |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Implement the rest of the transient local storage namespace code |
| https://bugs.webkit.org/show_bug.cgi?id=139505 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::TransientLocalStorageNamespace::create): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::~TransientLocalStorageNamespace): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::clearStorageAreasMatchingOrigin): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::clearAllStorageAreas): |
| (WebKit::StorageManager::TransientLocalStorageNamespace::TransientLocalStorageNamespace): |
| Introduce a new TransientLocalStorageNamespace that's just a glorified SecurityOrigin -> StorageArea HashMap. |
| |
| (WebKit::StorageManager::StorageArea::create): |
| Change the return type to RefPtr. |
| |
| (WebKit::StorageManager::deleteEntriesForOrigin): |
| (WebKit::StorageManager::deleteAllEntries): |
| (WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince): |
| Use lambdas instead of bind. Delete the transient local storage as well. |
| |
| (WebKit::StorageManager::createTransientLocalStorageMap): |
| Get a transient local storage namespace and ask it for a storage area. |
| |
| (WebKit::StorageManager::getOrCreateTransientLocalStorageNamespace): |
| Look up the namespace from the map and create one if it doesn't exist. |
| |
| (WebKit::StorageManager::deleteEntriesForOriginInternal): Deleted. |
| (WebKit::StorageManager::deleteAllEntriesInternal): Deleted. |
| |
| * UIProcess/Storage/StorageManager.h: |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Begin fixing transient local storage handling |
| https://bugs.webkit.org/show_bug.cgi?id=139503 |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::createTransientLocalStorageMap): |
| * UIProcess/Storage/StorageManager.h: |
| Add empty stub implementation of createTransientLocalStorageMap. |
| |
| * UIProcess/Storage/StorageManager.messages.in: |
| Add CreateTransientLocalStorageMap message. |
| |
| * WebProcess/Storage/StorageAreaMap.cpp: |
| (WebKit::StorageAreaMap::StorageAreaMap): |
| If we have a local storage namespace with a non-null top-level origin, create a |
| transient local storage map. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::createLocalStorageNamespace): |
| Pass a null top-level origin to the StorageNamespaceImpl constructor. |
| |
| (WebKit::StorageNamespaceImpl::createTransientLocalStorageNamespace): |
| Create a new StorageNamespaceImpl, passing the top-level origin to the constructor. |
| |
| (WebKit::StorageNamespaceImpl::createSessionStorageNamespace): |
| Pass a null top-level origin to the StorageNamespaceImpl constructor. |
| |
| (WebKit::StorageNamespaceImpl::StorageNamespaceImpl): |
| Add a top-level origin parameter. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| (WebKit::StorageNamespaceImpl::topLevelOrigin): |
| Add top-level origin member and getter. |
| |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: |
| (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace): |
| Call StorageNamespaceImpl::createTransientLocalStorageNamespace. |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Implement WebStorageNamespaceProvider::createLocalStorageNamespace |
| https://bugs.webkit.org/show_bug.cgi?id=139498 |
| |
| Reviewed by Beth Dakin. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.cpp: |
| (WebKit::StorageNamespaceImpl::createLocalStorageNamespace): |
| Add a new overload that takes an identifier + quota. Have the old overload call the new one. |
| |
| * WebProcess/Storage/StorageNamespaceImpl.h: |
| Add new member. |
| |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: |
| (WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace): |
| Call StorageNamespaceImpl::createLocalStorageNamespace. |
| |
| 2014-12-10 Anders Carlsson <andersca@apple.com> |
| |
| Add a stubbed out WebStorageNamespaceProvider class to WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139497 |
| |
| Reviewed by Beth Dakin. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Storage/WebStorageNamespaceProvider.cpp: Added. |
| (WebKit::storageNamespaceProviders): |
| (WebKit::WebStorageNamespaceProvider::getOrCreate): |
| (WebKit::WebStorageNamespaceProvider::WebStorageNamespaceProvider): |
| (WebKit::WebStorageNamespaceProvider::~WebStorageNamespaceProvider): |
| (WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace): |
| (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace): |
| * WebProcess/Storage/WebStorageNamespaceProvider.h: Added. |
| |
| 2014-12-10 Enrica Casucci <enrica@apple.com> |
| |
| Fix iOS builders for 8.0 |
| https://bugs.webkit.org/show_bug.cgi?id=139495 |
| |
| Reviewed by Eric Carlson. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _mayAutomaticallyShowVideoOptimized]): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| |
| 2014-12-10 Julien Isorce <j.isorce@samsung.com> |
| |
| [GTK] Enable depth 32 for the RedirectedXCompositeWindow |
| https://bugs.webkit.org/show_bug.cgi?id=139028 |
| |
| On gtk/X11, the layout compositing is done in the web process. |
| If one needs to handle alpha with the rest of the application |
| then it is not enough to make to browser's window as RGBA. |
| The shared redirected window needs to be RGBA as well. |
| (The shared X composite window between UIProcess and WebProcess). |
| |
| This allows an end-to-end RGBA solution when the application |
| wants to interact with the alpha channel at compositing time. |
| For example for transparent Web UI. |
| |
| Reviewed by Martin Robinson. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseRealize): |
| (webkitWebViewBaseConstructed): |
| (webkitWebViewRenderAcceleratedCompositingResults): |
| (webkitWebViewBaseUpdatePreferences): |
| (webkitWebViewBaseCreateWebPage): |
| * UIProcess/gtk/RedirectedXCompositeWindow.cpp: |
| (WebKit::RedirectedXCompositeWindow::create): |
| (WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow): |
| * UIProcess/gtk/RedirectedXCompositeWindow.h: |
| |
| 2014-12-09 Claudio Saavedra <csaavedra@igalia.com> and Gustavo Noronha Silva <gustavo.noronha@collabora.com> |
| |
| [GTK][WK2] Add HTML5 Notifications support |
| https://bugs.webkit.org/show_bug.cgi?id=61140 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * PlatformGTK.cmake: add new files to the build. |
| * UIProcess/API/gtk/WebKitForwardDeclarations.h: |
| * UIProcess/API/gtk/WebKitNotification.cpp: Added. New GObject used to expose information about |
| the notification to the API. |
| (webkitNotificationGetProperty): |
| (webkit_notification_class_init): |
| (webkitNotificationCreate): |
| (webkit_notification_get_id): |
| (webkit_notification_get_title): |
| (webkit_notification_get_body): |
| * UIProcess/API/gtk/WebKitNotification.h: Added. |
| * UIProcess/API/gtk/WebKitNotificationPermissionRequest.cpp: Added. Permission request object |
| for notifications. |
| (webkitNotificationPermissionRequestAllow): |
| (webkitNotificationPermissionRequestDeny): |
| (webkit_permission_request_interface_init): |
| (webkitNotificationPermissionRequestDispose): |
| (webkit_notification_permission_request_class_init): |
| (webkitNotificationPermissionRequestCreate): |
| * UIProcess/API/gtk/WebKitNotificationPermissionRequest.h: Added. |
| * UIProcess/API/gtk/WebKitNotificationPermissionRequestPrivate.h: Added. |
| * UIProcess/API/gtk/WebKitNotificationPrivate.h: Added. |
| * UIProcess/API/gtk/WebKitNotificationProvider.cpp: Added. Notification provider that emits signals. |
| The C API allows overriding the notification providers and managers for customizing the handling of |
| notifications. We decided to go for a single manager and a single provider which provide more idiomatic |
| GObject API - signals. |
| (toNotificationProvider): |
| (showCallback): |
| (cancelCallback): |
| (WebKitNotificationProvider::~WebKitNotificationProvider): |
| (WebKitNotificationProvider::create): |
| (WebKitNotificationProvider::WebKitNotificationProvider): |
| (WebKitNotificationProvider::show): |
| (WebKitNotificationProvider::cancel): |
| * UIProcess/API/gtk/WebKitNotificationProvider.h: Added. |
| * UIProcess/API/gtk/WebKitUIClient.cpp: implemented decidePolicyForNotificationPermissionRequest. |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextConstructed): initialize the notification provider. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewShowNotification): default implementation for showing the notification, currently |
| using GNotification, about to be ported to libnotify. |
| (webkit_web_view_class_init): set the default implementation for the show-notification signal. |
| (webkitWebViewEmitCloseNotification): emit the close-notification signal. |
| (webkitWebViewEmitShowNotification): emit the show-notification signal. |
| * UIProcess/API/gtk/WebKitWebView.h: |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: list new objects and methods. |
| * UIProcess/API/gtk/webkit2.h: include new headers. |
| |
| 2014-12-10 Grzegorz Czajkowski <g.czajkowski@samsung.com> |
| |
| [EFL][[WK2] test_ewk2_text_checker is failed |
| https://bugs.webkit.org/show_bug.cgi?id=132982 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Insert misspelled word to the input field using execCommand instead of |
| input.value attribute change which stops spell check, tracked by |
| https://bugs.webkit.org/show_bug.cgi?id=139473. |
| |
| Since text checker API tests do not verify spellchecker itself (it's being |
| tested by LayoutTests/editing/spelling) but rather opportunity for overriding |
| its functionality this patch unskips those tests in order to API coverage. |
| |
| * PlatformEfl.cmake: |
| Unskip test_ewk2_text_checker |
| |
| * UIProcess/API/efl/tests/resources/spelling_test.html: |
| Use document.execCommand("InsertText", false, "aa ") instead of |
| input.value = "aa " to trigger spellchecker. |
| |
| 2014-12-10 Carlos Alberto Lopez Perez <clopez@igalia.com> |
| |
| REGRESSION(r177038): [SOUP] [GTK] Debug build broken |
| https://bugs.webkit.org/show_bug.cgi?id=139475 |
| |
| Reviewed by Martin Robinson. |
| |
| * NetworkProcess/soup/NetworkProcessSoup.cpp: |
| (WebKit::NetworkProcess::clearCacheForAllOrigins): Call clearDiskCache(). |
| (WebKit::NetworkProcess::clearDiskCache): Implement this for SOUP. |
| SoupCache don't seems to have API for clearing a part of the cache, |
| so add a FIXME note regarding that. |
| |
| 2014-12-09 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r177032. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-09 Alexey Proskuryakov <ap@apple.com> |
| |
| Kotoeri sometimes doesn't correctly process the first chanaracter in a text field in Safari 7.1 or 6.2 |
| https://bugs.webkit.org/show_bug.cgi?id=139459 |
| rdar://problem/19017432 |
| rdar://problem/19036869 |
| |
| Reviewed by Enrica Casucci. |
| |
| When inputContext changes, notify the application. We already did this when the context |
| changed due to plug-ins, and this used to sort of make it work on on yahoo.co.jp, |
| which has plug-ins. But that was quite unreliable, as evidenced by the reproducible |
| cases where we didn't use an input method for the first keypress. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::editorStateChanged): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::notifyApplicationAboutInputContextChange): |
| |
| 2014-12-09 Jeremy Jones <jeremyj@apple.com> |
| |
| Enable automatic optimized fullscreen mode. |
| https://bugs.webkit.org/show_bug.cgi?id=139437 |
| |
| Reviewed by Simon Fraser. |
| |
| Anticipate the automatic transition to optimized video fullscreen mode when deciding if the page is visible. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _isShowingVideoOptimized]): Renamed. Test precondition. |
| (-[WKWebView _mayAutomaticallyShowVideoOptimized]): Added. |
| (-[WKWebView _isPlayingFullscreenOptimizedVideo]): Deleted. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::isViewVisible): Test for optimized modes even when not in a window. |
| |
| 2014-12-09 Anders Carlsson <andersca@apple.com> |
| |
| Add support for clearing the disk cache |
| https://bugs.webkit.org/show_bug.cgi?id=139458 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::deleteWebsiteData): |
| If we're asked to clear the disk cache, do so. Clearing the cache is asynchronous, |
| so we make sure not to call the completion handler right away in that case. |
| |
| * NetworkProcess/NetworkProcess.h: |
| Add clearDiskCache member function. |
| |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::clearDiskCache): |
| Clear the disk cache, then call the completion handler. |
| |
| * NetworkProcess/mac/NetworkProcessMac.mm: |
| (WebKit::NetworkProcess::clearCacheForAllOrigins): |
| Call the new clearDiskCache function. |
| |
| * Shared/WebsiteData/WebsiteDataTypes.h: |
| Add WebsiteDataTypeDiskCache. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (toWebsiteDataTypes): |
| Handle WKWebsiteDataTypeDiskCache. |
| |
| 2014-12-09 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Delete Node::boundingBox() |
| https://bugs.webkit.org/show_bug.cgi?id=139333 |
| |
| Reviewed by Zalan Bujtas. |
| |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates): |
| Use RenderObject::absoluteBoundingBoxRect(). |
| * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: |
| (WebKit::WebPage::findZoomableAreaForPoint): Use |
| RenderObject::absoluteBoundingBoxRect(). |
| |
| 2014-12-09 Chris Dumez <cdumez@apple.com> |
| |
| [WK2] Crash when answering notification permission request after navigating |
| https://bugs.webkit.org/show_bug.cgi?id=139429 |
| <rdar://problem/18921122> |
| |
| Reviewed by Andreas Kling. |
| |
| When requesting a notification permission, navigating away and then |
| answering the permission, WebKit2 would crash. This is because upon |
| navigating, the request is cancelled and removed from the HashMaps |
| in NotificationPermissionRequestManager. When |
| didReceiveNotificationPermissionDecision() is later called, it would |
| look for the request identifier in m_idToOriginMap HashMap. As the |
| request was cancelled, HashMap::take() call would return null for |
| the SecurityOrigin*. This security origin pointer is then removed |
| from m_originToIDMap, but the code was failing to do a null check |
| first. Calling HashMap::remove(nullptr) would then crash. |
| |
| This patch adds the missing null check and a layout test to cover |
| this case. |
| |
| Test: http/tests/notifications/legacy/notification-request-permission-then-navigate.html |
| |
| |
| * WebProcess/Notifications/NotificationPermissionRequestManager.cpp: |
| (WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision): |
| |
| 2014-12-09 Anders Carlsson <andersca@apple.com> |
| |
| Implement clearing of cookies |
| https://bugs.webkit.org/show_bug.cgi?id=139455 |
| |
| Reviewed by Andreas Kling. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::deleteWebsiteData): |
| Handle deleting cookies by finding the right network storage session and deleting the cookies from it. |
| Then, send a DidDeleteWebsiteData message back. |
| |
| * NetworkProcess/NetworkProcess.h: |
| Add new members. |
| |
| * NetworkProcess/NetworkProcess.messages.in: |
| Add new DeleteWebsiteData message. |
| |
| * Shared/WebsiteData/WebsiteDataTypes.h: |
| Move the website data types enum to its own file so it can be shared. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (toWebsiteDataTypes): |
| Update now that WebsiteDataTypes is its own enum. |
| |
| (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]): |
| removeDataModifiedSince was renamed to removeData. |
| |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::generateCallbackID): |
| Helper function to create a callback ID. |
| |
| (WebKit::NetworkProcessProxy::~NetworkProcessProxy): |
| Assert that we have no pending callbacks. |
| |
| (WebKit::NetworkProcessProxy::deleteWebsiteData): |
| Put the completion handler in our map and message the network process. |
| |
| (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch): |
| Call all completion handlers. |
| |
| (WebKit::NetworkProcessProxy::didDeleteWebsiteData): |
| Grab the completion handler and call it. |
| |
| * UIProcess/Network/NetworkProcessProxy.h: |
| Add new members. |
| |
| * UIProcess/Network/NetworkProcessProxy.messages.in: |
| Add DidDeleteWebsiteData callback. |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::computeNetworkProcessAccessType): |
| Helper function that computes the type of process access we'd need for the given mask of |
| website data types. |
| |
| (WebKit::WebsiteDataStore::removeData): |
| Gather all the network processes and message them. Use a callback aggregator object to track callbacks |
| so we'll call the completion handler once all callbacks have been invoked. |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| Move WebsiteDataTypes to its own file. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| 2014-12-09 Anders Carlsson <andersca@apple.com> |
| |
| Give WebsiteDataStore a unique ID |
| https://bugs.webkit.org/show_bug.cgi?id=139448 |
| |
| Reviewed by Andreas Kling. |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::generateIdentifier): |
| (WebKit::WebsiteDataStore::WebsiteDataStore): |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| (WebKit::WebsiteDataStore::identifier): |
| |
| 2014-12-09 Anders Carlsson <andersca@apple.com> |
| |
| Build fix. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.h: |
| |
| 2014-12-09 Ting-Wei Lan <lantw44@gmail.com> |
| |
| [GTK] LDFLAGS is ignored when running g-ir-scanner |
| https://bugs.webkit.org/show_bug.cgi?id=138832 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| GTK+ requires libintl on FreeBSD because there is no gettext |
| implementation in FreeBSD libc. In order to link to libintl, which is |
| not located in the default search path of the linker, we need to add |
| the required path via the linker command line. However, LDFLAGS is |
| ignored when running g-ir-scanner starting from r167873, so we have |
| to manually pick required flags from CMAKE_SHARED_LINKER_FLAGS and |
| put them in correct order to prevent g-ir-scanner from linking to |
| the installed version of libraries. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-12-09 Jeremy Jones <jeremyj@apple.com> |
| |
| Enable activating optimized fullscreen mode from standard fulscreen mode. |
| https://bugs.webkit.org/show_bug.cgi?id=139137 |
| |
| Reviewed by Simon Fraser. |
| |
| Going from standard fullscreen mode to optimized fullscreen mode requires the ability to |
| update the fullscreen mode and a new standard-and-optimized-fullscreen mode. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _isPlayingFullscreenOptimizedVideo]): |
| Treat new standard-and-optimized as a kind of optimized. |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: IPC fullscreen mode changes |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: ditto |
| (WebKit::WebVideoFullscreenManagerProxy::fullscreenModeChanged): dito |
| * WebProcess/ios/WebVideoFullscreenManager.h: ditto |
| * WebProcess/ios/WebVideoFullscreenManager.messages.in: ditto |
| * WebProcess/ios/WebVideoFullscreenManager.mm: dito |
| (WebKit::WebVideoFullscreenManager::WebVideoFullscreenManager): ditto |
| (WebKit::WebVideoFullscreenManager::setFullscreenModeChanged): ditto |
| |
| 2014-12-08 Jaehun Lim <ljaehun.lim@samsung.com> |
| |
| [EFL] Use DependenciesEFL instead of Dependencies |
| |
| Unreviewed, fix simple typo. |
| |
| * PlatformEfl.cmake: |
| |
| 2014-12-08 Beth Dakin <bdakin@apple.com> |
| |
| Copy and Lookup menu items should be disabled when something is not copyable |
| https://bugs.webkit.org/show_bug.cgi?id=139423 |
| |
| Reviewed by Tim Horton. |
| |
| Add allowsCopy to the WebHitTestResult. |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::Data): |
| (WebKit::WebHitTestResult::Data::encode): |
| (WebKit::WebHitTestResult::Data::decode): |
| * Shared/WebHitTestResult.h: |
| (WebKit::WebHitTestResult::allowsCopy): |
| |
| Set autoenablesItems to NO. It’s messing with our ability to control the enable/ |
| disable state otherwise. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| Disable both lookup and copy when a WebHitTestResult does not allow copy. |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-12-08 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/18905383> [iOS] Crash due to null m_webPageProxyForBackForwardListForCurrentSwipe in ViewGestureController::endSwipeGesture |
| https://bugs.webkit.org/show_bug.cgi?id=138750 |
| |
| Reviewed by Tim Horton. |
| |
| The snapshot for the current gesture was being removed mid-gesture by the callback from |
| dispatchAfterEnsuringDrawing scheduled by the previous gesture. The fix is to ignore the |
| callback for a gesture if it is made after the snapshot for that gesture has already been |
| removed (which can happen as a result of the watchdog timer firing). |
| |
| * UIProcess/ios/ViewGestureControllerIOS.mm: |
| (WebKit::ViewGestureController::ViewGestureController): Initialize new member variable. |
| (WebKit::addLogEntry): Fixed the log message format. |
| (WebKit::ViewGestureController::endSwipeGesture): When dispatchAfterEnsuringDrawing() calls |
| us back, bail out if the gesture snapshot has already been removed. |
| (WebKit::ViewGestureController::removeSwipeSnapshot): Increment |
| m_gesturePendingSnapshotRemoval. |
| * UIProcess/mac/ViewGestureController.h: Added m_gesturePendingSnapshotRemoval member |
| variable. |
| |
| 2014-12-08 Anders Carlsson <andersca@apple.com> |
| |
| The website data store should know all its associated pages |
| https://bugs.webkit.org/show_bug.cgi?id=139411 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::close): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::~WebsiteDataStore): |
| (WebKit::WebsiteDataStore::addWebPage): |
| (WebKit::WebsiteDataStore::removeWebPage): |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| |
| 2014-12-08 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/18046692> [iOS] Safari crashes at -[_NSUndoStack popAndInvoke] when trying to undo typing on closed tab |
| https://bugs.webkit.org/show_bug.cgi?id=139408 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/ios/WKContentView.mm: |
| (-[WKContentView undoManager]): Override to initialize if necessary and return a unique undo |
| manager for this instance. This ensures that undoable operations for this webview don’t get |
| put in other undo managers, and matches UIWebView behavior. |
| |
| 2014-12-08 Chris Dumez <cdumez@apple.com> |
| |
| Revert r176293 & r176275 |
| |
| Unreviewed, revert r176293 & r176275 changing the Vector API to use unsigned type |
| instead of size_t. There is some disagreement regarding the long-term direction |
| of the API and we shouldn’t leave the API partly transitioned to unsigned type |
| while making a decision. |
| |
| * Platform/IPC/ArgumentCoders.h: |
| * Platform/IPC/DataReference.h: |
| |
| 2014-12-08 Anders Carlsson <andersca@apple.com> |
| |
| Make deleting all cookies after a given date a little more sane |
| https://bugs.webkit.org/show_bug.cgi?id=139409 |
| |
| Reviewed by Antti Koivisto. |
| |
| Change all the doubles to std::chrono::system_clock::time_points instead. |
| |
| * Platform/IPC/ArgumentCoders.cpp: |
| (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::encode): |
| (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::decode): |
| * Platform/IPC/ArgumentCoders.h: |
| * Scripts/webkit/messages.py: |
| (headers_for_type): |
| * UIProcess/API/C/WKCookieManager.cpp: |
| (WKCookieManagerDeleteAllCookiesModifiedAfterDate): |
| * UIProcess/API/C/WKCookieManager.h: |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedSince): |
| (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedAfterDate): Deleted. |
| * UIProcess/WebCookieManagerProxy.h: |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::deleteAllCookiesModifiedSince): |
| (WebKit::WebCookieManager::deleteAllCookiesModifiedAfterDate): Deleted. |
| * WebProcess/Cookies/WebCookieManager.h: |
| * WebProcess/Cookies/WebCookieManager.messages.in: |
| |
| 2014-12-08 Anders Carlsson <andersca@apple.com> |
| |
| Move the callback invocation outside of the loop. |
| |
| Rubber-stamped by Tim Horton. |
| |
| * UIProcess/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin): |
| |
| 2014-12-08 Anders Carlsson <andersca@apple.com> |
| |
| Add a stub implementation of WebsiteDataStore::removeDataModifiedSince |
| https://bugs.webkit.org/show_bug.cgi?id=139406 |
| |
| Reviewed by Antti Koivisto. |
| |
| Change _WKWebsiteDataStore to call the newly added function. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (toWebsiteDataTypes): |
| (toSystemClockTime): |
| (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::removeDataModifiedSince): |
| * UIProcess/WebsiteData/WebsiteDataStore.h: |
| |
| 2014-12-08 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [GTK] Let DrawingArea manages setAcceleratedCompositingWindowId |
| https://bugs.webkit.org/show_bug.cgi?id=117230 |
| |
| Reviewed by Anders Carlsson. |
| |
| This is a preparation patch for Threaded Coordinated Graphics. |
| |
| LayerTreeHostGtk uses a native window handle to make glContext for |
| accelerated compositing. Therefore it is natural for DrawingArea to take |
| responsibility for the native window handle. And, in Coordinated |
| Graphics case, WebPage creates LayerTreeHost before receiving a native |
| window handle from UIProcess. It means we need a method to pass the |
| native window handle to already created LayerTreeHost. |
| |
| This patch uses DrawingAreaProxy::setNativeSurfaceHandleForCompositing |
| instead of WebCoreProxy::setAcceleratedCompositingWindowId to set window |
| ID for accelerated compositing. |
| |
| Also, this patch renames the setAcceleratedCompositingWindowId with a |
| more generic name, setNativeSurfaceHandleForCompositing. |
| |
| No new tests. No change in functionality. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseCreateWebPage): |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::setNativeSurfaceHandleForCompositing): |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::setAcceleratedCompositingWindowId): Deleted. |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::nativeSurfaceHandleForCompositing): |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::setNativeSurfaceHandleForCompositing): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::glContext): |
| (WebKit::LayerTreeHostGtk::initialize): |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: |
| (WebKit::WebPage::platformInitialize): |
| (WebKit::WebPage::setAcceleratedCompositingWindowId): Deleted. |
| |
| 2014-12-08 Philippe Normand <pnormand@igalia.com> |
| |
| [GTK] UserMedia Permission Request API |
| https://bugs.webkit.org/show_bug.cgi?id=136449 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * PlatformGTK.cmake: GTK-specific new files. |
| * UIProcess/API/gtk/WebKitUIClient.cpp: DecidePolicy handler |
| implementation for UserMediaPermissionRequest. |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp: Added, |
| WebKitGTK API for UserMediaPermissionRequest, very similar to the |
| one used for Geolocation. |
| (webkitUserMediaPermissionRequestAllow): |
| (webkitUserMediaPermissionRequestDeny): |
| (webkit_permission_request_interface_init): |
| (webkitUserMediaPermissionRequestDispose): |
| (webkit_user_media_permission_get_media_types): |
| (webkitUserMediaPermissionRequestGetProperty): |
| (webkit_user_media_permission_request_class_init): |
| (webkitUserMediaPermissionRequestCreate): |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h: Added. |
| * UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h: Added. |
| * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Expose new API |
| in documentation. |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto. |
| * UIProcess/API/gtk/webkit2.h: Expose UserMediaPermissionRequest API. |
| |
| 2014-12-08 Anders Carlsson <andersca@apple.com> |
| |
| Add a stubbed out method for clearing out the website data store |
| https://bugs.webkit.org/show_bug.cgi?id=139404 |
| |
| Reviewed by Antti Koivisto. |
| |
| Add stubbed out method that just calls the completion handler. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]): |
| |
| 2014-12-06 Antti Koivisto <antti@apple.com> |
| |
| REGRESSION (173394): Support for webcam is broken |
| https://bugs.webkit.org/show_bug.cgi?id=139313 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didReceiveResponseAsync): |
| |
| Don't buffer when handling multipart/x-mixed-replace. Multiple calls to didReceiveResponseAsync break assumptions. |
| |
| 2014-12-08 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [CoordinatedGraphics] Move CoordinatedBackingStore and CoordinatedGraphicsScene to Shared |
| https://bugs.webkit.org/show_bug.cgi?id=139385 |
| |
| Reviewed by Martin Robinson. |
| |
| For the Threaded Compositor, CoordinatedBackingStore and |
| CoordinatedGraphicsScene should be placed at the Shared instead of |
| UIProcess because it can be used in the WebProcess also. |
| |
| No new tests because there is no behavior change. |
| |
| * PlatformEfl.cmake: |
| * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp. |
| * Shared/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h. |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp. |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h. |
| |
| 2014-12-08 Shivakumar JM <shiva.jm@samsung.com> |
| |
| Fix build warning in WebKit2/UIProcess module. |
| https://bugs.webkit.org/show_bug.cgi?id=139386 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Fix build warning by removing unused parameter name from function |
| |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::WebsiteDataStore): |
| |
| 2014-12-07 Gwang Yoon Hwang <yoon@igalia.com> |
| |
| [CoordinatedGraphics] Change the namespace of CoordinatedBackingStore and CoordinatedGraphicsScene |
| https://bugs.webkit.org/show_bug.cgi?id=139372 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| CoordinatedBackingStore and CoordinatedGraphicsScene should be declared in the WebKit namespace |
| instead of WebCore namespace. |
| |
| * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp: |
| * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: |
| * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: |
| (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): |
| (WebKit::CoordinatedBackingStore::rect): |
| (WebCore::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): Deleted. |
| (WebCore::CoordinatedBackingStore::rect): Deleted. |
| * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: |
| (WebKit::CoordinatedGraphicsScene::setViewBackgroundColor): |
| (WebKit::CoordinatedGraphicsScene::viewBackgroundColor): |
| (WebKit::CoordinatedGraphicsScene::layerByID): |
| (WebKit::CoordinatedGraphicsScene::rootLayer): |
| (WebCore::CoordinatedGraphicsScene::setViewBackgroundColor): Deleted. |
| (WebCore::CoordinatedGraphicsScene::viewBackgroundColor): Deleted. |
| (WebCore::CoordinatedGraphicsScene::layerByID): Deleted. |
| (WebCore::CoordinatedGraphicsScene::rootLayer): Deleted. |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: |
| (WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene): |
| * UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h: |
| (WebKit::toImpl): |
| (WebKit::toAPI): |
| (toImpl): Deleted. |
| (toAPI): Deleted. |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| |
| 2014-12-07 Dan Bernstein <mitz@apple.com> |
| |
| Introduce and deploy a function that allocates and returns an instance of a soft-linked class |
| https://bugs.webkit.org/show_bug.cgi?id=139348 |
| |
| Reviewed by Anders Carlsson. |
| |
| In [[getFooClass() alloc] init*], the type of the result of +alloc is id, so the compiler |
| picks an arbitrary declaration of init*, not necessarily the Foo one. This can then lead |
| to warnings or errors if the types or attributes don’t match, or to runtime errors if Foo |
| doesn’t even have the expected initializer. The new allocFooInstance() returns a Foo *, thus |
| avoiding the ambiguity. |
| |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: |
| (-[WKAirPlayRoutePicker showAirPlayPickerIPad:fromRect:]): |
| (-[WKAirPlayRoutePicker showAirPlayPickerIPhone:]): |
| (-[WKAirPlayRoutePicker show:fromRect:]): |
| * UIProcess/ios/forms/WKFileUploadPanel.mm: |
| (-[_WKVideoFileUploadItem displayImage]): |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]): |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm: |
| (WebKit::PlatformCALayerRemoteCustom::clone): |
| |
| 2014-12-06 Anders Carlsson <andersca@apple.com> |
| |
| Fix build with newer versions of clang. |
| rdar://problem/18978733 |
| |
| Add missing overrides and casts. |
| |
| * NetworkProcess/NetworkProcess.h: |
| * Shared/Downloads/DownloadAuthenticationClient.h: |
| (WebKit::DownloadAuthenticationClient::refAuthenticationClient): Deleted. |
| (WebKit::DownloadAuthenticationClient::derefAuthenticationClient): Deleted. |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetPageUIClient): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration copyWithZone:]): |
| * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm: |
| (-[_WKProcessPoolConfiguration copyWithZone:]): |
| * UIProcess/Cocoa/NavigationState.h: |
| * UIProcess/Network/NetworkProcessProxy.h: |
| * UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h: |
| (WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterViewportChange): Deleted. |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: |
| (WebKit::WebContentProcessMainDelegate::doPreInitializationWork): Deleted. |
| (WebKit::WebContentProcessMainDelegate::getConnectionIdentifier): Deleted. |
| (WebKit::WebContentProcessMainDelegate::getClientIdentifier): Deleted. |
| (WebKit::WebContentProcessMainDelegate::getClientProcessName): Deleted. |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.h: |
| * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm: |
| (WebKit::InjectedBundle::initialize): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebPage/WebBackForwardListProxy.h: |
| * WebProcess/WebPage/WebInspector.h: |
| (WebKit::WebInspector::didClose): Deleted. |
| (WebKit::WebInspector::didReceiveInvalidMessage): Deleted. |
| * WebProcess/WebPage/WebInspectorUI.h: |
| (WebKit::WebInspectorUI::didClose): Deleted. |
| (WebKit::WebInspectorUI::didReceiveInvalidMessage): Deleted. |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h: |
| * WebProcess/WebProcess.h: |
| * WebProcess/ios/WebVideoFullscreenManager.h: |
| |
| 2014-12-06 Anders Carlsson <andersca@apple.com> |
| |
| Only include TUCallSPI on Mac. |
| |
| * Platform/mac/MenuUtilities.mm: |
| |
| 2014-12-06 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r176905. |
| https://bugs.webkit.org/show_bug.cgi?id=139337 |
| |
| the test case is failing in bots (Requested by anttik on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "REGRESSION (173394): Support for webcam is broken" |
| https://bugs.webkit.org/show_bug.cgi?id=139313 |
| http://trac.webkit.org/changeset/176905 |
| |
| 2014-12-05 Antti Koivisto <antti@apple.com> |
| |
| REGRESSION (173394): Support for webcam is broken |
| https://bugs.webkit.org/show_bug.cgi?id=139313 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didReceiveResponseAsync): |
| |
| Don't buffer when handling multipart/x-mixed-replace. Multiple calls to didReceiveResponseAsync break assumptions. |
| |
| 2014-12-05 Yongjun Zhang <yongjun_zhang@apple.com> |
| |
| Add a delegate method for didReceiveServerRedirectForProvisionalLoadForFrame. |
| https://bugs.webkit.org/show_bug.cgi?id=139325 |
| |
| Add delegate method webProcessPlugInBrowserContextController:didReceiveServerRedirectForProvisionalLoadForFrame: into |
| WKWebProcessPlugInLoadDelegate to listen to server side redirect in injected bundle. |
| |
| Reviewed by Dan Bernstein. |
| |
| * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: |
| * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: |
| (didReceiveServerRedirectForProvisionalLoadForFrame): |
| (setUpPageLoaderClient): |
| |
| 2014-12-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF, EFL is happy now. |
| |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::defaultDataStoreConfiguration): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: |
| (WebKit::WebsiteDataStore::createNonPersistent): |
| |
| 2014-12-05 Mark Lam <mark.lam@apple.com> |
| |
| Gardening: one more build fix for GTK builds. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF, remove duplicated entry due to parallel buildfixing. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r176849. |
| |
| * CMakeLists.txt: Added WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp. |
| |
| 2014-12-05 Mark Lam <mark.lam@apple.com> |
| |
| Gardening: another build fix for GTK builds. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-05 Mark Lam <mark.lam@apple.com> |
| |
| Gardening: more speculative build fix for GTK builds. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-05 Tim Horton <timothy_horton@apple.com> |
| |
| Use the system string for telephone number menu |
| https://bugs.webkit.org/show_bug.cgi?id=139324 |
| <rdar://problem/18726471> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/mac/MenuUtilities.mm: |
| (WebKit::menuItemTitleForTelephoneNumberGroup): |
| Make use of the SPI to retrieve the string if it exists. |
| |
| 2014-12-05 Tim Horton <timothy_horton@apple.com> |
| |
| If the action menu hit test times out, a menu with a single separator appears |
| https://bugs.webkit.org/show_bug.cgi?id=139320 |
| <rdar://problem/19158331> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| (-[WKActionMenuController _defaultMenuItems]): |
| Add a new "TimedOut" state, which we get into if the sync wait for |
| didPerformActionMenuHitTest times out. In this case, we'll drop the |
| separator item and give up on the menu. This way, the menu will never |
| have just a single separator item at the end of menuNeedsUpdate:. |
| |
| 2014-12-05 Mark Lam <mark.lam@apple.com> |
| |
| Gardening: speculative build fix for GTK builds. |
| |
| * CMakeLists.txt: |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Fix build. |
| |
| * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm: |
| (API::WebsiteDataStore::defaultDataStoreConfiguration): |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Give all web pages a website data store |
| https://bugs.webkit.org/show_bug.cgi?id=139317 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| Set the website data store on the window. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::websiteDataStoreConfiguration): |
| Helper function that will create the default website data store configuration for a context. |
| |
| (WebKit::WebContext::WebContext): |
| Create a new, per-context data store. |
| |
| (WebKit::WebContext::createWebPage): |
| If we don't have a data store filled in, use the default per-context one. |
| |
| * UIProcess/WebContext.h: |
| * UIProcess/WebPageProxy.h: |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Move the website data store code to a new file |
| https://bugs.webkit.org/show_bug.cgi?id=139312 |
| |
| Reviewed by Tim Horton. |
| |
| It's weird to have all the website data code in the API class, so move it to a new file. |
| |
| * UIProcess/API/APIWebsiteDataStore.cpp: |
| (API::WebsiteDataStore::WebsiteDataStore): |
| (API::WebsiteDataStore::isNonPersistent): |
| (API::generateNonPersistentSessionID): Deleted. |
| * UIProcess/API/APIWebsiteDataStore.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/WebsiteData/WebsiteDataStore.cpp: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.cpp. |
| (WebKit::generateNonPersistentSessionID): |
| (WebKit::WebsiteDataStore::createNonPersistent): |
| (WebKit::WebsiteDataStore::create): |
| (WebKit::WebsiteDataStore::WebsiteDataStore): |
| (WebKit::WebsiteDataStore::~WebsiteDataStore): |
| * UIProcess/WebsiteData/WebsiteDataStore.h: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.h. |
| (WebKit::WebsiteDataStore::isNonPersistent): |
| (WebKit::WebsiteDataStore::sessionID): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-12-05 Tim Horton <timothy_horton@apple.com> |
| |
| Keyboard input should be disabled in the preview popover |
| https://bugs.webkit.org/show_bug.cgi?id=139219 |
| <rdar://problem/19052381> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView performKeyEquivalent:]): |
| (-[WKView keyUp:]): |
| (-[WKView keyDown:]): |
| (-[WKView flagsChanged:]): |
| There are two implementations of each of these methods in this file. |
| Adjust the ones that the original patch missed. |
| |
| 2014-12-05 Antti Koivisto <antti@apple.com> |
| |
| In NetworkResourceLoader always bail out after abort() |
| https://bugs.webkit.org/show_bug.cgi?id=139299 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Invoking abort() may kill the current object. Take care to bail out after it. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::didReceiveResponseAsync): |
| (WebKit::NetworkResourceLoader::didReceiveBuffer): |
| (WebKit::NetworkResourceLoader::didFinishLoading): |
| |
| Either make sure sendAbortingOnFailure() is called last in callbacks or the results is explicitly tested. |
| |
| (WebKit::NetworkResourceLoader::bufferingTimerFired): |
| (WebKit::NetworkResourceLoader::sendBufferMaybeAborting): |
| |
| Rename and return a boolean to indicate if load should continue. |
| |
| (WebKit::NetworkResourceLoader::sendBuffer): Deleted. |
| * NetworkProcess/NetworkResourceLoader.h: |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Don't use PLATFORM(IOS) in non-project headers. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration _allowsAlternateFullscreen]): |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: |
| |
| 2014-12-05 Sam Weinig <sam@webkit.org> |
| |
| WKBundleCSSStyleDeclarationRef needs to be a real API::Object |
| https://bugs.webkit.org/show_bug.cgi?id=139291 |
| |
| Reviewed by Dan Bernstein. |
| |
| Change WKBundleCSSStyleDeclarationRef from being a WebCore::CSSStyleDeclaration, to |
| being a real API::Object. WKRetain and WKRelease require this. |
| |
| * Shared/APIObject.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp: Added. |
| (WebKit::domHandleCache): |
| (WebKit::InjectedBundleCSSStyleDeclarationHandle::getOrCreate): |
| (WebKit::InjectedBundleCSSStyleDeclarationHandle::InjectedBundleCSSStyleDeclarationHandle): |
| (WebKit::InjectedBundleCSSStyleDeclarationHandle::~InjectedBundleCSSStyleDeclarationHandle): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.h: Added. |
| * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp: |
| (WebKit::InjectedBundlePageEditorClient::shouldApplyStyle): |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Oops, didn't mean to commit this. |
| |
| * Shared/API/Cocoa/WKFoundation.h: |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Add an API::WebsiteDataStore object and use it for _WKWebsiteDataStore |
| https://bugs.webkit.org/show_bug.cgi?id=139304 |
| |
| Reviewed by Tim Horton. |
| |
| * Shared/APIObject.h: |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::newObject): |
| Make _WKWebsiteDataStore a wrapper for API::WebsiteDataStore instead of API::Session. |
| |
| * UIProcess/API/APIWebsiteDataStore.cpp: Added. |
| (API::generateNonPersistentSessionID): |
| (API::WebsiteDataStore::defaultDataStore): |
| (API::WebsiteDataStore::createNonPersistentDataStore): |
| (API::WebsiteDataStore::WebsiteDataStore): |
| (API::WebsiteDataStore::~WebsiteDataStore): |
| (API::WebsiteDataStore::isNonPersistent): |
| Add new WebsiteDataStore implementation. Currently it only contains the WebCore Session ID, but more will be |
| added to it in upcoming commits. |
| |
| * UIProcess/API/APIWebsiteDataStore.h: |
| Add header. |
| |
| * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm: Added. |
| (API::WebsiteDataStore::defaultDataStoreConfiguration): |
| Platform specific file that returns the default data store configuration. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| Set the session ID from the website data store. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (+[_WKWebsiteDataStore defaultDataStore]): |
| (+[_WKWebsiteDataStore nonPersistentDataStore]): |
| (-[_WKWebsiteDataStore dealloc]): |
| (-[_WKWebsiteDataStore isNonPersistent]): |
| (-[_WKWebsiteDataStore _apiObject]): |
| Update now that we wrap an API::WebsiteDataStore instead. |
| |
| * UIProcess/API/Cocoa/_WKWebsiteDataStoreInternal.h: |
| (WebKit::wrapper): |
| Update for API::Session -> API::WebsiteDataStore change. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| 2014-12-05 David Kilzer <ddkilzer@apple.com> |
| |
| FeatureDefines.xcconfig: Workaround bug in Xcode 5.1.1 when defining ENABLE_WEB_REPLAY |
| <http://webkit.org/b/139286> |
| |
| Reviewed by Daniel Bates. |
| |
| * Configurations/FeatureDefines.xcconfig: Switch back to using |
| PLATFORM_NAME to workaround a bug in Xcode 5.1.1 on 10.8. |
| |
| 2014-12-05 Anders Carlsson <andersca@apple.com> |
| |
| Make WebPageProxy hold on to a SessionID instead of an API:Session |
| https://bugs.webkit.org/show_bug.cgi?id=139302 |
| |
| Reviewed by Sam Weinig. |
| |
| This is in preparation for adding API::WebsiteDataStore. Currently we have to keep the |
| Session ID and the WebsiteDataStore separate because we still need to support toggling private browsing. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetSession): |
| * UIProcess/API/C/WKSessionRef.cpp: |
| (WKSessionCreate): |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm: |
| (+[_WKWebsiteDataStore nonPersistentDataStore]): |
| * UIProcess/APISession.cpp: |
| (API::generateID): |
| (API::Session::Session): |
| (API::Session::createEphemeral): |
| (API::Session::legacyPrivateSession): Deleted. |
| (API::Session::create): Deleted. |
| * UIProcess/APISession.h: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::createWebPage): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::setSessionID): |
| (WebKit::WebPageProxy::creationParameters): |
| (WebKit::WebPageProxy::setSession): Deleted. |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::sessionID): |
| |
| 2014-12-05 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] allow host application to opt-out of alternate fullscreen pt. 2 |
| https://bugs.webkit.org/show_bug.cgi?id=139227 |
| |
| Reviewed by Jer Noble and Anders Carlsson. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: Add bool param to setupFullscreenWithID. |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: Ditto. |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Ditto. |
| |
| * WebProcess/ios/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Pass new parameter |
| to SetupFullscreenWithID. |
| |
| 2014-12-04 Anders Carlsson <andersca@apple.com> |
| |
| Add missing includes in preparation for making toAPI require that it's passed an API::Object |
| https://bugs.webkit.org/show_bug.cgi?id=139278 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/C/WKAuthenticationChallenge.cpp: |
| * UIProcess/API/C/WKAuthenticationDecisionListener.cpp: |
| * UIProcess/API/C/WKContext.cpp: |
| * UIProcess/API/C/WKDownload.cpp: |
| * UIProcess/API/C/WKFrame.cpp: |
| * UIProcess/API/C/WKGeolocationManager.cpp: |
| * UIProcess/API/C/WKInspector.cpp: |
| * UIProcess/API/C/WKPage.cpp: |
| * UIProcess/GenericCallback.h: |
| * UIProcess/Notifications/WebNotificationProvider.cpp: |
| * UIProcess/WebContextConnectionClient.cpp: |
| * UIProcess/WebContextInjectedBundleClient.cpp: |
| * UIProcess/WebCookieManagerProxyClient.cpp: |
| * UIProcess/WebDatabaseManagerProxyClient.cpp: |
| * UIProcess/WebFindClient.cpp: |
| * UIProcess/WebFormClient.cpp: |
| * UIProcess/WebIconDatabaseClient.cpp: |
| * UIProcess/WebPageContextMenuClient.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleDOMWindowExtension.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| * WebProcess/InjectedBundle/InjectedBundleClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| |
| 2014-12-04 Anders Carlsson <andersca@apple.com> |
| |
| Make API::String copy the underlying strings if needed, for thread safety |
| https://bugs.webkit.org/show_bug.cgi?id=139261 |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/API/c/WKString.cpp: |
| (WKStringCreateWithUTF8CString): |
| (WKStringCreateWithJSString): |
| (WKStringCopyJSString): |
| Move the implementations from API::String and directly into the API functions. |
| |
| * Shared/APIString.h: |
| Add a create overload that takes an rvalue reference. Call it from the create overload |
| that takes an lvalue reference, but explicitly copy the string. |
| We call isolatedCopy() again on the string in the rvalue reference overload, but that is a no-op |
| if the string can be sent to another thread. Add assertions in the String constructor that we can |
| send the string to another thread. |
| |
| 2014-12-04 Beth Dakin <bdakin@apple.com> |
| |
| Clients disabling action menus sometimes still invoke action menu behaviors |
| https://bugs.webkit.org/show_bug.cgi?id=139270 |
| -and corresponding- |
| rdar://problem/19147218 |
| |
| Reviewed by Tim Horton. |
| |
| By default, we will keep a single item in the action menu up until the point where |
| _state == ActionMenuState::Ready. So by checking _state here, we are preventing |
| clients from opting out of our choice to wait. Ideally we would always still wait |
| for the Ready state, but this will get the best behavior in the mean time. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _updateActionMenuItems]): |
| |
| 2014-12-04 Antti Koivisto <antti@apple.com> |
| |
| REGRESSION (r173468): Cannot step in WebInspector |
| https://bugs.webkit.org/show_bug.cgi?id=139260 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Inspector defers all loads and starts a nested runloop when it hits a breakpoint. When continuing it undefers the loads. |
| If the script execution was triggered from the didFinishLoading callback of the main resource then the main resource would |
| already be in the finished state in the network process side and setDefersLoading(false) message would end up restarting its load. |
| Since loads are not meant to restart the generated callbacks would assert or crash the web process when handled in the next |
| nested inspector runloop. |
| |
| Fix by taking care that cleaned up NetworkResourceLoaders are always removed from the loader map of |
| the NetworkConnectionToWebProcess and so can't end up handling late messages. |
| |
| No test, this requires JS debugger to trigger. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.cpp: |
| (WebKit::NetworkConnectionToWebProcess::didCleanupResourceLoader): |
| |
| This is now the only way to remove resource loaders. |
| It is called from NetworkResourceLoader::cleanup only. |
| |
| (WebKit::NetworkConnectionToWebProcess::didClose): |
| (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier): |
| |
| Calling abort removes the resource loader (since it calls cleanup) so no need to do it explicitly anymore. |
| |
| * NetworkProcess/NetworkConnectionToWebProcess.h: |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::start): |
| |
| We are guaranteed to be reffed by NetworkConnectionToWebProcess until cleanup so the explicit ref/deref can be removed. |
| |
| (WebKit::NetworkResourceLoader::cleanup): |
| |
| Call to NetworkConnectionToWebProcess::didCleanupResourceLoader to make the loader unreachable. |
| |
| * NetworkProcess/NetworkResourceLoader.h: |
| (WebKit::NetworkResourceLoader::identifier): |
| |
| 2014-12-04 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the 32-bit build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]): |
| |
| 2014-12-04 Tim Horton <timothy_horton@apple.com> |
| |
| TextIndicator::createWithSelectionInFrame does synchronous IPC in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=139252 |
| <rdar://problem/19140827> |
| |
| Reviewed by Anders Carlsson. |
| |
| It turns out contentsToScreen requires sync IPC in Mac WebKit2, which we |
| really don't want to be doing here (especially since the UI process will often |
| be sitting in waitForAndDispatchImmediately waiting for didPerformActionMenuHitTest). |
| |
| Go back to keeping TextIndicator rects in "window" coordinates and do the conversion |
| in each of the WebKits instead of trying to share that code. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextIndicatorData>::encode): |
| (IPC::ArgumentCoder<TextIndicatorData>::decode): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]): |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::updateFindIndicator): |
| (WebKit::FindController::drawRect): |
| Adjust to the WebCore changes. |
| |
| 2014-12-04 Anders Carlsson <andersca@apple.com> |
| |
| Simplify StorageManager callback functions |
| https://bugs.webkit.org/show_bug.cgi?id=139257 |
| |
| Reviewed by Antti Koivisto. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::getOrigins): |
| (WebKit::StorageManager::getStorageDetailsByOrigin): |
| (WebKit::callCallbackFunction): Deleted. |
| (WebKit::StorageManager::getOriginsInternal): Deleted. |
| (WebKit::StorageManager::getStorageDetailsByOriginInternal): Deleted. |
| * UIProcess/Storage/StorageManager.h: |
| * UIProcess/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin): |
| (WebKit::didGetKeyValueStorageOrigins): Deleted. |
| (WebKit::didGetStorageDetailsByOrigin): Deleted. |
| |
| 2014-12-04 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r176794. |
| |
| * UIProcess/Storage/LocalStorageDatabaseTracker.cpp: |
| (WebKit::fileCreationTime): |
| (WebKit::fileModificationTime): |
| |
| 2014-12-03 Anders Carlsson <andersca@apple.com> |
| |
| Add a way to delete local storage origins modified after a given date |
| https://bugs.webkit.org/show_bug.cgi?id=139249 |
| |
| Reviewed by Tim Horton. |
| |
| Also change LocalStorageDatabaseTracker to hold on to WTF::Optional time_t values |
| instead of treating missing values as zero. |
| |
| * UIProcess/LocalStorageDetails.h: |
| * UIProcess/Storage/LocalStorageDatabaseTracker.cpp: |
| (WebKit::fileCreationTime): |
| (WebKit::fileModificationTime): |
| (WebKit::LocalStorageDatabaseTracker::deleteDatabasesModifiedSince): |
| (WebKit::LocalStorageDatabaseTracker::details): |
| * UIProcess/Storage/LocalStorageDatabaseTracker.h: |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince): |
| * UIProcess/Storage/StorageManager.h: |
| * UIProcess/WebKeyValueStorageManager.cpp: |
| (WebKit::didGetStorageDetailsByOrigin): |
| |
| 2014-12-04 Peter Molnar <pmolnar.u-szeged@partner.samsung.com> |
| |
| [EFL][WK2] Add ewk API to allow accepting a specific TLS certificate for a specific host |
| https://bugs.webkit.org/show_bug.cgi?id=131160 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::allowSpecificHTTPSCertificateForHost): |
| (ewk_context_tls_certificate_for_host_allow): |
| * UIProcess/API/efl/ewk_context.h: |
| * UIProcess/API/efl/ewk_context_private.h: |
| * UIProcess/API/efl/tests/test_ewk2_ssl.cpp: |
| |
| 2014-12-03 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r176457. |
| https://bugs.webkit.org/show_bug.cgi?id=139247 |
| |
| More iOS breakage (Requested by andersca on #webkit). |
| |
| Reverted changeset: |
| |
| "Fix iOS build." |
| http://trac.webkit.org/changeset/176457 |
| |
| 2014-12-03 Beth Dakin <bdakin@apple.com> |
| |
| <input> elements get whitespace action menu instead of editable text menu |
| https://bugs.webkit.org/show_bug.cgi?id=139241 |
| -and corresponding- |
| rdar://problem/19072083 |
| |
| Reviewed by Sam Weinig. |
| |
| Add isOverTextInsideFormControlElement to WebHitTestResult. |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::Data): |
| (WebKit::WebHitTestResult::Data::encode): |
| (WebKit::WebHitTestResult::Data::decode): |
| * Shared/WebHitTestResult.h: |
| (WebKit::WebHitTestResult::isOverTextInsideFormControlElement): |
| |
| Offer the text menus for text inside form controls. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItems]): |
| |
| We should disallow shadow content in the hit test. This is the default and it is |
| how context menus behave. We originally wanted to text inside shadow content so |
| that we could find the text, but the new function I added to HitTestResult will |
| allow that. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| |
| Adjust to the fact that we don’t hit test shadow content any more. |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::lookupTextAtLocation): |
| (WebKit::WebPage::focusAndSelectLastActionMenuHitTestResult): |
| |
| 2014-12-03 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r176489. |
| https://bugs.webkit.org/show_bug.cgi?id=139242 |
| |
| More iOS breakage (Requested by andersca on #webkit). |
| |
| Reverted changeset: |
| |
| "Unreviewed, iOS build fix after r176452." |
| http://trac.webkit.org/changeset/176489 |
| |
| 2014-12-03 Tim Horton <timothy_horton@apple.com> |
| |
| Implement action menus for tel: URLs |
| https://bugs.webkit.org/show_bug.cgi?id=139240 |
| <rdar://problem/19115662> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/c/WKActionMenuTypes.h: |
| Add a new type. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]): |
| Rename this function as it will work for both mailto and tel URLs. |
| Adjust it to use contextForView:. |
| |
| (-[WKActionMenuController _clearActionMenuState]): |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| (-[WKActionMenuController _defaultMenuItems]): |
| Don't check the menu type when going to interact with _currentActionContext. |
| We'll only have a _currentActionContext if we have a data detected item, |
| and there are multiple menu types that end up using DDActionContext. |
| |
| 2014-12-03 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r176452 and r176559. |
| https://bugs.webkit.org/show_bug.cgi?id=139239 |
| |
| Broke iOS (Requested by andersca on #webkit). |
| |
| Reverted changesets: |
| |
| "Remove alignment code from IPC coders" |
| https://bugs.webkit.org/show_bug.cgi?id=138963 |
| http://trac.webkit.org/changeset/176452 |
| |
| "[WK2] SecComp buildfix after r176452" |
| https://bugs.webkit.org/show_bug.cgi?id=139081 |
| http://trac.webkit.org/changeset/176559 |
| |
| 2014-12-03 Tim Horton <timothy_horton@apple.com> |
| |
| Keyboard input should be disabled in the preview popover |
| https://bugs.webkit.org/show_bug.cgi?id=139219 |
| <rdar://problem/19052381> |
| |
| Reviewed by Anders Carlsson. |
| |
| Make sure that keyboard input, Quick Look, etc. are blocked in preview popovers |
| and WKThumbnailViews. Also block the fake mouseMove events that originate in |
| the Web process upon scrolling, because we were missing those despite blocking |
| ordinary mouseMove events. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| Rename _ignoresNonWheelMouseEvents to _ignoresNonWheelEvents, because it will |
| apply not only to mouse events but also key events, Quick Look events, menu |
| preparation events, swipe events, etc. |
| |
| Add _ignoresAllEvents, which means the same thing as _ignoresNonWheelEvents |
| with the addition of ignoring scrollWheel events. |
| |
| (-[WKView scrollWheel:]): |
| (-[WKView swipeWithEvent:]): |
| (-[WKView mouseMoved:]): |
| (-[WKView mouseDown:]): |
| (-[WKView mouseUp:]): |
| (-[WKView mouseDragged:]): |
| Adjust to the new name. |
| |
| (-[WKView performKeyEquivalent:]): |
| (-[WKView keyUp:]): |
| (-[WKView keyDown:]): |
| (-[WKView flagsChanged:]): |
| (-[WKView quickLookWithEvent:]): |
| (-[WKView prepareForMenu:withEvent:]): |
| (-[WKView willOpenMenu:withEvent:]): |
| (-[WKView didCloseMenu:withEvent:]): |
| Block all of these events as well as those we were previously blocking. |
| |
| (-[WKView _setIgnoresAllEvents:]): |
| (-[WKView _setIgnoresNonWheelMouseEvents:]): |
| (-[WKView _setIgnoresNonWheelEvents:]): |
| (-[WKView _ignoresNonWheelEvents]): |
| (-[WKView _ignoresAllEvents]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| Adjust to the new names and the addition of ignoresAllEvents. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController loadView]): |
| Adjust to the new name. |
| |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Move bailing from prepareForMenu: up to WKView. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _ignoresNonWheelEvents]): |
| (-[WKWebView _setIgnoresNonWheelEvents:]): |
| (-[WKWebView _ignoresNonWheelMouseEvents]): Deleted. |
| (-[WKWebView _setIgnoresNonWheelMouseEvents:]): Deleted. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| Adjust to the new name (without "mouse" in it). |
| |
| * UIProcess/API/Cocoa/_WKThumbnailView.mm: |
| (-[_WKThumbnailView _viewWasUnparented]): |
| (-[_WKThumbnailView _viewWasParented]): |
| Explicitly tell WKView to disable event handling while thumbnailed, |
| instead of having WKView special-case thumbnail views internally. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setShouldDispatchFakeMouseMoveEvents): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::shouldDispatchFakeMouseMoveEvents): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::shouldDispatchFakeMouseMoveEvents): |
| (WebKit::WebPage::setShouldDispatchFakeMouseMoveEvents): |
| * WebProcess/WebPage/WebPage.messages.in: |
| Plumb shouldDispatchFakeMouseMoveEvents from the UI process to the Web process |
| and through to WebKit2's ChromeClient implementation. |
| |
| 2014-12-03 Anders Carlsson <andersca@apple.com> |
| |
| Remove ENABLE_UI_PROCESS_STORAGE define, it's always 1. |
| |
| Rubber-stamped by Beth Dakin. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::localStorageNamespace): |
| (WebKit::WebPlatformStrategies::transientLocalStorageNamespace): |
| (WebKit::WebPlatformStrategies::sessionStorageNamespace): |
| |
| 2014-12-03 Anders Carlsson <andersca@apple.com> |
| |
| Use an @autoreleasepool instead of NSAutoreleasePool. |
| |
| Rubber-stamped by Tim Horton. |
| |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::flushLayers): |
| |
| 2014-12-03 Dan Bernstein <mitz@apple.com> |
| |
| REGRESSION(r176687): Caused webkit2 test assertion failure crashes in WebKit::WebPage::willStartDrag() |
| https://bugs.webkit.org/show_bug.cgi?id=139224 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::mouseEventSyncForTesting): Wait for the UI process to start dragging if |
| needed before handling the event. |
| |
| 2014-12-03 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] outdated comment |
| https://bugs.webkit.org/show_bug.cgi?id=137801 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Remove a comment that is no longer correct. |
| |
| * NetworkProcess/gtk/NetworkProcessMainGtk.cpp: |
| |
| 2014-12-02 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Don't block menu highlighting when presenting a page preview |
| https://bugs.webkit.org/show_bug.cgi?id=139217 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| Defer popover presentation to the next turn of the runloop. |
| |
| 2014-12-02 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/mac/WebContextMac.mm: |
| |
| 2014-12-02 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/18441138> [iOS] Text selection in WKWebView with WKSelectionGranularityCharacter only works in the most recent WKWebView to load |
| https://bugs.webkit.org/show_bug.cgi?id=139211 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView becomeFirstResponder]): Override to activate the text selection for when |
| becoming first resopnder. |
| (-[WKContentView resignFirstResponder]): Deactiavte the text selection when resigning first |
| responder. This ensures that if another WKWebView becomes first responder, and it uses |
| block selection, we don’t end up with two active selection views. |
| (-[WKContentView useSelectionAssistantWithMode:]): Only activate the text selection if this |
| is the first responder. This ensures that loading content into a non-first-responder |
| WKWebView doesn‘t deactivate the text selection in the current first responder. |
| |
| 2014-12-02 Alexey Proskuryakov <ap@apple.com> |
| |
| http/tests/appcache/main-resource-fallback-for-network-error-crash.html can break subsequent tests |
| https://bugs.webkit.org/show_bug.cgi?id=139149 |
| |
| Reviewed by Anders Carlsson. |
| |
| This changes API behavior. I think that it's OK, because existing behavior made no sense. |
| We used to delete caches from disk, but they were still active in memory. Now we also |
| obsolete them in memory, so documents that use a cache still work, but new ones don't |
| pick one up. |
| |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: |
| (WebKit::WebApplicationCacheManager::deleteAllEntries): Use the new WebCore function |
| that properly deletes caches. |
| |
| 2014-12-02 Tim Horton <timothy_horton@apple.com> |
| |
| Remove a SnowLeopard-era quirk for QuickLook |
| https://bugs.webkit.org/show_bug.cgi?id=139208 |
| <rdar://problem/19121822> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::needsQuickLookResourceCachingQuirks): Deleted. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::needsQuickLookResourceCachingQuirks): Deleted. |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-12-02 Beth Dakin <bdakin@apple.com> |
| |
| Build fix. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| |
| 2014-12-02 Beth Dakin <bdakin@apple.com> |
| |
| More build fix. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| |
| 2014-12-02 Dan Bernstein <mitz@apple.com> |
| |
| REGRESSION: Dragging selected text changes the selection |
| https://bugs.webkit.org/show_bug.cgi?id=139110 |
| |
| Reviewed by Simon Fraser. |
| |
| After it sent the UI process the message to start dragging, the Web process handled mouse |
| move events that had already been in flight, interpreting them as a drag to start a new |
| selection. This is fixed by ignoring any mouse events received after asking the UI process |
| to start dragging. |
| |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setDragImage): Send the new DidStartDrag message back to the Web |
| process, so that it stops ignoring mouse events. |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::startDrag): Call the new WebPage::willStartDrag, so that it starts |
| ignoring mouse events. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): Initialize new member variable. |
| (WebKit::WebPage::mouseEvent): Don’t handle the event if we have asked the UI process to |
| start dragging. |
| |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::willStartDrag): Added. Sets new member variable m_isStartingDrag to true. |
| (WebKit::WebPage::didStartDrag): Added. Handles the message from the UI process by setting |
| m_isStartingDrag back to false. |
| |
| * WebProcess/WebPage/WebPage.messages.in: Added DidStartDrag. |
| |
| 2014-12-02 Beth Dakin <bdakin@apple.com> |
| |
| Should use standardQuickLookMenuItem for apps that don't implement customizations |
| https://bugs.webkit.org/show_bug.cgi?id=139193 |
| -and corresponding- |
| rdar://problem/18944696 |
| |
| Reviewed by Anders Carlsson. |
| |
| New SPI will allow clients to opt-out of the standardQuickLookMenuItem. By |
| default, opt in. |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _shouldUseStandardQuickLookPreview]): |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| Use [NSMenuItem standardQuickLookMenuItem] unless the client has requested |
| otherwise. |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| |
| Delegate methods to set up the standardQuickLookMenuItem. |
| (-[WKActionMenuController menuItem:viewAtScreenPoint:]): |
| (-[WKActionMenuController menuItem:previewItemAtPoint:]): |
| (-[WKActionMenuController menuItem:preferredEdgeForPoint:]): |
| |
| 2014-12-02 Tim Horton <timothy_horton@apple.com> |
| |
| TextIndicator can get stuck (especially if we don't get LUNotificationPopoverWillClose when we should) |
| https://bugs.webkit.org/show_bug.cgi?id=139175 |
| <rdar://problem/19072236> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView scrollWheel:]): |
| (-[WKView mouseDown:]): |
| Work around <rdar://problem/19086993> by always explicitly clearing the |
| active text indicator in mouseDown: and scrollWheel:. |
| This way, even if you manage to get a text indicator that outlives the |
| Look Up popover (or find-in-page, or whatever), it will be dismissed |
| by clicking or scrolling the view. |
| |
| 2014-12-02 Anders Carlsson <andersca@apple.com> |
| |
| Remove visited link handling from PageGroup |
| https://bugs.webkit.org/show_bug.cgi?id=139185 |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::populateVisitedLinks): Deleted. |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2014-12-01 Anders Carlsson <andersca@apple.com> |
| |
| Remove WKBundleRemoveAllVisitedLinks |
| https://bugs.webkit.org/show_bug.cgi?id=139163 |
| |
| Reviewed by Sam Weinig. |
| |
| WKBundleRemoveAllVisitedLinks has been a no-op since at least Yosemite; get rid of it. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleRemoveAllVisitedLinks): Deleted. |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::removeAllVisitedLinks): Deleted. |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2014-12-02 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> |
| |
| Fix class was previously declared as a struct warnings |
| https://bugs.webkit.org/show_bug.cgi?id=139131 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: |
| * UIProcess/CoordinatedGraphics/WebViewClient.h: |
| |
| 2014-12-02 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| [EFL] ewk_view_scale_set() doesn't work correctly |
| https://bugs.webkit.org/show_bug.cgi?id=139109 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| When ewk_view_scale_set() is called, it has only updated a scale factor which is maintained by WebPageProxy. |
| It causes WebPageProxy unsynchronized with PageViewportController's scale factor. That's why wrong scale |
| behavior has occured through ewk_view_scale_set(). Besides zooming has similar problem as well. |
| |
| Thus this patch updates m_pageScaleFactor of PageViewportController as well as prohibits to change the scale |
| factor through viewport meta tag update. Because ewk_view_scale_set() means that user wants to set a specific |
| value to scale factor of current viewport. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::updateScaleToPageViewportController): |
| Set m_initiallyFitToViewport to false. And call didChangeContentsVisibility() with new scale and scale position. |
| |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/API/efl/ewk_view.cpp: |
| (ewk_view_scale_set): |
| * UIProcess/API/efl/tests/test_ewk2_view.cpp: |
| (TEST_F): |
| * UIProcess/CoordinatedGraphics/PageViewportController.cpp: |
| (WebKit::PageViewportController::didCommitLoad): |
| Set m_initiallyFitToViewport to true in order to fit content to viewport size by default. |
| Initizlize content position with (0, 0). |
| |
| (WebKit::PageViewportController::pageTransitionViewportReady): |
| Do not update scale when m_initiallyFitToViewport is false. |
| |
| (WebKit::PageViewportController::syncVisibleContents): |
| Return false when syncVisibleContents is failed. |
| |
| (WebKit::PageViewportController::didChangeViewportAttributes): |
| Do not update scale when m_initiallyFitToViewport is false. |
| |
| (WebKit::PageViewportController::applyScaleAfterRenderingContents): |
| If syncVisibleContents() is failed, m_pageScaleFactor should be restored with previous value. |
| If not, new scale factor isn't applied though, PageViewportController uses it as own scale factor. |
| |
| (WebKit::PageViewportController::updateMinimumScaleToFit): |
| Do not update scale when m_initiallyFitToViewport is false or m_hadUserInteraction is true. |
| |
| * UIProcess/CoordinatedGraphics/PageViewportController.h: |
| (WebKit::PageViewportController::setInitiallyFitToViewport): |
| |
| 2014-11-20 Jeffrey Pfau <jpfau@apple.com> |
| |
| Add cancelable version of willSendRequest |
| https://bugs.webkit.org/show_bug.cgi?id=138987 |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::willSendRequest): |
| |
| 2014-12-01 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Clients need a way to explicitly set the title of a page preview |
| https://bugs.webkit.org/show_bug.cgi?id=139161 |
| |
| Reviewed by Beth Dakin. |
| |
| This implicitly assumes that only one page preview can be associate with a given WKView at a time. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setPreviewTitle:]): |
| Wrap -[WKActionMenuController setPreviewTitle:] |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| Add ivars for the title and the title text field (previously not independently exposed). |
| (-[WKPagePreviewViewController previewTitle]): |
| Accessor. |
| (-[WKPagePreviewViewController setPreviewTitle:]): |
| Accessor; set the text field's string value. |
| (-[WKPagePreviewViewController loadView]): |
| Adopt the _titleTextField ivar; assume that if a client has explicitly set the previewTitle then we don't |
| need to ask for it again. |
| (-[WKActionMenuController setPreviewTitle:]): |
| Wrap -[WKPagePreviewViewController setPreviewTitle:]. |
| |
| 2014-12-01 Anders Carlsson <andersca@apple.com> |
| |
| Make WebKit2 work slightly better with garbage collection |
| https://bugs.webkit.org/show_bug.cgi?id=139159 |
| <rdar://problem/19108390> |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/Cocoa/APIObject.mm: |
| (API::Object::ref): |
| (API::Object::deref): |
| Call CFRetain/CFRelease to prevent the memory from being collected. |
| |
| (API::Object::newObject): |
| Call CFRetain under GC so we'll prevent memory from being collected prematurely. |
| |
| 2014-12-01 Tim Horton <timothy_horton@apple.com> |
| |
| Implement yellow highlight for WebKit1 data detectors |
| https://bugs.webkit.org/show_bug.cgi?id=138956 |
| <rdar://problem/18992185> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextIndicatorData>::encode): |
| (IPC::ArgumentCoder<TextIndicatorData>::decode): |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::updateFindIndicator): |
| (WebKit::FindController::drawRect): |
| Adjust to the fact that TextIndicator keeps screen-relative rects. |
| |
| 2014-12-01 Anders Carlsson <andersca@apple.com> |
| |
| Remove old site specific quirks code that was added in 2009 |
| https://bugs.webkit.org/show_bug.cgi?id=139141 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/RemoteNetworkingContext.h: |
| * NetworkProcess/mac/RemoteNetworkingContext.mm: |
| (WebKit::RemoteNetworkingContext::needsSiteSpecificQuirks): Deleted. |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h: |
| * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm: |
| (WebKit::WebFrameNetworkingContext::needsSiteSpecificQuirks): Deleted. |
| |
| 2014-12-01 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Crash in WebInspectorClient::hideHighlight when page is destroyed |
| https://bugs.webkit.org/show_bug.cgi?id=139136 |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| (WebKit::WebInspectorClient::hideHighlight): |
| Speculatively fix by null-checking the main frame which |
| can be null during page destruction. |
| |
| 2014-11-30 Jaehun Lim <ljaehun.lim@samsung.com> |
| |
| [EFL] Add eldbus to the library list |
| https://bugs.webkit.org/show_bug.cgi?id=139120 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Fix undefined reference errors for eldbus APIs. |
| |
| * PlatformEfl.cmake: |
| |
| 2014-11-29 Anders Carlsson <andersca@apple.com> |
| |
| Crash when calling WKPageClose on the originated page from within createNewPage callback |
| https://bugs.webkit.org/show_bug.cgi?id=139099 |
| <rdar://problem/19052564> |
| |
| Reviewed by Sam Weinig. |
| |
| Null check the namespace ID. |
| |
| * UIProcess/Storage/StorageManager.cpp: |
| (WebKit::StorageManager::cloneSessionStorageNamespaceInternal): |
| |
| 2014-11-28 Tim Horton <timothy_horton@apple.com> |
| |
| Stale userData is handed to WKView _actionMenuItemsForHitTestResult under prepareForMenu |
| https://bugs.webkit.org/show_bug.cgi?id=139069 |
| <rdar://problem/19075587> |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController wkView:willHandleMouseDown:]): |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (-[WKActionMenuController _clearActionMenuState]): |
| Previously, _userData was not being cleared in didCloseMenu, so a subsequent |
| action menu invocation would end up sending stale userData to _actionMenuItemsForHitTestResult. |
| |
| Additionally, factor all of the cleanup code out into _clearActionMenuState, |
| and call it from both wkView:willHandleMouseDown: and didCloseMenu:withEvent:. |
| |
| 2014-11-26 Timothy Horton <timothy_horton@apple.com> |
| |
| DataDetectors PageOverlay callbacks are never called |
| https://bugs.webkit.org/show_bug.cgi?id=139067 |
| <rdar://problem/19086676> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| Encode/decode the PageOverlay ID. |
| |
| 2014-11-28 Simon Fraser <simon.fraser@apple.com> |
| |
| Allow clients of the WKRenderLayerRef C SPI to connect layer trees across frame boundaries |
| https://bugs.webkit.org/show_bug.cgi?id=139021 |
| |
| Reviewed by Dan Bernstein. |
| |
| Add WKRenderLayerGetFrameContentsLayer which returns a WKRenderLayerRef for |
| the content document of a RenderWidget, if its has one (e.g. frames, iframes |
| and <object> with document contents). |
| |
| * Shared/API/c/WKRenderLayer.cpp: |
| (WKRenderLayerGetFrameContentsLayer): |
| * Shared/API/c/WKRenderLayer.h: |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| * Shared/WebRenderLayer.cpp: |
| (WebKit::WebRenderLayer::create): |
| (WebKit::WebRenderLayer::WebRenderLayer): |
| * Shared/WebRenderLayer.h: |
| (WebKit::WebRenderLayer::frameContentsLayer): |
| |
| 2014-11-28 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [WK2] SecComp buildfix after r176452 |
| https://bugs.webkit.org/show_bug.cgi?id=139081 |
| |
| Reviewed by Antti Koivisto. |
| |
| * Shared/linux/SeccompFilters/SeccompBroker.cpp: |
| (WebKit::SeccompBrokerClient::dispatch): |
| (WebKit::SeccompBroker::runLoop): |
| |
| 2014-11-28 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Fix -Wc++11-narrowing error in SeccompFilters.cpp |
| https://bugs.webkit.org/show_bug.cgi?id=139079 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Shared/linux/SeccompFilters/SeccompFilters.cpp: |
| (WebKit::SeccompFilters::addRule): |
| * Shared/linux/SeccompFilters/SeccompFilters.h: |
| |
| 2014-11-28 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [WK2] SecComp buildfix after r168605 and r168999 |
| https://bugs.webkit.org/show_bug.cgi?id=139080 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Shared/linux/SeccompFilters/SyscallPolicy.cpp: |
| (WebKit::SyscallPolicy::addDefaultWebProcessPolicy): |
| |
| 2014-11-27 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Remove E_Dbus dependency |
| https://bugs.webkit.org/show_bug.cgi?id=136355 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * UIProcess/API/efl/ewk_main.cpp: Added init/shutdown for eldbus. |
| (WebKit::EwkMain::initialize): |
| (WebKit::EwkMain::finalize): |
| (WebKit::EwkMain::shutdownInitializedEFLModules): |
| |
| 2014-11-25 Anders Carlsson <andersca@apple.com> |
| |
| Remove user content handling from PageGroup |
| https://bugs.webkit.org/show_bug.cgi?id=139051 |
| |
| Reviewed by Antti Koivisto. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addUserScript): |
| (WebKit::InjectedBundle::addUserStyleSheet): |
| (WebKit::InjectedBundle::removeUserScript): |
| (WebKit::InjectedBundle::removeUserStyleSheet): |
| (WebKit::InjectedBundle::removeUserScripts): |
| (WebKit::InjectedBundle::removeUserStyleSheets): |
| (WebKit::InjectedBundle::removeAllUserContent): |
| Talk to the user content controller from the passed in WebPageGroupProxy. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Create the WebPageGroupProxy before creating the page so we can get its user content controller and |
| pass it to the page configuration if necessary. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.cpp: |
| (WebKit::WebPageGroupProxy::userContentController): |
| New function that lazily creates a user content controller. We don't want to create this eagerly since |
| it's not used with the modern API. |
| |
| (WebKit::WebPageGroupProxy::addUserStyleSheet): |
| (WebKit::WebPageGroupProxy::addUserScript): |
| (WebKit::WebPageGroupProxy::removeAllUserStyleSheets): |
| (WebKit::WebPageGroupProxy::removeAllUserScripts): |
| (WebKit::WebPageGroupProxy::removeAllUserContent): |
| Call through to the user content controller. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| Add an m_userContentController member. |
| |
| 2014-11-25 Ting-Wei Lan <lantw44@gmail.com> |
| |
| [GTK] Use LD_LIBRARY_PATH to make g-ir-scanner use the newly-built |
| version of libraries when running the temporary executable |
| https://bugs.webkit.org/show_bug.cgi?id=138833 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| This patch modifies LD_LIBRARY_PATH to make sure the dynamic linker |
| find the correct version of libraries when running the temporary |
| executable to generate the .gir file. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-11-25 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [EFL] REGRESSION(r176514): It made performance tests fail |
| https://bugs.webkit.org/show_bug.cgi?id=139037 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * WebProcess/efl/WebProcessMainEfl.cpp: Don't try to load/shutdown eail if eailLibraryPath() is empty. |
| |
| 2014-11-24 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> |
| |
| Remove Qt cruft related to tap higlighting |
| https://bugs.webkit.org/show_bug.cgi?id=139030 |
| |
| Reviewed by Andreas Kling. |
| |
| * CMakeLists.txt: |
| * WebProcess/WebPage/TapHighlightController.cpp: Removed. |
| * WebProcess/WebPage/TapHighlightController.h: Removed. |
| |
| 2014-11-24 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Unreviewed, EFL build fix since r176530. |
| |
| * UIProcess/CoordinatedGraphics/WebView.cpp: Replace pointer with reference. |
| (WebKit::WebView::processDidExit): |
| |
| 2014-11-24 Benjamin Poulain <bpoulain@apple.com> |
| |
| [WK2] Remove some bad stuff from WebPageProxy |
| https://bugs.webkit.org/show_bug.cgi?id=138896 |
| |
| Reviewed by Sam Weinig. |
| |
| The state loadStateAtProcessExit does not seem to be used anywhere. |
| |
| The state urlAtProcessExit only exists to forward the url from |
| WebPageProxy::resetStateAfterProcessExited() to the coordinated graphics code |
| WebView::processDidExit(). |
| |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::processDidExit): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::urlAtProcessExit): Deleted. |
| (WebKit::WebPageProxy::loadStateAtProcessExit): Deleted. |
| |
| 2014-11-24 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] REGRESSION(176066): It made all performance tests fail |
| https://bugs.webkit.org/show_bug.cgi?id=138865 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| Since r176066, there are crash because evas_gl_surface is destroyed with |
| invalid evas_gl instance after evas_gl is destroyed. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::~EwkView): |
| |
| 2014-11-24 Alberto Garcia <berto@igalia.com> |
| |
| Webkit2 doesnt build on powerpc 32 bits |
| https://bugs.webkit.org/show_bug.cgi?id=130837 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Check if libatomic is needed in order to use std::atomic, and add |
| it to the list of WebKit2 libraries. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-11-24 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.7.2 release. |
| |
| * gtk/NEWS: Add release notes for 2.7.2. |
| |
| 2014-11-24 Krzysztof Czech <k.czech@samsung.com> |
| |
| [EFL] Utilize Eail library to support accessibility in EFL |
| https://bugs.webkit.org/show_bug.cgi?id=137742 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Initialize EAIL module so that all the listeners and atk-bridge started properly. |
| Dynamic loading of EAIL help us to avoid elementary dependencies in WebKit. |
| |
| * WebProcess/efl/WebProcessMainEfl.cpp: |
| (eailLibraryPath): reads path provided by ACCESSIBILITY_EAIL_LIBRARY_PATH variable. |
| (eail): |
| |
| 2014-11-24 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] WebKitWebView is created with the wrong web context when using webkit_web_view_new_with_related_view() |
| https://bugs.webkit.org/show_bug.cgi?id=139023 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| The WebKitWebContext is a construct only property, so it's always |
| set to the default value when not provided, during the |
| construction. When a related-view is used to create a new web view |
| we should ensure that the same web context is used for the new web |
| view, instead of the default. We should also ignore any web |
| context given as construct parameter if a related view is alos provided. |
| |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewConstructed): Do not set the context to the default |
| one when not given during construction. |
| (webkitWebViewSetProperty): Only use the default web context when |
| not provided as construct parameter and there isn't a related view. |
| |
| 2014-11-23 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add API to override the default local storage directory |
| https://bugs.webkit.org/show_bug.cgi?id=138828 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| Add WebKitWebContext:local-storage-directory construct-only |
| property. If not provided the default will be used. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextGetProperty): |
| (webkitWebContextSetProperty): |
| (webkitWebContextConstructed): |
| (webkit_web_context_class_init): |
| |
| 2014-11-23 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Page previews should have titles |
| https://bugs.webkit.org/show_bug.cgi?id=139020 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare -_titleForPreviewOfURL:. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _titleForPreviewOfURL:]): |
| Stub implementation. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (+[WKPagePreviewViewController previewPadding]): |
| Account for the title height. |
| (-[WKPagePreviewViewController loadView]): |
| Set correct autoresize masks on some views; create and configure a title view that is |
| horizontally and vertically centered. |
| (-[WKActionMenuController pagePreviewViewController:titleForPreviewOfURL:]): |
| WKPagePreviewViewControllerDelegate method; wrap -[WKView _titleForPreviewOfURL:]. |
| |
| 2014-11-22 Simon Fraser <simon.fraser@apple.com> |
| |
| Extend WKRenderObject and WKRenderLayer with some more useful data |
| https://bugs.webkit.org/show_bug.cgi?id=139006 |
| |
| Reviewed by Sam Weinig. |
| |
| Implement WKRenderLayerGetBackingStoreMemoryEstimate, |
| WKRenderObjectCopyTextSnippet and WKRenderObjectGetTextLength for improved |
| RenderLayer and RenderTree display in clients of the C SPI. |
| |
| * Shared/API/c/WKRenderLayer.cpp: |
| (WKRenderLayerGetBackingStoreMemoryEstimate): |
| * Shared/API/c/WKRenderLayer.h: |
| * Shared/API/c/WKRenderObject.cpp: |
| (WKRenderObjectCopyTextSnippet): |
| (WKRenderObjectGetTextLength): |
| * Shared/API/c/WKRenderObject.h: |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| * Shared/WebRenderLayer.cpp: |
| (WebKit::WebRenderLayer::create): |
| (WebKit::WebRenderLayer::WebRenderLayer): |
| * Shared/WebRenderLayer.h: |
| (WebKit::WebRenderLayer::backingStoreMemoryEstimate): |
| * Shared/WebRenderObject.cpp: |
| (WebKit::WebRenderObject::create): |
| (WebKit::WebRenderObject::WebRenderObject): |
| * Shared/WebRenderObject.h: |
| (WebKit::WebRenderObject::textSnippet): |
| (WebKit::WebRenderObject::textLength): |
| |
| 2014-11-21 Jer Noble <jer.noble@apple.com> |
| |
| Support multiple signatures of diagnostic logging. |
| https://bugs.webkit.org/show_bug.cgi?id=138690 |
| |
| Reviewed by Anders Carlsson. |
| |
| Extend the existing WKBundlePageDiagnosticLoggingClient interface by deprecating |
| the original logDiagnosticMessage client method in V1 and adding three new, |
| explicit client methods. |
| |
| * CMakeLists.txt: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp: |
| (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageDeprecated): |
| Renamed from logDiagnosticMessage(). |
| (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage): Pass to the client. |
| (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageWithResult): Ditto. |
| (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageWithValue): Ditto. |
| * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::logDiagnosticMessage): Deleted. |
| * WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp: Added. |
| (WebKit::WebDiagnosticLoggingClient::WebDiagnosticLoggingClient): Simple constructor. |
| (WebKit::WebDiagnosticLoggingClient::~WebDiagnosticLoggingClient): Simple destructor. |
| (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessage): Pass to the injected bundle. |
| (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithResult): Ditto. |
| (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithValue): Ditto. |
| * WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h: Added. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): Initialize the new client. |
| |
| 2014-11-21 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Unreviewed, EFL build fix since r176459. |
| |
| r176459 removed Timer parameter in timer callbacks only for Mac port. |
| So this patch applies it to remaining classes for EFL port. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::EwkView): |
| (EwkView::displayTimerFired): |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/efl/TextCheckerClientEfl.cpp: |
| (TextCheckerClientEfl::TextCheckerClientEfl): |
| (TextCheckerClientEfl::languagesUpdateTimerFired): |
| (TextCheckerClientEfl::spellCheckingSettingChangeTimerFired): |
| * UIProcess/efl/TextCheckerClientEfl.h: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: |
| (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost): |
| (WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: |
| |
| 2014-11-21 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, iOS build fix after r176462. |
| |
| Fix include path to TextIndicator.h to include WebCore/ |
| as it was moved. |
| |
| * UIProcess/ios/PageClientImplIOS.mm: |
| |
| 2014-11-21 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, iOS build fix after r176452. |
| |
| dencodeFixedLengthData() now only takes 2 arguments instead of |
| 3. |
| |
| * Shared/ios/QuickLookDocumentData.cpp: |
| (WebKit::QuickLookDocumentData::decode): |
| |
| 2014-11-21 Zalan Bujtas <zalan@apple.com> |
| |
| Simple line layout: Add "show simple line layout debug borders" setting to MiniBrowser. |
| https://bugs.webkit.org/show_bug.cgi?id=138981 |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _simpleLineLayoutDebugBordersEnabled]): |
| (-[WKPreferences _setSimpleLineLayoutDebugBordersEnabled:]): |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| |
| 2014-11-21 Eric Carlson <eric.carlson@apple.com> |
| |
| WebVideoFullscreenManagerProxy must clear pointers when invalidated |
| https://bugs.webkit.org/show_bug.cgi?id=138982 |
| |
| Reviewed by Jer Noble. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::~WebVideoFullscreenManagerProxy): Call invalidate. |
| (WebKit::WebVideoFullscreenManagerProxy::invalidate): Set WebVideoFullscreenModel and |
| WebVideoFullscreenChangeObserver to NULL. |
| |
| 2014-11-21 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseDown:]): |
| |
| 2014-11-21 Beth Dakin <bdakin@apple.com> |
| |
| The preview action menu item should not have a title |
| https://bugs.webkit.org/show_bug.cgi?id=138989 |
| -and corresponding- |
| rdar://problem/19061959 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| |
| 2014-11-21 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Page previews should have a margin. |
| https://bugs.webkit.org/show_bug.cgi?id=138990 |
| |
| Reviewed by Beth Dakin. |
| |
| Enclose the WKWebView (or client-supplied preview view) in a container slightly larger |
| than the preview view. Adjust sizing code to accommodate the margin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (+[WKPagePreviewViewController previewPadding]): |
| Return the total amount of fixed padding surrounding the preview |
| (-[WKPagePreviewViewController loadView]): |
| Store the actual previewView in an ivar so that clients can distinguish it from the container |
| view; wrap the preview in a container view; set frames appropriately. |
| (-[WKActionMenuController _createPreviewPopover]): |
| Update to reflect method rename; supplement the popover size with the fixed padding. |
| (-[WKActionMenuController _preferredPopoverSizeWithPreviewPadding:]): |
| Renamed from -_preferredPopoverSize; account for the fixed padding when computing the preferred size. |
| (-[WKActionMenuController _clearPreviewPopover]): |
| Use the previewView ivar instead of the view controller's view. |
| (-[WKActionMenuController pagePreviewViewControllerWasClicked:]): |
| Ditto. |
| (-[WKActionMenuController _preferredPopoverSize]): Deleted. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r176415): Can get stuck, unable to invoke any DataDetectors popovers |
| https://bugs.webkit.org/show_bug.cgi?id=138955 |
| <rdar://problem/19056442> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseDown:]): |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController wkView:willHandleMouseDown:]): |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| Keep track of whether we have called shouldUseActionsWithContext: on a |
| DDActionContext; if we get a mouseDown without having seen didCloseMenu: |
| (and thus don't properly pair the shouldUseActionsWithContext: with a didUseActions), |
| tear down the old DDActionContext before proceeding. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able |
| https://bugs.webkit.org/show_bug.cgi?id=138960 |
| <rdar://problem/19056715> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| (-[WKActionMenuController _defaultMenuItemsForMailtoLink]): Deleted. |
| Use DataDetectors SPI instead of an explicit blacklist. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| Crashes while encoding a TextIndicator with no contentImageWithHighlight |
| https://bugs.webkit.org/show_bug.cgi?id=138984 |
| <rdar://problem/19063717> |
| |
| Reviewed by Sam Weinig. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextIndicatorData>::encode): |
| (IPC::ArgumentCoder<TextIndicatorData>::decode): |
| encodeImage doesn't deal with null images, so handle that case gracefully. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able |
| https://bugs.webkit.org/show_bug.cgi?id=138960 |
| <rdar://problem/19056715> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Blacklist contact results, because they don't have useful menus. If we |
| bail before setting up _currentActionContext, we'll still allow fallthrough |
| to ordinary text actions, avoiding mysterious failure when a contact is detected. |
| |
| This doesn't break the case that r176351 was intended to fix, |
| because in that case we were detecting e.g. addresses. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| Move TextIndicator{Window} to WebCore |
| https://bugs.webkit.org/show_bug.cgi?id=138954 |
| <rdar://problem/18992185> |
| |
| Some adjustments by Csaba Osztrogonác. |
| Reviewed by Anders Carlsson. |
| |
| * CMakeLists.txt: |
| Remove TextIndicator.cpp. |
| |
| * Scripts/webkit/messages.py: |
| (struct_or_class): |
| (headers_for_type): |
| Tell messages.py that TextIndicatorData is a struct, and comes from TextIndicator.h. |
| |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TextIndicatorData>::encode): |
| (IPC::ArgumentCoder<TextIndicatorData>::decode): |
| Add argument coders for TextIndicatorData. |
| |
| * Shared/DictionaryPopupInfo.h: |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| * UIProcess/API/gtk/PageClientImpl.h: |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/WKContentView.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| * UIProcess/mac/WKActionMenuController.mm: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| * WebProcess/WebPage/FindController.cpp: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| Adjust to TextIndicator and TextIndicatorWindow's new home. |
| |
| 2014-11-21 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r176238): Mailto links are getting preloaded, which results in a compose window |
| https://bugs.webkit.org/show_bug.cgi?id=138972 |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| Only preload links. |
| |
| 2014-11-21 Anders Carlsson <andersca@apple.com> |
| |
| Remove the Timer parameters from timer callbacks |
| https://bugs.webkit.org/show_bug.cgi?id=138974 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::NetworkResourceLoader): |
| (WebKit::NetworkResourceLoader::bufferingTimerFired): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * Shared/WebMemorySampler.cpp: |
| (WebKit::WebMemorySampler::WebMemorySampler): |
| (WebKit::WebMemorySampler::sampleTimerFired): |
| (WebKit::WebMemorySampler::stopTimerFired): |
| * Shared/WebMemorySampler.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.mm: |
| (WebKit::RemoteLayerBackingStoreCollection::RemoteLayerBackingStoreCollection): |
| (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::PluginView): |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): |
| (WebKit::RemoteLayerTreeDrawingArea::layerFlushTimerFired): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::processSuspensionCleanupTimerFired): |
| (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired): |
| * WebProcess/WebProcess.h: |
| |
| 2014-11-21 Anders Carlsson <andersca@apple.com> |
| |
| Remove the Timer parameters from timer callbacks |
| https://bugs.webkit.org/show_bug.cgi?id=138974 |
| |
| Reviewed by Antti Koivisto. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::NetworkResourceLoader): |
| (WebKit::NetworkResourceLoader::bufferingTimerFired): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * Shared/WebMemorySampler.cpp: |
| (WebKit::WebMemorySampler::WebMemorySampler): |
| (WebKit::WebMemorySampler::sampleTimerFired): |
| (WebKit::WebMemorySampler::stopTimerFired): |
| * Shared/WebMemorySampler.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.mm: |
| (WebKit::RemoteLayerBackingStoreCollection::RemoteLayerBackingStoreCollection): |
| (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::PluginView): |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): |
| (WebKit::RemoteLayerTreeDrawingArea::layerFlushTimerFired): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::processSuspensionCleanupTimerFired): |
| (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired): |
| * WebProcess/WebProcess.h: |
| |
| 2014-11-21 Antti Koivisto <antti@apple.com> |
| |
| Fix iOS build. |
| |
| * Shared/ios/QuickLookDocumentData.cpp: |
| (WebKit::QuickLookDocumentData::encode): |
| |
| 2014-11-21 Antti Koivisto <antti@apple.com> |
| |
| Remove alignment code from IPC coders |
| https://bugs.webkit.org/show_bug.cgi?id=138963 |
| |
| Reviewed by Anders Carlsson. |
| |
| Alignment code achieves nothing except making the messages somewhat bigger. |
| |
| * Platform/IPC/ArgumentCoders.cpp: |
| (IPC::ArgumentCoder<CString>::encode): |
| (IPC::ArgumentCoder<CString>::decode): |
| (IPC::ArgumentCoder<String>::encode): |
| (IPC::decodeStringText): |
| * Platform/IPC/ArgumentCoders.h: |
| (IPC::SimpleArgumentCoder::encode): |
| (IPC::SimpleArgumentCoder::decode): |
| * Platform/IPC/ArgumentDecoder.cpp: |
| (IPC::ArgumentDecoder::initialize): |
| (IPC::ArgumentDecoder::bufferIsLargeEnoughToContain): |
| (IPC::ArgumentDecoder::decodeFixedLengthData): |
| (IPC::ArgumentDecoder::decodeVariableLengthByteArray): |
| (IPC::ArgumentDecoder::decodeNumber): |
| (IPC::ArgumentDecoder::decode): |
| (IPC::roundUpToAlignment): Deleted. |
| (IPC::alignedBufferIsLargeEnoughToContain): Deleted. |
| (IPC::ArgumentDecoder::alignBufferPosition): Deleted. |
| (IPC::decodeValueFromBuffer): Deleted. |
| * Platform/IPC/ArgumentDecoder.h: |
| (IPC::ArgumentDecoder::isInvalid): |
| (IPC::ArgumentDecoder::markInvalid): |
| (IPC::ArgumentDecoder::bufferIsLargeEnoughToContain): |
| * Platform/IPC/ArgumentEncoder.cpp: |
| (IPC::ArgumentEncoder::ArgumentEncoder): |
| (IPC::ArgumentEncoder::grow): |
| (IPC::ArgumentEncoder::encodeFixedLengthData): |
| (IPC::ArgumentEncoder::encodeVariableLengthByteArray): |
| (IPC::ArgumentEncoder::encode): |
| * Platform/IPC/ArgumentEncoder.h: |
| (IPC::ArgumentEncoder::buffer): |
| (IPC::ArgumentEncoder::mutableBuffer): |
| * Platform/IPC/DataReference.cpp: |
| (IPC::SharedBufferDataReference::encode): |
| * Platform/IPC/MessageEncoder.cpp: |
| (IPC::MessageEncoder::setIsSyncMessage): |
| (IPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply): |
| * Platform/IPC/mac/ConnectionMac.mm: |
| (IPC::Connection::sendOutgoingMessage): |
| |
| 2014-11-21 Anders Carlsson <andersca@apple.com> |
| |
| Make memoryCache() return a reference |
| https://bugs.webkit.org/show_bug.cgi?id=138939 |
| |
| Reviewed by Antti Koivisto. |
| |
| * WebProcess/Network/NetworkProcessConnection.cpp: |
| (WebKit::NetworkProcessConnection::didCacheResource): |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::getCacheOrigins): |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::terminate): |
| (WebKit::WebProcess::didClose): |
| (WebKit::WebProcess::clearResourceCaches): |
| (WebKit::getWebCoreMemoryCacheStatistics): |
| (WebKit::WebProcess::setMemoryCacheDisabled): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformSetCacheModel): |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| |
| 2014-11-21 Daniel Bates <dabates@apple.com> |
| |
| [iOS] WebKit2 fails to build with public SDK due to missing SPI from CFNetwork, QuartzCore, MediaPlayer, XPC |
| https://bugs.webkit.org/show_bug.cgi?id=138930 |
| |
| Reviewed by Anders Carlsson. |
| |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: Remove forward declaration for NSCachedURLResponse |
| methods as this functionality was incorporated into CFNetworkSPI.h, which is included by this file. |
| * Platform/mac/LayerHostingContext.mm: Moved QuartzCore forward declarations from this file to file |
| QuartzCoreSPI.h and included header QuartzCoreSPI.h. |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Include header XPCSPI.h. |
| * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Remove forward declarations of |
| XPC SPI since these declarations are part of XCPSPI.h, which is included by header XPCServiceEntryPoint.h. |
| * UIProcess/API/Cocoa/WKWebView.mm: Remove unnecessary include of header QuartzCore/CARenderServer.h |
| as it will be included by header QuartzCoreSPI.h. |
| * UIProcess/Network/NetworkProcessProxy.cpp: Include header XPCSPI.h when building for iOS with |
| USE(XPC_SERVICES) enabled. |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Include header MediaPlayerSPI.h instead of including |
| MediaPlayer private headers directly. Also sort the list of #import directives. |
| |
| 2014-11-20 Dan Bernstein <mitz@apple.com> |
| |
| Build fix. |
| |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: |
| (-[WKAirPlayRoutePicker showAirPlayPickerIPad:fromRect:]): Cast the return value of |
| [getMPAudioVideoRoutingPopoverControllerClass() alloc] to resolve ambiguity about which |
| -initWithType: we are calling. |
| (-[WKAirPlayRoutePicker showAirPlayPickerIPhone:]): Cast to resolve ambiguity. |
| (-[WKAirPlayRoutePicker show:fromRect:]): Cast for consistency. |
| |
| 2014-11-20 Benjamin Poulain <bpoulain@apple.com> |
| |
| Remove the remaining vestiges of minimal-ui |
| https://bugs.webkit.org/show_bug.cgi?id=138890 |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCommitLoad): |
| (WebKit::WebPage::didFinishDocumentLoad): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::savePageState): |
| (WebKit::WebPage::restorePageState): |
| (WebKit::WebPage::viewportConfigurationChanged): |
| (WebKit::WebPage::updateViewportSizeForCSSViewportUnits): |
| |
| 2014-11-20 Beth Dakin <bdakin@apple.com> |
| |
| Preview popover needs minimum and maximum sizes |
| https://bugs.webkit.org/show_bug.cgi?id=138943 |
| -and corresponding- |
| rdar://problem/18904651 |
| |
| Reviewed by Tim Horton. |
| |
| Quick follow-up to get the right screen. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController largestPopoverSize]): |
| |
| 2014-11-20 Beth Dakin <bdakin@apple.com> |
| |
| Preview popover needs minimum and maximum sizes |
| https://bugs.webkit.org/show_bug.cgi?id=138943 |
| -and corresponding- |
| rdar://problem/18904651 |
| |
| Reviewed by Tim Horton. |
| |
| This patch enforces minimum and maximum popover sizes. If the popover needs to be |
| sized up to be above the minimum, it will end up covering some of the |
| _hitTestResult, so we should compute a new origin rect based on the original |
| event location. |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| (-[WKActionMenuController _createPreviewPopover]): |
| (-[WKActionMenuController largestPopoverSize]): |
| (-[WKActionMenuController _preferredPopoverSize]): |
| (-[WKActionMenuController _preferredSizeForPopoverPresentedFromOriginRect:]): Deleted. |
| |
| 2014-11-20 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Clicks on previews can be recognized multiple times |
| https://bugs.webkit.org/show_bug.cgi?id=138944 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController _clickRecognized:]): |
| Only dispatch the delegate message on the appropriate gesture recognizer state transition. |
| |
| 2014-11-20 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Clients should be able to customize preview click behavior |
| https://bugs.webkit.org/show_bug.cgi?id=138940 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare -_handleClickInPreviewView:URL:. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _handleClickInPreviewView:URL:]): |
| Extracted from -[WKActionMenuController pagePreviewViewControllerWasClicked:]. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController pagePreviewViewControllerWasClicked:]): |
| Extract code to -[WKView _handleClickInPreviewView:URL:]. |
| |
| 2014-11-20 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r176420 to fix non Apple builds. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::shouldPlugInAutoStartFromOrigin): |
| |
| 2014-11-20 Anders Carlsson <andersca@apple.com> |
| |
| WebPlugInClient::m_webPage can never be null, use a reference |
| https://bugs.webkit.org/show_bug.cgi?id=138937 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebCoreSupport/WebPlugInClient.cpp: |
| (WebKit::WebPlugInClient::WebPlugInClient): |
| (WebKit::WebPlugInClient::shouldAutoStartFromOrigin): |
| * WebProcess/WebCoreSupport/WebPlugInClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::shouldPlugInAutoStartFromOrigin): |
| * WebProcess/WebProcess.h: |
| |
| 2014-11-20 Tim Horton <timothy_horton@apple.com> |
| |
| TextIndicator should have getters for TextIndicator::Data properties |
| https://bugs.webkit.org/show_bug.cgi?id=138920 |
| |
| Reviewed by Beth Dakin. |
| |
| Instead of having clients reach into the data(), add getters. |
| Remove frameRect(), which is identical to the textBoundingRectInWindowCoordinates getter. |
| Remove declarations for draw/drawContentImage, which were already removed. |
| |
| * Shared/TextIndicator.cpp: |
| (WebKit::TextIndicator::frameRect): Deleted. |
| * Shared/TextIndicator.h: |
| (WebKit::TextIndicator::textBoundingRectInWindowCoordinates): |
| (WebKit::TextIndicator::textRectsInBoundingRectCoordinates): |
| (WebKit::TextIndicator::contentImageScaleFactor): |
| (WebKit::TextIndicator::contentImageWithHighlight): |
| (WebKit::TextIndicator::contentImage): |
| * UIProcess/mac/TextIndicatorWindow.mm: |
| (-[WKTextIndicatorView initWithFrame:textIndicator:margin:]): |
| (-[WKTextIndicatorView presentWithCompletionHandler:]): |
| (WebKit::TextIndicatorWindow::setTextIndicator): |
| |
| 2014-11-20 Tim Horton <timothy_horton@apple.com> |
| |
| Cancel DataDetectors menu earlier if we know it can't be presented |
| https://bugs.webkit.org/show_bug.cgi?id=138922 |
| <rdar://problem/18950441> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| If we end up with a menu with no items, don't change selection or anything. |
| |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| Move our call to shouldUseActionsWithContext earlier, to menuNeedsUpdate, |
| and use a bigger hammer (removeAllItems). |
| |
| 2014-11-20 Tim Horton <timothy_horton@apple.com> |
| |
| Don't use a TextIndicator BounceAndCrossfade transition if the selection highlight is never shown |
| https://bugs.webkit.org/show_bug.cgi?id=138919 |
| <rdar://problem/19042207> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/TextIndicator.h: |
| (WebKit::TextIndicator::presentationTransition): |
| (WebKit::TextIndicator::setPresentationTransition): |
| Add getter and setter pair. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| If the selection highlight will never be shown because there's only a single menu item, |
| use a normal bounce animation instead of bounce + crossfade. |
| |
| 2014-11-20 Beth Dakin <bdakin@apple.com> |
| |
| Invalid message WebPageProxy.DidPerformDictionaryLookup on Google stocks result |
| https://bugs.webkit.org/show_bug.cgi?id=138568 |
| -and corresponding- |
| rdar://problem/18904600 |
| |
| Reviewed by Tim Horton. |
| |
| Skip images for lookup. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| |
| 2014-11-20 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Add more ENABLE({TOUCH_EVENTS, IOS_TOUCH_EVENTS})-guards in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=138928 |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView setupInteraction]): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCommitLoad): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::sendTapHighlightForNodeIfNecessary): |
| |
| 2014-11-20 Anders Carlsson <andersca@apple.com> |
| |
| Add -[WKWebView loadData:MIMEType:textEncodingName:baseURL:] |
| https://bugs.webkit.org/show_bug.cgi?id=138929 |
| <rdar://problem/18683802> |
| |
| Reviewed by Dan Bernstein. |
| |
| Also, re-implement -[WKWebView loadHTMLString:baseURL:] in terms of this newly added function |
| and assume a UTF-8 encoding. This matches what Legacy WebKit does. |
| |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView loadHTMLString:baseURL:]): |
| (-[WKWebView loadData:MIMEType:textEncodingName:baseURL:]): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::loadData): |
| * UIProcess/WebPageProxy.h: |
| |
| 2014-11-20 Antti Koivisto <antti@apple.com> |
| |
| Remove alignment code from cache coders |
| https://bugs.webkit.org/show_bug.cgi?id=138927 |
| |
| Failed to land this file. |
| |
| * NetworkProcess/cache/NetworkCacheCoders.cpp: |
| (WebKit::NetworkCacheCoder<CString>::encode): |
| (WebKit::NetworkCacheCoder<CString>::decode): |
| (WebKit::NetworkCacheCoder<String>::encode): |
| (WebKit::decodeStringText): |
| (WebKit::NetworkCacheCoder<WebCore::CertificateInfo>::encode): |
| (WebKit::NetworkCacheCoder<WebCore::CertificateInfo>::decode): |
| * NetworkProcess/cache/NetworkCacheCoders.h: |
| |
| 2014-11-20 Antti Koivisto <antti@apple.com> |
| |
| Remove alignment code from cache coders |
| https://bugs.webkit.org/show_bug.cgi?id=138927 |
| |
| Reviewed by Anders Carlsson. |
| |
| Alignment code doesn't do anything useful, wastes space and produces wrong results |
| if the encoder and decoder buffers don't have the same 8-byte alignment. |
| |
| * NetworkProcess/cache/NetworkCacheDecoder.cpp: |
| (WebKit::NetworkCacheDecoder::NetworkCacheDecoder): |
| (WebKit::NetworkCacheDecoder::bufferIsLargeEnoughToContain): |
| (WebKit::NetworkCacheDecoder::decodeFixedLengthData): |
| (WebKit::NetworkCacheDecoder::decodeNumber): |
| (WebKit::roundUpToAlignment): Deleted. |
| (WebKit::alignedBufferIsLargeEnoughToContain): Deleted. |
| (WebKit::NetworkCacheDecoder::alignBufferPosition): Deleted. |
| * NetworkProcess/cache/NetworkCacheDecoder.h: |
| (WebKit::NetworkCacheDecoder::currentOffset): |
| (WebKit::NetworkCacheDecoder::isInvalid): |
| (WebKit::NetworkCacheDecoder::markInvalid): |
| (WebKit::NetworkCacheDecoder::bufferIsLargeEnoughToContain): |
| * NetworkProcess/cache/NetworkCacheEncoder.cpp: |
| (WebKit::NetworkCacheEncoder::grow): |
| (WebKit::NetworkCacheEncoder::encodeFixedLengthData): |
| (WebKit::NetworkCacheEncoder::encodeNumber): |
| (WebKit::roundUpToAlignment): Deleted. |
| * NetworkProcess/cache/NetworkCacheEncoder.h: |
| |
| 2014-11-20 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [GTK] URTBF after r176363. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::setTextIndicator): |
| * UIProcess/API/gtk/PageClientImpl.h: |
| |
| 2014-11-19 Yongjun Zhang <yongjun_zhang@apple.com> |
| |
| Don't track sub-resources that are started after main frame progress has completed. |
| https://bugs.webkit.org/show_bug.cgi?id=138582 |
| |
| Reviewed by Sam Weinig. |
| |
| After main frame progress has finished, starting loading a sub-resource shouldn't affect |
| UI process's view of page loading status (i.e., the page has already completed loading |
| and the progress shouldn't change). To achive that, don't track the subresources that |
| are started after the main frame has finished, except for those triggered by user interaction. |
| |
| * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp: Notify WebPage that the main frame progress |
| has started or finished. |
| (WebKit::WebProgressTrackerClient::progressStarted): |
| (WebKit::WebProgressTrackerClient::progressFinished): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| (WebKit::WebPage::addResourceRequest): Don't track the resource request if it is initiated after |
| the main frame is loaded and it is not triggered by user interaction. |
| (WebKit::WebPage::removeResourceRequest): |
| * WebProcess/WebPage/WebPage.h: Rename m_networkResourceRequestIdentifiers to m_trackedNetworkResourceRequestIdentifiers. |
| (WebKit::WebPage::setMainFrameProgressCompleted): |
| |
| 2014-11-19 Sun-woo Nam <sunny.nam@samsung.com> |
| |
| [EFL] Fix build failure since r176363. |
| https://bugs.webkit.org/show_bug.cgi?id=138903 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| The parameter for animation on setTextIndicator() was removed on 'PageClient' class. |
| |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::setTextIndicator): |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| |
| 2014-11-19 Timothy Horton <timothy_horton@apple.com> |
| |
| Try to fix the iOS build |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::performDictionaryLookupForSelection): |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| |
| 2014-11-19 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the 32-bit build |
| |
| * UIProcess/mac/TextIndicatorWindow.mm: |
| (WebKit::TextIndicatorWindow::setTextIndicator): |
| |
| 2014-11-19 Tim Horton <timothy_horton@apple.com> |
| |
| Add an optional entry transition (from selection highlight) to TextIndicator |
| https://bugs.webkit.org/show_bug.cgi?id=138856 |
| <rdar://problem/18840128> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/TextIndicator.cpp: |
| (WebKit::outsetIndicatorRectIncludingShadow): |
| (WebKit::TextIndicator::createWithRange): |
| (WebKit::snapshotSelectionWithHighlight): |
| (WebKit::TextIndicator::createWithSelectionInFrame): |
| (WebKit::TextIndicator::frameRect): |
| (WebKit::TextIndicator::Data::encode): |
| (WebKit::TextIndicator::Data::decode): |
| Remove TextIndicator::draw and related functions; drawing is handled entirely |
| by the TextIndicatorWindow now, and TextIndicator just stores the required data. |
| |
| Unify outsetIndicatorRectIncludingShadow. |
| |
| Add an argument to createWithRange/createWithSelectionInFrame to indicate |
| if the TextIndicator should transition from the selection highlight to |
| the yellow bubble. |
| |
| If we're doing the transition, paint the selection into a second bitmap, |
| without forcing the text to black and without hiding the blue highlight. |
| |
| Encode/decode the second bitmap. |
| |
| * Shared/TextIndicator.h: |
| * UIProcess/mac/TextIndicatorWindow.h: |
| * UIProcess/mac/TextIndicatorWindow.mm: |
| (-[WKTextIndicatorView initWithFrame:textIndicator:margin:transitionFromSelectionColor:]): |
| (-[WKTextIndicatorView presentWithCompletionHandler:]): |
| (-[WKTextIndicatorView hideWithCompletionHandler:]): |
| (-[WKTextIndicatorView isFlipped]): |
| (WebKit::TextIndicatorWindow::TextIndicatorWindow): |
| (WebKit::TextIndicatorWindow::setTextIndicator): |
| (WebKit::TextIndicatorWindow::closeWindow): |
| (WebKit::TextIndicatorWindow::startFadeOutTimerFired): |
| Re-implement the bounce animation using CoreAnimation instead of |
| the WKSI-based WKWindowBounceAnimation*. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForSelection): |
| (WebKit::WebPage::performDictionaryLookupOfCurrentSelection): |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| Use the aforementioned transition animation for performDictionaryLookupOfCurrentSelection, |
| the context menu lookup item, and for Data Detectors. |
| |
| 2014-11-19 Anders Carlsson <andersca@apple.com> |
| |
| Add a version of API::Data::createWithoutCopying that takes an NSData |
| https://bugs.webkit.org/show_bug.cgi?id=138893 |
| |
| Reviewed by Dan Bernstein. |
| |
| * Shared/APIData.h: |
| * Shared/Cocoa/APIDataCocoa.mm: Added. |
| (API::Data::createWithoutCopying): |
| * UIProcess/API/Cocoa/WKBrowsingContextController.mm: |
| (-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]): |
| (releaseNSData): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm: |
| (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): |
| |
| 2014-11-19 Beth Dakin <bdakin@apple.com> |
| |
| Invoking an action menu on a selection should result in the text menu |
| https://bugs.webkit.org/show_bug.cgi?id=138892 |
| -and corresponding- |
| rdar://problem/18996776 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItems]): |
| |
| 2014-11-19 Anders Carlsson <andersca@apple.com> |
| |
| Fix iOS build. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| |
| 2014-11-19 Anders Carlsson <andersca@apple.com> |
| |
| Rename two Cocoa-only .cpp files to .mm. |
| |
| Rubber-stamped by Sam Weinig. |
| |
| * Shared/APIWebArchive.mm: Renamed from Source/WebKit2/Shared/APIWebArchive.cpp. |
| * Shared/APIWebArchiveResource.mm: Renamed from Source/WebKit2/Shared/APIWebArchiveResource.cpp. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-11-19 Beth Dakin <bdakin@apple.com> |
| |
| Data detected results with no menu items should not fall through to regular text |
| action menus |
| https://bugs.webkit.org/show_bug.cgi?id=138887 |
| -and corresponding- |
| rdar://problem/18971616 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItems]): |
| |
| 2014-11-19 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Make WebKit build with public iOS SDK |
| https://bugs.webkit.org/show_bug.cgi?id=136863 |
| |
| Reviewed by David Kilzer. |
| |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: Moved CFNetwork forward declarations |
| from this file to file CFNetworkSPI.h and included header CFNetworkSPI.h. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.mm: Ditto. |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: Ditto. |
| * UIProcess/API/Cocoa/WKProcessPool.mm: Ditto. |
| * UIProcess/mac/WebContextMac.mm: Ditto. |
| * WebProcess/cocoa/WebProcessCocoa.mm: Ditto. |
| |
| 2014-11-19 Anders Carlsson <andersca@apple.com> |
| |
| Add APIs for customizing the user agent |
| https://bugs.webkit.org/show_bug.cgi?id=138881 |
| rdar://problem/17233981 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/WKWebView.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| (-[WKWebView customUserAgent]): |
| (-[WKWebView setCustomUserAgent:]): |
| (-[WKWebView _customUserAgent]): |
| (-[WKWebView _setCustomUserAgent:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (LazyInitialized::set): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| (defaultApplicationNameForUserAgent): |
| (-[WKWebViewConfiguration applicationNameForUserAgent]): |
| (-[WKWebViewConfiguration setApplicationNameForUserAgent:]): |
| |
| 2014-11-19 Simon Fraser <simon.fraser@apple.com> |
| |
| [WK2 UI-side compositing] Initialize RemoteLayerTreeTransaction properties which are unset on Mac |
| https://bugs.webkit.org/show_bug.cgi?id=138877 |
| |
| Reviewed by Tim Horton. |
| |
| These data members are unused on Mac, but still encoded, so initialize them with |
| reasonable values. |
| |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::RemoteLayerTreeTransaction): |
| |
| 2014-11-19 Enrica Casucci <enrica@apple.com> |
| |
| Refactor iOS selection gestures. |
| https://bugs.webkit.org/show_bug.cgi?id=138720 |
| rdar://problem/18964359 |
| |
| Reviewed by Benjamin Poulain. |
| |
| This is a first step towards refactoring the selection gestures code. |
| It introduces more general selection movement functions that can be used to build |
| the gestures. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (toWKTextGranularity): |
| (toWKSelectionDirection): |
| (-[WKContentView selectPositionAtPoint:completionHandler:]): |
| (-[WKContentView selectPositionAtBoundary:inDirection:fromPoint:completionHandler:]): |
| (-[WKContentView selectTextWithGranularity:atPoint:completionHandler:]): |
| (-[WKContentView beginSelectionInDirection:completionHandler:]): |
| (-[WKContentView updateSelectionWithExtentPoint:completionHandler:]): |
| (-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]): |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::selectTextWithGranularityAtPoint): |
| (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection): |
| (WebKit::WebPageProxy::selectPositionAtPoint): |
| (WebKit::WebPageProxy::beginSelectionInDirection): |
| (WebKit::WebPageProxy::updateSelectionWithExtentPoint): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::selectWithGesture): |
| (WebKit::WebPage::visiblePositionInFocusedNodeForPoint): |
| (WebKit::WebPage::selectPositionAtPoint): |
| (WebKit::WebPage::selectPositionAtBoundaryWithDirection): |
| (WebKit::WebPage::selectTextWithGranularityAtPoint): |
| (WebKit::WebPage::beginSelectionInDirection): |
| (WebKit::WebPage::updateSelectionWithExtentPoint): |
| |
| 2014-11-19 Simon Fraser <simon.fraser@apple.com> |
| |
| [WK2 UI-side Compositing] Fix the position and scroll indicator of the UI-side tiled scrolling indicator |
| https://bugs.webkit.org/show_bug.cgi?id=138876 |
| |
| Reviewed by Beth Dakin. |
| |
| Fix the position of the tiled scrolling indicator in MiniBrowser by taking top |
| content offset into account. |
| |
| On Mac, pass the current scroll position back to the UI process via the RemoteLayerTreeTransaction |
| so that we can use it to show the correctly scroll offset in the indicator. This is temporary until |
| Mac does UI-side scrolling. |
| |
| * Shared/mac/RemoteLayerTreeTransaction.h: |
| (WebKit::RemoteLayerTreeTransaction::scrollPosition): |
| (WebKit::RemoteLayerTreeTransaction::setScrollPosition): |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::encode): |
| (WebKit::RemoteLayerTreeTransaction::decode): |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h: |
| * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm: |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree): |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation): |
| (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::willCommitLayerTree): |
| |
| 2014-11-19 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Error in documentation of webkit_print_operation_get_page_setup() |
| https://bugs.webkit.org/show_bug.cgi?id=138868 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Fix copypaste error in documentation of |
| webkit_print_operation_get_page_setup(). |
| |
| * UIProcess/API/gtk/WebKitPrintOperation.cpp: |
| |
| 2014-11-19 Mark Rowe <mrowe@apple.com> |
| |
| Remove an unused file. |
| |
| * version.plist: Removed. |
| |
| 2014-11-18 Benjamin Poulain <bpoulain@apple.com> |
| |
| [WK2] Remove the minimalUI code from the UIProcess |
| https://bugs.webkit.org/show_bug.cgi?id=138819 |
| |
| Reviewed by Sam Weinig. |
| |
| It looks like the only interface we have to keep alive is |
| [WKWebView _overrideLayoutParametersWithMinimumLayoutSize:minimumLayoutSizeForMinimalUI:maximumUnobscuredSizeOverride:]. |
| |
| Clean up everything else, it is a pile of useless code. |
| |
| * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _didCommitLoadForMainFrame]): |
| (-[WKWebView _didCommitLayerTree:]): |
| (-[WKWebView _frameOrBoundsChanged]): |
| (-[WKWebView _didRelaunchProcess]): |
| (-[WKWebView _beginAnimatedResizeWithUpdates:]): |
| (-[WKWebView _overrideLayoutParametersWithMinimumLayoutSize:minimumLayoutSizeForMinimalUI:maximumUnobscuredSizeOverride:]): |
| (-[WKWebView _overrideLayoutParametersWithMinimumLayoutSize:maximumUnobscuredSizeOverride:]): |
| (-[WKWebView _setUsesMinimalUI:]): Deleted. |
| (-[WKWebView _usesMinimalUI]): Deleted. |
| (activeMinimumLayoutSizeForMinimalUI): Deleted. |
| (-[WKWebView _setMinimumLayoutSizeOverrideForMinimalUI:]): Deleted. |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| * UIProcess/API/ios/WKViewIOS.mm: |
| (-[WKView _frameOrBoundsChanged]): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::setUsesMinimalUI): Deleted. |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::dynamicViewportSizeUpdate): |
| (WebKit::WebPageProxy::setViewportConfigurationMinimumLayoutSizeForMinimalUI): Deleted. |
| (WebKit::WebPageProxy::setUsesMinimalUI): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::viewportPropertiesDidChange): |
| (WebKit::WebPage::dynamicViewportSizeUpdate): |
| (WebKit::WebPage::setViewportConfigurationMinimumLayoutSizeForMinimalUI): Deleted. |
| |
| 2014-11-18 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Unreviewed. Revision to the build fix in r176304. |
| |
| The guarded method should simply be in the !TARGET_OS_IPHONE block. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| |
| 2014-11-18 Benjamin Poulain <bpoulain@apple.com> |
| |
| iOS8 new "slow tap" heuristic fires mouse compat events despite preventDefault on touchend |
| https://bugs.webkit.org/show_bug.cgi?id=137069 |
| rdar://problem/18481464 |
| |
| Reviewed by Simon Fraser. |
| |
| On WebKit2, we let UIWebTouchEventsGestureRecognizer and _UIWebHighlightLongPressGestureRecognizer |
| run concurrently. This causes a race with an incorrect behavior: |
| 1) If UIWebTouchEventsGestureRecognizer does not cancel the native gestures on start. |
| 2) _UIWebHighlightLongPressGestureRecognizer starts after highlightDelay. |
| 3) When the finger leaves the screen, both gestures end. |
| -> If the touch end sent to JavaScript in [3] ask the priority over native events, that no longer stops |
| the _UIWebHighlightLongPressGestureRecognizer. |
| |
| The two gesture recognizers can run in any order, there is no guarantee on which one runs first. |
| To solve the bug, I must make sure the _UIWebHighlightLongPressGestureRecognizer never trigger a click |
| if the page wants the event. |
| |
| To solve the order problem, I use the fact that event recognition goes in two phases for |
| non cancelled events: |
| 1) Update the gesture recognizers. |
| 2) Trigger the actions. |
| |
| I do not know the order of recognizers in [1], but I know both have run before [2] is executed. |
| I use that to stop _UIWebHighlightLongPressGestureRecognizer from ending with a click in the case of the bug: |
| 1) When _UIWebHighlightLongPressGestureRecognizer starts, I set _highlightLongPressCanClick signaling |
| the gesture can end normally. This is done on a timer and not direct input so I don't really have to worry |
| about a race here. |
| 2) When processing the touch event for UIWebTouchEventsGestureRecognizer, I reset the flag _highlightLongPressCanClick |
| if the page wants the event. |
| 3) When the actions of _UIWebHighlightLongPressGestureRecognizer are processed, the touch event |
| has already been processed by the page and the flag has been cleared if needed. |
| |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView _webTouchEvent:preventsNativeGestures:]): |
| (-[WKContentView _highlightLongPressRecognized:]): |
| |
| 2014-11-18 Ryosuke Niwa <rniwa@webkit.org> |
| |
| iOS build fix after r176299. This method is not defined in WKViewIOS.mm. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| |
| 2014-11-18 David Kilzer <ddkilzer@apple.com> |
| |
| FeatureDefines.xcconfig: Switch from using PLATFORM_NAME to SDK selectors |
| <http://webkit.org/b/138813> |
| |
| Reviewed by Mark Rowe. |
| |
| * Configurations/FeatureDefines.xcconfig: Switch to using SDK |
| selectors. |
| |
| 2014-11-18 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Give clients a way to cancel preview popovers |
| https://bugs.webkit.org/show_bug.cgi?id=138855 |
| |
| Reviewed by Tim Horton. |
| |
| Promote -[WKView _dismissActionMenuPopovers] from internal to private. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _dismissActionMenuPopovers]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| |
| 2014-11-18 Chris Dumez <cdumez@apple.com> |
| |
| Add a setting to toggle DOMTimer throttling support |
| https://bugs.webkit.org/show_bug.cgi?id=138844 |
| <rdar://problem/19020874> |
| |
| Reviewed by Andreas Kling. |
| |
| Add a setting to disable DOM timers throttling, in order to help |
| developers determine if a specific issue is caused by timer |
| throttling. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetDOMTimersThrottlingEnabled): |
| (WKPreferencesGetDOMTimersThrottlingEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2014-11-18 Geoffrey Garen <ggaren@apple.com> |
| |
| Removed the custom allocator for ListHashSet nodes |
| https://bugs.webkit.org/show_bug.cgi?id=138841 |
| |
| Reviewed by Andreas Kling. |
| |
| Uses of ListHashSet no longer need to declare an inline capacity, |
| since that was only used to specify the capacity of the custom allocator. |
| |
| * UIProcess/Plugins/PluginInfoStore.cpp: |
| (WebKit::PluginInfoStore::loadPluginsIfNecessary): |
| |
| 2014-11-18 Eric Carlson <eric.carlson@apple.com> |
| |
| Unreviewed build fix after r176283. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| |
| 2014-11-18 Tim Horton <timothy_horton@apple.com> |
| |
| Avoid re-encoding action menu image data |
| https://bugs.webkit.org/show_bug.cgi?id=138817 |
| <rdar://problem/18840382> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| Store and encode a SharedMemory with the raw encoded image data, |
| instead of re-painting the image into a ShareableBitmap. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _hitTestResultImage]): |
| (-[WKActionMenuController _defaultMenuItemsForImage]): |
| (-[WKActionMenuController _copyImage:]): |
| (-[WKActionMenuController _addImageToPhotos:]): |
| (-[WKActionMenuController _defaultMenuItems]): |
| (-[WKActionMenuController _canAddMediaToPhotos]): Deleted. |
| Build a temporary filename from a UUID and the image's desired extension. |
| Use the Image's encoded data instead of re-encoding it with CGImageDestination. |
| Build an image menu only if we have an image, URL, data, and extension. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| |
| 2014-11-18 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] allow host application to opt-out of alternate fullscreen |
| https://bugs.webkit.org/show_bug.cgi?id=138787 |
| |
| Reviewed by Sam Weinig. |
| |
| "allowsAlternateFullscreen" doesn't need to be in the public WKWebView header. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): allowsAlternateFullscreen -> _allowsAlternateFullscreen. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: Remove allowsAlternateFullscreen. |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration _allowsAlternateFullscreen]): New. |
| (-[WKWebViewConfiguration _setAllowsAlternateFullscreen:]): New. |
| |
| * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Declare _allowsAlternateFullscreen. |
| |
| 2014-11-18 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Subclass CachedFont for SVG fonts |
| https://bugs.webkit.org/show_bug.cgi?id=138686 |
| |
| Reviewed by Simon Fraser. |
| |
| Re-landing due to flakey bots. |
| |
| Update for enum type. |
| |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: |
| (WebKit::maximumBufferingTime): |
| |
| 2014-11-18 Chris Dumez <cdumez@apple.com> |
| |
| Update the Vector API to deal with unsigned types instead of size_t |
| https://bugs.webkit.org/show_bug.cgi?id=138824 |
| |
| Reviewed by Andreas Kling. |
| |
| Update code base to fix build errors related to the typing changes |
| in the Vector API (size_t -> unsigned). |
| |
| * Platform/IPC/ArgumentCoders.h: |
| * Platform/IPC/DataReference.h: |
| |
| 2014-11-18 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r176264. |
| https://bugs.webkit.org/show_bug.cgi?id=138837 |
| |
| caused many test failures (Requested by litherum on #webkit). |
| |
| Reverted changeset: |
| |
| "Subclass CachedFont for SVG fonts" |
| https://bugs.webkit.org/show_bug.cgi?id=138686 |
| http://trac.webkit.org/changeset/176264 |
| |
| 2014-11-18 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Libdispatch, Dyld, IOKit, Mach, NSPointerFunctions, MobileGestalt |
| SPI are not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138802 |
| |
| Reviewed by David Kilzer. |
| |
| Include headers DispatchSPI.h and MachVMSPI.h.h instead of including |
| libdispatch and Mach headers directly. |
| |
| * Platform/mac/SharedMemoryMac.cpp: |
| * UIProcess/ios/WebMemoryPressureHandlerIOS.mm: |
| |
| 2014-11-18 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Subclass CachedFont for SVG fonts |
| https://bugs.webkit.org/show_bug.cgi?id=138686 |
| |
| Reviewed by Simon Fraser. |
| |
| Update for enum type. |
| |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: |
| (WebKit::maximumBufferingTime): |
| |
| 2014-11-18 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add API to create a WebKitWebContext |
| https://bugs.webkit.org/show_bug.cgi?id=138826 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| We have always used a default web context without providing API to |
| create others. The main reason was that nobody requested it and we |
| haven't needed it either. The main problem of the default web |
| context is that you can't configure anything during |
| construction. This hasn't been a problem so far because all the |
| web context configuration we expose in the API can be configured |
| after construction. But now we need to expose API to allow the |
| user to configure the local storage directory, which is a |
| construct only configuration. The default web context was also a |
| problem for our unit tests, because sharing the same context made |
| it difficult to ensure tests cases are independent to each other. |
| |
| * UIProcess/API/gtk/WebKitGeolocationProvider.cpp: |
| (WebKitGeolocationProvider::~WebKitGeolocationProvider): Reset the |
| provider to avoid crashes when web context is destroyed and a new |
| one is created. |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (webkitWebContextConstructed): Add constructed implementation to |
| create the WebContext and initialize it. |
| (webkitWebContextDispose): Detach web context clients to avoid |
| crashes when a client callback is called on a disposed WebKitWebContext. |
| (webkit_web_context_class_init): Initialize gettext, add |
| constructed implementation and add the pointer to the vmethods |
| when creating signals. |
| (createDefaultWebContext): Simply create a WebKitWebContext. |
| (webkit_web_context_new): New public method to create a WebKitWebContext. |
| (injectedBundleFilename): Deleted. |
| * UIProcess/API/gtk/WebKitWebContext.h: Add virtual methods for |
| signals, so that users can inherit from WebKitWebContext and |
| override the virtual methods. |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol. |
| |
| 2014-11-18 Carlos Alberto Lopez Perez <clopez@igalia.com> |
| |
| [SOUP] [GnuTLS] Don't use a SSL3.0 record version in client hello. |
| https://bugs.webkit.org/show_bug.cgi?id=138794 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| It seems that following POODLE many sites incorrectly banned SSL 3.0 |
| record packet versions. Since GnuTLS uses a SSL 3.0 record to |
| advertise TLS 1.2, they are effectively banning it even if it doesn't |
| advertise SSL 3.0. That is a server issue, but it can be worked around |
| by using the modifier %LATEST_RECORD_VERSION. |
| |
| With this modifier, GnuTLS will use the latest TLS version record |
| in client hello instead of using the default SSL 3.0. |
| |
| * NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp: |
| (main): |
| * WebProcess/EntryPoint/unix/WebProcessMain.cpp: |
| (main): |
| |
| 2014-11-17 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Page previews should be loaded sooner |
| https://bugs.webkit.org/show_bug.cgi?id=138814 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| Send -_createPreviewPopover.. |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| Relocate some logic to the new -_createPreviewPopover; gate early return on popover visibility. |
| (-[WKActionMenuController _createPreviewPopover]): |
| Renamed from -_createPreviewPopoverForURL:originRect:; explicitly send -loadView to warm up the preview view. |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): Deleted. |
| |
| 2014-11-17 Beth Dakin <bdakin@apple.com> |
| |
| Preview is sometimes dismissed too early |
| https://bugs.webkit.org/show_bug.cgi?id=138811 |
| -and corresponding- |
| rdar://problem/18900839 |
| |
| Reviewed by Tim Horton. |
| |
| Don’t make the popover transient until didCloseMenu: time. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): |
| |
| 2014-11-17 Daniel Bates <dabates@apple.com> |
| |
| Unreviewed, rolling out r176232. |
| |
| Broke the Mac build. Will investigate offline. |
| |
| Reverted changeset: |
| |
| "[iOS] Libdispatch, Dyld, IOKit, Mach, NSPointerFunctions, |
| MobileGestalt" |
| https://bugs.webkit.org/show_bug.cgi?id=138802 |
| http://trac.webkit.org/changeset/176232 |
| |
| 2014-11-17 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Libdispatch, Dyld, IOKit, Mach, NSPointerFunctions, MobileGestalt |
| SPI are not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138802 |
| |
| Reviewed by David Kilzer. |
| |
| Include headers DispatchSPI.h and MachVMSPI.h.h instead of including |
| libdispatch and Mach headers directly. |
| |
| * Platform/mac/SharedMemoryMac.cpp: |
| * UIProcess/ios/WebMemoryPressureHandlerIOS.mm: |
| |
| 2014-11-17 Daniel Bates <dabates@apple.com> |
| |
| [iOS] CoreText and CoreUI SPI are not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138760 |
| |
| Reviewed by David Kilzer. |
| |
| Include header CoreTextSPI.h instead of including CoreText private headers. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| |
| 2014-11-17 Tim Horton <timothy_horton@apple.com> |
| |
| DataDetectors PageOverlay callbacks can come in to the wrong overlay |
| https://bugs.webkit.org/show_bug.cgi?id=138801 |
| <rdar://problem/18991369> |
| |
| Reviewed by Anders Carlsson. |
| |
| We can call dataDetectorsDidHideUI on the wrong (or no) PageOverlay, |
| because it's possible to have another performActionMenuHitTestAtLocation |
| between the first one and the dataDetectorsDid*UI that correspond to it. |
| |
| To make sure that the callbacks come to the right PageOverlay, plumb |
| an integer ID through all of the callbacks and find the overlay based on that. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| Store the ID of the PageOverlay that overrode data detection. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Send the ID back to the Web process when replying from DD callbacks. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Store the ID of the PageOverlay that overrode data detection instead of |
| keeping the PageOverlay itself. |
| |
| (WebKit::WebPage::dataDetectorsDidPresentUI): |
| (WebKit::WebPage::dataDetectorsDidChangeUI): |
| (WebKit::WebPage::dataDetectorsDidHideUI): |
| Find and reply to the correct page overlay. |
| |
| 2014-11-17 Beth Dakin <bdakin@apple.com> |
| |
| Whitespace action menus should focus the HitTestResult and create an insertion |
| point |
| https://bugs.webkit.org/show_bug.cgi?id=138786 |
| -and corresponding- |
| rdar://problem/18944893 |
| |
| Reviewed by Tim Horton. |
| |
| Whitespace menus should cause the HitTestResult to be focused, and they should set |
| the selection based on the HitTest location. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::focusAndSelectLastActionMenuHitTestResult): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController isMenuForTextContent]): |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::focusAndSelectLastActionMenuHitTestResult): |
| |
| 2014-11-17 Daniel Bates <dabates@apple.com> |
| |
| [iOS] AVKit and MediaPlayer SPI are not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138756 |
| |
| Reviewed by Eric Carlson. |
| |
| Include header MPAVRoutingControllerSPI.h instead of including the |
| private header MPAVRoutingController.h. |
| |
| Additionally, sort the list of #import directives. |
| |
| * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: |
| |
| 2014-11-17 Daniel Bates <dabates@apple.com> |
| |
| [iOS] QuartzCore SPI not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138751 |
| |
| Reviewed by David Kilzer. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: Move CALayer forward declaration |
| from this file to file QuartzCoreSPI.h and include header QuartzCoreSPI.h. |
| * Shared/mac/RemoteLayerTreePropertyApplier.mm: Ditto. |
| * UIProcess/API/Cocoa/WKWebView.mm: Include header QuartzCoreSPI.h instead |
| of including QuartzCore headers directly. |
| * UIProcess/ios/ViewGestureControllerIOS.mm: Ditto. |
| * UIProcess/ios/WKContentView.mm: Ditto. |
| * UIProcess/ios/WKPDFPageNumberIndicator.mm: Ditto. |
| * UIProcess/mac/ViewGestureControllerMac.mm: Move CAFilter forward declarations |
| from this file to fileQuartzCoreSPI.h and include header QuartzCoreSPI.h. |
| Also sort the list of #import directives. |
| * UIProcess/mac/ViewSnapshotStore.mm: Include header QuartzCoreSPI.h |
| instead of including QuartzCore headers directly. |
| |
| 2014-11-17 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] allow host application to opt-out of alternate fullscreen |
| https://bugs.webkit.org/show_bug.cgi?id=138787 |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetAllowsAlternateFullscreen): |
| (WKPreferencesGetAllowsAlternateFullscreen): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.h: |
| * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: |
| (-[WKWebViewConfiguration init]): |
| (-[WKWebViewConfiguration copyWithZone:]): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2014-11-16 Benjamin Poulain <bpoulain@apple.com> |
| |
| Start cleaning up minimal UI from WKWebView |
| https://bugs.webkit.org/show_bug.cgi?id=138725 |
| |
| Reviewed by Sam Weinig. |
| |
| Start removing the old update path for minimumLayoutSize/maximumUnobscuredSize. |
| |
| Unfortunately, I cannot remove everything yet because the clients still did not have |
| alternatives to [_overrideLayoutParametersWithMinimumLayoutSize:minimumLayoutSizeForMinimalUI:maximumUnobscuredSizeOverride] |
| and might change the minimal UI options. |
| |
| This patch adds [_overrideLayoutParametersWithMinimumLayoutSize:maximumUnobscuredSizeOverride] to move |
| in the right direction. Next we'll udpate the client code and get rid of all the useless code. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _overrideLayoutParametersWithMinimumLayoutSize:minimumLayoutSizeForMinimalUI:maximumUnobscuredSizeOverride:]): |
| (-[WKWebView _overrideLayoutParametersWithMinimumLayoutSize:maximumUnobscuredSizeOverride:]): |
| (-[WKWebView _minimumLayoutSizeOverrideForMinimalUI]): Deleted. |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: |
| |
| 2014-11-16 Zan Dobersek <zdobersek@igalia.com> |
| |
| [TexMap] Add typecasting support for GraphicsLayerTextureMapper |
| https://bugs.webkit.org/show_bug.cgi?id=138741 |
| |
| Reviewed by Martin Robinson. |
| |
| Replace uses of toTextureMapperLayer() with downcasting and |
| calling the GraphicsLayerTextureMapper::layer() method. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::initialize): |
| (WebKit::LayerTreeHostGtk::layerFlushTimerFired): |
| (WebKit::LayerTreeHostGtk::compositeLayersToContext): |
| |
| 2014-11-16 Tim Horton <timothy_horton@apple.com> |
| |
| Use TextIndicator instead of the built in Lookup highlight |
| https://bugs.webkit.org/show_bug.cgi?id=138775 |
| <rdar://problem/18953982> |
| |
| Follow-up to r176164. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Include the softlinking macros directly in the files they're used |
| in, as they're supposed to be used. |
| |
| 2014-11-16 Tim Horton <timothy_horton@apple.com> |
| |
| Use TextIndicator instead of the built in Lookup highlight |
| https://bugs.webkit.org/show_bug.cgi?id=138775 |
| <rdar://problem/18953982> |
| |
| Reviewed by Anders Carlsson. |
| |
| In order to make the yellow highlight for Lookup more accurately match the |
| painted content of the web page (in light of e.g. Web fonts, and interesting |
| text features that only WebKit implements and cannot round-trip through |
| NSAttributedString), use a TextIndicator instead of the built-in Lookup |
| highlight where possible. |
| |
| * Configurations/BaseTarget.xcconfig: |
| Make it possible to include headers from private frameworks. This matches WebCore. |
| |
| * Shared/DictionaryPopupInfo.cpp: |
| (WebKit::DictionaryPopupInfo::encode): |
| (WebKit::DictionaryPopupInfo::decode): |
| * Shared/DictionaryPopupInfo.h: |
| Include the attributed string inside the DictionaryPopupInfo, instead of |
| as a secondary argument to DidPerformDictionaryLookup. |
| Add a TextIndicator to DictionaryPopupInfo, which can be used to highlight |
| the text in the UI process. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): |
| (-[WKView viewDidMoveToWindow]): |
| (-[WKView _dictionaryLookupPopoverWillClose:]): |
| (-[WKView _setTextIndicator:fadeOut:animate:animationCompletionHandler:]): |
| (-[WKView _setTextIndicator:fadeOut:animate:]): |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| (+[WKView hideWordDefinitionWindow]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| Adopt the Lookup SPI header. |
| If we have the requisite API, register the notification that Lookup sends |
| when the popover closes, and hook that up to hide the text indicator. |
| Add a version of _setTextIndicator: that takes an animation completion handler. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::didPerformDictionaryLookup): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::didPerformDictionaryLookup): |
| Adjust to the new didPerformDictionaryLookup signature. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| Remove a WKSI import. |
| |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| If we have the requisite API, disable Lookup's built-in highlight and |
| present a TextIndicator instead. |
| We currently have to run the animations serially (first bounce the TextIndicator, |
| then animate in the Lookup popover) because the act of adding the Lookup popover |
| blocks us from getting any animation events for the TextIndicator, and breaks |
| the bounce. We could also fix this by using a threaded animation for the TextIndicator, |
| but it's not clear that it's safe to do so. |
| |
| (WebKit::PageClientImpl::dismissDictionaryLookupPanel): |
| When explicitly dismissing the Lookup panel, also hide the text indicator. |
| |
| * UIProcess/mac/TextIndicatorWindow.h: |
| * UIProcess/mac/TextIndicatorWindow.mm: |
| (WebKit::TextIndicatorWindow::setTextIndicator): |
| Store the completion handler. |
| |
| (WebKit::TextIndicatorWindow::bounceAnimationDidEnd): |
| Call the completion handler when the animation completes. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| Disable the Lookup item if lookup is not available. |
| |
| * WebProcess/Plugins/PDF/PDFPlugin.mm: |
| (WebKit::PDFPlugin::showDefinitionForAttributedString): |
| Adjust to the new didPerformDictionaryLookup signature. |
| Since PDFPlugin can't trivially repaint the required part of the PDF, |
| we don't build a TextIndicator. This will result in PDFPlugin continuing |
| to use Lookup's built-in highlight. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| Build a TextIndicator from the Lookup range and pass it along with |
| the DictionaryPopupInfo. |
| |
| 2014-11-15 David Kilzer <ddkilzer@apple.com> |
| |
| REGRESSION (r176137): iOS build broke after moving DataDetectors scanning code to WebCore |
| |
| This regressed with the following commit: |
| |
| Move DataDetectors scanning code to WebCore |
| https://bugs.webkit.org/show_bug.cgi?id=138731 |
| <rdar://problem/18877535> |
| |
| * Shared/mac/ActionMenuHitTestResult.mm: Add PLATFORM(MAC) check |
| around the entire implementation since it it unused on iOS. |
| |
| 2014-11-14 Anders Carlsson <andersca@apple.com> |
| |
| Raise an exception if -[WKWebView initWithFrame:configuration:] is passed a nil configuration |
| https://bugs.webkit.org/show_bug.cgi?id=138757 |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView initWithFrame:configuration:]): |
| |
| 2014-11-15 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Network process crash when running http/tests/appcache/fallback.html |
| https://bugs.webkit.org/show_bug.cgi?id=138740 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| It happens because ResourceHandle::continueWillSendRequest() is |
| called with a null request. We could handle that case in the |
| ResourceHandle, but the thing is tha the behaviour is |
| not the same for async loads, or when loading in the web |
| process. In WebResourceLoader::willSendRequest(), |
| ResourceRequest::willSendRequest() is called, and cancels the load |
| if the client returns a null request. In this case, the |
| ResourceLoader is detached and WebResourceLoader::willSendRequest() |
| returns early without sending the ContinueWillSendRequest message |
| to the network process. However, for synchronous loads, |
| NetworkResourceLoader::continueWillSendRequest() is always called. |
| |
| Fixes http/tests/appcache/fallback.html for GTK port when using |
| the network process. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::continueWillSendRequest): Do not |
| call ResourceHandle::continueWillSendRequest() if the client |
| request is null, since the load is going to be cancelled. |
| |
| 2014-11-15 Tim Horton <timothy_horton@apple.com> |
| |
| Implement data detectors and mailto action menus for WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=138765 |
| <rdar://problem/18877535> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForMailtoLink]): |
| |
| 2014-11-14 Tim Horton <timothy_horton@apple.com> |
| |
| Remove pre-[DDActionContext contextForView:...] fallback path |
| https://bugs.webkit.org/show_bug.cgi?id=138735 |
| <rdar://problem/18982046> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| (hasDataDetectorsCompletionAPI): Deleted. |
| Remove the now-unnecessary fallback path. |
| |
| 2014-11-14 Tim Horton <timothy_horton@apple.com> |
| |
| Frequent crashes under actionContextForResultAtPoint |
| https://bugs.webkit.org/show_bug.cgi?id=138761 |
| <rdar://problem/18990684> |
| |
| Reviewed by Dean Jackson. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| (PageOverlayClientImpl::actionContextForResultAtPoint): |
| Initialize apiRange. |
| |
| 2014-11-14 Daniel Bates <dabates@apple.com> |
| |
| [iOS] CoreGraphics SPI not available in public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138709 |
| |
| Reviewed by David Kilzer. |
| |
| Include header CoreGraphicsSPI.h instead of including headers of |
| CoreGraphics directly. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| * UIProcess/ios/WKScrollView.mm: |
| |
| 2014-11-14 Tim Horton <timothy_horton@apple.com> |
| |
| Move DataDetectors scanning code to WebCore |
| https://bugs.webkit.org/show_bug.cgi?id=138731 |
| <rdar://problem/18877535> |
| |
| Reviewed by Anders Carlsson. |
| |
| Move DataDetectors scanning code to WebCore, so that both WebKits can use it. |
| |
| * Shared/TextIndicator.cpp: |
| (WebKit::TextIndicator::createWithRange): |
| Move createWithRange in from WebPageMac's textIndicatorForRange. |
| |
| (WebKit::TextIndicator::createWithSelectionInFrame): |
| * Shared/TextIndicator.h: |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createSelectionSnapshot): |
| * WebProcess/WebPage/WebFrame.h: |
| Constify some things. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Avoid using the DD result if it didn't come with a non-null Range. |
| Make use of detectItemAroundHitTestResult and TextIndicator::createWithRange. |
| |
| (WebKit::scanForDataDetectedItems): Deleted. |
| (WebKit::textIndicatorForRange): Deleted. |
| Moved these two to other places. |
| |
| 2014-11-14 Dan Bernstein <mitz@apple.com> |
| |
| <rdar://problem/18978497> Wrong (off-by-1) navigation snapshots shown after a mix of gesture and button back/forward navigation |
| https://bugs.webkit.org/show_bug.cgi?id=138753 |
| |
| Reviewed by Tim Horton. |
| |
| Rather than having the UI process record a snapshot jut before the Web Content process’s |
| notion of its current back/forward list item changes, have the UI process record a snapshot |
| right before its own current back/forward list item changes. This ensures that the right |
| snapshot gets attached to the right item in the UI process. |
| |
| * UIProcess/WebBackForwardList.cpp: |
| (WebKit::WebBackForwardList::addItem): If there is a current item, record a navigation |
| snapshot of it before making the new item current. |
| (WebKit::WebBackForwardList::goToItem): If there is a current item, record a navigation |
| snapshot of it before making another item current. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::willChangeCurrentHistoryItemForMainFrame): Deleted. |
| * UIProcess/WebPageProxy.h: |
| |
| * UIProcess/WebPageProxy.messages.in: Removed willChangeCurrentHistoryItemForMainFrame |
| message. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::willChangeCurrentHistoryItem): Deleted. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: Removed declaration of |
| willChangeCurrentHistoryItem override. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::willChangeCurrentHistoryItemForMainFrame): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2014-11-14 Dan Bernstein <mitz@apple.com> |
| |
| Add some tracing to help investigating <rdar://problem/18905383> [iOS] Crash due to null m_webPageProxyForBackForwardListForCurrentSwipe in ViewGestureController::endSwipeGesture |
| https://bugs.webkit.org/show_bug.cgi?id=138750 |
| |
| Reviewed by Tim Horton. |
| |
| Emit trace messages at various points, and log them prior to crashing if the error condition |
| occurs. Otherwise, clear the trace messages. |
| |
| * UIProcess/ios/ViewGestureControllerIOS.mm: |
| (WebKit::addLogEntry): Helper function that adds a message, including a time stamp and a |
| backtrace, to m_logEntries. |
| (WebKit::dumpLogEntries): Helper function that logs everything in m_logEntries. |
| (WebKit::ViewGestureController::beginSwipeGesture): Add a log entry. |
| (WebKit::ViewGestureController::endSwipeGesture): If |
| m_webPageProxyForBackForwardListForCurrentSwipe is null, dump the log entries just before |
| crashing. Otherwise, clear m_logEntries. |
| (WebKit::ViewGestureController::willCommitPostSwipeTransitionLayerTree): Add a log entry. |
| (WebKit::ViewGestureController::removeSwipeSnapshot): Add a log entry. |
| * UIProcess/mac/ViewGestureController.h: Defined ENABLE_VIEW_GESTURE_CONTROLLER_TRACING, |
| and added m_logEntries member variable. |
| |
| 2014-11-14 Beth Dakin <bdakin@apple.com> |
| |
| URLs for some videos are not valid URLs, should not be exposed to action menu |
| https://bugs.webkit.org/show_bug.cgi?id=138746 |
| -and corresponding- |
| rdar://problem/18941927 |
| |
| Reviewed by Tim Horton. |
| |
| If the video cannot be downloaded, that is also an indication that the URL of the |
| video will not be valid on its own. In these cases, we should share or copy the |
| main page’s URL. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForVideo]): |
| (-[WKActionMenuController _copyVideoURL:]): |
| |
| 2014-11-14 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [SOUP] Encode/Decode allowCookies in ResourceRequest |
| https://bugs.webkit.org/show_bug.cgi?id=138730 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| We are not sending this information to the network process, making |
| cookies always available. Fixes |
| http/tests/xmlhttprequest/cross-origin-no-authorization.html when |
| network process is enabled. |
| |
| * Shared/soup/WebCoreArgumentCodersSoup.cpp: |
| (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData): |
| (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData): |
| |
| 2014-11-14 Zan Dobersek <zdobersek@igalia.com> |
| |
| Unreviewed build fix for the GTK+ port using Clang. |
| |
| * UIProcess/gtk/RedirectedXCompositeWindow.h: Include the <functional> |
| header for the use of std::function<>. |
| |
| 2014-11-13 Dan Bernstein <mitz@apple.com> |
| |
| Two WKWebView internal methods are implemented in a category |
| https://bugs.webkit.org/show_bug.cgi?id=138728 |
| |
| Reviewed by Tim Horton. |
| |
| Moved the implementations from the category to the class. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _ignoresNonWheelMouseEvents]): |
| (-[WKWebView _setIgnoresNonWheelMouseEvents:]): |
| |
| 2014-11-13 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Move FontMac and FontCacheMac off of WKSI |
| https://bugs.webkit.org/show_bug.cgi?id=138633 |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| * mac/WebKit2.order: |
| |
| 2014-11-13 Eric Carlson <eric.carlson@apple.com> |
| |
| Context menus should not offer the "Download video" option for videos that cannot |
| be downloaded |
| https://bugs.webkit.org/show_bug.cgi?id=138530 |
| -and corresponding- |
| rdar://problem/18919130 |
| |
| Reviewed by Tim Horton. |
| |
| Expose isDownloadableMedia() to the InjectedBundleHitTestResult. |
| * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp: |
| (WKBundleHitTestResultIsDownloadableMedia): |
| * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h: |
| * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp: |
| (WebKit::InjectedBundleHitTestResult::isDownloadableMedia): |
| * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h: |
| |
| 2014-11-13 Daniel Bates <dabates@apple.com> |
| |
| [iOS] NSGeometry data types are not available in the public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=137536 |
| |
| Reviewed by David Kilzer. |
| |
| Substitute header WAKAppKitStubs.h for NSGeometry.h as the latter is a |
| private header. |
| |
| * Shared/ios/NativeWebTouchEventIOS.mm: |
| |
| 2014-11-13 Simon Fraser <simon.fraser@apple.com> |
| |
| [WK2] Fire a layout milestone on session restore based on render tree size |
| https://bugs.webkit.org/show_bug.cgi?id=138711 |
| rdar://problem/16033854 |
| |
| Reviewed by Anders Carlsson. |
| |
| Add a session-restore layout milestone which fires after restoring a session, |
| when the render tree size reaches 50% of the size saved in the session state. |
| |
| * Shared/SessionState.h: Add renderTreeSize. |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (layoutMilestones): Translate from SPI to WebCore milestones. |
| * UIProcess/API/Cocoa/WKWebViewPrivate.h: New iOS-only milestone, er, event. |
| * UIProcess/Cocoa/NavigationState.mm: |
| (WebKit::renderingProgressEvents): Translate from WebCore milestone to rendering event. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): Init stuff. |
| (WebKit::WebPageProxy::sessionState): |
| (WebKit::WebPageProxy::restoreFromSessionState): Zero out the target render tree size, |
| then get it out of session state and set the flag to say that we haven't reached it yet. |
| (WebKit::WebPageProxy::listenForLayoutMilestones): Set a flag to know that we should fire |
| the milestone. The other milestones get sent directly to WebCore. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::exceedsRenderTreeSizeSizeThreshold): Return true when we've reached 50%. |
| (WebKit::WebPageProxy::didCommitLayerTree): Fire the milestone when appropriate. |
| * UIProcess/mac/LegacySessionStateCoding.cpp: Rev the session state data for iOS |
| (where doing so is less disruptive). Standardize some CFString constants. |
| (WebKit::encodeSessionHistory): Wrap for legibility. |
| (WebKit::encodeLegacySessionState): Make a CFNumber for render tree size, and store |
| it in the root dictionary. |
| (WebKit::decodeBackForwardTreeNode): Move a comment to match another similar block. |
| (WebKit::decodeLegacySessionState): Decode render tree size and store it. |
| |
| 2014-11-13 Tim Horton <timothy_horton@apple.com> |
| |
| Adjust the WKBundlePageOverlay Data Detectors SPI |
| https://bugs.webkit.org/show_bug.cgi?id=138685 |
| <rdar://problem/18947156> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Forward DDActionContext callbacks to the Web process. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h: |
| * WebProcess/WebPage/WebPageOverlay.cpp: |
| * WebProcess/WebPage/WebPageOverlay.h: |
| Add four DataDetectors-related WebKit2-only page overlay callbacks: |
| |
| (WebKit::WebPageOverlay::actionContextForResultAtPoint): |
| Called during the action menu hit test; clients can reply with a DDActionContext |
| and a DOM range, and WebKit will treat that result and range as if it had |
| detected it itself, building the action menu and showing the yellow highlight as usual. |
| |
| (WebKit::WebPageOverlay::dataDetectorsPresentedUI): |
| (WebKit::WebPageOverlay::dataDetectorsChangedUI): |
| (WebKit::WebPageOverlay::dataDetectorsHidUI): |
| These correspond to the DDActionContext callbacks, and can be used by clients |
| to show/hide corresponding UI while DataDetectors in the UI process is presenting UI. |
| |
| (WebKit::WebPageOverlay::prepareForActionMenu): Deleted. |
| Get rid of prepareForActionMenu, as nobody ever used it. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| Add WebPageOverlay.h so that we can build, because the destructor lives here. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Give all of the WebPageOverlays the first shot at data detection; if none of them |
| reply with a valid DDActionContext/DOM range, we'll go ahead and do our normal detection. |
| |
| (WebKit::WebPage::dataDetectorsPresentedUI): |
| (WebKit::WebPage::dataDetectorsChangedUI): |
| (WebKit::WebPage::dataDetectorsHidUI): |
| Forward these along to the active WebPageOverlay. |
| |
| 2014-11-13 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [SOUP] Missing ResourceRequest members encoded/decoded |
| https://bugs.webkit.org/show_bug.cgi?id=138694 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| At least timeoutInterval and priority should also be |
| encoded/decoded. This fixes all http/tests/xmlhttprequest/timeout/ |
| tests when using the network process, since the timeout is always |
| 0 for all requests that we send to the network process. |
| |
| * Shared/soup/WebCoreArgumentCodersSoup.cpp: |
| (IPC::ArgumentCoder<ResourceRequest>::encodePlatformData): |
| (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData): |
| |
| 2014-11-12 Ryuan Choi <ryuan.choi@navercorp.com> |
| |
| [EFL] Fix the build with EFL 1.12 |
| https://bugs.webkit.org/show_bug.cgi?id=138245 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| First, modified to use Evas_GL raw pointer instead of UniquePtrEfl because |
| Evas_GL.h can't be included in UniquePtrEfl.h |
| It should be moved into EvasGLContext because WebKit/EFL use only one Evas_GL. |
| Second, provided the version of GLES in Evas_GL_Config not to break build with |
| EFL 1.12 |
| (EwkView::EwkView): |
| (EwkView::~EwkView): |
| (EwkView::displayTimerFired): |
| (EwkView::createGLSurface): |
| * UIProcess/API/efl/EwkView.h: |
| |
| 2014-11-12 Ada Chan <adachan@apple.com> |
| |
| Fix the iOS build. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::pageMutedStateDidChange): |
| |
| 2014-11-05 Ada Chan <adachan@apple.com> |
| |
| Implement new plug-in API for muting plug-ins |
| https://bugs.webkit.org/show_bug.cgi?id=138105 |
| |
| Reviewed by Anders Carlsson. |
| |
| Handle the setting of NPNVmuteAudioBool on the plug-in. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| Initialize m_isMuted. |
| (WebKit::PluginControllerProxy::mutedStateChanged): |
| Tell the plugin about the new muted state. |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginControllerProxy.messages.in: |
| Add the MutedStateChanged message. |
| * PluginProcess/PluginCreationParameters.cpp: |
| (WebKit::PluginCreationParameters::PluginCreationParameters): |
| Initialize isMuted. |
| (WebKit::PluginCreationParameters::encode): |
| Handle isMuted. |
| (WebKit::PluginCreationParameters::decode): |
| Ditto. |
| * PluginProcess/PluginCreationParameters.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): |
| Get the plug-in's muted state. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::isMuted): |
| Get the muted state from PluginControllerProxy. |
| (WebKit::NetscapePlugin::mutedStateChanged): |
| Call NPP_SetValue with NPNVmuteAudioBool and the updated muted state. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Plugin.h: |
| (WebKit::Plugin::mutedStateChanged): |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::initialize): |
| Set m_pendingPluginCreationParameters->isMuted. |
| (WebKit::PluginProxy::mutedStateChanged): |
| Send the MutedStateChanged message to the plugin process. |
| * WebProcess/Plugins/PluginProxy.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::pageMutedStateDidChange): |
| Call Plugin::mutedStateChanged() with the page's muted state. |
| (WebKit::PluginView::isMuted): |
| Get the page's current muted state. |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2014-11-12 Tim Horton <timothy_horton@apple.com> |
| |
| Two action menu item titles are swapped |
| https://bugs.webkit.org/show_bug.cgi?id=138667 |
| <rdar://problem/18960409> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| Swap them back. |
| |
| 2014-11-12 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r175806. |
| https://bugs.webkit.org/show_bug.cgi?id=138666 |
| |
| Capturing CString is not thread safe (Requested by anttik on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "[WK2] Use C++ lambdas in IPC::Connection" |
| https://bugs.webkit.org/show_bug.cgi?id=138018 |
| http://trac.webkit.org/changeset/175806 |
| |
| 2014-11-12 Tim Horton <timothy_horton@apple.com> |
| |
| Need to show the text indicator when Data Detectors shows a popover |
| https://bugs.webkit.org/show_bug.cgi?id=138664 |
| <rdar://problem/18869900> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (hasDataDetectorsCompletionAPI): |
| Determine if we have the new API. |
| |
| (-[WKActionMenuController willDestroyView:]): |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| Make use of the new API. |
| If we wanted to show a Data Detectors menu but have no items (or they're all |
| disabled), cancel the menu. |
| If we don't have it, manually manipulate the highlight. |
| |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| Make use of the new API. |
| If we don't have it, manually manipulate the highlight. |
| |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Set up completion handlers if we have the new API; when DataDetectors |
| presents UI, show the text indicator, when it dismisses, hide it. |
| If we don't have the API, manually manipulate the highlight. |
| |
| 2014-11-12 Tim Horton <timothy_horton@apple.com> |
| |
| Make action menus much more reliable |
| https://bugs.webkit.org/show_bug.cgi?id=138654 |
| <rdar://problem/18909111> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Remove MenuUpdateStage; nothing actually uses this value, we just pass it around. |
| |
| (-[WKActionMenuController didPerformActionMenuHitTest:userData:]): |
| Update the menu as soon as we have a reply from the Web process. |
| |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| If our sync-wait for the Web process' reply times out, we should still update |
| the menu to remove the placeholder separator item. |
| |
| (-[WKActionMenuController _updateActionMenuItems]): |
| (-[WKActionMenuController _updateActionMenuItemsForStage:]): Deleted. |
| If we have our final answer for this menu (_state == Ready), and the final answer |
| has no items in the menu, cancel tracking on the menu. |
| |
| 2014-11-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Move RedirectedXCompositeWindow from platform to WebKit2 layer |
| https://bugs.webkit.org/show_bug.cgi?id=138093 |
| |
| Reviewed by Martin Robinson. |
| |
| It's only used by WebKitWebViewBase. While moving the code the |
| following cleanups have been made: |
| |
| - Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL. |
| - Use a helper class XDamageNotifier to handle the XDamage |
| events filtering and notification. |
| - Use std::function instead of pointer to function for the |
| damage callback. |
| - Pass the X display to the RedirectedXCompositeWindow constructor |
| and keep it as a member to use it everywhere, instead of using |
| the default display in some places and the widget display in others. |
| - Pass the damage notify function as a contructor parameter of |
| RedirectedXCompositeWindow instead of setting the callback |
| right after creating the object. |
| - Remove GLContextNeeded and all the dead code related to the |
| CreateGLContext mode that is no longer used. |
| - Rename cairoSurfaceForWidget() as surface(). |
| - windowId() has been renamed as windowID() and made const. |
| - Use std::unique_ptr instead of PassOwnPtr. |
| - Fix coding style issues. |
| |
| * PlatformGTK.cmake: |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseConstructed): |
| (webkitWebViewRenderAcceleratedCompositingResults): |
| (webkitWebViewBaseCreateWebPage): |
| (redirectedWindowDamagedCallback): Deleted. |
| * UIProcess/gtk/RedirectedXCompositeWindow.cpp: Renamed from Source/WebCore/platform/gtk/RedirectedXCompositeWindow.cpp. |
| (WebKit::XDamageNotifier::XDamageNotifier): |
| (WebKit::XDamageNotifier::add): |
| (WebKit::XDamageNotifier::remove): |
| (WebKit::XDamageNotifier::filterXDamageEvent): |
| (WebKit::XDamageNotifier::filterXEvent): |
| (WebKit::xDamageNotifier): |
| (WebKit::supportsXDamageAndXComposite): |
| (WebKit::RedirectedXCompositeWindow::create): |
| (WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow): |
| (WebKit::RedirectedXCompositeWindow::~RedirectedXCompositeWindow): |
| (WebKit::RedirectedXCompositeWindow::resize): |
| (WebKit::RedirectedXCompositeWindow::cleanupPixmapAndPixmapSurface): |
| (WebKit::RedirectedXCompositeWindow::surface): |
| * UIProcess/gtk/RedirectedXCompositeWindow.h: Renamed from Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h. |
| (WebKit::RedirectedXCompositeWindow::windowID): |
| |
| 2014-09-01 Philippe Normand <pnormand@igalia.com> |
| |
| [WK2] UserMediaClient support |
| https://bugs.webkit.org/show_bug.cgi?id=123158 |
| |
| Reviewed by Benjamin Poulain. |
| |
| Support for UserMediaPermissionRequest in WebKit2. It's |
| implemented similarily to the GeolocationPermissionRequest |
| support. When the WebPage requires this permission it sends a |
| message to the UI process which at some point grants or denies the |
| permission and sends the result back to the WebProcess. |
| |
| * CMakeLists.txt: Generic CMake support for new files. |
| * Shared/API/c/WKBase.h: New type for UserMediaPermissionRequest. |
| * Shared/APIObject.h: Ditto. |
| * UIProcess/API/C/WKAPICast.h: PermissionRequest API mapping. |
| * UIProcess/API/APIUIClient.h: New decidePolicy handler for UserMediaPermissionRequest. |
| (API::UIClient::decidePolicyForUserMediaPermissionRequest): |
| * UIProcess/API/C/WKPage.cpp: Ditto. |
| (WKPageSetPageUIClient): |
| * UIProcess/API/C/WKPageUIClient.h: WKPageUIClient version bump to |
| 5, including the new decidePolicyForUserMediaPermissionRequest member. |
| * UIProcess/API/C/WKUserMediaPermissionRequest.cpp: Added, C API |
| implementation of the UserMediaPermissionRequest. |
| (WKUserMediaPermissionRequestGetTypeID): |
| (WKUserMediaPermissionRequestAllow): |
| (WKUserMediaPermissionRequestDeny): |
| * UIProcess/API/C/WKUserMediaPermissionRequest.h: Added. |
| * UIProcess/API/C/WebKit2_C.h: |
| * UIProcess/UserMediaPermissionRequestManagerProxy.h: Added. |
| * UIProcess/UserMediaPermissionRequestProxy.cpp: Added, proxy |
| object for the UserMediaPermissionRequestType. |
| (WebKit::UserMediaPermissionRequestProxy::UserMediaPermissionRequestProxy): |
| (WebKit::UserMediaPermissionRequestProxy::allow): |
| (WebKit::UserMediaPermissionRequestProxy::deny): |
| (WebKit::UserMediaPermissionRequestProxy::invalidate): |
| * UIProcess/UserMediaPermissionRequestProxy.h: Added. |
| (WebKit::UserMediaPermissionRequestProxy::create): |
| (WebKit::UserMediaPermissionRequestProxy::mediaParameters): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::requestUserMediaPermissionForFrame): Defer |
| UserPermissionRequest to the UIClient. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: New message to handle UserMediaPermissionRequests. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp: Added, |
| WebProcess side of the UserRequestManager, keeping track of each |
| permission request. |
| (WebKit::generateRequestID): |
| (WebKit::UserMediaPermissionRequestManager::UserMediaPermissionRequestManager): |
| (WebKit::UserMediaPermissionRequestManager::startRequest): |
| (WebKit::UserMediaPermissionRequestManager::cancelRequest): |
| (WebKit::UserMediaPermissionRequestManager::didReceiveUserMediaPermissionDecision): |
| * WebProcess/MediaStream/UserMediaPermissionRequestManager.h: Added. |
| * WebProcess/WebCoreSupport/WebUserMediaClient.cpp: Added, |
| WebProcess implementation of the WebCore::UserMediaClient. |
| (WebKit::WebUserMediaClient::WebUserMediaClient): |
| (WebKit::WebUserMediaClient::pageDestroyed): |
| (WebKit::WebUserMediaClient::requestPermission): |
| (WebKit::WebUserMediaClient::cancelRequest): |
| * WebProcess/WebCoreSupport/WebUserMediaClient.h: Added. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): Create the |
| UserMediaPermissionRequestManager and register the UserMediaClient |
| to the page. |
| (WebKit::WebPage::didReceiveUserMediaPermissionDecision): Dispatch |
| decision to manager. |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::userMediaPermissionRequestManager): |
| * WebProcess/WebPage/WebPage.messages.in: New Message to handle |
| permission decision result from the UI process. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Add support for mailto: link action menus |
| https://bugs.webkit.org/show_bug.cgi?id=138641 |
| <rdar://problem/18741567> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/API/c/WKActionMenuTypes.h: |
| Add a new type for mailto links. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForMailtoLink]): |
| Build a DDActionContext and grab menu items for our mailto link. |
| |
| (-[WKActionMenuController _defaultMenuItems]): |
| Get menu items from _defaultMenuItemsForMailtoLink if needed. |
| |
| 2014-11-11 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Clients should be notified when a page preview finishes |
| https://bugs.webkit.org/show_bug.cgi?id=138635 |
| |
| Reviewed by Tim Horton. |
| |
| Add SPI to WKView to allow clients to do any cleanup that might be necessary when the preview closes. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare new SPI. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _finishPreviewingURL:withPreviewView:]): |
| Stub SPI implementation. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| Add an ivar for the preview view controller. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): |
| Update to use the ivar. |
| (-[WKActionMenuController _clearPreviewPopover]): |
| Send -_finishPreviewingURL:withPreviewView: and nil out the view controller ivar. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Update artwork for some action menu items |
| https://bugs.webkit.org/show_bug.cgi?id=138634 |
| <rdar://problem/18871984> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Resources/OpenInNewWindowTemplate.pdf: Removed. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (webKitBundleImageNamed): Deleted. |
| * WebKit2.xcodeproj/project.pbxproj: |
| Get rid of our custom art, and use system art for two more items. |
| |
| 2014-11-11 Alexey Proskuryakov <ap@apple.com> |
| |
| DRT and WKTR touch disk cache |
| https://bugs.webkit.org/show_bug.cgi?id=138622 |
| |
| Reviewed by Geoffrey Garen. |
| |
| Setting a cache model has a very strange behavior in WebKit2, where it ignores |
| sizes that were explicitly passed from UI process, and uses different ones. As |
| setCacheModel() is always called on launch, it always creates a non-empty disk cache. |
| |
| The design needs to be improved one day, but for now, just make sure that we never |
| create a disk cache during testing. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::NetworkProcess): |
| (WebKit::NetworkProcess::initializeNetworkProcess): |
| * NetworkProcess/NetworkProcess.h: |
| * NetworkProcess/cocoa/NetworkProcessCocoa.mm: |
| (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa): |
| (WebKit::NetworkProcess::platformSetCacheModel): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/WebProcess.h: |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformSetCacheModel): |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-11-11 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] a page with video in optimized fullscreen is visible |
| https://bugs.webkit.org/show_bug.cgi?id=138632 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _isPlayingFullscreenOptimizedVideo]): New. |
| |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::isViewVisible): Return true if displaying optimized fullscreen |
| video. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Occasional assertion failure under recommendedScrollbarStyleDidChange() |
| https://bugs.webkit.org/show_bug.cgi?id=138604 |
| <rdar://problem/18855914> |
| |
| Reviewed by Beth Dakin. |
| |
| It is possible for AppKit to install tracking areas into our view |
| behind our back, but we have code that depends on knowing exactly |
| the set of tracking areas installed on WKView. |
| |
| Make this more robust by keeping a reference to the tracking area we |
| use for many things and manipulating that instead of making assumptions |
| about the total set of tracking areas on WKView. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _primaryTrackingArea]): |
| (-[WKView _replacePrimaryTrackingArea:]): |
| Provide a 'primary' tracking area setter/getter. |
| |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| Keep a reference to the original tracking area installed at initialization time. |
| |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange): |
| Instead of walking the set of tracking areas, make use of the fact that |
| we know exactly which tracking area we installed, and uninstall just that |
| one, and replace it with our newly-built one. |
| |
| 2014-11-11 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Finish moving CTFontGetVerticalGlyphsForCharacters and CTLineCreateWithUniCharProvider out from WKSI |
| https://bugs.webkit.org/show_bug.cgi?id=138623 |
| |
| Reviewed by Geoff Garen. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| * mac/WebKit2.order: |
| |
| 2014-11-11 Timothy Horton <timothy_horton@apple.com> |
| |
| Add a respondsToSelector check to dismissActionMenuPopovers |
| https://bugs.webkit.org/show_bug.cgi?id=138600 |
| <rdar://problem/18932770> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController dismissActionMenuPopovers]): |
| Avoid calling this wherever it doesn't exist. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| DataDetectors' menu items aren't presented in the telephone number menu |
| https://bugs.webkit.org/show_bug.cgi?id=138602 |
| <rdar://problem/18866308> |
| |
| Reviewed by Beth Dakin. |
| |
| We currently round-trip the DataDetectors telephone number NSMenuItems |
| through the very-lossy WebContextMenuItemData, for no real reason. |
| We should avoid this so that DataDetectors' actual NSMenuItems are |
| presented in the final menu, so that they can adjust their items after |
| providing them to us. |
| |
| * Platform/mac/MenuUtilities.h: |
| * Platform/mac/MenuUtilities.mm: |
| (WebKit::menuItemTitleForTelephoneNumber): Deleted. |
| Stop adjusting the menu item titles, as they come correct now. |
| |
| (WebKit::menuItemsForTelephoneNumber): Deleted. |
| (WebKit::menuForTelephoneNumber): |
| Return a fully-formed menu for the single telephone number case. |
| |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::showTelephoneNumberMenu): |
| Present the fully-formed menu, without round-tripping through |
| WebContextMenuItemData, because we do not need to hand the items to |
| the context menu client (and indeed, were not), and because this |
| allows us to use the exact items returned by DataDetectors, so they |
| can keep ahold of the items that we actually present. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::showPlatformContextMenu): |
| Add a Mac-only PageClient function for presenting a NSMenu at a |
| WKView-relative point. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Adopt DDActionContext menu type SPI |
| https://bugs.webkit.org/show_bug.cgi?id=138603 |
| <rdar://problem/18867627> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Use the new SPI instead of WKSI. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Data Detectors popovers should be dismissed upon scrolling |
| https://bugs.webkit.org/show_bug.cgi?id=138600 |
| <rdar://problem/18932770> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Dismiss popovers when we start preparing another menu. |
| |
| (-[WKActionMenuController dismissActionMenuPopovers]): |
| Use the new DataDetectors SPI. |
| |
| 2014-11-11 Tim Horton <timothy_horton@apple.com> |
| |
| Localize strings for action menus |
| https://bugs.webkit.org/show_bug.cgi?id=138591 |
| <rdar://problem/18815343> |
| |
| Reviewed by Dan Bates. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _showTextIndicator]): |
| (-[WKActionMenuController _hideTextIndicator]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| Make use of the new strings. |
| |
| 2014-11-11 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Cleanup from r175379 |
| https://bugs.webkit.org/show_bug.cgi?id=138616 |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| * mac/WebKit2.order: |
| |
| 2014-11-11 Myles C. Maxfield <mmaxfield@apple.com> |
| |
| Move CTFontTransformGlyphs out from WKSI |
| https://bugs.webkit.org/show_bug.cgi?id=138599 |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| * mac/WebKit2.order: |
| |
| 2014-11-10 Simon Fraser <simon.fraser@apple.com> |
| |
| Fix possible crash when closing the web inspector |
| https://bugs.webkit.org/show_bug.cgi?id=138597 |
| rdar://problem/18872688 |
| |
| Reviewed by Andreas Kling. |
| |
| I reported a crash when reloading a page after inspecting it, possibly caused by |
| r172864. Speculatively fix by null-checking the main frame. |
| |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| (WebKit::WebInspectorClient::~WebInspectorClient): |
| |
| 2014-11-10 Beth Dakin <bdakin@apple.com> |
| |
| Whitespace action menus aren't working properly |
| https://bugs.webkit.org/show_bug.cgi?id=138585 |
| -and corresponding- |
| rdar://problem/18933586 |
| |
| Reviewed by Tim Horton. |
| |
| Treat the whitespace menu as a text menu. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController isMenuForTextContent]): |
| |
| 2014-11-10 Simon Fraser <simon.fraser@apple.com> |
| |
| [iOS WK2] Scroll deceleration rate is wrong |
| https://bugs.webkit.org/show_bug.cgi?id=138574 |
| rdar://problem/18715303 |
| |
| Reviewed by Benjamin Poulain. |
| |
| The CSS Snap Points code incorrectly set the WKScrollView's deceleration rate, |
| overriding the custom value that UIWebScrollView sets. |
| |
| Fix by having WKScrollView store the custom rate at init time, and |
| using that value in -scrollViewWillBeginDragging:. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView scrollViewWillBeginDragging:]): |
| * UIProcess/ios/WKScrollView.h: |
| * UIProcess/ios/WKScrollView.mm: |
| (-[WKScrollView initWithFrame:]): |
| |
| 2014-11-09 Ada Chan <adachan@apple.com> |
| |
| Reset WebPageProxy's isPlayingAudio state after web process crash or page invalidation. |
| https://bugs.webkit.org/show_bug.cgi?id=138559 |
| |
| Reviewed by Andreas Kling. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::resetState): |
| |
| 2014-11-10 Beth Dakin <bdakin@apple.com> |
| |
| WK1: Support default actions for read-only text |
| https://bugs.webkit.org/show_bug.cgi?id=138552 |
| -and corresponding- |
| rdar://problem/18877483 |
| |
| Reviewed by Tim Horton. |
| |
| WK1 now needs to do a lot of dictionary lookup operations that it did not |
| previously have to handle. So this patch takes a lot of that functionality, which |
| was implemented as static functions in WebPageMac for WK2 and moves it into |
| WebCore. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| (WebKit::isPositionInRange): Deleted. |
| (WebKit::shouldUseSelection): Deleted. |
| (WebKit::rangeExpandedAroundPositionByCharacters): Deleted. |
| (WebKit::rangeForDictionaryLookupForSelection): Deleted. |
| (WebKit::rangeForDictionaryLookupAtHitTestResult): Deleted. |
| |
| 2014-11-10 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix. |
| |
| * UIProcess/ios/RemoteLayerTreeHostIOS.mm: |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| |
| 2014-11-10 Zan Dobersek <zdobersek@igalia.com> |
| |
| [WK2] Use C++ lambdas in IPC::Connection |
| https://bugs.webkit.org/show_bug.cgi?id=138018 |
| |
| Reviewed by Anders Carlsson. |
| |
| Replace uses of WTF::bind() in the IPC::Connection class with C++11 lambdas. |
| |
| * Platform/IPC/Connection.cpp: |
| (IPC::Connection::SyncMessageState::processIncomingMessage): |
| (IPC::Connection::dispatchWorkQueueMessageReceiverMessage): |
| (IPC::Connection::invalidate): |
| (IPC::Connection::sendMessage): |
| (IPC::Connection::processIncomingMessage): |
| (IPC::Connection::enqueueIncomingMessage): |
| * Platform/IPC/mac/ConnectionMac.mm: |
| (IPC::Connection::initializeDeadNameSource): |
| (IPC::Connection::receiveSourceEventHandler): |
| * Platform/IPC/unix/ConnectionUnix.cpp: |
| (IPC::Connection::open): |
| |
| 2014-11-09 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Remove create() factory function in FooAnimationValue classes |
| https://bugs.webkit.org/show_bug.cgi?id=138206 |
| |
| Reviewed by Darin Adler. |
| |
| As a step to use std::unique_ptr and std::make_unique, this patch removes create() |
| factory function in FooAnimationValue classes. As this changes, FooAnimationValue::create() |
| are changed to std::make_unique<>. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<GraphicsLayerAnimation>::decode): |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| (WebKit::WebInspectorClient::showPaintRect): |
| |
| 2014-11-09 Chris Dumez <cdumez@apple.com> |
| |
| Unreviewed, fix typo in r175796. |
| |
| Rename areEssentialEqualAsFloat to areEssentiallyEqualAsFloat. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::areEssentiallyEqualAsFloat): |
| (WebKit::WebPage::dynamicViewportSizeUpdate): |
| (WebKit::areEssentialEqualAsFloat): Deleted. |
| |
| 2014-11-09 Chris Dumez <cdumez@apple.com> |
| |
| Add a more correct way to compare floating point numbers and use it |
| https://bugs.webkit.org/show_bug.cgi?id=138527 |
| |
| Reviewed by Darin Adler. |
| |
| Use the new WTF::areEssentuallyEqual() utility function from MathExtras.h |
| to compare floating-point numbers. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (withinEpsilon): |
| * UIProcess/CoordinatedGraphics/PageViewportController.cpp: |
| (WebKit::PageViewportController::updateMinimumScaleToFit): |
| (WebKit::fuzzyCompare): Deleted. |
| * UIProcess/CoordinatedGraphics/PageViewportController.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::withinEpsilon): |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (areEssentiallyEqualAsFloat): |
| (-[WKWebView _didCommitLayerTree:]): |
| (withinEpsilon): Deleted. |
| * UIProcess/CoordinatedGraphics/PageViewportController.cpp: |
| (WebKit::PageViewportController::updateMinimumScaleToFit): |
| (WebKit::fuzzyCompare): Deleted. |
| * UIProcess/CoordinatedGraphics/PageViewportController.h: |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::areEssentialEqualAsFloat): |
| (WebKit::WebPage::dynamicViewportSizeUpdate): |
| (WebKit::withinEpsilon): Deleted. |
| |
| 2014-11-08 Simon Fraser <simon.fraser@apple.com> |
| |
| Implement round-rect clipping on video elements |
| https://bugs.webkit.org/show_bug.cgi?id=138537 |
| rdar://problem/9534399 |
| |
| Reviewed by Darin Adler. |
| |
| Support border-radius on video and other layers with composited contents, |
| by pushing a FloatRoundedRect onto the GraphicsLayer as the contentsClippingRect, |
| and, on Mac, using layer corner-radius or a CAShapeLayer mask. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<FloatRoundedRect>::encode): |
| (IPC::ArgumentCoder<FloatRoundedRect>::decode): |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/mac/RemoteLayerBackingStore.mm: New shape layer type. |
| (WebKit::RemoteLayerBackingStore::drawInContext): |
| * Shared/mac/RemoteLayerTreePropertyApplier.mm: |
| (WebKit::applyPropertiesToLayer): Apply corner-radius and shape path. |
| * Shared/mac/RemoteLayerTreeTransaction.h: Prettify the flags. Yes, I prefer this style. |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties): |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode): |
| (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode): |
| (WebKit::RemoteLayerTreeTextStream::operator<<): |
| (WebKit::dumpChangedLayers): |
| (WebKit::RemoteLayerTreeTransaction::description): |
| * UIProcess/ios/RemoteLayerTreeHostIOS.mm: |
| (+[WKShapeView layerClass]): Make UIViews with a CAShapeLayer layer class. |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| * UIProcess/mac/RemoteLayerTreeHost.mm: |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::updateClonedLayerProperties): |
| (WebKit::isEquivalentLayer): |
| (WebKit::PlatformCALayerRemote::setMask): |
| (WebKit::PlatformCALayerRemote::setClonedLayer): |
| (WebKit::PlatformCALayerRemote::cornerRadius): |
| (WebKit::PlatformCALayerRemote::setCornerRadius): |
| (WebKit::PlatformCALayerRemote::shapeRoundedRect): |
| (WebKit::PlatformCALayerRemote::setShapeRoundedRect): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| |
| 2014-11-09 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Move _ignoresNonWheelMouseEvents implementation to WKView(Private) |
| https://bugs.webkit.org/show_bug.cgi?id=138487 |
| |
| Reviewed by Dan Bernstein. |
| |
| Relocate some methods that should have been in a category implementation. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setIgnoresNonWheelMouseEvents:]): |
| (-[WKView _ignoresNonWheelMouseEvents]): |
| |
| 2014-11-08 Beth Dakin <bdakin@apple.com> |
| |
| WKActionMenuController methods should be more careful to use the best |
| WebHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=138536 |
| -and corresponding- |
| rdar://problem/18919195 |
| |
| Reviewed by Tim Horton. |
| |
| This patch re-names _hitTestResultForStage to _webHitTestResult. The method no |
| longer takes a stage since that value is really not necessary to determine the |
| correct WebHitTestResult. This patch also makes all spots in this file that access |
| a WebHitTestResult go through _webHitTestResult to ensure that they get the most |
| up-to-date option. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| (-[WKActionMenuController _openURLFromActionMenu:]): |
| (-[WKActionMenuController _addToReadingListFromActionMenu:]): |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| (-[WKActionMenuController _defaultMenuItemsForVideo]): |
| (-[WKActionMenuController _copyVideoURL:]): |
| (-[WKActionMenuController _saveVideoToDownloads:]): |
| (-[WKActionMenuController _saveImageToDownloads:]): |
| (-[WKActionMenuController _defaultMenuItems]): |
| (-[WKActionMenuController _updateActionMenuItemsForStage:]): |
| (imageForResource:name::switch): Deleted. |
| (-[WKActionMenuController _defaultMenuItems:]): Deleted. |
| |
| 2014-11-08 Beth Dakin <bdakin@apple.com> |
| |
| Implement action menu support for videos |
| https://bugs.webkit.org/show_bug.cgi?id=138534 |
| -and corresponding- |
| rdar://problem/18742164 |
| |
| Reviewed by Tim Horton. |
| |
| New menu type and items types. |
| * Shared/API/c/WKActionMenuItemTypes.h: |
| * Shared/API/c/WKActionMenuTypes.h: |
| |
| Plumb isMediaThatCanBeDownloaded() up to WebHitTestResult. |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::Data): |
| (WebKit::WebHitTestResult::Data::encode): |
| (WebKit::WebHitTestResult::Data::decode): |
| * Shared/WebHitTestResult.h: |
| (WebKit::WebHitTestResult::isMediaThatCanBeDownloaded): |
| |
| Re-name _canAddImageToPhotos to _canAddMediaToPhotos, which is more accurate. We |
| might use this method for videos some day, so now it has an accurate name. |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| Default items and their actions. |
| (-[WKActionMenuController _defaultMenuItemsForVideo]): |
| (-[WKActionMenuController _copyVideoURL:]): |
| (-[WKActionMenuController _saveVideoToDownloads:]): |
| (-[WKActionMenuController _defaultMenuItemsForImage]): |
| (-[WKActionMenuController _canAddMediaToPhotos]): |
| (-[WKActionMenuController _addImageToPhotos:]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (-[WKActionMenuController _defaultMenuItems:]): |
| (-[WKActionMenuController _canAddImageToPhotos]): Deleted. |
| |
| We hit test including shadow content to get the desired result for editable text |
| regions. But for media, we want to re-set to the shadow root. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| |
| 2014-11-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Allow to create a view with a related page in WTR |
| https://bugs.webkit.org/show_bug.cgi?id=138501 |
| |
| Reviewed by Martin Robinson. |
| |
| This is needed when running tests in multi web process mode. |
| |
| * UIProcess/API/C/gtk/WKView.cpp: |
| (WKViewCreate): |
| * UIProcess/API/C/gtk/WKView.h: |
| |
| 2014-11-07 Conrad Shultz <conrad_shultz@apple.com> |
| |
| "Lookup" action menu should read "Look up" |
| https://bugs.webkit.org/show_bug.cgi?id=138509 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| |
| 2014-11-07 Beth Dakin <bdakin@apple.com> |
| |
| Null deref performing Lookup on Apple Trailers full screen button |
| https://bugs.webkit.org/show_bug.cgi?id=138513 |
| -and corresponding- |
| rdar://problem/18909699 |
| |
| Reviewed by Tim Horton. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForSelection): |
| |
| 2014-11-07 Anshu Chimala <anshu@apple.com> |
| |
| Make it possible to associate snapshots with back/forward list items other than the current item. |
| https://bugs.webkit.org/show_bug.cgi?id=138490 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare -saveBackForwardSnapshotForItem:, an alternative to -saveBackForwardSnapshotForCurrentItem that accepts a |
| back/forward list item as an argument. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView saveBackForwardSnapshotForItem:]): |
| Pass the provided back/forward list item along to WebPageProxy::recordNavigationSnapshot(). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::recordNavigationSnapshot): |
| Overloaded to optionally take a back/forward list item as an argument. If one isn't provided, default to the current item |
| as before; otherwise, associate the snapshot with whichever item was provided. |
| * UIProcess/WebPageProxy.h: |
| Declare the new recordNavigationSnapshot() overload. |
| |
| * UIProcess/mac/ViewSnapshotStore.h: |
| Make recordSnapshot() take a back/forward list item as an argument. |
| * UIProcess/mac/ViewSnapshotStore.mm: |
| (WebKit::ViewSnapshotStore::recordSnapshot): |
| Store the snapshot in the provided back/forward list item instead of in the current item. |
| |
| 2014-11-07 Tim Horton <timothy_horton@apple.com> |
| |
| Popovers do not dismiss when navigating back and forth using gestures |
| https://bugs.webkit.org/show_bug.cgi?id=138512 |
| <rdar://problem/18900200> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::navigationGestureDidBegin): |
| Dismiss action menu related popovers when navigation gestures begin. |
| |
| 2014-11-07 Beth Dakin <bdakin@apple.com> |
| |
| Action menu preview popover should dismiss on scroll |
| https://bugs.webkit.org/show_bug.cgi?id=138511 |
| -and corresponding- |
| rdar://problem/18901445 |
| |
| Reviewed by Tim Horton. |
| |
| This patch re-names dismissActionMenuDataDetectorPopovers() to |
| dismissActionMenuPopovers() and also calls _clearPreviewPopover from that method |
| as well. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewDidMoveToWindow]): |
| (-[WKView _dismissActionMenuPopovers]): |
| (-[WKView _dismissActionMenuDataDetectorPopovers]): Deleted. |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| (WebKit::WebPageProxy::pageDidScroll): |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::dismissActionMenuPopovers): |
| (WebKit::PageClientImpl::dismissActionMenuDataDetectorPopovers): Deleted. |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController dismissActionMenuPopovers]): |
| (-[WKActionMenuController dismissActionMenuDataDetectorPopovers]): Deleted. |
| |
| 2014-11-07 Beth Dakin <bdakin@apple.com> |
| |
| Support action menus for whitespace in editable areas |
| https://bugs.webkit.org/show_bug.cgi?id=138488 |
| -and corresponding- |
| rdar://problem/18877717 |
| |
| Reviewed by Tim Horton. |
| |
| Very simple menu for whitespace in editable areas. |
| * Shared/API/c/WKActionMenuTypes.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]): |
| (-[WKActionMenuController _defaultMenuItems:]): |
| |
| 2014-11-07 Beth Dakin <bdakin@apple.com> |
| |
| Invoking an action menu should dismiss existing selection |
| https://bugs.webkit.org/show_bug.cgi?id=138496 |
| -and corresponding- |
| rdar://problem/18892787 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| |
| 2014-11-07 Eric Carlson <eric.carlson@apple.com> |
| |
| [iOS] Update optimized fullscreen media controls |
| https://bugs.webkit.org/show_bug.cgi?id=138493 |
| |
| Reviewed by Brent Fulgham. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Initialize GetMediaUIImageData. |
| |
| 2014-11-07 Antti Koivisto <antti@apple.com> |
| |
| Add cache coders |
| https://bugs.webkit.org/show_bug.cgi?id=138413 |
| |
| Reviewed by Anders Carlsson. |
| |
| Add encoding and decoding support for cache types. |
| |
| This is largely a copy of the IPC coder classes with some unnecessary features removed. |
| The coders compute a type-sensitive checksum that can be used to verify the data integrity. |
| |
| The code is behind ENABLE(NETWORK_CACHE) and not yet used. |
| |
| * NetworkProcess/cache: Added. |
| * NetworkProcess/cache/NetworkCacheCoder.h: Added. |
| * NetworkProcess/cache/NetworkCacheCoders.cpp: Added. |
| * NetworkProcess/cache/NetworkCacheCoders.h: Added. |
| * NetworkProcess/cache/NetworkCacheDecoder.cpp: Added. |
| * NetworkProcess/cache/NetworkCacheDecoder.h: Added. |
| * NetworkProcess/cache/NetworkCacheEncoder.cpp: Added. |
| * NetworkProcess/cache/NetworkCacheEncoder.h: Added. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-11-06 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Clients should be able to customize the view used for page previews |
| https://bugs.webkit.org/show_bug.cgi?id=138447 |
| |
| Reviewed by Tim Horton. |
| |
| Add SPI to WKView that clients can use to customize the view used in the page preview popover. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare -_viewForPreviewingURL:initialFrameSize:. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _viewForPreviewingURL:initialFrameSize:]): |
| Return nil in the default implementation. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController loadView]): |
| Only spin up a WKWebView if the delegate (and, therefore, the presenting WKView) doesn't supply a custom view. |
| (-[WKActionMenuController pagePreviewViewController:viewForPreviewingURL:initialFrameSize:]): |
| WKPagePreviewViewControllerDelegate method; wrap the WKView SPI. |
| |
| 2014-11-05 Jer Noble <jer.noble@apple.com> |
| |
| De-templatize Timer |
| https://bugs.webkit.org/show_bug.cgi?id=138450 |
| |
| Reviewed by Anders Carlsson. |
| |
| Remove template specifiers from Timer. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::bufferingTimerFired): |
| * NetworkProcess/NetworkResourceLoader.h: |
| * Shared/WebMemorySampler.cpp: |
| (WebKit::WebMemorySampler::sampleTimerFired): |
| (WebKit::WebMemorySampler::stopTimerFired): |
| * Shared/WebMemorySampler.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.h: |
| * Shared/mac/RemoteLayerBackingStoreCollection.mm: |
| (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired): |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::displayTimerFired): |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/efl/TextCheckerClientEfl.cpp: |
| (TextCheckerClientEfl::languagesUpdateTimerFired): |
| (TextCheckerClientEfl::spellCheckingSettingChangeTimerFired): |
| * UIProcess/efl/TextCheckerClientEfl.h: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: |
| (WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::layerFlushTimerFired): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::processSuspensionCleanupTimerFired): |
| (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired): |
| * WebProcess/WebProcess.h: |
| |
| 2014-11-06 Dean Jackson <dino@apple.com> |
| |
| [filters2] Support for backdrop-filter |
| https://bugs.webkit.org/show_bug.cgi?id=138384 |
| <rdar://problem/18874494> |
| |
| Reviewed by Simon Fraser. |
| |
| Take 2!! Previous patch was rolled out. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::drawInContext): Handle LayerTypeBackdropLayer in the switch. |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::description): Describe a backdrop layer. |
| * UIProcess/ios/RemoteLayerTreeHostIOS.mm: |
| (+[WKBackdropView layerClass]): Define CABackdropLayer and use it as the class. |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| * UIProcess/mac/RemoteLayerTreeHost.mm: Ditto. |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| |
| 2014-11-06 Tim Horton <timothy_horton@apple.com> |
| |
| Data detectors popover points at the first line of the detected item |
| https://bugs.webkit.org/show_bug.cgi?id=138471 |
| <rdar://problem/18893079> |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::scanForDataDetectedItems): |
| Determine the bounding box of all quads of the detected item's text. |
| This way, the popover will point at the border of the item, instead of |
| right at the very first line. |
| |
| 2014-11-06 Beth Dakin <bdakin@apple.com> |
| |
| Preview views often misplaced inside popover |
| https://bugs.webkit.org/show_bug.cgi?id=138472 |
| |
| Reviewed by Tim Horton. |
| |
| This patch makes the popover maintain aspect ratio, and it uses the final scale of |
| that popover to scale the preview view as well. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController initWithPageURL:mainViewSize:popoverToViewScale:]): |
| (-[WKPagePreviewViewController loadView]): |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): |
| (-[WKActionMenuController _targetSize:fitsInAvailableSpace:]): |
| (-[WKActionMenuController _preferredSizeForPopoverPresentedFromOriginRect:]): |
| (-[WKPagePreviewViewController initWithPageURL:]): Deleted. |
| |
| 2014-11-06 Tim Horton <timothy_horton@apple.com> |
| |
| TextIndicatorWindow's bounce animation is lopsided when indicating two short lines of text |
| https://bugs.webkit.org/show_bug.cgi?id=138458 |
| |
| Reviewed by Simon Fraser. |
| |
| Previously, the TextIndicator's frame() covered the entire selection highlight bounds. |
| This was undesirable in cases where the highlight included areas far outside the |
| bounds of the selected text, as the TextIndicatorWindow's 'bounce' animation |
| would be misaligned (centered on the highlight instead of on the text). |
| |
| * Shared/TextIndicator.cpp: |
| Get rid of the many-argument TextIndicator::create, because it was only used |
| internally, and have createWithSelectionInFrame make a ::Data instead. |
| |
| (WebKit::TextIndicator::createWithSelectionInFrame): |
| Compute and store the bounding rect of all of the selected text rects, and store |
| all of the text rects relative to that bounding rect instead of relative to the |
| selection highlight bounds. We do this because the selection highlight bounds |
| often includes area which is far outside of the text bounds (in the case of a |
| selection that spans multiple lines), and causes the text indicator bounce |
| animation to bounce in a lopsided manner. |
| |
| (WebKit::TextIndicator::TextIndicator): |
| Adjust to the rename of textRectsInSelectionRectCoordinates -> textRectsInBoundingRectCoordinates. |
| |
| (WebKit::TextIndicator::frameRect): |
| Instead of the TextIndicator's frame being the selection highlight bounds, |
| it is now the bounds of all of the text rects. |
| |
| (WebKit::TextIndicator::draw): |
| Translate into the image by the difference between the selection highlight bounds |
| and the text bounding rect. This is necessary because the content image is still generated |
| covering the entire selection highlight bounds, but the text rects are in text-rect-bounds coordinates. |
| |
| (WebKit::TextIndicator::Data::encode): |
| (WebKit::TextIndicator::Data::decode): |
| Adjust to the rename of textRectsInSelectionRectCoordinates -> textRectsInBoundingRectCoordinates. |
| Encode/decode textBoundingRectInWindowCoordinates. |
| |
| * Shared/TextIndicator.h: |
| (WebKit::TextIndicator::contentImage): Deleted. |
| Get rid of an unnecessary getter and constructor. |
| |
| 2014-11-06 Tim Horton <timothy_horton@apple.com> |
| |
| Only provide a single result to the action menu DDActionContext |
| https://bugs.webkit.org/show_bug.cgi?id=138469 |
| <rdar://problem/18869036> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::scanForDataDetectedItems): |
| Only provide one result; secondary results can be extremely unrelated to |
| the primary one and confuse Data Detectors further down the line. |
| |
| 2014-11-06 Tim Horton <timothy_horton@apple.com> |
| |
| Null deref in rangeForDictionaryLookupAtHitTestResult on occasion |
| https://bugs.webkit.org/show_bug.cgi?id=138459 |
| <rdar://problem/18872825> |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::rangeForDictionaryLookupAtHitTestResult): |
| rangeExpandedAroundPositionByCharacters can return null. |
| |
| 2014-11-06 Tim Horton <timothy_horton@apple.com> |
| |
| Prefer link action menus over images |
| https://bugs.webkit.org/show_bug.cgi?id=138461 |
| <rdar://problem/18768377> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItems:]): |
| Swap the priority of links and images. |
| |
| 2014-11-05 Sam Weinig <sam@webkit.org> |
| |
| Use std::unique_ptr for TileController |
| https://bugs.webkit.org/show_bug.cgi?id=138429 |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp: |
| (WebKit::PlatformCALayerRemoteTiledBacking::PlatformCALayerRemoteTiledBacking): |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h: |
| |
| 2014-11-06 Dan Bernstein <mitz@apple.com> |
| |
| iOS build fix. |
| |
| * WebProcess/Plugins/PluginController.h: |
| |
| 2014-11-06 Daniel Bates <dabates@apple.com> |
| |
| [iOS] WebProcess needs to take a background task assertion to prevent being killed |
| for "suspended with locked system files" |
| https://bugs.webkit.org/show_bug.cgi?id=138155 |
| <rdar://problem/17939303> |
| |
| Reviewed by Anders Carlsson. |
| |
| Mitigates an issue where the WebProcess may be killed when suspended holding locked files |
| by allowing the WebProcess to notify the UIProcess when it is holding such files so that |
| both can continue to run for a period of time after the UIProcess transitions to the |
| background. In particular, the WebProcess notifies the UIProcess that it is holding- or |
| relinquished- a locked file when it begins and ends a sequence of SQLite transactions, |
| respectively. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::disconnect): Relinquish an existing background task assertion |
| when the WebProcess disconnects. Among other situations, the WebProcess may disconnect as |
| a result of being suspended holding locked files even when the UIProcess requested a |
| background task assertion (i.e. it may have exceeded its background time limit). |
| (WebKit::WebProcessProxy::setIsHoldingLockedFiles): Added. Either acquires a new background |
| task assertion or relinquishes an existing one. |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: Added message SetIsHoldingLockedFiles(bool). The WebProcess |
| dispatches this message to inform the UIProcess that it is holding- or relinquished- a locked file. |
| * WebKit2.xcodeproj/project.pbxproj: Added files WebSQLiteDatabaseTracker.{cpp, h}. |
| * WebProcess/WebCoreSupport/WebSQLiteDatabaseTracker.cpp: Added. |
| (WebKit::WebSQLiteDatabaseTracker::supplementName): Added. |
| (WebKit::WebSQLiteDatabaseTracker::WebSQLiteDatabaseTracker): Added. |
| (WebKit::WebSQLiteDatabaseTracker::initialize): Register to receive SQLiteDatabaseTrackerClient callbacks. |
| (WebKit::WebSQLiteDatabaseTracker::willBeginFirstTransaction): Inform the HysteresisActivity object on |
| the main thread that we began a transaction so that it calls WebSQLiteDatabaseTracker::started(). |
| (WebKit::WebSQLiteDatabaseTracker::didFinishLastTransaction): Inform the HysteresisActivity object on |
| the main thread that we finished a transaction so that it may eventually call WebSQLiteDatabaseTracker::stopped(). |
| (WebKit::WebSQLiteDatabaseTracker::started): Notify the UIProcess that the WebProcess is holding |
| a locked file. |
| (WebKit::WebSQLiteDatabaseTracker::stopped): Notify the UIProcess that the WebProcess has |
| relinquished the locked file. |
| * WebProcess/WebCoreSupport/WebSQLiteDatabaseTracker.h: Added. We use a HysteresisActivity object |
| to coalesce SetIsHoldingLockedFiles(false) messages as an optimization to minimize the number of |
| messages exchanged between the UIProcess and WebProcess when a web page performs SQLite transactions |
| in batches. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): Instantiate the supplement WebSQLiteDatabaseTracker when building |
| for iOS. |
| |
| 2014-11-06 Alberto Garcia <berto@igalia.com> |
| |
| [GTK] [Stable] webkitgtk 2.6.1 fails to load flashplugin |
| https://bugs.webkit.org/show_bug.cgi?id=137849 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| NPPVpluginNeedsXEmbed is a boolean value, so it should normally |
| use an NPBool (1 byte). However some plugins (the Flash player in |
| particular) are using an int instead, so we have to do it as well |
| else we'll end up corrupting the stack. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| |
| 2014-11-06 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add context menu API to Web Process Extensions |
| https://bugs.webkit.org/show_bug.cgi?id=138311 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| Add WebKitWebPage::context-menu signal, similar to the |
| WebKitWebView one, but that receives a WebKitWebHitTestResult, a |
| class that extends WebKitTestResult to provide the WebKitDOMNode |
| from the Web Process Extensions API. This makes WebKitContextMenu, |
| WebKitContextMenuItem and WebKitTestResult classes shared between |
| UI and Web Extensions APIs. In addition to be able to customize |
| the context menu, it also provides API to set user data, as a |
| GVariant, in the Web Process that is sent to the UI Process. |
| |
| * PlatformGTK.cmake: Add new files. |
| * UIProcess/API/gtk/WebKitContextMenu.cpp: |
| (webkit_context_menu_set_user_data): Add user data to the context |
| menu as a GVariant. |
| (webkit_context_menu_get_user_data): Get the user data previously |
| set with webkit_context_menu_set_user_data() either from the Web |
| or UI processes. |
| * UIProcess/API/gtk/WebKitContextMenu.h: |
| * UIProcess/API/gtk/WebKitContextMenuActions.h: |
| * UIProcess/API/gtk/WebKitContextMenuClient.cpp: |
| (getContextMenuFromProposedMenu): Convert the received user data |
| into a GVariant and pass it to webkitWebViewPopulateContextMenu(). |
| * UIProcess/API/gtk/WebKitContextMenuItem.h: |
| * UIProcess/API/gtk/WebKitForwardDeclarations.h: |
| * UIProcess/API/gtk/WebKitHitTestResult.h: |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewPopulateContextMenu): Set the user data received |
| from the Web Process to the WebKitContextMenu before emitting |
| WebKitWebView::context-menu. |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for WebKitWebHitTestResult. |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols. |
| * UIProcess/API/gtk/docs/webkit2gtk.types: Add webkit_web_hit_test_result_get_type. |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResult.cpp: Added. |
| (webkitWebHitTestResultGetProperty): Add getter for node property. |
| (webkitWebHitTestResultSetProperty): Add setter for node property. |
| (webkit_web_hit_test_result_class_init): Add node property. |
| (webkitWebHitTestResultCreate): Create a new |
| WebKitWebHitTestResult for the given InjectedBundleHitTestResult. |
| (webkit_web_hit_test_result_get_node): Return the WebKitDOMNode. |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResult.h: Added. |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResultPrivate.h: Added. |
| * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp: |
| (getContextMenuFromDefaultMenu): Build a WebKitContextMenu and |
| WebKitWebHitTestResult and emit WebKitWebPage::context-menu signal. |
| (webkit_web_page_class_init): Add WebKitWebPage::context-menu signal. |
| (webkitWebPageCreate): Add implementation for getContextMenuFromDefaultMenu. |
| * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h: |
| |
| 2014-11-06 Ryuan Choi <ryuan.choi@gmail.com> |
| |
| [EFL] Remove m_scrollPosition from CoordinatedGraphicsScene |
| https://bugs.webkit.org/show_bug.cgi?id=138419 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| m_scrollPosition of CoordinatedGraphicsScene is only to adjust the position |
| of fixed element. But this adjustment is only called by paintToCurrentGLContext() |
| and WebView can pass same information to the parameter of that method. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: |
| (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext): |
| (WebCore::CoordinatedGraphicsScene::adjustPositionForFixedLayers): |
| (WebCore::CoordinatedGraphicsScene::setScrollPosition): Deleted. |
| * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: |
| * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: |
| (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect): |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::paintToCurrentGLContext): |
| |
| 2014-11-05 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r175672. |
| https://bugs.webkit.org/show_bug.cgi?id=138455 |
| |
| Tries to make backdrop layers on every layer, asserts on |
| Mavericks (Requested by smfr on #webkit). |
| |
| Reverted changeset: |
| |
| "[filters2] Support for backdrop-filter" |
| https://bugs.webkit.org/show_bug.cgi?id=138384 |
| http://trac.webkit.org/changeset/175672 |
| |
| 2014-11-04 Ada Chan <adachan@apple.com> |
| |
| Figure out whether a plug-in is playing audio. |
| https://bugs.webkit.org/show_bug.cgi?id=137219 |
| |
| Reviewed by Anders Carlsson. |
| |
| Handle the setting of the NPPVpluginIsPlayingAudio variable. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::setPluginIsPlayingAudio): |
| Send a SetPluginIsPlayingAudio message to the WebProcess. |
| * PluginProcess/PluginControllerProxy.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_SetValue): |
| Handle NPPVpluginIsPlayingAudio. Call NetscapePlugin::setIsPlayingAudio(). |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::setIsPlayingAudio): |
| Call PluginControllerProxy::setPluginIsPlayingAudio(). |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::setPluginIsPlayingAudio): |
| Call PluginView::setPluginIsPlayingAudio(). |
| * WebProcess/Plugins/PluginProxy.h: |
| * WebProcess/Plugins/PluginProxy.messages.in: |
| Add the SetPluginIsPlayingAudio message. |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::PluginView): |
| Initialize m_pluginIsPlayingAudio. |
| (WebKit::PluginView::~PluginView): |
| Remove itself from the Document's list of AudioProducers. |
| (WebKit::PluginView::initializePlugin): |
| Add itself to the Document's list of AudioProducers. |
| (WebKit::PluginView::pageMutedStateDidChange): |
| Add a FIXME. |
| (WebKit::PluginView::setPluginIsPlayingAudio): |
| If m_pluginIsPlayingAudio has changed, tell the Document to update its audio playing state. |
| * WebProcess/Plugins/PluginView.h: |
| Now inherits AudioProducer. |
| |
| 2014-11-05 Dan Bernstein <mitz@apple.com> |
| |
| Tried to fix the GTK build. |
| |
| * PlatformGTK.cmake: Removed references to deletion UI resources that have been removed. |
| |
| 2014-11-04 Dean Jackson <dino@apple.com> |
| |
| [filters2] Support for backdrop-filter |
| https://bugs.webkit.org/show_bug.cgi?id=138384 |
| <rdar://problem/18874494> |
| |
| Reviewed by Simon Fraser. |
| |
| * Shared/mac/RemoteLayerBackingStore.mm: |
| (WebKit::RemoteLayerBackingStore::drawInContext): Handle LayerTypeBackdropLayer in the switch. |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTransaction::description): Describe a backdrop layer. |
| * UIProcess/ios/RemoteLayerTreeHostIOS.mm: |
| (+[WKBackdropView layerClass]): Define CABackdropLayer and use it as the class. |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| * UIProcess/mac/RemoteLayerTreeHost.mm: Ditto. |
| (WebKit::RemoteLayerTreeHost::createLayer): |
| |
| 2014-11-05 Ryuan Choi <ryuan.choi@gmail.com> |
| |
| [EFL] Improve previous temporary fix against drawing (0,0) position before rendering content of next web page |
| https://bugs.webkit.org/show_bug.cgi?id=138305 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| WebKit2 has freezed layer tree until frame load completion since r101838. |
| In EFL port, we unfreeze it when PageViewportController::pageTransitionViewportReady() is called though, |
| UIProcess on EFL port updates cairo surface during the freezing time of layer tree. |
| Thus UIProcess should not update the layer trees until the layerTreeState is unfrozen. |
| |
| * UIProcess/API/efl/EwkView.h: Removed previous workarounds. |
| (EwkView::setWaitingForNewPage): Deleted. |
| (EwkView::waitingForNewPage): Deleted. |
| (EwkView::didCommitNewPage): Deleted. |
| * UIProcess/CoordinatedGraphics/PageViewportController.cpp: |
| (WebKit::PageViewportController::PageViewportController): |
| (WebKit::PageViewportController::didCommitLoad): |
| (WebKit::PageViewportController::didRenderFrame): |
| (WebKit::PageViewportController::syncVisibleContents): |
| * UIProcess/CoordinatedGraphics/PageViewportController.h: |
| * UIProcess/efl/PageLoadClientEfl.cpp: |
| (WebKit::PageLoadClientEfl::didCommitLoadForFrame): |
| * UIProcess/efl/PageViewportControllerClientEfl.cpp: |
| (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents): |
| * UIProcess/efl/ViewClientEfl.cpp: |
| (WebKit::ViewClientEfl::didRenderFrame): |
| |
| 2014-11-05 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-11-05 Dan Bernstein <mitz@apple.com> |
| |
| Remove the unused deletion UI feature |
| https://bugs.webkit.org/show_bug.cgi?id=138442 |
| |
| Rubber-stamped by Alexey Proskuryakov. |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::shouldShowDeleteInterface): Deleted. |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| |
| 2014-11-05 Conrad Shultz <conrad_shultz@apple.com> |
| |
| It should be possible to open a page preview by clicking on it |
| https://bugs.webkit.org/show_bug.cgi?id=138445 |
| |
| Reviewed by Tim Horton. |
| |
| Add a click recognizer to WKPagePreviewViewController and plumb it through to WKActionMenuController. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| Declare <WKPagePreviewViewControllerDelegate>, currently home to just a single method. |
| (-[WKPagePreviewViewController loadView]): |
| Configure and add a click gesture recognizer to the WKWebView. |
| (-[WKPagePreviewViewController _clickRecognized:]): |
| Gesture recognizer action; send -pagePreviewViewControllerWasClicked: to the delegate. |
| (-[WKActionMenuController willDestroyView:]): |
| Extract code to -_clearPreviewPopover. |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| Ditto. |
| (-[WKActionMenuController _createPreviewPopoverForURL:]): |
| Set ourself as the delegate of the page preview controller. |
| (-[WKActionMenuController _clearPreviewPopover]): |
| Extracted from various other methods; if appropriate, nil out the preview view controller's delegate. |
| (-[WKActionMenuController popoverWillClose:]): |
| Extract code to -_clearPreviewPopover. |
| (-[WKActionMenuController pagePreviewViewControllerWasClicked:]): |
| WKPagePreviewViewControllerDelegate method; open the URL of the clicked page. |
| |
| 2014-11-05 Beth Dakin <bdakin@apple.com> |
| |
| Page preview popover should show scaled-down web content |
| https://bugs.webkit.org/show_bug.cgi?id=138444 |
| |
| Reviewed by Anders Carlsson. |
| |
| Instead of keeping the preferred size in the controller, keep the main view’s |
| size, and then scale the bounds of the popover’s view using that and the scale |
| factor as a constant. Set the size of the popover explicitly so that it doesn’t |
| get the view’s size. This will cause it to scale the WKWebView. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController initWithPageURL:]): |
| (-[WKPagePreviewViewController loadView]): |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): |
| (-[WKActionMenuController _preferredSizeForPopoverPresentedFromOriginRect:]): |
| |
| 2014-11-05 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Page preview popovers sometimes cover their originating element |
| https://bugs.webkit.org/show_bug.cgi?id=138437 |
| |
| Reviewed by Beth Dakin. |
| |
| If a popover is sufficiently large, and the originating element is in a particular location, it's |
| possible that the popover can't be positioned in a manner that doesn't occlude the originating element. |
| Address this by scaling down the popover content if it can't fit entirely between the originating |
| element and the screen edge. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| Update to use -_createPreviewPopoverForURL:originRect:. |
| (-[WKActionMenuController _createPreviewPopoverForURL:originRect:]): |
| Renamed from -_createPreviewPopoverForURL:; extract code to -_preferredSizeForPopoverPresentedFromOriginRect:. |
| (-[WKActionMenuController _preferredSizeForPopoverPresentedFromOriginRect:]): |
| Compute a size that is as large as possible while keeping the popover between the origin rect and screen edge |
| (with an arbitrary padding applied to keep from directly abutting the screen edge). |
| (-[WKActionMenuController _createPreviewPopoverForURL:]): Deleted. |
| |
| 2014-11-05 Alexey Proskuryakov <ap@apple.com> |
| |
| fast/dom/remove-body-during-body-replacement2.html fails on WK2 |
| https://bugs.webkit.org/show_bug.cgi?id=138334 |
| |
| Reviewed by Anders Carlsson. |
| |
| Added an SPI to focus a frame. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameFocus): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setViewState): |
| |
| 2014-11-05 Tim Horton <timothy_horton@apple.com> |
| |
| Select Data Detectors results instead of just highlighting them |
| https://bugs.webkit.org/show_bug.cgi?id=138435 |
| <rdar://problem/18877675> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::selectLastActionMenuRange): |
| (WebKit::WebPageProxy::selectLookupTextAtLocation): Deleted. |
| Rename selectLookupTextAtLocation to selectLastActionMenuRange. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| Do a real selection for single-item Data Detector menus; show the yellow highlight otherwise. |
| Adopt selectLastActionMenuRange for non-detected text. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::selectLastActionMenuRange): |
| (WebKit::WebPage::selectLookupTextAtLocation): Deleted. |
| Store the last (detected data or Lookup-derived) action menu range. |
| Select it upon selectLastActionMenuRange. |
| |
| 2014-11-04 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WebContent crash in WebPage::selectWithGesture() |
| |
| <https://bugs.webkit.org/show_bug.cgi?id=138399> |
| <rdar://problem/18550631> |
| |
| This crash occurs when the web process receives a "TapAndAHalf" gesture |
| with the "Changed" state without having received a "TapAndAHalf" |
| gesture with the "Began" state. |
| |
| No test possible. |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::selectWithGesture): |
| Null check m_currentWordRange before dereferencing it. |
| |
| 2014-11-05 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Disable action menus on page previews |
| https://bugs.webkit.org/show_bug.cgi?id=138431 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _shouldIgnoreMouseEvents]): |
| Renamed from -shouldIgnoreMouseEvents since this isn't actually public. |
| (-[WKView swipeWithEvent:]): |
| (-[WKView mouseMoved:]): |
| (-[WKView mouseDown:]): |
| (-[WKView mouseUp:]): |
| (-[WKView mouseDragged:]): |
| Updated to reflect method rename. |
| (-[WKView shouldIgnoreMouseEvents]): Deleted. |
| |
| * UIProcess/API/mac/WKViewInternal.h: |
| Expose -_shouldIgnoreMouseEvents. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Cancel the menu if the presenting WKView should ignore mouse events. |
| |
| 2014-11-05 Beth Dakin <bdakin@apple.com> |
| |
| Action menu URL preview should "peek," i.e. appear when the menu item is |
| highlighted |
| https://bugs.webkit.org/show_bug.cgi?id=138432 |
| -and corresponding- |
| rdar://problem/18774264 |
| |
| Reviewed by Anders Carlsson. |
| |
| New ivars. Keep a reference to the popover, and a BOOL that indicates whether we |
| should close the popover when the menu goes away. |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| Re-set the preview bool to NO whenever we are about to pop up a new menu. |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| |
| Close the popover when the menu closes unless _shouldKeepPreviewPopoverOpen has |
| been set. |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| |
| Set _shouldKeepPreviewPopoverOpen. |
| (-[WKActionMenuController _keepPreviewOpen:]): |
| |
| Re-factored to use ivar. |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| (-[WKActionMenuController _createPreviewPopoverForURL:]): |
| |
| Now call _previewURLFromActionMenu on menu item highlight. |
| (-[WKActionMenuController menu:willHighlightItem:]): |
| |
| NSPopover delegate method so that we can keep our BOOL and ivar accurate in the |
| case where the popover is closed by some other mechanism than the action menu |
| going away. |
| (-[WKActionMenuController popoverWillClose:]): |
| |
| New selector for the preview. Now when this item is actually selected, we just |
| want to set the BOOL _shouldKeepPreviewPopoverOpen to YES so that we keep the |
| preview open. |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| |
| 2014-11-05 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Disable interaction with action menu page previews |
| https://bugs.webkit.org/show_bug.cgi?id=138400 |
| |
| Reviewed by Tim Horton. |
| |
| Expand on the existing -[WKView shouldIgnoreMouseEvents] by adding facilities to suppress handling |
| of all non-wheel events, effectively creating a scroll-only web view. Deploy this in |
| WKPagePreviewViewController. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Declare the OS X-only ignoresNonWheelMouseEvents SPI. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _ignoresNonWheelMouseEvents]): |
| (-[WKWebView _setIgnoresNonWheelMouseEvents:]): |
| Wrap the underlying WKView methods. |
| |
| * UIProcess/API/Cocoa/WKWebViewInternal.h: |
| Declare the OS X-only ignoresNonWheelMouseEvents property. |
| |
| * UIProcess/API/mac/WKView.mm: |
| Add _ignoresNonWheelMouseEvents to WKViewData. |
| (-[WKView shouldIgnoreMouseEvents]): |
| Include a check for _ignoresNonWheelMouseEvents. |
| (-[WKView _setIgnoresNonWheelMouseEvents:]): |
| Set the ivar in WKViewData. |
| (-[WKView _ignoresNonWheelMouseEvents]): |
| Fetch the ivar in WKViewData. |
| (-[WKView _shouldIgnoreWheelEvents]): |
| Implement the old -shouldIgnoreMouseEvents behavior. |
| (-[WKView scrollWheel:]): |
| -shouldIgnoreMouseEvents -> -_shouldIgnoreWheelEvents. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKPagePreviewViewController loadView]): |
| Configure the WKWebView to ignore non-wheel mouse events; use RetainPtr for the WKWebView. |
| |
| 2014-11-03 Dean Jackson <dino@apple.com> |
| |
| Add ENABLE_FILTERS_LEVEL_2 feature guard. |
| https://bugs.webkit.org/show_bug.cgi?id=138362 |
| |
| Reviewed by Tim Horton. |
| |
| Add a new feature define for Level 2 of CSS Filters. |
| http://dev.w3.org/fxtf/filters-2/ |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2014-11-05 Alberto Garcia <berto@igalia.com> |
| |
| NetscapePlugin: NPP_GetValue should receive a pointer to NPBool, not bool |
| https://bugs.webkit.org/show_bug.cgi?id=138418 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Replace bool with NPBool, which is actually an unsigned char. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| |
| 2014-11-05 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add WebKitWebResource::failed-with-tls-errors signal |
| https://bugs.webkit.org/show_bug.cgi?id=137862 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| When a resource load fails due to TLS errors emit WebKitWebResource::failed-with-tls-errors |
| signal instead of WebKitWebResource::failed so that TLS errors information and certificate |
| are provided. |
| |
| * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: |
| (didReceiveWebViewMessageFromInjectedBundle): Check if the error |
| is a TLS failure to emit failed-with-tls-errors instead of failed. |
| * UIProcess/API/gtk/WebKitWebResource.cpp: |
| (webkit_web_resource_class_init): Add WebKitWebResource::failed-with-tls-errors signal. |
| (webkitWebResourceFailedWithTLSErrors): Emit failed-with-tls-errors and finish signals. |
| * UIProcess/API/gtk/WebKitWebResourcePrivate.h: |
| |
| 2014-11-05 Shivakumar JM <shiva.jm@samsung.com> |
| |
| Fix build warning in WebKit2/WebProcess module. |
| https://bugs.webkit.org/show_bug.cgi?id=138410 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Fix build warning by removing parameter name |
| |
| * WebProcess/WebPage/WebPageOverlay.h: |
| (WebKit::WebPageOverlay::Client::prepareForActionMenu): |
| |
| 2014-11-05 Antti Koivisto <antti@apple.com> |
| |
| Move HTTPHeaderMap encoding to the class |
| https://bugs.webkit.org/show_bug.cgi?id=138412 |
| |
| Reviewed by Andreas Kling. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<HTTPHeaderMap>::encode): Deleted. |
| (IPC::ArgumentCoder<HTTPHeaderMap>::decode): Deleted. |
| |
| Make these HTTPHeaderMap members instead so they can access internals and can be used elsewhere. |
| |
| * Shared/WebCoreArgumentCoders.h: |
| |
| 2014-11-04 Beth Dakin <bdakin@apple.com> |
| |
| Speculative build fix. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _dismissActionMenuDataDetectorPopovers]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| |
| 2014-11-04 Beth Dakin <bdakin@apple.com> |
| |
| Un-anchor data detector popovers on scroll |
| https://bugs.webkit.org/show_bug.cgi?id=138385 |
| -and corresponding- |
| rdar://problem/18869345 |
| |
| Reviewed by Tim Horton. |
| |
| Whenever we dismiss the dictionary popover, and on scroll, we should try to |
| dismiss the data detector popovers. Right now we don’t have the ability to know if |
| a dismiss succeeded, so we will settle for un-anchoring the popover. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewDidMoveToWindow]): |
| (-[WKView _dismissActionMenuDataDetetcorPopovers]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| (WebKit::WebPageProxy::pageDidScroll): |
| (WebKit::WebPageProxy::resetStateAfterProcessExited): |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::dismissActionMenuDataDetetcorPopovers): |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController dismissActionMenuDataDetetcorPopovers]): |
| |
| 2014-11-04 Andy Estes <aestes@apple.com> |
| |
| [iOS] WKPDFView should scroll to a fragment when loading a PDF |
| https://bugs.webkit.org/show_bug.cgi?id=138404 |
| |
| Reviewed by Tim Horton. |
| |
| WKPDFView already knew how to scroll to a page number fragment during a same-document navigation, but it didn't |
| know to do so when loading a PDF whose URL already contained a page number fragment. This could happen if the |
| user long-presses a page number link and taps 'Open in New Tab'. |
| |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView web_setContentProviderData:suggestedFilename:]): Called _scrollToFragment:. |
| (-[WKPDFView _scrollToFragment:]): Moved fragment scrolling code to here from web_didSameDocumentNavigation:. |
| (-[WKPDFView web_didSameDocumentNavigation:]): Called _scrollToFragment. |
| |
| 2014-11-04 Andy Estes <aestes@apple.com> |
| |
| [iOS] Stop using +[NSURL _web_URLWithWTFString:relativeToURL:] in WKPDFView |
| https://bugs.webkit.org/show_bug.cgi?id=138357 |
| |
| Rubber-stamped by Dan Bernstein. |
| |
| During patch review for r175595 I changed from using +URLWithString:relativeToURL: to using |
| +_web_URLWithWTFString:relativeToURL: to append a page number fragment to the document URL. |
| If the base URL already contains a fragment, +_web_URLWithWTFString:relativeToURL: appends to the existing |
| fragment whereas +URLWithString:relativeToURL: replaces the existing fragment. I want the latter behavior. |
| |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView _URLForLinkAnnotation:]): |
| |
| 2014-11-04 Tim Horton <timothy_horton@apple.com> |
| |
| Add bundle SPI allowing PageOverlay to customize the action menu |
| https://bugs.webkit.org/show_bug.cgi?id=138388 |
| <rdar://problem/18875579> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| Bump the BundlePageOverlay client version. |
| |
| (WKBundlePageOverlayCreate): |
| (WKBundlePageOverlaySetAccessibilityClient): |
| Don't return if we have a version; the version check happens later anyway, |
| and now it is valid to have a version >0. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h: |
| Bump the BundlePageOverlay client version. |
| Add prepareForActionMenu callback. |
| |
| * WebProcess/WebPage/WebPageOverlay.h: |
| (WebKit::WebPageOverlay::Client::prepareForActionMenu): |
| * WebProcess/WebPage/WebPageOverlay.cpp: |
| (WebKit::overlayMap): |
| (WebKit::WebPageOverlay::WebPageOverlay): |
| (WebKit::WebPageOverlay::~WebPageOverlay): |
| (WebKit::WebPageOverlay::fromCoreOverlay): |
| (WebKit::WebPageOverlay::pageOverlayDestroyed): |
| Keep track of a map of PageOverlay to WebPageOverlay. |
| |
| (WebKit::WebPageOverlay::prepareForActionMenu): |
| Forward prepareForActionMenu to the client. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Iterate through the overlays and let them prepareForActionMenu; |
| the first overlay that returns true wins. If no overlays want to |
| do anything, hand preparation along to the context menu client. |
| |
| 2014-11-03 Jeremy Jones <jeremyj@apple.com> |
| |
| Add button and enable optimized fullscreen. |
| https://bugs.webkit.org/show_bug.cgi?id=138351 |
| |
| Reviewed by Eric Carlson. |
| |
| Add IsOptimizedFullscreenSupported to enable the feature only where appropriate. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): add IsOptimizedFullscreenSupported |
| |
| 2014-11-04 Andy Estes <aestes@apple.com> |
| |
| [iOS] Add long press support for links in WKPDFView |
| https://bugs.webkit.org/show_bug.cgi?id=138357 |
| |
| Reviewed by Dan Bernstein. |
| |
| Use WKActionSheetAssistant to show a link action sheet in response to long-pressing on a link. Have WKPDFView |
| conform to WKActionSheetAssistantDelegate in order to respond to the open and copy actions as well as to |
| provide the link's URL and position information to WKActionSheetAssistant. The long-pressed link is highlighted |
| for .75 seconds before the sheet is displayed in order to match UIWebPDFView. |
| |
| * UIProcess/ios/WKActionSheetAssistant.h: Made protocol methods that WKPDFView doesn't implement optional. |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant updatePositionInformation]): Checked if delegate responds to |
| updatePositionInformationForActionSheetAssistant: before calling. |
| (-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]): Checked if delegate responds to |
| actionSheetAssistant:willStartInteractionWithElement: before calling. |
| (-[WKActionSheetAssistant cleanupSheet]): Checked if delegate responds to actionSheetAssistantDidStopInteraction: |
| before calling. |
| * UIProcess/ios/WKPDFView.h: Conformed to WKActionSheetAssistantDelegate. |
| * UIProcess/ios/WKPDFView.mm: |
| (-[WKPDFView web_initWithFrame:webView:]): Instantiated a WKActionSheetAssistant and set self as its delegate. |
| (-[WKPDFView _highlightLinkAnnotation:forDuration:completionHandler:]): Moved highlight drawing to here from |
| annotation:wasTouchedAtPoint:controller: in order to be reused for long-press. |
| (-[WKPDFView _URLForLinkAnnotation:]): Moved URL creation to here from annotation:wasTouchedAtPoint:controller: |
| in order to be reused for long-press. Generated an absolute URL since this URL might go into the pasteboard. |
| (-[WKPDFView annotation:wasTouchedAtPoint:controller:]): Changed to call |
| _highlightLinkAnnotation:forDuration:completionHandler: and _URLForLinkAnnotation:. |
| (-[WKPDFView annotation:isBeingPressedAtPoint:controller:]): Set values on _positionInformation and called |
| -[WKActionSheetAssistant showLinkSheet] after showing a highlight for .75 seconds. |
| (-[WKPDFView positionInformation]): Returned _positionInformation. |
| (-[WKPDFView performAction:]): Added a UTF-8 text and URL representation of the pressed URL to the pasteboard. |
| (-[WKPDFView openElementAtLocation:]): Called WebPage::navigateToURLWithSimulatedClick(). |
| (-[WKPDFView actionsForElement:defaultActions:]): Returned actions from UIClient::actionsForElement(). |
| (-[WKPDFView _createHighlightViewWithFrame:]): Deleted. |
| |
| 2014-11-04 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the 32-bit build. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| |
| 2014-11-04 Conrad Shultz <conrad_shultz@apple.com> |
| |
| Use a web view for Quick Look in action menus |
| https://bugs.webkit.org/show_bug.cgi?id=138370 |
| |
| Reviewed by Anders Carlsson. |
| |
| Instead of using the QLPreviewBubble SPI, show a popover containing a web view. This currently |
| does not inherit any configuration from the presenting WKView and does not expose any |
| customization options. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| Declare new internal NSViewController subclass, WKPagePreviewViewController. |
| (-[WKPagePreviewViewController initWithPageURL:]): |
| Store the passed-in URL and set a somewhat arbitrary (iPhone 5 screen size) default preferred size. |
| (-[WKPagePreviewViewController loadView]): |
| Create a WKWebView and load the URL passed into the initializer. |
| (-[WKActionMenuController _previewURLFromActionMenu:]): |
| Renamed from -_quickLookURLFromActionMenu:; present the popover returned by -_createPreviewPopoverForURL:. |
| (-[WKActionMenuController _createPreviewPopoverForURL:]): |
| New helper method; return a popover that owns a _WKPagePreviewViewController configured to show a scaled-down web page. |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| Update to reflect method rename. |
| (-[WKActionMenuController _quickLookURLFromActionMenu:]): Deleted. |
| |
| 2014-11-04 Chris Dumez <cdumez@apple.com> |
| |
| Add ptr() method to Ref class |
| https://bugs.webkit.org/show_bug.cgi?id=138361 |
| |
| Reviewed by Darin Adler. |
| |
| Use the new Ref::ptr() method. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::createWebPage): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setPreferences): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didNavigateWithNavigationData): |
| (WebKit::WebProcessProxy::didPerformClientRedirect): |
| (WebKit::WebProcessProxy::didPerformServerRedirect): |
| (WebKit::WebProcessProxy::didUpdateHistoryTitle): |
| |
| 2014-11-04 Andy Estes <aestes@apple.com> |
| |
| [iOS] Include a WKActionSheetAssistant parameter in WKActionSheetAssistantDelegate methods |
| https://bugs.webkit.org/show_bug.cgi?id=137792 |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/Cocoa/_WKElementAction.mm: |
| (+[_WKElementAction elementActionWithTitle:actionHandler:]): |
| (+[_WKElementAction elementActionWithType:customTitle:]): |
| (-[_WKElementAction _runActionWithElementInfo:forActionSheetAssistant:]): |
| * UIProcess/API/Cocoa/_WKElementActionInternal.h: |
| * UIProcess/ios/WKActionSheetAssistant.h: |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]): |
| (-[WKActionSheetAssistant presentationRectInHostViewForSheet]): |
| (-[WKActionSheetAssistant updatePositionInformation]): |
| (-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]): |
| (-[WKActionSheetAssistant showImageSheet]): |
| (-[WKActionSheetAssistant showLinkSheet]): |
| (-[WKActionSheetAssistant showDataDetectorsSheet]): |
| (-[WKActionSheetAssistant cleanupSheet]): |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView positionInformationForActionSheetAssistant:]): |
| (-[WKContentView updatePositionInformationForActionSheetAssistant:]): |
| (-[WKContentView actionSheetAssistant:performAction:]): |
| (-[WKContentView actionSheetAssistant:openElementAtLocation:]): |
| (-[WKContentView actionSheetAssistant:decideActionsForElement:defaultActions:]): |
| (-[WKContentView actionSheetAssistant:willStartInteractionWithElement:]): |
| (-[WKContentView actionSheetAssistantDidStopInteraction:]): |
| |
| 2014-11-04 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r175564 for !PLATFORM(COCOA). |
| |
| * Shared/TextIndicator.cpp: |
| |
| 2014-11-04 Tim Horton <timothy_horton@apple.com> |
| |
| Implement yellow highlight over data detected items |
| https://bugs.webkit.org/show_bug.cgi?id=138340 |
| <rdar://problem/18840102> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/TextIndicator.cpp: Renamed from Source/WebKit2/UIProcess/TextIndicator.cpp. |
| * Shared/TextIndicator.h: Renamed from Source/WebKit2/UIProcess/TextIndicator.h. |
| Move TextIndicator to Shared. |
| Move all of the members to a Data struct. |
| Implement encode/decode for TextIndicator::Data, so it can be passed as |
| the argument to SetTextIndicator, and also as a field on ActionMenuHitTestResult. |
| Add 'createWithSelectionInFrame', which builds a TextIndicator |
| from the selection in the given frame. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| Rename actionBoundingBox to detectedDataBoundingBox. |
| Store/encode/decode detectedDataTextIndicator. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setTextIndicator): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| Create a TextIndicator from the TextIndicator::Data. |
| Add an explicit ClearTextIndicator message instead of sending empty Data. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| If the text indicator is up when preparing for a new menu invocation, hide it. |
| |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| Show the text indicator when the menu opens, for data detected items. |
| |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| Hide the text indicator when the menu closes, unless we only had one item. |
| Then, we'll hide it in the DDActionContext completionHandler block. |
| |
| (-[WKActionMenuController _showTextIndicator]): |
| (-[WKActionMenuController _hideTextIndicator]): |
| Added. Show and hide the text indicator based on the TextIndicator |
| data included in the action menu hit test result. |
| |
| (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]): |
| Hide the text indicator when the data detector popover completes. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::getImageForFindMatch): |
| Make use of the newly-moved createSelectionSnapshot. |
| |
| (WebKit::FindController::updateFindIndicator): |
| Make use of TextIndicator::createWithSelectionInFrame, which allows |
| us to share this code for building a TextIndicator with other callers. |
| |
| (WebKit::FindController::hideFindIndicator): |
| |
| (WebKit::getFindIndicatorBitmap): Deleted. |
| Move getFindIndicatorBitmap to WebFrame::createSelectionSnapshot. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createSelectionSnapshot): |
| Moved from FindController's getFindIndicatorBitmap. |
| Now returns a ShareableBitmap instead of going ahead and making a Handle. |
| |
| * WebProcess/WebPage/WebFrame.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::scanForDataDetectedItems): |
| (WebKit::textIndicatorForRange): |
| Temporarily change the selection to the given range, then use |
| TextIndicator::indicatorWithSelectionInFrame to acquire a TextIndicator, |
| then reset the selection. |
| |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Create a TextIndicator from the data detected range. |
| |
| 2014-11-04 Andy Estes <aestes@apple.com> |
| |
| Fix the iOS build after r175549. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::performActionOnElement): |
| |
| 2014-11-04 Darin Adler <darin@apple.com> |
| |
| Eliminate ResourceBuffer and use SharedBuffer directly instead |
| https://bugs.webkit.org/show_bug.cgi?id=138174 |
| |
| Reviewed by Antti Koivisto. |
| |
| * CMakeLists.txt: Removed WebResourceBuffer.cpp. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::sendBuffer): Use a reference instead of pointer. |
| * NetworkProcess/NetworkResourceLoader.h: Ditto. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.h: Ditto. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.mm: |
| (WebKit::NetworkDiskCacheMonitor::resourceBecameFileBacked): Ditto. |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: |
| (WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer): Ditto. |
| |
| * Shared/WebResourceBuffer.cpp: Removed. |
| * Shared/WebResourceBuffer.h: Removed. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed WebResourceBuffer.cpp/h. |
| |
| * WebProcess/Network/NetworkProcessConnection.cpp: Removed unneeded includes. |
| (WebKit::NetworkProcessConnection::didCacheResource): Use a reference instead |
| of a pointer. |
| |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: Removed unneeded include. |
| * WebProcess/Network/WebResourceLoader.cpp: Ditto. |
| * WebProcess/Network/WebResourceLoader.h: Ditto. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Ditto. |
| (WebKit::WebFrameLoaderClient::finishedLoading): Use SharedBuffer directly. |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::source): Ditto. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): Refactored to make the relationship |
| between the buffer and the DataReference clearer and to avoid having a long-lived |
| DataReference pointing to an underlying buffer with unclear lifetime. |
| (WebKit::WebPage::getContentsAsString): Ditto. |
| (WebKit::WebPage::getSelectionAsWebArchiveData): Ditto. |
| (WebKit::WebPage::getMainResourceDataOfFrame): Ditto. Also use SharedBuffer directly. |
| (WebKit::WebPage::getResourceDataFromFrame): Ditto. |
| (WebKit::WebPage::getWebArchiveOfFrame): Ditto. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::containingLinkElement): Use elementLineage. |
| (WebKit::WebPage::performActionOnElement): Use references and SharedBuffer. |
| ALso did a bit of other cleanup in here. |
| (WebKit::isAssistableElement): Take Element& instead of Node*, since that's what |
| the caller has. |
| (WebKit::nextAssistableElement): Changed name to match what the function does. |
| Added an obviously-missing check on the startNode argument. Updated for change |
| to isAssistableElement above. Take a Page& instead of a Page*. |
| (WebKit::hasAssistableElement): Changed name to match what the function does. |
| Updated for change to nextAssistableElement above. Took out incorrect comparison |
| of a C++ pointer to the Objective-C object pointer nil. Take a Page& instead of a Page*. |
| (WebKit::WebPage::focusNextAssistedNode): Updated for above changes. |
| (WebKit::WebPage::getAssistedNodeInformation): Updated for above changes. |
| |
| 2014-11-04 Tim Horton <timothy_horton@apple.com> |
| |
| Dictionary lookup panel pops up at random when clicking on selected text |
| https://bugs.webkit.org/show_bug.cgi?id=138353 |
| <rdar://problem/18861406> |
| |
| * WebProcess/WebPage/WebPage.h: |
| Fix the build; this needs to be public. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::rangeForDictionaryLookupAtHitTestResult): |
| Use the right selection (the one we just tested) in the change from r175517. |
| |
| 2014-11-04 Tim Horton <timothy_horton@apple.com> |
| |
| Dictionary lookup panel pops up at random when clicking on selected text |
| https://bugs.webkit.org/show_bug.cgi?id=138353 |
| <rdar://problem/18861406> |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::rangeForDictionaryLookupForSelection): |
| (WebKit::rangeForDictionaryLookupAtHitTestResult): |
| Factor rangeForDictionaryLookupForSelection out of performDictionaryLookupForSelection. |
| |
| Make use of rangeForDictionaryLookupForSelection in rangeForDictionaryLookupAtHitTestResult, |
| returning the selection-based range if the hit test intersects the selected text. |
| Previously, we were just going forward with performDictionaryLookupForSelection, |
| which would actually *do* the lookup, even if we just wanted to retrieve the range. |
| |
| Make rangeForDictionaryLookup* static. |
| |
| (WebKit::WebPage::performDictionaryLookupForSelection): |
| Make use of rangeForDictionaryLookupForSelection. |
| |
| 2014-11-03 Chris Dumez <cdumez@apple.com> |
| |
| Allow implicit conversion from Ref<T> to T& |
| https://bugs.webkit.org/show_bug.cgi?id=138331 |
| |
| Reviewed by Andreas Kling. |
| |
| Remove unnecessary calls to Ref<T>::get() now that a Ref<T> can be |
| converted implicitly to a T&. |
| |
| 2014-11-03 Simon Fraser <simon.fraser@apple.com> |
| |
| Expose visibleDebugOverlayRegions pref via the WK2 C SPI |
| https://bugs.webkit.org/show_bug.cgi?id=138342 |
| |
| Reviewed by Dan Bernstein. |
| |
| Expose WKDebugOverlayRegions via the C SPI. |
| |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetVisibleDebugOverlayRegions): |
| (WKPreferencesGetVisibleDebugOverlayRegions): |
| * UIProcess/API/C/WKPreferencesRef.h: |
| |
| 2014-11-03 Beth Dakin <bdakin@apple.com> |
| |
| Implement action menus for editable text with spelling suggestions |
| https://bugs.webkit.org/show_bug.cgi?id=138333 |
| -and corresponding- |
| rdar://problem/18742371 |
| |
| Reviewed by Tim Horton. |
| |
| New types. |
| * Shared/API/c/WKActionMenuItemTypes.h: |
| * Shared/API/c/WKActionMenuTypes.h: |
| |
| ActionMenuHitTestResult now stores the String result of the lookup. |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| |
| Make getGuessesForWord() public so we can call it from WKActionMenuController. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| Select the text for all types of text menus. |
| (-[WKActionMenuController isMenuForTextContent]): |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| |
| Spelling suggestions are presented in a sub-menu and will replace the selection |
| when chosen. |
| (-[WKActionMenuController _defaultMenuItemsForEditableTextWithSuggestions:]): |
| (-[WKActionMenuController _changeSelectionToSuggestion:]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (-[WKActionMenuController _defaultMenuItems:]): |
| |
| New function to store the lookupText as a String on the ActionMenuHitTestResult. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::lookupTextAtLocation): |
| |
| 2014-11-03 Simon Fraser <simon.fraser@apple.com> |
| |
| Add page overlays that show regions with mouseWheel event handlers, and the non-fast-scrollable region, and code to toggle them in MiniBrowser WK2 |
| https://bugs.webkit.org/show_bug.cgi?id=138257 |
| |
| Reviewed by Tim Horton. |
| |
| Add private prefs to control visibility of debug-related page region overlays. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/Cocoa/WKPreferences.mm: |
| (-[WKPreferences _visibleDebugOverlayRegions]): |
| (-[WKPreferences _setVisibleDebugOverlayRegions:]): |
| * UIProcess/API/Cocoa/WKPreferencesPrivate.h: |
| * UIProcess/mac/WebPreferencesMac.mm: |
| (WebKit::setDebugUInt32ValueIfInUserDefaults): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::updatePreferences): Update the overlays. |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::updatePreferences): Update the overlays. |
| |
| 2014-11-03 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r175406, r175413, and r175423. |
| https://bugs.webkit.org/show_bug.cgi?id=138327 |
| |
| Multipart tests are still broken (Requested by ap on #webkit). |
| |
| Reverted changesets: |
| |
| "Eliminate ResourceBuffer and use SharedBuffer directly |
| instead" |
| https://bugs.webkit.org/show_bug.cgi?id=138174 |
| http://trac.webkit.org/changeset/175406 |
| |
| "Unreviewed, iOS build fix since 175406." |
| http://trac.webkit.org/changeset/175413 |
| |
| "Fix assertion in CachedResource::addDataBuffer" |
| http://trac.webkit.org/changeset/175423 |
| |
| 2014-11-03 Tim Horton <timothy_horton@apple.com> |
| |
| _actionMenuItemsForHitTestResult is given kWKActionMenuLink but an empty array of defaultMenuItems |
| https://bugs.webkit.org/show_bug.cgi?id=138321 |
| <rdar://problem/18855134> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| (-[WKActionMenuController _defaultMenuItems:]): |
| Move the HTTP-family-URLs-only condition to the place where we decide what kind of menu to |
| show. We depend on _defaultMenuItemsForLink returning the link menu, and should never |
| set the link menu type if we aren't going to build a link menu. |
| |
| 2014-11-03 Tim Horton <timothy_horton@apple.com> |
| |
| Use FrameSnapshotting functions in FindController::getFindIndicatorBitmap |
| https://bugs.webkit.org/show_bug.cgi?id=138300 |
| <rdar://problem/18855863> |
| |
| Reviewed by Simon Fraser. |
| |
| Share more code by using WebCore's FrameSnapshotting::snapshotSelection |
| in FindController instead of copying it into FindController wholesale. |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::getFindIndicatorBitmap): |
| Make getFindIndicatorBitmap static, rename it from getFindIndicatorBitmapAndRect, |
| and drop the rect argument because only one caller wanted it, and we no longer need |
| to compute it (this happens in WebCore now). |
| |
| Use snapshotSelection; all of the removed paint behaviors get added by |
| code in or underneath snapshotSelection now. |
| |
| Draw the snapshot into our ShareableBitmap; we could avoid this in a future patch |
| by refactoring the FrameSnapshotting functions to take GraphicsContexts. |
| |
| (WebKit::FindController::getImageForFindMatch): |
| (WebKit::FindController::updateFindIndicator): |
| Adopt the new getFindIndicatorBitmap. |
| |
| * WebProcess/WebPage/FindController.h: |
| Remove getFindIndicatorBitmap(AndRect), which is now static. |
| |
| 2014-11-03 Csaba Osztrogonác <ossy@webkit.org> |
| |
| URTBF after r175476 to make GTK and EFL build happy. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::setTextIndicator): |
| (WebKit::PageClientImpl::setFindIndicator): Deleted. |
| * UIProcess/API/gtk/PageClientImpl.h: |
| * UIProcess/CoordinatedGraphics/WebView.cpp: |
| (WebKit::WebView::setTextIndicator): |
| (WebKit::WebView::setFindIndicator): Deleted. |
| * UIProcess/CoordinatedGraphics/WebView.h: |
| |
| 2014-11-03 Tim Horton <timothy_horton@apple.com> |
| |
| Rename FindIndicator{Window} to TextIndicator{Window} |
| https://bugs.webkit.org/show_bug.cgi?id=138302 |
| <rdar://problem/18855190> |
| |
| Reviewed by Anders Carlsson. |
| |
| Rename FindIndicator{Window} to TextIndicator{Window} (and related), |
| because it will soon be used to indicate ranges of text that are not |
| necessarily find-in-page results. |
| |
| FindController still has things named 'findIndicator' internally, |
| and I left the API alone (because all the API bits are actually find-specific), |
| but the actual FindIndicator/Window and the message to set it up, etc. are all |
| now called Text*. |
| |
| * CMakeLists.txt: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/TextIndicator.cpp: Renamed from Source/WebKit2/UIProcess/FindIndicator.cpp. |
| * UIProcess/TextIndicator.h: Renamed from Source/WebKit2/UIProcess/FindIndicator.h. |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| * UIProcess/ios/WKContentView.h: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| * UIProcess/mac/TextIndicatorWindow.h: Renamed from Source/WebKit2/UIProcess/mac/FindIndicatorWindow.h. |
| * UIProcess/mac/TextIndicatorWindow.mm: Renamed from Source/WebKit2/UIProcess/mac/FindIndicatorWindow.mm. |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/FindController.cpp: |
| |
| 2014-11-03 Beth Dakin <bdakin@apple.com> |
| |
| Implement action menus for editable text |
| https://bugs.webkit.org/show_bug.cgi?id=138284 |
| -and corresponding- |
| rdar://problem/18742323 |
| |
| Reviewed by Tim Horton. |
| |
| New item type for paste. |
| * Shared/API/c/WKActionMenuItemTypes.h: |
| |
| New menu type for editable text. |
| * Shared/API/c/WKActionMenuTypes.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| willOpenMenu should select text for both regular text menus and editable text |
| menus. |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| |
| Default items for editable text. |
| (-[WKActionMenuController _defaultMenuItemsForEditableText]): |
| (-[WKActionMenuController _paste:]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| |
| New method _hitTestResultForStage:(MenuUpdateStage)stage will figure out whether |
| we can use the WebHitTestResult from the ActionMenuHitTestResult or if we have to |
| use the potentially out-of-date WebHitTestResult that is cached on WebPageProxy. |
| An important difference between these results is that the ActionMenuHitTest |
| result, in addition to being more recent and accurate, also now includes shadow |
| content, which affects some editable regions on important sites such as |
| bugs.webkit.org and nytimes.com. |
| (-[WKActionMenuController _defaultMenuItems:]): |
| (-[WKActionMenuController _updateActionMenuItemsForStage:]): |
| (imageForResource:name::if): Deleted. |
| |
| Allow shadow content in action menu hit testing. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| (WebKit::WebPage::selectLookupTextAtLocation): |
| |
| 2014-11-03 Ada Chan <adachan@apple.com> |
| |
| Persist the page's muted state across web process crashes. |
| https://bugs.webkit.org/show_bug.cgi?id=138195 |
| |
| Reviewed by Anders Carlsson. |
| |
| Store the Page's muted state in WebPageCreationParameters so that state can be properly |
| restored after recovering from a crash in the web process. |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| Initialize m_muted. |
| (WebKit::WebPageProxy::setMuted): |
| Update m_muted. |
| (WebKit::WebPageProxy::creationParameters): |
| Set the muted data member in WebPageCreationParameters. |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Initialize the page's muted state with the muted value from WebPageCreationParameters. |
| |
| 2014-11-03 Ryuan Choi <ryuan.choi@gmail.com> |
| |
| [EFL] Remove dependency of PageViewportController from PageViewportControllerClient |
| https://bugs.webkit.org/show_bug.cgi?id=138301 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| PaeViewportControllerClient does not need to keep the instance of PageViewPortController. |
| This patch removes it to simplify relation between them. |
| In addition, uses a reference for the client of PageViewportController. |
| |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::EwkView): |
| (EwkView::setViewportPosition): |
| * UIProcess/API/efl/EwkView.h: |
| * UIProcess/CoordinatedGraphics/PageViewportController.cpp: |
| (WebKit::PageViewportController::PageViewportController): |
| (WebKit::PageViewportController::didChangeContentsSize): |
| (WebKit::PageViewportController::didRenderFrame): |
| (WebKit::PageViewportController::pageDidRequestScroll): |
| (WebKit::PageViewportController::syncVisibleContents): |
| (WebKit::PageViewportController::didChangeViewportAttributes): |
| * UIProcess/CoordinatedGraphics/PageViewportController.h: |
| * UIProcess/PageViewportControllerClient.h: |
| * UIProcess/efl/PageViewportControllerClientEfl.cpp: |
| (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl): |
| (WebKit::PageViewportControllerClientEfl::setViewportPosition): |
| (WebKit::PageViewportControllerClientEfl::setController): Deleted. |
| * UIProcess/efl/PageViewportControllerClientEfl.h: |
| |
| 2014-11-03 Sungmann Cho <sungmann.cho@navercorp.com> |
| |
| AX: Fix some minor typos related to the word "accessibility". |
| https://bugs.webkit.org/show_bug.cgi?id=138299 |
| |
| Reviewed by Chris Fleizach. |
| |
| No new tests, no behavior change. |
| |
| * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm: |
| |
| 2014-11-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(r163656): Remote inspector doesn't work unless preferences change after page initialization |
| https://bugs.webkit.org/show_bug.cgi?id=138246 |
| |
| Reviewed by Joseph Pecoraro. |
| |
| The problem is that initializeWebPage() is still using |
| pageGroup().preferences() instead of m_preferences to check if |
| developer extras are enabled to enable remote inspection of the page. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::initializeWebPage): Use m_preferences |
| instead of pageGroup().preferences(). |
| |
| 2014-11-01 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| REGRESSION(CMake): Make it possible to build without introspection |
| https://bugs.webkit.org/show_bug.cgi?id=138006 |
| |
| Reviewed by Philippe Normand. |
| |
| Do not install introspection files when introspection is disabled. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-10-31 Dan Bernstein <mitz@apple.com> |
| |
| Removed a reference to a file that’s been deleted. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed reference to XPCPtr.h. |
| |
| 2014-10-31 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Use std::unique_ptr instead of OwnPtr in CoordinatorDrawingProxy |
| https://bugs.webkit.org/show_bug.cgi?id=138238 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp: |
| (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy): Use std::make_unique. |
| (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode): |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h: Use std::unique_ptr instead of OwnPtr. |
| |
| 2014-10-31 Sam Weinig <sam@webkit.org> |
| |
| Add bundle SPI to customize the action menu |
| <rdar://problem/18830771> |
| https://bugs.webkit.org/show_bug.cgi?id=138271 |
| |
| Reviewed by Anders Carlsson. |
| |
| - Adds a new function to the WKBundlePageContextMenuClient that allows the client to pass construct |
| user data in the bundle that can be available when customizing the menu in -[WKView _actionMenuItemsForHitTestResult...]. |
| - Changes the signature of -[WKView _actionMenuItemsForHitTestResult...] to add userData. |
| - Makes the actual hit test result available in the second invocation of -[WKView _actionMenuItemsForHitTestResult...] |
| by serializing it in the ActionMenuHitTestResult. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| Adds the WebHitTestResult and the original hit test request location. |
| |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| Adds a new version of _actionMenuItemsForHitTestResult that passes userData along. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _didPerformActionMenuHitTest:userData:]): |
| (-[WKView _actionMenuItemsForHitTestResult:withType:defaultActionMenuItems:userData:]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didPerformActionMenuHitTest): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformActionMenuHitTest): |
| Pipe the user data through to the WKView. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| (-[WKActionMenuController didPerformActionMenuHitTest:userData:]): |
| (-[WKActionMenuController menuNeedsUpdate:]): |
| (-[WKActionMenuController _updateActionMenuItemsForStage:]): |
| Differentiate between the two times _updateActionMenuItems was called via a new stage parameter, |
| (it is called once in prepareForMenu, and once in menuNeedsUpdate). Use the last mouse move hit |
| test result in the prepareForMenu case (as we don't have a real result yet), and the hit result |
| passed in via didPerformActionMenuHitTest in the menuNeedsUpdate case (assuming we didn't time out) |
| waiting on the web process. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp: |
| (WebKit::InjectedBundlePageContextMenuClient::prepareForActionMenu): |
| * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Adds new bundle SPI to collect user data to pass to the -[WKView _actionMenuItemsForHitTestResult...] method. |
| |
| 2014-10-31 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Use std::unique_ptr for TypeCountSet |
| https://bugs.webkit.org/show_bug.cgi?id=138242 |
| |
| Reviewed by Andreas Kling. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::getWebCoreStatistics): Use std::unique_ptr<> instead of OwnPtr. |
| |
| 2014-10-30 Jer Noble <jer.noble@apple.com> |
| |
| [WK2] Send origin & deletion requests to WebProcessess in additon to the DatabaseProcess. |
| https://bugs.webkit.org/show_bug.cgi?id=138212 |
| |
| Reviewed by Brady Eidson. |
| |
| Now that the WebProcess has its own WebOriginDataManager, WebOriginDataManagerProxy needs to |
| send its origin and deletion messages to all the WebProcesses. This necessetates synchronizing |
| all the various process's callbacks so that the final callback is only triggered once all the |
| messaged processes reply. |
| |
| Add a simple class, CallbackSynchronizer, which will keep track of outstanding process callbacks |
| and which will trigger the final callback once all of them finish. |
| |
| * UIProcess/WebOriginDataManagerProxy.cpp: |
| (WebKit::CallbackSynchronizer::create): |
| (WebKit::CallbackSynchronizer::~CallbackSynchronizer): |
| (WebKit::CallbackSynchronizer::taskStarted): |
| (WebKit::CallbackSynchronizer::taskCompleted): |
| (WebKit::CallbackSynchronizer::CallbackSynchronizer): |
| (WebKit::createSynchronizedCallback): |
| (WebKit::sendMessageToAllProcessesInContext): |
| (WebKit::WebOriginDataManagerProxy::getOrigins): |
| (WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebOriginDataManagerProxy::deleteEntriesModifiedBetweenDates): |
| (WebKit::WebOriginDataManagerProxy::deleteAllEntries): |
| |
| Drive-by fix: check the correct enum value for WebMedia origin requests. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::getOrigins): |
| (WebKit::WebProcess::deleteEntriesForOrigin): |
| (WebKit::WebProcess::deleteEntriesModifiedBetweenDates): |
| (WebKit::WebProcess::deleteAllEntries): |
| |
| 2014-10-31 Tim Horton <timothy_horton@apple.com> |
| |
| REGRESSION (r175376): Occasional null deref when doing a dictionary lookup |
| https://bugs.webkit.org/show_bug.cgi?id=138261 |
| <rdar://problem/18841709> |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| rangeForDictionaryLookupAtHitTestResult can easily return null. |
| |
| 2014-10-31 Beth Dakin <bdakin@apple.com> |
| |
| Use system art for action menus when possible |
| https://bugs.webkit.org/show_bug.cgi?id=138260 |
| |
| Reviewed by Tim Horton. |
| |
| * Resources/AddImageToPhotosTemplate.pdf: Removed. |
| * Resources/CopyImageTemplate.pdf: Removed. |
| * Resources/SaveImageToDownloadsTemplate.pdf: Removed. |
| * Resources/ShareImageTemplate.pdf: Removed. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-10-31 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build for Yosemite systems after r175417 |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-10-31 Timothy Horton <timothy_horton@apple.com> |
| |
| Fix the build for pre-Yosemite systems after r175417 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformActionMenuHitTest): |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-10-31 Timothy Horton <timothy_horton@apple.com> |
| |
| Remove "Add to iPhoto" from the action menu's sharing menu |
| https://bugs.webkit.org/show_bug.cgi?id=138251 |
| <rdar://problem/18837197> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]): |
| Retain/autorelease the new array. |
| |
| 2014-10-31 Tim Horton <timothy_horton@apple.com> |
| |
| Remove "Add to iPhoto" from the action menu's sharing menu |
| https://bugs.webkit.org/show_bug.cgi?id=138251 |
| <rdar://problem/18837197> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]): |
| Filter out "Add to iPhoto". |
| |
| 2014-10-31 Adrian Perez de Castro <aperez@igalia.com> |
| |
| [GTK] Support script message handlers WebKitUserContentManager |
| https://bugs.webkit.org/show_bug.cgi?id=133730 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Support user script message handlers in WebKitUserContentManager. |
| This needs building with ENABLE_USER_MESSAGE_HANDLERS, for which |
| an option is added to the CMake build files. The option is disabled |
| globally by default, and the WebKitGTK port enables it. On the API |
| level, two new methods to register and unregister names are provided |
| in the "window.webkit" namespace, and on message reception the |
| "WebKitUserContentManager::script-message-received" signal is |
| emitted, using the registered names as signal detail. |
| |
| * UIProcess/API/gtk/WebKitJavascriptResult.cpp: Add a new private |
| function to construct a WebKitJavascriptResult directly from a |
| WebCore::SerializedScriptValue. |
| (_WebKitJavascriptResult::_WebKitJavascriptResult): Ditto. |
| (webkitJavascriptResultCreate): Ditto. |
| * UIProcess/API/gtk/WebKitJavascriptResultPrivate.h: Ditto. |
| * UIProcess/API/gtk/WebKitUserContentManager.cpp: |
| (webkit_user_content_manager_class_init): Install the |
| "script-message-received" signal. |
| (webkit_user_content_manager_register_script_message_handler): |
| Added. |
| (webkit_user_content_manager_unregister_script_message_handler): |
| Added. |
| * UIProcess/API/gtk/WebKitUserContentManager.h: Added the new |
| public API methods. |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto. |
| * UIProcess/API/gtk/docs/webkit2gtk.types: Add |
| webkit_user_content_manager_get_type() to the list in order to make |
| gtk-doc to generate documentation for signals. |
| |
| 2014-10-31 Martin Hock <mhock@apple.com> |
| |
| Unreviewed, iOS build fix since 175406. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::performActionOnElement): |
| |
| 2014-10-30 Darin Adler <darin@apple.com> |
| |
| Eliminate ResourceBuffer and use SharedBuffer directly instead |
| https://bugs.webkit.org/show_bug.cgi?id=138174 |
| |
| Reviewed by Antti Koivisto. |
| |
| * CMakeLists.txt: Removed WebResourceBuffer.cpp. |
| |
| * NetworkProcess/NetworkResourceLoader.cpp: |
| (WebKit::NetworkResourceLoader::sendBuffer): Use a reference instead of pointer. |
| * NetworkProcess/NetworkResourceLoader.h: Ditto. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.h: Ditto. |
| * NetworkProcess/mac/NetworkDiskCacheMonitor.mm: |
| (WebKit::NetworkDiskCacheMonitor::resourceBecameFileBacked): Ditto. |
| * NetworkProcess/mac/NetworkResourceLoaderMac.mm: |
| (WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer): Ditto. |
| |
| * Shared/WebResourceBuffer.cpp: Removed. |
| * Shared/WebResourceBuffer.h: Removed. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed WebResourceBuffer.cpp/h. |
| |
| * WebProcess/Network/NetworkProcessConnection.cpp: Removed unneeded includes. |
| (WebKit::NetworkProcessConnection::didCacheResource): Use a reference instead |
| of a pointer. |
| |
| * WebProcess/Network/WebResourceLoadScheduler.cpp: Removed unneeded include. |
| * WebProcess/Network/WebResourceLoader.cpp: Ditto. |
| * WebProcess/Network/WebResourceLoader.h: Ditto. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Ditto. |
| (WebKit::WebFrameLoaderClient::finishedLoading): Use SharedBuffer directly. |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::source): Ditto. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): Refactored to make the relationship |
| between the buffer and the DataReference clearer and to avoid having a long-lived |
| DataReference pointing to an underlying buffer with unclear lifetime. |
| (WebKit::WebPage::getContentsAsString): Ditto. |
| (WebKit::WebPage::getSelectionAsWebArchiveData): Ditto. |
| (WebKit::WebPage::getMainResourceDataOfFrame): Ditto. Also use SharedBuffer directly. |
| (WebKit::WebPage::getResourceDataFromFrame): Ditto. |
| (WebKit::WebPage::getWebArchiveOfFrame): Ditto. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::containingLinkElement): Use elementLineage. |
| (WebKit::WebPage::performActionOnElement): Use references and SharedBuffer. |
| ALso did a bit of other cleanup in here. |
| (WebKit::isAssistableElement): Take Element& instead of Node*, since that's what |
| the caller has. |
| (WebKit::nextAssistableElement): Changed name to match what the function does. |
| Added an obviously-missing check on the startNode argument. Updated for change |
| to isAssistableElement above. Take a Page& instead of a Page*. |
| (WebKit::hasAssistableElement): Changed name to match what the function does. |
| Updated for change to nextAssistableElement above. Took out incorrect comparison |
| of a C++ pointer to the Objective-C object pointer nil. Take a Page& instead of a Page*. |
| (WebKit::WebPage::focusNextAssistedNode): Updated for above changes. |
| (WebKit::WebPage::getAssistedNodeInformation): Updated for above changes. |
| |
| 2014-10-30 Jer Noble <jer.noble@apple.com> |
| |
| [EME] Add Setting for accessing storage location for MediaKeys data |
| https://bugs.webkit.org/show_bug.cgi?id=138147 |
| |
| Reviewed by Brady Eidson. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): Pass from WebMediaKeyStorageManager into Settings. |
| |
| 2014-10-30 Dana Burkart <dburkart@apple.com> |
| |
| Workaround for <rdar://problem/18830639> |
| |
| Unreviewed. |
| |
| * Shared/API/Cocoa/WKFoundation.h: |
| |
| 2014-10-30 Dana Burkart <dburkart@apple.com> |
| |
| <rdar://problem/18821260> Prepare for the mysterious future |
| |
| Reviewed by Lucas Forschler. |
| |
| * Configurations/Base.xcconfig: |
| * Configurations/DebugRelease.xcconfig: |
| * Configurations/FeatureDefines.xcconfig: |
| * Configurations/Version.xcconfig: |
| * Configurations/WebContentService.Development.xcconfig: |
| * Configurations/WebContentService.xcconfig: |
| * Configurations/WebKit.xcconfig: |
| |
| 2014-10-30 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the iOS build. |
| |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2014-10-30 Tim Horton <timothy_horton@apple.com> |
| |
| Long spins under rangeExpandedAroundPosition on Yahoo Mail |
| https://bugs.webkit.org/show_bug.cgi?id=138223 |
| <rdar://problem/18819547> |
| |
| Reviewed by Enrica Casucci. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::rangeExpandedAroundPositionByCharacters): |
| Reimplement rangeExpandedAroundPosition to operate on characters instead of lines, |
| and to use Position. Moving VisiblePositions by line can be very expensive in some cases, |
| and for generating lookup/Data Detectors context, we don't care about that kind of precision. |
| This makes this function ~1000x faster when it hits on a row in the Yahoo Mail message list. |
| |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| (WebKit::scanForDataDetectedItems): |
| Adopt the new rangeExpandedAroundPositionByCharacters, expanding 250 characters |
| before and after, which roughly matches what we were usually getting going by line, |
| and is a reasonable amount of context for these operations. |
| |
| 2014-10-30 Brady Eidson <beidson@apple.com> |
| |
| IndexedDB is deleting data when a PK is shared amongst two objectStores |
| rdar://problem/18479306 and https://bugs.webkit.org/show_bug.cgi?id=137154 |
| |
| Reviewed by Jer Noble. |
| |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp: |
| (WebKit::v1RecordsTableSchema): Store away the v1 schema for introspection into the database. |
| (WebKit::v2RecordsTableSchema): Add utility methods to get the v2 schema with different Table names. |
| (WebKit::createOrMigrateRecordsTableIfNecessary): Check to see if the Records table exists with |
| the correct schema. If it is the v1 schema, then migrate the data to a new v2 table, drop the v1 |
| table, then slide the new table into place. |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::ensureValidRecordsTable): Make sure the Records table |
| exists and is v2, and then make sure the uniqueness index exists. |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Don’t bother creating |
| the Records table here as it will have already been established earlier. |
| (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata): |
| * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h: |
| |
| 2014-10-30 Beth Dakin <bdakin@apple.com> |
| |
| Implement action menus for text |
| https://bugs.webkit.org/show_bug.cgi?id=138220 |
| -and corresponding- |
| rdar://problem/18742297 |
| |
| Reviewed by Tim Horton. |
| |
| Two new types of actions for the two text actions. |
| * Shared/API/c/WKActionMenuItemTypes.h: |
| |
| One new type of menu. |
| * Shared/API/c/WKActionMenuTypes.h: |
| |
| Pass willOpenMenu on to the WKActionMenuController. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView willOpenMenu:withEvent:]): |
| |
| Two new WebPageProxy functions that will pass messages along to the web process. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::selectLookupTextAtLocation): |
| * UIProcess/WebPageProxy.h: |
| |
| At willOpenMenu time, text menus should select text so that it is clear what the |
| menu actions will apply to. |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| Menu items for text menus. |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| (-[WKActionMenuController _defaultMenuItemsForText]): |
| (-[WKActionMenuController _copyText:]): |
| (-[WKActionMenuController _lookupText:]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (imageForResource:name::if): |
| |
| New messages to the web process. |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::performDictionaryLookupOfCurrentSelection): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| Re-factor performDictionaryLookupAtLocation() to re-use the code that finds the |
| Range for the dictionary lookup. That code now lives in |
| rangeForDictionaryLookupAtHitTestResult() and can be used by |
| performDictionaryLookupAtLocation() and our new function |
| selectLookupTextAtLocation(). |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::rangeForDictionaryLookupAtHitTestResult): |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| |
| Since the action menu text is always selected, when the lookup action is chosen, |
| we can just lookup the current selection. |
| (WebKit::WebPage::performDictionaryLookupOfCurrentSelection): |
| |
| Uses the new function rangeForDictionaryLookupAtHitTestResult() to get a lookup |
| range and then select it. |
| (WebKit::WebPage::selectLookupTextAtLocation): |
| |
| 2014-10-30 Dan Bernstein <mitz@apple.com> |
| |
| When a client certificate is rejected, Safari says the website didn’t accept the certificate “unknown” instead of naming the certificate |
| https://bugs.webkit.org/show_bug.cgi?id=138216 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Shared/cf/ArgumentCodersCF.cpp: |
| (IPC::typeFromCFTypeRef): Remove no-longer-necessary platform guards around SecIdentityRef. |
| (IPC::encode): Ditto. |
| (IPC::decode): Ditto. |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (IPC::ArgumentCoder<ResourceError>::encodePlatformData): If NSErrorClientCertificateChainKey |
| is present in the error’s userInfo dictionary, assert that it’s an array of identities and |
| certificates, and include it in the filtered dictionary. |
| |
| 2014-10-29 Hunseop Jeong <hs85.jeong@samsung.com> |
| |
| [CoordinatedGraphics] Use modern for-loops |
| https://bugs.webkit.org/show_bug.cgi?id=138168 |
| |
| Reviewed by Andreas Kling. |
| |
| No new tests as there is no change in functionality. |
| |
| * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: Use a modern for loop. |
| (WebCore::CoordinatedBackingStore::texture): |
| (WebCore::CoordinatedBackingStore::paintTilesToTextureMapper): |
| * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp: Use a modern for loop. |
| (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate): |
| * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Use a modern for loop. |
| (WebCore::CoordinatedGraphicsScene::setLayerChildrenIfNeeded): |
| (WebCore::CoordinatedGraphicsScene::createLayers): changed the name of argument to be equal with deleteLayer(). |
| (WebCore::CoordinatedGraphicsScene::deleteLayers): |
| (WebCore::CoordinatedGraphicsScene::createTilesIfNeeded): |
| (WebCore::CoordinatedGraphicsScene::removeTilesIfNeeded): |
| (WebCore::CoordinatedGraphicsScene::updateTilesIfNeeded): |
| (WebCore::CoordinatedGraphicsScene::syncUpdateAtlases): |
| (WebCore::CoordinatedGraphicsScene::syncImageBackings): |
| (WebCore::CoordinatedGraphicsScene::commitSceneState): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: Use a modern for loop. |
| (WebKit::shouldPaintBoundsRect): |
| (WebKit::CoordinatedDrawingArea::display): |
| |
| 2014-10-29 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Unreviewed, EFL build fix since r175349. |
| |
| * UIProcess/WebBackForwardList.cpp: |
| (WebKit::WebBackForwardList::didRemoveItem): Use PLATFORM(COCOA) for setSnapshot(). |
| |
| 2014-10-29 Tim Horton <timothy_horton@apple.com> |
| |
| Null deref under performActionMenuHitTestAtLocation |
| https://bugs.webkit.org/show_bug.cgi?id=138197 |
| <rdar://problem/18817803> |
| |
| Reviewed by Beth Dakin. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::scanForDataDetectedItems): |
| Null-check the expanded range. |
| |
| 2014-10-28 Ada Chan <adachan@apple.com> |
| |
| Implement WKPageSetMuted(bool). |
| https://bugs.webkit.org/show_bug.cgi?id=138158 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetMuted): |
| * UIProcess/API/C/WKPagePrivate.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setMuted): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setMuted): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2014-10-29 Anders Carlsson <andersca@apple.com> |
| |
| Clear ViewSnapshots when back/forward list items are removed from their list |
| https://bugs.webkit.org/show_bug.cgi?id=138188 |
| <rdar://problem/18817001> |
| |
| Reviewed by Tim Horton. |
| |
| Ideally we should remove the WebBackForwardListItem objects as well, but this is a somewhat safer fix. |
| |
| Change all the "remove item" codepaths to call WebBackForwardList::didRemoveItem and have it clear out the snapshot. |
| |
| * UIProcess/WebBackForwardList.cpp: |
| (WebKit::WebBackForwardList::pageClosed): |
| (WebKit::WebBackForwardList::addItem): |
| (WebKit::WebBackForwardList::removeAllItems): |
| (WebKit::WebBackForwardList::clear): |
| (WebKit::WebBackForwardList::didRemoveItem): |
| * UIProcess/WebBackForwardList.h: |
| |
| 2014-10-29 Tim Horton <timothy_horton@apple.com> |
| |
| Hide the 'Add to Photos' item if it isn't available |
| https://bugs.webkit.org/show_bug.cgi?id=138182 |
| <rdar://problem/18814999> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForImage]): |
| (-[WKActionMenuController _canAddImageToPhotos]): |
| (-[WKActionMenuController _addImageToPhotos:]): |
| Factor _canAddImageToPhotos out of _addImageToPhotos:, and use it in |
| _defaultMenuItemsForImage to avoid including the menu item in the first place. |
| |
| 2014-10-29 Tim Horton <timothy_horton@apple.com> |
| |
| Rename WebPageProxy::activeActionMenuHitTestResult to lastMouseMoveHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=138137 |
| <rdar://problem/18798257> |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::mouseDidMoveOverElement): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::lastMouseMoveHitTestResult): |
| (WebKit::WebPageProxy::activeActionMenuHitTestResult): Deleted. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| (-[WKActionMenuController _openURLFromActionMenu:]): |
| (-[WKActionMenuController _addToReadingListFromActionMenu:]): |
| (-[WKActionMenuController _quickLookURLFromActionMenu:]): |
| (-[WKActionMenuController _saveImageToDownloads:]): |
| (imageForResource:name::if): |
| (-[WKActionMenuController _updateActionMenuItems]): |
| Rename to the more accurate and general name. |
| |
| 2014-10-29 Tim Horton <timothy_horton@apple.com> |
| |
| Implement action menus for data detected items |
| https://bugs.webkit.org/show_bug.cgi?id=138178 |
| <rdar://problem/18709436> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/c/WKActionMenuTypes.h: |
| Add a new type. |
| |
| * Shared/WebHitTestResult.cpp: |
| (WebKit::WebHitTestResult::Data::Data): |
| (WebKit::WebHitTestResult::Data::encode): |
| (WebKit::WebHitTestResult::Data::decode): |
| * Shared/WebHitTestResult.h: |
| (WebKit::WebHitTestResult::isTextNode): |
| Determine, store, encode, and decode whether or not the hit node is a text node. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| * Shared/mac/ActionMenuHitTestResult.mm: Renamed from Source/WebKit2/Shared/mac/ActionMenuHitTestResult.cpp. |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| Make ActionMenuHitTestResult an Obj-C++ file. |
| Store, encode, and decode (securely!) a DDActionContext and FloatRect |
| representing the bounding box of the data detected item, if any. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| (-[WKView willOpenMenu:withEvent:]): Deleted. |
| Stop using willOpenMenu; we'll use NSMenuDelegate's menuNeedsUpdate: instead. |
| Hook up WKActionMenuController as our action menu's delegate. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| Call _updateActionMenuItems *after* we've adjusted _state, so that it |
| can depend on the value being correct. |
| |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| (-[WKActionMenuController didPerformActionMenuHitTest:]): |
| Move menu updating to menuNeedsUpdate for more accurate timing. |
| |
| (_updateActionMenuItems): |
| When building the menu, if we have a text node that is not a link, |
| and hit a data detected item, retrieve the menu from the DDActionContext. |
| If we have nothing, make sure to reset _type, and if the final hit-test |
| is still pending, build a menu with a dummy item. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): Moved to WebPageMac. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::rangeExpandedAroundPosition): |
| Factor this out of performDictionaryLookupAtLocation. |
| |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| Make use of rangeExpandedAroundPosition. |
| |
| (WebKit::scanForDataDetectedItems): |
| Expand to four lines of context around the hit point. |
| Convert that range to plain text, and feed it to DataDetectors. |
| Find the result that intersects the hit point, and make a DDActionContext |
| for it. Also, store the bounding box of the first quad of the detected |
| text, to provide to Data Detectors as a hint for UI placement. |
| |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| If the hit node is a text node, call scanForDataDetectedItems and |
| store the resultant DDActionContext and bounding rect on our |
| ActionMenuHitTestResult for transfer to the UI process. |
| |
| 2014-10-29 Joseph Pecoraro <pecoraro@apple.com> |
| |
| [iOS] iPad: Occasional <select> crashes attempting to scroll to non-existing row 0 in viewWillAppear |
| https://bugs.webkit.org/show_bug.cgi?id=138165 |
| |
| Reviewed by David Kilzer. |
| |
| This is a speculative fix for a crash attempting to scroll to a row in a |
| select picker on iPad. In these cases we are trying to scroll to the first |
| row of the first section, but no such row appears to exist. I was unable |
| to reproduce the issue, but if it is happening we should be able to protect |
| safely protect against crashing. |
| |
| * UIProcess/ios/forms/WKFormSelectPopover.mm: |
| (-[WKSelectTableViewController viewWillAppear:]): |
| Protect against trying to scroll to a section/row that does not exist |
| by pre-checking that the section/row is valid. |
| |
| 2014-10-28 Ting-Wei Lan <lantw44@gmail.com> |
| |
| Cast std::chrono::duration.count() to int64_t in ArgumentCoder |
| https://bugs.webkit.org/show_bug.cgi?id=136981 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Explicitly cast the return value of std::chrono::duration.count() to |
| a fixed-size interger type, which prevents compilation error when |
| the return value type matches neither int32_t nor int64_t. |
| |
| * Platform/IPC/ArgumentCoders.h: |
| |
| 2014-10-28 Jer Noble <jer.noble@apple.com> |
| |
| [EME] Pass location for media key storage through from WebKit/WebKit2. |
| https://bugs.webkit.org/show_bug.cgi?id=137120 |
| |
| Reviewed by Anders Carlsson. |
| |
| Allow the location for media key storage to be passed into the WebProcess from the UIProcess |
| through the WebContextConfiguraiton struct. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): Add mediaKeysStorageDirectory. |
| (WebKit::WebProcessCreationParameters::decode): Ditto. |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/C/WKContextConfigurationRef.cpp: |
| (WKContextConfigurationCopyMediaKeysStorageDirectory): Added getter. |
| (WKContextConfigurationSetMediaKeysStorageDirectory): Added setter. |
| * UIProcess/API/C/WKContextConfigurationRef.h: |
| * UIProcess/API/C/WKOriginDataManager.h: |
| * UIProcess/API/Cocoa/WKProcessPool.mm: |
| (-[WKProcessPool _initWithConfiguration:]): Provide a default location. |
| * UIProcess/APIContextConfiguration.cpp: |
| (API::ContextConfiguration::webContextConfiguration): Set mediaKeysStorageDirectory. |
| * UIProcess/APIContextConfiguration.h: |
| (API::ContextConfiguration::mediaKeysStorageDirectory): Added getter. |
| (API::ContextConfiguration::setMediaKeysStorageDirectory): Added setter. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::applyPlatformSpecificConfigurationDefaults): Apply mediaKeysStorageDirectory. |
| (WebKit::WebContext::WebContext): Initialize m_mediaKeysStorageDirectory. |
| (WebKit::WebContext::createNewWebProcess): Create a sandbox extension handle for mediaKeysStorageDirectory. |
| * UIProcess/WebContext.h: |
| * UIProcess/efl/WebContextEfl.cpp: |
| (WebKit::WebContext::platformDefaultMediaKeysStorageDirectory): Return a default location. |
| * UIProcess/gtk/WebContextGtk.cpp: |
| (WebKit::WebContext::platformDefaultMediaKeysStorageDirectory): Ditto. |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformDefaultMediaKeysStorageDirectory): Return an overridable default location. |
| * WebProcess/MediaCache/WebMediaKeyStorageManager.cpp: Added. |
| (WebKit::WebMediaKeyStorageManager::initialize): Pull the mediaKeysStorageDirectory out of configuration. |
| (WebKit::WebMediaKeyStorageManager::supplementName): Return a configuration name. |
| (WebKit::WebMediaKeyStorageManager::mediaKeyStorageDirectoryForOrigin): Return the |
| correct storage directory based on the SecureOrigin. |
| (WebKit::WebMediaKeyStorageManager::getMediaKeyOrigins): Return the origins within the |
| storage directory. |
| (WebKit::removeAllMediaKeyStorageForOriginPath): Static, remove contents and directory at path. |
| (WebKit::WebMediaKeyStorageManager::deleteMediaKeyEntriesForOrigin): Use |
| removeAllMediaKeyStorageForOriginPath to remove origin data. |
| (WebKit::WebMediaKeyStorageManager::deleteMediaKeyEntriesModifiedBetweenDates): Ditto. |
| (WebKit::WebMediaKeyStorageManager::deleteAllMediaKeyEntries): Ditto. |
| * WebProcess/MediaCache/WebMediaKeyStorageManager.h: Added. |
| (WebKit::WebMediaKeyStorageManager::WebMediaKeyStorageManager): Default constructor. |
| (WebKit::WebMediaKeyStorageManager::~WebMediaKeyStorageManager): Default virtual destructor. |
| (WebKit::WebMediaKeyStorageManager::mediaKeyStorageDirectory): Simple accessor. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): Add WebMediaKeyStorageManager as a supplement. |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): Create a sandbox extension from the sandbox extension handle. |
| |
| Add new source files to project(s). |
| |
| * PlatformEfl.cmake: |
| * PlatformGTK.cmake: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/MediaCache/WebMediaKeyStorageManager.cpp: |
| (WebKit::WebMediaKeyStorageManager::getMediaKeyOrigins): |
| (WebKit::removeAllMediaKeyStorageForOriginPath): |
| |
| Drive-by fix: references to VoidCallback are ambiguous, since the same name is re-used in multiple namespaces. |
| Make references to WebCore::VoidCallback explicit where the entire WebCore (and other) namespaces are pulled in. |
| |
| * WebProcess/Notifications/NotificationPermissionRequestManager.cpp: |
| (WebKit::NotificationPermissionRequestManager::startRequest): |
| (WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision): |
| * WebProcess/WebCoreSupport/WebNotificationClient.cpp: |
| (WebKit::WebNotificationClient::requestPermission): |
| |
| 2014-10-28 Jeremy Jones <jeremyj@apple.com> |
| |
| Add optimized fullscreen mode. |
| https://bugs.webkit.org/show_bug.cgi?id=138044 |
| |
| Reviewed by Anders Carlsson. |
| |
| Enable different types of fullscreen video behavior. |
| Add an enum parameter to enterVideoFullscreenForVideoElement for alternate types of fullscreen. |
| |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.h: Add fullscreenType parameter |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: ditto |
| * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: |
| (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): ditto |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::enterVideoFullscreenForVideoElement): ditto |
| * WebProcess/WebCoreSupport/WebChromeClient.h: ditto |
| * WebProcess/ios/WebVideoFullscreenManager.h: ditto |
| * WebProcess/ios/WebVideoFullscreenManager.mm: |
| (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): ditto |
| (WebKit::WebVideoFullscreenManager::didCleanupFullscreen): ditto |
| |
| 2014-10-28 Dan Bernstein <mitz@apple.com> |
| |
| Added a Radar reference to a comment. |
| |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (IPC::ArgumentCoder<Credential>::encodePlatformData): |
| |
| 2014-10-28 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] REGERESSION (r171801): Client certificate authentication is failing |
| https://bugs.webkit.org/show_bug.cgi?id=138144 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| NSURLCredential’s implementation of NSSecureCoding fails to encode identity-based |
| credentials properly. Work around that by encoding the identity, certificate, and |
| persistence individually. |
| |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (IPC::ArgumentCoder<Credential>::encodePlatformData): |
| (IPC::ArgumentCoder<Credential>::decodePlatformData): |
| |
| 2014-10-28 Joseph Pecoraro <pecoraro@apple.com> |
| |
| [iOS] iPhone should not allow selecting <optgroup> in <select multiple> |
| https://bugs.webkit.org/show_bug.cgi?id=137991 |
| |
| Reviewed by Darin Adler. |
| |
| We seem to be getting the delegate when we are not supposed to. |
| Workaround the issue as best we can by reseting the styles |
| for the group's content view and not changing selections. |
| |
| * UIProcess/ios/forms/WKFormSelectPicker.mm: |
| (-[WKMultipleSelectPicker pickerView:row:column:checked:]): |
| |
| 2014-10-28 Tim Horton <timothy_horton@apple.com> |
| |
| Remove an inaccurate comment in WKActionMenuController |
| https://bugs.webkit.org/show_bug.cgi?id=138135 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| The comment is wrong; the separator is there for spacing, not just as a workaround. |
| |
| 2014-10-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Update OptionsGTK.cmake and NEWS for 2.7.1 release. |
| |
| * gtk/NEWS: Add release notes for 2.7.1. |
| |
| 2014-10-28 Dan Bernstein <mitz@apple.com> |
| |
| [Mac] OS X Mavericks build broken with public SDK |
| https://bugs.webkit.org/show_bug.cgi?id=138108 |
| |
| Reviewed by Mark Rowe. |
| |
| * Shared/API/Cocoa/WKFoundation.h: Only define the NSEventModifierFlags type when using a |
| version of the OS X SDK that doesn’t define it. |
| |
| 2014-10-27 Conrad Shultz <conrad_shultz@apple.com> |
| |
| NSSharingService protocol conformance should be internal to WKActionMenuController |
| https://bugs.webkit.org/show_bug.cgi?id=138112 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| Move protocol conformance from the interface to a class extension. |
| |
| 2014-10-27 Enrica Casucci <enrica@apple.com> |
| |
| WebContent crash in WebKit::WebPage::expandedRangeFromHandle. |
| https://bugs.webkit.org/show_bug.cgi?id=138023 |
| rdar://problem/18787412 |
| |
| Reviewed by Ryosuke Niwa. |
| |
| We must change that we have a valid currentRange before trying |
| to expand or contract. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::changeBlockSelection): |
| |
| 2014-10-27 Alexey Proskuryakov <ap@apple.com> |
| |
| http/tests/cookies/third-party-cookie-relaxing.html is flaky on bots |
| https://bugs.webkit.org/show_bug.cgi?id=138098 |
| |
| Reviewed by Anders Carlsson. |
| |
| * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: |
| * WebProcess/com.apple.WebProcess.sb.in: |
| Update for the new name of testing session. Memory regions are now of the form |
| "WebKit Test-<pid>-0". |
| |
| 2014-10-27 Chris Dumez <cdumez@apple.com> |
| |
| Use separate HashMaps for common and uncommon headers in HTTPHeaderMap |
| https://bugs.webkit.org/show_bug.cgi?id=138079 |
| |
| Reviewed by Anders Carlsson. |
| |
| Update the WK2 IPC HTTPHeaderMap serialization / deserialization code |
| to leverage the fact that HTTPHeaderMap now stores common HTTP headers |
| and uncommon one in separate HashMaps. This speeds up deserialization |
| as we no longer need to call findHTTPHeaderName() for every decoded |
| header. We already know if the header is a common one or not, and if |
| it is then we already have a HTTPHeaderName type instead of a String. |
| |
| I see that we spend ~40% less time in HTTPHeaderMap decoding when |
| loading http://flickr.com/explore, while the encoding takes about |
| the same amount of time as before. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<HTTPHeaderMap>::encode): |
| (IPC::ArgumentCoder<HTTPHeaderMap>::decode): |
| |
| 2014-10-24 Benjamin Poulain <bpoulain@apple.com> |
| |
| Fix the iOS build |
| |
| * Configurations/WebKit.xcconfig: |
| |
| 2014-10-24 Beth Dakin <bdakin@apple.com> |
| |
| _actionMenuItemsForHitTestResult should also take a type indicating what the menu |
| was built for |
| https://bugs.webkit.org/show_bug.cgi?id=138063 |
| |
| Reviewed by Dan Bernstein. |
| |
| New type enum that can be used by clients. |
| * Shared/API/c/WKActionMenuTypes.h: Added. |
| |
| Remove the old SPI and add the new. |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _actionMenuItemsForHitTestResult:withType:defaultActionMenuItems:]): |
| (-[WKView _actionMenuItemsForHitTestResult:defaultActionMenuItems:]): Deleted. |
| |
| Now keep an ivar for the type. |
| * UIProcess/mac/WKActionMenuController.h: |
| |
| Create a category for the old SPI so that we can still call it if clients have |
| implemented it. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController initWithPage:view:]): |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (imageForResource:name::if): |
| (-[WKActionMenuController _updateActionMenuItems]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-10-24 Tim Horton <timothy_horton@apple.com> |
| |
| Share sheet doesn't attach to the window |
| https://bugs.webkit.org/show_bug.cgi?id=138062 |
| <rdar://problem/18767397> |
| |
| Reviewed by Beth Dakin. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| WKActionMenuController is now a NSSharingService{Picker}Delegate. |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItemsForImage]): |
| Set us up as the NSSharingServicePicker delegate. |
| |
| (-[WKActionMenuController sharingServicePicker:delegateForSharingService:]): |
| Set us up as the NSSharingService delegate. |
| |
| (-[WKActionMenuController sharingService:sourceWindowForShareItems:sharingContentScope:]): |
| Return the appropriate window to attach to. |
| |
| 2014-10-24 Jer Noble <jer.noble@apple.com> |
| |
| Abstractify WebOriginDataManager to support arbitrary ChildProcess supplements. |
| https://bugs.webkit.org/show_bug.cgi?id=137993 |
| |
| Reviewed by Brady Eidson. |
| |
| To allow different ChildProcess subclasses to handle listing and deletion of origin |
| data, make WebOriginDataManager more generic by having a supplement implement the |
| details, leaving WebOriginDataManager to deal with cross-process messaging. |
| |
| De-virtualize AsyncTask, allowing a task to be created by passing in a |
| function<void()>, rather than an object, method, and arguments. |
| |
| * Shared/AsyncTask.h: |
| (WebKit::AsyncTask::AsyncTask): |
| (WebKit::AsyncTask::performTask): |
| (WebKit::AsyncTask::~AsyncTask): Deleted. |
| |
| Add a new virtual base class, to be implemented by various ChildProcesses, which |
| WebOriginDataManager will use to implement listing and deletion requests. |
| |
| * WebProcess/OriginData/WebOriginDataManager.h: |
| * WebProcess/OriginData/WebOriginDataManagerSupplement.h: Added. |
| (WebKit::WebOriginDataManagerSupplement::WebOriginDataManagerSupplement): |
| (WebKit::WebOriginDataManagerSupplement::~WebOriginDataManagerSupplement): |
| (WebKit::WebOriginDataManagerSupplement::getOrigins): |
| (WebKit::WebOriginDataManagerSupplement::deleteEntriesForOrigin): |
| (WebKit::WebOriginDataManagerSupplement::deleteEntriesModifiedBetweenDates): |
| (WebKit::WebOriginDataManagerSupplement::deleteAllEntries): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| WebOriginDataManager doesn't need to be a ChildSupplement. Remove the DatabaseProcess- |
| specific implementations for its message handlers and replace with clean, generic calls |
| to its supplement. Because these supplements may want to respond to the request |
| asynchronously, pass a completion function in to be called by the supplement once its |
| work is complete. |
| |
| * WebProcess/OriginData/WebOriginDataManager.cpp: |
| (WebKit::WebOriginDataManager::WebOriginDataManager): |
| (WebKit::WebOriginDataManager::getOrigins): |
| (WebKit::WebOriginDataManager::deleteEntriesForOrigin): |
| (WebKit::WebOriginDataManager::deleteEntriesModifiedBetweenDates): |
| (WebKit::WebOriginDataManager::deleteAllEntries): |
| (WebKit::WebOriginDataManager::supplementName): Deleted. |
| |
| DatabaseProcess already uses WebOriginDataManager, so it will be the first process |
| to fall under the heel of the new regime. DatabaseProcess will subclass |
| WebOriginDataManagerSupplement, and pass itself in twice to the WebOriginDataManager |
| constructor. Create a lambda-based AsyncTask for each request, and call the completion |
| function when each request is complete. |
| |
| * DatabaseProcess/DatabaseProcess.cpp: |
| (WebKit::DatabaseProcess::DatabaseProcess): |
| (WebKit::DatabaseProcess::getIndexedDatabaseOrigins): |
| (WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesForOrigin): |
| (WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesModifiedBetweenDates): |
| (WebKit::DatabaseProcess::deleteAllIndexedDatabaseEntries): |
| (WebKit::DatabaseProcess::getOrigins): |
| (WebKit::DatabaseProcess::deleteEntriesForOrigin): |
| (WebKit::DatabaseProcess::deleteEntriesModifiedBetweenDates): |
| (WebKit::DatabaseProcess::deleteAllEntries): |
| (WebKit::DatabaseProcess::doGetIndexedDatabaseOrigins): Deleted. |
| (WebKit::DatabaseProcess::doDeleteIndexedDatabaseEntriesForOrigin): Deleted. |
| (WebKit::DatabaseProcess::doDeleteIndexedDatabaseEntriesModifiedBetweenDates): Deleted. |
| (WebKit::DatabaseProcess::doDeleteAllIndexedDatabaseEntries): Deleted. |
| * DatabaseProcess/DatabaseProcess.h: |
| |
| 2014-10-24 Beth Dakin <bdakin@apple.com> |
| |
| Very large images crash in action menu code |
| https://bugs.webkit.org/show_bug.cgi?id=138059 |
| -and corresponding- |
| rdar://problem/18767859 |
| |
| Reviewed by Tim Horton. |
| |
| If the HitTestResult failed to create and image, then don’t go for the image |
| action menu. |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController _defaultMenuItems]): |
| |
| ShareableBitmap::createShareable() can fail. The result needs to be null-checked. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| |
| 2014-10-24 Beth Dakin <bdakin@apple.com> |
| |
| Build fix. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-10-24 Tim Horton <timothy_horton@apple.com> |
| |
| Blindly try to fix all the builds. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-10-24 Timothy Horton <timothy_horton@apple.com> |
| |
| Blindly try to fix all the builds. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| |
| 2014-10-24 Timothy Horton <timothy_horton@apple.com> |
| |
| Blindly try to fix the 32-bit build. |
| |
| * UIProcess/mac/WKActionMenuController.h: |
| * UIProcess/mac/WKActionMenuController.mm: |
| |
| 2014-10-24 Tim Horton <timothy_horton@apple.com> |
| |
| [Mac][WebKit2] Move action menu code into its own file |
| https://bugs.webkit.org/show_bug.cgi?id=138034 |
| <rdar://problem/18758758> |
| |
| * UIProcess/mac/WKActionMenuController.mm: |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| (-[WKActionMenuController _addImageToPhotos:]): |
| Review comments that were not previously addressed. |
| |
| 2014-10-24 Tim Horton <timothy_horton@apple.com> |
| |
| [Mac][WebKit2] Move action menu code into its own file |
| https://bugs.webkit.org/show_bug.cgi?id=138034 |
| <rdar://problem/18758758> |
| |
| Reviewed by Dan Bernstein. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| Make a WKActionMenuController if needed. |
| |
| (-[WKView prepareForMenu:withEvent:]): |
| (-[WKView willOpenMenu:withEvent:]): |
| (-[WKView didCloseMenu:withEvent:]): |
| (-[WKView _didPerformActionMenuHitTest:]): |
| Forward these to WKActionMenuController. |
| |
| (-[WKView _openURLFromActionMenu:]): Deleted. |
| (-[WKView _addToReadingListFromActionMenu:]): Deleted. |
| (-[WKView _quickLookURLFromActionMenu:]): Deleted. |
| (-[WKView _createActionMenuItemForTag:]): Deleted. |
| (webKitBundleImageNamed): Deleted. |
| (-[WKView _copyImage:]): Deleted. |
| (-[WKView _saveImageToDownloads:]): Deleted. |
| (temporaryPhotosDirectoryPath): Deleted. |
| (pathToPhotoOnDisk): Deleted. |
| (-[WKView _addImageToPhotos:]): Deleted. |
| (-[WKView _defaultMenuItemsForImage]): Deleted. |
| (-[WKView _defaultMenuItems]): Deleted. |
| (-[WKView _updateActionMenu]): Deleted. |
| Moved to WKActionMenuController. |
| |
| * UIProcess/mac/WKActionMenuController.h: Added. |
| * UIProcess/mac/WKActionMenuController.mm: Added. |
| (-[WKActionMenuController initWithPage:view:]): |
| (-[WKActionMenuController prepareForMenu:withEvent:]): |
| (-[WKActionMenuController willOpenMenu:withEvent:]): |
| (-[WKActionMenuController didCloseMenu:withEvent:]): |
| (-[WKActionMenuController didPerformActionMenuHitTest:]): |
| (-[WKActionMenuController _defaultMenuItemsForLink]): |
| (-[WKActionMenuController _openURLFromActionMenu:]): |
| (-[WKActionMenuController _addToReadingListFromActionMenu:]): |
| (-[WKActionMenuController _quickLookURLFromActionMenu:]): |
| (-[WKActionMenuController _defaultMenuItemsForImage]): |
| (-[WKActionMenuController _copyImage:]): |
| (-[WKActionMenuController _saveImageToDownloads:]): |
| (temporaryPhotosDirectoryPath): |
| (pathToPhotoOnDisk): |
| (-[WKActionMenuController _addImageToPhotos:]): |
| (-[WKActionMenuController _createActionMenuItemForTag:]): |
| (webKitBundleImageNamed): |
| (imageForResource:name::if): |
| (-[WKActionMenuController _updateActionMenuItems]): |
| Moved from WKView. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-10-24 Marcos Chavarría Teijeiro <chavarria1991@gmail.com> |
| |
| [GTK] Implement is_selected method on WebKitHitTestResult |
| https://bugs.webkit.org/show_bug.cgi?id=137110 |
| |
| Reviewed by Tim Horton. |
| |
| Expose CONTEXT_SELECTION for WebKitHitTestResult. |
| |
| * Shared/WebHitTestResult.cpp: Add is_selected field and getter for this field. |
| (WebKit::WebHitTestResult::Data::Data): |
| (WebKit::WebHitTestResult::Data::encode): |
| (WebKit::WebHitTestResult::Data::decode): |
| * Shared/WebHitTestResult.h: |
| (WebKit::WebHitTestResult::isSelected): |
| * UIProcess/API/gtk/WebKitHitTestResult.cpp: Add WEBKIT_HIT_TEST_RESULT_CONTEXT_SELECTION context and method to check it. |
| (webkitHitTestResultCreate): |
| (webkitHitTestResultCompare): |
| (webkit_hit_test_result_context_is_selection): |
| * UIProcess/API/gtk/WebKitHitTestResult.h: |
| * UIProcess/API/gtk/WebKitWebView.cpp: Modify context-menu callback to set the new context option. |
| (webkitWebViewPopulateContextMenu): |
| * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add documentation about new function. |
| |
| 2014-10-23 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK][Cairo] Remove GTK dependency of WidgetBackingStoreGtkX11 |
| https://bugs.webkit.org/show_bug.cgi?id=138004 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| * UIProcess/BackingStore.h: Rename m_backingStore as m_backend, |
| since it's a bit confusing that a BackingStore class has a |
| m_backingStore member and WidgetBackingStore has been renamed as |
| BackingStoreBackendCairo. |
| * UIProcess/cairo/BackingStoreCairo.cpp: |
| (WebKit::BackingStore::createBackend): Helper function to create |
| the BackingStore backend depending on the platform. |
| (WebKit::BackingStore::paint): Use m_backend instead of m_backingStore. |
| (WebKit::BackingStore::incorporateUpdate): Ditto. |
| (WebKit::BackingStore::scroll): Ditto. |
| (WebKit::createBackingStoreForGTK): Deleted. |
| |
| 2014-10-23 Benjamin Poulain <bpoulain@apple.com> |
| |
| Fix a bad find-and-replace in r175153 |
| |
| Looks like I messed up the commit on landing. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| |
| 2014-10-23 Benjamin Poulain <bpoulain@apple.com> |
| |
| [iOS WK2] If a page has the exact same VisibleContentRect as the page before, its VisibleContentRectUpdate can be ignored |
| https://bugs.webkit.org/show_bug.cgi?id=138031 |
| rdar://problem/18739335 |
| |
| Reviewed by Simon Fraser. |
| |
| Since any VisibleContentRectUpdate is costly for the WebProcess, we avoid sending updates |
| if none of the important parameters have changed (scale and geometry). |
| |
| One unintended side effect is that the update of a page can be blocked if the parameters |
| of the previous page were identical. |
| |
| What happen is this: |
| 1) Page [A] sends its content rect update as needed. WebPageProxy saves the last update |
| in m_lastVisibleContentRectUpdate and use that value to avoid useless updates. |
| 2) Page [B] load after page [A] and have the exact VisibleContentRect. When receiving the first |
| layer tree commit after didCommitLoadForFrame, WKWebView sends its VisibleContentRect |
| to WebPageProxy to synchronize the state of the WebProcess with what is on screen. |
| 3) Since the two VisibleContentRect update has the same value as the ones of page [A], WebPageProxy |
| discards the update. The WebProcess has its initialization viewport and is not udpated until |
| a major parameter changes (scale or position). |
| |
| In rdar://problem/18739335, the problem is the similar but with a different failure point: |
| 1) Everything above happened already. |
| 2) The layer tree transaction has a scrolling request. This is processed by WKWebView. |
| 3) Since the scrolling position is invalid, the request is ignored and we send the last |
| VisibleContentRect to the WebProcess with WebPageProxy::resendLastVisibleContentRects(). |
| 4) Since the VisibleContentRect was never updated after didCommitLoadForFrame, the one we send |
| is for the previous page, which the web process correctly ignores. |
| |
| This patch solves the problem by nuking the cached m_lastVisibleContentRectUpdate before |
| any valid VisibleContentRectUpdate for a new page. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/ios/WebPageProxyIOS.mm: |
| (WebKit::WebPageProxy::didCommitLayerTree): |
| |
| 2014-10-23 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Provide a way to have alternate inspector agents |
| https://bugs.webkit.org/show_bug.cgi?id=137901 |
| |
| Reviewed by Brian Burg. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2014-10-23 Tim Horton <timothy_horton@apple.com> |
| |
| Add some SPI headers for NSExtension and NSSharingService{Picker} |
| https://bugs.webkit.org/show_bug.cgi?id=138027 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/mac/ServicesController.mm: |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| Replace redefinitions with SPI header #imports. |
| |
| 2014-10-23 Benjamin Poulain <bpoulain@apple.com> |
| |
| [iOS WK2] Make sure any dynamic viewport update schedules a layer tree commit |
| https://bugs.webkit.org/show_bug.cgi?id=138021 |
| |
| Reviewed by Simon Fraser. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::dynamicViewportSizeUpdate): |
| Sometimes, the clients can do a dynamic viewport update but only change the minimum |
| layout size (see rdar://problem/18755250). |
| |
| When that happens, it is possible to do the full state update without ever scheduling |
| a layer tree commit. For example, if the new minimum layout height is only a few pixels |
| smaller than the old value and the layout of the page is equal or larger than the old value, |
| the layout is done without any side effect to the content (assuming a viewport configuration |
| based on width). |
| |
| The contract with the client is that the next layer tree commit after a dynamic viewport update |
| carries all the valid parameters for the new viewport size. Since the new layout never scheduled |
| a layer tree commit, the UIProcess is just waiting for one, discarding all input. |
| |
| This patch solves the issue by explicitely scheduling a layer flush after updating all the layout |
| and view parameters to their final values. In most cases, this makes no difference since a layer |
| tree commit was already scheduled. In the rare cases where nothing was scheduled, scheduling |
| the layer tree commit ensure we unlock the UIProcess. |
| |
| 2014-10-23 Ryosuke Niwa <rniwa@webkit.org> |
| |
| WebContent crash in WebKit::WebPage::expandedRangeFromHandle |
| https://bugs.webkit.org/show_bug.cgi?id=138023 |
| |
| Reviewed by Enrica Casucci. |
| |
| The crashes are caused by rangeForBlockAtPoint returning a null Range. |
| Exit early or continue if a range is null in various places. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::expandedRangeFromHandle): Continue looking for another point if the range returned by |
| rangeForBlockAtPoint is null. |
| (WebKit::WebPage::contractedRangeFromHandle): Ditto. |
| (WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle): Removed the FIXME now that Enrica has |
| verified that this early exit added in r173788 is correct. |
| |
| 2014-10-23 Joseph Pecoraro <pecoraro@apple.com> |
| |
| [iOS] iPhone unselecting items in <select multiple> shows incorrect values selected |
| https://bugs.webkit.org/show_bug.cgi?id=137989 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * UIProcess/ios/forms/WKFormSelectPicker.mm: |
| (-[WKMultipleSelectPicker pickerView:row:column:checked:]): |
| The second argument is "allowsMultipleSelection" and should only be set |
| when we are making a selection in a <select multiple>. |
| |
| 2014-10-23 Tim Horton <timothy_horton@apple.com> |
| |
| Assertion failures in ImageKit soft linking |
| https://bugs.webkit.org/show_bug.cgi?id=138009 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/mac/WKView.mm: |
| Soft-link ImageKit correctly. |
| ImageKit is inside the Quartz umbrella framework. |
| |
| 2014-10-23 Daniel Bates <dabates@apple.com> |
| |
| [iOS] Fix the build after <http://trac.webkit.org/changeset/175079> |
| (https://bugs.webkit.org/show_bug.cgi?id=137995) |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| Remove PageClientImpl::didPerformActionMenuHitTest() for iOS. |
| |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| (WebKit::PageClientImpl::didPerformActionMenuHitTest): Deleted. |
| |
| 2014-10-23 Krzysztof Czech <k.czech@samsung.com> |
| |
| [EFL] Fix build problem after r175098 |
| https://bugs.webkit.org/show_bug.cgi?id=138002 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Add ECORE_X dependency to avoid linking problems while building unit tests. |
| |
| * PlatformEfl.cmake: |
| |
| 2014-10-23 Krzysztof Czech <k.czech@samsung.com> |
| |
| [EFL] Set proper default value for WebPageAccessibilityObject |
| https://bugs.webkit.org/show_bug.cgi?id=137951 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| Initial value for WebPageAccessibilityObject should be nullptr. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| |
| 2014-10-23 Krzysztof Czech <k.czech@samsung.com> |
| |
| [EFL] Introduce EFL Accessibility in WebKit |
| https://bugs.webkit.org/show_bug.cgi?id=137819 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| EFL Accessibility provides an API that is used to notify clients that certain |
| Accessibility events occur. Utilizing it makes WebKit-EFL coherent with EFL native |
| accessibility approach. |
| |
| * PlatformEfl.cmake: |
| * UIProcess/API/efl/EwkView.cpp: |
| (EwkView::EwkView): |
| * UIProcess/API/efl/EwkView.h: |
| (EwkView::webAccessibility): |
| * UIProcess/API/efl/WebAccessibility.cpp: Added. |
| (WebKit::WebAccessibility::WebAccessibility): |
| (WebKit::WebAccessibility::~WebAccessibility): |
| (WebKit::WebAccessibility::eventHandler): |
| (WebKit::WebAccessibility::executeGestureAction): |
| (WebKit::WebAccessibility::activate): |
| (WebKit::WebAccessibility::read): |
| (WebKit::WebAccessibility::readNext): |
| (WebKit::WebAccessibility::readPrev): |
| (WebKit::WebAccessibility::up): |
| (WebKit::WebAccessibility::down): |
| (WebKit::WebAccessibility::scroll): |
| (WebKit::WebAccessibility::mouse): |
| (WebKit::WebAccessibility::enable): |
| (WebKit::WebAccessibility::disable): |
| * UIProcess/API/efl/WebAccessibility.h: Added. |
| (WebKit::WebAccessibility::activateAction): |
| (WebKit::WebAccessibility::nextAction): |
| (WebKit::WebAccessibility::prevAction): |
| (WebKit::WebAccessibility::readAction): |
| * UIProcess/API/efl/ewk_view.cpp: |
| (ewk_view_accessibility_action_activate_get): |
| (ewk_view_accessibility_action_next_get): |
| (ewk_view_accessibility_action_prev_get): |
| (ewk_view_accessibility_action_read_by_point_get): |
| * UIProcess/API/efl/ewk_view.h: |
| * UIProcess/API/efl/tests/test_ewk2_accessibility.cpp: Added. |
| (EWK2Accessibility::xwindow): |
| (TEST_F): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/efl/WebPageProxyEfl.cpp: |
| (WebKit::WebPageProxy::accessibilityObjectReadByPoint): |
| (WebKit::WebPageProxy::accessibilityObjectReadPrevious): |
| (WebKit::WebPageProxy::accessibilityObjectReadNext): |
| |
| 2014-10-22 Benjamin Poulain <bpoulain@apple.com> |
| |
| [iOS WK2] Protect WKWebView dynamic viewport change against empty sizes |
| https://bugs.webkit.org/show_bug.cgi?id=137988 |
| rdar://problem/17785162 |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/API/Cocoa/WKWebView.mm: |
| (-[WKWebView _beginAnimatedResizeWithUpdates:]): |
| The algorithm behind dynamic size update finds the best content area to put in the viewport |
| after a viewport change. If an initial size or a target size is empty, it is impossible to |
| compute a reasonable area to keep in the view. We end up handling NaN scales |
| and/or sizes and CoreAnimation raises an exception when applying that value. |
| |
| This patch add early exits when that occurs and fallback to the common code. |
| |
| On Input, things are easy. If any of the initial values is empty, we just execute the updateBlock |
| without attempting any of the dynamic behaviors. |
| |
| For the target values, things are trickier. We do not know what the values are going to be before we execute |
| the block. But once we executed the block, we have already skipped all the setters that call the web process. |
| |
| To handle that, every value is set manually on WebPageProxy. This is a bit unfortunate because the setters |
| get yet another entry point. |
| |
| 2014-10-22 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| EFL and GTK ports have broken since r175075 |
| https://bugs.webkit.org/show_bug.cgi?id=137995 |
| |
| Unreviewed, EFL and GTK ports build fix. |
| |
| Need to use PLATFORM(MAC) guard for ActionMenuHitTest functions. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::removeNavigationGestureSnapshot): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2014-10-22 Tim Horton <timothy_horton@apple.com> |
| |
| Add action menu support for images |
| https://bugs.webkit.org/show_bug.cgi?id=137987 |
| <rdar://problem/18717767> |
| |
| Reviewed by Anders Carlsson, Sam Weinig, and Beth Dakin. |
| |
| * Resources/AddImageToPhotos.pdf: Added. |
| * Resources/CopyImage.pdf: Added. |
| * Resources/SaveImageToDownloads.pdf: Added. |
| * Resources/ShareImage.pdf: Added. |
| Add some temporary artwork. |
| |
| * Scripts/webkit/messages.py: |
| (struct_or_class): |
| ActionMenuHitTestResult is a struct. |
| |
| * Shared/API/c/WKActionMenuItemTypes.h: |
| Add new items for image menus. |
| |
| * Shared/mac/ActionMenuHitTestResult.cpp: |
| (WebKit::ActionMenuHitTestResult::encode): |
| (WebKit::ActionMenuHitTestResult::decode): |
| For now, pass the hit image data across to the UI process as a ShareableBitmap. |
| |
| * Shared/mac/ActionMenuHitTestResult.h: |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _createActionMenuItemForTag:]): |
| Refactor action menu item creation into a single function, so that |
| callers can share code and be much simpler. |
| |
| (webKitBundleImageNamed): |
| Add a helper to acquire an image from the WebKit2 bundle. |
| |
| (-[WKView _copyImage:]): |
| (-[WKView _saveImageToDownloads:]): |
| (temporaryPhotosDirectoryPath): |
| (pathToPhotoOnDisk): |
| (-[WKView _addImageToPhotos:]): |
| Add rudimentary implementations of image actions. |
| |
| (-[WKView _defaultMenuItemsForImage]): |
| Support the image menu, plus a submenu acquired from NSSharingServicePicker |
| for the Share menu. |
| |
| (-[WKView _defaultMenuItems]): |
| Call _defaultMenuItemsForImage if needed. |
| |
| (-[WKView _updateActionMenu]): |
| Refactor _updateActionMenu out of prepareForMenu:withEvent:. |
| |
| (-[WKView prepareForMenu:withEvent:]): |
| Ask the Web process to re-hit-test under the location that the menu |
| will appear. Mark the menu as pending. |
| |
| (-[WKView _didPerformActionMenuHitTest:]): |
| When we get the hit test reply, record the result for future use. |
| |
| (-[WKView willOpenMenu:withEvent:]): |
| If we got a hit test reply, rebuild the menu immediately. If not, wait |
| up to 500ms for the reply to come in. This eventually needs to be |
| cancellable if the menu is rejected in the interim. |
| |
| (-[WKView didCloseMenu:withEvent:]): |
| Clear all state when the menu closes. |
| |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::performActionMenuHitTestAtLocation): |
| (WebKit::WebPageProxy::didPerformActionMenuHitTest): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/PageClientImpl.h: |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformActionMenuHitTest): |
| * UIProcess/ios/PageClientImplIOS.h: |
| * UIProcess/ios/PageClientImplIOS.mm: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| Plumb didPerformActionMenuHitTest back from WebPageProxy to WKView. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::performActionMenuHitTestAtLocation): |
| Hit test at the given location, recording the image data if there is any, |
| and return the result to the UI process. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add the PDFs. |
| |
| 2014-10-22 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Remove WidgetBackingStoreCairo::create() factory function |
| https://bugs.webkit.org/show_bug.cgi?id=137943 |
| |
| Reviewed by Darin Adler. |
| |
| WidgetBackingStoreCairo::create() can be replaced by std::make_unique<>. |
| Thus this patch removes it, then use std::make_unique<>|std::unique_ptr<>. |
| |
| * UIProcess/BackingStore.h: |
| * UIProcess/cairo/BackingStoreCairo.cpp: |
| (WebKit::createBackingStoreForGTK): |
| (WebKit::BackingStore::incorporateUpdate): |
| |
| 2014-10-22 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| Remove TextCheckerEnchant::create() factory function |
| https://bugs.webkit.org/show_bug.cgi?id=137944 |
| |
| Reviewed by Darin Adler. |
| |
| TextCheckerEnchant::create() can be replaced by std::make_unique<> and std::unique_ptr<>. |
| |
| * UIProcess/API/gtk/WebKitTextChecker.cpp: |
| (WebKitTextChecker::WebKitTextChecker): |
| * UIProcess/API/gtk/WebKitTextChecker.h: |
| * UIProcess/efl/TextCheckerClientEfl.cpp: |
| (TextCheckerClientEfl::TextCheckerClientEfl): |
| * UIProcess/efl/TextCheckerClientEfl.h: |
| |
| 2014-10-22 Antti Koivisto <antti@apple.com> |
| |
| Revert fix for REGRESSION (r173356): Safari can't install a profile, gets 'Download Failed error |
| (https://bugs.webkit.org/show_bug.cgi?id=137493) |
| |
| Turns out the root cause was a bug in MIME type sniffing, https://bugs.webkit.org/show_bug.cgi?id=137855 |
| |
| Remove the workaround. |
| |
| * Shared/Downloads/ios/DownloadIOS.mm: |
| (WebKit::Download::startWithHandle): |
| * Shared/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::startWithHandle): |
| |
| 2014-10-22 Beth Dakin <bdakin@apple.com> |
| |
| Remove action menu web preference |
| https://bugs.webkit.org/show_bug.cgi?id=137975 |
| |
| Reviewed by Tim Horton. |
| |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetActionMenuSupportEnabled): Deleted. |
| (WKPreferencesGetActionMenuSupportEnabled): Deleted. |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| 2014-10-22 Chris Dumez <cdumez@apple.com> |
| |
| [Mac][WK2] Fix applicationIsSafari() detection |
| https://bugs.webkit.org/show_bug.cgi?id=137893 |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Provide an implementation for FrameLoaderClient's new |
| needsQuickLookResourceCachingQuirks(), which accesses the flag stored |
| on the WebProcess, which is initialized upon WebProcess creation. |
| |
| QuickLookMac::computeNeedsQuickLookResourceCachingQuirks() is called |
| on UIProcess side so that it works reliably and the flag is passed as |
| parameter when constructing the WebProcess. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::needsQuickLookResourceCachingQuirks): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::needsQuickLookResourceCachingQuirks): |
| * WebProcess/cocoa/WebProcessCocoa.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-10-22 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix GTK+ debug build after r175046. |
| |
| Remove invalid ASSERT. |
| |
| * UIProcess/gtk/InputMethodFilter.cpp: |
| (WebKit::InputMethodFilter::setCursorRect): |
| |
| 2014-10-22 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Move GtkInputMethodFilter from Platform to WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=137884 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| Merge WebViewBaseInputMethodFilter and GtkInputMethodFilter into a |
| single class InputMethodFilter. The code is mostly the same, but |
| instead of having a setWebView method only to get the WebPageProxy, |
| it has a setPage method that passes the WebPageProxy. The GtkIMContext |
| client window is set by the WebView when it's realized/unrealized. |
| |
| * PlatformGTK.cmake: |
| * Shared/NativeWebKeyboardEvent.h: |
| * Shared/gtk/NativeWebKeyboardEventGtk.cpp: |
| (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseRealize): |
| (webkitWebViewBaseUnrealize): |
| (webkit_web_view_base_class_init): |
| (webkitWebViewBaseCreateWebPage): |
| (webkitWebViewBaseEnterFullScreen): Deleted. |
| * UIProcess/API/gtk/WebViewBaseInputMethodFilter.cpp: Removed. |
| * UIProcess/API/gtk/WebViewBaseInputMethodFilter.h: Removed. |
| * UIProcess/gtk/InputMethodFilter.cpp: Added. |
| (WebKit::InputMethodFilter::handleCommitCallback): |
| (WebKit::InputMethodFilter::handlePreeditStartCallback): |
| (WebKit::InputMethodFilter::handlePreeditChangedCallback): |
| (WebKit::InputMethodFilter::handlePreeditEndCallback): |
| (WebKit::InputMethodFilter::InputMethodFilter): |
| (WebKit::InputMethodFilter::~InputMethodFilter): |
| (WebKit::InputMethodFilter::setEnabled): |
| (WebKit::InputMethodFilter::setCursorRect): |
| (WebKit::InputMethodFilter::handleKeyboardEvent): |
| (WebKit::InputMethodFilter::handleKeyboardEventWithCompositionResults): |
| (WebKit::InputMethodFilter::filterKeyEvent): |
| (WebKit::InputMethodFilter::confirmComposition): |
| (WebKit::InputMethodFilter::updatePreedit): |
| (WebKit::InputMethodFilter::notifyFocusedIn): |
| (WebKit::InputMethodFilter::notifyFocusedOut): |
| (WebKit::InputMethodFilter::notifyMouseButtonPress): |
| (WebKit::InputMethodFilter::confirmCurrentComposition): |
| (WebKit::InputMethodFilter::cancelContextComposition): |
| (WebKit::InputMethodFilter::sendCompositionAndPreeditWithFakeKeyEvents): |
| (WebKit::InputMethodFilter::handleCommit): |
| (WebKit::InputMethodFilter::handlePreeditStart): |
| (WebKit::InputMethodFilter::handlePreeditChanged): |
| (WebKit::InputMethodFilter::handlePreeditEnd): |
| (WebKit::InputMethodFilter::logHandleKeyboardEventForTesting): |
| (WebKit::InputMethodFilter::logHandleKeyboardEventWithCompositionResultsForTesting): |
| (WebKit::InputMethodFilter::logConfirmCompositionForTesting): |
| (WebKit::InputMethodFilter::logSetPreeditForTesting): |
| * UIProcess/gtk/InputMethodFilter.h: Added. |
| (WebKit::InputMethodFilter::context): |
| (WebKit::InputMethodFilter::setPage): |
| (WebKit::InputMethodFilter::setTestingMode): |
| (WebKit::InputMethodFilter::events): |
| |
| 2014-10-21 Tim Horton <timothy_horton@apple.com> |
| |
| Quick Look preview bubble has unnecessary controls |
| https://bugs.webkit.org/show_bug.cgi?id=137940 |
| <rdar://problem/18731860> |
| |
| Reviewed by Simon Fraser. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _quickLookURLFromActionMenu:]): |
| Temporarily use more SPI to allow us to hide the preview bubble's controls. |
| |
| 2014-10-21 Jeff Miller <jeffm@apple.com> |
| |
| Remove const from WKURLRequestRef parameter to WKContextDownloadURLRequest() |
| https://bugs.webkit.org/show_bug.cgi?id=137928 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextDownloadURLRequest): |
| * UIProcess/API/C/WKContext.h: |
| |
| 2014-10-21 Anders Carlsson <andersca@apple.com> |
| |
| WKRemoteObjectCoder should handle floats |
| https://bugs.webkit.org/show_bug.cgi?id=137926 |
| <rdar://problem/18695126> |
| |
| Reviewed by Beth Dakin. |
| |
| * Shared/API/Cocoa/WKRemoteObjectCoder.mm: |
| (encodeInvocation): |
| (-[WKRemoteObjectEncoder encodeFloat:forKey:]): |
| (decodeInvocationArguments): |
| (-[WKRemoteObjectDecoder decodeFloatForKey:]): |
| |
| 2014-10-21 Jeff Miller <jeffm@apple.com> |
| |
| WKContext needs to provide an API to resume a download |
| https://bugs.webkit.org/show_bug.cgi?id=137507 |
| |
| Reviewed by Darin Adler. |
| |
| This patch adds WKContextResumeDownload(), which is only supported on the Mac, and requires the |
| resume data from WKDownloadGetResumeData(). |
| |
| We have to create a sandbox extension for the partially downloaded file in the UI process so the |
| network or web process can resume writing to it. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::resumeDownload): |
| Added, calls through to DownloadManager::resumeDownload(). |
| |
| * NetworkProcess/NetworkProcess.h: |
| Added resumeDownload(). |
| |
| * NetworkProcess/NetworkProcess.messages.in: |
| Added ResumeDownload message. |
| |
| * Shared/Downloads/Download.h: |
| Added resume(). |
| |
| * Shared/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::resumeDownload): |
| Added. The URL being downloaded is part of the opaque resumeData, so we can't specify it when the |
| Download is constructed. |
| |
| * Shared/Downloads/DownloadManager.h: |
| Added resumeDownload(). |
| |
| * Shared/Downloads/ios/DownloadIOS.mm: |
| (WebKit::Download::resume): |
| Added, not implemented on this platform. |
| |
| * Shared/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::resume): |
| Added. Consumes the sandbox extension, resumes the download, and sets m_request after the |
| NSURLDownload has been created. Note that we already have code to revoke the sandbox extension when |
| the download is finished, canceled, or fails. |
| |
| * Shared/Downloads/soup/DownloadSoup.cpp: |
| (WebKit::Download::resume): |
| Added, not implemented on this platform. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextResumeDownload): |
| Added. |
| |
| * UIProcess/API/C/WKContext.h: |
| Added WKContextResumeDownload(). |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::resumeDownload): |
| Added. Creates a sandbox extension for the existing file and includes it in the message to the |
| network or web process. |
| |
| * UIProcess/WebContext.h: |
| Added resumeDownload(). |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::resumeDownload): |
| Added, calls through to DownloadManager::resumeDownload(). |
| |
| * WebProcess/WebProcess.h: |
| Added resumeDownload(). |
| |
| * WebProcess/WebProcess.messages.in: |
| Added ResumeDownload message. |
| |
| 2014-10-20 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| Change the default TLS errors policy to WEBKIT_TLS_ERRORS_POLICY_FAIL |
| https://bugs.webkit.org/show_bug.cgi?id=137832 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Too many general-purpose browsers that really need this policy |
| are not selecting it, so let's do so for them. |
| |
| * UIProcess/API/gtk/WebKitWebContext.cpp: |
| (createDefaultWebContext): |
| |
| 2014-10-21 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [SOUP] Disable SSLv3 |
| https://bugs.webkit.org/show_bug.cgi?id=137859 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Set G_TLS_GNUTLS_PRIORITY if unset. |
| |
| * NetworkProcess/EntryPoint/unix/NetworkProcessMain.cpp: |
| (main): |
| * WebProcess/EntryPoint/unix/WebProcessMain.cpp: |
| (main): |
| |
| 2014-10-20 Chris Dumez <cdumez@apple.com> |
| |
| ResourceRequest deserialization unnecessarily calls partitionName() on encoded cache partition |
| https://bugs.webkit.org/show_bug.cgi?id=137797 |
| |
| Reviewed by Darin Adler. |
| |
| This patch adds a |needsValidation| argument to |
| ResourceRequest::setCachePartition() setter so that the caller can |
| indicate that the partition name is valid (because it was already |
| processed by partitionName() before). Use this new argument in |
| ArgumentCoder<ResourceRequest>::decode() to spent a bit less time |
| deserializing resource requests. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<ResourceRequest>::decode): |
| |
| 2014-10-20 Beth Dakin <bdakin@apple.com> |
| |
| Action menu items should have tags |
| https://bugs.webkit.org/show_bug.cgi?id=137898 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/API/c/WKActionMenuItemTypes.h: Added. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _defaultMenuItemsForLink]): |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2014-10-20 Beth Dakin <bdakin@apple.com> |
| |
| Add support for action menus |
| https://bugs.webkit.org/show_bug.cgi?id=137891 |
| rdar://problem/18451638 |
| rdar://problem/18694470 |
| |
| Reviewed by Anders Carlsson. |
| |
| Temporary artwork needed for menu item. |
| * Resources/OpenInNewWindowTemplate.pdf: Added. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| Add a preference that defaults to false for action menu support. |
| * Shared/WebPreferencesDefinitions.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetActionMenuSupportEnabled): |
| (WKPreferencesGetActionMenuSupportEnabled): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| |
| New SPI. WebKit clients can implement this method to customize the action menu. |
| * UIProcess/API/Cocoa/WKViewPrivate.h: |
| |
| Create the action menu if it is supported. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:context:configuration:webView:]): |
| |
| Methods to implement the default menu actions. |
| (-[WKView _openURLFromActionMenu:]): |
| (-[WKView _addToReadingListFromActionMenu:]): |
| (-[WKView _quickLookURLFromActionMenu:]): |
| |
| Add action menus support for links. Populate the menu at the right time. |
| (-[WKView _defaultMenuItemsForLink]): |
| (-[WKView _defaultMenuItems]): |
| (-[WKView prepareForMenu:withEvent:]): |
| (-[WKView _actionMenuItemsForHitTestResult:defaultActionMenuItems:]): |
| |
| New member variable caches the HitTestResult on mouse move. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::mouseDidMoveOverElement): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::activeActionMenuHitTestResult): |
| |
| 2014-10-20 Timothy Hatcher <timothy@apple.com> |
| |
| Web Inspector: Delay and white area when Web Inspector crashes |
| https://bugs.webkit.org/show_bug.cgi?id=137230 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::processDidCrash): Added. |
| (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage): Hook up loader client. |
| |
| 2014-10-20 Joseph Pecoraro <pecoraro@apple.com> |
| |
| Web Inspector: Generate all Inspector domains together in JavaScriptCore |
| https://bugs.webkit.org/show_bug.cgi?id=137748 |
| |
| Reviewed by Brian Burg. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-10-19 Antti Koivisto <antti@apple.com> |
| |
| Avoid unnecessary NSURLResponse construction for QuickLook on iOS |
| https://bugs.webkit.org/show_bug.cgi?id=137876 |
| |
| Reviewed by Andy Estes. |
| |
| * WebProcess/Network/WebResourceLoader.cpp: |
| (WebKit::WebResourceLoader::didReceiveResponse): |
| |
| Switch to the modified QuickLookHandle interface that does not need NSURLResponse. |
| |
| 2014-10-16 Andy Estes <aestes@apple.com> |
| |
| [iOS] Capture WKActionSheetAssistant's interaction with WKContentView in a @protocol |
| https://bugs.webkit.org/show_bug.cgi?id=137792 |
| |
| Reviewed by Tim Horton. |
| |
| WKPDFView would like to use WKActionSheetAssistant to show an action sheet when long-pressing a link, but it |
| can't so long as WKActionSheetAssistant is tightly coupled to WKContentView. Resolve this by factoring |
| WKActionSheetAssistant's interaction with WKContentView into a new protocol called |
| WKActionSheetAssistantDelegate and having WKContentView conform to this protocol. |
| |
| * UIProcess/API/Cocoa/_WKElementAction.mm: |
| (+[_WKElementAction elementActionWithTitle:actionHandler:]): Changed instances of WKContentView * to id <WKActionSheetAssistantDelegate>. |
| (+[_WKElementAction elementActionWithType:customTitle:]): Ditto. |
| (-[_WKElementAction _runActionWithElementInfo:delegate:]): Ditto. |
| (copyElement): Deleted. |
| (saveImage): Deleted. |
| (-[_WKElementAction _runActionWithElementInfo:view:]): Deleted. |
| * UIProcess/API/Cocoa/_WKElementActionInternal.h: |
| * UIProcess/ios/WKActionSheet.h: |
| * UIProcess/ios/WKActionSheet.mm: |
| (-[WKActionSheet init]): Renamed from initWithView: since WKActionSheet no longer needs to know about a view. |
| (-[WKActionSheet _didRotateAndLayout]): Called -[WKActionSheetDelegate updatePositionInformation]. |
| (-[WKActionSheet initWithView:]): Deleted. |
| * UIProcess/ios/WKActionSheetAssistant.h: |
| * UIProcess/ios/WKActionSheetAssistant.mm: |
| (-[WKActionSheetAssistant delegate]): Added a getter for the delegate property. |
| (-[WKActionSheetAssistant setDelegate:]): Added a setter for the delegate property. |
| (-[WKActionSheetAssistant initWithView:]): Changed argument type from WKContentView * to UIView *. |
| (-[WKActionSheetAssistant initialPresentationRectInHostViewForSheet]): Returned CGRectZero if there is no delegate. |
| Otherwise, retrieved positionInformation from the delegate. |
| (-[WKActionSheetAssistant presentationRectInHostViewForSheet]): Ditto. |
| (-[WKActionSheetAssistant updatePositionInformation]): Called -[WKActionSheetAssistantDelegate updatePositionInformation]. |
| (-[WKActionSheetAssistant _createSheetWithElementActions:showLinkTitle:]): Returned early if there is no delegate. |
| Otherwise, retrieved positionInformation from the delegate. |
| (-[WKActionSheetAssistant showImageSheet]): Ditto. |
| (-[WKActionSheetAssistant showLinkSheet]): Ditto. |
| (-[WKActionSheetAssistant showDataDetectorsSheet]): Ditto. |
| (-[WKActionSheetAssistant cleanupSheet]): |
| * UIProcess/ios/WKContentViewInteraction.h: |
| * UIProcess/ios/WKContentViewInteraction.mm: |
| (-[WKContentView setupInteraction]): Installed self as WKActionSheetAssistant's delegate. |
| (-[WKContentView updatePositionInformation]): Renamed from _updatePositionInformation. |
| (-[WKContentView performAction:]): Renamed from _performAction:. |
| (-[WKContentView openElementAtLocation:]): Called _attemptClickAtLocation:. |
| (-[WKContentView actionsForElement:defaultActions:]): Called API::UIClient::actionsForElement(). |
| (-[WKContentView startInteractionWithElement:]): Called WebPageProxy::startInteractionWithElementAtPosition(). |
| (-[WKContentView stopInteraction]): Called WebPageProxy::stopInteraction(). |
| (-[WKContentView _updatePositionInformation]): Deleted. |
| (-[WKContentView _performAction:]): Deleted. |
| |
| 2014-10-20 Carlos Garnacho <carlosg@gnome.org> |
| |
| [GTK] Improve zooming gesture positioning |
| https://bugs.webkit.org/show_bug.cgi?id=137822 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/gtk/GestureController.cpp: |
| (WebKit::GestureController::ZoomGesture::center): |
| (WebKit::GestureController::ZoomGesture::begin): |
| (WebKit::GestureController::ZoomGesture::handleZoom): |
| (WebKit::GestureController::ZoomGesture::scaleChanged): Calculate |
| the proper view coordinates for the current offset/scale, based |
| on the initial gesture center point in document coordinates, and |
| the current center/scale. |
| * UIProcess/gtk/GestureController.h: |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::getCenterForZoomGesture): Added. Synchronous |
| call to retrieve the zoom gesture anchor point, in document coordinates. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Added stub. |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: |
| (WebKit::WebPage::getCenterForZoomGesture): Added. Getter for the |
| translated coordinates used as the anchor point of the zoom gesture. |
| |
| 2014-10-20 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Remove the factory method from DragAndDropHandler |
| https://bugs.webkit.org/show_bug.cgi?id=137872 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| Make the constructor public and use std::make_unique instead. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseDragAndDropHandler): |
| * UIProcess/gtk/DragAndDropHandler.cpp: |
| (WebKit::DragAndDropHandler::create): Deleted. |
| * UIProcess/gtk/DragAndDropHandler.h: |
| |
| 2014-10-20 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Add initial gestures support |
| https://bugs.webkit.org/show_bug.cgi?id=137812 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| Now that GTK+ has support for gestures, we can use it to handle |
| touch events and allow to scroll, zoom and tap with the fingers. |
| |
| * PlatformGTK.cmake: Add new files to compilation. |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::doneWithTouchEvent): When the touch event |
| hasn't been handled by the web process pass it to the |
| GestureController and only fallback to pointer emulation when the |
| GestureController doesn't handle the event. |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseTouchEvent): If the GestureController is |
| currently processing gestures is because the START touch event was |
| not handled by the web process, so pass any successive touch |
| events to the GestureController directly. |
| (webkitWebViewBaseGestureController): Create the GestureController |
| on demand and return a reference. |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: |
| * UIProcess/gtk/GestureController.cpp: Added. |
| (WebKit::GestureController::create): Create a GestureController. |
| (WebKit::GestureController::GestureController): Initialize the |
| Gesture memebers. |
| (WebKit::GestureController::handleEvent): Pass the event to the gestures. |
| (WebKit::GestureController::isProcessingGestures): Whether |
| Gestures are active. |
| (WebKit::GestureController::Gesture::Gesture): Base class for gestures. |
| (WebKit::GestureController::Gesture::isActive): Whether the |
| gesture is active. |
| (WebKit::GestureController::Gesture::handleEvent): Pass the event |
| to the GtkGesture to process it. |
| (WebKit::GestureController::DragGesture::handleDrag): Send a wheel |
| event corresponding to the drag gesture to the web process. |
| (WebKit::GestureController::DragGesture::handleTap): Send move, |
| press and release events corresponding to a tap gesture to the web process. |
| (WebKit::GestureController::DragGesture::begin): Start a drag |
| gesture and schedule a timer to discard tap gesture in case of |
| long press. |
| (WebKit::GestureController::DragGesture::update): If the actual |
| drag hasn't started yet, check the drag threshold to decide |
| whether to start the drag or not. Otherwise call handleDrag() to |
| send the appropriate events to the web process. |
| (WebKit::GestureController::DragGesture::end): If the drag gesture |
| finishes and the drag didn't happen (it wasn't a long press and |
| drag threshold was not reached), call handleTap() to emulate a |
| click event. |
| (WebKit::GestureController::DragGesture::DragGesture): Initialize |
| the GtkGestureDrag. |
| (WebKit::GestureController::ZoomGesture::begin): Save the current |
| page scale factor and the center point of the gesture. |
| (WebKit::GestureController::ZoomGesture::scaleChanged): Schedule a |
| page scale change in an idle for the given scale value. |
| (WebKit::GestureController::ZoomGesture::ZoomGesture): Initialize |
| the GtkGestureZoom. |
| * UIProcess/gtk/GestureController.h: Added. |
| |
| 2014-10-19 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for all remaining RenderObject subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137845 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for all remaining RenderObject subclasses and |
| clean up the surrounding code. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::pluginProcessCrashed): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::createPlugin): |
| |
| 2014-10-19 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Move GtkDragAndDropHelper from Platform to WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=137422 |
| |
| Reviewed by Martin Robinson. |
| |
| WebKitWebViewBase is currently the only user of |
| GtkDragAndDropHelper, that was added to share the code with |
| WebKit1. Move all the drag and drop logic to a new class |
| DragAndDropHandler. |
| |
| * PlatformGTK.cmake: Add new files to compilation. |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::startDrag): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseConstructed): |
| (webkitWebViewBaseDragDataGet): |
| (webkitWebViewBaseDragEnd): |
| (webkitWebViewBaseDragDataReceived): |
| (webkitWebViewBaseDragMotion): |
| (webkitWebViewBaseDragLeave): |
| (webkitWebViewBaseDragDrop): |
| (webkitWebViewBaseDragAndDropHandler): |
| (dragExitedCallback): Deleted. |
| (webkitWebViewBaseStartDrag): Deleted. |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: |
| * UIProcess/gtk/DragAndDropHandler.cpp: Added. |
| (WebKit::DragAndDropHandler::create): |
| (WebKit::DragAndDropHandler::DragAndDropHandler): |
| (WebKit::DragAndDropHandler::DroppingContext::DroppingContext): |
| (WebKit::dragOperationToGdkDragActions): |
| (WebKit::dragOperationToSingleGdkDragAction): |
| (WebKit::gdkDragActionToDragOperation): |
| (WebKit::DragAndDropHandler::startDrag): |
| (WebKit::DragAndDropHandler::fillDragData): |
| (WebKit::DragAndDropHandler::finishDrag): |
| (WebKit::DragAndDropHandler::dataObjectForDropData): |
| (WebKit::DragAndDropHandler::dragEntered): |
| (WebKit::DragAndDropHandler::requestDragData): |
| (WebKit::DragAndDropHandler::dragMotion): |
| (WebKit::DragAndDropHandler::dragLeave): |
| (WebKit::DragAndDropHandler::drop): |
| * UIProcess/gtk/DragAndDropHandler.h: Added. |
| |
| 2014-10-18 Dan Bernstein <mitz@apple.com> |
| |
| WorkQueue dispatches functions but isn’t a FunctionDispatcher |
| https://bugs.webkit.org/show_bug.cgi?id=137853 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/WorkQueue.h: Changed to inherit from FunctionDispatcher. |
| |
| 2014-10-18 Michael Catanzaro <mcatanzaro@igalia.com> |
| |
| [GTK] Improve documentation of webkit_web_view_get_tls_info() |
| https://bugs.webkit.org/show_bug.cgi?id=137852 |
| |
| Reviewed by Martin Robinson. |
| |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| |
| 2014-10-17 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for RenderBox |
| https://bugs.webkit.org/show_bug.cgi?id=137804 |
| |
| Reviewed by Andreas Kling. |
| |
| Use is<>() / downcast<>() for RenderBox and clean up the surrounding |
| code. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::determinePrimarySnapshottedPlugIn): |
| (WebKit::WebPage::plugInIsPrimarySize): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::sendTapHighlightForNodeIfNecessary): |
| |
| 2014-10-16 Simon Fraser <simon.fraser@apple.com> |
| |
| [iOS] Turn off font autosizing for iOS WebKitTestRunner |
| https://bugs.webkit.org/show_bug.cgi?id=137806 |
| |
| Reviewed by Sam Weinig. |
| |
| Confusingly, WKPreferencesSetTextAutosizingEnabled() does nothing on iOS. |
| Instead, we have to add WKPreferencesSetMinimumZoomFontSize() and set it to 0 |
| to disable font autosizing. |
| |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetMinimumZoomFontSize): |
| (WKPreferencesGetMinimumZoomFontSize): |
| * UIProcess/API/C/WKPreferencesRefPrivate.h: |
| |
| 2014-10-17 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| [EFL] REGRESSION(r173929): It broke the Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=137522 |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| r173929 let web inspector use a separate web process. Besides it changed that the inspector is shown |
| as docking mode by default. However EFL port doesn't support to show web inspector as docking window yet. |
| This patch is to show web inspector on EFL new window as before. Docking mode should be implemented by |
| upcoming patch. |
| |
| * UIProcess/efl/WebInspectorProxyEfl.cpp: |
| (WebKit::WebInspectorProxy::platformAttach): |
| |
| 2014-10-17 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GLIB] Add API to GMainLoopSource to schedule sources after a delay in microseconds |
| https://bugs.webkit.org/show_bug.cgi?id=137782 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: |
| (WebKit::LayerTreeHostGtk::layerFlushTimerFired): Use microseconds |
| instead of milliseconds. |
| |
| 2014-10-17 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Move touch events handling from Platform to WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=137735 |
| |
| Reviewed by Sergio Villar Senin. |
| |
| GtkTouchContextHelper was only used by WebKitWebViewBase, since |
| it's the only one that can create touch events. The code has been |
| simplified by processing the events in the view, and the native |
| touch events are now created with the native event and touch points. |
| |
| * Shared/NativeWebTouchEvent.h: |
| (WebKit::NativeWebTouchEvent::touchContext): Deleted. |
| * Shared/gtk/NativeWebTouchEventGtk.cpp: |
| (WebKit::NativeWebTouchEvent::NativeWebTouchEvent): Pass touch |
| points instead of touch context to WebEventFactory::createWebTouchEvent(). |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::WebEventFactory::createWebTouchEvent): Create the |
| WebTouchEvent for the given native event and points. |
| (WebKit::touchPhaseFromEvents): Deleted. |
| (WebKit::appendTouchEvent): Deleted. |
| * Shared/gtk/WebEventFactory.h: |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (appendTouchEvent): Helper function to create a |
| WebPlatformTouchPoint for the given native event and add it to the |
| list of touch points. |
| (webkitWebViewBaseGetTouchPointForEvent): Build the touch point |
| list for the event. |
| (webkitWebViewBaseTouchEvent): Process the touch event. |
| (webkitWebViewBaseDragDataReceived): Deleted. |
| |
| 2014-10-16 Pascal Jacquemart <p.jacquemart@samsung.com> |
| |
| Removing CUSTOM_PROTOCOLS guard |
| https://bugs.webkit.org/show_bug.cgi?id=137741 |
| |
| Reviewed by Benjamin Poulain. |
| |
| * NetworkProcess/NetworkProcess.cpp: |
| (WebKit::NetworkProcess::NetworkProcess): |
| * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: |
| * Shared/Network/CustomProtocols/CustomProtocolManager.h: |
| * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h: |
| * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: |
| * Shared/Network/NetworkProcessCreationParameters.cpp: |
| (WebKit::NetworkProcessCreationParameters::encode): |
| (WebKit::NetworkProcessCreationParameters::decode): |
| * Shared/Network/NetworkProcessCreationParameters.h: |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/C/soup/WKAPICastSoup.h: |
| * UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp: |
| (WKSoupCustomProtocolRequestManagerGetTypeID): |
| (WKSoupCustomProtocolRequestManagerSetClient): |
| * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h: |
| * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in: |
| * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm: |
| * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp: |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp: |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h: |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.cpp: |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.h: |
| * UIProcess/Network/NetworkProcessProxy.cpp: |
| (WebKit::NetworkProcessProxy::NetworkProcessProxy): |
| * UIProcess/Network/NetworkProcessProxy.h: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::unregisterGlobalURLSchemeAsHavingCustomProtocolHandlers): |
| (WebKit::WebContext::unregisterSchemeForCustomProtocol): |
| * UIProcess/WebContext.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| (WebKit::WebContext::platformInitializeNetworkProcess): |
| * WebKit2Prefix.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/soup/WebKitSoupRequestGeneric.cpp: |
| (webkitSoupRequestGenericSendAsync): |
| (webkitSoupRequestGenericSendFinish): |
| * WebProcess/soup/WebKitSoupRequestGeneric.h: |
| |
| 2014-10-16 Simon Fraser <simon.fraser@apple.com> |
| |
| Crash under RemoteLayerTreeHost::getLayer() when closing a tab |
| https://bugs.webkit.org/show_bug.cgi?id=137796 |
| rdar://problem/18547565 |
| |
| Reviewed by Tim Horton. |
| |
| CA can call our animation delegate after the RemoteLayerTreeHost has been |
| destroyed. CAAnimation retains its delegate, so it's safe for us to null out |
| the WKAnimationDelegate's pointer to the RemoteLayerTreeHost when tearing down |
| the RemoteLayerTreeHost. |
| |
| * UIProcess/mac/RemoteLayerTreeHost.mm: |
| (WebKit::RemoteLayerTreeHost::~RemoteLayerTreeHost): |
| (WebKit::RemoteLayerTreeHost::animationDidEnd): |
| * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm: |
| (-[WKAnimationDelegate invalidate]): |
| (-[WKAnimationDelegate animationDidStart:]): |
| (-[WKAnimationDelegate animationDidStop:finished:]): |
| |
| 2014-10-16 Tim Horton <timothy_horton@apple.com> |
| |
| Implement selection services menu for Legacy WebKit |
| https://bugs.webkit.org/show_bug.cgi?id=137582 |
| <rdar://problem/18604241> |
| |
| Reviewed by Brady Eidson. |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (-[WKSharingServicePickerDelegate sharingService:didShareItems:]): |
| Add a note that we should transition to using replaceSelectionWithAttributedString. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::handleSelectionServiceClick): |
| Allow editor services in editable-but-not-rich-text areas, just like in WebKit1. |
| |
| 2014-10-16 Tim Horton <timothy_horton@apple.com> |
| |
| Various crashes in ViewGestureControllerIOS when closing a tab while a swipe gesture is in progress |
| https://bugs.webkit.org/show_bug.cgi?id=137770 |
| <rdar://problem/17916459> |
| |
| Reviewed by Dan Bernstein. |
| |
| When tearing down a WKWebView in the middle of a swipe gesture, a variety of |
| UI process crashes were observed. First, two uses of potentially deleted objects |
| (the WebBackForwardListItem and ViewGestureController), which were fixed by |
| extending the object's lifetime and checking for its liveness, respectively. |
| Second, a potential null-deref of DrawingArea if the timing of endSwipeGesture |
| vs. page teardown was such that DrawingArea was null but everything else was in line. |
| Lastly, another case of messaging a potentially deleted object (specifically, |
| the _UIViewControllerTransitionContext's animator) in a callback from CA, which |
| was fixed by nulling out the animator (and a few other properties) when tearing |
| down the ViewGestureController. |
| |
| * UIProcess/ios/ViewGestureControllerIOS.mm: |
| (-[WKSwipeTransitionController invalidate]): |
| Clear the soon-to-be-invalid ViewGestureController pointer. |
| |
| (WebKit::ViewGestureController::~ViewGestureController): |
| Call [WKSwipeTransitionController invalidate] upon destruction. |
| Clear our transition context's interactor and animator, and inform it that |
| the transition is not in flight. This avoids a crash when calling back |
| to the already-destroyed animator later. |
| |
| (WebKit::ViewGestureController::beginSwipeGesture): |
| Keep a reference to the target WebBackForwardListItem; this avoids |
| it being deleted between here and the transition completion block firing. |
| |
| Look up the ViewGestureController by pageID, just like we do in endSwipeGesture, |
| to avoid situations where the callback fires after the WKWebView/ViewGestureController |
| have gone away. |
| |
| Hold on to our _UIViewControllerOneToOneTransitionContext, so that we can do the |
| aforementioned clearing upon deallocation. |
| |
| (WebKit::ViewGestureController::endSwipeGesture): |
| Null check the DrawingArea. If it is null, instead of doing our normal delayed logic |
| for swipe snapshot teardown, just put things back together immediately. |
| |
| (WebKit::ViewGestureController::removeSwipeSnapshot): |
| Clear m_swipeTransitionContext. |
| |
| 2014-10-16 Antti Koivisto <antti@apple.com> |
| |
| REGRESSION (r173356): Downloading a disk image appends ".txt" to it |
| https://bugs.webkit.org/show_bug.cgi?id=137493 |
| <rdar://problem/18321947> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * Shared/Downloads/ios/DownloadIOS.mm: |
| (WebKit::Download::startWithHandle): |
| * Shared/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::startWithHandle): |
| |
| It appears that the synthesized NS/CFURLResponse fails to serialize the suggested filename correctly |
| unless it has been accessed first. |
| |
| 2014-10-15 Dan Bernstein <mitz@apple.com> |
| |
| [Cocoa] "Plug-in will handle load" error isn't declared in the modern API |
| https://bugs.webkit.org/show_bug.cgi?id=137747 |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/API/Cocoa/WKError.mm: Define _WKLegacyErrorDomain. |
| * UIProcess/API/Cocoa/WKErrorInternal.h: Changed to import WKErrorPrivate.h. |
| * UIProcess/API/Cocoa/WKErrorPrivate.h: Added. Declares _WKLegacyErrorDomain |
| and _WKLegacyErrorPlugInWillHandleLoad. |
| * WebKit2.xcodeproj/project.pbxproj: Added new private header. |
| |
| 2014-10-15 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for TransformOperation subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137731 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for TransformOperation subclasses and clean |
| up the surrounding code. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<TransformOperations>::encode): |
| |
| 2014-10-15 Alexey Proskuryakov <ap@apple.com> |
| |
| [Mac] Allow some Kerberos related paths in sandbox |
| https://bugs.webkit.org/show_bug.cgi?id=137666 |
| rdar://problem/17965010 |
| |
| Reviewed by Darin Adler. |
| |
| * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: |
| * WebProcess/com.apple.WebProcess.sb.in: |
| |
| 2014-10-15 Alexey Proskuryakov <ap@apple.com> |
| |
| [Mac] Allow plug-ins to read managed preferences |
| https://bugs.webkit.org/show_bug.cgi?id=137665 |
| <rdar://problem/18255601> |
| |
| Reviewed by Darin Adler. |
| |
| * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: |
| |
| 2014-10-14 Joonghun Park <jh718.park@samsung.com> |
| |
| [WK2][EFL] Fix the problem that threads created by a DispatchQueueEfl are not destroyed |
| even after the DispatchQueueEfl has been destructed |
| https://bugs.webkit.org/show_bug.cgi?id=137195 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Linux and Unix System's pthreads are created in joinable state by default. |
| If threads aren't destructed explicitly, it will be still live |
| until process which created the thread is dead. |
| Besides it may cause out of capacity range of thread creation in a process. |
| It is one of hidden defects. |
| This patch calls detachThread() to detach thread immediately after it is created. |
| So the thread can be destroyed as soon as the thread's ThreadContext::function() |
| returns. |
| |
| * Platform/efl/DispatchQueueEfl.cpp: |
| (DispatchQueue::ThreadContext::start): |
| |
| 2014-10-14 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for PlatformCAAnimation subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137722 |
| |
| Reviewed by Simon Fraser. |
| |
| Use is<>() / downcast<>() for PlatformCAAnimation subclasses and clean |
| up the surrounding code. |
| |
| * WebProcess/WebPage/mac/PlatformCAAnimationRemote.h: |
| * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm: |
| (WebKit::PlatformCAAnimationRemote::copy): |
| (WebKit::PlatformCAAnimationRemote::copyTimingFunctionFrom): |
| (WebKit::PlatformCAAnimationRemote::copyFromValueFrom): |
| (WebKit::PlatformCAAnimationRemote::copyToValueFrom): |
| (WebKit::PlatformCAAnimationRemote::copyValuesFrom): |
| (WebKit::PlatformCAAnimationRemote::copyKeyTimesFrom): |
| (WebKit::PlatformCAAnimationRemote::copyTimingFunctionsFrom): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::addAnimationForKey): |
| (WebKit::PlatformCALayerRemote::animationStarted): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom): |
| |
| 2014-10-14 Alexey Proskuryakov <ap@apple.com> |
| |
| REGRESSION (r165356): Issues with Japanese text input |
| https://bugs.webkit.org/show_bug.cgi?id=137719 |
| rdar://problem/18431952 |
| rdar://problem/18483741 |
| |
| Reviewed by Darin Adler. |
| |
| * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didChangeSelection): |
| In sync code path, ensure consistent message delivery order by adding |
| a DispatchMessageEvenWhenWaitingForSyncReply flag. This way, delayed |
| EditorStateChanged messages won't confuse UI process. |
| |
| 2014-10-14 Anders Carlsson <andersca@apple.com> |
| |
| Hide the find indicator when starting a swipe |
| https://bugs.webkit.org/show_bug.cgi?id=137711 |
| |
| Reviewed by Tim Horton. |
| |
| * UIProcess/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::navigationGestureDidBegin): |
| |
| 2014-10-14 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for RenderImage |
| https://bugs.webkit.org/show_bug.cgi?id=137683 |
| |
| Reviewed by Mihnea Ovidenie. |
| |
| Use is<>() / downcast<>() for RenderImage. |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::cachedImage): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::performActionOnElement): |
| |
| 2014-10-13 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK][CMake] Non-ninja build is broken since r174422 |
| https://bugs.webkit.org/show_bug.cgi?id=137656 |
| |
| Reviewed by Philippe Normand. |
| |
| Make WebKit2-forwarding-headers depend only on static, |
| non-generated sources. |
| |
| * CMakeLists.txt: |
| * PlatformGTK.cmake: |
| |
| 2014-10-13 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for PlatformCALayer subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137661 |
| |
| Reviewed by Simon Fraser. |
| |
| Use is<>() / downcast<>() for PlatformCALayer subclasses and clean up |
| the surrounding code. |
| |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: |
| (WebKit::PlatformCALayerRemote::~PlatformCALayerRemote): |
| (WebKit::PlatformCALayerRemote::updateClonedLayerProperties): |
| (WebKit::PlatformCALayerRemote::recursiveBuildTransaction): |
| (WebKit::PlatformCALayerRemote::setSublayers): |
| (WebKit::PlatformCALayerRemote::appendSublayer): |
| (WebKit::PlatformCALayerRemote::insertSublayer): |
| (WebKit::PlatformCALayerRemote::replaceSublayer): |
| (WebKit::PlatformCALayerRemote::adoptSublayers): |
| (WebKit::PlatformCALayerRemote::setMask): |
| (WebKit::PlatformCALayerRemote::copyFiltersFrom): |
| * WebProcess/WebPage/mac/PlatformCALayerRemote.h: |
| * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm: |
| (WebKit::RemoteLayerTreeContext::buildTransaction): |
| |
| 2014-10-13 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for Filter / FilterOperation subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137644 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for Filter / FilterOperation subclasses. |
| |
| * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: |
| (IPC::ArgumentCoder<WebCore::FilterOperations>::encode): |
| * Shared/WebCoreArgumentCoders.cpp: |
| (IPC::ArgumentCoder<FilterOperation>::encode): |
| * Shared/mac/RemoteLayerTreeTransaction.mm: |
| (WebKit::RemoteLayerTreeTextStream::operator<<): |
| |
| 2014-10-12 Sergio Villar Senin <svillar@igalia.com> |
| |
| [SOUP] [WK2] WebProcess and NetworkProcess initialization clears cache contents |
| https://bugs.webkit.org/show_bug.cgi?id=137489 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| Temporarily set the SoupCache's maximum size to a huge value |
| before calling soup_cache_load() so that the cache is not shrinked |
| to the default value. |
| |
| * NetworkProcess/soup/NetworkProcessSoup.cpp: |
| (WebKit::NetworkProcess::platformInitializeNetworkProcess): |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2014-10-12 Ryuan Choi <ryuan.choi@gmail.com> |
| |
| [EFL] Introduce EWebKit_Extension |
| https://bugs.webkit.org/show_bug.cgi?id=134921 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| EWebKit2 does not provide the functionality to extend WebProcess. |
| Although there is ewk_context_new_with_injected_bundle_path() in ewebkit2 APIs, |
| application developers can not make bundle object without touching WK APIs |
| which ewebkit2 does not expose. |
| |
| This patch introduces EWebKit_Extension, basic structure for the extension of WebProcess. |
| |
| * PlatformEfl.cmake: |
| Added files for the EWebKit_Extension and install them properly. |
| * UIProcess/API/efl/ewk_context.cpp: |
| (EwkContext::EwkContext): |
| (bundlePathForExtension): |
| (EwkContext::create): |
| (EwkContext::getInjectedBundleInitializationUserData): |
| (EwkContext::setMessageFromInjectedBundleCallback): |
| (ewk_context_new_with_extensions_path): |
| Deleted because ewebkit2 does not have a way to make injected bundle. |
| Instead, Ewk_Extension will cover the same functionalities. |
| (ewk_context_new_with_injected_bundle_path): Deleted. |
| * UIProcess/API/efl/ewk_context.h: |
| * UIProcess/API/efl/ewk_context_private.h: |
| (EwkContext::extensionsPath): |
| * UIProcess/API/efl/tests/InjectedBundle/injected_bundle_sample.cpp: Removed. |
| * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: |
| (EWK2UnitTest::EWK2UnitTestEnvironment::extensionSample): |
| (EWK2UnitTest::EWK2UnitTestEnvironment::injectedBundleSample): Renamed injectedBundleSample to extensionSample. |
| * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h: |
| * UIProcess/API/efl/tests/extensions/extension_sample.cpp: Copied from Source/WebKit2/UIProcess/API/efl/tests/InjectedBundle/injected_bundle_sample.cpp. |
| * UIProcess/API/efl/tests/test_ewk2_context.cpp: Renamed ewk_context_new_with_injected_bundle_path to ewk_context_new_with_extensions_path. |
| (TEST_F): |
| * WebProcess/InjectedBundle/API/efl/EWebKit_Extension.h: Added. |
| * WebProcess/InjectedBundle/API/efl/ewk_extension.cpp: Added. |
| (EwkExtension::append): |
| (EwkExtension::remove): |
| (ewk_extension_client_add): |
| (ewk_extension_client_del): |
| * WebProcess/InjectedBundle/API/efl/ewk_extension.h: Added. |
| * WebProcess/InjectedBundle/API/efl/ewk_extension_private.h: Added. |
| (EwkExtension::EwkExtension): |
| (EwkExtension::~EwkExtension): |
| * WebProcess/efl/ExtensionManagerEfl.cpp: Added. |
| (WebKit::ExtensionManagerEfl::shared): |
| (WebKit::ExtensionManagerEfl::ExtensionManagerEfl): |
| (WebKit::ExtensionManagerEfl::initialize): |
| * WebProcess/efl/ExtensionManagerEfl.h: Added. |
| * WebProcess/efl/WebInjectedBundleMainEfl.cpp: Added. |
| (WKBundleInitialize): |
| * efl/ewebkit2-extension.pc.in: Added. |
| |
| 2014-10-10 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for Image subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137625 |
| |
| Reviewed by Andreas Kling. |
| |
| Use is<>() / downcast<>() for Image subclasses. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::pluginSnapshotTimerFired): |
| |
| 2014-10-10 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for GraphicsLayer subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137595 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for GraphicsLayer subclasses and clean up the |
| surrounding code. |
| |
| * WebProcess/WebPage/mac/GraphicsLayerCARemote.h: |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: |
| (WebKit::RemoteLayerTreeDrawingArea::flushLayers): |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm: |
| (WebKit::TiledCoreAnimationDrawingArea::layerForTransientZoom): |
| (WebKit::TiledCoreAnimationDrawingArea::shadowLayerForTransientZoom): |
| |
| 2014-10-10 Pascal Jacquemart <p.jacquemart@samsung.com> |
| |
| Fix debug build on EFL after r174584 |
| https://bugs.webkit.org/show_bug.cgi?id=137613 |
| |
| Reviewed by Christophe Dumez. |
| |
| * UIProcess/efl/RequestManagerClientEfl.cpp: |
| (WebKit::RequestManagerClientEfl::RequestManagerClientEfl): |
| |
| 2014-10-10 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for RenderBoxModelObject |
| https://bugs.webkit.org/show_bug.cgi?id=137587 |
| |
| Reviewed by Mihnea Ovidenie. |
| |
| Use is<>() / downcast<>() for RenderBoxModelObject and clean up the |
| surrounding code. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::renderer): |
| (WebKit::PluginView::invalidateRect): |
| |
| 2014-10-10 Pascal Jacquemart <p.jacquemart@samsung.com> |
| |
| [SOUP] Remove custom URI schemes implementation |
| https://bugs.webkit.org/show_bug.cgi?id=128169 |
| |
| Reviewed by Carlos Garcia Campos. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/API/C/soup/WKAPICastSoup.h: |
| * UIProcess/API/C/soup/WKContextSoup.cpp: Removed. |
| * UIProcess/API/C/soup/WKSoupRequestManager.cpp: Removed. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveURIRequest): Deleted. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/soup/WebSoupRequestManagerClient.cpp: Removed. |
| * UIProcess/soup/WebSoupRequestManagerProxy.cpp: Removed. |
| * UIProcess/soup/WebSoupRequestManagerProxy.messages.in: Removed. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/soup/WebKitSoupRequestGeneric.cpp: |
| (webkitSoupRequestGenericSendAsync): |
| (webkitSoupRequestGenericSendFinish): |
| * WebProcess/soup/WebProcessSoup.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| * WebProcess/soup/WebSoupRequestManager.cpp: Removed. |
| * WebProcess/soup/WebSoupRequestManager.messages.in: Removed. |
| |
| 2014-10-09 Dean Jackson <dino@apple.com> |
| |
| Remove ENABLE_CSS3_CONDITIONAL_RULES |
| https://bugs.webkit.org/show_bug.cgi?id=137571 |
| |
| Reviewed by Simon Fraser. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2014-10-09 Tim Horton <timothy_horton@apple.com> |
| |
| Move ServicesOverlayController to WebCore |
| https://bugs.webkit.org/show_bug.cgi?id=137416 |
| <rdar://problem/18546283> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/Logging.h: |
| Move Services logging channel to WebCore. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::handleTelephoneNumberClick): |
| (WebKit::WebChromeClient::handleSelectionServiceClick): |
| (WebKit::WebChromeClient::hasRelevantSelectionServices): |
| Implement services-related ChromeClient callbacks. |
| Clicks are forwarded to WebPageMac where they do what they used to; |
| hasRelevantSelectionServices is implemented as it was when it lived |
| inside ServicesOverlayController. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::selectedTelephoneNumberRangesChanged): Deleted. |
| (WebKit::WebEditorClient::selectionRectsDidChange): Deleted. |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| Remove WebEditorClient overrides for now-removed functions. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| (WebKit::WebPage::updatePreferences): |
| Forward serviceControlsEnabled setting to WebCore. |
| |
| (WebKit::WebPage::servicesOverlayController): Deleted. |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::serviceControlsEnabled): Deleted. |
| |
| 2014-10-09 Andy Estes <aestes@apple.com> |
| |
| [iOS] Crash in CFURLDownloadClient.didFail if the download has a null resumeData |
| https://bugs.webkit.org/show_bug.cgi?id=137551 |
| |
| Reviewed by David Kilzer. |
| |
| CFDataGetBytePtr() and CFDataGetLength() crash if passed a null value. |
| |
| * Shared/Downloads/ios/DownloadIOS.mm: |
| (WebKit::setUpDownloadClient): |
| |
| 2014-10-09 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [X11] Plugin process crashes in NetscapePlugin::platformPostInitialize() |
| https://bugs.webkit.org/show_bug.cgi?id=137426 |
| |
| Reviewed by Darin Adler. |
| |
| For some reason flash crashes when NPP_GetValue is called with |
| NPPVpluginCancelSrcStream, but only in windowed mode. Not calling |
| NPP_GetValue and unconditionally loading the source URL in the |
| browser fixes the crash and plugins work normally. We can handle |
| this particular case with a new quirk. |
| |
| * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: |
| (WebKit::NetscapePluginModule::determineQuirks): Add |
| DoNotCancelSrcStreamInWindowedMode quirk if it's flash plugin. |
| * Shared/Plugins/PluginQuirks.h: Add |
| DoNotCancelSrcStreamInWindowedMode quirk. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::shouldLoadSrcURL): Return early if plugin |
| is windowed and DoNotCancelSrcStreamInWindowedMode quirk is present. |
| |
| 2014-10-09 Chris Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for Widget subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137549 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for Widget subclasses and clean up the |
| surrounding code. |
| |
| * Shared/WebRenderObject.cpp: |
| (WebKit::WebRenderObject::WebRenderObject): |
| |
| 2014-10-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Use the PageLoadState observer also to monitor title and estimated load progress |
| https://bugs.webkit.org/show_bug.cgi?id=136997 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| * UIProcess/API/gtk/WebKitLoaderClient.cpp: |
| (attachLoaderClientToView): Remove implementation of |
| didReceiveTitleForFrame, didStartProgress, didChangeProgress and |
| didFinishProgress. |
| (didReceiveTitleForFrame): Deleted. |
| (didChangeProgress): Deleted. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkit_web_view_get_estimated_load_progress): Return the value |
| directly from the PageLoadState object, since we don't need to |
| cache the value anymore. |
| (webkitWebViewSetTitle): Deleted. |
| (webkitWebViewSetEstimatedLoadProgress): Deleted. |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| |
| 2014-10-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Race condition with WebKitWebView:is-loading after starting page load |
| https://bugs.webkit.org/show_bug.cgi?id=136692 |
| |
| Reviewed by Gustavo Noronha Silva. |
| |
| Use PageLoadState::Observer to update both is-loading and uri |
| properties, instead of manually update them. This ensures that our |
| web view is always in sync with the WebPageProxy so that |
| webkit_web_view_is_loading() returns true right after requesting |
| any load. We still need to manually set the is-loading property |
| only in the case where we delay the emission of the load-changed |
| signals when waiting for the main resource. The bahaviour is a bit |
| different but still consistent with what our API documentation says. |
| |
| * UIProcess/API/gtk/WebKitLoaderClient.cpp: |
| (attachLoaderClientToView): Remove |
| didSameDocumentNavigationForFrame implementation, since we are |
| already notified about the URL change by the PageLoadState::Observer. |
| (didSameDocumentNavigationForFrame): Deleted. |
| * UIProcess/API/gtk/WebKitWebView.cpp: |
| (webkitWebViewSetIsLoading): No longer update the URI when |
| changing the is-loading property. |
| (webkitWebViewConstructed): Crate a PageLoadStateObserver and add |
| it to the PageLoadState. |
| (webkitWebViewDispose): Remove the PageLoadStateObserver from the PageLoadState. |
| (webkitWebViewEmitLoadChanged): Add isDelayedEvent parameter to |
| update the is-loading property accordingly when emitting the |
| delayed events. |
| (webkitWebViewEmitDelayedLoadEvents): Pass true as isDelayedEvent |
| parameter of webkitWebViewEmitLoadChanged(). |
| (webkitWebViewLoadChanged): Pass false as isDelayedEvent parameter |
| of webkitWebViewEmitLoadChanged(). |
| (webkitWebViewLoadFailed): |
| (webkitWebViewLoadFailedWithTLSErrors): |
| (webkitWebViewUpdateURI): Deleted. |
| * UIProcess/API/gtk/WebKitWebViewPrivate.h: |
| |
| 2014-10-08 Christophe Dumez <cdumez@apple.com> |
| |
| Use is<>() / downcast<>() for RenderBlock objects |
| https://bugs.webkit.org/show_bug.cgi?id=137512 |
| |
| Reviewed by Darin Adler. |
| |
| Use is<>() / downcast<>() for RenderBlock objects and clean up the |
| surrounding code. |
| |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::rangeForWebSelectionAtPosition): |
| (WebKit::WebPage::contractedRangeFromHandle): |
| |
| 2014-10-08 Ada Chan <adachan@apple.com> |
| |
| Implement WKPageIsPlayingAudio(). |
| https://bugs.webkit.org/show_bug.cgi?id=137048 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageIsPlayingAudio): |
| |
| 2014-10-08 Gyuyoung Kim <gyuyoung.kim@samsung.com> |
| |
| [EFL][CoordinatedGraphics] All EFL layout tests are broken since r174231 |
| https://bugs.webkit.org/show_bug.cgi?id=137443 |
| |
| Reviewed by Zoltan Herczeg. |
| |
| EFL layout test and MiniBrowser have broken since r174231. r174231 was to move PageOverlay implementation |
| from WebKit2 to WebCore with lazy initializing of PageOverlayController. It caused all EFL layout tests |
| crash and build break. To restore EFL layout test, this patch sets viewOverlayRootLayer through |
| attachViewOverlayGraphicsLayer() as mac port's one in r174231. |
| |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp: |
| (WebKit::CoordinatedDrawingArea::attachViewOverlayGraphicsLayer): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h: |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: |
| (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost): |
| (WebKit::CoordinatedLayerTreeHost::updateRootLayers): |
| (WebKit::CoordinatedLayerTreeHost::setViewOverlayRootLayer): |
| (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer): |
| (WebKit::CoordinatedLayerTreeHost::didFlushRootLayer): |
| * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: |
| |
| 2014-10-08 Commit Queue <commit-queue@webkit.org> |
| |
| Unreviewed, rolling out r174335. |
| https://bugs.webkit.org/show_bug.cgi?id=137515 |
| |
| It broke EFL layout test totally (Requested by gyuyoung on |
| #webkit). |
| |
| Reverted changeset: |
| |
| "[EFL] Introduce EWebKit_Extension" |
| https://bugs.webkit.org/show_bug.cgi?id=134921 |
| http://trac.webkit.org/changeset/174335 |
| |
| 2014-10-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| [GTK] Make forwarding headers generation depend on source code |
| https://bugs.webkit.org/show_bug.cgi?id=137394 |
| |
| Reviewed by Philippe Normand. |
| |
| Only run generate-forwarding-headers.pl when source code changes |
| and use a different target for the symlinks. |
| |
| * PlatformGTK.cmake: |
| |
| 2014-10-07 Pascal Jacquemart <p.jacquemart@samsung.com> |
| |
| [EFL] Enable custom URI schemes with CustomProtocols |
| https://bugs.webkit.org/show_bug.cgi?id=128177 |
| |
| Reviewed by Gyuyoung Kim. |
| |
| Fixing ewk_context_url_scheme_register() ewebkit2 API |
| rely on r162449 - CustomProtocols implementation from Carlos Garcia Campos |
| |
| * PlatformEfl.cmake: |
| * UIProcess/API/efl/ewk_context.h: |
| * UIProcess/API/efl/ewk_url_scheme_request.cpp: |
| (EwkUrlSchemeRequest::EwkUrlSchemeRequest): |
| (EwkUrlSchemeRequest::finish): |
| * UIProcess/API/efl/ewk_url_scheme_request_private.h: |
| (EwkUrlSchemeRequest::create): |
| * UIProcess/API/efl/tests/test_ewk2_context.cpp: |
| (TEST_F): |
| * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp: |
| * UIProcess/efl/RequestManagerClientEfl.cpp: |
| (WebKit::RequestManagerClientEfl::RequestManagerClientEfl): |
| (WebKit::RequestManagerClientEfl::startLoading): |
| (WebKit::RequestManagerClientEfl::stopLoading): |
| (WebKit::RequestManagerClientEfl::registerURLSchemeHandler): |
| (WebKit::EwkUrlSchemeHandler::EwkUrlSchemeHandler): Deleted. |
| (WebKit::RequestManagerClientEfl::didReceiveURIRequest): Deleted. |
| * UIProcess/efl/RequestManagerClientEfl.h: |
| * UIProcess/efl/WebContextEfl.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * UIProcess/soup/WebContextSoup.cpp: |
| (WebKit::WebContext::platformInitializeNetworkProcess): |
| |
| 2014-10-07 Sungmann Cho <sungmann.cho@navercorp.com> |
| |
| Remove WKPageCreateSnapshotOfVisibleContent API. |
| https://bugs.webkit.org/show_bug.cgi?id=66979 |
| |
| Reviewed by Darin Adler. |
| |
| After the landing of the first patch of webkit.org/b/66979, |
| WKPageCreateSnapshotOfVisibleContent API has been neglected for years. |
| Currently, this is not used anywhere and does not break the nightlies. |
| So we can remove this. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageCreateSnapshotOfVisibleContent): Deleted. |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| 2014-10-07 Sungmann Cho <sungmann.cho@navercorp.com> |
| |
| Remove WKPageSetInvalidMessageFunction. |
| https://bugs.webkit.org/show_bug.cgi?id=137509 |
| |
| Reviewed by Benjamin Poulain. |
| |
| According to the FIXME comment in WKPageSetInvalidMessageFunction, |
| we can remove this function when doing so won't break the nightlies. |
| Currently, this is not used anywhere and does not break the nightlies. |
| So we can remove this. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetInvalidMessageFunction): Deleted. |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| 2014-10-07 Christophe Dumez <cdumez@apple.com> |
| |
| [WK2] Use is<>() / downcast<>() for DrawingArea subclasses |
| https://bugs.webkit.org/show_bug.cgi?id=137497 |
| |
| Reviewed by Benjamin Poulain. |
| |
| Use is<>() / downcast<>() for DrawingArea subclasses. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didCommitLoad): |
| * WebProcess/WebPage/ios/WebPageIOS.mm: |
| (WebKit::WebPage::synchronizeDynamicViewportUpdate): |
| * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: |
| * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: |
| |
| 2014-10-07 Simon Fraser <simon.fraser@apple.com> |
| |
| Roll-over Changelogs. |
| |
| * ChangeLog-2014-10-07: Copied from Source/WebKit2/ChangeLog. |
| |
| == Rolled over to ChangeLog-2014-10-07 == |