| 2011-06-04 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Disable WebProcess side display throttling when in a user scroll |
| <rdar://problem/9517175> |
| https://bugs.webkit.org/show_bug.cgi?id=62095 |
| |
| Add the ability to disable WebProcess side display throttling that |
| takes place in DrawingAreaImpl::displayTimerFired. Disable the throttling |
| when in a user or animated scroll. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::didStartRubberBandForFrame): |
| (WebKit::WebChromeClient::didCompleteRubberBandForFrame): |
| (WebKit::WebChromeClient::didStartAnimatedScroll): |
| (WebKit::WebChromeClient::didCompleteAnimatedScroll): |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::enableDisplayThrottling): |
| (WebKit::DrawingArea::disableDisplayThrottling): |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| (WebKit::DrawingAreaImpl::enableDisplayThrottling): |
| (WebKit::DrawingAreaImpl::disableDisplayThrottling): |
| (WebKit::DrawingAreaImpl::displayTimerFired): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::wheelEvent): |
| |
| 2011-06-04 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| [Mac WebKit2] REGRESSION (r86692): Synchronous XMLHttpRequest hangs in credential shim (affects Netgear ReadyNAS admin page) |
| https://bugs.webkit.org/show_bug.cgi?id=62094 |
| rdar://problem/9539204 |
| |
| * WebKit2.xcodeproj/project.pbxproj: Added new source files. |
| * WebProcess/mac/CoreIPCClientRunLoop.h: Added. |
| * WebProcess/mac/CoreIPCClientRunLoop.mm: Added. |
| (-[WKFunctionAdapter perform]): Added. |
| (WebKit::createCoreIPCRunLoopModesArray): Added. |
| (WebKit::coreIPCRunLoopModesArray): Added. |
| (WebKit::callOnCoreIPCClientRunLoopAndWait): Added. |
| |
| * WebProcess/mac/KeychainItemShimMethods.mm: |
| (WebKit::webFreeAttributeListContent): Use callOnCoreIPCClientRunLoopAndWait. |
| (WebKit::webFreeKeychainItemContent): Ditto. |
| (WebKit::webSecKeychainItemCopyContent): Ditto. |
| (WebKit::webSecKeychainItemCreateFromContent): Ditto. |
| (WebKit::webSecKeychainItemModifyContent): Ditto. |
| * WebProcess/mac/SecItemShimMethods.mm: |
| (WebKit::webSecItemCopyMatching): Ditto. |
| (WebKit::webSecItemAdd): Ditto. |
| (WebKit::webSecItemUpdate): Ditto. |
| (WebKit::webSecItemDelete): Ditto. |
| |
| 2011-06-04 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2 needs to know when a scroll is happening due to the ScrollAnimator |
| https://bugs.webkit.org/show_bug.cgi?id=62093 |
| |
| Stub out new ChromeClient functions regarding the start and end of ScrollAnimator |
| animated scrolls, and update logic for rubber-band ending to check for main frame |
| now that it is called for all frames. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::didStartRubberBandForFrame): |
| (WebKit::WebChromeClient::didCompleteRubberBandForFrame): |
| (WebKit::WebChromeClient::didStartAnimatedScroll): |
| (WebKit::WebChromeClient::didCompleteAnimatedScroll): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-06-03 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| <rdar://problem/9553645> and https://bugs.webkit.org/show_bug.cgi?id=62064 |
| WebBackForwardListItem::setBackForwardData actually appends data |
| |
| * Shared/WebBackForwardListItem.cpp: |
| (WebKit::WebBackForwardListItem::setBackForwardData): Clear the Vector out before appending |
| the replacement data. |
| |
| 2011-06-03 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| Disable the sync message timeout for the Microsoft SharePoint plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=62043 |
| <rdar://problem/9536303> |
| |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::defaultSyncMessageTimeout): |
| |
| 2011-06-03 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Benjamin Poulain. |
| |
| [Qt] TiledDrawingArea: Initialize tiles to transparent. |
| |
| * UIProcess/qt/TiledDrawingAreaTileQt.cpp: |
| (WebKit::TiledDrawingAreaTile::incorporateUpdate): When constructing new |
| back buffers, fill them with transparent pixels. |
| |
| 2011-06-03 No'am Rosenthal <noam.rosenthal@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt][WK2] Make tiling on WebKit2 more responsive. |
| https://bugs.webkit.org/show_bug.cgi?id=50064 |
| |
| Instead of creating and destroying pixmaps, and copying them using QPixmap::copy() |
| or relying on the implicit sharing functionality, we keep the QPixmaps alive |
| and just make sure their content is synchronized. |
| |
| This seems to improve responsiveness noticably, as now the UI process doesn't deal |
| with allocating/deallocating pixmaps, and the copies are done with the optimized |
| path (QPainter) vs the unoptimized ones (QPixmap::copy().) |
| |
| * UIProcess/TiledDrawingAreaTile.h: |
| * UIProcess/qt/TiledDrawingAreaTileQt.cpp: |
| (WebKit::TiledDrawingAreaTile::TiledDrawingAreaTile): |
| (WebKit::TiledDrawingAreaTile::isReadyToPaint): |
| (WebKit::TiledDrawingAreaTile::hasReadyBackBuffer): |
| (WebKit::TiledDrawingAreaTile::swapBackBufferToFront): |
| (WebKit::TiledDrawingAreaTile::incorporateUpdate): |
| |
| 2011-06-03 Mikhail Naganov <mnaganov@chromium.org> |
| |
| Reviewed by Yury Semikhatsky. |
| |
| Web Inspector: [Chromium] cpu-profiler-profiling layout test is flaky on Linux Debug. |
| https://bugs.webkit.org/show_bug.cgi?id=61533 |
| |
| Skip cpu-profiler-profiling in debug, implement a fast headless alternative. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp: |
| (WKBundleInspectorSetJavaScriptProfilingEnabled): |
| * WebProcess/InjectedBundle/API/c/WKBundleInspector.h: |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::setJavaScriptProfilingEnabled): |
| * WebProcess/WebPage/WebInspector.h: |
| |
| 2011-06-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| Assert when trying to unload a module that failed to load |
| https://bugs.webkit.org/show_bug.cgi?id=61980 |
| |
| Remove an invalid ASSERT; it's OK for m_bundle to be null if the bundle failed to load. |
| |
| * Platform/mac/ModuleMac.mm: |
| (WebKit::Module::unload): |
| |
| 2011-06-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Add quirk for plug-ins that return a retained CALayer |
| https://bugs.webkit.org/show_bug.cgi?id=61948 |
| <rdar://problem/9530390> |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): |
| Set the ReturnsRetainedCoreAnimationLayer quirk for Flash. |
| |
| * Shared/Plugins/PluginQuirks.h: |
| Add ReturnsRetainedCoreAnimationLayer quirk. |
| |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): |
| Handle WKNVExpectsNonretainedLayer by always returning true, and also |
| call NetscapePlugin::setPluginReturnsNonretainedLayer(true) to add a way |
| for plug-ins to opt into returning non-retained layers even if they have |
| the quirk specified. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::NetscapePlugin): |
| Initialize m_pluginReturnsNonretainedLayer to true. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| (WebKit::NetscapePlugin::setPluginReturnsNonretainedLayer): |
| Add setter. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| If m_pluginReturnsNonretainedLayer is false, adopt the layer. |
| |
| 2011-06-02 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed WinCairo build correction. |
| |
| * UIProcess/win/WebView.cpp: Don't include CG file header |
| when building without CoreGraphics support. |
| |
| 2011-06-02 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement popup menus in Webkit2 |
| https://bugs.webkit.org/show_bug.cgi?id=61854 |
| |
| * GNUmakefile.am: Add new files to compilation. |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::createPopupMenuProxy): Create a new |
| WebPopupMenuProxy. |
| * UIProcess/gtk/WebPopupMenuProxyGtk.cpp: Added. |
| (WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk): |
| (WebKit::WebPopupMenuProxyGtk::~WebPopupMenuProxyGtk): |
| (WebKit::WebPopupMenuProxyGtk::showPopupMenu): |
| (WebKit::WebPopupMenuProxyGtk::hidePopupMenu): |
| (WebKit::WebPopupMenuProxyGtk::shutdownRunLoop): |
| (WebKit::WebPopupMenuProxyGtk::menuItemActivated): |
| (WebKit::WebPopupMenuProxyGtk::menuUnmapped): |
| * UIProcess/gtk/WebPopupMenuProxyGtk.h: Added. |
| (WebKit::WebPopupMenuProxyGtk::create): |
| (WebKit::WebPopupMenuProxyGtk::setActiveItem): |
| |
| 2011-06-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Non-users need access to the mds caches for SSL support. |
| <rdar://problem/9471799> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-06-01 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Flash of old video frame at the end of full screen transition |
| https://bugs.webkit.org/show_bug.cgi?id=61752 |
| |
| Add a new method and message, DisposeOfLayerClient, which will invalidate and release |
| the WKRemoteLayerClient used during the full-screen animation. This ensures that |
| the root layer used for the full-screen animation will be in a clean state at the start |
| of the next transition. |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| (WebKit::WebFullScreenManagerProxy::disposeOfLayerClient): Added. |
| * UIProcess/WebFullScreenManagerProxy.h: |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController exitCompositedModeRepaintCompleted]): Call disposeOfLayerClient. |
| * WebProcess/FullScreen/WebFullScreenManager.h: |
| (WebKit::WebFullScreenManager::disposeOfLayerClient): Added. |
| * WebProcess/FullScreen/WebFullScreenManager.messages.in: Added DisposeOfLayerClient. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::disposeOfLayerClient): Added, invalidates and clears m_rootLayerClient. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Build fix after r87831 |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::enterAcceleratedCompositingMode): |
| (WebKit::WebView::exitAcceleratedCompositingMode): |
| Added some HAVE(WKQCA) guards. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Delete a bunch of dead code in DrawingAreaImpl |
| |
| LayerTreeHost::participatesInDisplay always returns false now, which means a bunch of code |
| in DrawingAreaImpl no longer runs. |
| |
| Cleanup after fixing <http://webkit.org/b/58054> |
| <rdar://problem/9249839> REGRESSION (WebKit2): Accelerated CSS animations have a lower |
| framerate than in WebKit1 |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): |
| (WebKit::DrawingAreaImpl::didUpdate): |
| (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| (WebKit::DrawingAreaImpl::scheduleDisplay): |
| (WebKit::DrawingAreaImpl::displayTimerFired): |
| (WebKit::DrawingAreaImpl::display): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/LayerTreeHost.h: |
| Reverted r82959. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Render accelerated content into a web process-owned child HWND |
| |
| This allows us to use WKCACFView's far more efficient kWKCACFViewDrawingDestinationWindow |
| mode, which gives us asynchronous rendering on a background thread and doesn't require us to |
| read bits off the GPU back into system memory. |
| |
| A new class, WKCACFViewWindow, represents the child HWND. The child HWND is placed at the |
| bottom of the z-order so it won't obscure any other child HWNDs (i.e., windowed plugins). |
| The child HWND is made transparent to mouse events so that WKView will continue to receive |
| mouse events even though it is obscured by the child HWND. |
| |
| There is now a bunch of dead code in DrawingAreaImpl to handle our old rendering model. I'll |
| remove that in a future patch. |
| |
| Fixes <http://webkit.org/b/58054> <rdar://problem/9249839> REGRESSION (WebKit2): Accelerated |
| CSS animations have a lower framerate than in WebKit1 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/LayerTreeContext.h: Added HWND member on Windows. |
| |
| * Shared/win/CoalescedWindowGeometriesUpdater.cpp: |
| (WebKit::CoalescedWindowGeometriesUpdater::updateGeometries): |
| * Shared/win/CoalescedWindowGeometriesUpdater.h: |
| Added new BringToTopOrNot argument. Allows the caller to specify that all windows being |
| updated should also be brought to the top of the z-order. |
| |
| * Shared/win/LayerTreeContextWin.cpp: |
| (WebKit::LayerTreeContext::LayerTreeContext): |
| (WebKit::LayerTreeContext::~LayerTreeContext): |
| (WebKit::LayerTreeContext::encode): |
| (WebKit::LayerTreeContext::decode): |
| (WebKit::LayerTreeContext::isEmpty): |
| (WebKit::operator==): |
| Implemented based on new window member. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::WebView): Initialize new member. |
| (WebKit::WebView::onSizeEvent): Resize the layer host window to cover our entire view, if we |
| have one. |
| (WebKit::WebView::enterAcceleratedCompositingMode): Store, position, and show the layer host |
| window. |
| (WebKit::WebView::exitAcceleratedCompositingMode): Destroy the layer host window. |
| (WebKit::WebView::updateChildWindowGeometries): Updated for change to |
| CoalescedWindowGeometriesUpdater. |
| |
| * UIProcess/win/WebView.h: Added m_layerHostWindow member. |
| |
| * WebProcess/WebPage/LayerTreeHost.h: Added scheduleChildWindowGeometryUpdate. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::supportsAcceleratedCompositing): Simplified by using |
| WKCACFViewWindow. |
| |
| (WebKit::LayerTreeHostCAWin::LayerTreeHostCAWin): Removed initialization of a removed |
| member. |
| (WebKit::LayerTreeHostCAWin::platformInitialize): Changed to use WKCACFViewWindow, |
| kWKCACFViewDrawingDestinationWindow, and to initialize the LayerTreeContext. |
| (WebKit::LayerTreeHostCAWin::invalidate): Leak our window and tell it to clean up after |
| itself. The UI process will take care of destroying the window when it finishes switching |
| out of accelerated compositing mode. Removed a WKCACFViewUpdate call that is now handled by |
| WKCACFViewWindow. |
| (WebKit::LayerTreeHostCAWin::scheduleChildWindowGeometryUpdate): Added. Calls through to |
| m_geometriesUpdater. |
| (WebKit::LayerTreeHostCAWin::sizeDidChange): Updated to use WKCACFViewWindow. |
| (WebKit::LayerTreeHostCAWin::contextDidChange): Update child window geometries now to keep |
| them (almost) in sync with the accelerated content. <http://webkit.org/b/61867> covers the |
| slight asynchrony that still exists. |
| (WebKit::LayerTreeHostCAWin::setRootCompositingLayer): Don't flush any changes when we don't |
| have a root layer. This prevents a flash of white when switching out of compositing mode. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: Added m_window and m_geometriesUpdater. |
| Removed code related to the old, synchronous display model. |
| |
| * WebProcess/WebPage/ca/win/WKCACFViewWindow.cpp: Added. |
| (WebKit::WKCACFViewWindow::WKCACFViewWindow): Initialize members and create our window. |
| (WebKit::WKCACFViewWindow::~WKCACFViewWindow): Destroy our window if needed. |
| (WebKit::WKCACFViewWindow::onCustomDestroy): Just call ::DestroyWindow. |
| (WebKit::WKCACFViewWindow::onDestroy): Tell our view not to render into our window anymore. |
| (WebKit::WKCACFViewWindow::onEraseBackground): Tell Windows not to erase us. |
| (WebKit::WKCACFViewWindow::onNCDestroy): Clear out m_window since it's now pointing to a |
| destroy window, and destroy ourselves if requested. |
| (WebKit::WKCACFViewWindow::onPaint): Tell the view to draw, then clear our invalid region. |
| (WebKit::WKCACFViewWindow::onPrintClient): Tell our view to draw into the given HDC. |
| (WebKit::WKCACFViewWindow::registerClass): Register our class (duh). |
| (WebKit::WKCACFViewWindow::staticWndProc): Get the WKCACFViewWindow pointer, or store the |
| pointer if needed, then call through to wndProc. |
| (WebKit::WKCACFViewWindow::wndProc): Call out to the appropriate handler function. |
| |
| * WebProcess/WebPage/ca/win/WKCACFViewWindow.h: Added. |
| (WebKit::WKCACFViewWindow::setDeletesSelfWhenWindowDestroyed): Simple setter. |
| (WebKit::WKCACFViewWindow::window): Simple getter. |
| |
| * WebProcess/WebPage/win/DrawingAreaImplWin.cpp: |
| (WebKit::DrawingAreaImpl::scheduleChildWindowGeometryUpdate): Let the LayerTreeHost handle |
| the geometry update, if we have one. |
| |
| * win/WebKit2.vcproj: Added WKCACFViewWindow files. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Route plugin window geometry updates through the DrawingArea |
| |
| This will allow the geometry updates to be handled by the LayerTreeHost in compositing mode |
| in the future. |
| |
| More rep work for <http://webkit.org/b/58054> <rdar://problem/9249839> REGRESSION (WebKit2): |
| Accelerated CSS animations have a lower framerate than in WebKit1 |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::scheduleWindowedPluginGeometryUpdate): Tell the DrawingArea, not the |
| WebPage, about the geometry update. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/win/DrawingAreaImplWin.cpp: Added. |
| (WebKit::DrawingAreaImpl::scheduleChildWindowGeometryUpdate): |
| Moved code here... |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| ...from here. |
| |
| * win/WebKit2.vcproj: Added DrawingAreaImplWin.cpp. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Move WebView's window geometry updating code to a new class |
| |
| This will allow us to share this code with LayerTreeHostCAWin. |
| |
| Prep work for <http://webkit.org/b/58054> <rdar://problem/9249839> REGRESSION (WebKit2): |
| Accelerated CSS animations have a lower framerate than in WebKit1 |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/win/CoalescedWindowGeometriesUpdater.cpp: Added. |
| (WebKit::CoalescedWindowGeometriesUpdater::CoalescedWindowGeometriesUpdater): |
| (WebKit::CoalescedWindowGeometriesUpdater::~CoalescedWindowGeometriesUpdater): |
| Simple constructor/destructor. |
| |
| (WebKit::CoalescedWindowGeometriesUpdater::addPendingUpdate): |
| (WebKit::setWindowRegion): |
| (WebKit::CoalescedWindowGeometriesUpdater::updateGeometries): |
| * Shared/win/CoalescedWindowGeometriesUpdater.h: Added. |
| Moved code here... |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::scheduleChildWindowGeometryUpdate): |
| (WebKit::WebView::updateChildWindowGeometries): |
| * UIProcess/win/WebView.h: |
| ...from here. |
| |
| * win/WebKit2.vcproj: Added new files. |
| |
| 2011-06-01 Adam Roben <aroben@apple.com> |
| |
| Windows build fix after r87755 |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::setLayerFlushSchedulingEnabled): Fixed |
| typo. |
| |
| 2011-06-01 Oleg Romashin <romaxa@gmail.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| platformGeometryDidChange function definition was changed everywhere except Qt. |
| This is fix for Qt WK2 plugins compilation |
| https://bugs.webkit.org/show_bug.cgi?id=61832 |
| |
| * PluginProcess/qt/PluginControllerProxyQt.cpp: |
| (WebKit::PluginControllerProxy::platformGeometryDidChange): |
| |
| 2011-05-31 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Flash of black at the end of full screen transition at apple.com product videos |
| https://bugs.webkit.org/show_bug.cgi?id=61756 |
| |
| The @"WebKitLayerHostChanged" notification is causing the QTMovie to tear down its layer |
| (which is good) at the wrong time (which is bad). Send this notification only after |
| the dragImage snapshot is taken. This exposed another problem, that the snapshot has |
| a white background. Set the default background color and transparency for the view (making |
| sure to reset them afterwards) to transparent. |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): |
| |
| 2011-03-30 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Adam Roben. |
| |
| [GTK] [WebKit2] Implement a basic WebKitTestRunner |
| https://bugs.webkit.org/show_bug.cgi?id=57068 |
| |
| Added InjectedBundle support for GTK+. |
| |
| * WebProcess/InjectedBundle/InjectedBundle.h: Added typedef for GTK+. |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: Added implementation. |
| (WebKit::InjectedBundle::load): |
| (WebKit::InjectedBundle::activateMacFontAscentHack): |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: Remove unnecessary method definition. |
| |
| 2011-05-31 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| <rdar://problem/9523192> REGRESSION (5.0.5-ToT, WebKit2): Flash to white when navigating between pages on wsj.com, other sites (when navigating away from composited page) |
| https://bugs.webkit.org/show_bug.cgi?id=61808 |
| |
| WebKit1 has a mechanism to prevent the stale bits from the outgoing page from being erased |
| until the incoming page has layout. Adapt this in WebKit2 to prevent the composited layer tree |
| of the outgoing page from being torn down or updated until the incoming page has layout. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidFirstLayout): Unfreeze the layer tree state. |
| (WebKit::WebFrameLoaderClient::frameLoadCompleted): Ditto. |
| (WebKit::WebFrameLoaderClient::provisionalLoadStarted): Freeze the layer tree state. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::setLayerTreeStateIsFrozen): Added. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): Initialize new member variables. |
| (WebKit::DrawingAreaImpl::setLayerTreeStateIsFrozen): Added. When freezing, sets the flag and |
| disables layer flush scheduling and exiting accelerated compositing mode. When unfreezing, |
| clears the flag and exits compositing mode if needed. |
| (WebKit::DrawingAreaImpl::setRootCompositingLayer): Reset m_wantsToExitAcceleratedCompositingMode. |
| (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): Ditto. |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Ditto. |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingModeSoon): If the layer tree state is frozen, |
| bail out but set m_wantsToExitAcceleratedCompositingMode. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/LayerTreeHost.h: |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: |
| (WebKit::LayerTreeHostCA::LayerTreeHostCA): Initialize m_layerFlushSchedulingEnabled. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.h: |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h: |
| |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm: |
| (WebKit::LayerTreeHostCAMac::scheduleLayerFlush): Bail out if scheduling is not enabled. |
| (WebKit::LayerTreeHostCAMac::setLayerFlushSchedulingEnabled): Added. Sets the flag. If disabling |
| flushing, cancels the pending flush. |
| (WebKit::LayerTreeHostCAMac::flushPendingLayerChangesRunLoopObserverCallback): Added an assertion. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::scheduleLayerFlush): Bail out if scheduling is not enabled. |
| (WebKit::LayerTreeHostCAWin::setLayerFlushSchedulingEnabled): Added. Sets the flag. If disabling |
| flushing, cancels the pending flush. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: |
| |
| 2011-05-31 ChangeLog <james.cooley@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt][WK2] Qt port needs test content for QWKHistory |
| https://bugs.webkit.org/show_bug.cgi?id=57850 |
| |
| Created data-driven QTestLib tests for existing QWKHistory APIs. |
| |
| This walks through loading four simple pages, navigating |
| backwards and forwards. |
| |
| We check the results at each action by creating expected forward/back |
| lists and comparing those lists in count and membership to those kept by |
| WebKit and retrieved via the QWKHistory APIs. |
| |
| * UIProcess/API/qt/tests/html/a.htm: Added. |
| * UIProcess/API/qt/tests/html/b.htm: Added. |
| * UIProcess/API/qt/tests/html/c.htm: Added. |
| * UIProcess/API/qt/tests/html/d.htm: Added. |
| Four added simple pages |
| |
| * UIProcess/API/qt/tests/qwkhistory: Added. |
| * UIProcess/API/qt/tests/qwkhistory/qwkhistory.pro: Added. |
| Created qwkhistory folder and pro |
| |
| * UIProcess/API/qt/tests/qwkhistory/tst_qwkhistory.cpp: Added. |
| (TestHistoryItem::title): |
| (TestHistoryItem::url): |
| (TestHistoryItem::TestHistoryItem): |
| Utility class to hold expected url,title for test |
| |
| (tst_QWKHistory::initTestCase): |
| (tst_QWKHistory::historyFBTest_data): |
| (tst_QWKHistory::historyFBTest): |
| init, data, and data-driven test case |
| |
| * UIProcess/API/qt/tests/tests.pro: |
| Included qwkhistory in tests.pro |
| |
| 2011-05-30 No'am Rosenthal <noam.rosenthal@nokia.com> |
| |
| Reviewed by Simon Hausmann. |
| |
| WebKit2: Enable serializing of data types needed for cross-process accelerated compositing |
| https://bugs.webkit.org/show_bug.cgi?id=61694 |
| |
| Create an ArgumentCoder for WebCore::Animation. |
| |
| * Scripts/webkit2/messages.py: |
| * Shared/WebCoreArgumentCoders.h: |
| |
| 2011-05-30 No'am Rosenthal <noam.rosenthal@nokia.com> |
| |
| Reviewed by Simon Hausmann. |
| |
| WebKit2: Enable serializing of data types needed for cross-process accelerated compositing |
| https://bugs.webkit.org/show_bug.cgi?id=61694 |
| |
| Add an ArgumentCoder for WebCore::TimingFunction. This serializer can create the appropriate |
| TimingFunction subclass based on the type of timing function. |
| |
| * Scripts/webkit2/messages.py: |
| * Shared/WebCoreArgumentCoders.h: |
| |
| 2011-05-30 No'am Rosenthal <noam.rosenthal@nokia.com> |
| |
| Reviewed by Simon Hausmann. |
| |
| WebKit2: Enable serializing of data types needed for cross-process accelerated compositing |
| https://bugs.webkit.org/show_bug.cgi?id=61694 |
| |
| Add WebCore::Length and WebCore::TransformationMatrix to the types that use SimpleArgumentCoder. |
| |
| * Scripts/webkit2/messages.py: |
| * Shared/WebCoreArgumentCoders.h: |
| |
| 2011-05-30 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Remove incorrect asserts from PluginProcessConnection |
| https://bugs.webkit.org/show_bug.cgi?id=61731 |
| |
| There might be pending incoming messages from a PluginProxy even though we've |
| destroyed the plug-in and removed it from the m_plugins map, so remove the incorrect assertions. |
| |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::didReceiveMessage): |
| (WebKit::PluginProcessConnection::didReceiveSyncMessage): |
| |
| 2011-05-30 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Initial tooltips implementation for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59318 |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::toolTipChanged): Update view's tooltip |
| text. |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseQueryTooltip): Implement GtkWidget::query-tooltip. |
| (webkit_web_view_base_class_init): Override GtkWidget::query-tooltip. |
| (webkitWebViewBaseSetTooltipText): Update tooltip text and trigger |
| GtkWidget::query-tooltip. |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: |
| |
| 2011-05-30 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Remove some unneeded header includes |
| https://bugs.webkit.org/show_bug.cgi?id=60536 |
| |
| * Platform/CoreIPC/Connection.cpp: Remove WebProcess.h. |
| * Platform/CoreIPC/unix/ConnectionUnix.cpp: Remove |
| ProcessLauncher.h and WebProcessProxy.h. Add <wtf/OwnArrayPtr.h>. |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: Remove PluginView.h. |
| |
| 2011-05-29 Darin Adler <darin@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Race condition in full screen controller, which leads to problem when web process crashes |
| https://bugs.webkit.org/show_bug.cgi?id=61707 |
| |
| Second try at this. First try could lead to a WKView leak. |
| |
| * UIProcess/mac/WKFullScreenWindowController.h: Added _isExitingAcceleratedCompositingMode. |
| Needed to track whether we have retained so we don't leak if the page goes away before |
| we get the callback. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Added code to set |
| the new variable to YES. |
| (-[WKFullScreenWindowController exitCompositedModeRepaintCompleted]): Added code to |
| deal with the new boolean and to release. |
| (exitCompositedModeRepaintCompleted): Removed the release that was here. |
| (-[WKFullScreenWindowController close]): Added a call to exitCompositedModeRepaintCompleted |
| here. We're as complete as we'll ever be when we're closed; we can't get the callback |
| after that point. |
| |
| 2011-05-29 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| REGRESSION (r87637): nytimes.com freezes after going back to it |
| <rdar://problem/9521928> |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): |
| Add call to setShouldNotifyAfterNextScheduledLayerFlush(false) to prevent a |
| redundant call to layerHostDidFlushLayers which would cause the layer state |
| to get out of sync with the UIProcess. |
| |
| 2011-05-29 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| REGRESSION (r86924): webkitRequestFullScreen does not work properly (black screen, can’t interact) |
| https://bugs.webkit.org/show_bug.cgi?id=61710 |
| |
| When taking the documentElement full screen, we don't create a RenderFullScreen |
| object and thus never enter accelerated compositing mode for the animation. Tell |
| the WKFullScreenWindowController to enter accelerated compositing mode anyway |
| (with an empty layer context) so as to fulfill its expectations and cause the |
| full screen animation to complete. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Added a |
| comment explaining when we expect the animation to complete. |
| (-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): |
| Remove an ASSERT which is no longer valid. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): Tell the UIProcess |
| to enter then exit full-screen mode. |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): Ditto. |
| |
| 2011-05-29 Darin Adler <darin@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Race condition in full screen controller, which leads to problem when web process crashes |
| https://bugs.webkit.org/show_bug.cgi?id=61707 |
| |
| Saw this while debugging a crash. We don't have a way to make regression tests for this |
| kind of issue at this time. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Retain the controller |
| here since we are keeping a pointer to it. |
| (exitCompositedModeRepaintCompleted): Release the controller here. |
| |
| 2011-05-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (87637): Entering WebKit Full Screen mode causes an assertion in DrawingAreaImpl::layerHostDidFlushLayers |
| https://bugs.webkit.org/show_bug.cgi?id=61706 |
| <rdar://problem/9521970> |
| |
| If we've already let the UI process know that we're in compositing mode, we just need to force a repaint. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): |
| |
| 2011-05-29 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=61700 |
| Need WebKit2 API to get the size of the render tree |
| -and corresponding- |
| <rdar://problem/9512733> |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageGetRenderTreeSize): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::renderTreeSize): |
| (WebKit::WebPageProxy::setRenderTreeSize): |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::setRenderTreeSize): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-05-29 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson and Simon Fraser. |
| |
| <rdar://problem/9519453> |
| When calling ForceRepaint on a page with accelerated compositing, we can get |
| a race condition where the UI process paints the old content, resulting in showing |
| the previous page. That happens because forceRepaint's callback waits for the next |
| repaint to happen, but nothing notifies UI process that the page is in accelerated |
| compositing mode. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): Call layerHostDidFlushLayers instead of |
| just calling forceRepaint on the layer tree host. |
| |
| 2011-05-28 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Dan Bernstein, Maciej Stachowiak. |
| |
| Denying access to your keychain on login crashes WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=61695 |
| <rdar://problem/9520570> |
| |
| Fix two sources of crashes if you hit the Deny button when WebKit2 is |
| doing HTTP authentication. |
| |
| First, SecKeychainItemRequestData::attributeList() failed to initialize the |
| length and data members of SecKeychainAttributes in the list if there was no data. |
| This caused invalid memory reads later. |
| |
| Second, returning a non-zero error from the SecKeychainItemCopyContent shim method |
| would cause a later crash in a system framework, which is not set up to handle |
| errors. Instead, we always return noErr, and allow the authentication to fail. |
| |
| Finally, paranoically initialize the SecKeychainItemContext in two places |
| to avoid uninitialized data members, and initialize length and outData |
| to 0 in secKeychainItemCopyContent() in case SecKeychainItemCopyContent() |
| fails to set them on error. |
| |
| * Shared/mac/SecKeychainItemRequestData.cpp: |
| (WebKit::SecKeychainItemRequestData::attributeList): |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::WebProcessProxy::secKeychainItemCopyContent): |
| * WebProcess/mac/KeychainItemShimMethods.mm: |
| (WebKit::webSecKeychainItemCopyContent): |
| (WebKit::webSecKeychainItemCreateFromContent): |
| |
| 2011-05-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| REGRESSION (r86578): Flash content missing from mercurynews.com |
| https://bugs.webkit.org/show_bug.cgi?id=61691 |
| <rdar://problem/9519893> |
| |
| If the plug-in doesn't have access to the toplevel URL, make sure to |
| return *something* to the plug-in. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): |
| |
| 2011-05-28 Adam Barth <abarth@webkit.org> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Audit all uses of KURL::prettyURL |
| https://bugs.webkit.org/show_bug.cgi?id=61201 |
| |
| Update callers of prettyURL to just call string. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::createPlugin): |
| * WebProcess/WebCoreSupport/qt/WebErrorsQt.cpp: |
| (WebKit::cancelledError): |
| (WebKit::blockedError): |
| |
| 2011-05-27 Stephanie Lewis <slewis@apple.com> |
| |
| Unreviewed. |
| |
| Fix a typo in the order_file flag. |
| |
| * Configurations/Base.xcconfig: |
| |
| 2011-05-27 Stephanie Lewis <slewis@apple.com> |
| |
| Rubber Stamped by Adam Roben. |
| |
| Add Order File. Use -order_file flag since it can order more of the binary. |
| |
| * Configurations/Base.xcconfig: |
| * mac/WebKit2.order: Added. |
| |
| 2011-05-27 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [CAIRO] Don't copy the surface before drawing it into the context in ShareableBitmap::paint() |
| https://bugs.webkit.org/show_bug.cgi?id=60757 |
| |
| cairo_image_surface_create_for_data() is already a shallow copy of |
| the image, so we don't need to copy it again. |
| |
| * Shared/cairo/ShareableBitmapCairo.cpp: |
| (WebKit::ShareableBitmap::paint): |
| |
| 2011-05-26 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Add a key handling logging channel for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=61588 |
| |
| Added a new LogKeyHandling channel, and logged some key events in WebPageProxy. |
| I also fixed a misspelling of coalescing in a comment in WebPageProxy.cpp. |
| |
| * Platform/Logging.cpp: |
| (WebKit::initializeLogChannelsIfNecessary): Initialize LogKeyHandling channel. |
| * Platform/Logging.h: Added LogKeyHandling channel. |
| |
| * UIProcess/WebPageProxy.cpp: Fixed misspelling of coalescing in a comment. |
| (WebKit::webKeyboardEventTypeString): Added to support logging. |
| (WebKit::WebPageProxy::handleKeyboardEvent): Log the keyboard event. |
| (WebKit::WebPageProxy::didReceiveEvent): Log the keyboard event. |
| |
| 2011-05-26 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Safari's AXFocusedUIElement attribute returns WebArea object with AXSelectedTextMarkerRange of nil |
| https://bugs.webkit.org/show_bug.cgi?id=61492 |
| |
| The method for determining which WebPage is actually focused and foreground was faulty. More |
| extensive checks are required to check which WebPage should be returned as the focusable one. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::windowIsFocused): |
| |
| 2011-05-26 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (5.0.5-Jazz): Transition to full screen video animates in wrong location when scrolled (61559) |
| https://bugs.webkit.org/show_bug.cgi?id=61559 |
| <rdar://problem/9496054> |
| |
| The CALayer that gets animated has a position that is offset by the scroll position of the web view. To |
| fix this, we set the destination location based on the rect of the full screen, and add a position |
| animation which keeps the position of the layer centered. This prevents glitches if others |
| are trying to change the layer position while the animation is running. |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: Refactor the calculation of the CALayer windowed |
| position into a private helper function, as well as the animation setup. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): |
| (WebKit::WebFullScreenManagerMac::animateFullScreen): Sets up the zoom animation, and the position offset |
| animation. |
| (WebKit::WebFullScreenManagerMac::windowedCGTransform): Calculates the placement of the windowed layer |
| in screen coordinates. |
| |
| 2011-05-26 Qi Zhang <qi.2.zhang@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| WebKitTestRunner needs layoutTestController.setAuthorAndUserStylesEnabled |
| https://bugs.webkit.org/show_bug.cgi?id=42676 |
| |
| Implemented layoutTestController.setAuthorAndUserStylesEnabled for WebKitTestRunner. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetAuthorAndUserStylesEnabled): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setAuthorAndUserStylesEnabled): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-05-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Status bar, toolbar, and menu bar checks should be in the injected bundle |
| https://bugs.webkit.org/show_bug.cgi?id=61474 |
| <rdar://problem/9468337> |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::statusBarIsVisible): Call the function on the client |
| if it exists. |
| (WebKit::InjectedBundlePageUIClient::menuBarIsVisible): Ditto. |
| (WebKit::InjectedBundlePageUIClient::toolbarsAreVisible): Ditto. |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::statusbarVisible): Add a possible short-circuit in the injected bundle. |
| (WebKit::WebChromeClient::menubarVisible): Ditto. |
| (WebKit::WebChromeClient::toolbarsVisible): Ditto. |
| |
| 2011-05-26 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 bundle missing localization subdirectories |
| https://bugs.webkit.org/show_bug.cgi?id=61512 |
| |
| Better fix for this. We just need to specify CFBundleAllowMixedLocalizations. |
| |
| * win/WebKit2WebProcess.resources/English.lproj: Removed. |
| * win/WebKit2WebProcess.resources/Info.plist: |
| * win/WebKit2WebProcess.resources/da.lproj: Removed. |
| * win/WebKit2WebProcess.resources/de.lproj: Removed. |
| * win/WebKit2WebProcess.resources/es.lproj: Removed. |
| * win/WebKit2WebProcess.resources/fi.lproj: Removed. |
| * win/WebKit2WebProcess.resources/fr.lproj: Removed. |
| * win/WebKit2WebProcess.resources/it.lproj: Removed. |
| * win/WebKit2WebProcess.resources/ja.lproj: Removed. |
| * win/WebKit2WebProcess.resources/ko.lproj: Removed. |
| * win/WebKit2WebProcess.resources/nb.lproj: Removed. |
| * win/WebKit2WebProcess.resources/nl.lproj: Removed. |
| * win/WebKit2WebProcess.resources/pl.lproj: Removed. |
| * win/WebKit2WebProcess.resources/pt.lproj: Removed. |
| * win/WebKit2WebProcess.resources/pt_PT.lproj: Removed. |
| * win/WebKit2WebProcess.resources/ru.lproj: Removed. |
| * win/WebKit2WebProcess.resources/sv.lproj: Removed. |
| * win/WebKit2WebProcess.resources/zh_CN.lproj: Removed. |
| * win/WebKit2WebProcess.resources/zh_TW.lproj: Removed. |
| |
| 2011-05-26 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 bundle missing localization subdirectories |
| https://bugs.webkit.org/show_bug.cgi?id=61512 |
| <rdar://problem/9498607> |
| |
| These lproj directories are intentionally left empty. |
| Their presence indicates that this exe is localized to this |
| set of languages. |
| |
| * win/WebKit2WebProcess.resources/English.lproj: Added. |
| * win/WebKit2WebProcess.resources/da.lproj: Added. |
| * win/WebKit2WebProcess.resources/de.lproj: Added. |
| * win/WebKit2WebProcess.resources/es.lproj: Added. |
| * win/WebKit2WebProcess.resources/fi.lproj: Added. |
| * win/WebKit2WebProcess.resources/fr.lproj: Added. |
| * win/WebKit2WebProcess.resources/it.lproj: Added. |
| * win/WebKit2WebProcess.resources/ja.lproj: Added. |
| * win/WebKit2WebProcess.resources/ko.lproj: Added. |
| * win/WebKit2WebProcess.resources/nb.lproj: Added. |
| * win/WebKit2WebProcess.resources/nl.lproj: Added. |
| * win/WebKit2WebProcess.resources/pl.lproj: Added. |
| * win/WebKit2WebProcess.resources/pt.lproj: Added. |
| * win/WebKit2WebProcess.resources/pt_PT.lproj: Added. |
| * win/WebKit2WebProcess.resources/ru.lproj: Added. |
| * win/WebKit2WebProcess.resources/sv.lproj: Added. |
| * win/WebKit2WebProcess.resources/zh_CN.lproj: Added. |
| * win/WebKit2WebProcess.resources/zh_TW.lproj: Added. |
| * win/WebKit2WebProcessPostBuild.cmd: Copy entire resources directory, exclude .svn directories. |
| * win/xcopy.excludes: Added. Excludes .svn directories. |
| |
| 2011-05-25 Qi Zhang <qi.2.zhang@nokia.com> |
| |
| Reviewed by Simon Hausmann. |
| |
| WebKitTestRunner needs layoutTestController.setPrivateBrowsingEnabled |
| https://bugs.webkit.org/show_bug.cgi?id=42697 |
| |
| Implemented layoutTestController.setPrivateBrowsingEnabled for WebKitTestRunner. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetPrivateBrowsingEnabled): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setPrivateBrowsingEnabled): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-05-25 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/9504058> Need some way to query user gesture state from injected bundle |
| |
| Add WKBundleIsProcessingUserGesture. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleIsPageBoxVisible): |
| (WKBundleIsProcessingUserGesture): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::isProcessingUserGesture): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-05-24 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Video fails to play on Vimeo |
| https://bugs.webkit.org/show_bug.cgi?id=61403 |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Added support for wkAVAssetResolvedURL and |
| wkQTMovieResolvedURL. |
| |
| 2011-05-25 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| REGRESSION (WebKit2): Crash in Flash on USA Today photo gallery |
| https://bugs.webkit.org/show_bug.cgi?id=61428 |
| <rdar://problem/9457006> |
| |
| Reviewed by Adam Roben. |
| |
| The crash occurs when Flash posts a message to a window that it |
| creates, and in processing the message, it calls NPN_Evaluate to |
| evaluate JavaScript that removes the plug-in from the page. Flash then |
| crashes when we return to Flash code. |
| |
| * Platform/WorkItem.h: |
| (DerefWorkItem::DerefWorkItem): |
| Initialize m_ptr. |
| (DerefWorkItem::execute): |
| Deref the object. |
| (WorkItem::createDeref): |
| Create and return a DerefWorkItem. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::unprotectPluginFromDestruction): |
| If the PluginView has only one reference left, deref it asynchronously. |
| |
| 2011-05-25 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| <rdar://problem/9496795> REGRESSION (r86851): Plug-ins disappear when scrolled with non-1 page scale |
| https://bugs.webkit.org/show_bug.cgi?id=61448 |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::clipRectInWindowCoordinates): Correct for page scale |
| after intersecting the two rectangles. |
| |
| 2011-05-24 Timothy Hatcher <timothy@apple.com> |
| |
| Make the Web Inspector bring the right window to the front when docked. |
| |
| rdar://problem/9464685 |
| https://webkit.org/b/61420 |
| |
| Reviewed by Brian Weinstein. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformBringToFront): Order front the parent window of the Inspector's WKView. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformBringToFront): Ditto. |
| |
| 2011-05-24 Keishi Hattori <keishi@webkit.org> |
| |
| Reviewed by Kent Tamura. |
| |
| Disable textfield implementation of <input type=color>. Add INPUT_COLOR feature flag. Add input color sanitizer. |
| https://bugs.webkit.org/show_bug.cgi?id=61273 |
| |
| * Configurations/FeatureDefines.xcconfig: Added INPUT_COLOR feature flag. |
| |
| 2011-05-24 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Update the WebProcess sandbox exceptions to silence warnings for a file that is accessed uselessly |
| https://bugs.webkit.org/show_bug.cgi?id=61349 |
| <rdar://problem/9476255> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-24 Mark Rowe <mrowe@apple.com> |
| |
| Fix the 32-bit build. |
| |
| Explicitly use uint32_t when encoding / decoding a type that is a typedef of OSType, |
| as this is declared as different underlying types in 32- and 64-bit (unsigned long |
| vs unsigned int). |
| |
| * Shared/mac/KeychainAttribute.cpp: |
| (CoreIPC::encode): |
| (CoreIPC::decode): |
| |
| 2011-05-24 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Enable coalesced wheel events |
| <rdar://problem/9444786> |
| |
| * UIProcess/WebPageProxy.cpp: |
| Flip the switch for coalescing wheel events rather than dropping them. |
| |
| 2011-05-24 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Additional sandbox extension required for quarantine database |
| <rdar://problem/9397494> |
| https://bugs.webkit.org/show_bug.cgi?id=61405 |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| Add read-data access for ~/Library/Preferences. |
| |
| 2011-05-24 Michael Saboff <msaboff@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Improve handling in WebCore of low memory situations |
| https://bugs.webkit.org/show_bug.cgi?id=61222 |
| |
| Added call to enable memory pressure handling for Mac case. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/WebProcess.h: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2011-05-24 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Part of <rdar://problem/9434311> and https://bugs.webkit.org/show_bug.cgi?id=61334 |
| Should shim a few SecKeychainItem* methods on SnowLeopard |
| |
| Initialize the KeychainItem shim on SnowLeopard: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::initializeShim): |
| |
| On SnowLeopard, shim the 4 SecKeychainItem methods: |
| * WebProcess/mac/WebProcessShim.h: |
| * WebProcess/mac/WebProcessShim.mm: |
| (WebKit::shimSecKeychainItemCopyContent): |
| (WebKit::shimSecKeychainItemCreateFromContent): |
| (WebKit::shimSecKeychainItemModifyContent): |
| (WebKit::shimSecKeychainItemFreeContent): |
| (WebKit::WebKitWebProcessKeychainItemShimInitialize): |
| |
| * WebProcess/mac/KeychainItemShimMethods.h: Added. |
| * WebProcess/mac/KeychainItemShimMethods.mm: Added. |
| Manage a set of shim-controlled AttributeList data: |
| (WebKit::shimManagedAttributeLists): |
| (WebKit::freeAttributeListContents): |
| (WebKit::allocateAttributeListContents): |
| |
| Manage a set of shim-controlled KeychainItem data: |
| (WebKit::shimManagedKeychainItemContents): |
| (WebKit::allocateKeychainItemContentData): |
| |
| Free any shim-controlled AttributeList or KeychainItem data: |
| (WebKit::webFreeAttributeListContentOnMainThread): |
| (WebKit::webFreeAttributeListContent): |
| (WebKit::webFreeKeychainItemContentOnMainThread): |
| (WebKit::webFreeKeychainItemContent): |
| |
| Marshall these 3 KeychainItem methods to the UIProcess: |
| (WebKit::webSecKeychainItemCopyContentOnMainThread): |
| (WebKit::webSecKeychainItemCopyContent): |
| (WebKit::webSecKeychainItemCreateFromContentOnMainThread): |
| (WebKit::webSecKeychainItemCreateFromContent): |
| (WebKit::webSecKeychainItemModifyContentOnMainThread): |
| (WebKit::webSecKeychainItemModifyContent): |
| (WebKit::initializeKeychainItemShim): |
| |
| Container for an AttributeList entry that knows how to encode/decode: |
| * Shared/mac/KeychainAttribute.cpp: Added. |
| (WebKit::KeychainAttribute::KeychainAttribute): |
| (CoreIPC::encode): |
| (CoreIPC::decode): |
| * Shared/mac/KeychainAttribute.h: Added. |
| |
| Container for the relevant arguments to the shimmed methods, to send to the UIProcess: |
| * Shared/mac/SecKeychainItemRequestData.cpp: Added. |
| (WebKit::SecKeychainItemRequestData::SecKeychainItemRequestData): |
| (WebKit::SecKeychainItemRequestData::initializeWithAttributeList): |
| (WebKit::SecKeychainItemRequestData::~SecKeychainItemRequestData): |
| (WebKit::SecKeychainItemRequestData::attributeList): |
| (WebKit::SecKeychainItemRequestData::encode): |
| (WebKit::SecKeychainItemRequestData::decode): |
| * Shared/mac/SecKeychainItemRequestData.h: Added. |
| (WebKit::SecKeychainItemRequestData::keychainItem): |
| (WebKit::SecKeychainItemRequestData::itemClass): |
| (WebKit::SecKeychainItemRequestData::length): |
| (WebKit::SecKeychainItemRequestData::data): |
| |
| Container for the possible output from the shimmed methods, to send back to the WebProcess: |
| * Shared/mac/SecKeychainItemResponseData.cpp: Added. |
| (WebKit::SecKeychainItemResponseData::SecKeychainItemResponseData): |
| (WebKit::SecKeychainItemResponseData::encode): |
| (WebKit::SecKeychainItemResponseData::decode): |
| * Shared/mac/SecKeychainItemResponseData.h: Added. |
| (WebKit::SecKeychainItemResponseData::itemClass): |
| (WebKit::SecKeychainItemResponseData::data): |
| (WebKit::SecKeychainItemResponseData::resultCode): |
| (WebKit::SecKeychainItemResponseData::attributes): |
| (WebKit::SecKeychainItemResponseData::keychainItem): |
| |
| Actually implement the calls to the SecKeychainItem* methods in the UIProcess: |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: |
| * UIProcess/mac/WebProcessProxyMac.mm: |
| (WebKit::WebProcessProxy::secKeychainItemCopyContent): |
| (WebKit::WebProcessProxy::secKeychainItemCreateFromContent): |
| (WebKit::WebProcessProxy::secKeychainItemModifyContent): |
| |
| * WebKit2.xcodeproj/project.pbxproj: Project file stuff |
| * Configurations/Shim.xcconfig: |
| |
| 2011-05-24 Jay Civelli <jcivelli@chromium.org> |
| |
| Rubberstamped by David Kilzer. |
| |
| Updated some files that I forgot in my previous MHTML CL. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-05-24 Sam Weinig <sam@webkit.org> |
| |
| Clean up after Geoff and fix the WebKit2 build. |
| |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h: |
| |
| 2011-05-24 Adam Roben <aroben@apple.com> |
| |
| Invalidate JSNPObjects when they are finalized |
| |
| This will cause the underlying NPObject to be released at finalization time, rather than at |
| destruction time (which is unpredictable and could occur after the plugin has been |
| unloaded). |
| |
| Test: plugins/npobject-js-wrapper-destroyed-after-plugin-unload.html |
| |
| Fixes <http://webkit.org/b/61316> <rdar://problem/9489824> Crash in deallocateNPObject when |
| reloading yahoo.com webarchive in WebKit2 |
| |
| Reviewed by Oliver Hunt. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::~JSNPObject): Assert that we've already been invalidated, rather than |
| trying to perform invalidation now (when the plugin might already be unloaded). |
| |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| (WebKit::NPRuntimeObjectMap::getOrCreateJSObject): |
| (WebKit::NPRuntimeObjectMap::invalidate): |
| Updated for m_jsNPObjects type change. |
| |
| (WebKit::NPRuntimeObjectMap::finalize): Added. Invalidates the JSNPObject and removes it |
| from the map. |
| |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h: Now inherits from WeakHandleOwner. |
| Changed m_jsNPObjects from a WeakGCMap to a HashMap of JSC::Weak objects so that we will be |
| notified when the JSNPObjects are finalized. |
| |
| 2011-05-24 Qi Zhang <qi.2.zhang@nokia.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKitTestRunner needs layoutTestController.setJavaScriptCanAccessClipboard |
| https://bugs.webkit.org/show_bug.cgi?id=42669 |
| |
| Fixes a typo issue for patch 94265. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetJavaScriptCanAccessClipboard): |
| |
| 2011-05-24 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by John Sullivan. |
| |
| WebKit tells client that the page has become unresponsive while the beforeUnloadConfirm dialog is up |
| https://bugs.webkit.org/show_bug.cgi?id=61372 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runBeforeUnloadConfirmPanel): |
| Stop the unresponsiveness timer like we do for other client functions that spin a |
| runloop. |
| |
| 2011-05-24 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Simon Hausmann. |
| |
| [WK2] Change TiledDrawingArea to use ShareableBitmap instead of UpdateChunk. |
| https://bugs.webkit.org/show_bug.cgi?id=61296 |
| |
| Pass UpdateInfo containing ShareableBitmaps instead of UpdateChunk for tile updates. |
| Only the bounds rect and bitmap handle in the UpdateInfo are used since none of the |
| other parameters are needed for TiledDrawingArea. |
| |
| * Shared/ShareableBitmap.h: |
| * Shared/qt/ShareableBitmapQt.cpp: |
| (WebKit::ShareableBitmap::createQImage): |
| (WebKit::ShareableBitmap::createGraphicsContext): |
| (WebKit::ShareableBitmap::paint): |
| * Shared/qt/UpdateChunk.cpp: Removed. |
| * Shared/qt/UpdateChunk.h: Removed. |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::didReceiveMessage): |
| (WebKit::TiledDrawingAreaProxy::waitUntilUpdatesComplete): |
| * UIProcess/TiledDrawingAreaProxy.h: |
| * UIProcess/TiledDrawingAreaTile.h: |
| * UIProcess/qt/TiledDrawingAreaProxyQt.cpp: |
| (WebKit::TiledDrawingAreaProxy::snapshotTaken): |
| * UIProcess/qt/TiledDrawingAreaTileQt.cpp: |
| (WebKit::TiledDrawingAreaTile::incorporateUpdate): |
| * WebKit2.pro: |
| * WebProcess/WebPage/TiledDrawingArea.cpp: |
| (WebKit::TiledDrawingArea::updateTile): |
| (WebKit::TiledDrawingArea::didReceiveMessage): |
| * WebProcess/WebPage/TiledDrawingArea.h: |
| * WebProcess/WebPage/qt/TiledDrawingAreaQt.cpp: |
| (WebKit::TiledDrawingArea::paintIntoBitmap): |
| |
| 2011-05-24 Brady Eidson <beidson@apple.com> |
| |
| Build fix after r87153 |
| |
| * WebProcess/mac/SecItemShimMethods.mm: Don't compile this code on SnowLeopard. |
| |
| 2011-05-23 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Part of <rdar://problem/9434311> and https://bugs.webkit.org/show_bug.cgi?id=61334 |
| Should shim a few SecKeychainItem* methods on SnowLeopard |
| |
| In preparation for different WebProcess shims depending on platform, move the current |
| shim to its own files. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::initializeShim): For non-SnowLeopard platforms, call initializeSecItemShim(). |
| |
| * WebProcess/mac/SecItemShimMethods.h: Added. |
| * WebProcess/mac/SecItemShimMethods.mm: Added. Actual webSecItem* methods moved from WebProcessMac.mm. |
| (WebKit::webSecItemCopyMatchingMainThread): |
| (WebKit::webSecItemCopyMatching): |
| (WebKit::webSecItemAddOnMainThread): |
| (WebKit::webSecItemAdd): |
| (WebKit::webSecItemUpdateOnMainThread): |
| (WebKit::webSecItemUpdate): |
| (WebKit::webSecItemDeleteOnMainThread): |
| (WebKit::webSecItemDelete): |
| (WebKit::initializeSecItemShim): Initialize the callbacks via WebKitWebProcessSecItemShimInitialize |
| |
| * WebProcess/mac/WebProcessShim.h: |
| * WebProcess/mac/WebProcessShim.mm: Wrap all the actual code here in a !BUILDING_ON_SNOW_LEOPARD block |
| (WebKit::shimSecItemCopyMatching): |
| (WebKit::shimSecItemAdd): |
| (WebKit::shimSecItemUpdate): |
| (WebKit::shimSecItemDelete): |
| (WebKit::WebKitWebProcessSecItemShimInitialize): |
| |
| 2011-05-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Cap painting to 30fps on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=61337 |
| <rdar://problem/9213388> |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::displayTimerFired): |
| |
| 2011-05-23 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (r86990:86992): World leak when all windows closed |
| https://bugs.webkit.org/show_bug.cgi?id=61311 |
| |
| Three interlocking problems: |
| |
| 1) Calling [WKView fullScreenController] will create the controller if it doesn't all ready |
| exist, so move the closing code into WKView, where we can bail early if there isn't a |
| controller. |
| |
| 2) A retain-cycle exists between WKView and WKFullScreenWindowController. Make sure to break |
| the cycle explicitly by clearing the _fullScreenWindowController ivar when closing the |
| controller. |
| |
| 3) [NSWindowController close] was overridden without calling [super close]. Do that. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView closeFullScreenWindowController]): Moved here from WebFullScreenManagerProxyMac.mm. |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController close]): Call [super close]. |
| * UIProcess/mac/WebFullScreenManagerProxyMac.mm: |
| (WebKit::WebFullScreenManagerProxy::invalidate): |
| |
| 2011-05-20 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Video looks squished when animating to full screen. |
| https://bugs.webkit.org/show_bug.cgi?id=61220 |
| |
| Instead of scaling between the client sizes of the full-screen element before and after |
| entering full-screen, scale between their content boxes. The difference is that the client |
| sizes can have different aspect ratios, and thus the animation can end up "squishing" the |
| content at one end of the animation. When animating between the two content box sizes, their |
| aspect ratios (for the case of video) are equal, so the animation will appear to scale |
| smoothly between the two states without "squishing" the content. |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): Set the destination frame |
| to be the content box of the current full screen element. |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): Ditto. |
| |
| 2011-05-23 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Terminating a WebProcess should work even while a page is being closed |
| <rdar://problem/8934632> |
| https://bugs.webkit.org/show_bug.cgi?id=61299 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::terminateProcess): |
| Change validity check to only check for process validity, since terminating the process of a page that |
| is closed or is closing is acceptable behavior. |
| |
| 2011-05-23 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| [Windows] Initial Cookie Accept Policy not set on Deserialized Storage Session. |
| https://bugs.webkit.org/show_bug.cgi?id=61255 |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Move the code to set the cookie policy before the early return that is taken when using the |
| default storage session from the UI Process. |
| Also, remove unnecessary #ifdefs (USE(CFURLSTORAGESESSIONS) is true if USE(CFNETWORK) is |
| true) and add a comment explaining the early return. |
| |
| 2011-05-23 Qi Zhang <qi.2.zhang@nokia.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.setJavaScriptCanAccessClipboard |
| https://bugs.webkit.org/show_bug.cgi?id=42669 |
| |
| Implement setJavaScriptCanAccessClipboard in WebKitTestRunner. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetJavaScriptCanAccessClipboard): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setJavaScriptCanAccessClipboard): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-05-23 Csaba Osztrogonác <ossy@webkit.org> |
| |
| [Qt][WK2] Unreviewed trivial fix after r86990. |
| |
| * WebKit2.pro: Remove UIProcess/ChunkedUpdateDrawingAreaProxy.h. |
| |
| 2011-05-23 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r86990. |
| |
| * GNUmakefile.am: Remove UpdateChunk.cpp and UpdateChunk.h. |
| |
| 2011-05-21 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=61244 |
| <rdar://problem/9482856> |
| Undo operations for a web page linger after page is destroyed |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::closePage): |
| Clear editing commands before telling UI client to close the page (this must be done |
| while the page is still in a window so its undo manager can be accessed, so waiting |
| for WebPageProxy::close() is too late). |
| |
| 2011-05-22 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Don't call WebKit::initializeLogChannelsIfNecessary if logging is disabled |
| https://bugs.webkit.org/show_bug.cgi?id=61249 |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): Check #if !LOG_DISABLED, not #ifndef NDEBUG, to decide whether to call WebKit::initializeLogChannelsIfNecessary(). |
| |
| 2011-05-21 Nancy Piedra <nancy.piedra@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt][Symbian] WKStringCopyQString function is not exported |
| https://bugs.webkit.org/show_bug.cgi?id=59285 |
| |
| A few functions were declared twice but without the export macro. |
| On Symbian, the linking failed when trying to reference these functions. |
| |
| * UIProcess/API/qt/qgraphicswkview.h: |
| |
| 2011-05-21 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Eric Carlson. |
| |
| WebKit2: fix failing fullscreen/full-screen-remove* tests. |
| https://bugs.webkit.org/show_bug.cgi?id=61027 |
| |
| * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp: |
| (WebKit::InjectedBundlePageFullScreenClient::exitFullScreenForElement): Call the |
| exit functions (was calling the enter functions). |
| |
| 2011-05-20 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| Crash in WebFullScreenManager::didExitFullScreen when closing a window in Safari. |
| https://bugs.webkit.org/show_bug.cgi?id=61228 |
| |
| Do not attempt to exit full screen if we aren't in full screen to begin with, as the WebProcess |
| won't be expecting will/didExitFullScreen notifications. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController close]): |
| |
| 2011-05-20 Andy Estes <aestes@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebView loses firstResponder status when entering full-screen mode. |
| https://bugs.webkit.org/show_bug.cgi?id=61153 |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): If |
| the WebView was a descendant of the browser window's first responder |
| when entering full-screen mode, set the full-screen window's first |
| responder to that same NSResponder. |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Do the |
| reverse of what is done in finishedEnterFullScreenAnimation:. |
| |
| 2011-05-20 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Exit full screen mode if the WebProcess crashes. |
| https://bugs.webkit.org/show_bug.cgi?id=61151 |
| |
| If the WebProcess crashes, exit full-screen mode to avoid getting stuck. Move the |
| WebFullScreenManagerProxy::invalidate() implementation into the platform-specific |
| files, and have them close their respective platform's full-screen window. |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp: |
| (WebKit::WebFullScreenManagerProxy::invalidate): Added. Copied from main implementation. |
| * UIProcess/mac/WKFullScreenWindowController.h: |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController close]): Added. |
| * UIProcess/mac/WebFullScreenManagerProxyMac.mm: |
| (WebKit::WebFullScreenManagerProxy::invalidate): Added. |
| * UIProcess/win/WebFullScreenManagerProxyWin.cpp: |
| (WebKit::WebFullScreenManagerProxy::invalidate): Added. |
| |
| 2011-05-20 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Remove the chunked update drawing area |
| https://bugs.webkit.org/show_bug.cgi?id=61216 |
| |
| The chunked update drawing area is no longer used in any port, so remove all traces of it. |
| |
| Qt still uses UpdateChunks for the tiled drawing area so keep the Shared/qt/UpdateChunk.* classes for now. |
| |
| * GNUmakefile.am: |
| * Shared/DrawingAreaInfo.h: |
| * Shared/gtk/UpdateChunk.cpp: Removed. |
| * Shared/gtk/UpdateChunk.h: Removed. |
| * Shared/mac/UpdateChunk.cpp: Removed. |
| * Shared/mac/UpdateChunk.h: Removed. |
| * Shared/win/UpdateChunk.cpp: Removed. |
| * Shared/win/UpdateChunk.h: Removed. |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: Removed. |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Removed. |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: Removed. |
| * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: Removed. |
| * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: Removed. |
| * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: Removed. |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::paint): |
| (WebKit::WebView::createDrawingAreaProxy): |
| (WebKit::WebView::enterAcceleratedCompositingMode): |
| (WebKit::WebView::exitAcceleratedCompositingMode): |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: Removed. |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: Removed. |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): |
| * WebProcess/WebPage/mac/ChunkedUpdateDrawingAreaMac.cpp: Removed. |
| * WebProcess/WebPage/qt/ChunkedUpdateDrawingAreaQt.cpp: Removed. |
| * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: Removed. |
| * win/WebKit2.vcproj: |
| |
| 2011-05-20 Matthew Delaney <mdelaney@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| Default min DOM Timer interval is not set soon enough for first page to pick it up in WK2 |
| https://bugs.webkit.org/show_bug.cgi?id=61215 |
| |
| * WebProcess/WebPage/WebPage.cpp: Simply moving the DOM min timer interval setting to before the first page creation. |
| |
| 2011-05-20 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| numberOfActiveAnimations() can include animations from documents in the page cache |
| https://bugs.webkit.org/show_bug.cgi?id=53641 |
| |
| Pass the Frame's document as the one to count animations on. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::numberOfActiveAnimations): |
| |
| 2011-05-20 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKitTestRunner needs layoutTestController.pauseTransitionAtTimeOnElementWithId |
| https://bugs.webkit.org/show_bug.cgi?id=42550 |
| |
| Plumb through methods to pause a transition of a given property on an element. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFramePauseAnimationOnElementWithId): |
| (WKBundleFramePauseTransitionOnElementWithId): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::pauseTransitionOnElementWithId): |
| * WebProcess/WebPage/WebFrame.h: |
| |
| 2011-05-20 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Media files cannot be saved in the Application Cache due to a sandbox violation |
| https://bugs.webkit.org/show_bug.cgi?id=61199 |
| |
| Instead of using a sandbox extension to give permission to the application cache directory, |
| initialize the sandbox with access to it like we do for other databases. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::ensureWebProcess): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/com.apple.WebProcess.sb: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::initializeSandbox): |
| |
| 2011-05-20 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Win: non-full-screen content is briefly seen when entering full-screen mode (and vice versa) |
| https://bugs.webkit.org/show_bug.cgi?id=61108 |
| |
| When the fullScreenController asks us to repaint, make an async repaint request, and when the |
| callback is fired, notify the fullScreenController that repaint has completed. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::fullScreenClientForceRepaintCompleted): Added. |
| (WebKit::WebView::fullScreenClientForceRepaint): Added. |
| * UIProcess/win/WebView.h: |
| |
| 2011-05-19 Adam Roben <aroben@apple.com> |
| |
| Don't try to process DownloadProxy messages twice (and robustify code that runs if we do) |
| |
| Fixes <http://webkit.org/b/61142> <rdar://problem/9471680> REGRESSION (r86812): Crash |
| (preceded by assertion) in fastMalloc when downloading a file |
| |
| Reviewed by Darin Adler. |
| |
| * Platform/CoreIPC/ArgumentDecoder.cpp: |
| (CoreIPC::alignedBufferIsLargeEnoughToContain): Added. This helper function checks that the |
| given buffer is large enough to hold |size| bytes (and correctly handles the case where |
| we're already at the end or beyond the end of the buffer). |
| |
| (CoreIPC::ArgumentDecoder::alignBufferPosition): |
| (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain): |
| Replaced old code that was vulnerable to underflow with the new helper function. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): Added back an early return that was |
| mistakenly removed in r86812 so that we don't mistakenly pass DownloadProxy messages on to |
| a WebPageProxy after we've already handled them. |
| |
| 2011-05-19 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Flashing when entering and exiting full screen mode |
| https://bugs.webkit.org/show_bug.cgi?id=56957 |
| |
| In the WKFullscreenWindowController, when exiting accelerated compositing mode, |
| force a repaint, and don't actually remove the animation layer until the repaint |
| completes. Also, move back to parenting the WebView in a layer-backed view, and |
| work around the SnowLeopard bug which causes a crash in those situations. We no |
| longer need to do a bunch of work in finishedEnterFullScreenAnimation, because |
| the animation layer is "hiding" all the drawing happening in the webView underneath. |
| |
| In the WebFullScreenManagerMac, when asked to tear down the root layer, instead |
| remove all its children, and set its contents to a flattened image of the full |
| screen element and its children. This helps patch over the time where everything |
| is re-rendering and helps give the appearance of continuousness in the animation. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): |
| (-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): |
| (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): |
| (-[WKFullScreenWindowController exitCompositedModeRepaintCompleted]): |
| (exitCompositedModeRepaintCompleted): |
| (-[WKFullScreenWindowController _page]): |
| (-[WKFullScreenWindowController _manager]): |
| (-[WKFullScreenWindow initWithContentRect:styleMask:backing:defer:]): |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): |
| |
| 2011-05-19 Anders Carlsson <andersca@apple.com> |
| |
| Address a review comment by Sam Weinig. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::didUpdateHistoryTitle): |
| |
| 2011-05-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Hang UI appears when WebProcess isn't running |
| https://bugs.webkit.org/show_bug.cgi?id=61147 |
| <rdar://problem/9413683> |
| |
| This fixes two bugs: |
| |
| 1. The HistoryClient related message handlers in WebContext could get invoked for pages that have been closed, |
| and thus didn't have any subframes. Since we have a MESSAGE_CHECK that checks that the frame exists, we'd |
| mark the currently dispatched message as invalid, which would end up calling Connection::Client::didReceiveInvalidMessage. |
| Fix this by checking that the page exists first. |
| |
| 2. In the call to WebProcessProxy::didReceiveInvalidMessage we'd first invalidate the CoreIPC connection to make sure |
| that we won't get any further messages from this connection. We'd then go ahead and terminate the web process, |
| but because we've already invalidated the CoreIPC connection we would never get the Connection::Client::didClose |
| callback that would call WebPageProxy::processDidCrash. Fix this by explicitly calling WebProcessProxy::didClose. |
| Also, add logging when we receive an invalid message |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::didNavigateWithNavigationData): |
| (WebKit::WebContext::didPerformClientRedirect): |
| (WebKit::WebContext::didPerformServerRedirect): |
| (WebKit::WebContext::didUpdateHistoryTitle): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveInvalidMessage): |
| |
| 2011-05-19 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Crash when detaching Web Inspector when parent is in process of closing. |
| https://bugs.webkit.org/show_bug.cgi?id=61141 |
| <rdar://problem/9470027> |
| |
| We were trying to send a WM_SIZE to a window that was in the process of closing. Switch |
| to using PostMessage, so the window will finish closing, and then it won't need to |
| process the WM_SIZE message anymore. |
| |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformAttach): Call PostMessage instead of SendMessage. |
| (WebKit::WebInspectorProxy::platformDetach): Ditto. |
| |
| 2011-05-19 Robert Hogan <robert@webkit.org> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] Fix plugins/windowless_plugin_paint_test.html |
| |
| Call gdk_init_check before gdk_display_get_default(). |
| If we don't do this, gdk_display_get_default() will hang |
| the next time it's called. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::getPluginDisplay): |
| |
| 2011-05-18 Chris Marrin <cmarrin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Plug-ins at YouTube, cnn.com, nytimes vanish when their top/left is scrolled out of view when zoomed |
| https://bugs.webkit.org/show_bug.cgi?id=61101 |
| |
| Scale both bounding boxes sent to m_plugin->geometryDidChange(), not just the frameRect. This fools |
| the plugin into thinking it is drawing into an unscaled box with an unscaled view even when scaled. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::frame):Made this const so it can be used in clipRectInWindowCoordinates() |
| (WebKit::PluginView::viewGeometryDidChange):Used IntRect::scale() rather than scaling by hand |
| (WebKit::PluginView::clipRectInWindowCoordinates):Added scale of clipRect. |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2011-05-19 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Fix build with ENABLE_PLUGIN_PROCESS=1 for non-mac platforms after r86578 |
| https://bugs.webkit.org/show_bug.cgi?id=61113 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): |
| (WebKit::PluginControllerProxy::tryToShortCircuitEvaluate): |
| |
| 2011-05-19 Philippe Normand <pnormand@igalia.com> |
| |
| Unreviewed, follow-up fix of the messages python unittests after r86812. |
| |
| [WebKit2] handleMessageDelayed leaks replyEncoder if decoding fails |
| https://bugs.webkit.org/show_bug.cgi?id=60872 |
| |
| * Scripts/webkit2/messages_unittest.py: |
| |
| 2011-05-18 Brady Eidson <beidson@apple.com> |
| |
| As originally reviewed by Anders Carlsson. |
| |
| <rdar://problem/9457633> and https://bugs.webkit.org/show_bug.cgi?id=61009 |
| Processes spawned by SnowLeopard's WebProcess attempt to install WebKit2 shims. |
| |
| Restore r86797 to how it was supposed to be using the appropriate #ifdef, |
| reverting the temporary r86814 in the process. |
| |
| The #ifdef is BUILDING_ON_SNOW_LEOPARD, not BUILDING_ON_SNOWLEOPARD! |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): |
| |
| 2011-05-18 Brady Eidson <beidson@apple.com> |
| |
| Fix the WK2 SnowLeopard layouttests (again) until I can explore on a SnowLeopard machine tomorrow. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): |
| |
| 2011-05-18 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| [WebKit2] handleMessageDelayed leaks replyEncoder if decoding fails |
| https://bugs.webkit.org/show_bug.cgi?id=60872 |
| |
| Eliminate the concept of SyncReplyMode and instead hand around ownership |
| of the reply decoder using an OwnPtr. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::dispatchSyncMessage): Eliminated comments that say |
| the same things the code itself does. Removed code that handles the |
| reply mode. Instead, pass the OwnPtr to the message handling function and |
| make the call to sendSyncReply conditional on whether the reply encoder |
| is still non-null. |
| |
| * Platform/CoreIPC/Connection.h: Removed SyncReplyMode. Made |
| didReceiveSyncMessage return void, and take OwnPtr<ArgumentEncoder>& for |
| the reply encoder. |
| |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::handleMessageDelayed): Take an OwnPtr&. Replaced the call to |
| adoptPtr with a call to release. |
| |
| * PluginProcess/PluginControllerProxy.h: Updated to take an OwnPtr& and |
| not return SyncReplyMode. |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::didReceiveSyncMessage): Ditto. |
| * PluginProcess/WebProcessConnection.h: Ditto. |
| |
| * Scripts/webkit2/messages.py: Updated for changes to sync messages. |
| Eliminated unneeded return types and use get() when apporopriate to call |
| the handleMessage functions. |
| |
| * Scripts/webkit2/messages_unittest.py: Tried to update this too. |
| I don't know how to run the test, though. |
| |
| * Shared/Plugins/NPObjectMessageReceiver.h: Updated to take an OwnPtr& and |
| not return SyncReplyMode. |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| (WebKit::NPRemoteObjectMap::didReceiveSyncMessage): Ditto. |
| * Shared/Plugins/NPRemoteObjectMap.h: Ditto. |
| * UIProcess/Downloads/DownloadProxy.h: Ditto. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::didReceiveSyncMessage): Ditto. |
| * UIProcess/WebContext.h: Ditto. |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| (WebKit::WebFullScreenManagerProxy::didReceiveSyncMessage): Ditto. |
| * UIProcess/WebFullScreenManagerProxy.h: Ditto. |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::didReceiveSyncMessage): Ditto. |
| * UIProcess/WebIconDatabase.h: Ditto. |
| * UIProcess/WebInspectorProxy.h: Ditto. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveSyncMessage): Ditto. |
| * UIProcess/WebPageProxy.h: Ditto. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): Ditto. |
| * UIProcess/WebProcessProxy.h: Ditto. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: Added a missing include. |
| |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::didReceiveSyncMessage): Updated to take |
| an OwnPtr& and not return SyncReplyMode. |
| * WebProcess/Plugins/PluginProcessConnection.h: Ditto. |
| * WebProcess/Plugins/PluginProxy.h: Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didReceiveSyncMessage): Ditto. |
| * WebProcess/WebPage/WebPage.h: Ditto. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveSyncMessage): Ditto. |
| * WebProcess/WebProcess.h: Ditto. |
| |
| 2011-05-18 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WK2: VoiceOver cannot move focus into a web area programmatically |
| https://bugs.webkit.org/show_bug.cgi?id=60661 |
| |
| Add a makeFirstResponder method that will bring focus to the widget view within the UI |
| process. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::makeFirstResponder): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::makeFirstResponder): |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::makeFirstResponder): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-05-18 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| <rdar://problem/9457633> and https://bugs.webkit.org/show_bug.cgi?id=61009 |
| Processes spawned by SnowLeopard's WebProcess attempt to install WebKit2 shims. |
| |
| * Platform/unix/EnvironmentUtilities.cpp: Remove an unnecessary #include, as reviewed. |
| |
| 2011-05-17 Timothy Hatcher <timothy@apple.com> |
| |
| Update the the context menu to reflect the system search provider on Mac. |
| |
| <rdar://problem/9198419> |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: |
| (WebKit::WebContextMenuClient::searchWithGoogle): Add a FIXME about using NSPerformService on Mac. |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Added CopyDefaultSearchProviderDisplayName. |
| |
| 2011-05-18 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| <rdar://problem/9457633> and https://bugs.webkit.org/show_bug.cgi?id=61009 |
| Processes spawned by SnowLeopard's WebProcess attempt to install WebKit2 shims. |
| |
| If the WebProcess or PluginProcess forks, it shouldn't pass WebKit2 shims along to the new process |
| in the DYLD_INSERT_LIBRARIES environment variable. |
| |
| Add Environment Utilities helper to strip unwanted values from an environment variable: |
| * Platform/unix/EnvironmentUtilities.cpp: Added. |
| (WebKit::EnvironmentUtilities::stripValuesEndingWithString): |
| * Platform/unix/EnvironmentUtilities.h: Added. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| Strip PluginProcessShim.dylib from DYLD_INSERT_LIBRARIES: |
| * PluginProcess/mac/PluginProcessMainMac.mm: |
| (WebKit::PluginProcessMain): |
| |
| Strip WebProcessShim.dylib from DYLD_INSERT_LIBRARIES: |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): |
| |
| Unprotect SnowLeopard now that it will behave and not spawn processes trying to use WebKit2 shims: |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): |
| |
| 2011-05-18 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Crash in injected bundle client |
| https://bugs.webkit.org/show_bug.cgi?id=61086 |
| |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::shouldRubberBandInDirection): Check for existence of method in client prior to calling. |
| |
| 2011-05-18 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Remove usage of ChunkedUpdateDrawingArea. |
| https://bugs.webkit.org/show_bug.cgi?id=60901 |
| |
| To prepare for the eventual removal of the ChunkedUpdateDrawingArea, |
| make QGraphicsWKView's "Simple" backing store type map to DrawingAreaImpl. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::createDrawingAreaProxy): |
| |
| 2011-05-18 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Don't lie about supporting accelerated compositing. |
| https://bugs.webkit.org/show_bug.cgi?id=61054 |
| |
| Until we have an implementation of LayerTreeHost, we shouldn't lie about it. |
| |
| * WebKit2.pro: |
| * WebProcess/WebPage/LayerTreeHost.h: |
| * WebProcess/WebPage/qt/LayerTreeHostQt.cpp: Added. |
| (WebKit::LayerTreeHost::supportsAcceleratedCompositing): |
| |
| 2011-05-17 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Exiting full screen will leave up invisible full-screen window, blocking all mouse clicks. |
| https://bugs.webkit.org/show_bug.cgi?id=60982 |
| |
| The GraphicsLayer tree has unparented m_fullScreenRootLayer behind our backs, replacing the |
| tiled layer with a normal one. Instead of holding on to a specific layer, assume that the |
| w_rootLayer will only have 0 or 1 children, and if a child is present, then that is our full- |
| screen layer. |
| |
| Additionally, check to see if the animating layer's presentationLayer is nil |
| before calling it; asking a nil object for a CATransform3D will give back a struct full of |
| garbage. |
| |
| In WKFullScreenWindowController, when the exit animation completes, ignore the "completed" |
| parameter. This eliminates the possibility that the full screen window will end up left |
| on top of the screen if the animation is cancelled and a enter full screen animation isn't |
| forthcoming. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): |
| |
| 2011-05-17 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Alice Liu. |
| |
| <rdar://problem/9458300> REGRESSION (r86724): Repro crash loading any webpage in WebKit2 on SnowLeopard |
| https://bugs.webkit.org/show_bug.cgi?id=61022 |
| |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): As long as we are not loading the shim on Snow Leopard, we should not |
| try to initialize it. |
| |
| 2011-05-17 Brady Eidson <beidson@apple.com> |
| |
| Rubberstamped by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=60595 |
| Fix the rampant WebProcess crashing because we're trying to install the WebProcess shim |
| into QTKitServer when we launch it. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): This is only happening on SnowLeopard, so put |
| SnowLeopard build guards around the shim install path. |
| |
| 2011-05-17 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r86668. |
| http://trac.webkit.org/changeset/86668 |
| https://bugs.webkit.org/show_bug.cgi?id=61001 |
| |
| It made 52 tests crash on Qt WK2 bot (Requested by Ossy on |
| #webkit). |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::createDrawingAreaProxy): |
| |
| 2011-05-17 Brian Weinstein <bweinstein@apple.com> |
| |
| Build fix after r86717. |
| |
| * UIProcess/API/C/win/WKView.h: Add a forward declaration of IDropTarget |
| |
| 2011-05-17 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Needs API to set a custom drop target |
| https://bugs.webkit.org/show_bug.cgi?id=60991 |
| <rdar://problem/9090868> |
| |
| Add API to set a custom drop target on a WKView. |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewSetCustomDropTarget): Call through to WebView::setCustomDropTarget. |
| * UIProcess/API/C/win/WKView.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::setCustomDropTarget): Revoke the current drop target, and register the |
| custom one. |
| * UIProcess/win/WebView.h: |
| |
| 2011-05-17 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Add API to determine if a frame has any form elements without going to javascript |
| https://bugs.webkit.org/show_bug.cgi?id=60999 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameContainsAnyFormElements): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::containsAnyFormElements): |
| * WebProcess/WebPage/WebFrame.h: |
| Add WKBundleFrameContainsAnyFormElements which does a walk of the document to determine |
| if there are any form elements. |
| |
| 2011-05-17 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Initial support for favicons. |
| https://bugs.webkit.org/show_bug.cgi?id=58937 |
| |
| Add the following API to QWKContext: |
| |
| - void setIconDatabasePath(QString) |
| - void iconChangedForPageURL(QUrl) [signal] |
| - QIcon iconForPageURL(QUrl) |
| |
| This is mostly analogous to the QWebSettings/QWebFrame icon API we had in WebKit1. |
| |
| * UIProcess/API/qt/ClientImpl.h: Added WKIconDatabaseClient methods. |
| |
| * UIProcess/API/qt/ClientImpl.cpp: |
| (toQWKContext): Helper to cast from "void* clientInfo" to a QWKContext*. |
| (qt_wk_didChangeIconForPageURL): Emits QWKContext::iconChangedForPageURL(QUrl). |
| (qt_wk_didRemoveAllIcons): Stub. |
| |
| * UIProcess/API/qt/qwkcontext.h: |
| * UIProcess/API/qt/qwkcontext_p.h: |
| * UIProcess/API/qt/qwkcontext.cpp: |
| (QWKContextPrivate::QWKContextPrivate): Set up and register a WKIconDatabaseClient. |
| (QWKContext::QWKContext): Minor refactor to avoid code duplication in constructors. |
| (QWKContext::setIconDatabasePath): Exactly what it sounds like. |
| (QWKContext::iconForPageURL): Retrieves the favicon for a given page URL as a QIcon. |
| |
| * WebKit2API.pri: Add WKIconDatabase.cpp and WKIconDatabase.h to build. |
| |
| 2011-05-17 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Part 4 of <rdar://problem/8814289> and https://bugs.webkit.org/show_bug.cgi?id=60595 |
| Mac WebKit2 WebProcess needs a shim to make prompts appear to be from the UIProcess |
| |
| This patch actually hooks up the shim to the WebProcess shim callbacks, which messages these |
| 4 calls up to the UIProcess and returns the result. |
| |
| Note that this patch uncovered the fact that CoreIPC can't sync message out from a secondary thread, |
| so I filed https://bugs.webkit.org/show_bug.cgi?id=60975 as a followup to allow that. |
| |
| * Shared/mac/SecItemResponseData.cpp: |
| (WebKit::SecItemResponseData::SecItemResponseData): Reorder the constructor arguments to be |
| a little cleaner. |
| * Shared/mac/SecItemResponseData.h: |
| |
| Call the shim callbacks for each method: |
| * WebProcess/mac/WebProcessShim.mm: |
| (WebKit::shimSecItemCopyMatching): |
| (WebKit::shimSecItemAdd): |
| (WebKit::shimSecItemUpdate): |
| (WebKit::shimSecItemDelete): |
| |
| Implement the shim callbacks, which each marshall to the main thread, which then calls out to CoreIPC: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebSecItemCopyMatchingMainThread): |
| (WebKit::WebSecItemCopyMatching): |
| (WebKit::WebSecItemAddOnMainThread): |
| (WebKit::WebSecItemAdd): |
| (WebKit::WebSecItemUpdateOnMainThread): |
| (WebKit::WebSecItemUpdate): |
| (WebKit::WebSecItemDeleteOnMainThread): |
| (WebKit::WebSecItemDelete): |
| |
| Add the 4 messages and their implementations in the UIProcess: |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: |
| * UIProcess/mac/WebProcessProxyMac.mm: Added. |
| (WebKit::WebProcessProxy::secItemCopyMatching): |
| (WebKit::WebProcessProxy::secItemAdd): |
| (WebKit::WebProcessProxy::secItemUpdate): |
| (WebKit::WebProcessProxy::secItemDelete): |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-05-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Incomplete page painting at dropbox.com |
| https://bugs.webkit.org/show_bug.cgi?id=60974 |
| <rdar://problem/9448213> |
| |
| When we're exiting compositing mode and haven't sent an EnterAcceleratedCompositingMode |
| message to the UI process, we still need to send the updated bits to the ui process. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| |
| 2011-05-17 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Part 3 of <rdar://problem/8814289> and https://bugs.webkit.org/show_bug.cgi?id=60595 |
| Mac WebKit2 WebProcess needs a shim to make prompts appear to be from the UIProcess |
| |
| Add CoreIPC stuff we'll need to marshall the SecItem calls to the UIProcess and back. |
| |
| Teach ArgumentCodersCF about CFDateRef, SecKeychainItemRef, and generic CFTypeRefs: |
| * Shared/cf/ArgumentCodersCF.cpp: |
| (CoreIPC::typeFromCFTypeRef): |
| (CoreIPC::encode): |
| (CoreIPC::decode): |
| * Shared/cf/ArgumentCodersCF.h: |
| |
| Serializable object that contains the query CFDictionaryRef and optionally the |
| "attributesToMatch" CFDictionaryRef: |
| * Shared/mac/SecItemRequestData.cpp: Added. |
| (WebKit::SecItemRequestData::SecItemRequestData): |
| (WebKit::SecItemRequestData::encode): |
| (WebKit::SecItemRequestData::decode): |
| * Shared/mac/SecItemRequestData.h: Added. |
| (WebKit::SecItemRequestData::query): |
| (WebKit::SecItemRequestData::attributesToMatch): |
| |
| Serializable object that returns an OSStatus and optionally a "result object" CFTypeRef: |
| * Shared/mac/SecItemResponseData.cpp: Added. |
| (WebKit::SecItemResponseData::SecItemResponseData): |
| (WebKit::SecItemResponseData::encode): |
| (WebKit::SecItemResponseData::decode): |
| * Shared/mac/SecItemResponseData.h: Added. |
| (WebKit::SecItemResponseData::resultObject): |
| (WebKit::SecItemResponseData::resultCode): |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-05-17 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Part 2 of <rdar://problem/8814289> and https://bugs.webkit.org/show_bug.cgi?id=60595 |
| Mac WebKit2 WebProcess needs a shim to make prompts appear to be from the UIProcess |
| |
| Hookup some of the methods we plan to shim in the patch, but just have them call through |
| to the actual implementations for now. |
| |
| Also stub-out the future shimmed versions of the methods. |
| |
| * WebProcess/mac/WebProcessShim.h: Add the methods to the shim callbacks. |
| * WebProcess/mac/WebProcessShim.mm: |
| (WebKit::shimSecItemCopyMatching): Call through to the actual function for now. |
| (WebKit::shimSecItemAdd): Ditto. |
| (WebKit::shimSecItemUpdate): Ditto. |
| (WebKit::shimSecItemDelete): Ditto. |
| (WebKit::WebKitWebProcessShimInitialize): Copy over the shim callbacks. |
| * WebKit2.xcodeproj/project.pbxproj: Link the shim to required frameworks. |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebSecItemCopyMatching): Add placeholders for the future to-be-shimmed functions. |
| (WebKit::WebSecItemAdd): Ditto. |
| (WebKit::WebSecItemUpdate): Ditto. |
| (WebKit::WebSecItemDelete): Ditto. |
| (WebKit::WebProcess::initializeShim): Pass along those placeholders to the shim initializer. |
| |
| 2011-05-17 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Part 1 of <rdar://problem/8814289> and https://bugs.webkit.org/show_bug.cgi?id=60595 |
| Mac WebKit2 WebProcess needs a shim to make prompts appear to be from the UIProcess |
| |
| Add am empty shim for a new WebProcess shim and install it at launch. |
| |
| Use the same Shim.xcconfig for both the web and plugin processes: |
| * Configurations/PluginProcessShim.xcconfig: Removed. |
| * Configurations/Shim.xcconfig: Copied from Configurations/PluginProcessShim.xcconfig. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| * WebProcess/WebProcess.h: Add initializeShim() for Mac-only |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::initializeShim): Initialize the (empty) shim callbacks. |
| |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): Call initializeShim() |
| |
| * WebProcess/mac/WebProcessShim.h: Added. |
| * WebProcess/mac/WebProcessShim.mm: Added. |
| (WebKit::WebKitWebProcessShimInitialize): Empty for now. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): Install the Plugin Process shim for plugin processes |
| and the WebProcess shim for the web content process. |
| |
| 2011-05-17 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Loose end from fix for https://bugs.webkit.org/show_bug.cgi?id=60938 |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Made new header file "private" instead of "project" so clients can access it. |
| |
| 2011-05-17 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Remove usage of ChunkedUpdateDrawingArea. |
| https://bugs.webkit.org/show_bug.cgi?id=60901 |
| |
| To prepare for the eventual removal of the ChunkedUpdateDrawingArea, |
| make QGraphicsWKView's "Simple" backing store type map to DrawingAreaImpl. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::createDrawingAreaProxy): |
| |
| 2011-05-16 Martin Robinson <mrobinson@igalia.com> |
| |
| Take another shot at fixing the WinCairo build. |
| |
| * Shared/cairo/LayerTreeContextCairo.cpp: Include NotImplemented.h using a framework include. |
| |
| 2011-05-16 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Jon Honeycutt. |
| |
| Add access to process pid in WebKit2 API |
| https://bugs.webkit.org/show_bug.cgi?id=60938 |
| |
| * UIProcess/API/C/mac/WKPagePrivateMac.cpp: Added. |
| (WKPageGetProcessIdentifier): |
| * UIProcess/API/C/mac/WKPagePrivateMac.h: Added. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::processIdentifier): |
| * UIProcess/WebPageProxy.h: |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add WKPageGetProcessIdentifier as SPI for the mac. |
| |
| 2011-05-16 Martin Robinson <mrobinson@igalia.com> |
| |
| Add file missing from my previous commit. |
| |
| * Shared/cairo/LayerTreeContextCairo.cpp: Added. |
| |
| 2011-05-16 Martin Robinson <martin.james.robinson@gmail.com> |
| |
| Try to fix the WinCairo build after r86612. |
| |
| Move the LayerTreeContextGtk.cpp stub to LayerTreeContextCairo.cpp and add |
| it to the WinCairo build. |
| |
| * GNUmakefile.am: Update the source list. |
| * Shared/cairo/LayerTreeContextCairo.cpp: Renamed from Source/WebKit2/Shared/gtk/LayerTreeContextGtk.cpp. |
| * win/WebKit2.vcproj: Update the source list. |
| |
| 2011-05-16 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| [GTK] [WebKit2] Provide a fast version of the backing store for X11 |
| https://bugs.webkit.org/show_bug.cgi?id=60912 |
| |
| Instead of allocating the backing store surface directly in WebKit2, |
| instantiate the GtkWidgetBackingStore class which abstracts away the |
| platform-specific details of maintaining the backing store. |
| |
| * UIProcess/BackingStore.h: |
| * UIProcess/gtk/BackingStoreGtk.cpp: |
| (WebKit::BackingStore::paint): Call into GtkWidgetBackingStore to get the Cairo surface now. |
| (WebKit::BackingStore::incorporateUpdate): Ditto. |
| (WebKit::BackingStore::scroll): Call into GtkWidgetBackingStore to do the actual backing store scroll. |
| |
| 2011-05-16 Chris Marrin <cmarrin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Plug-in hit testing is broken after zooming |
| https://bugs.webkit.org/show_bug.cgi?id=60916 |
| |
| Construct a WebMouseEvent to send to plugin, adjusting values to take pageScaleFactor |
| into account. Also adjusted bounds sent to viewGeometryDidChange to take pageScaleFactor |
| into account. Both are needed or the plugin will think the mouse positions are outside |
| its bounds. |
| |
| * Shared/WebEvent.h: |
| * Shared/WebMouseEvent.cpp:Add ctor to clone a WebMouseEvent and add a scaleFactor to values |
| (WebKit::WebMouseEvent::WebMouseEvent): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::handleEvent):Adjust mouse coords to take pageScaleFactor into account |
| (WebKit::PluginView::viewGeometryDidChange):Adjust bounds to take pageScaleFactor into account |
| |
| 2011-05-16 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| GTK port of WebKit2 should switch to new DrawingAreaImpl model |
| https://bugs.webkit.org/show_bug.cgi?id=59655 |
| |
| * GNUmakefile.am: Add the files necessary to use the DrawingAreaProxyImpl |
| to the source list. The source list also needs the LayerContextTree stubs. |
| * Shared/LayerTreeContext.h: This file should not be guarded by |
| USE(ACCELERATED_COMPOSITING) as it's needed for the DrawingAreaProxyImpl |
| IPC messaging. |
| * Shared/gtk/LayerTreeContextGtk.cpp: Added this stub. |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::createDrawingAreaProxy): Instead of creating the deprecated |
| chunked drawing area, create a DrawingAreaProxyImpl. |
| (WebKit::PageClientImpl::setViewNeedsDisplay): Here we must now queue a redraw. Previously |
| the chunked drawing area was doing this manually. This is the appropriate place though. |
| (WebKit::PageClientImpl::scrollView): Add an implementation that just calls into setViewNeedsDisplay. |
| * UIProcess/API/gtk/PageClientImpl.h: Added a getter for m_viewWidget. |
| (WebKit::PageClientImpl::viewWidget): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (callDrawingAreaPaintMethod): Added this helper which reduces code duplication between |
| GTK+ 2.x and 3.x |
| (webkitWebViewBaseExpose): Call the new helper now. |
| (webkitWebViewBaseDraw): Ditto. |
| * UIProcess/BackingStore.h: Updated to include GTK+ specific types. |
| * UIProcess/DrawingAreaProxy.h: Ditto. |
| * UIProcess/DrawingAreaProxy.messages.in: Do not the DrawingAreaProxyImpl-specific |
| message with USE(ACCELERATED_COMPOSITING). |
| * UIProcess/WebPageProxy.cpp: Removed these guards, as DrawingAreProxyImpl is used on all platforms now. |
| (WebKit::WebPageProxy::didReceiveMessage): Ditto. |
| * UIProcess/WebPageProxy.h: Ditto. |
| * UIProcess/gtk/BackingStoreGtk.cpp: Added. This implementation heavily uses Cairo, |
| but depends on GTK+/GDK in a few places. |
| (WebKit::BackingStore::paint): |
| (WebKit::BackingStore::incorporateUpdate): |
| (WebKit::BackingStore::scroll): |
| * UIProcess/gtk/WebPageProxyGtk.cpp: Added a getting for the viewWidget, which is |
| required by BackingStoreGtk. A similar getter exists for Windows and Mac. |
| (WebKit::WebPageProxy::viewWidget): Ditto. |
| * WebProcess/WebPage/DrawingArea.cpp: Removed these guards as DrawingAreaProxyImpl is used on all platforms now. |
| (WebKit::DrawingArea::create): Ditto. |
| * WebProcess/WebPage/DrawingArea.h: Ditto. |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): Do not guard |
| this DrawingAreaProxyImpl-specific message with USE(ACCELERATED_COMPOSITING) |
| * WebProcess/WebPage/WebPage.cpp: Removed these guards as DrawingAreaProxyImpl is used on all platforms now. |
| (WebKit::WebPage::didReceiveMessage): Ditto. |
| |
| 2011-05-16 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Sandbox denies Kerberos authentication |
| https://bugs.webkit.org/show_bug.cgi?id=60921 |
| <rdar://problem/9133872> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-16 David Kilzer <ddkilzer@apple.com> |
| |
| <http://webkit.org/b/60913> C++ exceptions should not be enabled when building with llvm-gcc-4.2 |
| <rdar://problem/9446430> |
| |
| Reviewed by Mark Rowe. |
| |
| * Configurations/Base.xcconfig: Fixed typo. |
| |
| 2011-05-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| If the root compositing layer changes while we're about to exit compositing mode, make sure to enter compositing mode |
| https://bugs.webkit.org/show_bug.cgi?id=60905 |
| <rdar://problem/9365574> |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::setRootCompositingLayer): |
| If we have a layer tree host, but haven't yet sent a EnterAcceleratedCompositingMode message (this can happen |
| when quickly going in and out of compositing mode), make sure to schedule a notification when the layer tree host |
| does it next flush. This will end up sending the EnterAcceleratedCompositingMode message. |
| |
| 2011-05-13 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Video is blank, controller is misplaced on trailers.apple.com movie in fullscreen (with two screens) |
| https://bugs.webkit.org/show_bug.cgi?id=60826 |
| |
| Emit a notification when moving a CALayer from the WebProcess's main |
| layer host to a new context. This allows listeners to invalidate their |
| layers which may not support moving between different CAContexts (as is |
| the case with QTMovieLayer). In order to allow listeners to determine if they |
| are affected, the notification will pass the root CALayer in a userInfo |
| dictionary. |
| |
| In WebFullScreenManagerMac, move from storing a pointer to a non-refcounted |
| class (GraphicsLayer) to a retainable class (PlatformLayer). |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::WebFullScreenManagerMac): No need to initialize |
| m_fullScreenRootLayer now that it is a RetainPtr<>. |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Emit a notification |
| after either creating or destroying the full screen layer host. |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): |
| |
| 2011-05-16 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Rubber-stamped by Csaba Osztrogonác. |
| |
| [Qt][Wk2][Symbian] Fix build after r86560 |
| https://bugs.webkit.org/show_bug.cgi?id=60887 |
| |
| Temporarily fix Symbian build by re-enabling compilation |
| of Qt/Gtk common code (as was the case for Symbian before r55875). |
| This is a stop gap until the pure Symbian Core IPC and process launching bits land in Bug 55875 |
| As of this revision, only the native SharedMemory implementation is in trunk. |
| |
| * Platform/CoreIPC/Attachment.h: Compile Qt/Gtk common code for Qt-Symbian too |
| * Platform/CoreIPC/Connection.h: ditto |
| * Platform/SharedMemory.h: ditto |
| * Platform/qt/SharedMemorySymbian.cpp: stub implementations of attachment handling |
| (WebKit::SharedMemory::Handle::releaseToAttachment): |
| (WebKit::SharedMemory::Handle::adoptFromAttachment): |
| |
| 2011-05-16 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Can't horizontally scroll iframes and overflow because wheel events are always accepted |
| https://bugs.webkit.org/show_bug.cgi?id=60779 |
| |
| We keep track of the number of horizontal scrollbars and mouse wheel event handlers in the |
| UI process as a means of determining whether horizontal scroll events will be handled |
| by the web process. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::willHandleHorizontalScrollEvents): Return true if there is at least |
| one wheel event handler |
| * UIProcess/WebPageProxy.h: Add new variable to cache the count |
| (WebKit::WebPageProxy::numWheelEventHandlersChanged): Sets the count |
| |
| The rest just provides all the connections. |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageWillHandleHorizontalScrollEvents): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::shouldRubberBandInDirection): |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::shouldRubberBandInDirection): Forward to injected bundle UI client |
| (WebKit::WebChromeClient::updateCountWheelEventHandlers): Updates the web page proxy |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-05-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Silverlight: Selection via keyboard selects the entire plugin instead of the contents of a TextBox |
| https://bugs.webkit.org/show_bug.cgi?id=60898 |
| <rdar://problem/9309903> |
| |
| Special-case Command-A and always return true, indicating that the plug-in handled the event. |
| This matches WebKit1. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): |
| |
| 2011-05-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Short-circuit NPRuntime calls made by Flash during plug-in instantiation |
| https://bugs.webkit.org/show_bug.cgi?id=60894 |
| <rdar://problem/8804681> |
| |
| During plug-in instantiation, Flash makes a couple of NPRuntime calls to get the |
| URL of the current document as well as the URL of the toplevel document. This leads to |
| a bunch of IPC traffic that slows down instantiation. |
| |
| Since we know what calls Flash is making and what results are expected, we can handle the |
| NPRuntime calls directly in the plug-in process and avoid extra IPC overhead. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| Initialize m_pluginCreationParameters. |
| |
| (WebKit::PluginControllerProxy::initialize): |
| Set m_pluginCreationParameters to point to the creation parameters right before |
| calling Plugin::initialize and restore it back afterwards. |
| |
| (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): |
| If the plug-in calling NPN_Invoke has the CanShortCircuitSomeNPRuntimeCallsDuringInitialization |
| quirk, and we're being initialized, check for the __flash_getWindowLocation and |
| __flash_getTopLocation function calls and return the correct values. |
| |
| (WebKit::PluginControllerProxy::tryToShortCircuitEvaluate): |
| Check if the script string has the definitions of __flash_getWindowLocation or __flash_getTopLocation |
| and just ignore them. Note that ignoring them has the effect of not adding them to the window object, |
| which could in theory be a backwards compatibility problem if web pages were to assume that these |
| functions existed on a page with plug-ins. In practice this is probably not a problem, especially since |
| these functions are only used on Mac WebKit. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| (WebKit::PluginControllerProxy::inInitialize): |
| Add helper function. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): |
| Add the CanShortCircuitSomeNPRuntimeCallsDuringInitialization quirk for Flash on Mac. |
| |
| * Shared/Plugins/PluginQuirks.h: |
| Add Mac specific CanShortCircuitSomeNPRuntimeCallsDuringInitialization quirk. |
| |
| 2011-05-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add a returnValue parameter to tryToShortCircuitInvoke |
| https://bugs.webkit.org/show_bug.cgi?id=60891 |
| |
| tryToShortCircuitInvoke needs to be able to indicate that an invoke |
| call failed. Add a returnValue parameter and have the real return value |
| indicate whether tryToShortCircuitInvoke did short-circuit the invoke or not. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): |
| * PluginProcess/PluginControllerProxy.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_Invoke): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::tryToShortCircuitInvoke): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::tryToShortCircuitInvoke): |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2011-05-16 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [Qt][Wk2][Symbian] Fix build after r86560 |
| https://bugs.webkit.org/show_bug.cgi?id=60887 |
| |
| * Platform/CoreIPC/ArgumentDecoder.cpp: |
| (CoreIPC::ArgumentDecoder::~ArgumentDecoder): guard Unix and Gtk code with USE(UNIX_DOMAIN_SOCKETS) |
| * Platform/CoreIPC/ArgumentEncoder.cpp: |
| (CoreIPC::ArgumentEncoder::~ArgumentEncoder): ditto |
| |
| 2011-05-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add the ability for a plug-in controller to short-circuit calls to NPN_Invoke |
| https://bugs.webkit.org/show_bug.cgi?id=60886 |
| |
| Make it possible for a plug-in controller to intercept calls to NPN_Invoke, which |
| will be useful for avoiding sync IPC messages during instantiation. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::evaluate): |
| Call tryToShortCircuitEvaluate. If it returns true, we don't need to call back to |
| the web process to ask it to evaluate the script string. |
| |
| (WebKit::PluginControllerProxy::tryToShortCircuitInvoke): |
| (WebKit::PluginControllerProxy::tryToShortCircuitEvaluate): |
| Always return false for now. |
| |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_Invoke): |
| Get the plug-in and call tryToShortCircuitInvoke. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::tryToShortCircuitInvoke): |
| Call the plug-in controller. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::tryToShortCircuitInvoke): |
| Always return false here, since there's no need to short-circuit calls |
| for plug-ins that live in the web process. |
| |
| 2011-05-16 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][WK2][Symbian] Shared memory implementation for Symbian |
| https://bugs.webkit.org/show_bug.cgi?id=55875 |
| |
| Use global chunks for sharing data between processes. |
| This is an initial implementation. An outstanding issue |
| is the correct way to close() the chunk in the SharedMemory d'tor |
| without triggering a delete by the kernel when the ref-count |
| temporarily goes to zero. |
| |
| * Platform/SharedMemory.h: platform specific handle and chunk name |
| * Platform/qt/SharedMemorySymbian.cpp: Added. Native Symbian OS implementation |
| using RChunk.CreateGlobal() for named chunks. The chunk name is serialized |
| and sent over the IPC channel and opened by the remote process using |
| RChunk.OpenGlobal(). |
| |
| (WebKit::SharedMemory::Handle::Handle): |
| (WebKit::SharedMemory::Handle::~Handle): |
| (WebKit::SharedMemory::Handle::isNull): |
| (WebKit::SharedMemory::Handle::encode): |
| (WebKit::SharedMemory::Handle::decode): |
| (WebKit::SharedMemory::create): |
| (WebKit::SharedMemory::~SharedMemory): |
| (WebKit::SharedMemory::createHandle): |
| (WebKit::SharedMemory::systemPageSize): |
| * Platform/unix/SharedMemoryUnix.cpp: Exclude Qt-Symbian using HAVE(UNIX_DOMAIN_SOCKETS) |
| * WebKit2.pro: Add SharedMemorySymbian.cpp |
| |
| 2011-05-16 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r86489. |
| |
| * GNUmakefile.am: Add PluginProcess/PluginCreationParameters.cpp |
| and PluginProcess/PluginCreationParameters.h to compilation. |
| |
| 2011-05-16 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Enable building GTK port with ENABLE_PLUGIN_PROCESS=1 |
| https://bugs.webkit.org/show_bug.cgi?id=58223 |
| |
| * GNUmakefile.am: Add new files to compilation. |
| * PluginProcess/gtk/PluginControllerProxyGtk.cpp: Added. |
| (WebKit::PluginControllerProxy::platformInitialize): |
| (WebKit::PluginControllerProxy::platformDestroy): |
| (WebKit::PluginControllerProxy::platformGeometryDidChange): |
| * PluginProcess/gtk/PluginProcessGtk.cpp: Added. |
| (WebKit::PluginProcess::platformInitialize): |
| * UIProcess/Plugins/gtk/PluginProcessProxyGtk.cpp: Added. |
| (WebKit::PluginProcessProxy::platformInitializePluginProcess): |
| * WebProcess/Plugins/Netscape/gtk/PluginProxyGtk.cpp: Added. |
| (WebKit::PluginProxy::needsBackingStore): |
| |
| 2011-05-16 Adam Barth <abarth@webkit.org> |
| |
| Attempt to fix the Qt build. (Strict PassOwnPtr fix.) |
| |
| * Shared/qt/ShareableBitmapQt.cpp: |
| (WebKit::ShareableBitmap::createGraphicsContext): |
| |
| 2011-05-15 Michael Saboff <msaboff@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Suboptimal lifetime of BackingStore objects in DrawingAreaProxyImpl |
| https://bugs.webkit.org/show_bug.cgi?id=60864 |
| |
| Implemented reuse of BackingStore's in |
| DrawingAreaProxyImpl::didUpdateBackingStoreState when the size needed |
| matches the size of the existing BackingStore. |
| Also reduced the discardBackingStoreTimer from 5 to 2 seconds. |
| These changes reduces memory usage up to 10MB on memory tests. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): |
| (WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon): |
| |
| 2011-05-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Pass the window NPObject identifier in the plug-in creation parameters |
| https://bugs.webkit.org/show_bug.cgi?id=60865 |
| |
| This avoids a synchronous call when the plug-in wants to get the NPObject that |
| corresponds to the window. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::initialize): |
| Change this to take the PluginCreationParameters. Initialize the window NPObject. |
| |
| (WebKit::PluginControllerProxy::windowScriptNPObject): |
| Just return the window NPObject; it's already been initialized. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginCreationParameters.cpp: |
| (WebKit::PluginCreationParameters::PluginCreationParameters): |
| (WebKit::PluginCreationParameters::encode): |
| (WebKit::PluginCreationParameters::decode): |
| * PluginProcess/PluginCreationParameters.h: |
| Add the window NPObject ID. |
| |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::createPlugin): |
| Pass the creation parameters to PluginControllerProxy::initialize. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::initialize): |
| Initialize the window NPObject ID. |
| |
| * WebProcess/Plugins/PluginProxy.messages.in: |
| Remove the GetWindowScriptNPObject message. |
| |
| 2011-05-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Pass the document URL and toplevel document URL when creating a plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=60863 |
| |
| This is the first of a series of patches intended to reduce the IPC traffic |
| during plug-in instantiation. |
| |
| * WebProcess/Plugins/Plugin.cpp: |
| (WebKit::Plugin::Parameters::encode): |
| Encode the URLs. |
| |
| (WebKit::Plugin::Parameters::decode): |
| Decode the URLs. |
| |
| * WebProcess/Plugins/Plugin.h: |
| Add the document and toplevel document URLs. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::createPlugin): |
| Initialize the document and toplevel document URLs. |
| |
| 2011-05-13 Oliver Hunt <oliver@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Make GC validation more aggressive |
| https://bugs.webkit.org/show_bug.cgi?id=60802 |
| |
| Add GC_VALIDATION calls to all the JSNPObject methods. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::invalidate): |
| (WebKit::JSNPObject::callMethod): |
| (WebKit::JSNPObject::callObject): |
| (WebKit::JSNPObject::callConstructor): |
| (WebKit::JSNPObject::getCallData): |
| (WebKit::JSNPObject::getConstructData): |
| (WebKit::JSNPObject::getOwnPropertySlot): |
| (WebKit::JSNPObject::getOwnPropertyDescriptor): |
| (WebKit::JSNPObject::put): |
| (WebKit::JSNPObject::getOwnPropertyNames): |
| (WebKit::JSNPObject::propertyGetter): |
| (WebKit::JSNPObject::methodGetter): |
| |
| 2011-05-13 Oliver Hunt <oliver@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Make GC validation more aggressive |
| https://bugs.webkit.org/show_bug.cgi?id=60802 |
| |
| Add GC_VALIDATION calls to all the JSNPObject methods. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::invalidate): |
| (WebKit::JSNPObject::callMethod): |
| (WebKit::JSNPObject::callObject): |
| (WebKit::JSNPObject::callConstructor): |
| (WebKit::JSNPObject::getCallData): |
| (WebKit::JSNPObject::getConstructData): |
| (WebKit::JSNPObject::getOwnPropertySlot): |
| (WebKit::JSNPObject::getOwnPropertyDescriptor): |
| (WebKit::JSNPObject::put): |
| (WebKit::JSNPObject::getOwnPropertyNames): |
| (WebKit::JSNPObject::propertyGetter): |
| (WebKit::JSNPObject::methodGetter): |
| |
| 2011-05-14 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Smart cut&paste is broken |
| https://bugs.webkit.org/show_bug.cgi?id=60840 |
| <rdar://problem/9439927> |
| |
| * UIProcess/mac/TextCheckerMac.mm: (WebKit::TextChecker::isSmartInsertDeleteEnabled): |
| Match WK1 - this default defaults to YES if not present. |
| |
| 2011-05-14 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Alice Liu. |
| |
| WKView does not draw after forced repaint before the first update |
| https://bugs.webkit.org/show_bug.cgi?id=60845 |
| |
| * UIProcess/DrawingAreaProxy.h: |
| (WebKit::DrawingAreaProxy::waitForBackingStoreUpdateOnNextPaint): Added. |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::waitForBackingStoreUpdateOnNextPaint): Set m_hasReceivedFirstUpdate |
| to true, ensuring that paint() will wait for an update if needed. |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::forceRepaint): Call DrawingAreaProxy::waitForBackingStoreUpdateOnNextPaint(). |
| |
| 2011-05-14 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Document the WantsMozillaUserAgent quirk and make it Windows specific |
| https://bugs.webkit.org/show_bug.cgi?id=60843 |
| |
| * Shared/Plugins/PluginQuirks.h: |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::userAgent): |
| |
| 2011-05-14 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Consolidate plug-in creation parameters to a single struct |
| https://bugs.webkit.org/show_bug.cgi?id=60839 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::create): |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginCreationParameters.cpp: Added. |
| (WebKit::PluginCreationParameters::PluginCreationParameters): |
| (WebKit::PluginCreationParameters::encode): |
| (WebKit::PluginCreationParameters::decode): |
| * PluginProcess/PluginCreationParameters.h: Added. |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::createPlugin): |
| * PluginProcess/WebProcessConnection.h: |
| * PluginProcess/WebProcessConnection.messages.in: |
| * Scripts/webkit2/messages.py: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::initialize): |
| |
| 2011-05-14 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Kevin Decker. |
| |
| NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load |
| https://bugs.webkit.org/show_bug.cgi?id=60823 |
| <rdar://problem/9430386> |
| |
| If a plug-in stream fails to load before it's been started, we won't destroy the stream. |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::stop): |
| Call notifyAndDestroyStream which will call NPP_URLNotify if necessary, and also destroy the stream. |
| |
| (WebKit::NetscapePluginStream::notifyAndDestroyStream): |
| Pass the request URL to NPP_URLNotify, matching other browsers. |
| |
| 2011-05-14 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Flashing window frame and graphical glitches after exiting full screen mode. |
| https://bugs.webkit.org/show_bug.cgi?id=60825 |
| |
| A layer-backed WebView throws an exception when moved from a layer-backed parent view |
| to a non-layer-backed one, so make the WebView a child of the content view, instead of |
| the animation view. There is an unrelated fix in beganExitFullScreen, which was calling |
| finishedExitFullScreenAnimation: instead of finishedEnterFullScreenAnimation: when |
| notifications come out of order. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Add the _webView |
| to the full screen window's content view, instead of the _animationView. |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Call |
| finishedEnterFullScreenAnimation: instead of finishedExitFullScreenAnimation:. |
| (-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): Add the |
| _layerHostingView to the contentView, instead of the animationView. |
| |
| 2011-05-14 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed, rolling out r86469 and r86471, because they made hundreds tests crash on Qt. |
| |
| Make GC validation more aggressive |
| https://bugs.webkit.org/show_bug.cgi?id=60802 |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::invalidate): |
| (WebKit::JSNPObject::callMethod): |
| (WebKit::JSNPObject::callObject): |
| (WebKit::JSNPObject::callConstructor): |
| (WebKit::JSNPObject::getCallData): |
| (WebKit::JSNPObject::getConstructData): |
| (WebKit::JSNPObject::getOwnPropertySlot): |
| (WebKit::JSNPObject::getOwnPropertyDescriptor): |
| (WebKit::JSNPObject::put): |
| (WebKit::JSNPObject::getOwnPropertyNames): |
| (WebKit::JSNPObject::propertyGetter): |
| (WebKit::JSNPObject::methodGetter): |
| |
| 2011-05-14 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r86476. |
| http://trac.webkit.org/changeset/86476 |
| https://bugs.webkit.org/show_bug.cgi?id=60832 |
| |
| It made plugins/get-url-notify-with-url-that-fails-to- |
| load.html crash on GTK (Requested by Ossy on #webkit). |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::stop): |
| (WebKit::NetscapePluginStream::notifyAndDestroyStream): |
| |
| 2011-05-13 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Darin Adler and Brian Weinstein. |
| |
| REGRESSION (WK2): Can't drag and drop a link or image from Safari to Desktop |
| https://bugs.webkit.org/show_bug.cgi?id=60819 |
| <rdar://problem/9370689> |
| |
| To support drag-and-drop to the desktop and other windows applications, |
| we need to support the fileDescriptor and fileContentZero clipboard formats. |
| This patch adds the support for serializing these types across the process boundary. |
| |
| * Platform/CoreIPC/Arguments.h: Added support for messages with 10 arguments. |
| (CoreIPC::Arguments10::Arguments10): |
| (CoreIPC::Arguments10::encode): |
| (CoreIPC::Arguments10::decode): |
| (CoreIPC::In): |
| (CoreIPC::Out): |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::callMemberFunction): Added support for memebers with 10 arguments. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::startDragDrop): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/win/WebDragClientWin.cpp: |
| (WebKit::WebDragClient::startDrag): |
| |
| 2011-05-13 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| NPP_URLNotify is not called if a URL passed to NPN_GetURLNotify fails to load |
| https://bugs.webkit.org/show_bug.cgi?id=60823 |
| <rdar://problem/9430386> |
| |
| If a plug-in stream fails to load before it's been started, we won't destroy the stream. |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::stop): |
| Call notifyAndDestroyStream which will call NPP_URLNotify if necessary, and also destroy the stream. |
| |
| (WebKit::NetscapePluginStream::notifyAndDestroyStream): |
| Pass the request URL to NPP_URLNotify, matching other browsers. |
| |
| 2011-05-13 Michael Saboff <msaboff@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Backing store may not get discarded due to stopped timer |
| https://bugs.webkit.org/show_bug.cgi?id=60816 |
| |
| Changed the backing store timer to restart if it has been stopped. |
| The evaluation is done when the view's state is changed. |
| This change appears to be worth ~3MB (one backing store worth) |
| during memory tests. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::viewStateDidChange): |
| |
| 2011-05-13 Oliver Hunt <oliver@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Make GC validation more aggressive |
| https://bugs.webkit.org/show_bug.cgi?id=60802 |
| |
| Add GC_VALIDATION calls to all the JSNPObject methods. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::invalidate): |
| (WebKit::JSNPObject::callMethod): |
| (WebKit::JSNPObject::callObject): |
| (WebKit::JSNPObject::callConstructor): |
| (WebKit::JSNPObject::getCallData): |
| (WebKit::JSNPObject::getConstructData): |
| (WebKit::JSNPObject::getOwnPropertySlot): |
| (WebKit::JSNPObject::getOwnPropertyDescriptor): |
| (WebKit::JSNPObject::put): |
| (WebKit::JSNPObject::getOwnPropertyNames): |
| (WebKit::JSNPObject::propertyGetter): |
| (WebKit::JSNPObject::methodGetter): |
| |
| 2011-05-13 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| NPN_GetURL with a javascript: URL doesn't send back the result in the stream |
| https://bugs.webkit.org/show_bug.cgi?id=60810 |
| |
| In NetscapePluginStream::sendJavaScriptStream, we were incorrectly passing the result URL |
| to the stream, instead of the result. Also, store the request URL in the NetscapePluginStream object |
| to avoid sending it over the wire. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::didEvaluateJavaScript): |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginControllerProxy.messages.in: |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::loadURL): |
| (WebKit::NetscapePlugin::didEvaluateJavaScript): |
| (WebKit::NetscapePlugin::manualStreamDidReceiveResponse): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::NetscapePluginStream): |
| (WebKit::NetscapePluginStream::sendJavaScriptStream): |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.h: |
| (WebKit::NetscapePluginStream::create): |
| * WebProcess/Plugins/Plugin.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::didEvaluateJavaScript): |
| * WebProcess/Plugins/PluginProxy.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::performJavaScriptURLRequest): |
| |
| 2011-05-13 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Make some page() member functions const |
| https://bugs.webkit.org/show_bug.cgi?id=60794 |
| |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Make page() const. |
| * UIProcess/WebFrameProxy.h: |
| (WebKit::WebFrameProxy::page): Make page() const. |
| * UIProcess/WebInspectorProxy.h: |
| (WebKit::WebInspectorProxy::page): Make page() const. |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const. |
| * UIProcess/mac/ChunkedUpdateDrawingAreaProxyMac.mm: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const. |
| * UIProcess/qt/ChunkedUpdateDrawingAreaProxyQt.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const. |
| * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::page): Make page() const. |
| |
| 2011-05-13 Adam Roben <aroben@apple.com> |
| |
| Load plugins in the order they're found |
| |
| Fixes <http://webkit.org/b/60788> <rdar://problem/9435787> REGRESSION (r69790): WebKit2 |
| doesn't prefer plugins in the additional plugins directory |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/Plugins/PluginInfoStore.cpp: |
| (WebKit::addFromVector): |
| Changed to use a ListHashSet instead of a HashSet to store the plugin paths. |
| |
| 2011-05-13 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Prune #includes from FrameView.h (Part 2) |
| https://bugs.webkit.org/show_bug.cgi?id=60748 |
| |
| - Update files that were depending on FrameView.h #including Frame.h or |
| Page.h. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| * WebProcess/WebPage/WebContextMenu.cpp: |
| * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: |
| |
| 2011-05-13 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Eric Seidel. |
| |
| [GTK] Share the GTK+ key binding code between WebKit1 and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59765 |
| |
| Use the new KeyBindingTranslator class from WebCore/platform/gtk. With this utility |
| class we can now share the code with WebKit2. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::PageClientImpl): No longer need to initialize keybinding code. |
| (WebKit::PageClientImpl::getEditorCommandsForKeyEvent): Use the new utility class. |
| * UIProcess/API/gtk/PageClientImpl.h: Remove unnecessary members. Add utility class member. |
| |
| 2011-05-12 Pratik Solanki <psolanki@apple.com> |
| |
| Reviewed by Antti Koivisto. |
| |
| Part of WebCore should use CFNetwork-based loader on Mac |
| https://bugs.webkit.org/show_bug.cgi?id=51836 |
| |
| Use CFRunLoop when using CFNetwork. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformInitialize): |
| |
| 2011-05-12 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Gavin Barraclough. |
| |
| WebProcess sandbox denies file:/// accesses after you navigate to a nonexistent file |
| <rdar://problem/9427752> |
| https://bugs.webkit.org/show_bug.cgi?id=60745 |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad): |
| Don't attempt to re-use a non-existent committed sandbox extension. This can |
| happen when the previous load was file: url, but did not require an extension, |
| such as an error page. |
| |
| 2011-05-12 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Regression caused by changeset 86281 |
| https://bugs.webkit.org/show_bug.cgi?id=60712 |
| <rdar://problem/9427970> |
| |
| Removed the condition variable. [NSSpellChecker dismissCorrectionIndicatorForView:] is blocking. |
| So handleAcceptedReplacement() triggered by dismissInternal() will return before dismissInternal() |
| returns. So we don't need to use the condition to coordinate between these two function. In fact, |
| all callbacks are delivered on main thread. We don't really need any locking here. |
| |
| Since now we don't have distinction between dismiss() and dismissSoon(). dismissSoon() has |
| been removed. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::dismissCorrectionPanelSoon): |
| * UIProcess/mac/CorrectionPanel.h: |
| * UIProcess/mac/CorrectionPanel.mm: |
| (WebKit::CorrectionPanel::CorrectionPanel): |
| (WebKit::CorrectionPanel::show): |
| (WebKit::CorrectionPanel::dismiss): |
| (WebKit::CorrectionPanel::dismissInternal): |
| (WebKit::CorrectionPanel::handleAcceptedReplacement): |
| |
| 2011-05-12 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Implement plugin quirk for Mozilla user agent for older Flash |
| https://bugs.webkit.org/show_bug.cgi?id=60726 |
| <rdar://problem/8470824> |
| |
| Implement the quirk for versions of Flash before v10 that only request windowless plugins |
| if we use a Mozilla user agent. |
| |
| * Shared/Plugins/Netscape/win/NetscapePluginModuleWin.cpp: |
| (WebKit::NetscapePluginModule::determineQuirks): If we have a plugin that handles the |
| "application/x-shockwave-flash" MIME type with a version less than 10, tell it to use |
| the Mozilla user agent. |
| * Shared/Plugins/PluginQuirks.h: |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::userAgent): Add an early return if the plugin uses the Mozilla user |
| agent. |
| * win/WebKit2.vcproj: Add PluginQuirks.h. |
| |
| 2011-05-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| PluginView::invalidateRect doesn't work for transformed plug-ins |
| https://bugs.webkit.org/show_bug.cgi?id=60727 |
| <rdar://problem/9331244> |
| |
| Ask the RenderObject to repaint the plug-in instead of using invalidateContentsAndWindow. |
| This matches what we do in WebKit1. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::invalidateRect): |
| |
| 2011-05-12 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| [Windows WebKit2] Use cookies set in WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=60274 |
| |
| Properly handle the case where there is no serialized default storage session by not trying |
| to encode or decode 0, while still making sure to decode any valid storage session. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| Only encode the storage session if there is one to encode. |
| (WebKit::WebProcessCreationParameters::decode): |
| Only decode the storage session there is one to decode. |
| * Shared/WebProcessCreationParameters.h: |
| |
| 2011-05-11 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| After relaunching an unresponsive web process, web page stops responding to mouse movement |
| https://bugs.webkit.org/show_bug.cgi?id=60669 |
| <rdar://problem/9409934> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::processDidCrash): Set m_processingMouseMoveEvent to false when the WebProcess |
| crashes. |
| |
| 2011-05-10 Tony Gentilcore <tonyg@chromium.org> |
| |
| Reviewed by Darin Adler. |
| |
| Perform some forward declarations suggested by include-what-you-use |
| https://bugs.webkit.org/show_bug.cgi?id=60545 |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| |
| 2011-05-12 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| Fix the build with ENABLE_PLUGIN_PROCESS |
| https://bugs.webkit.org/show_bug.cgi?id=60628 |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::initialize): Move the call to |
| pluginController->isAcceleratedCompositingEnabled() to a #ifdef block. |
| * WebProcess/Plugins/PluginProxy.h: Add include for <WebCore/IntRect.h>. |
| |
| 2011-05-11 Damian Kaleta <dkaleta@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| Need a new API that will try to restore the scrollbars' position, when navigating in the back/forward history |
| https://bugs.webkit.org/show_bug.cgi?id=60674 |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageTryRestoreScrollPosition): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::tryRestoreScrollPosition): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::tryRestoreScrollPosition): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2011-05-11 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Gavin Barraclough. |
| |
| WebKit2 doesn't build on Mac with strict PassOwnPtr |
| https://bugs.webkit.org/show_bug.cgi?id=60655 |
| |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::handleMessageDelayed): |
| Add explicit adoptPtr to indicate that the constructor is taking ownership. |
| |
| 2011-05-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| [Windows WebKit2] Use cookies set in WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=60274 |
| |
| Share the default storage session between the UI and Web Processes. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| Only encode the session parameter if it is valid. |
| (WebKit::WebProcessCreationParameters::decode): |
| Don't try to decode a null session data. |
| * Shared/WebProcessCreationParameters.h: |
| Add a parameter for a serialized default storage session, used only on Windows. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceRequest): |
| Make sure to set the current storage session on any requests used by the Web |
| Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid |
| doing anything with the Web Process's default storage session. |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Serialize the default storage session in the UI Process and add it to the |
| WebProcessCreationParameters. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| Use the cache associated with the current storage session and make sure the request has the |
| current storage session set on it before doing anything with it. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| Use the default storage session. |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Deserialize the default storage session passed in by the UI Process and hand it to the |
| ResourceHandle. |
| |
| 2011-05-11 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| CorrectionPanel sometimes hangs in dismissSoon(). |
| https://bugs.webkit.org/show_bug.cgi?id=60599 |
| <rdar://problem/9313628> |
| |
| Make sure dismissSoon() won't wait indefinitely if handleAcceptedReplacement() sets m_resultForSynchronousDismissal |
| to nil. Added a designated variable m_isDismissing, instead of piggy-backing m_resultForSynchronousDismissal, |
| for condition checking. |
| |
| * UIProcess/mac/CorrectionPanel.h: |
| * UIProcess/mac/CorrectionPanel.mm: |
| (WebKit::CorrectionPanel::CorrectionPanel): |
| (WebKit::CorrectionPanel::show): |
| (WebKit::CorrectionPanel::dismissSoon): |
| (WebKit::CorrectionPanel::dismissInternal): |
| (WebKit::CorrectionPanel::handleAcceptedReplacement): |
| |
| 2011-05-11 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r86255. |
| http://trac.webkit.org/changeset/86255 |
| https://bugs.webkit.org/show_bug.cgi?id=60660 |
| |
| REGRESSION (r86255): Lots of tests crashing in |
| CFWriteStreamCreateWithAllocatedBuffers on Windows 7 Release |
| (WebKit2 Tests) (Requested by aroben on #webkit). |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceRequest): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| (WebKit::WebProcess::platformClearResourceCaches): |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2011-05-11 Adam Roben <aroben@apple.com> |
| |
| Don't notify the plugin when a targeted javascript: URL request completes |
| |
| This matches Mozilla and WebKit1. |
| |
| Fixes <http://webkit.org/b/60568> <rdar://problem/8610657> REGRESSION (WebKit2): Flash |
| plugin doesn't appear on a hanes.com page |
| |
| Test: plugins/get-targeted-javascript-url.html |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::performJavaScriptURLRequest): Don't call back to the plugin if the |
| request had a target. |
| |
| 2011-05-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| [Windows WebKit2] Use cookies set in WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=60274 |
| |
| Share the default storage session between the UI and Web Processes. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| Add a parameter for a serialized default storage session, used only on Windows. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceRequest): |
| Make sure to set the current storage session on any requests used by the Web |
| Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid |
| doing anything with the Web Process's default storage session. |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Serialize the default storage session in the UI Process and add it to the |
| WebProcessCreationParameters. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| Use the cache associated with the current storage session and make sure the request has the |
| current storage session set on it before doing anything with it. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| Use the default storage session. |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Deserialize the default storage session passed in by the UI Process and hand it to the |
| ResourceHandle. |
| |
| 2011-05-11 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 should tell app that is unresponsive in more cases |
| <rdar://problem/9110151> |
| https://bugs.webkit.org/show_bug.cgi?id=60608 |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): |
| (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState): |
| Invoke the responsiveness time when forcing a backing store update |
| to catch the cases of activating tabs, resizing the window, etc. |
| |
| 2011-05-11 Martin Robinson <mrobinson@igalia.com> |
| |
| Try to fix the WinCairo build. |
| |
| * Shared/ShareableBitmap.h: Correctly include RefPtrCairo here and |
| guard it with USE(CAIRO) instead of PLATFORM(CAIRO). |
| |
| 2011-05-11 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| <https://bugs.webkit.org/show_bug.cgi?id=60631> |
| <rdar://problem/9420520> |
| |
| WebKit2 doesn't clear the pendingAPIRequestURL on in-page anchor navigation [60631] |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didSameDocumentNavigationForFrame): |
| Call clearPendingAPIRequestURL(). |
| |
| 2011-05-11 Adam Roben <aroben@apple.com> |
| |
| Turn on strict PassOwnPtr on Windows |
| |
| Fixes <http://webkit.org/b/60632> Windows should build with strict PassOwnPtr enabled |
| |
| Reviewed by Adam Barth. |
| |
| * WebProcess/FullScreen/win/WebFullScreenManagerWin.cpp: |
| (WebKit::WebFullScreenManagerWin::setRootFullScreenLayer): Use nullptr instead of 0. |
| |
| 2011-05-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| [WebKit2] exceededDatabaseQuota function on WKPageUIClient needs to provide information |
| about the usage for both the origin overall and the database in question. |
| https://bugs.webkit.org/show_bug.cgi?id=60573 |
| |
| Add the currentOriginUsage parameter. |
| |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::callMemberFunction): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::exceededDatabaseQuota): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::exceededDatabaseQuota): |
| * UIProcess/WebUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::exceededDatabaseQuota): |
| |
| 2011-05-10 Oliver Hunt <oliver@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Assertion failure in JSC::Structure::typeInfo when reloading weather.com video page |
| https://bugs.webkit.org/show_bug.cgi?id=60580 |
| |
| The plugin object map was incorrect trying to implement a weak map itself using |
| destructors. Switch to a WeakGCMap and the problem is fixed. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::~JSNPObject): |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| (WebKit::NPRuntimeObjectMap::getOrCreateJSObject): |
| (WebKit::NPRuntimeObjectMap::invalidate): |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h: |
| |
| 2011-05-10 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Yet more quarantine related sandbox denial when downloading files |
| <rdar://problem/9397494> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-10 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Coalesced wheel events should be saved to hand back to the client on unhandled return |
| https://bugs.webkit.org/show_bug.cgi?id=60584 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::handleWheelEvent): |
| (WebKit::canCoalesce): |
| (WebKit::coalesce): |
| (WebKit::coalescedWheelEvent): |
| (WebKit::WebPageProxy::didReceiveEvent): |
| (WebKit::WebPageProxy::processDidCrash): |
| Reworks coalescing/merging code to happen on didReceiveEvent rather than in |
| handleWheelEvent. This means we now store the pending events in a queue, and |
| pull them out when we can. |
| |
| * UIProcess/WebPageProxy.h: |
| Change single event containers to contain all pending/merged/coalesced events |
| and remove unused flag. |
| |
| 2011-05-09 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Cancelling full screen before animation completes leads to full screen window staying up. |
| https://bugs.webkit.org/show_bug.cgi?id=60531 |
| |
| Remove the (unused) _isAnimating ivar and replace it with two ivars: _isEnteringFullScreen and |
| _isExitingFullScreen. These will ensure each is only called once per full screen request, and |
| that if one exit/enter request interrupts another, that the required functions are called in |
| order. |
| |
| * UIProcess/mac/WKFullScreenWindowController.h: |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController enterFullScreen:]): Removed _isAnimating. |
| (-[WKFullScreenWindowController exitFullScreen]): Ditto. |
| (-[WKFullScreenWindowController beganEnterFullScreenAnimation]): Gate on _isEnteringFullScreen. Check _isExitingFullScreen |
| and call [self finishedExitFullScreenAnimation:] if necessary. |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Gate on _isEnteringFullScreen. |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Gate on _isExitingFullScreen. Check _isEnteringFullScreen |
| and call [self finishedEnterFullScreenAnimation:] if necessary. |
| (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Gate on _isExitingFullScreen. |
| |
| 2011-05-10 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=60582 |
| Crash switching overlay/non-overlay scrollbar preference still possible |
| -and corresponding- |
| <rdar://problem/9323983> |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2011-05-10 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Windows clients need to know if the page overlay is installed |
| https://bugs.webkit.org/show_bug.cgi?id=60562 |
| <rdar://problem/8940164> |
| |
| Until we move all the UI for find on page into WebKit on Windows (specifically, drawing the find bouncy), |
| WebKit clients need to know whether WebKit is drawing the page overlay or not. Keep track of this in |
| the WebPageProxy in the UI process and provide a WebKit2 API to retrieve this information. |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewIsPageOverlayInstalled): Added. |
| * UIProcess/API/C/win/WKView.h: Added WKViewIsPageOverlayInstalled(). |
| |
| * UIProcess/PageClient.h: Added didInstallOrUninstallPageOverlay(). |
| * UIProcess/WebPageProxy.h: Added didInstallOrUninstallPageOverlay(). |
| * UIProcess/WebPageProxy.messages.in: Added DidInstallOrUninstallPageOverlay. |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::didInstallOrUninstallPageOverlay): Added. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::WebView): Initialize m_pageOverlayInstalled. |
| (WebKit::WebView::didInstallOrUninstallPageOverlay): Added. |
| * UIProcess/win/WebView.h: Added didInstallOrUninstallPageOverlay() and m_pageOverlayInstalled. |
| (WebKit::WebView::pageOverlayInstalled): Added. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::installPageOverlay): Send message to UI process to tell it the page overlay is installed. |
| (WebKit::WebPage::uninstallPageOverlay): Send message to UI process to tell it the page overlay is uninstalled. |
| |
| 2011-05-10 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Remove incorrect ASSERTs from CoreIPC::Connection::processIncomingSyncReply |
| https://bugs.webkit.org/show_bug.cgi?id=60567 |
| <rdar://problem/9377845> |
| |
| It is possible to receive an incoming sync reply that is for a request we don't know about. |
| This could happen if the sync message send timed out for example. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::processIncomingSyncReply): |
| |
| 2011-05-05 Brent Fulgham <bfulgham@webkit.org> and Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| [Cairo][WebKit2] Add an implementation of ShareableBitmap for Cairo |
| https://bugs.webkit.org/show_bug.cgi?id=60293 |
| |
| * GNUmakefile.am: Remove ShareableBitmapGtk in favor of ShareableBitmapCairo. |
| * Shared/ShareableBitmap.h: Added a couple Cairo-specific declarations. |
| * Shared/cairo/ShareableBitmapCairo.cpp: |
| (WebKit::ShareableBitmap::createGraphicsContext): Added. |
| (WebKit::ShareableBitmap::paint): Added. |
| (WebKit::ShareableBitmap::createCairoSurface): Added. |
| (WebKit::ShareableBitmap::releaseSurfaceData): Added. |
| |
| 2011-05-10 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Extra sign in required to view video on MobileMe Gallery album |
| https://bugs.webkit.org/show_bug.cgi?id=60560 |
| |
| Implement NPN_GetAuthenticationInfo. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::getAuthenticationInfo): |
| Send a GetAuthenticationInfo message to the web process. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::initializeProtectionSpace): |
| Initialize a WebCore::ProtectionSpace object from NPAPI parameters. |
| |
| (WebKit::NPN_GetAuthenticationInfo): |
| Make a ProtectionSpace object and then call NetscapePlugin::getAuthenticationInfo. |
| Finally, copy the username/password and pass them back to the plug-in. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::getAuthenticationInfo): |
| Call the plug-in controller. |
| |
| * WebProcess/Plugins/PluginController.h: |
| Add getAuthenticationInfo pure virtual member function. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::getAuthenticationInfo): |
| Call the real plug-in controller's getAuthenticationInfo member function. |
| |
| * WebProcess/Plugins/PluginProxy.messages.in: |
| Add GetAuthenticationInfo message. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::getAuthenticationInfo): |
| Try to get the authentication info from the credential storage. Failing that, |
| get it from the persistent credential storage. |
| |
| 2011-05-10 Adam Roben <aroben@apple.com> |
| |
| Use FontSmoothingLevelWindows by default on Windows |
| |
| Fixes <http://webkit.org/b/60557> REGRESSION (r86077): Web Inspector uses CG font rendering |
| in WebKit2 on Windows |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/WebPreferencesStore.h: Added and deployed a new DEFAULT_WEBKIT_FONT_SMOOTHING_LEVEL |
| macro to let Windows have a different default font smoothing level from other platforms. |
| |
| * UIProcess/API/C/WKPreferencesPrivate.h: Updated the comment about the default font |
| smoothing level. |
| |
| 2011-05-06 Tony Gentilcore <tonyg@chromium.org> |
| |
| Reviewed by Darin Adler. |
| |
| Fix some unnecessary includes in headers |
| https://bugs.webkit.org/show_bug.cgi?id=60388 |
| |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: |
| |
| 2011-05-09 Jeremy Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Command-~/Exposé to another window while <video> is in full screen, breaks Safari, eventually leading to crash |
| https://bugs.webkit.org/show_bug.cgi?id=60496 |
| |
| When animating into and out of full screen, order out and back in the original webView window, |
| disabling animations when necessary. The beganExitFullScreenAnimation method was targeting the wrong window, |
| as the webView is hosted in the full screen window when we ask for it's parent window. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): |
| |
| 2011-05-09 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| A WKView with plug-ins paints white when first moved into a window |
| https://bugs.webkit.org/show_bug.cgi?id=60511 |
| |
| The UI process’s wait for DidUpdateBackingStoreState would always time out because the Web process |
| was blocked on a synchronous message the UI process trying to get the connections for plug-ins in |
| the view. This is avoided by deferring the call to Page::setCanStartMedia(). |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): Initialize the new m_setCanStartMediaTimer. |
| (WebKit::WebPage::setCanStartMediaTimerFired): Added. Calls setCanStartMedia(true) when the timer |
| fires. |
| (WebKit::WebPage::setIsInWindow): When going out of a window, stop the timer. When going into a |
| window, start it. |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-05-09 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Crash when sending a sync message to a crashed web process |
| https://bugs.webkit.org/show_bug.cgi?id=60514 |
| <rdar://problem/9281270> |
| |
| Change WebProcessProxy::sendSync to return false if there's no connection. |
| |
| Audit all WebProcessProxy::sendSync call sites to initialize reply parameters. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::firstRectForCharacterInSelectedRange): |
| (WebKit::WebPageProxy::getSelectedText): |
| (WebKit::WebPageProxy::gestureWillBegin): |
| * UIProcess/WebProcessProxy.h: |
| (WebKit::WebProcessProxy::sendSync): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::insertText): |
| (WebKit::WebPageProxy::getMarkedRange): |
| (WebKit::WebPageProxy::getSelectedRange): |
| (WebKit::WebPageProxy::characterIndexForPoint): |
| (WebKit::WebPageProxy::executeKeypressCommands): |
| (WebKit::WebPageProxy::writeSelectionToPasteboard): |
| (WebKit::WebPageProxy::readSelectionFromPasteboard): |
| |
| 2011-05-09 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Create a plug-in's MIME types preferences plist if it doesn't exist. |
| https://bugs.webkit.org/show_bug.cgi?id=57204 |
| <rdar://problem/9195048> |
| |
| Spawn a plug-in process and let it create the plist. For now, we'll do this on the |
| main thread since it's a rare one-time computation and we have an API function, |
| WKFrameCanShowMIMEType, which would have to block anyway. |
| |
| * PluginProcess/mac/PluginProcessMainMac.mm: |
| (WebKit::PluginProcessMain): |
| If -createPluginMIMETypesPreferences is one of the command line argument keys, |
| the plug-in path will be the argument value. Call NetscapePluginModule::createPluginMIMETypesPreferences |
| to create the preferences file and then exit. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::contentsOfPropertyListAtURL): |
| Move code to read a property list out into a helper function. |
| |
| (WebKit::getMIMETypesFromPluginBundle): |
| If there's no property list file, try to create one. |
| |
| (WebKit::NetscapePluginModule::createPluginMIMETypesPreferences): |
| Load the plug-in, find the BP_CreatePluginMIMETypesPreferences and call it. |
| |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::createPropertyListFile): |
| Spawn a plug-in process and pass the -createPluginMIMETypesPreferences flag to it and then wait |
| for it to exit. |
| |
| 2011-05-09 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Move EnvironmentVariables out into its own .cpp file |
| https://bugs.webkit.org/show_bug.cgi?id=60507 |
| |
| * UIProcess/Launcher/mac/EnvironmentVariables.cpp: Added. |
| (WebKit::EnvironmentVariables::EnvironmentVariables): |
| (WebKit::EnvironmentVariables::~EnvironmentVariables): |
| (WebKit::EnvironmentVariables::set): |
| (WebKit::EnvironmentVariables::get): |
| (WebKit::EnvironmentVariables::appendValue): |
| (WebKit::EnvironmentVariables::valueIfVariableHasName): |
| (WebKit::EnvironmentVariables::createStringForVariable): |
| (WebKit::EnvironmentVariables::copyEnvironmentVariables): |
| * UIProcess/Launcher/mac/EnvironmentVariables.h: Added. |
| (WebKit::EnvironmentVariables::environmentPointer): |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-05-09 Adam Roben <aroben@apple.com> |
| |
| Always set the font rendering mode based on preference values |
| |
| WebPage::platformInitialize and WebPage::platformPreferencesDidChange were fighting over the |
| font rendering mode. The platformInitialize code predates preference-based font rendering |
| mode support, and is now redundant and incorrect. |
| |
| Fixes <http://webkit.org/b/60494> WebKit2 uses GDI text instead of CG text when |
| FontSmoothing preference is set to kWKFontSmoothingLevelNoSubpixelAntiAliasing in a .plist |
| on disk |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::platformInitialize): Removed code to set the font rendering mode. |
| platformPreferencesDidChange will take care of this for us. |
| |
| 2011-05-09 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by John Sullivan. |
| |
| Clean up NetscapePluginModule::getPluginInfo |
| https://bugs.webkit.org/show_bug.cgi?id=60486 |
| |
| Make all 'get' functions take a PluginInfoStore::Plugin reference, since getPluginInfoFromPropertyLists |
| is going to need it to know the path and plug-in architecture. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginArchitecture): |
| (WebKit::getPluginInfoFromPropertyLists): |
| (WebKit::getPluginInfoFromCarbonResources): |
| (WebKit::NetscapePluginModule::getPluginInfo): |
| |
| 2011-05-09 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| <rdar://problem/9005982> REGRESSION (r85780): Flash of white when a WKView with composited content moves on-screen |
| https://bugs.webkit.org/show_bug.cgi?id=60488 |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): Update m_compositingAccordingToProxyMessages, |
| since the DidUpdateBackingStoreState message also changes the compositing state in the proxy. |
| |
| 2011-05-09 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| Build fix for WebKit 2 on Qt |
| |
| Qt treats warnings as errors so it does not build with unused variables. This patch removed two unused variable in WebKit 2. |
| |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::createTiles): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::~PluginView): |
| |
| 2011-05-07 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| <rdar://problem/9365358> REGRESSION (WebKit2): When clicking in the page, Find overlay fades out instead of disappearing immediately |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::hideFindUI): Do not fade out the overlay. |
| |
| 2011-05-07 Dan Bernstein <mitz@apple.com> |
| |
| Avoid copying a header file into the WebKit2 framework wrapper. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Corrected the target membership of HTTPCookieAcceptPolicy.h. |
| |
| 2011-05-07 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r86016. |
| http://trac.webkit.org/changeset/86016 |
| https://bugs.webkit.org/show_bug.cgi?id=60445 |
| |
| caused crashes on the WK2 Windows bots (Requested by |
| jessieberlin on #webkit). |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceRequest): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| (WebKit::WebProcess::platformClearResourceCaches): |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2011-05-07 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| [Windows WebKit2] Use cookies set in WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=60274 |
| |
| Share the default storage session between the UI and Web Processes. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| Add a parameter for a serialized default storage session, used only on Windows. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceRequest): |
| Make sure to set the current storage session on any requests used by the Web |
| Process before CFNetwork has to do anything with them, in order for CFNetwork to avoid |
| doing anything with the Web Process's default storage session. |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Serialize the default storage session in the UI Process and add it to the |
| WebProcessCreationParameters. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| Use the cache associated with the current storage session and make sure the request has the |
| current storage session set on it before doing anything with it. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformSetCacheModel): |
| Use the default storage session. |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Deserialize the default storage session passed in by the UI Process and hand it to the |
| ResourceHandle. |
| |
| 2011-05-07 Keith Kyzivat <keith.kyzivat@nokia.com> |
| |
| Reviewed by Adam Roben. |
| |
| [Qt] Webkit2 PLUGIN_ARCHITECTURE(UNSUPPORTED) configuration broken by r85961 |
| https://bugs.webkit.org/show_bug.cgi?id=60420 |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginNone.cpp: |
| (WebKit::NetscapePlugin::platformVisibilityDidChange): |
| |
| 2011-05-06 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Xan Lopez. |
| |
| [GTK] [WebKit2] WebView::windowToScreen needs an implementation |
| https://bugs.webkit.org/show_bug.cgi?id=55960 |
| |
| Add an implementation of PageClient::windowToScreen for GTK+ WebKit2 using |
| the newly abstracted widget to screen coordinate translation code in WebCore. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::windowToScreen): Added implementation. |
| |
| 2011-05-06 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Simplify the PluginInfoStore interface |
| https://bugs.webkit.org/show_bug.cgi?id=60406 |
| |
| Just expose a single API for getting a list of plug-ins from the info store, |
| PluginInfoStore::plugins and remove PluginInfoStore::getPlugins and PluginInfoStore::getPluginPaths. |
| |
| Also, change the WebContext::pluginInfoStore() getter to return a reference. |
| |
| * UIProcess/Plugins/PluginInfoStore.cpp: |
| (WebKit::PluginInfoStore::plugins): |
| * UIProcess/Plugins/PluginInfoStore.h: |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::getPluginProcessConnection): |
| * UIProcess/Plugins/PluginProcessManager.h: |
| * UIProcess/Plugins/WebPluginSiteDataManager.cpp: |
| (WebKit::WebPluginSiteDataManager::GetSitesWithDataState::GetSitesWithDataState): |
| (WebKit::WebPluginSiteDataManager::ClearSiteDataState::ClearSiteDataState): |
| (WebKit::WebPluginSiteDataManager::getSitesWithData): |
| (WebKit::WebPluginSiteDataManager::clearSiteData): |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::getPlugins): |
| (WebKit::WebContext::getPluginPath): |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::pluginInfoStore): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::canShowMIMEType): |
| |
| 2011-05-06 Anders Carlsson <andersca@apple.com> |
| |
| Windows build fix. |
| |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| |
| 2011-05-06 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Make more PluginInfoStore member functions static |
| https://bugs.webkit.org/show_bug.cgi?id=60401 |
| |
| This is a first step towards making PluginInfoStore thread safe. |
| |
| * UIProcess/Plugins/PluginInfoStore.cpp: |
| (WebKit::PluginInfoStore::loadPluginsIfNecessary): |
| (WebKit::PluginInfoStore::loadPlugin): |
| * UIProcess/Plugins/PluginInfoStore.h: |
| * UIProcess/Plugins/mac/PluginInfoStoreMac.mm: |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| |
| 2011-05-06 Adam Roben <aroben@apple.com> |
| |
| Mac build fix |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: Added a |
| missing #import. |
| |
| 2011-05-06 Adam Roben <aroben@apple.com> |
| |
| Show/hide windowed plugins according to the plugin element's visibility CSS property |
| |
| Fixes <http://webkit.org/b/60285> <rdar://problem/9152400> REGRESSION (WebKit2): A white |
| rectangle covers up important UI elements when composing a new message at mail.yahoo.com |
| with BrowserPlus! plug-in installed |
| |
| Reviewed by Anders Carlsson. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::isPluginVisible): |
| * PluginProcess/PluginControllerProxy.h: |
| Stubbed out. |
| |
| * Shared/win/WindowGeometry.cpp: |
| (WebKit::WindowGeometry::WindowGeometry): |
| (WebKit::WindowGeometry::encode): |
| (WebKit::WindowGeometry::decode): |
| * Shared/win/WindowGeometry.h: |
| Added visible member. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::updateChildWindowGeometries): Show or hide the window as specified in the |
| geometry. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::visibilityDidChange): |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| Added. Calls through to platform-specific code. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformVisibilityDidChange): |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePlugin::platformVisibilityDidChange): |
| Stubbed out. |
| |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformGeometryDidChange): Moved most logic from here to |
| scheduleWindowedGeometryUpdate. |
| (WebKit::NetscapePlugin::platformVisibilityDidChange): Added. Calls through to |
| scheduleWindowedGeometryUpdate. |
| (WebKit::NetscapePlugin::scheduleWindowedGeometryUpdate): Added. Code came from |
| platformGeometryDidChange. Now also records whether the plugin element is visible. |
| |
| * WebProcess/Plugins/Plugin.h: Added visibilityDidChange. |
| |
| * WebProcess/Plugins/PluginController.h: Added isPluginVisible. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::visibilityDidChange): |
| * WebProcess/Plugins/PluginProxy.h: |
| Stubbed out. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::show): |
| (WebKit::PluginView::hide): |
| Added. These Widget overrides were based on WebCore's PluginView class. |
| |
| (WebKit::PluginView::viewVisibilityDidChange): Added. Similar to viewGeometryDidChange. |
| Calls down to the plugin if it's been initialized. |
| (WebKit::PluginView::isPluginVisible): Added. Just calls up to the Widget base class. |
| |
| * WebProcess/Plugins/PluginView.h: Updated for PluginController changes. |
| |
| 2011-05-06 Adam Roben <aroben@apple.com> |
| |
| Add a WindowGeometry struct for use in the ScheduleChildWindowGeometryUpdate message |
| |
| This will make it easier to add more info to this message in the future (like whether the |
| window is visible). |
| |
| Fixes <http://webkit.org/b/60374> Adding parameters to ScheduleChildWindowGeometryUpdate |
| message is tedious |
| |
| Reviewed by Anders Carlsson. |
| |
| * Scripts/webkit2/messages.py: |
| (struct_or_class): Added WindowGeometry to the list of structs. |
| |
| * Shared/win/WindowGeometry.cpp: Added. |
| * Shared/win/WindowGeometry.h: Added. |
| |
| * win/WebKit2.vcproj: Added new files. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::scheduleChildWindowGeometryUpdate): |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::scheduleChildWindowGeometryUpdate): |
| (WebKit::WebView::updateChildWindowGeometries): |
| * UIProcess/win/WebView.h: |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformGeometryDidChange): |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::scheduleWindowedPluginGeometryUpdate): |
| * WebProcess/Plugins/PluginView.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::scheduleChildWindowGeometryUpdate): |
| Changed to use WindowGeometry. |
| |
| 2011-05-06 David Kilzer <ddkilzer@apple.com> |
| |
| Remove unused GCC_ENABLE_FIX_AND_CONTINUE and ZERO_LINK settings |
| |
| Reviewed by Jon Honeycutt. |
| |
| This fixes an Xcode 4 warning about using obsolete settings. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Removed |
| GCC_ENABLE_FIX_AND_CONTINUE and ZERO_LINK settings. |
| |
| 2011-05-06 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement NetscapePlugin::platformPaint for GTK platform |
| https://bugs.webkit.org/show_bug.cgi?id=60368 |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::NetscapePlugin::platformPaint): |
| |
| 2011-05-06 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| Share PluginInfoStore implementation between Qt and GTK ports |
| https://bugs.webkit.org/show_bug.cgi?id=60366 |
| |
| * GNUmakefile.am: |
| * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp: Removed. |
| * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp: Renamed from Source/WebKit2/UIProcess/Plugins/qt/PluginInfoStoreQt.cpp. |
| (WebKit::PluginInfoStore::pluginsDirectories): |
| (WebKit::PluginInfoStore::pluginPathsInDirectory): |
| (WebKit::PluginInfoStore::individualPluginPaths): |
| (WebKit::PluginInfoStore::getPluginInfo): |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| * WebKit2.pro: |
| |
| 2011-05-06 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r85860. |
| |
| * UIProcess/API/gtk/PageClientImpl.h: Fix typo. |
| |
| 2011-05-05 Philippe Normand <pnormand@igalia.com> |
| |
| Reviewed by Dimitri Glazkov. |
| |
| Implement LayoutTestController::pseudoShadowId() |
| https://bugs.webkit.org/show_bug.cgi?id=60034 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (WKBundleNodeHandleShadowPseudoId): |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::elementRemoveShadowRoot): |
| (WebKit::InjectedBundleNodeHandle::elementShadowPseudoId): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: |
| |
| 2011-05-05 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| REGRESSION (r85689): Unresponsive timer firing when closing background tabs |
| <rdar://problem/9385988> |
| https://bugs.webkit.org/show_bug.cgi?id=60325 |
| |
| When calling WKPageTryClose(), if the page close succeeded, the notification to stop |
| the responsiveness timer would be dropped because the page was closed by the time it |
| got to the UIProcess. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::closePage): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| Add parameter to closePage stipulating whether or not to stop the responsiveness timer. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::tryClose): |
| (WebKit::WebPage::sendClose): |
| Instead of sending a StopResponsivenessTimer message after sending the ClosePage message, |
| add a bit to the ClosePage message. |
| |
| 2011-05-05 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| WebKit2 part of <rdar://problem/9155590> Broken animation in iAd producer |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Initialize wkExecutableWasLinkedOnOrBeforeSnowLeopard. |
| |
| 2011-05-05 Keith Kyzivat <keith.kyzivat@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt] [WK2] Add method to disable plugins under WK2 |
| https://bugs.webkit.org/show_bug.cgi?id=57796 |
| |
| * config.h: Allow PLUGIN_ARCHITECTURE_UNSUPPORTED to be defined on build command line |
| |
| 2011-05-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| When an underlay surface is active, paint normal web contents in a transparency layer |
| https://bugs.webkit.org/show_bug.cgi?id=60296 |
| |
| In order for the page contents to correctly blend with the underlay, the page contents |
| needs to be painted in a transparency layer. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::drawRect): |
| |
| 2011-05-05 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| WebKit2: Docking Web Inspector doesn't respect maximum inspector size |
| https://bugs.webkit.org/show_bug.cgi?id=60294 |
| <rdar://problem/9388518> |
| |
| Before we place the inspector and the inspected views, make sure that we have constrained the height |
| of the docked inspector. Putting the code here covers both when the inspector is initially attached |
| and when a window with the docked inspector is resized. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::inspectedViewFrameDidChange): Constrain the height before laying out the views. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::onWebViewWindowPosChangingEvent): Ditto. |
| |
| 2011-05-05 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt][WK2] Support PageGroup in QGraphicsWKView/QWKPage constructors |
| https://bugs.webkit.org/show_bug.cgi?id=59638 |
| |
| Added private constructors for class QGraphicsWKView and QWKPage to support |
| WKPageGroupRef. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| (QGraphicsWKView::QGraphicsWKView): |
| (QGraphicsWKView::~QGraphicsWKView): |
| (QGraphicsWKView::init): |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::QWKPagePrivate): |
| (QWKPage::QWKPage): |
| (QWKPage::~QWKPage): |
| (QWKPage::init): |
| * UIProcess/API/qt/qwkpage.h: |
| * UIProcess/API/qt/qwkpage_p.h: |
| |
| 2011-05-05 Brent Fulgham <bfulgham@webkit.org> |
| |
| [WinCairo] Unreviewed build fix. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::cachedResponseDataForURL): Stub out |
| implementation for cURL networking case. |
| |
| 2011-05-05 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add didNotHandleWheelEvent callback to WKPageUIClient |
| https://bugs.webkit.org/show_bug.cgi?id=60203 |
| |
| Remove Windows-specific WebPageProxy::wheelEventNotHandled() member function and use |
| didNotHandleWheelEvent callback in WKPageUIClient instead. It turns out that just |
| resending the wheel event to the parent window doesn't provide the client with enough context |
| to know that WebKit has already attempted to handle the event. |
| |
| * UIProcess/API/C/WKPage.h: Added WKPageDidNotHandleWheelEventCallback typedef and didNotHandleWheelEvent to WKPageUIClient. |
| |
| * UIProcess/API/gtk/PageClientImpl.cpp: |
| (WebKit::PageClientImpl::didNotHandleWheelEvent): Added, but not implemented. |
| * UIProcess/API/gtk/PageClientImpl.h: Added didNotHandleWheelEvent(). |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::QWKPage):Stubbed out didNotHandleWheelEvent callback. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveEvent): Call didNotHandleWheelEvent in WKPageUIClient if wheel event is not handled. |
| * UIProcess/WebPageProxy.h: Removed wheelEventNotHandled(). |
| |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::implementsDidNotHandleWheelEvent): Added. |
| (WebKit::WebUIClient::didNotHandleWheelEvent): Added. |
| * UIProcess/WebUIClient.h: Added implementsDidNotHandleWheelEvent() and didNotHandleWheelEvent(). |
| |
| * UIProcess/win/WebPageProxyWin.cpp: Removed wheelEventNotHandled(). |
| |
| 2011-05-05 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Return correct GTK version for NPNVToolkit |
| https://bugs.webkit.org/show_bug.cgi?id=60275 |
| |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Return always 2 for NPNVToolkit in GTK |
| platform. |
| |
| 2011-05-05 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Make native events code more consistent |
| https://bugs.webkit.org/show_bug.cgi?id=60258 |
| |
| Make all other native events code follow the current keyboard |
| events approach: use a GOwnPtr for the native event, and use |
| const GdkEvent* in the API. We need to implement the copy |
| constructors for native events to copy the gdk events with |
| gdk_event_copy(). |
| |
| * Shared/NativeWebMouseEvent.h: |
| (WebKit::NativeWebMouseEvent::nativeEvent): |
| * Shared/NativeWebWheelEvent.h: |
| (WebKit::NativeWebWheelEvent::nativeEvent): |
| * Shared/gtk/NativeWebKeyboardEventGtk.cpp: |
| (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent): |
| * Shared/gtk/NativeWebMouseEventGtk.cpp: |
| (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): |
| * Shared/gtk/NativeWebWheelEventGtk.cpp: |
| (WebKit::NativeWebWheelEvent::NativeWebWheelEvent): |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::buttonForEvent): |
| (WebKit::WebEventFactory::createWebMouseEvent): |
| (WebKit::WebEventFactory::createWebWheelEvent): |
| (WebKit::WebEventFactory::createWebKeyboardEvent): |
| * Shared/gtk/WebEventFactory.h: |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseScrollEvent): |
| |
| 2011-05-05 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Module::load() should return true when g_module_open() returns a valid pointer |
| https://bugs.webkit.org/show_bug.cgi?id=60261 |
| |
| * Platform/gtk/ModuleGtk.cpp: |
| (WebKit::Module::load): |
| |
| 2011-05-05 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r85808. |
| |
| * Shared/NativeWebWheelEvent.h: |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseScrollEvent): |
| |
| 2011-05-04 Cris Neckar <cdn@chromium.org> |
| |
| Reviewed by Adam Barth. |
| |
| Expose WebView directly through ChromeClient. |
| https://bugs.webkit.org/show_bug.cgi?id=49902 |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| (WebKit::WebChromeClient::webView): |
| |
| 2011-05-04 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Send unhandled wheel events to parent window on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=60220 |
| |
| Keep track of wheel events using NativeWebWheelEvent instead of WebWheelEvent in WebPageProxy |
| so we can send the native event to the parent window if WebKit doesn't handle it. |
| |
| * UIProcess/API/mac/WKView.mm: Use NativeWebWheelEvent instead of WebWheelEvent. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::wheelEvent): Use NativeWebWheelEvent instead of WebWheelEvent. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): Removed initialization of obsolete m_processingWheelEvent member variable. |
| (WebKit::coalesceWheelEvents): Use NativeWebWheelEvent instead of WebWheelEvent and add a note that this won't work if we ever enable MERGE_WHEEL_EVENTS. |
| (WebKit::WebPageProxy::handleWheelEvent): Use NativeWebWheelEvent instead of WebWheelEvent, keep track of the current event in m_currentlyProcessedWheelEvent. |
| (WebKit::WebPageProxy::didReceiveEvent): Call wheelEventNotHandled() on Windows if wheel event is not handled. |
| (WebKit::WebPageProxy::processDidCrash): Clear out m_currentlyProcessedWheelEvent. |
| * UIProcess/WebPageProxy.h: Change handleWheelEvent() to take a NativeWebWheelEvent, added wheelEventNotHandled() on Windows, remove m_processingWheelEvent, add m_currentlyProcessedWheelEvent. |
| |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::wheelEventNotHandled): Added. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onWheelEvent): Use NativeWebWheelEvent instead of WebWheelEvent. |
| |
| 2011-05-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add bundle API for making a page paint as the background of another page |
| https://bugs.webkit.org/show_bug.cgi?id=60227 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageSetUnderlayPage): |
| Call WebPage::setUnderlayPage. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::close): |
| Null out the underlay page. |
| |
| (WebKit::WebPage::layoutIfNeeded): |
| Layout the underlay page if necessary. |
| |
| (WebKit::WebPage::drawRect): |
| Draw the underlay page. |
| |
| 2011-05-04 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][Wk2][Symbian] Capabilities for Qt MiniBrowser and QtWebProcess on Symbian |
| https://bugs.webkit.org/show_bug.cgi?id=59462 |
| |
| * WebProcess.pro: Add Symbian OS capabilities to web process executable. Also enable |
| data paging flag and prevent application's icon from showing up in the application grid. |
| |
| 2011-05-04 Adam Roben <aroben@apple.com> |
| |
| Clip and reposition windowed plugins when the UI process paints |
| |
| This ensures that their geometry updates in sync with the rest of the page. |
| |
| Most of this patch is just plumbing the scheduleWindowedPluginGeometryUpdate and |
| scheduleChildWindowGeometryUpdate calls through from NetscapePlugin all the way over to |
| WebView. I've tried to call out the other parts below. |
| |
| Fixes <http://webkit.org/b/60210> <rdar://problem/8483441> REGRESSION (WebKit2): Windowed |
| plugins don't scroll at the same speed as the rest of the page |
| |
| Reviewed by Darin Adler and Anders Carlsson. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::scheduleChildWindowGeometryUpdate): |
| Added plumbing. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onPaintEvent): Update child windows before painting so that they will stay |
| in sync with the rest of the page. |
| (WebKit::WebView::scheduleChildWindowGeometryUpdate): Add this update information to the |
| set of geometries to update on the next paint. |
| (WebKit::setWindowRegion): Moved this helper function here from NetscapePluginWin.cpp. |
| (WebKit::WebView::updateChildWindowGeometries): Update the size, position, and clip rects of |
| all the child windows with scheduled geometry updates. |
| |
| * UIProcess/win/WebView.h: Added new members to track and update child window geometries. |
| |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformPostInitialize): Don't show the window immediately. Let the |
| UI process take care of it. |
| (WebKit::NetscapePlugin::platformGeometryDidChange): Don't update the window's position or |
| clip rect. Let the UI process take care of it. |
| |
| * WebProcess/Plugins/PluginController.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::scheduleWindowedPluginGeometryUpdate): |
| * WebProcess/Plugins/PluginView.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::scheduleChildWindowGeometryUpdate): |
| Added plumbing. |
| |
| 2011-05-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WKView on Windows has no equivalent of Mac's -[WKView setDraws[Transparent]Background:] |
| https://bugs.webkit.org/show_bug.cgi?id=52009 |
| <rdar://problem/8829746> |
| |
| Add and implement WKViewSetDrawsTransparentBackground on windows. |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewSetDrawsTransparentBackground): |
| (WKViewDrawsTransparentBackground): |
| Call through to the WebPageProxy object. |
| |
| * UIProcess/API/C/win/WKView.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::drawPageBackground): |
| Don't fill the rect with white if WebPageProxy::drawsBackground() or |
| WebPageProxy::drawsTransparentBackground() returns false. Because of limitations in Win32, |
| both drawsBackground and drawsTransparentBackground are pretty much equivalent. |
| |
| (WebKit::WebView::paint): |
| Pass the WebPageProxy object to drawPageBackground. |
| |
| 2011-05-04 Tao Bai <michaelbai@chromium.org> |
| |
| Reviewed by David Kilzer. |
| |
| Populate touch-icon url to FrameLoaderClient |
| https://bugs.webkit.org/show_bug.cgi?id=59143 |
| |
| Respected the change of FrameLoaderClient. |
| Added WebIconURL and WebIconType responding the new IconURL and IconType. |
| Supported to get the multiple icon urls. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidChangeIcons): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-05-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Can't save a link from "Save Linked File to Download" popup menu |
| https://bugs.webkit.org/show_bug.cgi?id=60190 |
| <rdar://problem/9367927> |
| |
| Make sure that suggestedFilenameForResourceWithURL and resourceDataForFrame both look |
| in the cache if the resource can't be found in the current web page. This matches WebKit1. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::suggestedFilenameForResourceWithURL): |
| Call WebPage::cachedSuggestedFilenameForURL if we can't find a resource in the page. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::resourceDataForFrame): |
| Move code out from getResourceDataFromFrame. |
| |
| (WebKit::WebPage::getResourceDataFromFrame): |
| Call resourceDataForFrame first and then cachedResponseDataForURL. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| (WebKit::WebPage::platformCanHandleRequest): |
| (WebKit::WebPage::cachedSuggestedFilenameForURL): |
| (WebKit::WebPage::cachedResponseDataForURL): |
| Add stubs. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::cachedResponseForURL): |
| Add helper function. |
| |
| (WebKit::WebPage::cachedSuggestedFilenameForURL): |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| (WebKit::WebPage::cachedResponseDataForURL): |
| Call helper function. |
| |
| * WebProcess/WebPage/qt/WebPageQt.cpp: |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| (WebKit::WebPage::platformCanHandleRequest): |
| (WebKit::WebPage::cachedSuggestedFilenameForURL): |
| (WebKit::WebPage::cachedResponseDataForURL): |
| Add stubs. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::cachedResponseForURL): |
| Add helper function. |
| |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| (WebKit::WebPage::cachedSuggestedFilenameForURL): |
| (WebKit::WebPage::cachedResponseDataForURL): |
| Call helper function. |
| |
| 2011-05-04 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2 flashes if entering and exiting compositing rapidly |
| https://bugs.webkit.org/show_bug.cgi?id=60198 |
| |
| If a page enters then immediately leaves compositing mode, the |
| DrawingAreaImpl would send a message to the UI process that it |
| had entered compositing even after all the layers had been torn |
| down. Fix this by never sending the 'enter' message if we're |
| waiting for the 'exit' timer to fire. |
| |
| Also fix an assertion in the UI process caused by sending mismatched |
| 'enter' and 'leave' messages by keeping track of which messages |
| we've sent. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingModeSoon): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingModePending): |
| |
| 2011-05-04 Jeff Miller <jeffm@apple.com> |
| |
| Fix typo in svn property in r85756. |
| |
| * Shared/mac/NativeWebWheelEventMac.mm: Added property svn:eol-style. Removed property snv:eol-style. |
| |
| 2011-05-04 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add NativeWebWheelEvent class |
| https://bugs.webkit.org/show_bug.cgi?id=60182 |
| |
| This will be needed soon when we start notifying the UI process that a mouse wheel event wasn't handled by WebKit. |
| |
| * GNUmakefile.am: Added NativeWebWheelEventGtk.cpp and NativeWebWheelEvent.h. |
| * Shared/NativeWebWheelEvent.h: Added. |
| (WebKit::NativeWebWheelEvent::nativeEvent): Added. |
| * Shared/gtk/NativeWebWheelEventGtk.cpp: Added. |
| (WebKit::NativeWebWheelEvent::NativeWebWheelEvent): Added. |
| * Shared/mac/NativeWebWheelEventMac.mm: Added. |
| (WebKit::NativeWebWheelEvent::NativeWebWheelEvent): Added. |
| * Shared/qt/NativeWebWheelEventQt.cpp: Added. |
| (WebKit::NativeWebWheelEvent::NativeWebWheelEvent): Added. |
| * Shared/win/NativeWebWheelEventWin.cpp: Added. |
| (WebKit::NativeWebWheelEvent::NativeWebWheelEvent):Added. |
| * WebKit2.pro: Added NativeWebWheelEventQt.cpp and NativeWebWheelEvent.h. |
| * WebKit2.xcodeproj/project.pbxproj: Added NativeWebWheelEventMac.mm and NativeWebWheelEvent.h. |
| * win/WebKit2.vcproj: Added NativeWebWheelEventWin.cpp and NativeWebWheelEvent.h. |
| |
| 2011-05-04 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| ArgumentDecoder should use aligned memory for its internal copy of data |
| https://bugs.webkit.org/show_bug.cgi?id=59960 |
| |
| Since we check for memory alignment when unpacking primitive types from the buffer, |
| insure alignment of the base address. |
| As uint64_t is the largest type we use in Argument encoder/decoder, use 8 byte alignment. |
| |
| * Platform/CoreIPC/ArgumentDecoder.cpp: |
| (CoreIPC::ArgumentDecoder::~ArgumentDecoder): free m_alignedBase |
| (CoreIPC::roundUpToAlignment): move this up in the source file |
| (CoreIPC::ArgumentDecoder::initialize): m_buffer is now guaranteed sizeof(uint64_t) aligned |
| * Platform/CoreIPC/ArgumentDecoder.h: add m_alignedBase member which needs to be freed in d'tor |
| |
| 2011-05-04 Adam Roben <aroben@apple.com> |
| |
| Make ShareableBitmap::makeCGImageCopy use a copy-on-write copy on Windows when possible |
| |
| Fixes <http://webkit.org/b/57269> <rdar://problem/9198788> REGRESSION (r82151): Every WKView |
| paint now makes an extra copy of the painted bits |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/SharedMemory.h: |
| * Platform/win/SharedMemoryWin.cpp: |
| (WebKit::SharedMemory::createCopyOnWriteCopy): |
| Added this new function. Creates a copy-on-write copy of the first |size| bytes of the |
| original SharedMemory. |
| |
| * Shared/ShareableBitmap.h: Added createCGImage helper function. |
| |
| * Shared/cg/ShareableBitmapCG.cpp: |
| (WebKit::ShareableBitmap::makeCGImageCopy): Don't compile this version of this function on |
| Windows; we'll provide our own implementation since CGBitmapContextCreateImage isn't smart |
| enough to make a copy-on-write copy on Windows. |
| (WebKit::ShareableBitmap::makeCGImage): Moved some code from here... |
| (WebKit::ShareableBitmap::createCGImage): ...to this new function. |
| |
| * Shared/cg/win/ShareableBitmapCGWin.cpp: Added. |
| (WebKit::derefSharedMemory): This function is called when the CGDataProvider is finalized. |
| All we have to do is deref the SharedMemory that was backing the CGDataProvider. |
| (WebKit::ShareableBitmap::makeCGImageCopy): Create a copy-on-write copy of the image data |
| when possible. We use the copy-on-write copy to back this ShareableBitmap from here on out, |
| and use the original SharedMemory to back the CGImage. This should prevent future |
| modifications to the ShareableBitmap from affecting the CGImage. If we can't make a |
| copy-on-write copy, we fall back to just copying the data normally. |
| |
| * win/WebKit2.vcproj: Added ShareableBitmapCGWin.cpp. |
| |
| 2011-05-04 Adam Roben <aroben@apple.com> |
| |
| Let transparent windowless plugins draw into a graphics context with an alpha channel |
| |
| Fixes <http://webkit.org/b/57647> <rdar://problem/9168462> Flash plugins with |
| wmode=transparent have black (instead of transparent) background in WebKit2 on Windows |
| |
| I had trouble writing a test case for this, so I split that task out into |
| <http://webkit.org/b/60169>. |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformPaint): Give the graphics context an alpha channel if this |
| is a transparent windowless plugin. |
| |
| 2011-05-03 Adam Roben <aroben@apple.com> |
| |
| Remove WebPageProxy::setDrawingArea |
| |
| It is unused. It also does a useless equality comparison between OwnPtrs; if they are equal, |
| we've already lost. |
| |
| Reviewed by Anders Carlsson and Antti Koivisto. |
| |
| * UIProcess/WebPageProxy.cpp: |
| * UIProcess/WebPageProxy.h: |
| Removed setDrawingArea. |
| |
| (WebKit::WebPageProxy::drawingArea): |
| (WebKit::WebPageProxy::backForwardList): |
| Made these functions const while I was at it. |
| |
| 2011-05-03 Pratik Solanki <psolanki@apple.com> |
| |
| Reviewed by Antti Koivisto. |
| |
| Part of WebCore should use CFNetwork-based loader on Mac |
| https://bugs.webkit.org/show_bug.cgi?id=51836 |
| |
| Merge the conflicting definitions of WebCore::privateBrowsingCookieStorage() into one. |
| |
| * WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| |
| 2011-05-02 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Implement FULLSCREEN_API on Windows, Part 3: WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59845 |
| |
| Implement a similar full screen mode to WebKit; Re-use the same |
| full screen window class used in WebKit in the new WebFullScreenController. |
| No animations (yet), so many of the stubs remain unimplemented. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onKeyEvent): Handle VK_ESCAPE and cancel full screen |
| mode if caught. |
| (WebKit::WebView::fullScreenController): Lazily instantiate m_fullScreenController. |
| (WebKit::WebView::fullScreenClientWindow): Added accessor. |
| (WebKit::WebView::fullScreenClientParentWindow): Ditto. |
| (WebKit::WebView::fullScreenClientSetParentWindow): Ditto. |
| (WebKit::WebView::fullScreenClientWillEnterFullScreen): Pass through to WebFullScreenManagerProxy. |
| (WebKit::WebView::fullScreenClientDidEnterFullScreen): Ditto. |
| (WebKit::WebView::fullScreenClientWillExitFullScreen): Ditto. |
| (WebKit::WebView::fullScreenClientDidExitFullScreen): Ditto. |
| * UIProcess/win/WebView.h: |
| * UIProcess/win/WebFullScreenManagerProxyWin.cpp: |
| (WebKit::WebFullScreenManagerProxy::enterFullScreen): Pass through to |
| WebFullScreenController. |
| (WebKit::WebFullScreenManagerProxy::exitFullScreen): Ditto. |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::WebView): |
| (WebKit::WebView::onKeyEvent): Handle the escape key and exit |
| full screen mode when detected. |
| (WebKit::WebView::fullScreenWindowController): Added. |
| * UIProcess/win/WebView.h: |
| * WebProcess/FullScreen/win/WebFullScreenManagerWin.cpp: |
| (WebKit::WebFullScreenManagerWin::~WebFullScreenManagerWin): |
| (WebKit::WebFullScreenManagerWin::setRootFullScreenLayer): Host the root |
| full screen layer if it gets detached. |
| * WebProcess/FullScreen/win/WebFullScreenManagerWin.h: |
| * win/WebKit2.vcproj: |
| |
| 2011-05-03 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=60087 and <rdar://problem/9373182> |
| WK2 Icon Database should provide access to all image representations in the icon. |
| |
| Expose a CFArrayRef of CGImageRefs as API for CG platforms: |
| * UIProcess/API/C/cg/WKIconDatabaseCG.cpp: |
| (WKIconDatabaseTryCopyCGImageArrayForURL): |
| * UIProcess/API/C/cg/WKIconDatabaseCG.h: |
| |
| 2011-05-03 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2 should treat API calls that start/stop loads as user gestures for responsiveness timer |
| https://bugs.webkit.org/show_bug.cgi?id=60083 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::reattachToWebProcessWithItem): |
| (WebKit::WebPageProxy::tryClose): |
| (WebKit::WebPageProxy::loadURL): |
| (WebKit::WebPageProxy::loadURLRequest): |
| (WebKit::WebPageProxy::loadHTMLString): |
| (WebKit::WebPageProxy::loadAlternateHTMLString): |
| (WebKit::WebPageProxy::loadPlainTextString): |
| (WebKit::WebPageProxy::stopLoading): |
| (WebKit::WebPageProxy::reload): |
| (WebKit::WebPageProxy::goForward): |
| (WebKit::WebPageProxy::goBack): |
| (WebKit::WebPageProxy::goToBackForwardItem): |
| Start responsiveness timer for load start/stop and close. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::SendStopResponsivenessTimer::SendStopResponsivenessTimer): |
| (WebKit::SendStopResponsivenessTimer::~SendStopResponsivenessTimer): |
| Add simple RAII class to ensure the StopResponsivenessTimer is called. |
| |
| (WebKit::WebPage::tryClose): |
| (WebKit::WebPage::loadURLRequest): |
| (WebKit::WebPage::loadData): |
| (WebKit::WebPage::stopLoading): |
| (WebKit::WebPage::reload): |
| (WebKit::WebPage::goForward): |
| (WebKit::WebPage::goBack): |
| (WebKit::WebPage::goToBackForwardItem): |
| Sends a message back to the UIProcess to indicate the WebProcess |
| is still responsive. |
| |
| 2011-05-03 Darin Adler <darin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/9250444> Enter key doesn't work in a web text field (but Return key does) |
| |
| No test at this time because the WebKit2 eventSender doesn't use this code path. |
| |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::WebEventFactory::createWebKeyboardEvent): Copied the code to special-case certain |
| keys from the corresponding Mac WebKit1 code path. |
| |
| 2011-05-03 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Unreachable URL is lost when canceling load of a new page |
| https://bugs.webkit.org/show_bug.cgi?id=60057 |
| <rdar://problem/9049135> |
| |
| When setting the unreachable URL in the WebFrameProxy, keep track of any previous unreachable URL |
| so we can restore it if the page load fails. |
| |
| * UIProcess/WebFrameProxy.cpp: |
| (WebKit::WebFrameProxy::didFailProvisionalLoad): Restore m_unreachableURL to previous value. |
| (WebKit::WebFrameProxy::setUnreachableURL): Keep track of previous unreachable URL in m_lastUnreachableURL. |
| * UIProcess/WebFrameProxy.h: Moved setUnreachableURL() implementation to .cpp file, added m_lastUnreachableURL. |
| |
| 2011-05-03 Adam Roben <aroben@apple.com> |
| |
| Fix most strict PassOwnPtr violations on Windows |
| |
| Fixes <http://webkit.org/b/60025> Windows should (almost) build with strict PassOwnPtr |
| enabled |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/CoreIPC/win/ConnectionWin.cpp: |
| (CoreIPC::Connection::writeEventHandler): Use nullptr. |
| |
| 2011-05-03 Julien Chaffraix <jchaffraix@codeaurora.org> |
| |
| Reviewed by Dimitri Glazkov. |
| |
| Element:shadowRoot & Element::ensureShadowRoot should return ShadowRoot* |
| https://bugs.webkit.org/show_bug.cgi?id=58703 |
| |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: Added #include for ShadowRoot.h. |
| |
| 2011-05-03 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| More quarantine related sandbox denial when downloading files |
| <rdar://problem/9362626> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-02 Adam Roben <aroben@apple.com> |
| |
| Take advantage of implicit conversion from nullptr_t to PassOwnPtr |
| |
| Fixes <http://webkit.org/b/59964> Implicit conversion from std::nullptr_t to PassOwnPtr |
| doesn't work, but should |
| |
| Reviewed by Adam Barth. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| * UIProcess/qt/WebContextMenuProxyQt.cpp: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| * WebProcess/WebPage/DrawingArea.cpp: |
| |
| 2011-05-03 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Eric Seidel. |
| |
| [GTK] Build webkit1 even when webkit2 is enabled |
| https://bugs.webkit.org/show_bug.cgi?id=59695 |
| |
| * GNUmakefile.am: |
| |
| 2011-05-02 Yael Aharon <yael.aharon@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] White screen displays when using MiniBrowser with DrawingAreaImpl |
| https://bugs.webkit.org/show_bug.cgi?id=60003 |
| |
| When using DrawingAreaImpl, we need to properly pass the viewSize to the WebPage. |
| Otherwise, the dirty rect will always be empty and we will not draw. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::viewSize): |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Fix crash that was introduced in r85515. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::dispatchSyncMessage): |
| If didReceiveSyncMessage returns ManualReply, the client took ownership of the reply |
| encoder so we must leak it to avoid a double-free. |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| The web process locks up when the plug-in process crashes |
| https://bugs.webkit.org/show_bug.cgi?id=59999 |
| <rdar://problem/8889303> |
| |
| Add a hash map from plug-in paths to CoreIPC connections to PluginProcessConnectionManager. |
| Add PluginProcessConnectionManager::pluginProcessCrashed and make it look up the corresponding |
| CoreIPC connection and call postConnectionDidCloseOnConnectionWorkQueue on it. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue): |
| * Platform/CoreIPC/Connection.h: |
| * WebProcess/Plugins/PluginProcessConnectionManager.cpp: |
| (WebKit::PluginProcessConnectionManager::getPluginProcessConnection): |
| (WebKit::PluginProcessConnectionManager::removePluginProcessConnection): |
| (WebKit::PluginProcessConnectionManager::pluginProcessCrashed): |
| * WebProcess/Plugins/PluginProcessConnectionManager.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::pluginProcessCrashed): |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix Windows build. |
| |
| * Scripts/webkit2/messages.py: |
| * Scripts/webkit2/messages_unittest.py: |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Dispatch the PluginProcessCrashed on the connection work queue |
| https://bugs.webkit.org/show_bug.cgi?id=59996 |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initialize): |
| Add the web process as a queue client. |
| |
| (WebKit::WebProcess::terminate): |
| Remove the web process as a queue client. |
| |
| (WebKit::WebProcess::willProcessMessageOnClientRunLoop): |
| Try calling willProcessWebProcessMessageOnClientRunLoop. |
| |
| * WebProcess/WebProcess.messages.in: |
| Add the DispatchOnConnectionQueue attribute to PluginProcessCrashed. |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Send a PluginProcessCrashed message to all web processes when a plug-in crashes |
| https://bugs.webkit.org/show_bug.cgi?id=59994 |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::didClose): |
| Iterate over all contexts and send PluginProcessCrashed to all web processes in each context. |
| |
| (WebKit::PluginProcessProxy::didFinishLaunching): |
| Call setShouldCloseConnectionOnMachExceptions on the CoreIPC connection. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::pluginProcessCrashed): |
| Add empty stub. |
| |
| * WebProcess/WebProcess.messages.in: |
| Add message. |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Plug-in not completely repainted after a crash |
| https://bugs.webkit.org/show_bug.cgi?id=59991 |
| |
| Call Widget::invalidate(). |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::pluginProcessCrashed): |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Make PluginProcessConnectionManager a member of WebProcess |
| https://bugs.webkit.org/show_bug.cgi?id=59989 |
| |
| * WebProcess/Plugins/PluginProcessConnectionManager.cpp: |
| * WebProcess/Plugins/PluginProcessConnectionManager.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::initialize): |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::pluginProcessConnectionManager): |
| |
| 2011-05-02 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| <rdar://problem/9371289> WebKit2 can persist an invalid current back/forward item index when URLs are filtered from back/forward list |
| |
| * UIProcess/cf/WebBackForwardListCF.cpp: |
| (WebKit::WebBackForwardList::createCFDictionaryRepresentation): We need to update the current index to account for filtered items |
| for all items before the current item in the array. |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Handle DispatchOnConnectionQueue for asynchronous messages |
| https://bugs.webkit.org/show_bug.cgi?id=59959 |
| |
| If any asynchronous messages have the DispatchOnConnectionQueue attribute, |
| create a new willProcess{Receiver}MessageOnClientRunLoop. |
| |
| * Scripts/webkit2/messages.py: |
| - Fix a regex bug where we would only parse attributes on synchronous messages. |
| - Collect messages with the dispatch_on_connection_queue flag set. We only handle |
| asynchronous messages currently; sync message support will be added when/if the |
| need arises. |
| |
| * Scripts/webkit2/messages_unittest.py: |
| Update test. |
| |
| 2011-05-02 Adam Barth <abarth@webkit.org> |
| |
| Reviewed by David Levin. |
| |
| PLATFORM(MAC) should (almost!) build with strict PassOwnPtr |
| https://bugs.webkit.org/show_bug.cgi?id=59924 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::sendSyncMessage): |
| (CoreIPC::Connection::waitForSyncReply): |
| (CoreIPC::Connection::dispatchSyncMessage): |
| * Platform/CoreIPC/Connection.h: |
| (CoreIPC::Connection::Message::releaseArguments): |
| - The memory management for this class is very strange. I wrote a |
| large comment. Hopefully a kind soul will come by and fix it. |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::unload): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _setFindIndicator:fadeOut:]): |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::toStringVector): |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::stop): |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient): |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): |
| |
| 2011-04-29 Chris Marrin <cmarrin@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Pages with accelerated compositing do not redraw unless scrolled |
| https://bugs.webkit.org/show_bug.cgi?id=59851 |
| |
| Added a setNeedDisplay on the non-composited content layer after |
| the size is changed so it paints the full size of the layer. Called |
| only for the areas newly exposed, if any. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: |
| (WebKit::LayerTreeHostCA::sizeDidChange): |
| |
| 2011-05-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Need a way to handle CoreIPC messages on the connection work queue |
| https://bugs.webkit.org/show_bug.cgi?id=59954 |
| |
| Add a Connection::QueueClient abstract class. This class has a single pure virtual |
| member function, willProcessMessageOnClientRunLoop which should return true if the message |
| should be forwarded to the next Connection::QueueClient in the list or Connection::Client's |
| run loop for processing and false otherwise. Users of Connection can use addQueueClient to |
| add clients and all messages will be dispatched to the queue clients first. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::addQueueClient): |
| (CoreIPC::Connection::removeQueueClient): |
| (CoreIPC::Connection::processIncomingMessage): |
| * Platform/CoreIPC/Connection.h: |
| (CoreIPC::Connection::QueueClient::~QueueClient): |
| |
| 2011-05-02 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 thinks the web process is unresponsive when a plugin displays a context menu |
| https://bugs.webkit.org/show_bug.cgi?id=59124 |
| <rdar://problem/9318600> |
| |
| This is the Windows version of <https://bugs.webkit.org/show_bug.cgi?id=58943>. |
| |
| Since we have no control over how long a plugin will take to handle an event, we need |
| to tell the UI process to stop its responsive timer when we're about to send an event |
| to the plugin. The downside of doing this is that if the plugin does become unresponsive, |
| the user won't know this immediately until they click on the web page again. At that point, |
| if the web process is unresponsive because of a hung plugin, the responsiveness timer will fire. |
| |
| We're only doing this on Windows currently when running plugins in the web process (Anders fixed |
| bug 58943 in a different way when running plugins in a separate plugin process on the Mac). |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::willSendEventToPlugin): Added, not used when running plugins in a separate process. |
| * PluginProcess/PluginControllerProxy.h: Added willSendEventToPlugin(). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::stopResponsivenessTimer): Added. |
| * UIProcess/WebPageProxy.h: Added stopResponsivenessTimer(). |
| * UIProcess/WebPageProxy.messages.in: Added StopResponsivenessTimer message. |
| |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformPaint): Tell our controller when we're about to send an event to the plugin. |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): Ditto. |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): Ditto. |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): Ditto. |
| |
| * WebProcess/Plugins/PluginController.h: Added willSendEventToPlugin(). |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::willSendEventToPlugin): Added, tell the UI process to stop its responsiveness timer. |
| * WebProcess/Plugins/PluginView.h: Added willSendEventToPlugin(). |
| |
| 2011-04-29 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Plug-in failed to initialize message should be called when Java fails to initialize |
| https://bugs.webkit.org/show_bug.cgi?id=59856 |
| |
| To match the WebKit1 behavior, WebKit2 should dispatch the plug-in failed |
| to initialize message when we can't instantiate the Java plug-in. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::createJavaAppletWidget): |
| |
| 2011-05-02 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Barth. |
| |
| Prune some #includes from DOMWindow.h |
| https://bugs.webkit.org/show_bug.cgi?id=59907 |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| Add now missing SecurityOrigin.h #include. |
| |
| 2011-04-29 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Crash closing tab with docked Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=59914 |
| <rdar://problem/9359672> |
| |
| When a tab is closed with a docked inspector, invalidate called platformClose, which |
| didn't do the tear down that is needed, but is called when we close the web inspector explcitly. |
| One part of tear down we weren't doing is removing ourselves as a WindowMessageBrodcaster listener |
| on the inspected web view, and this can cause crashes. |
| |
| This patch also renames platformClose to platformDidClose, to be clearer about when the function |
| is called. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::invalidate): Call didClose instead of platformClose. |
| (WebKit::WebInspectorProxy::didClose): Call platformDidClose instead of platformClose. |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformDidClose): Renamed from platformClose. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformDidClose): Ditto. |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| (WebKit::WebInspectorProxy::platformDidClose): Ditto. |
| * UIProcess/qt/WebInspectorProxyQt.cpp: |
| (WebKit::WebInspectorProxy::platformDidClose): Ditto. |
| |
| 2011-05-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Prune some unnecessary #includes |
| https://bugs.webkit.org/show_bug.cgi?id=59895 |
| |
| Start getting rid of unnecessary #includes and forward declares. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| * WebProcess/WebPage/WebPage.cpp: |
| |
| 2011-05-01 Patrick Gansterer <paroga@webkit.org> |
| |
| [WIN] Unreviewed buildfix after r85434. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::startDragDrop): |
| * UIProcess/win/ChunkedUpdateDrawingAreaProxyWin.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore): |
| (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore): |
| * WebProcess/WebCoreSupport/win/WebDragClientWin.cpp: |
| (WebKit::WebDragClient::startDrag): |
| * WebProcess/WebPage/win/ChunkedUpdateDrawingAreaWin.cpp: |
| (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk): |
| |
| 2011-05-01 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Can't open document from skydrive.com in Microsoft Word |
| https://bugs.webkit.org/show_bug.cgi?id=59891 |
| <rdar://problem/9354285> |
| |
| Add the AllowHalfBakedQuickDrawSupport quirk for the SharePoint plug-in. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): |
| |
| 2011-05-01 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Don't try to create a backing store for a 0x0 plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=59887 |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::geometryDidChange): |
| |
| 2011-05-01 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Kevin Decker. |
| |
| Sandbox violation by WebProcess for DownloadAssessment.plist |
| https://bugs.webkit.org/show_bug.cgi?id=59879 |
| <rdar://problem/9326041> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| Allow reading ~/Library/Preferences/com.apple.DownloadAssessment.plist |
| |
| 2011-05-01 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Remove unnecessary keychain and CoreAudio debris from WebProcess sandbox |
| https://bugs.webkit.org/show_bug.cgi?id=59873 |
| |
| These rules have been obsoleted by <rdar://problem/9301520> and |
| <rdar://problem/9181468>. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-01 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Simplify WebProcess sandbox with homedir-relative path filters. |
| https://bugs.webkit.org/show_bug.cgi?id=59872 |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-05-01 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| On-demand VPN support for sandboxed WebProcess. |
| <rdar://problem/8994181> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-30 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Reindent WebProcess sandbox to standard scheme style |
| https://bugs.webkit.org/show_bug.cgi?id=59870 |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-28 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Jon Honeycutt. |
| |
| Implement FULLSCREEN_API on Windows, Part 1: Stubs |
| https://bugs.webkit.org/show_bug.cgi?id=59778 |
| |
| Add Windows specific stubs for WebKit2 full screen APIs. |
| |
| * UIProcess/win/WebFullScreenManagerProxyWin.cpp: Added. |
| (WebKit::WebFullScreenManagerProxy::enterFullScreen): Added stub. |
| (WebKit::WebFullScreenManagerProxy::exitFullScreen): Added stub. |
| (WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode): Added stub. |
| (WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode): Added stub. |
| (WebKit::WebFullScreenManagerProxy::getFullScreenRect): Added stub. |
| * WebProcess/FullScreen/win/WebFullScreenManagerWin.cpp: Added. |
| (WebKit::WebFullScreenManager::create): Added. Returns a WebFullScreenManagerWin. |
| (WebKit::WebFullScreenManagerWin::create): Added. |
| (WebKit::WebFullScreenManagerWin::WebFullScreenManagerWin): Added. |
| (WebKit::WebFullScreenManagerWin::~WebFullScreenManagerWin): Added. |
| (WebKit::WebFullScreenManagerWin::setRootFullScreenLayer): Added stub. |
| (WebKit::WebFullScreenManagerWin::beginEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerWin::beginExitFullScreenAnimation): Added stub. |
| * WebProcess/FullScreen/win/WebFullScreenManagerWin.h: Added. |
| * win/WebKit2.vcproj: Added new classes. |
| |
| 2011-04-29 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Simon Fraser and Dan Bernstein. |
| |
| WebKit2: WebPluginTypeEnabled key is ignored when enumerating plug-ins |
| https://bugs.webkit.org/show_bug.cgi?id=59852 |
| <rdar://problem/9314011> |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginInfoFromPropertyLists): Do what WebKit1 does (but in CF dialect). And yes, |
| I've seen plists with both numbers and booleans used . |
| |
| 2011-04-29 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=59846 |
| Scrolling causes rounded bottom window corners to become square |
| <rdar://problem/9234239> |
| |
| Keep track of the m_windowBottomCornerIntersectionRect in WKView. |
| Invalidate the rect before scrolling. And if the rect is non-zero during a |
| display, mask the corners, then set the rect to zero so that only displays that |
| happen right after a scroll bother to do this. |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::scrollView): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView displayIfNeeded]): |
| (-[WKView _cacheWindowBottomCornerRect]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| |
| 2011-04-29 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| [Mac] Scrolling WK2 window should dismiss autocorrection panel. |
| https://bugs.webkit.org/show_bug.cgi?id=59809 |
| <rdar://problem/9317410> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::pageDidScroll): Dimiss autocorrection panel in this function. |
| |
| 2011-04-29 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Typing with Input methods still enters Roman characters in Safari search field frequently |
| https://bugs.webkit.org/show_bug.cgi?id=59829 |
| <rdar://problem/9336907> |
| |
| This patch regresses behavior somewhat in that inline input isn't discarded when something |
| happens in an inactive window. This doesn't work well in shipping Safari either. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _notifyInputContextAboutDiscardedComposition]): Added a method that calls |
| -discardMarkedText with a safety check. |
| (-[WKView setMarkedText:selectedRange:replacementRange:]): Use it. |
| (-[WKView _updateTextInputStateIncludingSecureInputState:]): Use it. |
| (-[WKView _resetTextInputState]): Use it. |
| |
| 2011-04-29 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Beth Dakin. |
| |
| AX: Remote accessibility should build on snow leopard |
| https://bugs.webkit.org/show_bug.cgi?id=59767 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _updateRemoteAccessibilityRegistration:]): |
| (-[WKView viewDidMoveToWindow]): |
| (-[WKView _setAccessibilityWebProcessToken:]): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformInitialize): |
| (WebKit::WebPage::registerUIProcessAccessibilityTokens): |
| * WebProcess/mac/WebProcessMainMac.mm: |
| (WebKit::WebProcessMain): |
| |
| 2011-04-29 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Add protection for shared memory failing to allocate |
| <rdar://problem/9125287> |
| https://bugs.webkit.org/show_bug.cgi?id=59842 |
| |
| * Platform/mac/SharedMemoryMac.cpp: |
| (WebKit::SharedMemory::create): |
| Add logging in shared memory failure cases. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::display): |
| Guard against ShareableBitmap failing to create a shared memory |
| backing. |
| |
| 2011-04-28 Stephanie Lewis <slewis@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=59776 |
| <rdar://problem/9287113> REGRESSION: Safari cold/warm launch time 15% to 2x regression |
| On the first draw the WebProcess is just going to send us blank bits anyway so don't |
| pause waiting for the update. Continue drawing a blank window until the WebProcess |
| sends us the update. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): |
| (WebKit::DrawingAreaProxyImpl::paint): |
| (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): |
| (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState): |
| * UIProcess/DrawingAreaProxyImpl.h: |
| |
| 2011-04-29 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by mitzpettel. |
| |
| REGRESSION (WebKit2): (Mac) Selection is gone after switching tabs (59721) |
| <rdar://problem/9327332> |
| https://bugs.webkit.org/show_bug.cgi?id=59721 |
| |
| When resigning first responder status, check to see if we need to maintain an inactive |
| selection in the web view. If we don't, we clear the selection. |
| |
| This also reverts the change made in 83814, since that was a different attempt to solve this same issue. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageSetMaintainsInactiveSelection): Export setMaintainsInactiveSelection() |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView resignFirstResponder]): Check and see if we need to maintain the selection in the view prior to resigning. |
| If not, we clear the selection |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::clearSelection): Send message across process boundary |
| (WebKit::WebPageProxy::setMaintainsInactiveSelection): Sets variable |
| * UIProcess/WebPageProxy.h: New member variable to keep track of whether we need to maintain the current selection |
| (WebKit::WebPageProxy::maintainsInactiveSelection): Returns variable |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setFocused): Reverting code to just set the focused bit instead of also clearing the selection |
| (WebKit::WebPage::clearSelection): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: add new ClearSelection() message |
| |
| 2011-04-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Application cache doesn't work due to a sandbox violation |
| https://bugs.webkit.org/show_bug.cgi?id=59818 |
| <rdar://problem/9346971> |
| |
| Add a sandbox extension for the application cache directory. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| Encode and decode the sandbox extension handle. |
| |
| * Shared/WebProcessCreationParameters.h: |
| Add a applicationCacheDirectoryExtensionHandle member. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::ensureWebProcess): |
| If we have a non-empty application cache directory, create a sandbox extension |
| and pass it to the creation parameters. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| Create and consume a sandbox extension. |
| |
| * WebProcess/WebProcess.h: |
| Add an m_applicationCachePathExtension member variable. |
| |
| 2011-04-29 Dean Jackson <dino@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Add ENABLE macro for WebKitAnimation |
| https://bugs.webkit.org/show_bug.cgi?id=59729 |
| |
| Add new feature to toggle WebKit Animation API. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Brian Weinstein. |
| |
| Crash when closing a tab that is unresponsive |
| https://bugs.webkit.org/show_bug.cgi?id=59810 |
| <rdar://problem/9329133> |
| |
| Back out r84643 - there was no rationale for this change, and it's causing crashes. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): |
| (WebKit::WebPageProxy::processDidCrash): |
| |
| 2011-04-29 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Rename page as pageProxy in WebKitWebViewBase |
| https://bugs.webkit.org/show_bug.cgi?id=59790 |
| |
| To avoid consufion between page client and page proxy. Also rename |
| some methods to webkitWebViewBase* for consistency. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseFinalize): |
| (webkitWebViewBaseExpose): |
| (webkitWebViewBaseDraw): |
| (webkitWebViewBaseSizeAllocate): |
| (webkitWebViewBaseFocusInEvent): |
| (webkitWebViewBaseFocusOutEvent): |
| (webkitWebViewBaseKeyPressEvent): |
| (webkitWebViewBaseKeyReleaseEvent): |
| (webkitWebViewBaseButtonPressEvent): |
| (webkitWebViewBaseButtonReleaseEvent): |
| (webkitWebViewBaseScrollEvent): |
| (webkitWebViewBaseMotionNotifyEvent): |
| (webkit_web_view_base_class_init): |
| (webkitWebViewBaseCreate): |
| (webkitWebViewBaseGetPage): |
| |
| 2011-04-29 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix a crash after r85214. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkit_web_view_base_init): Add line to create the page client |
| instance, removed by mistake in r85214. |
| |
| 2011-04-28 David Levin <levin@chromium.org> |
| |
| Reviewed by Adam Barth. |
| |
| Remove IMAGE_RESIZER related code. |
| https://bugs.webkit.org/show_bug.cgi?id=59735 |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-28 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Gavin Barraclough. |
| |
| Original patch by Austin Jennings. |
| |
| <rdar://problem/9350288> |
| Update sandbox profile for extension changes |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Right-clicking on a Flash movie in an iframe shows the browser context menu |
| https://bugs.webkit.org/show_bug.cgi?id=59760 |
| <rdar://problem/9340541> |
| |
| Move context menu event handling out into a separate function. Make sure to call |
| EventHandler::sendContextMenuEvent on the event handler belonging to the frame of the |
| node that was clicked, and not the main frame. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::handleContextMenuEvent): |
| (WebKit::handleMouseEvent): |
| |
| 2011-04-28 Adam Barth <abarth@webkit.org> |
| |
| Reviewed by Eric Seidel. |
| |
| Remove WML |
| https://bugs.webkit.org/show_bug.cgi?id=59678 |
| |
| Remove WML-related code in WebKit2. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| * WebProcess/WebPage/WebBackForwardListProxy.cpp: |
| * WebProcess/WebPage/WebBackForwardListProxy.h: |
| |
| 2011-04-28 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Frequent crashes in acceptsFirstMouse |
| https://bugs.webkit.org/show_bug.cgi?id=59746 |
| <rdar://problem/9281270> |
| |
| The crash occurred when connection was null (and it can become null at any time). |
| |
| Added checks for the proxy being valid in all sync calls that lacked such. |
| WebPageProxy::isValid() is not the same as WebProcessProxy::isValid(), but existing checks |
| looked at the former, so I used that. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::firstRectForCharacterInSelectedRange): |
| (WebKit::WebPageProxy::getSelectedText): |
| (WebKit::WebPageProxy::gestureWillBegin): |
| (WebKit::WebPageProxy::createSnapshotOfVisibleContent): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setComposition): |
| (WebKit::WebPageProxy::confirmComposition): |
| (WebKit::WebPageProxy::confirmCompositionWithoutDisturbingSelection): |
| (WebKit::WebPageProxy::insertText): |
| (WebKit::WebPageProxy::getMarkedRange): |
| (WebKit::WebPageProxy::getSelectedRange): |
| (WebKit::WebPageProxy::getAttributedSubstringFromRange): |
| (WebKit::WebPageProxy::characterIndexForPoint): |
| (WebKit::WebPageProxy::firstRectForCharacterRange): |
| (WebKit::WebPageProxy::executeKeypressCommands): |
| (WebKit::WebPageProxy::writeSelectionToPasteboard): |
| (WebKit::WebPageProxy::readSelectionFromPasteboard): |
| (WebKit::WebPageProxy::shouldDelayWindowOrderingForEvent): |
| (WebKit::WebPageProxy::acceptsFirstMouse): |
| |
| 2011-04-27 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| Mac side of: WebKit2: Support docked mode for Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=59134 |
| <rdar://problem/8739005> |
| |
| Implement docking of the Web Inspector on Mac. This matches the Windows (WK1 and WK2) closely, |
| where the inspector and the inspected view are siblings. |
| |
| * UIProcess/API/C/mac: Added. |
| * UIProcess/API/C/mac/WKInspectorMac.h: Added. |
| * UIProcess/API/mac/PageClientImpl.h: |
| (WebKit::PageClientImpl::wkView): Returns the WKView. |
| * UIProcess/PageClient.h: |
| * UIProcess/WebInspectorProxy.h: The inspected view is now a WebInspectorWKView, so we can override tag. |
| * UIProcess/WebPageProxy.h: Added a getter for the WKView. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (-[WebInspectorProxyObjCAdapter inspectedViewFrameDidChange:]): Calls through to WebInspectorProxy::inspectedViewFrameDidChange. |
| (-[WebInspectorWKView tag]): Returns a constant defined in WKInspectorMac.h. |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): Create a WebInspectorWKView instead of a WKView. |
| (WebKit::WebInspectorProxy::platformClose): Removed a FIXME that isn't needed anymore (we always detach before closing). |
| (WebKit::WebInspectorProxy::inspectedViewFrameDidChange): Place our inspector and the inspected view next to each other, assuming the |
| bottom of the inspector is at the Y origin. |
| (WebKit::WebInspectorProxy::platformAttach): Listen for changes to the inspected view's frame, and move the inspectorView from the |
| detached inspector window to the superview of the inspected view (to make the inspector and inspected view siblings). |
| (WebKit::WebInspectorProxy::platformDetach): Stop listening for changes to the inspected view's frame, and move the inspectorView |
| back to the detached inspector window. We also resize the inspected view to take up the space the inspector took up before |
| (assuming the bottom of the inspector was at the Y origin). |
| (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): Resize the inspector's view, and call inspectedViewFrameDidChange (which |
| syncs the inspector and the inspected view), and call setNeedsDisplay on both views. |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::wkView): |
| |
| * WebKit2.xcodeproj/project.pbxproj: Add a new file. |
| |
| 2011-04-28 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Crash under WKPageCreateSnapshotOfVisibleContent if there is no response from the Web Process |
| in the allotted time. |
| https://bugs.webkit.org/show_bug.cgi?id=59738 |
| |
| If the handle is null, don't try to create a ShareableBitmap and then a WebImage out of it. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::createSnapshotOfVisibleContent): |
| |
| 2011-04-28 Xan Lopez <xlopez@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [Gtk] Split JSC and WebCore builds |
| https://bugs.webkit.org/show_bug.cgi?id=19428 |
| |
| Build JavaScriptCore as a libtool shared library instead of a |
| private convenience library. |
| |
| * GNUmakefile.am: adapt to new name for javascriptcore target. |
| |
| 2011-04-28 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/8773946> and https://bugs.webkit.org/show_bug.cgi?id=59614 |
| Client certificate authentication in WebKit2 |
| |
| Project-file stuff: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| Allow WKCredentials to store certificates: |
| * UIProcess/Authentication/WebCredential.cpp: |
| (WebKit::WebCredential::WebCredential): |
| (WebKit::WebCredential::certificateInfo): |
| * UIProcess/Authentication/WebCredential.h: |
| (WebKit::WebCredential::create): |
| * UIProcess/API/C/WKCredential.cpp: |
| (WKCredentialCreateWithCertificateInfo): |
| * UIProcess/API/C/WKCredential.h: |
| |
| Pass the certificate info over the wire to the WebProcess: |
| * UIProcess/Authentication/AuthenticationChallengeProxy.cpp: |
| (WebKit::AuthenticationChallengeProxy::useCredential): |
| |
| Change the WebProcess to prefer certificate info over basic credentials when responding to a challenge: |
| * WebProcess/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge): Stub for platforms other than Mac, |
| as only Mac can currently respond to challenges with certificates. |
| (WebKit::AuthenticationManager::useCredentialForChallenge): |
| * WebProcess/Authentication/AuthenticationManager.h: |
| * WebProcess/Authentication/AuthenticationManager.messages.in: |
| * WebProcess/Authentication/mac: Added. |
| * WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Added. |
| (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge): Recreate the identity and certificate |
| chain and respond to the challenge with it. |
| |
| Add a newly required #include: |
| * UIProcess/API/C/WKAuthenticationChallenge.cpp: |
| * UIProcess/Authentication/AuthenticationDecisionListener.cpp: |
| |
| 2011-04-28 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Xan Lopez. |
| |
| [GTK] Click counting logic should be shared between WebKit1 and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59715 |
| |
| Use the GtkClickCounter instead of doing click counting manually. This means that |
| the code will now be shared between WebKit1 and WebKit2. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkit_web_view_base_init): Remove private member initialization. |
| (webViewButtonPressEvent): Call into GtkClickCounter. |
| |
| 2011-04-28 Martin Robinson <mrobinson@igalia.com> |
| |
| Build fix after r85197. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webViewExpose): Use cr.get() here. |
| (webViewDraw): Small clean up. |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Sam Weinig. |
| |
| [GTK] Remove WKURLCreateWithURL() |
| https://bugs.webkit.org/show_bug.cgi?id=59691 |
| |
| The name is a bit confusing and there's already |
| WKURLCreateWithUTF8CString() in the C API. |
| |
| * UIProcess/API/C/gtk/WKView.cpp: |
| * UIProcess/API/C/gtk/WKView.h: |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Make WebKitWebViewBase public in the API |
| https://bugs.webkit.org/show_bug.cgi?id=59689 |
| |
| Add WebKitWebViewBasePrivate.h and move WebKitWebViewBase inernal |
| methods to it. Rename get_type() method, since it's part of the |
| public API and should follow gtk coding style. |
| |
| * GNUmakefile.am: Add WebKitWebViewBasePrivate.h. |
| * UIProcess/API/C/gtk/WKView.cpp: Use WebKitWebViewBasePrivate.h. |
| * UIProcess/API/gtk/PageClientImpl.cpp: Ditto. |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseFinalize): |
| (webkit_web_view_base_init): |
| (webViewSizeAllocate): |
| (webViewFocusInEvent): |
| (webViewFocusOutEvent): |
| (webViewKeyPressEvent): |
| (webViewKeyReleaseEvent): |
| (webkit_web_view_base_class_init): |
| * UIProcess/API/gtk/WebKitWebViewBase.h: |
| * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Copied from Source/WebKit2/UIProcess/API/C/gtk/WKView.cpp. |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: Use WebKitWebViewBasePrivate.h. |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Move WebView to UIProcess/API/gtk |
| https://bugs.webkit.org/show_bug.cgi?id=59686 |
| |
| And rename it as PageClientImpl, since it's a page client |
| implementation, not a web view. |
| |
| * GNUmakefile.am: |
| * UIProcess/API/C/gtk/WKView.cpp: |
| * UIProcess/API/gtk/PageClientImpl.cpp: Renamed from Source/WebKit2/UIProcess/gtk/WebView.cpp. |
| (WebKit::backspaceCallback): |
| (WebKit::selectAllCallback): |
| (WebKit::cutClipboardCallback): |
| (WebKit::copyClipboardCallback): |
| (WebKit::pasteClipboardCallback): |
| (WebKit::toggleOverwriteCallback): |
| (WebKit::popupMenuCallback): |
| (WebKit::showHelpCallback): |
| (WebKit::deleteFromCursorCallback): |
| (WebKit::moveCursorCallback): |
| (WebKit::PageClientImpl::PageClientImpl): |
| (WebKit::PageClientImpl::~PageClientImpl): |
| (WebKit::PageClientImpl::getEditorCommandsForKeyEvent): |
| (WebKit::PageClientImpl::createDrawingAreaProxy): |
| (WebKit::PageClientImpl::setViewNeedsDisplay): |
| (WebKit::PageClientImpl::displayView): |
| (WebKit::PageClientImpl::scrollView): |
| (WebKit::PageClientImpl::viewSize): |
| (WebKit::PageClientImpl::isViewWindowActive): |
| (WebKit::PageClientImpl::isViewFocused): |
| (WebKit::PageClientImpl::isViewVisible): |
| (WebKit::PageClientImpl::isViewInWindow): |
| (WebKit::PageClientImpl::PageClientImpl::processDidCrash): |
| (WebKit::PageClientImpl::didRelaunchProcess): |
| (WebKit::PageClientImpl::takeFocus): |
| (WebKit::PageClientImpl::toolTipChanged): |
| (WebKit::PageClientImpl::setCursor): |
| (WebKit::PageClientImpl::setViewportArguments): |
| (WebKit::PageClientImpl::registerEditCommand): |
| (WebKit::PageClientImpl::clearAllEditCommands): |
| (WebKit::PageClientImpl::canUndoRedo): |
| (WebKit::PageClientImpl::executeUndoRedo): |
| (WebKit::PageClientImpl::convertToDeviceSpace): |
| (WebKit::PageClientImpl::convertToUserSpace): |
| (WebKit::PageClientImpl::windowToScreen): |
| (WebKit::PageClientImpl::doneWithKeyEvent): |
| (WebKit::PageClientImpl::didNotHandleKeyEvent): |
| (WebKit::PageClientImpl::createPopupMenuProxy): |
| (WebKit::PageClientImpl::createContextMenuProxy): |
| (WebKit::PageClientImpl::setFindIndicator): |
| (WebKit::PageClientImpl::pageDidEnterAcceleratedCompositing): |
| (WebKit::PageClientImpl::pageDidLeaveAcceleratedCompositing): |
| (WebKit::PageClientImpl::didCommitLoadForMainFrame): |
| (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation): |
| (WebKit::PageClientImpl::customRepresentationZoomFactor): |
| (WebKit::PageClientImpl::setCustomRepresentationZoomFactor): |
| (WebKit::PageClientImpl::pageClosed): |
| (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame): |
| (WebKit::PageClientImpl::flashBackingStoreUpdates): |
| (WebKit::PageClientImpl::findStringInCustomRepresentation): |
| (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation): |
| * UIProcess/API/gtk/PageClientImpl.h: Renamed from Source/WebKit2/UIProcess/gtk/WebView.h. |
| (WebKit::PageClientImpl::create): |
| (WebKit::PageClientImpl::addPendingEditorCommand): |
| (WebKit::PageClientImpl::userSpaceScaleFactor): |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseInit): |
| (webkitWebViewBaseCreate): |
| * UIProcess/API/gtk/WebKitWebViewBase.h: |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Use the WebPage object in WebKitWebViewBase |
| https://bugs.webkit.org/show_bug.cgi?id=59683 |
| |
| It simplifies the implementation of the event callbacks. Remove |
| also all the methods from the page client that are no longer |
| needed. |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseInit): |
| (webViewExpose): |
| (webViewDraw): |
| (webViewSizeAllocate): |
| (webViewFocusInEvent): |
| (webViewFocusOutEvent): |
| (webViewKeyPressEvent): |
| (webViewKeyReleaseEvent): |
| (webViewButtonPressEvent): |
| (webViewButtonReleaseEvent): |
| (webViewScrollEvent): |
| (webViewMotionNotifyEvent): |
| * UIProcess/API/gtk/WebKitWebViewBase.h: |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::WebView): |
| (WebKit::WebView::createDrawingAreaProxy): |
| * UIProcess/gtk/WebView.h: |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Create the page client in the view widget |
| https://bugs.webkit.org/show_bug.cgi?id=59679 |
| |
| * UIProcess/API/C/gtk/WKView.cpp: |
| (WKViewCreate): Simply create a new view widget and return it. |
| (WKViewGetPage): Use webkitWebViewBaseGetPage(). |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseFinalize): Use finalize instead of dispose to |
| make sure it's called only once, and release the private struct too. |
| (webkitWebViewBaseInit): Create the page client. |
| (webkitWebViewBaseClassInit): Don't use GObject private data structure. |
| (webkitWebViewBaseCreate): New method to create a |
| WebKitWebViewBase for a given context and page group. |
| (webkitWebViewBaseGetWebViewInstance): |
| (webkitWebViewBaseGetPage): |
| * UIProcess/API/gtk/WebKitWebViewBase.h: |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::page): Get the page from the view widget. |
| (WebKit::WebView::handleFocusInEvent): Ditto. |
| (WebKit::WebView::handleFocusOutEvent): Ditto. |
| (WebKit::WebView::WebView): Page client is now created with a view widget. |
| (WebKit::WebView::paint): Get the page from the view widget. |
| (WebKit::WebView::setSize): Ditto. |
| (WebKit::WebView::handleKeyboardEvent): Ditto. |
| (WebKit::WebView::handleMouseEvent): Ditto. |
| (WebKit::WebView::handleWheelEvent): Ditto. |
| (WebKit::WebView::close): Ditto. |
| (WebKit::WebView::createDrawingAreaProxy): Ditto. |
| * UIProcess/gtk/WebView.h: |
| (WebKit::WebView::create): The page client will be created as |
| private by the view widget, so it doesn't need to be ref counted, |
| use PassOwnPtr instead of PassRefPtr. |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] PlatformWebView should be the view widget |
| https://bugs.webkit.org/show_bug.cgi?id=59676 |
| |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: |
| (webkitWebViewBaseGetPage): Return the page of the view. |
| * UIProcess/API/gtk/WebKitWebViewBase.h: |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: Map PlatformWebView |
| to WebKitWebViewBase instead of the page client. |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::page): Use the view widget |
| directly. |
| (WebKit::ChunkedUpdateDrawingAreaProxy::ensureBackingStore): Ditto. |
| (WebKit::ChunkedUpdateDrawingAreaProxy::drawUpdateChunkIntoBackingStore): Ditto. |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::createDrawingAreaProxy): Pass the view widget to |
| the DrawingAreaProxy constructor instead of the page client. |
| * UIProcess/gtk/WebView.h: Remove getWebViewWindow() which is no |
| longer needed. |
| |
| 2011-04-28 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] WKView should be a GtkWidget |
| https://bugs.webkit.org/show_bug.cgi?id=59603 |
| |
| * UIProcess/API/C/gtk/WKAPICastGtk.h: Map WKViewRef to |
| WebKitWebViewBase instead of WebView. |
| * UIProcess/API/C/gtk/WKView.h: Remove WKViewGetWindow(). |
| * UIProcess/API/C/gtk/WKView.cpp: |
| (WKViewCreate): Return the view instead of the page client. |
| (WKViewGetPage): Use WebKitWebViewBase API to get the page client |
| containing the page. |
| |
| 2011-04-27 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 needs to notify the client when a plugin fails to initialize |
| https://bugs.webkit.org/show_bug.cgi?id=59657 |
| |
| Add didFailToInitializePlugin client function and call it when a plugin |
| fails to initialize. |
| |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::QWKPage): |
| * UIProcess/WebLoaderClient.cpp: |
| (WebKit::WebLoaderClient::didFailToInitializePlugin): |
| * UIProcess/WebLoaderClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didFailToInitializePlugin): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::initializePlugin): |
| |
| 2011-04-27 Pratik Solanki <psolanki@apple.com> |
| |
| Reviewed by Antti Koivisto. |
| |
| Part of WebCore should use CFNetwork-based loader on Mac |
| https://bugs.webkit.org/show_bug.cgi?id=51836 |
| |
| Add PLATFORM(WIN) ifdef around shouldCacheResponse. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-04-27 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Hang if a sync message handler invalidates the connection |
| https://bugs.webkit.org/show_bug.cgi?id=59627 |
| |
| If dispatching incoming messages while waiting for the sync reply caused the connection to be invalidated, |
| we need to return early or we'll wait forever. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::waitForSyncReply): |
| |
| 2011-04-27 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Move WebViewWidget to UIProcess/API/gtk |
| https://bugs.webkit.org/show_bug.cgi?id=59594 |
| |
| API files should be under the API directory. This view widget will |
| be used by both C and gtk high level API, so it has been renamed |
| to WebKitWebViewBase. |
| |
| * GNUmakefile.am: |
| * UIProcess/API/gtk/WebKitWebViewBase.cpp: Renamed from Source/WebKit2/UIProcess/gtk/WebViewWidget.cpp. |
| (webkitWebViewBaseRealize): |
| (webkitWebViewBaseContainerAdd): |
| (webkitWebViewBaseDispose): |
| (webkitWebViewBaseInit): |
| (webViewExpose): |
| (webViewDraw): |
| (webViewSizeAllocate): |
| (webViewFocusInEvent): |
| (webViewFocusOutEvent): |
| (webViewKeyPressEvent): |
| (webViewKeyReleaseEvent): |
| (getEventTime): |
| (webViewButtonPressEvent): |
| (webViewButtonReleaseEvent): |
| (webViewScrollEvent): |
| (webViewMotionNotifyEvent): |
| (webkitWebViewBaseClassInit): |
| (webkitWebViewBaseGetType): |
| (webkitWebViewBaseGetWebViewInstance): |
| (webkitWebViewBaseSetWebViewInstance): |
| (webkitWebViewBaseGetIMContext): |
| * UIProcess/API/gtk/WebKitWebViewBase.h: Renamed from Source/WebKit2/UIProcess/gtk/WebViewWidget.h. |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::WebView): |
| |
| 2011-04-26 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Laszlo Gombos. |
| |
| WebKitTestRunner needs layoutTestController.addOriginAccessWhitelistEntry |
| https://bugs.webkit.org/show_bug.cgi?id=42544 |
| |
| Also implemented removeOriginAccessWhitelistEntry and resetOriginAccessWhitelists. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleAddOriginAccessWhitelistEntry): |
| (WKBundleRemoveOriginAccessWhitelistEntry): |
| (WKBundleResetOriginAccessWhitelists): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::addOriginAccessWhitelistEntry): |
| (WebKit::InjectedBundle::removeOriginAccessWhitelistEntry): |
| (WebKit::InjectedBundle::resetOriginAccessWhitelists): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-26 Dan Bernstein <mitz@apple.com> |
| |
| Build fix. |
| |
| * Configurations/CompilerVersion.xcconfig: |
| |
| 2011-04-26 Anders Carlsson <andersca@apple.com> |
| |
| Fix 32-bit clang build. |
| |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::windowCoversAnyScreen): |
| * UIProcess/API/mac/WKTextInputWindowController.mm: |
| (-[WKTextInputPanel init]): |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::flipScreenYCoordinate): |
| (WebKit::computeFakeWindowBoundsRect): |
| * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: |
| (-[AccessibilityWebPageObject accessibilityHitTest:]): |
| |
| 2011-04-26 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by David Hyatt. |
| |
| Remove Datagrid from the tree |
| https://bugs.webkit.org/show_bug.cgi?id=59543 |
| |
| * Configurations/FeatureDefines.xcconfig: |
| Remove feature. |
| |
| 2011-04-26 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Laszlo Gombos. |
| |
| WebKitTestRunner needs layoutTestController.setAllowFileAccessFromFileURLs |
| https://bugs.webkit.org/show_bug.cgi?id=57572 |
| |
| Remove the unnecessary code that updates preference. |
| |
| * Shared/WebPreferencesStore.cpp: |
| (WebKit::WebPreferencesStore::decode): |
| * Shared/WebPreferencesStore.h: |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetAllowUniversalAccessFromFileURLs): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setAllowUniversalAccessFromFileURLs): |
| (WebKit::InjectedBundle::setAllowFileAccessFromFileURLs): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-26 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| WebKit2: Docked Inspector doesn't behave well if inspected web view isn't at 0,0 |
| https://bugs.webkit.org/show_bug.cgi?id=59554 |
| <rdar://problem/9341188> |
| |
| Use GetWindowRect and ScreenToClient to properly place our inspector and inspected |
| web views instead of using GetClientRect. We need to correctly handle the case where |
| the inspected web view isn't at 0, 0. |
| |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): |
| |
| 2011-04-26 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| Choose the compiler based on the Xcode version for Snow Leopard debug builds. |
| |
| * Configurations/Base.xcconfig: |
| * Configurations/CompilerVersion.xcconfig: Added. |
| |
| 2011-04-26 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Unreviewed build fix. |
| |
| * Platform/Region.cpp: Need to include stdio.h for printf |
| (at least in my Qt-Linux environment). |
| |
| 2011-04-26 Mihai Parparita <mihaip@chromium.org> |
| |
| Reviewed by Adam Barth. |
| |
| Turn off make built-in implicit rules for derived sources makefile |
| https://bugs.webkit.org/show_bug.cgi?id=59418 |
| |
| We don't use any of make's built-in implicit rules, turning them off |
| speeds up parsing of the makefile. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-04-26 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r84785. |
| |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| (WebKit::WebInspectorProxy::platformAttach): |
| (WebKit::WebInspectorProxy::platformDetach): |
| (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): |
| |
| 2011-04-26 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after r84886 |
| |
| * Platform/gtk/RunLoopGtk.cpp: Include WorkItem.h |
| |
| 2011-04-25 Adam Barth <abarth@webkit.org> |
| |
| Reviewed by David Levin. |
| |
| WebKit2 should play nice with strict OwnPtrs |
| https://bugs.webkit.org/show_bug.cgi?id=59426 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::waitForMessage): |
| - Lack of OwnPtr in HashMap is sad face. This code becomes very |
| pretty if we could use OwnPtr in HashMap... |
| * Platform/RunLoop.cpp: |
| (RunLoop::performWork): |
| (RunLoop::scheduleWork): |
| * Platform/RunLoop.h: |
| * Platform/mac/WorkQueueMac.cpp: |
| (WorkQueue::executeWorkItem): |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::deliverData): |
| |
| 2011-04-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Should be able to inspect Web Inspector in Debug Builds |
| https://bugs.webkit.org/show_bug.cgi?id=59378 |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::createInspectorPageGroup): Creates an inspector page group and enables |
| developer extras in a debug build. |
| (WebKit::WebInspectorProxy::inspectorPageGroup): Calls createInspectorPageGroup. |
| |
| 2011-04-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| WebKit2: Web Inspector's style sidebar fails to display when inspecting element |
| https://bugs.webkit.org/show_bug.cgi?id=58071 |
| <rdar://problem/9243093> |
| |
| When creating our WebKit2 inspector views, we were creating them on both Mac and Windows |
| with the empty rect for their initial size. Before we sized them correctly, the inspector |
| was calling window.innerWidth on them, which returned 0, making the sidebar take up 0 pixels. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): Create the window with the initial window width |
| and height. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): Ditto. |
| |
| 2011-04-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Windows part of - WebKit2: Support docked mode for Web Inspector |
| https://bugs.webkit.org/show_bug.cgi?id=59134 |
| <rdar://problem/8739005> |
| |
| Implement attaching and detaching of the Web Inspector on Windows, |
| and also support setAttachedWindowHeight when the user changes the height |
| of the docked inspector. |
| |
| This patch doesn't remember whether the user prefers attached or detached, and |
| doesn't remember the user's preferred docked height, but that will be a separate |
| bug. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::attach): Set the attached flag and call platform-specific code. |
| (WebKit::WebInspectorProxy::detach): Ditto. |
| (WebKit::WebInspectorProxy::setAttachedWindowHeight): Call platform-specific code. |
| (WebKit::WebInspectorProxy::didClose): Set m_isVisible before calling platformClose. platformClose |
| calls detach if the inspector was docked, and detach needs to know whether or not the window is |
| visible. |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebInspectorProxy.messages.in: Add new messages. |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::pageClient): Add a getter for the page client. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::windowReceivedMessage): Relay WM_WINDOWPOSCHANGING messages from the inspected |
| web view to the WebInspectorProxy. |
| (WebKit::WebInspectorProxy::onWebViewWindowPosChangingEvent): Resize the inspected web view to behave well |
| with the docked inspector. |
| (WebKit::WebInspectorProxy::platformClose): If we are attached, detach before destroying. |
| (WebKit::WebInspectorProxy::platformAttach): Set the inspector's host window to be the inspected web view's parent |
| window, so the inspected web view and the inspector are siblings. |
| (WebKit::WebInspectorProxy::platformDetach): Set the inspector's host window to be the standalone inspector window. |
| (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): Size the views. |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorClient.h: |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| (WebKit::WebInspectorFrontendClient::attachWindow): Call WebInspector::attach. |
| (WebKit::WebInspectorFrontendClient::closeWindow): Add a call to the InspectorController to disconnect the inspector frontend |
| from the inspector backend. Without this line, when we close the attached inspector, it won't re-open, because the |
| inspector controller still thinks there is a frontend. This matches WebKit1's behavior, although it seems like this is |
| something WebCore should handle. |
| (WebKit::WebInspectorFrontendClient::detachWindow): Call WebInspector::detach. |
| (WebKit::WebInspectorFrontendClient::setAttachedWindowHeight): Call WebInspector::setAttachedWindowHeight. |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaImpl::sendUpdateBackingStoreState): Add an early return if the WebPageProxy's viewSize is empty. |
| This can be needed if the inspector takes up the whole view, and it is useful to prevent a possible synchronous message |
| from the UIProcess -> WebProcess to update a backing store that isn't visible in the first place. |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::attach): Send a message to the UIProcess. |
| (WebKit::WebInspector::detach): Ditto. |
| (WebKit::WebInspector::setAttachedWindowHeight): Ditto. |
| * WebProcess/WebPage/WebInspector.h: Remove some dead code. |
| |
| 2011-04-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Alice Liu. |
| |
| WebKit2: Web Inspector: Support highlighting page elements |
| https://bugs.webkit.org/show_bug.cgi?id=59263 |
| <rdar://problem/8767659> |
| |
| Support highlighting of page elements for the inspector in WebKit2 by |
| having the WebInspectorClient be a PageOverlay Client and be responsible |
| for calling InspectorController::drawNodeHighlight. |
| |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| (WebKit::WebInspectorClient::highlight): Create our overlay if it hasn't been created, |
| or call setNeedsDisplay if it has. |
| (WebKit::WebInspectorClient::hideHighlight): Uninstall the page overlay if it exists. |
| (WebKit::WebInspectorClient::pageOverlayDestroyed): |
| (WebKit::WebInspectorClient::willMoveToWebPage): If it's being destroyed (moving to a null |
| WebPage), clear the member variable. |
| (WebKit::WebInspectorClient::didMoveToWebPage): |
| (WebKit::WebInspectorClient::drawRect): Call InspectorController::drawNodeHighlight. |
| (WebKit::WebInspectorClient::mouseEvent): |
| * WebProcess/WebCoreSupport/WebInspectorClient.h: |
| (WebKit::WebInspectorClient::WebInspectorClient): Add a new member variable. |
| |
| 2011-04-25 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Overlay scroller hard to see on pages with dark background (59183) |
| https://bugs.webkit.org/show_bug.cgi?id=59183 |
| <rdar://problem/8975367> |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): adding method to allow changing style |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::getDocumentBackgroundColor): refactoring to use common code for retrieving background color |
| |
| 2011-04-24 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9329741> Reproducible crash in WebChromeClient::invalidateContentsAndWindow() on simonscat.com |
| https://bugs.webkit.org/show_bug.cgi?id=59299 |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::invalidateContentsAndWindow): Null-check the document. |
| (WebKit::WebChromeClient::invalidateContentsForSlowScroll): Ditto. |
| |
| 2011-04-23 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r84740. |
| http://trac.webkit.org/changeset/84740 |
| https://bugs.webkit.org/show_bug.cgi?id=59290 |
| |
| change breaks apple internal builds and is incorrect |
| (Requested by smfr on #webkit). |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2011-04-22 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Beth Dakin. |
| |
| Overlay scroller hard to see on pages with dark background (59183) |
| https://bugs.webkit.org/show_bug.cgi?id=59183 |
| <rdar://problem/8975367> |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): adding method to allow changing style |
| |
| 2011-04-22 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Stop responsiveness timer before calling runOpenPanel |
| https://bugs.webkit.org/show_bug.cgi?id=59268 |
| <rdar://problem/9327944> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runOpenPanel): Stop the timer before calling WebUIClient::runOpenPanel, |
| because runOpenPanel can spin a nested run loop. |
| |
| 2011-04-22 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| WebKitTestRunner needs layoutTestController.setFrameFlatteningEnabled |
| https://bugs.webkit.org/show_bug.cgi?id=42536 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetFrameFlatteningEnabled): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setFrameFlatteningEnabled): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-22 Alejandro G. Castro <alex@igalia.com> and Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Xan Lopez. |
| |
| [GTK] Use the libWebCore.a convenience library when compiling WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59258 |
| |
| * GNUmakefile.am: Remove the libWebKit2 convenience library and use the |
| libWebCore convenience library when compiling WebKit2. Not only does this |
| maintain the CPPFLAGS isolation, it prevents double-compilation of WebCore |
| in some cases. |
| |
| 2011-04-19 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Daniel Bates. |
| |
| Full Screen from within an <iframe> does not cause <iframe> to resize. |
| https://bugs.webkit.org/show_bug.cgi?id=58638 |
| |
| Tests: fullscreen/full-screen-frameset-allowed.html |
| fullscreen/full-screen-frameset-not-allowed.html |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Cancel the background animation |
| if the full screen animation finishes first. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::WebFullScreenManagerMac): m_fullScreenRootLayer was uninitialized. |
| |
| 2011-04-22 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Brian Weinstein. |
| |
| WebKit2: Implement JavaScript unresponsiveness callback |
| https://bugs.webkit.org/show_bug.cgi?id=59248 |
| |
| Add support for suspending JavaScript in response to a callback. |
| |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::QWKPage): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::shouldInterruptJavaScript): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::shouldInterruptJavaScript): |
| * UIProcess/WebUIClient.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::shouldInterruptJavaScript): |
| |
| 2011-04-22 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Paint the bounding rect of the dirty region instead of individual rectangles when the region |
| covers at least 3/4 of its bounds. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::shouldPaintBoundsRect): Use floating point math so that the logic that was supposed to |
| achieve this actually works. |
| |
| 2011-04-22 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Crash at WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation + 79 |
| https://bugs.webkit.org/show_bug.cgi?id=59225 |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): Guard against |
| m_fullScreenRootLayer being NULL. |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): Ditto. |
| |
| 2011-04-22 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Allow MediaPlayerPrivateAVFoundation to be disabled via a preference. |
| https://bugs.webkit.org/show_bug.cgi?id=59179 |
| |
| Add API to allow the WebCore Settings preference to be called from the UIProcess. |
| |
| * Shared/WebPreferencesStore.h: Added new preference definition macro. |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetAVFoundationEnabled): Added. |
| (WKPreferencesGetAVFoundationEnabled): Added. |
| * UIProcess/API/C/WKPreferences.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Pass new preference along to WebCore |
| Settings. |
| |
| 2011-04-22 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Stop Responsiveness Timer when WebPageProxy closes or WebProcess crashes |
| https://bugs.webkit.org/show_bug.cgi?id=59210 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Stop the responsiveness timer. |
| (WebKit::WebPageProxy::processDidCrash): Ditto. |
| |
| 2011-04-21 Adam Roben <aroben@apple.com> |
| |
| Give windowless plugins' context menus an owner window in the same thread as the plugin |
| |
| In some cases, plugins pass the WKView's HWND to the ::TrackPopupMenu API. ::TrackPopupMenu |
| fails in this case because the WKView's HWND is owned by another process/thread. We work |
| around this by hooking the ::TrackPopupMenu API and providing our own window that's in the |
| same thread as the plugin instead. |
| |
| I couldn't figure out how to write a test for this. :-( |
| |
| Fixes <http://webkit.org/b/51063> <rdar://problem/8769281> REGRESSION (WebKit2): No context |
| menu appears when right-clicking on windowless Flash plugin |
| |
| Reviewed by Brian Weinstein, and looked at suspiciously by Jeff Miller. |
| |
| * Platform/Module.h: Added installIATHook on Windows. |
| |
| * Platform/win/ModuleWin.cpp: |
| (WebKit::overwriteReadOnlyMemory): New helper function. Basically a wrapper around memcpy, |
| but uses ::VirtualProtect to allow writing to otherwise-read-only memory. |
| (WebKit::findFunctionPointerAddress): New helper function. The first overload iterates over |
| the imported modules and functions looking for the given one. If found, returns the address |
| of the function pointer that is used when calling that function. The second overload calls |
| the first, first passing it an enumerator for the image's imported modules, then passing it |
| an iterator for the image's delay-loaded modules. |
| (WebKit::Module::installIATHook): Added. Finds the address of the function pointer that's |
| used when code in this module calls the given function, then overwrites the function pointer |
| with the passed-in one. Future calls to the given function made by code in this module |
| should then end up calling to the passed-in function instead of the original one. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.h: |
| (WebKit::NetscapePluginModule::module): Added this simple getter. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: Added some new Windows-only members. |
| |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::CurrentPluginSetter::CurrentPluginSetter): |
| (WebKit::CurrentPluginSetter::~CurrentPluginSetter): |
| This RAII class sets/unsets the currentPlugin global. |
| |
| (WebKit::registerPluginView): Changed to use instanceHandle() instead of the mysterious |
| gInstance. |
| (WebKit::NetscapePlugin::platformPostInitialize): For windowless plugins, hook the |
| ::TrackPopupMenu API and create a window to be used as the owner for context menus created |
| by this plugin. (Also changed the ::CreateWindowExW call for windowed plugins to pass an |
| instance handle so that the window will be associated with WebKit.dll instead of |
| WebKit2WebProcess.exe. This should have no visible effect, but is more correct.) |
| (WebKit::NetscapePlugin::platformDestroy): For windowless plugins, destroy the context menu |
| owner window we created above. |
| |
| (WebKit::NetscapePlugin::platformPaint): |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): |
| (WebKit::NetscapePlugin::platformHandleWheelEvent): |
| (WebKit::NetscapePlugin::platformSetFocus): |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): |
| Set ourselves as the current plugin. |
| |
| (WebKit::NetscapePlugin::hookedTrackPopupMenu): Added. This is the function that actually |
| gets called when windowless plugins call ::TrackPopupMenu. If the passed-in owner window is |
| owned by the current thread, we have nothing to do; ::TrackPopupMenu should work just fine. |
| Otherwise, we use the current plugin's context menu owner window as the context menu's |
| owner. We also set focus to the new owner window because otherwise weird behavior results |
| (e.g., it's possible to scroll the WKView while the context menu is up). |
| |
| 2011-04-21 Adam Roben <aroben@apple.com> |
| |
| Use WebCore's do-nothing window class instead of creating our own |
| |
| Fixes <http://webkit.org/b/59102> WebKit has too many dummy window classes |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::createDummyWindow): Less code! |
| |
| 2011-04-22 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Cannot play flash with NSPluginWrapper |
| https://bugs.webkit.org/show_bug.cgi?id=59125 |
| |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Handle the case when we have been |
| called with a null plugin instance. |
| |
| 2011-04-22 Andreas Kling <andreas.kling@nokia.com> |
| |
| Reviewed by Sam Weinig. |
| |
| [Qt][WK2] Implement DrawingAreaImpl for Qt. |
| https://bugs.webkit.org/show_bug.cgi?id=59171 |
| |
| * WebKit2.pro: Build files necessary for DrawingAreaImpl. |
| * DerivedSources.pro: Build message receivers for DrawingArea and DrawingAreaProxy. |
| |
| * Shared/qt/LayerTreeContextQt.cpp: |
| (WebKit::LayerTreeContext::LayerTreeContext): Stub. |
| (WebKit::LayerTreeContext::~LayerTreeContext): Stub. |
| (WebKit::LayerTreeContext::encode): Stub. |
| (WebKit::LayerTreeContext::decode): Stub. |
| (WebKit::LayerTreeContext::isEmpty): Stub. |
| (WebKit::operator==): Stub. |
| |
| * Shared/qt/ShareableBitmapQt.cpp: |
| (WebKit::ShareableBitmap::paint): Don't translate the painter to accomodate the |
| source rect. The rect is already adjusted at the call site. |
| |
| * UIProcess/API/qt/qgraphicswkview.h: Add "Impl" to QGraphicsWKView::BackingStoreType. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::createDrawingAreaProxy): Create DrawingAreaProxyImpl if requested. |
| (QWKPagePrivate::paint): Call the correct paint() method for DrawingAreaProxyImpl, |
| since this drawing area will simple ASSERT_NOT_REACHED() in the "normal" paint(). |
| |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): Allow creation of DrawingAreaImpl for Qt. |
| |
| * UIProcess/BackingStore.h: Add Qt-specific types and backing store. |
| |
| * UIProcess/qt/BackingStoreQt.cpp: |
| (WebKit::BackingStore::paint): Implemented. |
| (WebKit::BackingStore::incorporateUpdate): Implemented. |
| (WebKit::BackingStore::scroll): Implemented using QPixmap::scroll(). |
| |
| * UIProcess/DrawingAreaProxy.h: Enable drawing area message receivers for Qt. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveMessage): Ditto. |
| * WebProcess/WebPage/DrawingArea.h: Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didReceiveMessage): Ditto. |
| |
| 2011-04-22 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WinCairo build fix. Unreviewed. |
| |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: |
| (WebKit::Download::useCredential): |
| Stubbed. |
| (WebKit::Download::continueWithoutCredential): |
| Stubbed. |
| (WebKit::Download::cancelAuthenticationChallenge): |
| Stubbed. |
| |
| 2011-04-21 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| Need to support authentication for downloads in WebKit2 on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=59175 |
| <rdar://problem/9206151> |
| <rdar://problem/8958280> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| * WebProcess/Downloads/Download.cpp: |
| Include DownloadAuthenticationClient.h. |
| |
| * WebProcess/Downloads/Download.h: |
| Declare a function to get or create the authentication client, a member |
| var to hold it, and functions that the client can call to use a |
| credential, continue without a credential, or cancel an auth challenge. |
| |
| * WebProcess/Downloads/DownloadAuthenticationClient.cpp: Added. |
| (WebKit::DownloadAuthenticationClient::DownloadAuthenticationClient): |
| (WebKit::DownloadAuthenticationClient::receivedCredential): |
| Tell the Download to use the credential. |
| (WebKit::DownloadAuthenticationClient::receivedRequestToContinueWithoutCredential): |
| Tell the Download to continue with credentials. |
| (WebKit::DownloadAuthenticationClient::receivedCancellation): |
| Tell the Download to cancel the challenge. |
| |
| * WebProcess/Downloads/DownloadAuthenticationClient.h: Added. |
| (WebKit::DownloadAuthenticationClient::create): |
| Return a new DownloadAuthenticationClient. |
| (WebKit::DownloadAuthenticationClient::detach): |
| Clear the Download. |
| (WebKit::DownloadAuthenticationClient::refAuthenticationClient): |
| (WebKit::DownloadAuthenticationClient::derefAuthenticationClient): |
| |
| * WebProcess/Downloads/cfnet/DownloadCFNet.cpp: |
| (WebKit::Download::useCredential): |
| Create a CFURLCredentialRef from the WebCore credential, and tell |
| CFNetwork to use it for the auth challenge. |
| (WebKit::Download::continueWithoutCredential): |
| Call CFURLDownloadUseCredential with a null credential. |
| (WebKit::Download::cancelAuthenticationChallenge): |
| Cancel the download, and clear m_download. |
| (WebKit::Download::authenticationClient): |
| Create if needed and return a DownloadAuthenticationClient. |
| (WebKit::Download::platformInvalidate): |
| Detach the DownloadAuthenticationClient. |
| (WebKit::didReceiveAuthenticationChallengeCallback): |
| Call Download::didReceiveAuthenticationChallenge(), passing a |
| WebCore::AuthenticationChallenge with our DownloadAuthenticationClient. |
| (WebKit::Download::receivedCredential): |
| Get the client from the auth challenge, and call through to it. |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| Ditto. |
| (WebKit::Download::receivedCancellation): |
| Ditto. |
| |
| * win/WebKit2.vcproj: |
| Add new files to project. |
| |
| 2011-04-21 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Minimize synchronous calls during loading |
| https://bugs.webkit.org/show_bug.cgi?id=59169 |
| |
| <rdar://problem/9320128> REGRESSION(r84526): WK2 windows unresponsive |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView resignFirstResponder]): |
| (-[WKView _resetTextInputState]): |
| Made _resetTextInputState deal with client side state only, letting Editor composition be |
| discarded more discriminately. |
| |
| 2011-04-21 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add a feature define to allow <details> and <summary> to be disabled |
| https://bugs.webkit.org/show_bug.cgi?id=59118 |
| <rdar://problem/9257045> |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9311103> |
| |
| Remove unnecessary QTKitServer and Apple Events permissions |
| from the WebProcess sandbox. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9033535> |
| |
| Mute sandbox violations when attempting to read a temporary |
| CFNetwork keychain. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Ryosuke Niwa <rniwa@webkit.org> |
| |
| Reviewed by Sam Weinig. |
| |
| Add Frame* to the argument lists of canCopyCut and canPaste |
| https://bugs.webkit.org/show_bug.cgi?id=59153 |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::canCopyCut): |
| (WebKit::WebEditorClient::canPaste): |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/8774116> |
| |
| The WebProcess sandbox should only allow access to the |
| parts of the Darwin cache directory needed by the Security |
| framework. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9311053> |
| |
| The WebProcess sandbox should not allow opening arbitrary |
| IOKit user clients. Restrict to a whitelist required for normal |
| WebProcess operation, including sound and accelerated graphics. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9311037> |
| |
| The WebProcess sandbox should not allow modification of the |
| CoreAudio component cache. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9263428> |
| |
| The WebProcess sandbox should only allow outbound networking |
| to remote destinations and local kernel controls. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-21 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r82052. |
| http://trac.webkit.org/changeset/82052 |
| https://bugs.webkit.org/show_bug.cgi?id=59135 |
| |
| New full screen api should be opt-in, not opt-out. (Requested |
| by jernoble on #webkit). |
| |
| * Shared/WebPreferencesStore.h: |
| |
| 2011-04-21 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=59048 |
| Need to track whether overlay scrollbar is currently visible and in lower- |
| righthand corner |
| -and corresponding- |
| <rdar://problem/9211232> |
| |
| WebPageProxy now stores an IntRect of the scroller thumb set by WebCore through |
| the client. |
| |
| _windowResizeMouseLocationIsInVisibleScrollerThumb tests if the parameter point is |
| inside the cached scroller thumb rect. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _windowResizeMouseLocationIsInVisibleScrollerThumb:]): |
| |
| Client work to cache the rect. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::close): |
| (WebKit::WebPageProxy::processDidCrash): |
| (WebKit::WebPageProxy::notifyScrollerThumbIsVisibleInRect): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::visibleScrollerThumbRect): |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::notifyScrollerThumbIsVisibleInRect): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| New WebSystemInterface is needed by WebCore for this. |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2011-04-21 Andreas Kling <andreas.kling@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Emit QWKPage::urlChanged() when navigating within the same document. |
| https://bugs.webkit.org/show_bug.cgi?id=59044 |
| |
| Hook up the didSameDocumentNavigationForFrame callback to QWKPage::urlChanged(). |
| |
| * UIProcess/API/qt/ClientImpl.cpp: |
| (qt_wk_didSameDocumentNavigationForFrame): |
| * UIProcess/API/qt/ClientImpl.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::QWKPage): |
| |
| 2011-04-20 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Unconfirmed inline input session persists after reload |
| https://bugs.webkit.org/show_bug.cgi?id=59054 |
| <rdar://problem/9291086> |
| |
| Makes the inline input get properly confirmed or discarded when changing selection, |
| navigating to another page, focusing another view in the window, or after a web process |
| crash. |
| |
| * Shared/EditorState.h: (WebKit::EditorState::EditorState): |
| * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::editorState): |
| Added a variable that Editor sets while processing input method calls. We don't want |
| selection changes caused by -setMarkedText: discard the composition! |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::updateTextInputState): |
| (WebKit::PageClientImpl::resetTextInputState): |
| Extended updateSecureInputState() to potentially confirm the current inline input session. |
| Added resetTextInputState, which is to be called when we get out of the current web page. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView resignFirstResponder]): Just call _resetTextInputState instead of dealing with |
| input state here. |
| (-[WKView _updateSecureInputState]): Use _isFocused to make the code simpler. |
| (-[WKView _updateTextInputStateIncludingSecureInputState:]): Confirm the current inline |
| input session if selection changed for any other reason but an input method changing the |
| composition. We will want to do other work here, like dismissing a dictionary pop-up, |
| updating a font panel etc. |
| (-[WKView _resetTextInputState]): Added. We don't want secure text input persist after |
| navigations, crashes an such, and we also don't want input methods to remember inline input |
| state. Relying on selection changed notifications is fragile and insufficient. |
| |
| * UIProcess/API/mac/WKViewInternal.h: Added internal functions to keep the build unbroken. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): This is the best chance we have to reset input |
| state for a new page. This doesn't work well for cached page loads, but WK1 is quite broken |
| in that case, too. |
| (WebKit::WebPageProxy::editorStateChanged): Moved some logic up to the client, since the |
| function now does much more than before. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WebPageProxyMac.mm: (WebKit::WebPageProxy::confirmCompositionWithoutDisturbingSelection): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::confirmCompositionWithoutDisturbingSelection): |
| Added confirmCompositionWithoutDisturbingSelection(). When we confirm the composition due |
| to selection change, we obvisouly don't want the selection to move back. |
| |
| 2011-04-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Simon Fraser. |
| |
| Remove warnings from DrawingAreaImpl and related classes |
| https://bugs.webkit.org/show_bug.cgi?id=59120 |
| |
| DrawingAreaImpl is mature enough for others to adopt. Remove warnings. |
| |
| * UIProcess/BackingStore.cpp: |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| * WebProcess/WebPage/LayerTreeHost.cpp: |
| |
| 2011-04-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Simon Fraser. |
| |
| Deploy GraphicsContextStateSaver in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=59116 |
| |
| * UIProcess/FindIndicator.cpp: |
| (WebKit::FindIndicator::draw): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::paint): |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::drawRect): |
| * WebProcess/WebPage/PageOverlay.cpp: |
| (WebKit::PageOverlay::drawRect): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::drawRect): |
| (WebKit::WebPage::drawPageOverlay): |
| |
| 2011-04-21 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Need a way to get a snapshot of the visible contents of a page from the UI Process. |
| https://bugs.webkit.org/show_bug.cgi?id=59035 |
| |
| Added a sync call from the UI Process to the Web Process with comments saying that it should |
| be removed as soon as possible. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageVisibleContentsSnapshot): |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::createSnapshotOfVisibleContent): |
| * UIProcess/WebPageProxy.h: |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::createSnapshotOfVisibleContent): |
| Ask the FrameView for the visibleContentRect, and call scaledSnapshotInDocumentCoordinates |
| with a scale factor of 1 (which preserves the current scaling of the page - e.g. if the |
| page is already zoomed then the snapshot will reflect the zoomed content). |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2011-04-20 Dominic Cooney <dominicc@chromium.org> |
| |
| Reviewed by Dimitri Glazkov. |
| |
| layoutTestController can create and destroy shadow DOM |
| https://bugs.webkit.org/show_bug.cgi?id=59058 |
| |
| Support for new methods in WK2 WebKitTestRunner. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (WKBundleNodeHandleCopyElementEnsureShadowRoot): |
| (WKBundleNodeHandleRemoveShadowRoot): |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::elementShadowRoot): |
| (WebKit::InjectedBundleNodeHandle::elementEnsureShadowRoot): |
| (WebKit::InjectedBundleNodeHandle::elementRemoveShadowRoot): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: |
| |
| 2011-04-20 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Don't discard backing stores for hung web processes |
| https://bugs.webkit.org/show_bug.cgi?id=59039 |
| <rdar://problem/9237090> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::viewStateDidChange): |
| (WebKit::WebPageProxy::processDidBecomeUnresponsive): |
| (WebKit::WebPageProxy::processDidBecomeResponsive): |
| Call updateBackingStoreDiscardableState. |
| |
| (WebKit::WebPageProxy::updateBackingStoreDiscardableState): |
| Never mark the backing store as discardable if the web process is hung |
| |
| 2011-04-20 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Reproducible crash under WebPageProxy::didReceiveEvent |
| https://bugs.webkit.org/show_bug.cgi?id=59036 |
| <rdar://problem/9252083> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _resendKeyDownEvent:]): Protect against self-destruction |
| when re-dispatching the event. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::createWebPage): Fixed a type mismatch |
| I noticed while debugging. |
| |
| 2011-04-20 Timothy Hatcher <timothy@apple.com> |
| |
| Make the Web Insepctor come to the front when a breakpoint is hit. |
| |
| <https://webkit.org/b/57480> REGRESSION (WebKit2): Inspector doesn't come to the front when a breakpoint is hit in the debugger |
| <rdar://problem/9209472> |
| |
| Reviewed by Adam Roben. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::bringToFront): Added. Call platformBringToFront. |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebInspectorProxy.messages.in: Added BringToFront. |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformBringToFront): Added. Call orderFront:. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformBringToFront): Added. Call ShowWindow. |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| (WebKit::WebInspectorFrontendClient::bringToFront): Call WebInspector::bringToFront. |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::bringToFront): Added. Send WebInspectorProxy::BringToFront message. |
| * WebProcess/WebPage/WebInspector.h: Added bringToFront. |
| |
| 2011-04-20 Chris Marrin <cmarrin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| REGRESSION (WebKit2): CSS animations on pages that use accelerated compositing stop after switching tabs |
| https://bugs.webkit.org/show_bug.cgi?id=57868 |
| |
| Subclassed setRootCompositingLayer so it can call ensureAnimationsSubmitted on Win. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.h: |
| Make setRootCompositingLayer protected so it can be called from subclass |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| Override setRootCompositingLayer to add call to root layer's |
| PlatformCALayer::ensureAnimationsSubmitted method |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: |
| |
| 2011-04-18 Eric Carlson <eric.carlson@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Adopt QTKit API for listing and deleting file in its media cache. |
| <rdar://problem/9130029> |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Initialize new functions. |
| |
| 2011-04-20 Alejandro G. Castro <alex@igalia.com> |
| |
| Fixed GTK+ compilation after r84206. |
| |
| * GNUmakefile.am: |
| |
| 2011-04-20 Adam Roben <aroben@apple.com> |
| |
| Remove some unnecessary VS junk related to NativeWebMouseEventWin.cpp |
| |
| * win/WebKit2.vcproj: |
| |
| 2011-04-20 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [Qt] Cleanup includepath adjustment for generated files |
| https://bugs.webkit.org/show_bug.cgi?id=58869 |
| |
| * WebKit2.pri: Add the directory of generated files to the include |
| path with absolute path to make it valid in the final build step. |
| |
| 2011-04-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| UI process thinks the page is unresponsive when a plug-in is showing a context menu |
| https://bugs.webkit.org/show_bug.cgi?id=58943 |
| <rdar://problem/9299901> |
| |
| Change the HandleMouseEvent message to have a delayed reply and make the PluginControllerProxy |
| respond to it immediately, before even passing the event to the plug-in. Since it doesn't matter |
| for mouse events whether the plug-in handled them or not we can do this. |
| |
| Another solution could have been to make handleMouseEvent an asynchronous message, but that could |
| mess up the message ordering so this seemed like the least intrusive change. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::handleMouseEvent): |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginControllerProxy.messages.in: |
| |
| 2011-04-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Terminate hung plug-in processes after 45 seconds |
| https://bugs.webkit.org/show_bug.cgi?id=58932 |
| <rdar://problem/8083219> |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::pluginSyncMessageSendTimedOut): |
| Find the plug-in process proxy and terminate it. |
| |
| (WebKit::PluginProcessManager::pluginProcessWithPath): |
| Add new helper function. |
| |
| (WebKit::PluginProcessManager::getOrCreatePluginProcess): |
| Call pluginProcessWithPath. |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::terminate): |
| Terminate the process. |
| |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::pluginSyncMessageSendTimedOut): |
| Call PluginProcessManager::pluginSyncMessageSendTimedOut. |
| |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: |
| Add PluginSyncMessageSendTimedOut message. |
| |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::defaultSyncMessageTimeout): |
| (WebKit::PluginProcessConnection::PluginProcessConnection): |
| Set a sync message timeout on the plug-in process connection. |
| |
| (WebKit::PluginProcessConnection::syncMessageSendTimedOut): |
| Send a message to the web process proxy. |
| |
| 2011-04-19 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Adele Peterson. |
| |
| WebKit2: Merge SelectionState and TextInputState |
| https://bugs.webkit.org/show_bug.cgi?id=58919 |
| |
| Combined TextInputState and EditorState in one structure, which is updated whenever we get |
| a chance to. There is no sense to keep possibly stale SelectionState data when we have already |
| requested the most recent data synchronously. |
| |
| This also simplifies the code, as we don't need to pass the state around in a separate variable. |
| |
| * GNUmakefile.am: |
| * Scripts/webkit2/messages.py: |
| * Shared/EditorState.h: Copied from Source/WebKit2/Shared/SelectionState.h. |
| (WebKit::EditorState::EditorState): |
| * Shared/SelectionState.h: Removed. |
| * Shared/mac/TextInputState.h: Removed. |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::interpretKeyEvent): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView validRequestorForSendType:returnType:]): |
| (-[WKView validateUserInterfaceItem:]): |
| (-[WKView shouldDelayWindowOrderingForEvent:]): |
| (-[WKView doCommandBySelector:]): |
| (-[WKView insertText:replacementRange:]): |
| (-[WKView _handleStyleKeyEquivalent:]): |
| (-[WKView _executeSavedKeypressCommands]): |
| (-[WKView inputContext]): |
| (-[WKView hasMarkedText]): |
| (-[WKView unmarkText]): |
| (-[WKView setMarkedText:selectedRange:replacementRange:]): |
| (-[WKView attributedSubstringForProposedRange:actualRange:]): |
| (-[WKView _interpretKeyEvent:savingCommandsTo:WebCore::]): |
| (-[WKView _updateSecureInputState]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::editorStateChanged): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::editorState): |
| (WebKit::WebPageProxy::hasSelectedRange): |
| (WebKit::WebPageProxy::isContentEditable): |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setComposition): |
| (WebKit::WebPageProxy::confirmComposition): |
| (WebKit::WebPageProxy::insertText): |
| (WebKit::WebPageProxy::executeKeypressCommands): |
| (WebKit::WebPageProxy::writeSelectionToPasteboard): |
| (WebKit::WebPageProxy::readSelectionFromPasteboard): |
| (WebKit::WebPageProxy::interpretQueuedKeyEvent): |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::compositionSelectionChanged): |
| (WebKit::WebView::onIMEComposition): |
| (WebKit::WebView::onIMEEndComposition): |
| (WebKit::WebView::onIMERequestCharPosition): |
| (WebKit::WebView::onIMERequest): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::respondToChangedSelection): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::editorState): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::handleEditingKeyboardEvent): |
| (WebKit::WebPage::setComposition): |
| (WebKit::WebPage::confirmComposition): |
| (WebKit::WebPage::insertText): |
| (WebKit::WebPage::executeKeypressCommands): |
| * win/WebKit2.vcproj: |
| |
| 2011-04-19 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| 100% reproducible crash when right-clicking any element in Web Inspector on any page |
| https://bugs.webkit.org/show_bug.cgi?id=58822 |
| |
| Web Inspector changes selection from JavaScript, and checks in UI process are insufficient |
| when selection is changing asynchronously. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::writeSelectionToPasteboard): Check that there is a selection, matching WK1 |
| and UI process side. Perhaps the check should really be in WebCore, but for now, it's a |
| WebKit responsibility. |
| (WebKit::WebPage::readSelectionFromPasteboard): Same check, for no other reason but consistency. |
| |
| 2011-04-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add syncMessageSendTimedOut CoreIPC Connection::Client member function |
| https://bugs.webkit.org/show_bug.cgi?id=58928 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::waitForSyncReply): |
| Call syncMessageSendTimedOut. |
| |
| * Platform/CoreIPC/Connection.h: |
| Add syncMessageSendTimedOut to Connection::Client. |
| |
| * PluginProcess/PluginProcess.cpp: |
| * PluginProcess/PluginProcess.h: |
| * PluginProcess/WebProcessConnection.cpp: |
| * PluginProcess/WebProcessConnection.h: |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| * UIProcess/WebProcessProxy.h: |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| * WebProcess/Plugins/PluginProcessConnection.h: |
| * WebProcess/WebProcess.cpp: |
| * WebProcess/WebProcess.h: |
| Add syncMessageSendTimedOut stubs. |
| |
| 2011-04-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Replace the didFailToSendSyncMessage Connection::Client function with a flag |
| https://bugs.webkit.org/show_bug.cgi?id=58923 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::Connection): |
| Initialize m_shouldExitOnSyncMessageSendFailure to false. |
| |
| (CoreIPC::Connection::setShouldExitOnSyncMessageSendFailure): |
| Set m_didCloseOnConnectionWorkQueueCallback. |
| |
| (CoreIPC::Connection::sendSyncMessage): |
| Call didFailToSendSyncMessage if we fail to send the sync message for some reason. |
| |
| (CoreIPC::Connection::didFailToSendSyncMessage): |
| if m_shouldExitOnSyncMessageSendFailure is true, exit. |
| |
| * Platform/CoreIPC/Connection.h: |
| Remove didFailToSendSyncMessage from Connection::Client. |
| |
| * PluginProcess/PluginProcess.cpp: |
| * PluginProcess/PluginProcess.h: |
| Remove didFailToSendSyncMessage. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initialize): |
| * WebProcess/WebProcess.h: |
| Remove didFailToSendSyncMessage. Call setShouldExitOnSyncMessageSendFailure on our |
| UI process connection. |
| |
| 2011-04-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add a way to set the default sync message timeout for a CoreIPC connection |
| https://bugs.webkit.org/show_bug.cgi?id=58908 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::Connection): |
| Initialize m_defaultSyncMessageTimeout. |
| |
| (CoreIPC::Connection::setDefaultSyncMessageTimeout): |
| Set the m_defaultSyncMessageTimeout member variable. |
| |
| (CoreIPC::Connection::waitForSyncReply): |
| Handle the timeout being one of our two special magic values. |
| |
| * Platform/CoreIPC/Connection.h: |
| Add a DefaultTimeout constant and change the NoTimeout constant to be -1. |
| |
| 2011-04-19 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Reviewed by Pavel Feldman. |
| |
| Web Inspector: Rename lengthReceived to encodedDataLength/dataLength |
| https://bugs.webkit.org/show_bug.cgi?id=58883 |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-04-19 Andreas Kling <andreas.kling@nokia.com> |
| |
| Reviewed by Antonio Gomes. |
| |
| WebKit2: Typo fix in WebPopupMenu::Type. |
| https://bugs.webkit.org/show_bug.cgi?id=58891 |
| |
| Fixed a typo, Seperator -> Separator. |
| Also removed m_ prefix on an argument variable name. |
| |
| * Shared/WebPopupItem.h: |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::populate): |
| * WebProcess/WebCoreSupport/WebPopupMenu.cpp: |
| (WebKit::WebPopupMenu::populateItems): |
| |
| 2011-04-19 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WKContextDownloadURLRequest() should return a WKDownloadRef |
| https://bugs.webkit.org/show_bug.cgi?id=58867 |
| Part of <rdar://problem/8931717> |
| |
| Reviewed by Steve Falkenburg. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextDownloadURLRequest): |
| Return the result of calling WebContext::download(). |
| |
| * UIProcess/API/C/WKContext.h: |
| Updated return type of WKContextDownloadURLRequest(). |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::download): |
| Return the DownloadProxy returned by createDownloadProxy(). |
| (WebKit::WebContext::createDownloadProxy): |
| Return the DownloadProxy. |
| |
| * UIProcess/WebContext.h: |
| Changed return type of download() and createDownloadProxy(). |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| Call the DownloadProxy's downloadID() function to get the ID. |
| |
| 2011-04-18 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| WebKit needs to stop importing <AppKit/NSTextChecker.h> |
| https://bugs.webkit.org/show_bug.cgi?id=58798 |
| <rdar://problem/9294938> |
| |
| Use public header <AppKit/NSSpellChecker.h> instead. |
| |
| * UIProcess/mac/CorrectionPanel.h: |
| * UIProcess/mac/CorrectionPanel.mm: |
| (correctionIndicatorType): |
| (WebKit::CorrectionPanel::show): |
| (WebKit::CorrectionPanel::dismissInternal): |
| (WebKit::CorrectionPanel::handleAcceptedReplacement): |
| * UIProcess/mac/TextCheckerMac.mm: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| |
| 2011-04-05 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: WKTR should support WebKit2 full screen APIs |
| https://bugs.webkit.org/show_bug.cgi?id=56318 |
| |
| Add a new WKBundlePage API for Full Screen events, and move some of the implementation |
| of WebFullScreenManager into the new InjectedBundlePageFullScreenClient class, so that |
| the default behavior can be overridden by a WKBundlePageFullScreenClient. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: |
| (WebKit::WebFullScreenManager::supportsFullScreen): Moved contents into InjectedBundlePageFullScreenClient. |
| (WebKit::WebFullScreenManager::enterFullScreenForElement): Ditto. |
| (WebKit::WebFullScreenManager::exitFullScreenForElement): Ditto. |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageSetFullScreenClient): Added. |
| (WKBundlePageWillEnterFullScreenForElement): Added. |
| (WKBundlePageDidEnterFullScreenForElement): Added. |
| (WKBundlePageWillExitFullScreenForElement): Added. |
| (WKBundlePageDidExitFullScreenForElement): Added. |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp: Added. |
| (WebKit::InjectedBundlePageFullScreenClient::supportsFullScreen): Added. |
| (WebKit::InjectedBundlePageFullScreenClient::enterFullScreenForElement): Added. |
| (WebKit::InjectedBundlePageFullScreenClient::exitFullScreenForElement): Added. |
| * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h: Added. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::initializeInjectedBundleFullScreenClient): Added. |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::injectedBundleFullScreenClient): Added. |
| |
| 2011-04-18 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Re-add a null check lost in r83081 |
| https://bugs.webkit.org/show_bug.cgi?id=58846 |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::getSelectedRange): |
| |
| 2011-04-18 Andreas Kling <kling@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Clean up tool-tip/status-bar confusion. |
| https://bugs.webkit.org/show_bug.cgi?id=58844 |
| |
| Tool-tips were incorrectly hooked up to the status bar text. |
| Chrome::setStatusbarText() now correctly causes the QWKPage::statusBarMessage() signal. |
| |
| New API: |
| - QWKPage::toolTipChanged(const QString& toolTip) [signal] |
| |
| QGraphicsWKView will automatically listen for this and set its own toolTip(). |
| |
| * UIProcess/API/qt/ClientImpl.cpp: |
| (qt_wk_setStatusText): |
| * UIProcess/API/qt/ClientImpl.h: |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| (QGraphicsWKView::QGraphicsWKView): |
| (QGraphicsWKViewPrivate::onToolTipChanged): |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::toolTipChanged): |
| (QWKPage::QWKPage): |
| * UIProcess/API/qt/qwkpage.h: |
| |
| 2011-04-18 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| sandbox violation for ~/Library/Dictionaries |
| https://bugs.webkit.org/show_bug.cgi?id=58841 |
| <rdar://problem/9294770> |
| |
| * WebProcess/com.apple.WebProcess.sb: Add to sandbox profile. |
| No obvious harm from allowing this, though it's not 100% clear |
| why it's needed. |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the Windows build. |
| |
| * Scripts/webkit2/messages.py: |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Get rid of WebProcessProxyLegacyMessage |
| https://bugs.webkit.org/show_bug.cgi?id=58825 |
| |
| * GNUmakefile.am: |
| * Platform/CoreIPC/MessageID.h: |
| * Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h: Removed. |
| * UIProcess/WebProcessProxy.cpp: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Plugins/PluginProcessConnectionManager.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebPage/WebPage.cpp: |
| * win/WebKit2.vcproj: |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Fix build. |
| |
| * UIProcess/Plugins/PluginInfoStore.h: |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Use the message generator for the GetPluginProcessConnection message |
| https://bugs.webkit.org/show_bug.cgi?id=58815 |
| |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::callMemberFunction): |
| (CoreIPC::handleMessageDelayed): |
| Add helper functions. |
| |
| * UIProcess/Plugins/PluginInfoStore.h: |
| Mark class noncopyable. |
| |
| * UIProcess/Plugins/PluginProcessManager.cpp: |
| (WebKit::PluginProcessManager::getPluginProcessConnection): |
| This now takes a delayed reply. |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::getPluginProcessConnection): |
| This now takes a delayed reply. |
| |
| (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch): |
| (WebKit::PluginProcessProxy::didCreateWebProcessConnection): |
| Call DelayedReply::send. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::getPluginProcessConnection): |
| This now takes a delayed reply. |
| |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): |
| No need to handle this message here. |
| |
| * UIProcess/WebProcessProxy.messages.in: |
| Add GetPluginProcessConnection message. |
| |
| * WebProcess/Plugins/PluginProcessConnectionManager.cpp: |
| (WebKit::PluginProcessConnectionManager::getPluginProcessConnection): |
| Don't use deprecatedSendSync. |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Finish implementing delayed sync replies in the CoreIPC message generator |
| https://bugs.webkit.org/show_bug.cgi?id=58814 |
| |
| Put the DelayedReply function definitions in the .cpp file and fix bugs found by |
| actually trying to compile the generated files. |
| |
| * Scripts/webkit2/messages.py: |
| * Scripts/webkit2/messages_unittest.py: |
| |
| 2011-04-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Reproducible crash in Find on Page, on pages that use accelerated compositing |
| https://bugs.webkit.org/show_bug.cgi?id=58793 |
| <rdar://problem/9295870> |
| |
| Move the call to PageOverlay::setNeedsDisplay() back to WebPage::installPageOverlay; |
| it needs to be called after we've told the drawing area that a page overlay has been installed. |
| |
| * WebProcess/WebPage/PageOverlay.cpp: |
| (WebKit::PageOverlay::setPage): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::installPageOverlay): |
| |
| 2011-04-18 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| WKFrameLoadState should be a uint32_t to match our API conventions |
| https://bugs.webkit.org/show_bug.cgi?id=58785 |
| |
| * UIProcess/API/C/WKFrame.h: typedef WKFrameLoadState as a uint32_t and define its values as an anonymous enum. |
| |
| 2011-04-18 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Unreviewed. Fix WebKit2 GTK build after 84017. |
| |
| * GNUmakefile.am: |
| * Shared/NativeWebMouseEvent.h: |
| (WebKit::NativeWebMouseEvent::nativeEvent): |
| * Shared/gtk/NativeWebMouseEventGtk.cpp: Copied from Source/WebKit2/Shared/NativeWebMouseEvent.h. |
| (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::handleMouseEvent): |
| |
| 2011-04-17 David Kilzer <ddkilzer@apple.com> |
| |
| <http://webkit.org/b/58463> Switch HTTP pipelining from user default to private setting |
| <rdar://problem/9268729> |
| |
| Reviewed by Dan Bernstein. |
| |
| This replaces support for the WebKitEnableHTTPPipelining user |
| default with methods on the WebCore::ResourceRequest class in |
| WebCore, the WebView class in WebKit1, and the WebContext class |
| in WebKit2. It also removes support for the |
| WebKitForceHTTPPipeliningPriorityHigh user default which was not |
| needed. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (_WKContextSetHTTPPipeliningEnabled): Added. |
| * UIProcess/API/C/WKContextPrivate.h: |
| (_WKContextSetHTTPPipeliningEnabled): Added declaration. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::setHTTPPipeliningEnabled): Added. |
| (WebKit::WebContext::httpPipeliningEnabled): Added. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::setHTTPPipeliningEnabled): Added declaration. |
| (WebKit::WebContext::httpPipeliningEnabled): Added declaration. |
| |
| 2011-04-17 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Make more strings in WebKit2 localizable |
| https://bugs.webkit.org/show_bug.cgi?id=58757 |
| |
| * UIProcess/API/mac/PDFViewController.mm: |
| (-[WKPDFView menuForEvent:]): |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::setViewportArguments): |
| (WebKit::PageClientImpl::registerEditCommand): |
| * UIProcess/WebEditCommandProxy.cpp: |
| (WebKit::WebEditCommandProxy::nameForEditAction): |
| * UIProcess/WebEditCommandProxy.h: |
| Use WebCore's localization macro to make more strings localizable. |
| |
| 2011-04-17 Patrick Gansterer <paroga@webkit.org> |
| |
| Reviewed by Adam Barth. |
| |
| Rename PLATFORM(CA) to USE(CA) |
| https://bugs.webkit.org/show_bug.cgi?id=58742 |
| |
| * WebProcess/WebPage/LayerTreeHost.cpp: |
| * WebProcess/WebPage/win/LayerTreeHostWin.cpp: |
| (WebKit::LayerTreeHost::supportsAcceleratedCompositing): |
| |
| 2011-04-17 Patrick Gansterer <paroga@webkit.org> |
| |
| Reviewed by Adam Barth. |
| |
| Rename PLATFORM(CG) to USE(CG) |
| https://bugs.webkit.org/show_bug.cgi?id=58729 |
| |
| * Shared/ShareableBitmap.h: |
| * Shared/WebCoreArgumentCoders.cpp: |
| * Shared/WebCoreArgumentCoders.h: |
| * Shared/WebGraphicsContext.cpp: |
| (WebKit::WebGraphicsContext::WebGraphicsContext): |
| * Shared/WebGraphicsContext.h: |
| * Shared/win/PlatformCertificateInfo.cpp: |
| (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::setFindIndicator): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::drawRectToPDF): |
| (WebKit::WebPage::drawPagesToPDF): |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::platformPreferencesDidChange): |
| * config.h: |
| |
| 2011-04-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Crash when NPP_Write returns -1 when writing the manual stream |
| https://bugs.webkit.org/show_bug.cgi?id=58735 |
| <rdar://problem/9124993> |
| |
| If NPP_Write returns -1 we must cancel the stream. |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::deliverDataToPlugin): |
| |
| 2011-04-16 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Simon Fraser. |
| |
| Pages in the PageCache don't have the correct visited link coloring after being restored |
| https://bugs.webkit.org/show_bug.cgi?id=58721 |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::visitedLinkStateChanged): |
| (WebKit::WebProcess::allVisitedLinkStateChanged): |
| Mark all pages in the page cache as needing visited link style recalc |
| whenever visited link information changes. |
| |
| 2011-04-15 Daniel Bates <dbates@webkit.org> |
| |
| Attempt to fix the Qt Linux Release build after changeset 84064 <http://trac.webkit.org/changeset/84064> |
| (https://bugs.webkit.org/show_bug.cgi?id=58686). |
| |
| * UIProcess/API/qt/qwkpage_p.h: Remove takeFocus(). |
| |
| 2011-04-15 Shishir Agrawal <shishir@chromium.org> |
| |
| Reviewed by James Robinson. |
| |
| Add a flag to guard Page Visibility API changes. |
| https://bugs.webkit.org/show_bug.cgi?id=58464 |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-15 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add takeFocus callback to WKPageUIClient |
| https://bugs.webkit.org/show_bug.cgi?id=58686 |
| |
| On Windows, we need to handle moving focus out of the web view in the client, so add a takeFocus callback to WKPageUIClient |
| and stop handling taking focus in the framework in WKView.mm on the Mac. |
| |
| * UIProcess/API/C/WKPage.h: Added WKFocusDirection enum and takeFocus to WKPageUIClient. |
| * UIProcess/API/mac/PageClientImpl.h: Removed takeFocus(). |
| * UIProcess/API/mac/PageClientImpl.mm: Removed takeFocus(). |
| * UIProcess/API/mac/WKView.mm: Removed _takeFocus(). |
| * UIProcess/API/mac/WKViewInternal.h: Removed _takeFocus(). |
| * UIProcess/API/qt/ClientImpl.cpp: |
| (qt_wk_takeFocus): Added. |
| * UIProcess/API/qt/ClientImpl.h: Added qt_wk_takeFocus. |
| * UIProcess/API/qt/qwkpage.cpp: Remove takeFocus(). |
| (QWKPage::QWKPage): Added takeFocus() callback. |
| * UIProcess/PageClient.h: Removed takeFocus(). |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::takeFocus): Call m_uiClient to take focus. |
| * UIProcess/WebPageProxy.h: Pass FocusDirection as a uint32_t to takeFocus(). |
| * UIProcess/WebPageProxy.messages.in: Pass FocusDirection as a uint32_t in TakeFocus message. |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::takeFocus): Added. |
| * UIProcess/WebUIClient.h: Added takeFocus(). |
| * UIProcess/win/WebView.cpp: Removed takeFocus(), which was never implemented on Windows. |
| * UIProcess/win/WebView.h: Removed takeFocus(). |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::takeFocus): Pass FocusDirection as a uint32_t in TakeFocus message. |
| |
| 2011-04-15 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Stop using deprecated NSInputManager |
| https://bugs.webkit.org/show_bug.cgi?id=58709 |
| |
| Changed all mouse related functions to give NSInputContext a chance to handle the event, |
| added logging. Removed -rightMouseMoved: method, which was added by accident. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseMoved:]): |
| (-[WKView mouseDown:]): |
| (-[WKView mouseUp:]): |
| (-[WKView mouseDragged:]): |
| |
| 2011-04-15 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| Potential crash getting a JS wrapper. |
| |
| <rdar://problem/8988741> |
| |
| Reviewed by Brian Weinstein. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::jsWrapperForWorld): |
| Ensure that we have a valid m_coreFrame, because it can be cleared by |
| invalidate(). |
| |
| 2011-04-08 Luiz Agostini <luiz.agostini@openbossa.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] QWebPage MIME type handling inconsistency with other web browsers |
| https://bugs.webkit.org/show_bug.cgi?id=46968 |
| |
| Implementing mime type sniffing based on |
| http://tools.ietf.org/html/draft-abarth-mime-sniff-06. |
| |
| * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp: |
| (WebCore::WebFrameNetworkingContext::WebFrameNetworkingContext): |
| (WebCore::WebFrameNetworkingContext::MIMESniffingEnabled): |
| * WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h: |
| |
| 2011-04-15 Oliver Hunt <oliver@apple.com> |
| |
| GC allocate Structure |
| https://bugs.webkit.org/show_bug.cgi?id=58483 |
| |
| Rolling r83894 r83827 r83810 r83809 r83808 back in with |
| a workaround for the gcc bug seen by the gtk bots |
| |
| * WebProcess/Plugins/Netscape/JSNPMethod.h: |
| (WebKit::JSNPMethod::createStructure): |
| * WebProcess/Plugins/Netscape/JSNPObject.h: |
| (WebKit::JSNPObject::createStructure): |
| |
| 2011-04-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add API to get the bundle page overlay fade in fraction. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp: |
| (WKBundlePageOverlayFractionFadedIn): |
| * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h: |
| |
| 2011-04-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Fade the find page overlay |
| https://bugs.webkit.org/show_bug.cgi?id=58697 |
| |
| * WebProcess/WebPage/FindController.cpp: |
| Make the color components floats. |
| |
| (WebKit::overlayBackgroundColor): |
| (WebKit::holeShadowColor): |
| (WebKit::holeFillColor): |
| Add helper functions for returning the colors given the fraction faded in. |
| |
| (WebKit::FindController::drawRect): |
| Use the new helper functions. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::installPageOverlay): |
| Start the fade animation unless we're replacing an already existing page overlay |
| with another. |
| |
| 2011-04-15 Anders Carlsson <andersca@apple.com> |
| |
| Fix Windows build. |
| |
| * WebProcess/WebPage/PageOverlay.cpp: |
| (WebKit::PageOverlay::fadeAnimationTimerFired): |
| |
| 2011-04-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add the ability for PageOverlays to fade in and out |
| https://bugs.webkit.org/show_bug.cgi?id=58694 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageUninstallPageOverlay): |
| WebPage::uninstallPageOverlay now takes a boolean. Default to false for now. |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::findString): |
| Pass false to uninstallPageOverlay. |
| |
| (WebKit::FindController::hideFindUI): |
| Pass true to uninstallPageOverlay. |
| |
| * WebProcess/WebPage/PageOverlay.cpp: |
| (WebKit::PageOverlay::PageOverlay): |
| Initialize new member variables. |
| |
| (WebKit::PageOverlay::bounds): |
| Get rid of an unnecessary webPage() getter. |
| |
| (WebKit::PageOverlay::setPage): |
| Stop the animation timer. |
| |
| (WebKit::PageOverlay::startFadeInAnimation): |
| Update m_fractionFadedIn and call startFadeAnimation. |
| |
| (WebKit::PageOverlay::startFadeOutAnimation): |
| Ditto. |
| |
| (WebKit::PageOverlay::startFadeAnimation): |
| Initialize m_fadeAnimationStartTime and start the fade animation timer. |
| |
| (WebKit::PageOverlay::fadeAnimationTimerFired): |
| Update m_fractionFadedIn and call setNeedsDisplay(). |
| |
| * WebProcess/WebPage/PageOverlay.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::uninstallPageOverlay): |
| If fadeOut is true, tell the page overlay to start the fade out animation. |
| When the fade animation is complete, the page overlay will uninstall itself. |
| |
| 2011-04-15 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Views should be made visible before painting in WM_PRINTCLIENT messages |
| https://bugs.webkit.org/show_bug.cgi?id=58676 |
| <rdar://problem/9279211> |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onPrintClientEvent): If our view isn't currently visible set it to visible |
| before painting, then reset it back to not visible after painting. |
| (WebKit::WebView::onShowWindowEvent): Call setIsVisible instead of duplicating logic. |
| (WebKit::WebView::setIsVisible): Set the m_isVisible flag and call viewStateDidChange. |
| * UIProcess/win/WebView.h: |
| |
| 2011-04-15 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| onClick does not function with <select> elements in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57904 |
| <rdar://problem/9217757> |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/NativeWebMouseEvent.h: Copied from Source/WebKit2/UIProcess/WebPopupMenuProxy.h. |
| (WebKit::NativeWebMouseEvent::nativeEvent): |
| * Shared/mac/NativeWebMouseEventMac.mm: Added. |
| (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): |
| * Shared/qt/NativeWebMouseEventQt.cpp: Copied from Source/WebKit2/UIProcess/WebPopupMenuProxy.h. |
| (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): |
| * Shared/win/NativeWebMouseEventWin.cpp: Copied from Source/WebKit2/UIProcess/WebPopupMenuProxy.h. |
| (WebKit::NativeWebMouseEvent::NativeWebMouseEvent): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseMoved:]): |
| (-[WKView _mouseHandler:]): Pre-compiler mouse handler calls need to use the new NativeWebMouseEvent class |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::mouseMoveEvent): |
| (QWKPagePrivate::mousePressEvent): |
| (QWKPagePrivate::mouseReleaseEvent): |
| (QWKPagePrivate::mouseDoubleClickEvent): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::handleMouseEvent): keep track of mouse down event in order to be able to send a fake mouse up event on the select element |
| (WebKit::WebPageProxy::currentMouseDownEvent): for access by the popup menu proxy to dispatch the fake mouse up event |
| (WebKit::WebPageProxy::didReceiveEvent): clear out the cached mouse down event |
| (WebKit::WebPageProxy::processDidCrash): clear out the cached events since we assume that didReceiveEvent did not called prior to the crash |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPopupMenuProxy.h: |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::showPopupMenu): after notifying the popup menu client that the value changed, fake mouse up and mouse move events are posted |
| * UIProcess/win/WebPopupMenuProxyWin.cpp: |
| (WebKit::WebPopupMenuProxyWin::showPopupMenu): after notifying the popup menu client that the value changed, fake mouse up and mouse move events are posted |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onMouseEvent): |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| |
| 2011-04-15 Alexey Proskuryakov <ap@apple.com> |
| |
| Qt build fix. |
| |
| * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::selectionStateChanged): Wrap the variable |
| in PLATFORM(MAC), too, as it's unused on other platforms. |
| |
| 2011-04-15 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| <rdar://problem/9287880> and https://bugs.webkit.org/show_bug.cgi?id=58596 |
| WK2: Past searches not remembered for <input type=search results="5" autosave="foo"> |
| |
| Add SaveRecentSearches and LoadRecentSearches messages: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebPageProxy.h: |
| |
| Message up to the UIProcess for the save/load operations: |
| * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: |
| (WebKit::WebSearchPopupMenu::saveRecentSearches): |
| (WebKit::WebSearchPopupMenu::loadRecentSearches): |
| * WebProcess/WebCoreSupport/WebPopupMenu.h: |
| (WebKit::WebPopupMenu::page): |
| |
| Save the values to disk CFPreference-style: |
| * UIProcess/cf/WebPageProxyCF.cpp: |
| (WebKit::autosaveKey): |
| (WebKit::WebPageProxy::saveRecentSearches): |
| (WebKit::WebPageProxy::loadRecentSearches): |
| |
| Stubbed out for non-CF platforms: |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::saveRecentSearches): |
| (WebKit::WebPageProxy::loadRecentSearches): |
| * UIProcess/qt/WebPageProxyQt.cpp: |
| (WebKit::WebPageProxy::saveRecentSearches): |
| (WebKit::WebPageProxy::loadRecentSearches): |
| |
| 2011-04-14 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Password field input does not switch to ASCII-compatible source |
| https://bugs.webkit.org/show_bug.cgi?id=58583 |
| <rdar://problem/9059651> |
| |
| The implementation is more modern than what we have in WK1. Instead of returning a null |
| input context (as in non-editable content), we now set page context's properties. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::updateSecureInputState): |
| Forward updateSecureInputState() call from WebPageProxy to WKView. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): ASSERT that we didn't somehow leave secure input events enabled. |
| (-[WKView becomeFirstResponder]): Update secure event mode. |
| (-[WKView resignFirstResponder]): Disable secure event mode. |
| (-[WKView setMarkedText:selectedRange:replacementRange:]): Prevent most advanced editing |
| behaviors in password fields, matching NSSecureTextInputField. |
| (-[WKView attributedSubstringForProposedRange:actualRange:]): Disable TSM Document Access |
| in password fields. There is also a check in web process, but it doest't hurt to check twice. |
| (-[WKView _windowDidBecomeKey:]): Call _updateSecureInputState. |
| (-[WKView _windowDidResignKey:]): Call _updateSecureInputState. |
| (-[WKView _updateSecureInputState]): Update secure event mode and allowed input sources. |
| |
| * UIProcess/API/mac/WKViewInternal.h: Added _updateSecureInputState. |
| |
| * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::selectionStateChanged): Update secure |
| input state when going in or out a password field. |
| |
| 2011-04-14 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Eric Carlson. |
| |
| REGRESSION: Rendering in <video> element appears to render quickly to catch up if it has been playing in a background tab |
| https://bugs.webkit.org/show_bug.cgi?id=58637 |
| |
| Notify AVFoundation that no one will be rendering when the view or window moves off screen. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::isViewVisible): Return false if the view's window is not visible. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView addWindowObserversForWindow:]): Observe orderOut and orderIn events. |
| (-[WKView removeWindowObservers]): Ditto. |
| (-[WKView _windowDidOrderOffScreen:]): Added. |
| (-[WKView _windowDidOrderOnScreen:]): Added. |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::suspendPainting): Call LayerTreeHost::pauseRendering. |
| (WebKit::DrawingAreaImpl::resumePainting): Call LayerTreeHost::resumeRendering. |
| * WebProcess/WebPage/LayerTreeHost.h: |
| (WebKit::LayerTreeHost::pauseRendering): Added stub. |
| (WebKit::LayerTreeHost::resumeRendering): Added stub. |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h: |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm: |
| (WebKit::LayerTreeHostCAMac::pauseRendering): Added. Post a notification with our |
| intention to stop rendering. |
| (WebKit::LayerTreeHostCAMac::resumeRendering): Added. Post a notification with our |
| intention to start rendering. |
| |
| 2011-04-15 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Need a way to keep the WebProcess alive for testing purposes. |
| https://bugs.webkit.org/show_bug.cgi?id=58592 |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextDisableProcessTermination): |
| (WKContextEnableProcessTermination): |
| * UIProcess/API/C/WKContextPrivate.h: |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| Initialize m_processTerminationEnabled to true. |
| (WebKit::WebContext::enableProcessTermination): |
| Set m_processTerminationEnabled to true, and try to terminate the web process. |
| (WebKit::WebContext::shouldTerminate): |
| If !m_processTerminationEnabled, return false. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::disableProcessTermination): |
| Set m_processTerminationEnabled to false; |
| |
| 2011-04-15 Nancy Piedra <nancy.piedra@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][Symbian] Need to export ViewportAttributes class |
| https://bugs.webkit.org/show_bug.cgi?id=58651 |
| |
| On Symbian, if the ViewportAttributes class is not exported we get |
| linking errors. |
| |
| Since this is a compilation issue, no new tests added. |
| |
| * UIProcess/API/qt/qwkpage.h: |
| |
| 2011-04-15 Anna Cavender <annacc@chromium.org> |
| |
| Reviewed by Eric Carlson. |
| |
| Renaming TRACK feature define to VIDEO_TRACK |
| https://bugs.webkit.org/show_bug.cgi?id=53556 |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-14 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Select All context menu item doesn't work in Flash |
| https://bugs.webkit.org/show_bug.cgi?id=58615 |
| <rdar://problem/9225761> |
| |
| In some cases, -[NSWindow isKeyWindow] will return false even if |
| a window is the key window, so we have to compare our window |
| against -[NSApplication keyWindow]. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::isViewWindowActive): |
| |
| 2011-04-14 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add CFPreference based backend for WebKit2 preferences |
| https://bugs.webkit.org/show_bug.cgi?id=58605 |
| |
| * UIProcess/cf/WebPreferencesCF.cpp: |
| (WebKit::cfStringFromWebCoreString): |
| (WebKit::makeKey): |
| (WebKit::setStringValueIfInUserDefaults): |
| (WebKit::setBoolValueIfInUserDefaults): |
| (WebKit::setUInt32ValueIfInUserDefaults): |
| (WebKit::setDoubleValueIfInUserDefaults): |
| (WebKit::WebPreferences::platformInitializeStore): |
| (WebKit::WebPreferences::platformUpdateStringValueForKey): |
| (WebKit::WebPreferences::platformUpdateBoolValueForKey): |
| (WebKit::WebPreferences::platformUpdateUInt32ValueForKey): |
| (WebKit::WebPreferences::platformUpdateDoubleValueForKey): |
| Implement platform functions using CFPreferences API. |
| |
| 2011-04-14 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/8665102> and https://bugs.webkit.org/show_bug.cgi?id=58595 |
| Menu is not displayed for <input type=search results="5"> |
| |
| * WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: |
| (WebKit::WebSearchPopupMenu::enabled): Return true, like all good search popup menus should. |
| |
| * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm: |
| (WebKit::WebPopupMenu::setUpPlatformData): Remember the shouldPopOver-ness. |
| |
| * Shared/PlatformPopupMenuData.cpp: |
| (WebKit::PlatformPopupMenuData::encode): Remember the shouldPopOver-ness. |
| (WebKit::PlatformPopupMenuData::decode): Remember the shouldPopOver-ness. |
| * Shared/PlatformPopupMenuData.h: |
| |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::showPopupMenu): Use the shouldPopOver-ness to adjust display position. |
| |
| 2011-04-14 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Crash in NetscapePluginModule::tryGetSitesWithData when NPP_GetSitesWithData returns null |
| https://bugs.webkit.org/show_bug.cgi?id=58578 |
| <rdar://problem/9275201> |
| |
| It's OK for NPP_GetSitesWithData to return null. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::tryGetSitesWithData): |
| |
| 2011-04-14 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Make creating WebPreferences lazy |
| https://bugs.webkit.org/show_bug.cgi?id=58570 |
| |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::WebPageGroup::WebPageGroup): |
| (WebKit::WebPageGroup::~WebPageGroup): |
| (WebKit::WebPageGroup::setPreferences): |
| (WebKit::WebPageGroup::preferences): |
| * UIProcess/WebPageGroup.h: |
| Don't create the WebPreference object until it is requested. |
| |
| 2011-04-14 Pratik Solanki <psolanki@apple.com> |
| |
| Reviewed by David Kilzer. |
| |
| Set minimum priority for fast lane connections |
| https://bugs.webkit.org/show_bug.cgi?id=58353 |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Support for new WKSI method WKSetHTTPPipeliningMinimumFastLanePriority. |
| |
| 2011-04-14 Anders Carlsson <andersca@apple.com> |
| |
| Clang warning fixes. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/mac/TextCheckerMac.mm: |
| * WebProcess/Downloads/mac/DownloadMac.mm: |
| |
| 2011-04-14 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Timothy Hatcher. |
| |
| WebKit2: Add an option for a PageGroup to be invisible to the History Client. |
| https://bugs.webkit.org/show_bug.cgi?id=58547 |
| |
| * Shared/WebPageGroupData.cpp: |
| (WebKit::WebPageGroupData::encode): |
| (WebKit::WebPageGroupData::decode): |
| * Shared/WebPageGroupData.h: |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::inspectorPageGroup): |
| The Web Inspector should not be visible to the History Client, because its HTML-based nature |
| should not be exposed through the API. |
| |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::WebPageGroup::create): |
| (WebKit::WebPageGroup::WebPageGroup): |
| * UIProcess/WebPageGroup.h: |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::updateGlobalHistory): |
| Do not send the message to the WebContent for the history client. |
| (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): |
| Ditto. |
| (WebKit::WebFrameLoaderClient::setTitle): |
| Ditto. |
| |
| * WebProcess/WebPage/WebPageGroupProxy.h: |
| (WebKit::WebPageGroupProxy::isVisibleToHistoryClient): |
| |
| 2011-04-14 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt][WK2] Make Qt port compiling with ENABLE_PLUGIN_PROCESS=1 |
| https://bugs.webkit.org/show_bug.cgi?id=55719 |
| |
| Guard functionality related to complex text and implementations |
| that rely on MachPort with PLATFORM(MAC). |
| Based on Oleg Romashin's patch. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| * PluginProcess/PluginControllerProxy.messages.in: |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::createWebProcessConnection): |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::createPlugin): |
| * Shared/Plugins/PluginProcessCreationParameters.cpp: |
| (WebKit::PluginProcessCreationParameters::decode): Fix bad C++ that |
| does not compile with gcc-linux. |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch): |
| (WebKit::PluginProcessProxy::didCreateWebProcessConnection): |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/PluginProcessProxy.messages.in: |
| * WebKit2.pro: Move implementation that does not need external |
| visibility from WebKit2API.pri. Adding the headers as well. |
| * WebKit2API.pri: |
| * WebProcess/Plugins/PluginProcessConnectionManager.cpp: |
| (WebKit::PluginProcessConnectionManager::getPluginProcessConnection): |
| * WebProcess/WebPage/WebPage.cpp: |
| |
| 2011-04-13 James Robinson <jamesr@chromium.org> |
| |
| Reviewed by Simon Fraser. |
| |
| Allow setting composited backing stores for scrollbars and scroll corners |
| https://bugs.webkit.org/show_bug.cgi?id=57202 |
| |
| Update WebPopupMenuProxyWin to reflect ScrollableArea interface changes. |
| |
| * UIProcess/win/WebPopupMenuProxyWin.h: |
| (WebKit::WebPopupMenuProxyWin::invalidateScrollCornerRect): |
| (WebKit::WebPopupMenuProxyWin::scrollCornerPresent): |
| (WebKit::WebPopupMenuProxyWin::scrollCornerRect): |
| |
| 2011-04-13 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| REGRESSION(r81880): Paste menu is disabled for many edit fields (yahoo and google search, yahoo mail msg, forms, etc) |
| https://bugs.webkit.org/show_bug.cgi?id=58284 |
| <rdar://problem/9246149> |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setFocused): Check for whether we are not supposed to be focused AND whether our platform behavior dictates to clear out the selection |
| |
| 2011-04-13 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Fixed a bug where WKView changed the cursor when the mouse was moving over other views. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseMoved:]): If getting this message because this view is the first responder, |
| ignore it unless it is inside the visible rect. |
| |
| 2011-04-13 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Should not rely on WKEditableLinkBehavior being in synch |
| with WebCore::EditableLinkBehavior. |
| https://bugs.webkit.org/show_bug.cgi?id=58473 |
| |
| Adding conversion routines. |
| |
| * UIProcess/API/C/WKAPICast.h: |
| (WebKit::toAPI): |
| (WebKit::toEditableLinkBehavior): |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetEditableLinkBehavior): |
| (WKPreferencesGetEditableLinkBehavior): |
| |
| 2011-04-13 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| After closing the last window, re-opening my last visited website is over 2X slower |
| https://bugs.webkit.org/show_bug.cgi?id=58488 |
| <rdar://problem/9233518> |
| |
| Give the web process a 60 second termination timeout. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| |
| 2011-04-13 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Convert WebProcess over to using disableTermination/enableTermination |
| https://bugs.webkit.org/show_bug.cgi?id=58485 |
| |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::getSitesWithData): |
| (WebKit::PluginProcess::clearSiteData): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * Shared/ChildProcess.h: |
| (WebKit::ChildProcess::LocalTerminationDisabler::LocalTerminationDisabler): |
| (WebKit::ChildProcess::LocalTerminationDisabler::~LocalTerminationDisabler): |
| Add RAII class for calling disableTermination/enableTermination. |
| |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: |
| (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManager::deleteAllEntries): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::getHostnamesWithCookies): |
| (WebKit::WebCookieManager::deleteCookiesForHostname): |
| (WebKit::WebCookieManager::deleteAllCookies): |
| (WebKit::WebCookieManager::startObservingCookieChanges): |
| (WebKit::WebCookieManager::setHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManager::getHTTPCookieAcceptPolicy): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/Downloads/Download.cpp: |
| (WebKit::Download::Download): |
| Call disableTermination(). |
| |
| (WebKit::Download::~Download): |
| Call enableTermination(). |
| |
| * WebProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::downloadFinished): |
| Remove call to terminateIfPossible. |
| |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManager::deleteAllEntries): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/MediaCache/WebMediaCacheManager.cpp: |
| (WebKit::WebMediaCacheManager::getHostnamesWithMediaCache): |
| (WebKit::WebMediaCacheManager::clearCacheForHostname): |
| (WebKit::WebMediaCacheManager::clearCacheForAllHostnames): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::getCacheOrigins): |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManager::clearCacheForAllOrigins): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: |
| (WebKit::WebDatabaseManager::getDatabasesByOrigin): |
| (WebKit::WebDatabaseManager::getDatabaseOrigins): |
| (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin): |
| (WebKit::WebDatabaseManager::deleteDatabasesForOrigin): |
| (WebKit::WebDatabaseManager::deleteAllDatabases): |
| (WebKit::WebDatabaseManager::setQuotaForOrigin): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::createWebPage): |
| Call disableTermination(). |
| |
| (WebKit::WebProcess::removeWebPage): |
| Call enableTermination(). |
| |
| (WebKit::WebProcess::shouldTerminate): |
| Move logic from terminateIfPossible over here. |
| |
| (WebKit::WebProcess::terminate): |
| Move logic from terminateIfPossible over here. |
| |
| (WebKit::WebProcess::getSitesWithPluginData): |
| (WebKit::WebProcess::clearPluginSiteData): |
| Use the LocalTerminationDisabler RAII class. |
| |
| * WebProcess/WebProcess.h: |
| Publically inherit from ChildProcess, LocalTerminationDisabler needs to be accessible |
| from the WebProcess class. |
| |
| 2011-04-13 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Follow-up to: WebKit2 will load two copies of the same plugin, but should not |
| https://bugs.webkit.org/show_bug.cgi?id=49075 |
| |
| Use pathGetFileName instead of Win32 PathFindFileNameW. |
| |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): |
| |
| 2011-04-13 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Gavin Barraclough. |
| |
| WebKit2 doesn't keep overlay scrollers shown while scroll gesture held |
| <rdar://problem/9260518> |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| Initialize new WKSI functions. |
| |
| 2011-04-13 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| WebKit2 will load two copies of the same plugin, but should not |
| https://bugs.webkit.org/show_bug.cgi?id=49075 |
| <rdar://problem/8635947> |
| |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): Don't use a plug-in if we've already allowed a plug-in with the same filename. |
| |
| 2011-04-13 Timothy Hatcher <timothy@apple.com> |
| |
| Hide the dictionary panel when navigating or crashing. |
| |
| <rdar://problem/9261202> |
| |
| Reviewed by Sam Weinig. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::dismissDictionaryLookupPanel): Added. Call WKHideWordDefinitionWindow. |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): Call PageClient::dismissDictionaryLookupPanel. |
| (WebKit::WebPageProxy::processDidCrash): Call dismissCorrectionPanel and PageClient::dismissDictionaryLookupPanel. |
| |
| 2011-04-13 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add support for disabling/enabling termination to ChildProcess |
| https://bugs.webkit.org/show_bug.cgi?id=58476 |
| |
| Add ChildProcess::disableTermination and ChildProcess::enableTermination and convert |
| the PluginProcess class over to using them. |
| |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::PluginProcess): |
| The child process now takes a terminationTimeout argument. Get rid of the shutdown timer. |
| |
| (WebKit::PluginProcess::removeWebProcessConnection): |
| Call enableTermination(). |
| |
| (WebKit::PluginProcess::shouldTerminate): |
| Always return true. |
| |
| (WebKit::PluginProcess::createWebProcessConnection): |
| Call disableTermination(). |
| |
| (WebKit::PluginProcess::getSitesWithData): |
| Call disableTermination()/enableTermination(). |
| |
| (WebKit::PluginProcess::clearSiteData): |
| Ditto. |
| |
| * Shared/ChildProcess.cpp: |
| (WebKit::ChildProcess::disableTermination): |
| Increment the counter and stop the timer. |
| |
| (WebKit::ChildProcess::enableTermination): |
| Decrement the counter; if it's zero, start the timer. |
| |
| (WebKit::ChildProcess::terminationTimerFired): |
| Call shouldTerminate(). If it returns true, call terminate(). |
| |
| (WebKit::ChildProcess::terminate): |
| Call RunLoop::quit(). |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| Just initialize the termination timeout to 0 for now. |
| |
| (WebKit::WebProcess::shouldTerminate): |
| Always return true; this isn't used yet. |
| |
| * WebProcess/WebProcess.h: |
| |
| 2011-04-13 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| REGRESSION: Links are clickable when a contentEditable is set to true. |
| https://bugs.webkit.org/show_bug.cgi?id=58473 |
| <rdar://problem/9256793> |
| |
| Added support for editable link behavior property. |
| |
| * Shared/WebPreferencesStore.cpp: |
| * Shared/WebPreferencesStore.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetEditableLinkBehavior): |
| (WKPreferencesGetEditableLinkBehavior): |
| * UIProcess/API/C/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2011-04-12 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| REGRESSION (WebKit2): Input methods are active in non-editable content |
| https://bugs.webkit.org/show_bug.cgi?id=58404 |
| <rdar://problem/9275940> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView insertText:]): Re-add the old variant of this function, because it's not only part |
| of deprecated NSTextInput protocol, but it's also part of NSResponder, and it's called when |
| the input context in nil. |
| (-[WKView inputContext]): Return nil when not in editable content. |
| |
| 2011-04-12 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9029193> and https://bugs.webkit.org/show_bug.cgi?id=58406 |
| Bringing up the context menu on a link might also follow the link. |
| |
| This patch adds a flag that is set just before the WebProcess tells the UIProcess to show a context menu. |
| |
| As long as this flag is set, the WebProcess will ignore any other mouse events that might have queued up |
| by the time the UIProcess gets around to showing the menu. |
| |
| After the UIProcess is done showing the menu, it messages back telling the WebProcess to clear the flag |
| and resume normal MouseEvent handling. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::showContextMenu): No matter what internalShowContextMenu does, always notify |
| the WebProcess that any context menu is now hidden. |
| (WebKit::WebPageProxy::internalShowContextMenu): |
| * UIProcess/WebPageProxy.h: |
| |
| * WebProcess/WebPage/WebContextMenu.cpp: |
| (WebKit::WebContextMenu::show): Since we're telling the UIProcess to show the menu, tell the WebPage a |
| context menu is showing so it will stop handling mouse events. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| (WebKit::WebPage::mouseEvent): Don't try to handle mouse events if a context menu is flagged as showing. |
| |
| Add accessors to twiddle the "context menu showing" flag: |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::contextMenuShowing): |
| (WebKit::WebPage::contextMenuHidden): |
| * WebProcess/WebPage/WebPage.messages.in: Add the ContextMenuHidden message. |
| |
| 2011-04-12 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Quarantine related sandbox denial when downloading files |
| <rdar://problem/9203736> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-12 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Sandbox violations dragging an image to the desktop. |
| <rdar://problem/9261834> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-12 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Cameron Zwarich. |
| |
| Sandbox violations trying to access ~/Library/Keyboard Layouts and ~/Library/Input Methods |
| <rdar://problem/8973159> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-12 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Alexey Proskuryakov and Sam Weinig. |
| |
| Implement non-activating clicks to allow dragging out of a background window. |
| https://bugs.webkit.org/show_bug.cgi?id=55053 |
| <rdar://problem/9042197> |
| |
| Added methods to WKView to support non activating click. Unfortunately both |
| methods require a synchronous call to the WebProcess to decide what to do. |
| acceptFirstMouse is called only if shouldDelayWindowOrderingForEvent returns |
| true. In order to minimize the number of synchronous calls, we send the request |
| only if our window is not the key window. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView acceptsFirstMouse:]): |
| (-[WKView shouldDelayWindowOrderingForEvent:]): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::shouldDelayWindowOrderingForEvent): |
| (WebKit::WebPageProxy::acceptsFirstMouse): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::shouldDelayWindowOrderingEvent): |
| (WebKit::WebPage::acceptsFirstMouse): |
| |
| 2011-04-12 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Crash when serializing a null AttributedString |
| https://bugs.webkit.org/show_bug.cgi?id=58393 |
| <rdar://problem/9275326> |
| |
| * Shared/mac/AttributedString.mm: |
| (WebKit::AttributedString::encode): |
| (WebKit::AttributedString::decode): |
| Prefix the serialized value with an isNull tag. |
| |
| 2011-04-12 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Infinite recursion in WebHTMLView executeSavedKeypressCommands. |
| https://bugs.webkit.org/show_bug.cgi?id=58382 |
| <rdar://problem/9239370> |
| |
| Execution of some editing commands could trigger a call to selectedRange that |
| internally calls executeSavedKeypressCommands creating an infinite recursion. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _executeSavedKeypressCommands]): Added flag to avoid recursion. |
| (-[WKView _interpretKeyEvent:withCachedTextInputState:savingCommandsTo:WebCore::]): |
| Added flag initialization. |
| |
| 2011-04-12 Chris Marrin <cmarrin@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Page tears and stutters in WebKit2 when page is > 2048 pixels wide |
| https://bugs.webkit.org/show_bug.cgi?id=58330 |
| |
| Turn off tiling for nonCompositedContentLayer to avoid tearing when |
| scrolling very wide (> 2048) windows. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: |
| (WebKit::LayerTreeHostCA::initialize): |
| |
| 2011-04-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Assertion in DrawingAreaImpl::resumePainting() (m_isPaintingSuspended) when clicking a link at twitter.com |
| https://bugs.webkit.org/show_bug.cgi?id=58377 |
| <rdar://problem/8976531> |
| |
| Remove the assertion. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::resumePainting): |
| |
| 2011-04-11 Stephanie Lewis <slewis@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=58280 |
| <rdar://problem/9252824> javascript in an inconsistent state due to serialization returning an un-handled exception |
| Change use of SerializedScriptValue::Create to use the same api as the rest of WebKit2. This has the benefit |
| of handling any exceptions so Javascript is not in an inconsistent state. |
| |
| * Shared/API/c/WKSerializedScriptValue.h: fix a typo |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): |
| |
| 2011-04-12 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Pressing Tab in Web Inspector's console does not cycle through completion options |
| https://bugs.webkit.org/show_bug.cgi?id=56020 |
| |
| Safari was always calling TranslateMessage() on key events since it has no way to know whether |
| WebKit handled the event without a PageUIClient (which Safari only installs on pages inside |
| a Safari window), which was generating a WM_CHAR message containing the tab in this case. The fix |
| is for Safari to never call TranslateMessage() on key events outside of a Safari window, but this |
| means the WebPageProxy needs to do this for unhandled key events if there is no didNotHandleKeyEvent |
| callback in the PageUIClient. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveEvent): Call TranslateMessage() on Windows for unhandled key events that can't be handled by the PageUIClient. |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::canNotHandleKeyEvent): Added. |
| * UIProcess/WebUIClient.h: Added canNotHandleKeyEvent(). |
| |
| 2011-04-12 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=58292 |
| Provide new setting to allow site icon loading despite disabling automatic image loading in general. |
| |
| * Shared/WebPreferencesStore.h: Add macro for setting default value. |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetLoadsSiteIconsIgnoringImageLoadingPreference): Added setter. |
| (WKPreferencesGetLoadsSiteIconsIgnoringImageLoadingPreference): Added getter. |
| * UIProcess/API/C/WKPreferences.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Add to list of WebCore settings that get propagated to WebKit preferences. |
| |
| 2011-04-12 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Spelling and Grammar Checking: Make sure to remove the markings from the document |
| when spelling and/or grammar checking is disabled. |
| https://bugs.webkit.org/show_bug.cgi?id=58350 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView toggleContinuousSpellChecking:]): |
| Move the call to unmark the errors to the WebProcess. |
| (-[WKView setGrammarCheckingEnabled:]): |
| Ditto. |
| (-[WKView toggleGrammarChecking:]): |
| Ditto. |
| |
| * UIProcess/WebPageProxy.cpp: |
| Remove unused functions. |
| * UIProcess/WebPageProxy.h: |
| Ditto. |
| * WebProcess/WebPage/WebPage.messages.in: |
| Ditto. |
| * WebProcess/WebPage/WebPage.h: |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::setTextCheckerState): |
| If grammar or spelling checking is disabled, unmark all the pages. |
| Doing it here allows makes it possible to unmark all pages in a cross-platform way that is |
| triggered both by selecting the the context menu items and by any other methods of updating |
| the enabled / disabled state. |
| |
| 2011-04-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Cisco Meeting Center will not download or launch from Safari |
| https://bugs.webkit.org/show_bug.cgi?id=58366 |
| <rdar://problem/8987139> |
| |
| It's OK if a plug-in has less (or more) MIME type descriptions than actual MIME types. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginInfoFromCarbonResources): |
| |
| 2011-04-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Call PluginControllerProxy::platformGeometryDidChange before Plugin::geometryDidChange |
| https://bugs.webkit.org/show_bug.cgi?id=58361 |
| |
| Since Plugin::geometryDidChange ends up calling plug-in code it can resize the plug-in which causes |
| platformGeometryDidChange to be called with the wrong rect. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::geometryDidChange): |
| Call platformGeometryDidChange. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/mac/PluginControllerProxyMac.mm: |
| (WebKit::PluginControllerProxy::platformGeometryDidChange): |
| Remove the parameters to platformGeometryDidChange and just use m_frameRect instead. |
| |
| 2011-04-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Move three Mac specific functions to PluginControllerProxyMac.mm. |
| |
| 2011-04-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Cache the window and plug-in element NPObjects |
| https://bugs.webkit.org/show_bug.cgi?id=58355 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| (WebKit::PluginControllerProxy::~PluginControllerProxy): |
| (WebKit::PluginControllerProxy::windowScriptNPObject): |
| (WebKit::PluginControllerProxy::pluginElementNPObject): |
| * PluginProcess/PluginControllerProxy.h: |
| |
| 2011-04-12 Alejandro G. Castro <alex@igalia.com> |
| |
| Fixed GTK compilation after r83454. |
| |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::findStringInCustomRepresentation): |
| (WebKit::WebView::countStringMatchesInCustomRepresentation): |
| * UIProcess/gtk/WebView.h: |
| |
| 2011-04-11 Daniel Bates <dbates@webkit.org> |
| |
| Attempt to fix the Qt Linux Release build after changeset 83550 <http://trac.webkit.org/changeset/83550> |
| (https://bugs.webkit.org/show_bug.cgi?id=54159). |
| |
| * WebKit2API.pri: Append UIProcess/API/C/WKResourceCacheManager.cpp to the list WEBKIT2_API_SOURCES. |
| |
| 2011-04-11 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Move focus management out of WebKit via the UIClient |
| <rdar://problem/8784068> |
| https://bugs.webkit.org/show_bug.cgi?id=58278 |
| |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::QWKPage): |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setFocus): |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::focus): |
| (WebKit::WebUIClient::unfocus): |
| * UIProcess/WebUIClient.h: |
| * UIProcess/gtk/WebView.cpp: |
| * UIProcess/gtk/WebView.h: |
| * UIProcess/win/WebView.h: |
| Remove PageClient::setFocus() in favor of WebUIClient::focus and WebUIClient::unfocus. |
| |
| 2011-04-11 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Cannot use Ctrl-Delete as a custom keyboard shortcut |
| https://bugs.webkit.org/show_bug.cgi?id=58265 |
| <rdar://problem/9221468> |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::keyEvent): Added a comment explaining that doing work after DOM event |
| dispatch isn't great. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performNonEditingBehaviorForSelector): Added a comment explaining how this |
| might be moved down to WebCore. |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): This is now empty, since both Space |
| and Backspace behaviors are implemented in WebCore. |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Try to fix the Windows build. |
| |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| |
| 2011-04-11 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| REGRESSION (r83081): Esc key no longer removes current Kotoeri text operation |
| https://bugs.webkit.org/show_bug.cgi?id=58274 |
| <rdar://problem/9263683> |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::getMarkedRange): Wrap the returned |
| temporary in RefPtr. |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Remove m_urlAtProcessExit from WebPageProxy |
| https://bugs.webkit.org/show_bug.cgi?id=58275 |
| |
| Get rid of m_urlAtProcessExit and replace some zeros with nullptrs. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::processDidCrash): |
| * UIProcess/WebPageProxy.h: |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Remove the WebContext member variable from WebPageProxy |
| https://bugs.webkit.org/show_bug.cgi?id=58271 |
| <rdar://problem/9148125> |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageGetContext): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::create): |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::process): |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| (WebKit::WebPageProxy::canShowMIMEType): |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| (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::didRemoveFrameFromHierarchy): |
| (WebKit::WebPageProxy::didDisplayInsecureContentForFrame): |
| (WebKit::WebPageProxy::didRunInsecureContentForFrame): |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForNewWindowAction): |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| (WebKit::WebPageProxy::unableToImplementPolicy): |
| (WebKit::WebPageProxy::willSubmitForm): |
| (WebKit::WebPageProxy::mouseDidMoveOverElement): |
| (WebKit::WebPageProxy::showContextMenu): |
| (WebKit::WebPageProxy::contextMenuItemSelected): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::createWebPage): |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| |
| 2011-04-11 Eric Carlson <eric.carlson@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Ignore context change callbacks when not on the main thread |
| https://bugs.webkit.org/show_bug.cgi?id=58256 |
| <rdar://problem/9266090> |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::contextDidChangeCallback): Do nothing when not called |
| on the main thread. This should only happen when no changes have actually |
| been committed to the context, eg. when a video frame has been added to an image |
| queue, so return without triggering animations etc. |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| First step towards simplifying WebPageProxy/WebProcessProxy/WebContext ownership |
| https://bugs.webkit.org/show_bug.cgi?id=58266 |
| <rdar://problem/9148125> |
| |
| With this patch, the WKView holds a strong reference to a WebPageProxy. The |
| WebPageProxy in turn holds a strong reference to its WebProcessProxy. Finally, |
| The WebProcessProxy holds a strong reference to its WebContext. |
| |
| The WebContext holds a strong reference to the running WebProcessProxy which results |
| in a reference cycle that's broken when the web process exits. |
| |
| The reason for is to avoid crashes where WebPageProxy::process() returns null if the web process |
| has crashed but has not yet been relaunched. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::disconnectProcess): |
| Add comment. |
| |
| (WebKit::WebContext::createWebPage): |
| Return a PassRefPtr. |
| |
| (WebKit::WebContext::relaunchProcessIfNecessary): |
| Change this to return a WebPageProxy. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::create): |
| This now takes a PassRefPtr<WebProcessProxy>. |
| |
| (WebKit::WebPageProxy::WebPageProxy): |
| Ditto. |
| |
| (WebKit::WebPageProxy::~WebPageProxy): |
| Call close() if necessary. |
| |
| (WebKit::WebPageProxy::reattachToWebProcess): |
| Replace the current process with the new process. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::create): |
| Take a PassRefPtr<WebContext>. |
| |
| (WebKit::WebProcessProxy::WebProcessProxy): |
| Ditto. |
| |
| (WebKit::WebProcessProxy::webPage): |
| Remove .get() now that the page map uses weak references. |
| |
| (WebKit::WebProcessProxy::createWebPage): |
| This now returns the created web page proxy. |
| |
| 2011-04-11 Adam Roben <aroben@apple.com> |
| |
| Dispatch sent messages to windows owned by the web process when waiting a sync CoreIPC reply |
| |
| On Windows, windowed plugins' HWNDs are created as children of the WKView's window. This |
| creates a cross-process window hierarchy, which in turn attaches the input states of the UI |
| process's and web process's main threads (as if ::AttachThreadInput has been called). Having |
| the input states attached means that changes to the input state (e.g., changing the focus |
| window) can result in synchronous window messages being sent between the processes. This can |
| result in deadlocks if the UI process changes the input state while handling a synchronous |
| CoreIPC message from the web process. Since the web process isn't running its message loop |
| while waiting for the reply, it never processes the messages Windows is sending it from the |
| UI process. |
| |
| The solution taken in this patch is to continue to dispatch sent (not posted) messages to |
| windows created by the web process while waiting for a sync CoreIPC reply. Someday we can |
| hopefully reduce the number of cases in which the UI process modifies the thread's input |
| state while handling a synchronous message; see the bug for details. |
| |
| Fixes <http://webkit.org/b/58239> <rdar://problem/8769302> REGRESSION (WebKit2): Deadlock |
| clicking Flash plugin |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/CoreIPC/BinarySemaphore.h: |
| (CoreIPC::BinarySemaphore::event): Added. Simple getter to expose the underlying event |
| HANDLE. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::SyncMessageState::waitWhileDispatchingSentMessages): New Windows-only |
| function that is used instead of wait() so that sent messages will continue to be |
| dispatched. |
| (CoreIPC::Connection::waitForSyncReply): Use waitWhileDispatchingSentMessages instead of |
| wait on Windows. Our Client gives us the set of windows that need to have windows delivered |
| to them. |
| |
| * Platform/CoreIPC/Connection.h: Added new |
| windowsToReceiveSentMessagesWhileWaitingForSyncReply function to Client. |
| |
| * Platform/RunLoop.h: Added new dispatchSentMessagesUntil function to be used while waiting |
| for a sync CoreIPC reply. |
| |
| * Platform/win/RunLoopWin.cpp: |
| (RunLoop::dispatchSentMessagesUntil): Added. If we have no windows to dispatch messages to, |
| then just wait on the semaphore. Otherwise spin a ::MsgWaitForMultipleObjectsEx loop to |
| detect when the semaphore is signaled, the timeout elapses, or sent messages are available, |
| and handle each case appropriately. |
| |
| * UIProcess/WebProcessProxy.h: Added new CoreIPC::Connection::Client function. |
| |
| * UIProcess/win/WebProcessProxyWin.cpp: Added. |
| (WebKit::WebProcessProxy::windowsToReceiveSentMessagesWhileWaitingForSyncReply): Just return |
| an empty Vector. The web process never modifies the thread's input state while responding to |
| a synchronous message, so we don't have anything to worry about here. |
| |
| * WebProcess/WebProcess.h: Added new CoreIPC::Connection::Client function. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::addWindowToVectorIfOwnedByCurrentThread): New helper function to be called by |
| ::EnumThreadWindows/::EnumChildWindows. Does what it says. |
| (WebKit::WebProcess::windowsToReceiveSentMessagesWhileWaitingForSyncReply): Added. Returns |
| all top-level windows created by this thread, descendants of those windows created by this |
| thread, and descendants of WKViews' windows created by this thread. |
| |
| * win/WebKit2.vcproj: Added WebProcessProxyWin.cpp. |
| |
| 2011-04-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 7: Implement getGuessesForWord, learnWord, and ignoreWord. |
| |
| * UIProcess/API/C/win/WKTextChecker.cpp: |
| (WKTextCheckerChangeSpellingToWord): |
| * UIProcess/API/C/win/WKTextChecker.h: |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::changeSpellingToWord): |
| Make this function const since it does not modify the WebPageProxy and making it const |
| allows WebTextChecker::changeSpellingToWord to take a const WebPageProxy. |
| (WebKit::WebPageProxy::learnWord): |
| * UIProcess/WebPageProxy.h: |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::getGuessesForWord): |
| Ask the TextCheckerClient for the guesses. |
| (WebKit::TextChecker::learnWord): |
| Tell the TextCheckerClient. |
| (WebKit::TextChecker::ignoreWord): |
| Ditto. |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::learnWord): |
| Add an unused param that is necessary for Windows. |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::learnWord): |
| Ditto. |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::learnWord): |
| Ditto. |
| |
| * UIProcess/win/WebTextChecker.cpp: |
| (WebKit::WebTextChecker::changeSpellingToWord): |
| Tell the page. |
| * UIProcess/win/WebTextChecker.h: |
| |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::guessesForWord): |
| (WebKit::WebTextCheckerClient::learnWord): |
| (WebKit::WebTextCheckerClient::ignoreWord): |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Remove unused WebProcessProxy functions |
| https://bugs.webkit.org/show_bug.cgi?id=58262 |
| |
| * UIProcess/WebProcessProxy.cpp: |
| * UIProcess/WebProcessProxy.h: |
| |
| 2011-04-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Crash in WebPageProxy::countStringMatches |
| https://bugs.webkit.org/show_bug.cgi?id=58255 |
| <rdar://problem/9243837> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::countStringMatches): |
| Return early if the page is not valid. |
| |
| 2011-04-11 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: links don’t update to look visited |
| <rdar://problem/8806254> |
| https://bugs.webkit.org/show_bug.cgi?id=58252 |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::visitedLinkStateChanged): |
| (WebKit::WebProcess::allVisitedLinkStateChanged): |
| * WebProcess/WebProcess.h: |
| Remove use of vestigial sharedPageGroup and instead iterate set of |
| page groups in use by the process. |
| |
| 2011-04-11 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Windows 7 Gestures Window Bounce shouldn't require a sync message |
| https://bugs.webkit.org/show_bug.cgi?id=58167 |
| <rdar://problem/9259813> |
| |
| Instead of making GestureDidScroll sync, have WebPageWin call from WebProcess -> |
| UIProcess when the gesture causes the page to scroll to the beginning or the |
| end of the document. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::gestureDidScroll): Not a sync message anymore. |
| (WebKit::WebPageProxy::setGestureScrollingLimitReached): Tell the page client that the gesture |
| scrolling limnit was reached. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: Add a new message. |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::WebView): Initialize new variable. |
| (WebKit::WebView::onGesture): Use the state of the member variable, not the response from |
| the sync message. |
| * UIProcess/win/WebView.h: |
| (WebKit::WebView::setGestureScrollingLimitReached): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::scrollbarAtTopOfBottomOrDocument): Returns whether or not the scrollbar is at the |
| top or bottom of the document. |
| (WebKit::WebPage::gestureDidScroll): Track whether or not we started at the beginning |
| or end of the document, and whether or not we ended at the beginning or end of the document, |
| and send a message if the value changed. |
| |
| 2011-04-04 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WK2: PDF: Find in page |
| https://bugs.webkit.org/show_bug.cgi?id=57765 |
| |
| Support searching text within PDF documents. Find requests must be routed from the |
| WebPageProxy, through the PageClient, and to the WKView, where they can be passed to |
| the PDFViewController. |
| |
| * UIProcess/API/mac/PDFViewController.h: |
| * UIProcess/API/mac/PDFViewController.mm: |
| (_PDFSelectionsAreEqual): Copied from WebPDFView. |
| (-[WKPDFView _nextMatchFor:direction:caseSensitive:wrap:fromSelection:startInSelection:]): Copied from WebPDFView. |
| (-[WKPDFView _countMatches:caseSensitive:]): Added. |
| (WebKit::PDFViewController::findString): Added. |
| (WebKit::PDFViewController::countStringMatches): Added. |
| * UIProcess/PageClient.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::findStringInCustomRepresentation): Added. |
| (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation): Added. |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _findStringInCustomRepresentation:withFindOptions:maxMatchCount:]): Added. |
| (-[WKView _countStringMatchesInCustomRepresentation:withFindOptions:maxMatchCount:]): Added. |
| * UIProcess/WebPageProxy.h: Moved a number of find-related functions from private: to public: so |
| they could be called from PDFViewController. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::findString): Added. |
| (WebKit::WebPageProxy::countStringMatches): Added. |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::findStringInCustomRepresentation): Added stub. |
| (WebKit::WebView::countStringMatchesInCustomRepresentation): Ditto. |
| * UIProcess/win/WebView.h: |
| * UIProcess/API/qt/qwkpage_p.h: |
| (QWKPagePrivate::findStringInCustomRepresentation): Added stub. |
| (QWKPagePrivate::countStringMatchesInCustomRepresentation): Added stub. |
| |
| 2011-04-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 6: Update the Spelling UI with the spelling and grammar mistakes. |
| |
| * UIProcess/API/C/win/WKAPICastWin.h: |
| (WebKit::toAPI): |
| Make it possible to go from a WebCore::GrammarDetail to a WebGrammarDetail. |
| |
| * UIProcess/API/C/win/WKGrammarDetail.cpp: |
| (WKGrammarDetailCreate): |
| (WKGrammarDetailGetLocation): |
| (WKGrammarDetailGetLength): |
| (WKGrammarDetailCopyGuesses): |
| (WKGrammarDetailCopyUserDescription): |
| * UIProcess/API/C/win/WKGrammarDetail.h: |
| |
| * UIProcess/API/C/win/WKTextChecker.cpp: |
| (WKTextCheckerCheckSpelling): |
| Tell the WebTextChecker. |
| * UIProcess/API/C/win/WKTextChecker.h: |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::contextMenuItemSelected): |
| If the show/hide spelling UI is selected and the spelling UI is not showing, make sure to |
| advance to the next misspelling (in this case, the first). |
| This behavior matches that in WebCore and WKView.mm. |
| (WebKit::WebPageProxy::advanceToNextMisspelling): |
| Make this function const since it does not modify the WebPageProxy and making it const |
| allows WebTextChecker::checkSpelling to take a const WebPageProxy. |
| (WebKit::WebPageProxy::spellDocumentTag): |
| (WebKit::WebPageProxy::updateSpellingUIWithMisspelledWord): |
| (WebKit::WebPageProxy::updateSpellingUIWithGrammarString): |
| * UIProcess/WebPageProxy.h: |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::uniqueSpellDocumentTag): |
| Tell the TextCheckerClient which WebPageProxy this tag is for. |
| (WebKit::TextChecker::updateSpellingUIWithMisspelledWord): |
| Tell the TextCheckerClient. |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Ditto. |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::uniqueSpellDocumentTag): |
| Add the new argument that is unused by this port. |
| (WebKit::TextChecker::updateSpellingUIWithMisspelledWord): |
| Ditto. |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Ditto. |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::uniqueSpellDocumentTag): |
| Ditto. |
| (WebKit::TextChecker::updateSpellingUIWithMisspelledWord): |
| Ditto. |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Ditto. |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::uniqueSpellDocumentTag): |
| Ditto. |
| (WebKit::TextChecker::updateSpellingUIWithMisspelledWord): |
| Ditto. |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Ditto. |
| |
| * UIProcess/win/WebGrammarDetail.cpp: |
| (WebKit::WebGrammarDetail::create): |
| (WebKit::WebGrammarDetail::WebGrammarDetail): |
| (WebKit::WebGrammarDetail::guesses): |
| * UIProcess/win/WebGrammarDetail.h: |
| (WebKit::WebGrammarDetail::location): |
| (WebKit::WebGrammarDetail::length): |
| (WebKit::WebGrammarDetail::userDescription): |
| |
| * UIProcess/win/WebTextChecker.cpp: |
| (WebKit::WebTextChecker::checkSpelling): |
| Tell the page to advance to the next misspelling. This matches the WK1 WebView.cpp logic. |
| |
| * UIProcess/win/WebTextChecker.h: |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::uniqueSpellDocumentTag): |
| (WebKit::WebTextCheckerClient::toggleSpellingUIIsShowing): |
| (WebKit::WebTextCheckerClient::updateSpellingUIWithMisspelledWord): |
| (WebKit::WebTextCheckerClient::updateSpellingUIWithGrammarString): |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| 2011-04-10 Maciej Stachowiak <mjs@apple.com> |
| |
| Not reviewed. |
| |
| Remove extra inadvertantly commiteed changes from last change. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-10 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| REGRESSION: WebProcess spews sandboxing violations for outbound network traffic |
| https://bugs.webkit.org/show_bug.cgi?id=58215 |
| <rdar://problem/9251695> |
| |
| * WebProcess/com.apple.WebProcess.sb: Restore some previously removed rules. |
| |
| 2011-04-10 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com> |
| |
| Reviewed by Eric Seidel. |
| |
| Require no undefined symbols during compilation. |
| |
| [Qt] [WK2] WebKitTestRunner, QtWebProcess and WTRInjectBundle should fail to compile when there's undefined symbols |
| https://bugs.webkit.org/show_bug.cgi?id=54896 |
| |
| Add -Wl,--no-undefined to catch missing symbols early. |
| |
| * WebProcess.pro: |
| |
| 2011-04-09 Geoffrey Garen <ggaren@apple.com> |
| |
| Not reviewed. |
| |
| Try recommitting some things svn left out of my last commit. |
| |
| * WebProcess/Plugins/Netscape/NPJSObject.h: |
| |
| 2011-04-09 Geoffrey Garen <ggaren@apple.com> |
| |
| Not reviewed. |
| |
| Try recommitting some things svn left out of my last commit. |
| |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| (WebKit::NPRuntimeObjectMap::evaluate): |
| |
| 2011-04-08 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Safari doesn't respect cmd-arrows (and variations) as custom keyboard shortcuts |
| https://bugs.webkit.org/show_bug.cgi?id=58175 |
| <rdar://problem/9060555> |
| |
| The problem is that command handling should be different for events that come as keyDown: |
| and those that come as performKeyEquivalent:. WebKit1 only tries custom "key bindings" |
| when handling a keyDown:, letting a performKeyEquivalent: run through the whole responder |
| chain first. |
| |
| This would be very difficult to implement in WebKit2 because of how it re-sends the same |
| event after web process handling. Luckily, we can both fix the bug and make the behavior |
| more robust by not hardcoding key combinations. |
| |
| * WebProcess/WebPage/WebPage.h: Edit performNonEditingBehaviorForSelector. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::executeKeypressCommandsInternal): When executing commands, also try |
| executing editor commands in their non-editing meaning, which is usually scrolling. |
| (WebKit::WebPage::performNonEditingBehaviorForSelector): Naive implementation with a chain |
| of ifs, which is hopefully ok performance-wise for a dozen check. |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): Only kept two commands here that I |
| couldn't easily move. |
| |
| 2011-04-08 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Show the substitutions panel on Mac and make sure the menu items titles are |
| updated correctly. |
| https://bugs.webkit.org/show_bug.cgi?id=58179 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView validateUserInterfaceItem:]): |
| The title of the context menu item should be opposite of whether or not the spelling panel |
| is visible. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::contextMenuItemSelected): |
| If the "Show/Hide" Substitutions item is selected, call toggleSubstitutionsPanelIsShowing. |
| (WebKit::WebPageProxy::substitutionsPanelIsShowing): |
| Ask the TextChecker. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::substitutionsPanelIsShowing): |
| As the shared NSSpellChecker if the substitutionsPanel is visible. |
| (WebKit::TextChecker::toggleSubstitutionsPanelIsShowing): |
| Order the substitutionsPanel out or front (copied from WKView.mm). |
| |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| (WebKit::WebEditorClient::substitutionsPanelIsShowing): |
| Send a sync message to the UI process to find out. |
| It needs to be sync because the editor code relies on the value returned. |
| |
| 2011-04-08 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Adele Peterson. |
| |
| Fixed a bug where right-to-left frames incorrectly reported that they were pinned to the left |
| when they were actually not. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeScrollOffsetForMainFrame): Do not assume that the minimum scroll offset |
| is zero, because it is not. |
| |
| 2011-04-08 Anders Carlsson <andersca@apple.com> |
| |
| Fix the Windows build. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::Drop): |
| |
| 2011-04-08 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 5: Implement the code show and hide the Spelling UI via the context menu item (both |
| Windows and Mac). |
| |
| * UIProcess/API/C/win/WKTextChecker.h: |
| Add the new WKTextCheckerClient funtions. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView validateUserInterfaceItem:]): |
| The title of the context menu item should be opposite of whether or not the spelling panel |
| is visible. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::contextMenuItemSelected): |
| If the "Show/Hide Spelling and Grammar" item is selected, call toggleSpellingUIIsShowing. |
| (WebKit::WebPageProxy::spellingUIIsShowing): |
| Call through to TextChecker. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::spellingUIIsShowing): |
| Call the TextCheckerClient. |
| (WebKit::TextChecker::toggleSpellingUIIsShowing): |
| Ditto. |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::spellingUIIsShowing): |
| Ask the shared NSSpellChecker if the spellingPanel is visible. |
| (WebKit::TextChecker::toggleSpellingUIIsShowing): |
| Order the spellingPanel out or front (copied from WKView.mm). |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::spellingUIIsShowing): |
| Call notImplemented. |
| (WebKit::TextChecker::toggleSpellingUIIsShowing): |
| Ditto. |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::spellingUIIsShowing): |
| Ditto. |
| (WebKit::TextChecker::toggleSpellingUIIsShowing): |
| Ditto. |
| |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::spellingUIIsShowing): |
| Call the client. |
| (WebKit::WebTextCheckerClient::toggleSpellingUIIsShowing): |
| Ditto. |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::spellingUIIsShowing): |
| Send a sync message to the UI process to find out. |
| It needs to be sync because the Editor code relies on the value returned. |
| |
| 2011-04-08 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Sandboxing doesn't work if a local file is dropped on the content area |
| https://bugs.webkit.org/show_bug.cgi?id=58177 |
| <rdar://problem/9019253> |
| |
| When performing a drag and the dragging pasteboard contains a local file, create a |
| sandbox extension and pass it along. If we end up loading the file, the sandbox extension |
| tracker will consume the extension. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (maybeCreateSandboxExtensionFromPasteboard): |
| Add helper function. |
| |
| (-[WKView performDragOperation:]): |
| Create a sandbox extension handle and pass it to performDrag. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::dragEntered): |
| (WebKit::WebPageProxy::dragUpdated): |
| (WebKit::WebPageProxy::dragExited): |
| Pass an empty sandbox extension handle to performDragControllerAction. |
| |
| (WebKit::WebPageProxy::performDrag): |
| Pass the sandbox extension handle along to performDragControllerAction. |
| |
| (WebKit::WebPageProxy::performDragControllerAction): |
| Send along the sandbox extension handle. |
| |
| * WebProcess/WebCoreSupport/WebDragClient.cpp: |
| (WebKit::WebDragClient::willPerformDragDestinationAction): |
| If the destination action is a load action, call WebPage::willPerformLoadDragDestinationAction. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::performDragControllerAction): |
| Create a sandbox extension. |
| |
| (WebKit::WebPage::willPerformLoadDragDestinationAction): |
| If we have a sandbox extension, pass it along to the sandbox extension tracker. |
| |
| (WebKit::WebPage::SandboxExtensionTracker::willPerformLoadDragDestinationAction): |
| Call setPendingProvisionalSandboxExtension. |
| |
| (WebKit::WebPage::SandboxExtensionTracker::beginLoad): |
| Call setPendingProvisionalSandboxExtension. |
| |
| (WebKit::WebPage::SandboxExtensionTracker::setPendingProvisionalSandboxExtension): |
| Factor code from beginLoad out into a separate function. |
| |
| * WebProcess/WebPage/WebPage.messages.in: |
| PerformDragControllerAction now takes a sandbox extension handle. |
| |
| 2011-04-08 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=58151 |
| Crash after closing a Webview, in WebKit!WebCore::WindowMessageBroadcaster::SubclassedWndProc |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::close): |
| Resolve a difference between old WebKit WebView and WebKit2 WebView by destroying and clearing |
| out WebKit2 WebView's HWND when closing. Not doing so was causing the WebView to remain in the |
| list of WindowMessageBroadcaster listeners, and after closing the WebView, WindowMessageBroadcaster |
| would message a dead WebView and crash. |
| |
| 2011-04-08 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Make the drag operations be different functions |
| https://bugs.webkit.org/show_bug.cgi?id=58169 |
| |
| Since we want performDrag to take a sandbox extension, separate the four |
| drag operations out into different functions. No functionality change. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView draggingEntered:]): |
| (-[WKView draggingUpdated:]): |
| (-[WKView draggingExited:]): |
| (-[WKView performDragOperation:]): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::dragEntered): |
| (WebKit::WebPageProxy::dragUpdated): |
| (WebKit::WebPageProxy::dragExited): |
| (WebKit::WebPageProxy::performDrag): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::DragEnter): |
| (WebKit::WebView::DragOver): |
| (WebKit::WebView::DragLeave): |
| (WebKit::WebView::Drop): |
| |
| 2011-04-08 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Parse 'DispatchOnConnectionQueue' in messages.in files |
| https://bugs.webkit.org/show_bug.cgi?id=58168 |
| |
| Handle parsing multiple, space-separated attributes in .messages.in files. Keep track of |
| 'DispatchOnConnectionQueue' and rename 'delayed' to 'Delayed'. |
| |
| * Scripts/webkit2/messages.py: |
| * Scripts/webkit2/messages_unittest.py: |
| |
| 2011-04-08 Alpha Lam <hclam@chromium.org> |
| |
| Unreviewed, rolling out r83335. |
| http://trac.webkit.org/changeset/83335 |
| https://bugs.webkit.org/show_bug.cgi?id=53556 |
| |
| GTK and QT bots are broken |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-07 Anna Cavender <annacc@chromium.org> |
| |
| Reviewed by Eric Carlson. |
| |
| Setup ENABLE(TRACK) feature define |
| https://bugs.webkit.org/show_bug.cgi?id=53556 |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-07 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Alder. |
| |
| REGRESSION (WebKit2): AppKit thinks that web views don't support DocumentAccess |
| https://bugs.webkit.org/show_bug.cgi?id=58102 |
| <rdar://problem/9223246> |
| |
| * UIProcess/API/mac/WKView.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView doCommandBySelector:]): |
| (-[WKView insertText:replacementRange:]): |
| (-[WKView validAttributesForMarkedText]): |
| (-[WKView setMarkedText:selectedRange:replacementRange:]): |
| (-[WKView attributedSubstringForProposedRange:actualRange:]): |
| (-[WKView firstRectForCharacterRange:actualRange:]): |
| Switch to NSTextInputClient, opting out of optimizations and optional features for now. |
| |
| 2011-04-08 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [Qt][WK2][Symbian] Remove use of stack arrays with variable size |
| https://bugs.webkit.org/show_bug.cgi?id=57877 |
| |
| For better compiler portability, use new/delete for arrays when size |
| isn't known at compile time. Also fix one compiler warning about bitshift |
| operations on signed integer |
| * Platform/CoreIPC/unix/ConnectionUnix.cpp: |
| (CoreIPC::Connection::readyReadHandler): |
| (CoreIPC::Connection::sendOutgoingMessage): |
| |
| 2011-04-08 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Xan Lopez. |
| |
| [GTK] Fix the WebKit2 build for older versions of GTK+ |
| https://bugs.webkit.org/show_bug.cgi?id=58095 |
| |
| * UIProcess/gtk/ChunkedUpdateDrawingAreaProxyGtk.cpp: Include the GtkVersioning.h header. |
| |
| 2011-04-07 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [WK2][Qt][GTK] Introduce common use flag for the shared UNIX domain socket IPC implementation |
| https://bugs.webkit.org/show_bug.cgi?id=58030 |
| |
| Replace "PLATFORM(QT) || PLATFORM(GTK)" conditions in IPC code with |
| USE(UNIX_DOMAIN_SOCKETS). |
| |
| * Platform/CoreIPC/Attachment.h: |
| * Platform/CoreIPC/Connection.h: |
| * Platform/SharedMemory.h: |
| |
| 2011-04-07 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Clicks not recognized on http://www.nibblestutorials.net/ which uses Silverlight |
| https://bugs.webkit.org/show_bug.cgi?id=58108 |
| <rdar://problem/9167611> |
| |
| Change platformHandleMouseEvent to return true, which means that the plug-in has handled the |
| event. Some plug-ins (like Silverlight) will return false from NPP_HandleEvent even though the |
| event has been handled. In this case it lead to a very subtle bug where the plug-in element would |
| lose focus right after a mouse down even had been sent. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): |
| |
| 2011-04-07 Adam Roben <aroben@apple.com> |
| |
| Pass NPP_SetWindow a null window handle during plugin destruction on non-Mac platforms |
| |
| This matches WebKit1. |
| |
| Fixes <http://webkit.org/b/47009> WebKit2 needs to call NPP_SetWindow when destroying a |
| plugin |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::destroy): Null out our NPWindow's window handle and pass it to |
| NPP_SetWindow (unless we're on Mac). |
| |
| 2011-04-08 Jamie Cooley <james.cooley@nokia.com> |
| |
| Reviewed by Benjamin Poulain. |
| |
| [Qt][WK2] Make sure qwkhistory.h is copied into includes/WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57945 |
| |
| * UIProcess/API/qt/WKView.h: |
| * UIProcess/API/qt/qwkhistory.h: |
| |
| 2011-04-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Do not destroy WorkQueue event sources unless they have been cancelled |
| https://bugs.webkit.org/show_bug.cgi?id=57611 |
| |
| * Platform/WorkQueue.h: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| (WorkQueue::EventSource::EventSource): Remove unused member |
| m_dispatchSource. |
| (WorkQueue::EventSource::executeEventSource): Make it return void |
| instead of boolean since we are always ignoring the return value. |
| (WorkQueue::EventSource::performWork): Return FALSE from the |
| callback only when the source has been cancelled (condition = 0) |
| to make sure it's destroyed when the even source handler is |
| unregistered. |
| (WorkQueue::registerEventSourceHandler): Use GRefPtr for the |
| source, to avoid leaking it. |
| (WorkQueue::scheduleWorkOnSource): Receive the source callback as |
| parameter so that it can be used by scheduleWorkOnTermination() too. |
| (WorkQueue::scheduleWork): |
| (WorkQueue::scheduleWorkAfterDelay): |
| (WorkQueue::scheduleWorkOnTermination): Use |
| scheduleWorkOnSource(). |
| |
| 2011-04-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Close connection when web process finishes |
| https://bugs.webkit.org/show_bug.cgi?id=57540 |
| |
| * Platform/CoreIPC/Connection.h: |
| * Platform/CoreIPC/unix/ConnectionUnix.cpp: |
| * Platform/PlatformProcessIdentifier.h: Use GPid as process |
| identifier. |
| * Platform/WorkQueue.h: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| (WorkQueue::EventSource::EventSource): Add cancellable parameter. |
| (WorkQueue::EventSource::cancel): New method to cancel the source. |
| (WorkQueue::EventSource::performWorkOnTermination): New method to |
| execute a work item called when child process has finished. |
| (WorkQueue::registerEventSourceHandler): Create a GCancellable for |
| the socket source. |
| (WorkQueue::unregisterEventSourceHandler): Cancel the source |
| instead of destroying it, this will cause the source to trigger |
| with condition = 0, which makes the callback return FALSE and the |
| source is destroyed. |
| (WorkQueue::scheduleWorkOnSource): Pass NULL as cancellable for |
| idle and timeout sources. |
| (WorkQueue::scheduleWorkOnTermination): Create a child watch |
| source to monitor the child process. |
| * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: |
| (WebKit::ProcessLauncher::launchProcess): Use GPid instead of int |
| as process identifier. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didFinishLaunching): Call |
| WorkQueue::scheduleWorkOnTermination() for GTK platform too when |
| web process has been launched. |
| |
| 2011-04-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement scheduleWorkAfterDelay() in WorkQueueGtk |
| https://bugs.webkit.org/show_bug.cgi?id=57434 |
| |
| * Platform/WorkQueue.h: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| (WorkQueue::EventSource::executeEventSource): This new method |
| contains the common code to execute a work item. |
| (WorkQueue::EventSource::performWorkOnce): Use |
| executeEventSource() to execute the work item. |
| (WorkQueue::EventSource::performWork): Use executeEventSource() to |
| execute the work item. |
| (WorkQueue::registerEventSourceHandler): Use a GSocket instead of |
| a GIOChannel since the API is newer and allows us to pass a |
| cancellable object to be able to cancel the source. |
| (WorkQueue::scheduleWorkOnSource): This new method contains the |
| common code to attach a source to a context. It doesn't use a lock |
| anymore, since g_source_attach() uses its own mutex internally. |
| (WorkQueue::scheduleWork): Use an idle source instead of a timeout |
| one, changing the priority to G_PRIORITY_DEFAULT. |
| (WorkQueue::scheduleWorkAfterDelay): Implement it using a timeout |
| source with the given delay. |
| |
| 2011-04-08 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Use glib API instead of fork + execl in ProcessLauncherGtk |
| https://bugs.webkit.org/show_bug.cgi?id=57234 |
| |
| * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: |
| (WebKit::childSetupFunction): close the socket and use prctl() |
| when platform is Linux to kill the child process when the parent |
| finishes. |
| (WebKit::ProcessLauncher::launchProcess): Use g_spawn_async() to |
| launch the web process. |
| |
| 2011-04-07 Geoffrey Garen <ggaren@apple.com> |
| |
| Some Handle<T> cleanup |
| https://bugs.webkit.org/show_bug.cgi?id=58109 |
| |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: |
| (WebKit::NPJSObject::NPJSObject): Updated for new null constructor. |
| |
| 2011-04-07 Jessie Berlin <jberlin@apple.com> |
| |
| Max build fix. |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::checkSpellingOfString): |
| Do not risk an overflow. |
| (WebKit::WebEditorClient::checkGrammarOfString): |
| Ditto. |
| |
| 2011-04-07 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Brian Weinstein. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 4: Implement checkGrammarOfString. |
| |
| * Scripts/webkit2/messages.py: |
| The generated files should include TextCheckerClient.h for WebCore::GrammarDetail. |
| |
| * Shared/API/c/win/WKBaseWin.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/win/WKAPICastWin.h: |
| |
| * UIProcess/API/C/win/WKGrammarDetail.cpp: Added. |
| (WKGrammarDetailGetTypeID): |
| (WKGrammarDetailCreate): |
| * UIProcess/API/C/win/WKGrammarDetail.h: Added. |
| |
| * UIProcess/API/C/win/WKTextChecker.h: |
| Add the checkGrammarOfString WKTextCheckerClient function. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::checkGrammarOfString): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::checkGrammarOfString): |
| Call the TextCheckerClient. |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::checkSpellingOfString): |
| Add a comment about this not being used on Mac. |
| (WebKit::TextChecker::checkGrammarOfString): |
| Ditto, and call notImplemented. |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::checkGrammarOfString): |
| Call notImplemented. |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::checkGrammarOfString): |
| Ditto. |
| |
| * UIProcess/win/WebGrammarDetail.cpp: Added. |
| (WebKit::WebGrammarDetail::create): |
| (WebKit::WebGrammarDetail::WebGrammarDetail): |
| Initialize the underlying WebCore::GrammarDetail. |
| * UIProcess/win/WebGrammarDetail.h: Added. |
| (WebKit::WebGrammarDetail::grammarDetail): |
| (WebKit::WebGrammarDetail::type): |
| |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::checkGrammarOfString): |
| Populate the Vector of WebCore::GrammarDetails with the WebGrammarDetails. |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::checkSpellingOfString): |
| Use WTF::notFound as the initial value for resultLocation. |
| (WebKit::WebEditorClient::checkGrammarOfString): |
| Send a sync message to the UI Process (similar to checkSpellingOfString and checkTextOfParagraph). |
| |
| * win/WebKit2.vcproj: |
| Add WKGrammarDetail.h/.cpp and WebGrammarDetail.h/.cpp. |
| * win/WebKit2Generated.make: |
| Copy over WKGrammarDetail.h. |
| |
| 2011-04-07 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| REGRESSION(WebKit2): execCommand('undo') doesn't work (Windows). |
| https://bugs.webkit.org/show_bug.cgi?id=58056 |
| <rdar://problem/8862023> |
| |
| Adding support for execCommand('undo') and execCommand('redo') |
| in WebKit2 for Windows. |
| |
| * UIProcess/API/C/win/WKView.h: |
| * UIProcess/win/WebUndoClient.cpp: |
| (WebKit::WebUndoClient::canUndoRedo): |
| (WebKit::WebUndoClient::executeUndoRedo): |
| * UIProcess/win/WebUndoClient.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::canUndoRedo): |
| (WebKit::WebView::executeUndoRedo): |
| |
| 2011-04-07 Andrew Scherkus <scherkus@chromium.org> |
| |
| Revert ENABLE_TRACK patch due to compile failures. |
| |
| * Configurations/FeatureDefines.xcconfig: |
| |
| 2011-04-07 Martin Robinson <mrobinson@igalia.com> |
| |
| Fix the WebKit2 GTK+ build for older versions of GTK+. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: Include the GtkVersioning.h header. |
| |
| 2011-04-07 Amruth Raj <amruthraj@motorola.com> and Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [GTK] Implement SharedMemory for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=49791 |
| |
| Share the SharedMemory, Attachment and Connection implementations with the Qt port. |
| Both implementation are, in fact, general Unix implementations using standard Unix |
| domain sockets and sendmsg / recvmsg. This should reduce the amount of duplicated code |
| greatly and lay the groundwork for GTK+/Qt implementations for other operating systems. |
| |
| * GNUmakefile.am: Replaced GTK+ versions of files with the Unix ones. |
| * Platform/CoreIPC/ArgumentDecoder.cpp: Extended Qt #ifdefs to include GTK. |
| (CoreIPC::ArgumentDecoder::~ArgumentDecoder): |
| * Platform/CoreIPC/ArgumentEncoder.cpp: Ditto. |
| (CoreIPC::ArgumentEncoder::~ArgumentEncoder): |
| * Platform/CoreIPC/Attachment.h: Ditto. |
| * Platform/CoreIPC/Connection.h: Combined the GTK+ and Qt sections. |
| * Platform/CoreIPC/unix/AttachmentUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/qt/AttachmentQt.cpp. |
| * Platform/CoreIPC/unix/ConnectionUnix.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/qt/ConnectionQt.cpp. |
| * Platform/unix/SharedMemoryUnix.cpp: Renamed from Source/WebKit2/Platform/qt/SharedMemoryQt.cpp. |
| * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: |
| (WebKit::ProcessLauncher::launchProcess): Use SOCK_DGRAM instead of SOCK_STREAM to match Qt. |
| * WebKit2.pro: Updated source list to reflect file renaming. |
| |
| 2011-04-07 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Brian Weinstein. |
| |
| REGRESSION (r83081): Use of deallocated memory in WebEditorClient::respondToChangedSelection() |
| https://bugs.webkit.org/show_bug.cgi?id=58082 |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: (WebKit::WebEditorClient::respondToChangedSelection): |
| Now that the Range is used outside the full expression where it's created, it needs to be |
| protected with RefPtr. |
| |
| 2011-04-07 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| <rdar://problem/9251566> WebBackForwardList::createCFDictionaryRepresentation's current item index |
| doesn't account for items removed by filter callback. |
| |
| * UIProcess/cf/WebBackForwardListCF.cpp: |
| (WebKit::WebBackForwardList::createCFDictionaryRepresentation): Update the current item index |
| when we omit an item due to the filter callback. |
| |
| 2011-04-07 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| REGRESSION (WebKit2): Reverse conversion doesn't work in Kotoeri |
| https://bugs.webkit.org/show_bug.cgi?id=58066 |
| <rdar://problem/8965302> |
| |
| * Scripts/webkit2/messages.py: |
| * Shared/mac/AttributedString.h: Added. |
| * Shared/mac/AttributedString.mm: Added. |
| (WebKit::AttributedString::encode): |
| (WebKit::AttributedString::decode): |
| Added an class that wraps NSAttributedString. As far as I can tell, one can't pass a CF |
| or NS object to another process without wrapping it in a C++ one. |
| |
| * Shared/mac/ArgumentCodersMac.h: Added. |
| * Shared/mac/ArgumentCodersMac.mm: Added. |
| Added coders for Foundation objects, similar to ArgumentCodersCF. There are two reasons why |
| these are needed: |
| 1) Even though most Foundation objects are toll free bridged with CF, CFGetTypeID() doesn't |
| work properly for them (I've been just getting 1). |
| 2) NSColor isn't toll free bridged to CF. |
| This adds just the types necessary for editing NSAttributedString (and I don't yet know what |
| happens with attachments). |
| |
| * UIProcess/API/mac/WKView.mm: (-[WKView attributedSubstringFromRange:]): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::getAttributedSubstringFromRange): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| Boilerplate code for making a sync call to web process. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::getAttributedSubstringFromRange): |
| Ported from WebHTMLView. |
| |
| 2011-04-07 Jeff Miller <jeffm@apple.com> |
| |
| Mac build fix. |
| |
| * Shared/WebString.h: |
| (WebKit::WebString::getCharacters): Add explict cast when using std::min(). |
| |
| 2011-04-07 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Replace WKStringGetCharactersPtr() with WKStringGetCharacters() |
| https://bugs.webkit.org/show_bug.cgi?id=58058 |
| |
| WKStringGetCharactersPtr() exposes the internal implementation of WKString, so change this to WKStringGetCharacters(), which makes a UTF-16 copy. |
| |
| * Shared/API/c/WKString.cpp: |
| (WKStringGetCharacters): Added, replaces WKStringGetCharactersPtr(). |
| * Shared/API/c/WKString.h: Replaced WKStringGetCharactersPtr() with WKStringGetCharacters(). |
| * Shared/WebString.h: |
| (WebKit::WebString::getCharacters): Added. |
| |
| 2011-04-07 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Support window bounce when panning. |
| https://bugs.webkit.org/show_bug.cgi?id=58065 |
| <rdar://problem/9244367> |
| |
| Make gestureDidScroll synchronous, as once we scroll, we need to know |
| whether or not we are at the beginning or end of the scrollable document. |
| |
| If we are at either end of the scrollable document, we call the Windows 7 |
| API to bounce the window to give an indication that you are past an end |
| of the document. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::gestureDidScroll): Pass a boolean for the reply, and return it. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::WebView): Inititalize a new variable. |
| (WebKit::WebView::onGesture): Once we send the message to scroll, check if have gone to |
| an end of the document, and if we have, bounce the window. |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: GestureDidScroll is now sync. |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::gestureDidScroll): When we are done scrolling, check if we have a vertical |
| scrollbar and if we are at the beginning or the end of the scrollable document. |
| |
| 2011-04-07 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.isPageBoxVisible |
| https://bugs.webkit.org/show_bug.cgi?id=42695 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleIsPageBoxVisible): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::isPageBoxVisible): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-07 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| REGRESSION(WebKit2): execCommand('undo') doesn't work (Mac). |
| https://bugs.webkit.org/show_bug.cgi?id=58055 |
| <rdar://problem/8862023> |
| |
| Adding support for execCommand('undo') and execCommand('redo') |
| in WebKit2 for Mac. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::canUndoRedo): Added interaction with undomanager. |
| (WebKit::PageClientImpl::executeUndoRedo): Added interaction with undomanager. |
| |
| Added new empty PageClient methods for other platforms. |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::canUndoRedo): |
| (QWKPagePrivate::executeUndoRedo): |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::canUndoRedo): |
| (WebKit::WebView::executeUndoRedo): |
| * UIProcess/gtk/WebView.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::canUndoRedo): |
| (WebKit::WebView::executeUndoRedo): |
| * UIProcess/win/WebView.h: |
| |
| * UIProcess/WebEditCommandProxy.cpp: |
| (WebKit::WebEditCommandProxy::unapply): Added flag to allow dispatching |
| of asychronous messages while waiting for a sync message reply. |
| (WebKit::WebEditCommandProxy::reapply): Same as above. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::canUndoRedo): |
| (WebKit::WebPageProxy::executeUndoRedo): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: Added missing implementation. |
| (WebKit::WebEditorClient::canUndo): |
| (WebKit::WebEditorClient::canRedo): |
| (WebKit::WebEditorClient::undo): |
| (WebKit::WebEditorClient::redo): |
| |
| 2011-04-07 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9250368> and https://bugs.webkit.org/show_bug.cgi?id=58062 |
| |
| * UIProcess/API/C/WKIconDatabase.cpp: |
| (WKIconDatabaseClose): |
| * UIProcess/API/C/WKIconDatabase.h: |
| |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::close): |
| * UIProcess/WebIconDatabase.h: |
| |
| 2011-04-07 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 3: Implement checkSpellingOfString |
| |
| In WebCore, checkTextOfParagraph is only defined and used on platforms where |
| WTF_USE_UNIFIED_TEXT_CHECKING is defined (which right now is only non-Leopard and non-Tiger |
| Mac builds). |
| |
| On other platforms, checkSpellingOfString and checkGrammarOfString (coming in a separate |
| patch in an attempt to keep things easier to review) are used. |
| |
| * UIProcess/API/C/win/WKTextChecker.h: |
| * UIProcess/TextChecker.h: |
| Surround checkTextOfParagraph by #if USE(UNIFIED_TEXT_CHECKING) and add |
| checkSpellingOfString. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::checkTextOfParagraph): |
| Surround this by #if USE(UNIFIED_TEXT_CHECKING). |
| (WebKit::WebPageProxy::checkSpellingOfString): |
| Call through to the client. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| Surround checkTextOfParagraph by #if USE(UNIFIED_TEXT_CHECKING) and add |
| checkSpellingOfString. |
| |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::checkSpellingOfString): |
| Call through to the WebTextCheckerClient. |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::checkTextOfParagraph): |
| Surround this by #if USE(UNIFIED_TEXT_CHECKING) for clarity. |
| (WebKit::TextChecker::checkSpellingOfString): |
| Add a call to notImplemented. |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::checkSpellingOfString): |
| Ditto, and remove the implementation for checkTextOfParagraph. |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::checkSpellingOfString): |
| Ditto. |
| |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::checkSpellingOfString): |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::checkSpellingOfString): |
| Send a sync message to the UI Process (similar to the sync message used for |
| checkTextOfParagraph). |
| |
| 2011-04-07 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][WK2][Symbian] Temporary build fix until native Symbian IPC is done. Implement fake socketpair() as it's not available. |
| https://bugs.webkit.org/show_bug.cgi?id=57877 |
| |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| (WebKit::socketpair): socketpair() which returns -1 |
| |
| 2011-04-07 Michael Saboff <msaboff@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Memory leak in decodeResourceError |
| https://bugs.webkit.org/show_bug.cgi?id=58004 |
| |
| Release the local NSError after it is used to create a ResourceError |
| object assigned to the reference argument. |
| |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (CoreIPC::decodeResourceError): |
| |
| 2011-04-07 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Adam Barth. |
| |
| Remove temporary WebProcess sandbox rules that are unnecessary now that plugins are in their own process |
| https://bugs.webkit.org/show_bug.cgi?id=58023 |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-07 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Remove some no longer needed WebProcess sandbox allowances |
| https://bugs.webkit.org/show_bug.cgi?id=58015 |
| <rdar://problem/9232592> |
| |
| * WebProcess/com.apple.WebProcess.sb: Remove no-longer needed extra network |
| and launching privileges, since the bugs that required them are fixed. |
| |
| 2011-04-06 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.pageSizeAndMarginsInPixels |
| https://bugs.webkit.org/show_bug.cgi?id=57984 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundlePageSizeAndMarginsInPixels): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::pageSizeAndMarginsInPixels): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-06 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Benjamin Poulain. |
| |
| [Qt][WK2][Symbian] Remove use of stack arrays with variable size |
| https://bugs.webkit.org/show_bug.cgi?id=57877 |
| |
| For better compiler portability, use new/delete for arrays when size |
| isn't known at compile time. Also fix one compiler warning about bitshift |
| operations on signed integers. |
| * Platform/CoreIPC/qt/ConnectionQt.cpp: |
| (CoreIPC::Connection::readyReadHandler): |
| (CoreIPC::Connection::sendOutgoingMessage): |
| |
| 2011-04-06 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Support Windows 7 Gestures |
| https://bugs.webkit.org/show_bug.cgi?id=49824 |
| <rdar://problem/8689728> |
| |
| Port code from WebKit1 -> WebKit2 to handle Windows 7 gestures. |
| |
| The UIProcess gets a WM_GESTURENOTIFY message, it sends a sync message to the WebProcess to ask |
| if we should allow panning. The WebProcess checks if we're in a scrollable area, and the mouse |
| isn't over a scrollbar. |
| |
| The UIProcess then gets a WM_GESTURE message, and if it is a pan gesture, it sends a message to |
| the WebProcess to scroll by the amount fingers have moved since the last WM_GESTURE messeage. The |
| X and Y are reversed because panning up -> moving the page down, and vice versa. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::gestureWillBegin): Send a sync message to the WebProcess |
| to initialize the gesture. The WebProcess returns whether or not we can start a pan |
| gesture from where we are. |
| (WebKit::WebPageProxy::gestureDidScroll): Send a message to the WebProcess to scroll by |
| pan gesture. |
| (WebKit::WebPageProxy::gestureDidEnd): Send a message to the WebProcess that the gesture has ended. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::wndProc): Add WM_GESTURE and WM_GESTURENOTIFY handlers. |
| (WebKit::WebView::WebView): Initialize two new variables. |
| (WebKit::WebView::onGestureNotify): Figure out which gestures we should support based on where |
| the gesture is beginning. |
| (WebKit::WebView::onGesture): Support starting a gesture, ending a gesture, and panning. |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Add messages needed for gestures. |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::gestureWillBegin): Set the node that the gesture started on (so we |
| know which layer to scroll if the user pans), and determine whether or not we should allow |
| panning. If the page can't scroll, or the user is on a scrollbar, disallow panning. |
| (WebKit::WebPage::gestureDidScroll): Scroll the enclosing layer of the element the gesture |
| started on. |
| (WebKit::WebPage::gestureDidEnd): Clear the node the gesture started on. |
| |
| 2011-04-06 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add WKStringGetCharactersPtr() and WKStringGetLength() to WebKit2 C API |
| https://bugs.webkit.org/show_bug.cgi?id=57989 |
| |
| Note that WKChar, which is returned by WKStringGetCharactersPtr(), is defined the same way we define JSChar in JSStringRef.h. |
| |
| * Shared/API/c/WKString.cpp: |
| (WKStringGetLength): Added. |
| (WKStringGetCharactersPtr): Added. |
| * Shared/API/c/WKString.h: Define WKChar and added WKStringGetLength() and WKStringGetCharactersPtr(). |
| * Shared/WebString.h: |
| (WebKit::WebString::length): Added. |
| (WebKit::WebString::characters): Added. |
| |
| 2011-04-06 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Dock stays in front of Hulu.com full screen video output |
| https://bugs.webkit.org/show_bug.cgi?id=57988 |
| <rdar://problem/9216260> |
| |
| Instead of using -[NSMenu setMenuBarVisible:] to toggle full screen, use |
| -[NSApp setPresentationOptions:]. Also, make the UI process the front most app before |
| setting the presentation options when exiting full screen, otherwise the dock won't |
| be restored correctly. |
| |
| * PluginProcess/mac/PluginProcessShim.mm: |
| Remove some shim functions that aren't needed. |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::PluginProcessProxy): |
| Initialize m_preFullscreenAppPresentationOptions. |
| |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| Add m_preFullscreenAppPresentationOptions. |
| |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::enterFullscreen): |
| Change the presentation options for the app. |
| |
| (WebKit::PluginProcessProxy::exitFullscreen): |
| Restore the presentation options. |
| |
| 2011-04-06 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Expose the original URL of a WKBackForwardListItem. |
| |
| Needed for <rdar://problem/9074651>. |
| |
| * UIProcess/API/C/WKBackForwardListItem.cpp: |
| (WKBackForwardListItemCopyOriginalURL): |
| * UIProcess/API/C/WKBackForwardListItem.h: |
| |
| 2011-04-06 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57973 and https://bugs.webkit.org/show_bug.cgi?id=57973 |
| WK2 icon database should be able to get a CGImage of a specific size |
| |
| * UIProcess/API/C/cg/WKIconDatabaseCG.cpp: |
| (WKIconDatabaseTryGetCGImageForURL): Change this API to take a requested size, and find the first matching |
| CGImage in the icon. |
| * UIProcess/API/C/cg/WKIconDatabaseCG.h: |
| |
| 2011-04-06 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 2: Implement uniqueSpellDocumentTag and closeSpellDocumentWithTag. |
| |
| * UIProcess/API/C/win/WKTextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::uniqueSpellDocumentTag): |
| (WebKit::TextChecker::closeSpellDocumentWithTag): |
| * UIProcess/win/WebTextCheckerClient.cpp: |
| (WebKit::WebTextCheckerClient::uniqueSpellDocumentTag): |
| (WebKit::WebTextCheckerClient::closeSpellDocumentWithTag): |
| * UIProcess/win/WebTextCheckerClient.h: |
| |
| 2011-04-06 Robert Sesek <rsesek@chromium.org> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Move code duplicated between the WebKit/mac and WebKit2 down to WebCore because Chromium will need it too |
| https://bugs.webkit.org/show_bug.cgi?id=54969 |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::respondToChangedSelection): Moved duplicated code to WebCore |
| * WebProcess/WebPage/mac/WebPageMac.mm: Moved duplicated code to WebCore |
| (WebKit::WebPage::getMarkedRange): |
| (WebKit::WebPage::getSelectedRange): |
| (WebKit::WebPage::characterIndexForPoint): |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| |
| 2011-04-06 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.pageNumberForElementById |
| https://bugs.webkit.org/show_bug.cgi?id=42329 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundlePageNumberForElementById): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::pageNumberForElementById): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-05 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION: Drag & Drop Gmail Attachments doesn't work. |
| https://bugs.webkit.org/show_bug.cgi?id=57909 |
| <rdar://problem/9103220> |
| |
| Added _hitTest method to support drag and drop when the drag types cannot be matched. |
| This is the case for elements that do not place content |
| in the drag pasteboard automatically when the drag start (i.e. dragging a DIV element). |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _hitTest:dragTypes:]): Added. |
| |
| 2011-04-06 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Fix using UNUSED_PARAM introduced in r82907 |
| https://bugs.webkit.org/show_bug.cgi?id=57940 |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| |
| 2011-04-06 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Implement TextChecker on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57862 |
| |
| Part 1: Get and set the state. |
| |
| * Shared/API/c/win/WKBaseWin.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/win/WKAPICastWin.h: |
| |
| * UIProcess/API/C/win/WKTextChecker.cpp: Added. |
| (WKTextCheckerSetClient): |
| (WKTextCheckerContinuousSpellCheckingEnabledStateChanged): |
| (WKTextCheckerGrammarCheckingEnabledStateChanged): |
| * UIProcess/API/C/win/WKTextChecker.h: Added. |
| |
| * UIProcess/TextChecker.h: |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::state): |
| Do the initalization for the state only once so that it is not necessary to call the client |
| every time the state is requested. |
| (WebKit::TextChecker::isContinuousSpellCheckingAllowed): |
| Call the client. |
| (WebKit::TextChecker::setContinuousSpellCheckingEnabled): |
| Update the state and tell the client. |
| (WebKit::TextChecker::setGrammarCheckingEnabled): |
| Ditto. |
| (WebKit::TextChecker::continuousSpellCheckingEnabledStateChanged): |
| Update the state. |
| (WebKit::TextChecker::grammarCheckingEnabledStateChanged): |
| Update the state. |
| |
| * UIProcess/win/WebTextChecker.cpp: Added. |
| (WebKit::WebTextChecker::shared): |
| Make the WebTextChecker available globally. |
| (WebKit::WebTextChecker::WebTextChecker): |
| (WebKit::WebTextChecker::setClient): |
| (WebKit::updateStateForAllWebProcesses): |
| (WebKit::WebTextChecker::continuousSpellCheckingEnabledStateChanged): |
| Tell the TextChecker that the state has changed, and then tell the |
| WebProcessProxies to send the new state to the WebProcesses. |
| (WebKit::WebTextChecker::grammarCheckingEnabledStateChanged): |
| Ditto. |
| * UIProcess/win/WebTextChecker.h: Added. |
| (WebKit::WebTextChecker::client): |
| (WebKit::WebTextChecker::type): |
| |
| * UIProcess/win/WebTextCheckerClient.cpp: Added. |
| (WebKit::WebTextCheckerClient::continuousSpellCheckingAllowed): |
| (WebKit::WebTextCheckerClient::continuousSpellCheckingEnabled): |
| (WebKit::WebTextCheckerClient::setContinuousSpellCheckingEnabled): |
| (WebKit::WebTextCheckerClient::grammarCheckingEnabled): |
| (WebKit::WebTextCheckerClient::setGrammarCheckingEnabled): |
| * UIProcess/win/WebTextCheckerClient.h: Added. |
| |
| * win/WebKit2.vcproj: |
| Add WKTextChecker.h/.cpp, WebTextChecker.h/.cpp, and WebTextCheckerClient.h/.cpp. |
| * win/WebKit2Generated.make: |
| Copy over WKTextChecker.h. |
| |
| 2011-04-05 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.numberOfPages |
| https://bugs.webkit.org/show_bug.cgi?id=42694 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleNumberOfPages): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::numberOfPages): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-05 Darin Adler <darin@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| [Mac] WebKit2: Escape key does not stop page loads when focus is on the web page |
| https://bugs.webkit.org/show_bug.cgi?id=57893 |
| <rdar://problem/9130486> |
| |
| * UIProcess/API/mac/PageClientImpl.h: Added executeSavedCommandBySelector. |
| * UIProcess/API/mac/PageClientImpl.mm: Renamed internal Objective-C classes to use |
| the WebKit2 Objective-C class prefix, WK, rather than the WebKit1 Objective-C class |
| prefix, Web. Removed some unneeded explicit WebKit namespace prefixes. |
| (-[WKEditCommandObjC initWithWebEditCommandProxy:]): Removed unneeded WebKit |
| namespace prefix. |
| (-[WKEditCommandObjC command]): Ditto. |
| (-[WKEditorUndoTargetObjC undoEditing:]): Updated for new class name. |
| (-[WKEditorUndoTargetObjC redoEditing:]): Ditto. |
| (WebKit::PageClientImpl::PageClientImpl): Ditto. |
| (WebKit::PageClientImpl::registerEditCommand): Ditto. |
| (WebKit::PageClientImpl::executeSavedCommandBySelector): Added. |
| |
| * UIProcess/API/mac/WKView.mm: Renamed internal Objective-C categories to use the |
| WebKit2 Objective-C prefix, WK, rather than the WebKit1 Objective-C prefix, Web, |
| or no prefix at all. Tweaked use of extern "C" a little. |
| (-[WKView doCommandBySelector:]): Tweaked the comment. |
| (-[WKView _executeSavedCommandBySelector:]): Added. For use when command is not handled |
| by WebCore. |
| (-[WKResponderChainSink initWithResponderChain:]): Added. Based on the |
| WebResponderChainSink class in WebKit1. |
| (-[WKResponderChainSink detach]): Added. |
| (-[WKResponderChainSink didReceiveUnhandledCommand]): Added. |
| (-[WKResponderChainSink noResponderFor:]): Added. |
| (-[WKResponderChainSink doCommandBySelector:]): Added. |
| (-[WKResponderChainSink tryToPerform:with:]): Added. |
| |
| * UIProcess/API/mac/WKViewInternal.h: Added declaration of _executeSavedCommandBySelector: |
| method. Also removed unneeded includes. |
| |
| * UIProcess/PageClient.h: Added executeSavedCommandBySelector. |
| * UIProcess/WebPageProxy.h: Added executeSavedCommandBySelector. |
| * UIProcess/WebPageProxy.messages.in: Added ExecuteSavedCommandBySelector. |
| |
| * UIProcess/mac/WebFullScreenManagerProxyMac.mm: Updated includes. |
| |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::executeSavedCommandBySelector): Added. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::executeKeypressCommandsInternal): Send the synchronous |
| ExecuteSavedCommandBySelector message when a command is not handled by WebCore. |
| |
| 2011-04-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Some plug-in content is displayed upside down in Unity plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=57895 |
| <rdar://problem/9212003> |
| |
| Create the flipped geometry layer in the web process instead of the plug-in process, |
| which matches what we do in WebKit1. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| * WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm: |
| (WebKit::PluginProxy::pluginLayer): |
| |
| 2011-04-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Assertion failure when navigating quickly between file URLs |
| https://bugs.webkit.org/show_bug.cgi?id=57884 |
| <rdar://problem/9080559> |
| |
| Remove bogus assertion. The pending provisional sandbox extension can be |
| non-null if the current provisional load fails because we're about to load a new |
| page that also has a sandbox extension. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::SandboxExtensionTracker::didFailProvisionalLoad): |
| |
| 2011-04-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Grant the web process access to ~/Library/Preferences/com.apple.universalaccess.plist |
| https://bugs.webkit.org/show_bug.cgi?id=57879 |
| |
| The web process needs access to the unviersal access preferences to determine if full keyboard |
| access is enabled. I've filed <rdar://problem/9237619> which tracks reading this preference in the UI |
| process and sending it over to the web process whenever it changes. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-05 Dean Jackson <dino@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Add parentheses around && within || to avoid clang warning. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): |
| |
| 2011-04-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add two more entries to the sandbox profile |
| https://bugs.webkit.org/show_bug.cgi?id=57875 |
| |
| Allow read-access to /Library/Dictionaries since WebCore::nextBreakablePosition |
| ends up calling into ICU which accesses the dictionary. |
| |
| Allow Mach access to com.apple.networkd since it's used by CFNetwork. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-04-05 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Invalidate callbacks if the WebPageProxy is no longer valid |
| https://bugs.webkit.org/show_bug.cgi?id=57873 |
| <rdar://problem/9059717> |
| |
| Audit all function calls that take callbacks and make sure to invalidate the callbacks |
| if the web page is no longer valid. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): |
| (WebKit::WebPageProxy::getRenderTreeExternalRepresentation): |
| (WebKit::WebPageProxy::getSourceForFrame): |
| (WebKit::WebPageProxy::getContentsAsString): |
| (WebKit::WebPageProxy::getSelectionOrContentsAsString): |
| (WebKit::WebPageProxy::getMainResourceDataOfFrame): |
| (WebKit::WebPageProxy::getResourceDataFromFrame): |
| (WebKit::WebPageProxy::getWebArchiveOfFrame): |
| (WebKit::WebPageProxy::forceRepaint): |
| (WebKit::WebPageProxy::computePagesForPrinting): |
| (WebKit::WebPageProxy::drawRectToPDF): |
| (WebKit::WebPageProxy::drawPagesToPDF): |
| |
| 2011-04-05 Adam Roben <aroben@apple.com> |
| |
| Disable accelerated compositing on Windows machines that don't support it |
| |
| This includes machines without the necessary graphics hardware, and machines without |
| WebKitQuartzCoreAdditions (like the Windows 7 Release (WebKit2 Tests) bots). |
| |
| Fixes <http://webkit.org/b/57870> REGRESSION (r82960): Lots of tests crashing in |
| DrawingAreaImpl::enterAcceleratedCompositingMode on Windows 7 Release (WebKit2 Tests) |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/LayerTreeHost.h: |
| (WebKit::LayerTreeHost::supportsAcceleratedCompositing): Added. On platforms other than |
| Windows, this always returns true. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Only enable accelerated compositing-related |
| preferences if the machine supports accelerated compositing. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::supportsAcceleratedCompositing): Added. Creates a view, asks it |
| if it can draw, and returns the result. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: Added supportsAcceleratedCompositing. |
| |
| * WebProcess/WebPage/win/LayerTreeHostWin.cpp: Added. |
| (WebKit::LayerTreeHost::supportsAcceleratedCompositing): Added. Calls through to |
| LayerTreeHostCAWin in configurations that support that class. Otherwise just returns false. |
| |
| * win/WebKit2.vcproj: Added LayerTreeHostWin.cpp. Let VS reorder some other files. |
| |
| 2011-04-05 Adam Roben <aroben@apple.com> |
| |
| Make accelerated compositing work in WebKit2 on Windows |
| |
| LayerTreeHostCAWin uses WKCACFView to render each frame to an image, then has |
| DrawingAreaImpl send that image over to the UI process (just like it does for |
| non-accelerated rendering). It's unfortunate that this requires reading every frame back |
| from the GPU into system memory. More efficient solutions can be explored in the future. |
| |
| Fixes <http://webkit.org/b/45567>. |
| |
| Reviewed by Anders Carlsson. |
| |
| * DerivedSources.make: Added $(WebKit2) to the VPATH so that DerivedSources.make can be |
| found when used as a target dependency. Added rules to generate a HeaderDetection.h file on |
| Windows. If we can find WebKitQuartzCoreAdditions headers, we define HAVE_WKQCA in |
| HeaderDetection.h. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::setLayerHostNeedsDisplay): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| Added setLayerHostNeedsDisplay. Lets the layer host tell the DrawingAreaImpl that it has a |
| new frame to render. This should only be called by layer hosts that participate in |
| DrawingAreaImpl's display mechanism. |
| |
| * WebProcess/WebPage/LayerTreeHost.cpp: |
| (WebKit::LayerTreeHost::create): Only try to instantiate LayerTreeHostCAWin if we have |
| WebKitQuartzCoreAdditions, since it depends on that library. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Removed code that forced accelerated compositing to be |
| disabled on Windows. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::registerDummyWindowClass): Registers the window class we use for the dummy window. |
| (WebKit::createDummyWindow): Creates the dummy window we pass to WKCACFView so that D3D can |
| determine the display mode, etc. (The window is never shown on screen.) |
| (WebKit::LayerTreeHostCAWin::LayerTreeHostCAWin): Initialize new members. |
| (WebKit::LayerTreeHostCAWin::platformInitialize): Create our dummy window and view and |
| associate the two. We set ourselves as the view's context's user data so that |
| PlatformCALayer can get our AbstractCACFLayerTreeHost pointer as needed. |
| (WebKit::LayerTreeHostCAWin::invalidate): Cancel any pending flushes, tear down our view, |
| and destroy the dummy window if no other layer host is using it. |
| (WebKit::LayerTreeHostCAWin::scheduleLayerFlush): Ask LayerChangesFlusher to call us back |
| soon to perform the flush. |
| (WebKit::LayerTreeHostCAWin::participatesInDisplay): Added. Returns true, since we render |
| each frame to an image. |
| (WebKit::LayerTreeHostCAWin::needsDisplay): Added. Returns true if it's now time to |
| displayReturns true if it's now time to display. |
| (WebKit::LayerTreeHostCAWin::timeUntilNextDisplay): Added. Returns how many seconds remain |
| before we need to display again. |
| (WebKit::size): Added. Helper function to get the size of a WKCACFImage. |
| (WebKit::toShareableBitmap): Added. Helper function to convert a WKCACFImage to a |
| ShareableBitmap. |
| (WebKit::LayerTreeHostCAWin::display): Added. Renders the next frame to an image and stuffs |
| the image into the UpdateInfo struct. |
| (WebKit::LayerTreeHostCAWin::sizeDidChange): Added. Tells the view about the new size. |
| (WebKit::LayerTreeHostCAWin::forceRepaint): Added. Flushes any pending changes to the view. |
| (WebKit::LayerTreeHostCAWin::contextDidChangeCallback): Added. WKCACFView calls this |
| whenever any changes made to the view or its layer tree have been flushed. Just calls |
| through to contextDidChange. |
| (WebKit::LayerTreeHostCAWin::contextDidChange): Added. Tells layers that they've started |
| animating, and tells the DrawingAreaImpl that we need to display again. |
| (WebKit::LayerTreeHostCAWin::rootLayer): Added. Gets the root layer's PlatformCALayer. |
| (WebKit::LayerTreeHostCAWin::addPendingAnimatedLayer): Added. Stores the layer so that we |
| can tell it animations have started the next time we get a contextDidChange callback. |
| (WebKit::LayerTreeHostCAWin::layerTreeDidChange): Added. Schedules a flush, unless we're |
| already in the process of flushing. This code came from WebCore::WKCACFViewLayerTreeHost. |
| (WebKit::LayerTreeHostCAWin::flushPendingLayerChangesNow): Added. Performs the flush. This |
| code was adapted from WebCore::WKCACFViewLayerTreeHost. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: Wrapped this whole header in HAVE(WKQCA), |
| since this class only works when WebKitQuartzCoreAdditions is available. Added a bunch of |
| new members. |
| |
| 2011-04-04 Adam Roben <aroben@apple.com> |
| |
| Add a way for LayerTreeHost to participate in DrawingAreaImpl's normal display mechanism |
| |
| When LayerTreeHost participates in display, it renders each frame into a bitmap. |
| DrawingAreaImpl sends the bitmap to the UI process in an Update message, just like in |
| non-accelerated compositing mode. The UI process never knows that accelerated compositing is |
| going on. (When LayerTreeHost does not participate in display, as on Mac, it is responsible |
| for getting bits from the web process to the UI process.) |
| |
| No LayerTreeHost uses this mechanism (yet). This patch should cause no change in behavior. |
| |
| Fixes <http://webkit.org/b/57792> LayerTreeHost needs a way to render frames to a bitmap |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): If the layer tree host participates in display, |
| perform a display (like in the non-accelerated case). |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): Don't send an |
| EnterAcceleratedCompositing message to the UI process if the layer tree host participates in |
| display. In that case, the UI process doesn't even need to know we're using accelerated |
| compositing in the web process. |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): Go through the normal display |
| mechanism if we have a layer tree host that participates in display. |
| (WebKit::DrawingAreaImpl::didUpdate): Don't ignore DidUpdate messages when we have a layer |
| tree host that participates in display. |
| (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): If the new layer tree host |
| participates in display, let the display timer continue to run and continue to expect |
| DidUpdate messages so that we don't interrupt the normal display mechanism. We still clear |
| out m_dirtyRegion, m_scrollRect, and m_scrollOffset, though, because the layer tree host is |
| still responsible for keeping track of those things even when it participates in display. |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): If the outgoing layer tree host |
| was participating in display, just send another Update message instead of an |
| ExitAcceleratedCompositing message, since the UI process never even knew we were using |
| accelerated compositing. |
| (WebKit::DrawingAreaImpl::displayTimerFired): If we have a layer tree host that's |
| participating in display, ask it when it next needs to display when scheduling our timer. |
| |
| (WebKit::DrawingAreaImpl::scheduleDisplay): |
| (WebKit::DrawingAreaImpl::display): |
| If we have a layer tree host that's participating in display, it will keep track of its own |
| dirty region, so ask it if it needs display rather than checking our own dirty region. |
| |
| (WebKit::DrawingAreaImpl::display): If we have a layer tree host that's participating in |
| display, don't bail out. Instead, tell it to display rather than asking the page to paint. |
| Moved the setting of updateInfo.viewSize earlier so that it will be set even when the layer |
| tree host is displaying. Other changes are just due to indentation. |
| |
| * WebProcess/WebPage/LayerTreeHost.h: |
| (WebKit::LayerTreeHost::participatesInDisplay): |
| (WebKit::LayerTreeHost::needsDisplay): |
| (WebKit::LayerTreeHost::timeUntilNextDisplay): |
| (WebKit::LayerTreeHost::display): |
| Stubbed out these functions. Derived classes can override them to participate in display. |
| |
| 2011-04-04 MORITA Hajime <morrita@google.com> |
| |
| Reviewed by Ryosuke Niwa. |
| |
| [Refactoring] SpellCheckingResult should be replaced with TextCheckingResult |
| https://bugs.webkit.org/show_bug.cgi?id=56085 |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::requestCheckingOfString): |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| (WebKit::WebEditorClient::checkTextOfParagraph): |
| |
| 2011-04-05 Alejandro G. Castro <alex@igalia.com> |
| |
| Another compilation fix after r82929 horrible patch merge. |
| |
| * UIProcess/WebPageProxy.messages.in: |
| |
| 2011-04-05 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix compilation error after r82929. |
| |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-04-05 Amruth Raj <amruthraj@motorola.com>, Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com> and Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement WebPage class for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=54230 |
| |
| Added functions to handle the generation of commands from the |
| keycodes. |
| |
| * GNUmakefile.am: |
| * Scripts/webkit2/messages.py: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::getEditorCommandsForKeyEvent): |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::backspaceCallback): |
| (WebKit::selectAllCallback): |
| (WebKit::cutClipboardCallback): |
| (WebKit::copyClipboardCallback): |
| (WebKit::pasteClipboardCallback): |
| (WebKit::toggleOverwriteCallback): |
| (WebKit::popupMenuCallback): |
| (WebKit::showHelpCallback): |
| (WebKit::deleteFromCursorCallback): |
| (WebKit::moveCursorCallback): |
| (WebKit::WebView::WebView): |
| (WebKit::WebView::getEditorCommandsForKeyEvent): |
| * UIProcess/gtk/WebView.h: |
| (WebKit::WebView::addPendingEditorCommand): |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp: Added. |
| (WebKit::WebEditorClient::getEditorCommandsForKeyEvent): |
| (WebKit::WebEditorClient::executePendingEditorCommands): |
| (WebKit::WebEditorClient::handleKeyboardEvent): |
| (WebKit::WebEditorClient::handleInputMethodKeydown): |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/gtk/WebPageGtk.cpp: Added. |
| (WebKit::WebPage::platformInitialize): |
| (WebKit::WebPage::platformPreferencesDidChange): |
| (WebKit::scroll): |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| (WebKit::WebPage::platformCanHandleRequest): |
| |
| 2011-04-05 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Remove duplicate API from WKContext |
| <rdar://problem/8727879> |
| https://bugs.webkit.org/show_bug.cgi?id=57815 |
| |
| Unreviewed buildfix after r82906. |
| |
| Add UNUSED_PARAM to resourceCachesToClear, because |
| it is only used within #if USE(CFURLCACHE) guard. |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| |
| 2011-04-04 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Brian Weinstein. |
| |
| Remove duplicate API from WKContext |
| <rdar://problem/8727879> |
| https://bugs.webkit.org/show_bug.cgi?id=57815 |
| |
| - Remove WKContextClearResourceCaches and WKContextClearApplicationCache in favor |
| of their more modern counterparts WKResourceCacheManagerClearCacheForAllOrigins |
| and WKApplicationCacheManagerDeleteAllEntries. |
| |
| - Expand clearing functionality of WKResourceCacheManager by adding type of resources |
| to clear. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| Remove clearing bools. |
| |
| * UIProcess/API/C/WKAPICast.h: |
| (WebKit::toResourceCachesToClear): |
| Update for new name of enum. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| * UIProcess/API/C/WKContext.h: |
| Remove WKContextClearResourceCaches and WKContextClearApplicationCache. |
| |
| * UIProcess/API/C/WKResourceCacheManager.cpp: |
| (WKResourceCacheManagerClearCacheForOrigin): |
| (WKResourceCacheManagerClearCacheForAllOrigins): |
| * UIProcess/API/C/WKResourceCacheManager.h: |
| Add WKResourceCachesToClear enum and use it in the clearing functions. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::ensureWebProcess): |
| * UIProcess/WebContext.h: |
| * WebProcess/WebProcess.messages.in: |
| Remove clearing functions and setting of bools for clear on launch. |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| Remove unnecessary #include. |
| |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForAllOrigins): |
| * UIProcess/WebResourceCacheManagerProxy.h: |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManager::clearCacheForAllOrigins): |
| * WebProcess/ResourceCache/WebResourceCacheManager.h: |
| * WebProcess/ResourceCache/WebResourceCacheManager.messages.in: |
| Add enum parameter describing what type of caches to clear. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::clearResourceCaches): |
| * WebProcess/WebProcess.h: |
| No longer need to use opaque type now that it is not a message receiver. |
| |
| 2011-04-04 David Kilzer <ddkilzer@apple.com> |
| |
| <http://webkit.org/b/57384> CFNetwork and WebCore load priorities should match |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Added initialization for |
| wkSetHTTPPipeliningMaximumPriority(). |
| |
| 2011-04-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Send NPCocoaEventFlagsChanged events |
| https://bugs.webkit.org/show_bug.cgi?id=57811 |
| <rdar://problem/9215600> |
| |
| * Shared/WebEvent.h: |
| (WebKit::WebEvent::capsLockKey): |
| Add CapsLock modifier and getter. |
| |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::modifiersForEvent): |
| Check for NSAlphaShiftKeyMask and set the CapsLockKey modifier. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::modifierFlags): |
| Check for CapsLockKey and set NSAlphaShiftKeyMask. |
| |
| (WebKit::isFlagsChangedEvent): |
| Return whether a given event is a Cocoa flags changed event. |
| |
| (WebKit::initializeKeyboardEvent): |
| If this is a flags changed event, set the event type to NPCocoaEventFlagsChanged. |
| |
| 2011-04-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Don't discard the backing stores of WKViews in the key window |
| https://bugs.webkit.org/show_bug.cgi?id=57808 |
| <rdar://problem/9110793> |
| <rdar://problem/9194284> |
| <rdar://problem/9222216> |
| |
| * UIProcess/DrawingAreaProxy.h: |
| (WebKit::DrawingAreaProxy::setBackingStoreIsDiscardable): |
| Add empty stub. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): |
| Initialize m_isBackingStoreDiscardable to true. |
| |
| (WebKit::DrawingAreaProxyImpl::setBackingStoreIsDiscardable): |
| Set m_isBackingStoreDiscardable and schedule or stop the discard backing store timer. |
| |
| (WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon): |
| Don't start the timer if m_isBackingStoreDiscardable is false. |
| |
| * UIProcess/DrawingAreaProxyImpl.h: |
| Add m_isBackingStoreDiscardable. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::viewStateDidChange): |
| Mark the backing store as discardable if the view is hidden or if the containing window |
| is not active. |
| |
| 2011-04-04 Jade Han <jade.han@nokia.com> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| Symbian build fix. |
| https://bugs.webkit.org/show_bug.cgi?id=54977 |
| |
| * config.h: |
| |
| 2011-04-04 Brady Eidson <beidson@apple.com> |
| |
| Rubberstamped by Adam Roben. |
| |
| Add WKIconDatabase* headers to the WebKit2 export for Windows: |
| * win/WebKit2Generated.make: |
| |
| 2011-04-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Get rid of WebContext::process() in more places |
| https://bugs.webkit.org/show_bug.cgi?id=57787 |
| |
| Migrate calls to WebContext::process() over to sendToAllProcesses and |
| sendToAllProcessesRelaunchingThemIfNecessary. |
| |
| Add FIXMEs for things that need to be fixed in order to support multiple web processes. |
| |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::cancel): |
| * UIProcess/Plugins/WebPluginSiteDataManager.cpp: |
| (WebKit::WebPluginSiteDataManager::getSitesWithData): |
| (WebKit::WebPluginSiteDataManager::clearSiteData): |
| * UIProcess/VisitedLinkProvider.cpp: |
| (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired): |
| * UIProcess/WebApplicationCacheManagerProxy.cpp: |
| (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries): |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::getHostnamesWithCookies): |
| (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): |
| * UIProcess/WebDatabaseManagerProxy.cpp: |
| (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin): |
| (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin): |
| (WebKit::WebDatabaseManagerProxy::deleteAllDatabases): |
| (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin): |
| * UIProcess/WebGeolocationManagerProxy.cpp: |
| (WebKit::WebGeolocationManagerProxy::providerDidChangePosition): |
| (WebKit::WebGeolocationManagerProxy::providerDidFailToDeterminePosition): |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::getLoadDecisionForIconURL): |
| (WebKit::WebIconDatabase::didFinishURLImport): |
| * UIProcess/WebKeyValueStorageManagerProxy.cpp: |
| (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries): |
| * UIProcess/WebMediaCacheManagerProxy.cpp: |
| (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache): |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForHostname): |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForAllHostnames): |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::getCacheOrigins): |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForAllOrigins): |
| |
| 2011-04-04 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| REGRESSION (WebKit2): Caps-Lock indicator sometimes doesn't appear in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=51230 |
| <rdar://problem/8780989> |
| |
| <rdar://problem/9015250> REGRESSION (WebKit2): Key events not fired for modifier keys |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView flagsChanged:]): Ported from WebHTMLView. |
| (-[WKView _interpretKeyEvent:withCachedTextInputState:savingCommandsTo:WebCore::]): |
| AppKit isn't happy about attempts to interpret NSFlagsChanged, but WK2 lacked the check. |
| |
| 2011-04-04 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Remove unused AnalyzeWithLargeStack code from Windows build files |
| https://bugs.webkit.org/show_bug.cgi?id=57771 |
| |
| This was used for us to build with prefast automatically, |
| but it is out-of-date and hasn't been used for some time. |
| Removing completely for now. |
| |
| * win/WebKitPreBuild.cmd: |
| |
| 2011-04-04 Anders Carlsson <andersca@apple.com> |
| |
| Attempt to fix the Windows build. |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::setShouldPaintNativeControls): |
| |
| 2011-04-04 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Make it easier to send a message to all processes in a context |
| https://bugs.webkit.org/show_bug.cgi?id=57776 |
| |
| Add WebContext::sendToAllProcesses and WebContext::sendToAllProcessesRelaunchingThemIfNecessary |
| as a first step towards getting rid of WebContext::process() and getting rid of a class of crashers |
| where WebContext::process() is null. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::initializeHistoryClient): |
| (WebKit::WebContext::languageChanged): |
| (WebKit::WebContext::setAlwaysUsesComplexTextCodePath): |
| (WebKit::WebContext::registerURLSchemeAsEmptyDocument): |
| (WebKit::WebContext::registerURLSchemeAsSecure): |
| (WebKit::WebContext::setDomainRelaxationForbiddenForURLScheme): |
| (WebKit::WebContext::setCacheModel): |
| (WebKit::WebContext::setDefaultRequestTimeoutInterval): |
| (WebKit::WebContext::clearResourceCaches): |
| (WebKit::WebContext::clearApplicationCache): |
| (WebKit::WebContext::setEnhancedAccessibility): |
| (WebKit::WebContext::startMemorySampler): |
| Use sendToAllProcesses. |
| |
| (WebKit::WebContext::stopMemorySampler): |
| Use sendToAllProcesses. This is a slight policy change where we now create a sandbox extension even |
| if there's no process around. Since this is a debugging tool it seems OK to do this. |
| |
| * UIProcess/WebContext.h: |
| Get rid of hasValidProcess. |
| |
| (WebKit::WebContext::sendToAllProcesses): |
| If we have a process and we can send messages to it, then do so. |
| |
| (WebKit::WebContext::sendToAllProcessesRelaunchingThemIfNecessary): |
| Relaunch the web process and send the message. |
| |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::deleteCookiesForHostname): |
| (WebKit::WebCookieManagerProxy::deleteAllCookies): |
| (WebKit::WebCookieManagerProxy::startObservingCookieChanges): |
| (WebKit::WebCookieManagerProxy::stopObservingCookieChanges): |
| (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): |
| Use sendToAllProcesses and sendToAllProcessesRelaunchingThemIfNecessary. |
| |
| 2011-04-04 Adam Roben <aroben@apple.com> |
| |
| Move a teensy bit of non-Mac-specific code up to LayerTreeHostCA |
| |
| Fixes <http://webkit.org/b/57774> LayerTreeHostCA should know how to flip the root layer |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: |
| (WebKit::LayerTreeHostCA::initialize): Cross-platformized and moved some code here... |
| |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm: |
| (WebKit::LayerTreeHostCAMac::platformInitialize): ...from here. |
| |
| 2011-04-01 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WK2: Reproducible crash when dragging out of or over Safari window. |
| https://bugs.webkit.org/show_bug.cgi?id=57654 |
| <rdar://problem/9139755> |
| |
| AppKit does not retain the owner given to the pasteboard, therefore we |
| need to give the ownership of the retained pointer to NSPasteboard. |
| Also, dragImage will release the NSFilePromiseDragSource object, therefore |
| we retain it before calling dragImage to be able to control its lifetime. |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::declareAndWriteDragImage): Passing ownership |
| of the pointer to AppKit when providing the owner pointer to the NSPasteboard |
| object. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformDragEnded): Retaining the NSFilePromiseDragSource |
| since dragImage will release it. |
| |
| 2011-03-30 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: No "open in preview" contextual menu item for PDFs |
| https://bugs.webkit.org/show_bug.cgi?id=57527 |
| |
| Add support for opening a PDF in the associated application from the |
| context menu. |
| |
| * UIProcess/API/mac/PDFViewController.mm: |
| (_applicationInfoForMIMEType): Added, copied from WebKit/WebPDFView.mm |
| (-[WKPDFView _openWithFinder:]): Added. |
| (-[WKPDFView hitTest:]): Added, copied from WebKit/WebPDFView.mm. |
| (-[WKPDFView menuForEvent:]): Added, adapted from WebKit/WebPDFVie.mm. |
| (-[WKPDFView validateUserInterfaceItem:]): Added. |
| |
| 2011-04-04 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.setAllowFileAccessFromFileURLs |
| https://bugs.webkit.org/show_bug.cgi?id=57572 |
| |
| * Shared/WebPreferencesStore.cpp: |
| (WebKit::WebPreferencesStore::decode): |
| (WebKit::WebPreferencesStore::overrideAllowFileAccessFromFileURLsForTestRunner): |
| * Shared/WebPreferencesStore.h: |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetAllowFileAccessFromFileURLs): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setAllowFileAccessFromFileURLs): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-04-04 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57683 |
| Flesh out WK2 Icon Database API |
| |
| For now the new API will add a client interface where the WK1 version used NSNotifications. |
| |
| If we decide we'd like the granularity of specific callback functions later, |
| they can easily be added on. |
| |
| Project file nonsense: |
| * GNUmakefile.am: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| |
| Add a WKIconDatabaseClient and some new API: |
| * UIProcess/API/C/WKIconDatabase.cpp: |
| (WKIconDatabaseSetIconDatabaseClient): |
| (WKIconDatabaseRemoveAllIcons): |
| (WKIconDatabaseCheckIntegrityBeforeOpening): |
| * UIProcess/API/C/WKIconDatabase.h: |
| * UIProcess/API/C/cg/WKIconDatabaseCG.cpp: |
| (WKIconDatabaseTryGetCGImageForURL): Renamed to "try" for subtle clarification. |
| * UIProcess/API/C/cg/WKIconDatabaseCG.h: |
| |
| Implementations for the new APIs: |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::retainIconForPageURL): Remove excessive logging. |
| (WebKit::WebIconDatabase::releaseIconForPageURL): Ditto. |
| (WebKit::WebIconDatabase::imageForPageURL): |
| (WebKit::WebIconDatabase::removeAllIcons): |
| (WebKit::WebIconDatabase::checkIntegrityBeforeOpening): |
| (WebKit::WebIconDatabase::initializeIconDatabaseClient): |
| (WebKit::WebIconDatabase::didImportIconURLForPageURL): Dispatch a client callback, |
| much like the WK1 API uses notifications. |
| (WebKit::WebIconDatabase::didImportIconDataForPageURL): Ditto. |
| (WebKit::WebIconDatabase::didChangeIconForPageURL): Ditto. |
| (WebKit::WebIconDatabase::didRemoveAllIcons): Ditto. |
| * UIProcess/WebIconDatabase.h: |
| * UIProcess/WebIconDatabaseClient.cpp: Added. |
| (WebKit::WebIconDatabaseClient::didChangeIconForPageURL): |
| (WebKit::WebIconDatabaseClient::didRemoveAllIcons): |
| * UIProcess/WebIconDatabaseClient.h: Added. |
| |
| 2011-04-04 Carlos Garcia Campos <cgarcia@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Main loop sources are leaked in RunLoopGtk |
| https://bugs.webkit.org/show_bug.cgi?id=57618 |
| |
| * Platform/RunLoop.h: |
| (RunLoop::TimerBase::isRepeating): |
| * Platform/gtk/RunLoopGtk.cpp: |
| (RunLoop::~RunLoop): Make sure main loop is currently running |
| before calling g_main_loop_quit(), RunLoop::stop() might have been |
| called. |
| (RunLoop::wakeUp): Use an idle source with default priority |
| instead of a timeout one with a 0 interval. |
| (RunLoop::TimerBase::clearTimerSource): New method to clear the |
| timer. |
| (RunLoop::TimerBase::destroyNotifyCallback): Destroy notify |
| callback called when the source is destroyed to clear the timer. |
| (RunLoop::TimerBase::timerFiredCallback): Use the same callback for |
| repeating and no repeating timers. |
| (RunLoop::TimerBase::start): g_source_attach() increments the |
| source reference counter, so use GRefPtr to make sure the source |
| is freed. |
| (RunLoop::TimerBase::stop): Use clearTimerSource(). |
| |
| 2011-04-03 Dan Bernstein <mitz@apple.com> |
| |
| Build fix. |
| |
| * Shared/DictionaryPopupInfo.cpp: |
| (WebKit::DictionaryPopupInfo::encode): |
| (WebKit::DictionaryPopupInfo::decode): |
| * Shared/DictionaryPopupInfo.h: |
| |
| 2011-04-03 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9227839> REGRESSION: Reproducible crash in Snow Leopard when trying to show the Dictionary panel or application |
| https://bugs.webkit.org/show_bug.cgi?id=57739 |
| |
| * Shared/DictionaryPopupInfo.cpp: |
| (WebKit::DictionaryPopupInfo::encode): Do not encode the options dictionary on Snow Leopard. |
| (WebKit::DictionaryPopupInfo::decode): Do not decode the options dictionary on Snow Leopard. |
| * Shared/DictionaryPopupInfo.h: Removed the options member variable on Snow Leopard. |
| * Shared/Plugins/PluginQuirks.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupForRange): Do not set the options member variable on |
| Snow Leopard. |
| |
| 2011-04-02 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Beth Dakin. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57605 |
| Frame::pageScaleFactor() should not affect getBoundingClientRect() or |
| getClientRects() |
| -and corresponding- |
| <rdar://problem/9194541> |
| |
| Add DRT support for the scaleWebView SPI. |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageSetScaleAtOrigin): |
| * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: |
| |
| 2011-04-02 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Oliver Hunt. |
| |
| "Search in Spotlight" broken in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57712 |
| |
| Proxy spotlight searching to the UIProcess. |
| |
| * UIProcess/WebPageProxy.messages.in: |
| Add new message. Re-organize messages to put all mac specific ones together. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::speak): |
| (WebKit::WebPageProxy::searchWithSpotlight): |
| Moved code to trigger spotlight here. Use WTF::String -> NSString conversion function |
| instead of relying on the built in conversion since it doesn't always work in the UIProcess. |
| |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| (WebKit::WebContextMenuClient::searchWithSpotlight): |
| Post message to the UIProcess to do the searching. |
| |
| 2011-04-02 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Specify the certificate store in WKBundleSetClientCertificate() |
| https://bugs.webkit.org/show_bug.cgi?id=57707 |
| |
| Include the name of the system certificate store that the client certificate came from in WKBundleSetClientCertificate(). |
| |
| The PCCERT_CONTEXT for the client certificate we create from the message from the UI process doesn't contain enough information to actually use it in a request, we need to get the real certificate from the certificate store (which is typically the "MY" store). |
| |
| * WebProcess/InjectedBundle/API/c/win/WKBundlePrivateWin.cpp: |
| (WKBundleSetClientCertificate): Add certificateSystemStoreName to parameters. |
| * WebProcess/InjectedBundle/API/c/win/WKBundlePrivateWin.h: Add certificateSystemStoreName to WKBundleSetClientCertificate() parameters. |
| * WebProcess/InjectedBundle/InjectedBundle.h: Add certificateSystemStoreName to setClientCertificate() parameters. |
| * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: |
| (WebKit::InjectedBundle::setClientCertificate): Read the real certificate from the certificate store. |
| |
| 2011-04-02 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Implement WKBundleFrameHasHorizontalScrollbar/WKBundleFrameHasVerticalScrollbar |
| <rdar://problem/9225772> |
| https://bugs.webkit.org/show_bug.cgi?id=57709 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameHasHorizontalScrollbar): |
| (WKBundleFrameHasVerticalScrollbar): |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.h: |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::hasHorizontalScrollbar): |
| (WebKit::WebFrame::hasVerticalScrollbar): |
| * WebProcess/WebPage/WebFrame.h: |
| |
| 2011-04-01 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Type-to-select doesn't work in open <select> menu (53023) |
| https://bugs.webkit.org/show_bug.cgi?id=53023 |
| <rdar://problem/8907678> |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: adding new setPopupMenuSelectedIndex message for windows platform |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::setPopupMenuSelectedIndex): |
| * UIProcess/win/WebPopupMenuProxyWin.h: moving setFocusedIndex() into public method |
| * WebProcess/WebCoreSupport/WebPopupMenu.cpp: |
| (WebKit::WebPopupMenu::updateFromElement): send message back to UIProcess to update the selected element |
| |
| 2011-04-01 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION: Assertion failure when executing a complex custom key binding |
| https://bugs.webkit.org/show_bug.cgi?id=57681 |
| |
| Also completes a fix for |
| <rdar://problem/9063782> WebKit2: Text fields in Safari don't honor custom key bindings |
| |
| * UIProcess/API/mac/WKView.mm: (-[WKView hasMarkedText]): There is no need to execute saved |
| commands when they can't possibly change the result. |
| |
| 2011-04-01 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Crash when calling WebPageProxy::setMemoryCacheClientCallsEnabled with an invalid Web Process |
| https://bugs.webkit.org/show_bug.cgi?id=57680 |
| <rdar://problem/9202909> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setMemoryCacheClientCallsEnabled): Add an isValid check before sending |
| the message. |
| |
| 2011-03-31 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Save as PDF in Safari provides Untitled as default file name |
| https://bugs.webkit.org/show_bug.cgi?id=57529 |
| |
| Set the NSPrintOperation's jobTitle to the printing frame's title. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView printOperationWithPrintInfo:forFrame:]): |
| |
| 2011-04-01 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Link from PDF opens in a new tab instead of in the same tab |
| https://bugs.webkit.org/show_bug.cgi?id=57528 |
| |
| Notify the WebProcess that a link has been clicked so that the normal policy |
| lookup can occur. |
| |
| * Shared/WebEvent.cpp: |
| (WebKit::WebEvent::WebEvent): Initialize ivars in the default constructor. |
| * Shared/WebEvent.h: Add WebEvent::NoType to Type enum. |
| * Shared/WebMouseEvent.cpp: |
| (WebKit::WebMouseEvent::WebMouseEvent): Ditto. |
| * UIProcess/API/mac/PDFViewController.mm: |
| (-[WKPDFView PDFViewWillClickOnLink:withURL:]): Handle the delegate |
| function and override the PDFView default behavior. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveEvent): Handle the new WebEvent::NoType enum. |
| (WebKit::WebPageProxy::linkClicked): Added. Send event through to WebPage. |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::linkClicked): Added. Call loadFrameRequest(). |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Added LinkClicked. |
| |
| 2011-04-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam "Keyword Slasher" Roben. |
| |
| Remove unnecessary static keyword. |
| |
| * UIProcess/API/cpp/WKRetainPtr.h: |
| (WebKit::adoptWK): |
| |
| 2011-04-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| Add adoptWK to WKRetainPtr.h |
| https://bugs.webkit.org/show_bug.cgi?id=57670 |
| |
| * UIProcess/API/cpp/WKRetainPtr.h: |
| (WebKit::adoptWK): |
| Add shared implementation of adoptWK. Previously both WebKitTestRunner |
| and TestWebKitAPI had separate versions of it. |
| |
| 2011-04-01 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Shockwave plug-in doesn't accept mouse events |
| https://bugs.webkit.org/show_bug.cgi?id=57653 |
| <rdar://problem/8483273> |
| |
| Add a missing break. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::convertPoint): |
| |
| 2011-04-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKitTestRunner needs layoutTestController.shadowRoot |
| https://bugs.webkit.org/show_bug.cgi?id=57661 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (WKBundleNodeHandleGetRenderRect): |
| (WKBundleNodeHandleGetElementBounds): |
| (WKBundleNodeHandleCopyElementShadowRoot): |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::elementShadowRoot): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: |
| Add accessor for the shadowRoot of an element in the bundle. |
| |
| 2011-04-01 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Make WebKit2 text input handling more like WebKit1 |
| https://bugs.webkit.org/show_bug.cgi?id=57649 |
| |
| We now send more sync messages from UI process to Web process for NSTextInput protocol |
| methods. Some of the exchanges are avoided by pre-calculating the responses before asking |
| UI process to interpret key events, and also with each sync message sent during |
| interpretation, and which could change the state. |
| |
| * Platform/CoreIPC/HandleMessage.h: (CoreIPC::callMemberFunction): Added a missing |
| specialization for a function with 6 arguments and 2 returned values. |
| |
| * Scripts/webkit2/messages.py: Added TextInputState to struct list. |
| |
| * Shared/WebCoreArgumentCoders.h: Fixed a bug in CompositionUnderline encoding, which only |
| encoded a part of Color field, and didn't match decoder. |
| |
| * Shared/mac/TextInputState.h: Added. This is state that's needed for IM machinery and that |
| we don't want to send sync messages for. This is similar to SelectionState, but the latter |
| is only updated asynchronously, and is thus less reliable. |
| |
| * UIProcess/API/mac/PageClientImpl.h: We don't "intercept", we "interpret". |
| |
| * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::interpretKeyEvent): Pass |
| current text input state, and don't expect anything input method related in return, as input |
| methods are now sync. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView doCommandBySelector:]): |
| (-[WKView insertText:]): |
| (-[WKView keyDown:]): |
| (-[WKView _executeSavedKeypressCommands]): |
| (-[WKView inputContext]): |
| (-[WKView selectedRange]): |
| (-[WKView hasMarkedText]): |
| (-[WKView unmarkText]): |
| (-[WKView setMarkedText:selectedRange:]): |
| (-[WKView markedRange]): |
| (-[WKView attributedSubstringFromRange:]): |
| (-[WKView characterIndexForPoint:]): |
| (-[WKView firstRectForCharacterRange:]): |
| (-[WKView _interpretKeyEvent:withCachedTextInputState:savingCommandsTo:WebCore::]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setComposition): |
| (WebKit::WebPageProxy::confirmComposition): |
| (WebKit::WebPageProxy::insertText): |
| (WebKit::WebPageProxy::getSelectedRange): |
| (WebKit::WebPageProxy::executeKeypressCommands): |
| (WebKit::WebPageProxy::interpretQueuedKeyEvent): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| (WebKit::WebEditorClient::handleKeyboardEvent): |
| (WebKit::WebEditorClient::handleInputMethodKeydown): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::viewFrameInWindowCoordinates): |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::createSelectorExceptionMap): |
| (WebKit::commandNameForSelectorName): |
| (WebKit::currentTextInputState): |
| (WebKit::frameForEvent): |
| (WebKit::WebPage::executeKeypressCommandsInternal): |
| (WebKit::WebPage::handleEditingKeyboardEvent): |
| (WebKit::WebPage::setComposition): |
| (WebKit::WebPage::confirmComposition): |
| (WebKit::WebPage::insertText): |
| (WebKit::WebPage::getSelectedRange): |
| (WebKit::convertToRange): |
| (WebKit::WebPage::executeKeypressCommands): |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): |
| Rewrote to be more like WebKit1. |
| |
| 2011-04-01 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.setDatabaseQuota |
| https://bugs.webkit.org/show_bug.cgi?id=57568 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetDatabaseQuota): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::setDatabaseQuota): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| * WebProcess/WebCoreSupport/WebDatabaseManager.h: |
| |
| 2011-04-01 Timothy Hatcher <timothy@apple.com> |
| |
| Make momentum scroll event latching work in WebKit2 on Mac. |
| |
| <rdar://problem/8751861> |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::momentumPhaseForEvent): Return a phase on older Mac system by using WKGetNSEventMomentumPhase. |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Remove IsLatchingWheelEvent, add GetNSEventMomentumPhase. |
| |
| 2011-04-01 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Assertion failure (type == event.type()) after a web process crash |
| https://bugs.webkit.org/show_bug.cgi?id=56228 |
| <rdar://problem/8806106> |
| |
| This partially un-confuses the UI process about key processing state after a web process |
| crash. It may not be pefect yet - sending a KeyUp to a new process that never saw a KeyDown |
| seems weird. |
| |
| * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::processDidCrash): |
| |
| 2011-04-01 Adam Roben <aroben@apple.com> |
| |
| Cairo build fix |
| |
| * WebProcess/WebPage/LayerTreeHost.cpp: Only pull in the LayerTreeHostCA derived classes for |
| PLATFORM(CA) ports. |
| |
| 2011-03-31 Adam Roben <aroben@apple.com> |
| |
| Split LayerTreeHostCA into a base class and derived Mac and Win classes |
| |
| This will make it easier to customize the Mac and Windows implementations without adding too |
| many #ifdefs. |
| |
| Fixes <http://webkit.org/b/57606> Windows and Mac should use separate LayerTreeHost classes |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Added LayerTreeHostCAMac.h. |
| |
| * WebProcess/WebPage/LayerTreeHost.cpp: |
| (WebKit::LayerTreeHost::create): Create a LayerTreeHostCAMac on Mac, and LayerTreeHostCAWin |
| on Windows. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: |
| (WebKit::LayerTreeHostCA::LayerTreeHostCA): Moved some code from here... |
| (WebKit::LayerTreeHostCA::initialize): ...to here. This function will be called after the |
| constructor returns, and thus can safely call functions that are pure virtual in this class |
| and its base class. We now pass our LayerTreeContext to platformInitialize so that our |
| derived classes can initialize it. |
| (WebKit::LayerTreeHostCA::~LayerTreeHostCA): Removed Mac-specific code. |
| |
| (WebKit::LayerTreeHostCA::invalidate): |
| (WebKit::LayerTreeHostCA::sizeDidChange): |
| (WebKit::LayerTreeHostCA::forceRepaint): |
| (WebKit::LayerTreeHostCA::didPerformScheduledLayerFlush): |
| Removed platform* calls. Derived classes can just override these functions to do what they |
| need. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.h: Removed Mac-specific pieces. Made some functions |
| virtual so that derived classes can override them. |
| |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.h: Added. |
| |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm: |
| (WebKit::LayerTreeHostCAMac::create): Create and initialize a host. |
| (WebKit::LayerTreeHostCAMac::LayerTreeHostCAMac): Simple constructor. |
| (WebKit::LayerTreeHostCAMac::~LayerTreeHostCAMac): Moved code here from LayerTreeHostCA |
| destructor. |
| (WebKit::LayerTreeHostCAMac::platformInitialize): Removed direct uses of LayerTreeHostCA |
| data members. |
| |
| (WebKit::LayerTreeHostCAMac::invalidate): |
| (WebKit::LayerTreeHostCAMac::sizeDidChange): |
| (WebKit::LayerTreeHostCAMac::forceRepaint): |
| (WebKit::LayerTreeHostCAMac::didPerformScheduledLayerFlush): |
| Renamed from platform*. Now call up to the base class. |
| |
| (WebKit::LayerTreeHostCAMac::flushPendingLayerChangesRunLoopObserverCallback): Updated type. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: |
| (WebKit::LayerTreeHostCAWin::create): Create and initialize a host. |
| |
| (WebKit::LayerTreeHostCAWin::LayerTreeHostCAWin): |
| (WebKit::LayerTreeHostCAWin::~LayerTreeHostCAWin): |
| (WebKit::LayerTreeHostCAWin::platformInitialize): |
| (WebKit::LayerTreeHostCAWin::scheduleLayerFlush): |
| Stubbed out. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h: Added. |
| |
| * win/WebKit2.vcproj: Added LayerTreeHostCAWin.h |
| |
| * win/WebKit2Apple.vsprops: Added WebProcess/WebPage/ca/win to the include path. |
| |
| 2011-03-31 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed WinCairo build fix after r82632. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::visibilityDidChange): |
| |
| 2011-03-31 Adam Roben <aroben@apple.com> |
| |
| Add SharedMemory::adopt, which can take ownership of an existing file mapping object |
| |
| Fixes <http://webkit.org/b/57599> Need a way to wrap an existing file mapping object in a |
| SharedMemory |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/SharedMemory.h: Added adopt. |
| |
| * Platform/win/SharedMemoryWin.cpp: |
| (WebKit::SharedMemory::create): Moved code to adopt the HANDLE from here... |
| (WebKit::SharedMemory::adopt): ...to here. |
| |
| 2011-03-31 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKitTestRunner needs layoutTestController.clearAllDatabases |
| https://bugs.webkit.org/show_bug.cgi?id=42540 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleClearAllDatabases): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::clearAllDatabases): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| * WebProcess/WebCoreSupport/WebDatabaseManager.h: |
| |
| 2011-03-31 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add some more media related things to the sandbox profile. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-03-31 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Tabbed pages redraw unnecessarily when activated |
| https://bugs.webkit.org/show_bug.cgi?id=57589 |
| <rdar://problem/9218258> |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::visibilityDidChange): |
| If we become visible and have no backing store, make sure to call backingStoreStateDidChange |
| so that the next time we're asked to paint we'll wait for something to paint. |
| |
| (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode): |
| Remove now redundant call to backingStoreStateDidChange. |
| |
| 2011-03-31 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Sandbox violations when playing back HTML5 video on YouTube |
| <rdar://problem/8950692> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-03-31 Darin Adler <darin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Implement mouseDown, mouseUp, and mouseMoveTo in WebKitTestRunner |
| https://bugs.webkit.org/show_bug.cgi?id=57573 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageSimulateMouseDown): Added. |
| (WKBundlePageSimulateMouseUp): Added. |
| (WKBundlePageSimulateMouseMotion): Added. |
| * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Added above functions. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::simulateMouseDown): Added. |
| (WebKit::WebPage::simulateMouseUp): Added. |
| (WebKit::WebPage::simulateMouseMotion): Added. |
| * WebProcess/WebPage/WebPage.h: Added above functions. |
| |
| 2011-03-31 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Rename WebCore's UI_STRING to WEB_UI_STRING to not overlap with WebKit API |
| https://bugs.webkit.org/show_bug.cgi?id=57582 |
| |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::PluginProcess::platformInitialize): |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): |
| * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2011-03-31 Adam Roben <aroben@apple.com> |
| |
| Specify both FILE_MAP_READ and FILE_MAP_WRITE when creating a read-write SharedMemory object |
| |
| When passed to ::MapViewOfFile, FILE_MAP_WRITE implies FILE_MAP_READ, but other file mapping |
| APIs don't work that way. This bug wasn't causing any problems in practice, but it would |
| have prevented us from creating a DIB that wraps a SharedMemory object (which I noticed |
| while working on another bug). |
| |
| Fixes <http://webkit.org/b/57576> File mappings used by read-write SharedMemory objects |
| aren't correctly marked as read-write after being sent over a CoreIPC::Connection |
| |
| Reviewed by Brian Weinstein. |
| |
| * Platform/win/SharedMemoryWin.cpp: |
| (WebKit::accessRights): Specify FILE_MAP_READ in addition to FILE_MAP_WRITE for read-write |
| SharedMemory. |
| |
| 2011-03-31 Adam Roben <aroben@apple.com> |
| |
| Quote the executable path we pass to ::CreateProcessW |
| |
| This will ensure that spaces in the path will be interpreted correctly. |
| |
| Fixes <http://webkit.org/b/57569> Web process sometimes fails to launch when there are |
| spaces in its path |
| |
| Reviewed by Steve Falkenburg. |
| |
| * UIProcess/Launcher/win/ProcessLauncherWin.cpp: |
| (WebKit::ProcessLauncher::launchProcess): Surround the executable path in quotes. |
| |
| 2011-03-31 Alexey Proskuryakov <ap@apple.com> |
| |
| Patch by John Harvey, reviewed and tweaked by me. |
| |
| <rdar://problem/8644403> Should notify TSM that plug-ins would show a bottom input window for marked text. |
| |
| * UIProcess/API/mac/WKTextInputWindowController.mm: |
| (-[WKTextInputPanel _interpretKeyEvent:string:]): |
| |
| 2011-03-31 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by John Sullivan, Darin Adler, Dan Bernstein and Sam Weinig. |
| |
| If a user doesn't have a Database/LocalStorage directory, it can't be created (sandbox violations) |
| https://bugs.webkit.org/show_bug.cgi?id=57561 |
| <rdar://problem/9127411> |
| |
| Ensure that any readwrite sandbox directories actually exist before entering the sandbox. |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::appendReadwriteSandboxDirectory): |
| |
| 2011-03-31 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Darin Adler and Adam Roben. |
| |
| <rdar://problem/9214824> Find client not told when WKPageCountStringMatches exceeds maximum |
| https://bugs.webkit.org/show_bug.cgi?id=57552 |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::countStringMatches): |
| Use the same technique as findString() to report kWKMoreThanMaximumMatchCount when appropriate. |
| (WebKit::FindController::findString): |
| Convert numeric_limits::max() to max() - 1 to avoid overflow case. |
| |
| 2011-03-31 Evan Martin <evan@chromium.org> |
| |
| Reviewed by Eric Seidel. |
| |
| <title> should support dir attribute |
| https://bugs.webkit.org/show_bug.cgi?id=50961 |
| |
| Update to new FrameLoaderClient interface. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle): |
| (WebKit::WebFrameLoaderClient::setTitle): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-03-31 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [WK2] Introduce an option for no NPAPI support |
| https://bugs.webkit.org/show_bug.cgi?id=55828 |
| |
| Stub out NPAPI support for platform and OS combinations that are |
| not supported yet. Ancestor patch was made by Laszlo Gombos. |
| |
| * GNUmakefile.am: Add NetscapePluginModuleNone.cpp and NetscapePluginNone.cpp |
| to the build system. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| Remove the sanity check because from now all combinations that |
| don't have an explicitly set plugin architecture fall into |
| the PLUGIN_ARCHITECTURE(UNSUPPORTED) category and has a stubbed |
| implementation. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModuleNone.cpp: Added. |
| Stubbed implementation. |
| (WebKit::NetscapePluginModule::getPluginInfo): |
| (WebKit::NetscapePluginModule::determineQuirks): |
| |
| * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: Guard with |
| PLUGIN_ARCHITECTURE(X11). |
| |
| * WebKit2.pro: Add NetscapePluginModuleNone.cpp and NetscapePluginNone.cpp |
| to the build system. |
| |
| * WebProcess/Plugins/Netscape/NetscapePluginNone.cpp: Added. |
| Stubbed implementation |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| (WebKit::NetscapePlugin::platformDestroy): |
| (WebKit::NetscapePlugin::platformInvalidate): |
| (WebKit::NetscapePlugin::platformGeometryDidChange): |
| (WebKit::NetscapePlugin::platformPaint): |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): |
| (WebKit::NetscapePlugin::platformHandleWheelEvent): |
| (WebKit::NetscapePlugin::platformSetFocus): |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: Guard with |
| PLUGIN_ARCHITECTURE(X11) |
| |
| * config.h: Introduce PLUGIN_ARCHITECTURE(UNSUPPORTED) as another |
| option. Make platform and OS combinations that are not supported |
| yet fall into this. Don't use Q_WS_X11 to test the window system |
| for Qt because it is not defined without including <QtGlobal>. |
| No clue about how could it work so far. |
| |
| 2011-03-31 Vamshikrishna.Yellenki <vamshi@motorola.com> and Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| Implement MiniBrowser for Gtk port. |
| https://bugs.webkit.org/show_bug.cgi?id=48512 |
| |
| * Shared/API/c/gtk/WKBaseGtk.h: Add the stdbool.h include. |
| |
| 2011-03-30 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9005982> Flash of white when a WKView with composited content moves on-screen |
| https://bugs.webkit.org/show_bug.cgi?id=57522 |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode): Invalidate the current |
| backing store state, so that we get an update as soon as the page enters compositing mode |
| next. |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): Added a call to |
| LayerTreeHost::forceRepaint() in order to flush and synchronize the layers |
| before sending the update message to the UI process. |
| |
| 2011-03-30 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Sandbox violations if you navigate a file URL via something other than a click |
| <rdar://problem/9016086> |
| https://bugs.webkit.org/show_bug.cgi?id=57519 |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::shouldReuseCommittedSandboxExtension): |
| Remove unnecessary restriction on extension reuse. Any type of file to file navigation |
| should be allowed. |
| |
| 2011-03-30 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Clean up the sandbox parameter code |
| https://bugs.webkit.org/show_bug.cgi?id=57518 |
| |
| * Shared/WebProcessCreationParameters.h: |
| Make nsURLCachePath and uiProcessBundleResourcePath Strings to match the other paths we send over. |
| |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| nsURLCachePath and uiProcessBundleResourcePath are now Strings. |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::appendSandboxParameterPathInternal): |
| (WebKit::appendReadwriteConfDirectory): |
| (WebKit::appendReadonlySandboxDirectory): |
| (WebKit::appendReadwriteSandboxDirectory): |
| (WebKit::initializeSandbox): |
| Make it more clear whether the directories we're adding are readonly or readwrite. No functionality change. |
| |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| nsURLCachePath is now a string. |
| |
| 2011-03-30 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Downloading a file fails due to a sandbox violation if the destination path is a symlink |
| https://bugs.webkit.org/show_bug.cgi?id=57517 |
| <rdar://problem/8943865> |
| |
| Make sure to resolve any symlinks in the given path when creating a sandbox extension handle. |
| Note that we can't use realpath or -[NSString stringByResolvingSymlinksInPath], because those calls |
| will fail if the pointed to file doesn't exist. |
| |
| * Shared/mac/SandboxExtensionMac.mm: |
| (WebKit::resolveSymlinksInPath): |
| New function that resolves all the symlinks in the given path. |
| |
| (WebKit::SandboxExtension::createHandle): |
| Call resolveSymlinksInPath on the resulting path. |
| |
| 2011-03-30 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Share most vsprops between Release and Production builds in releaseproduction.vsprops |
| https://bugs.webkit.org/show_bug.cgi?id=57508 |
| |
| * win/WebKit2Production.vsprops: |
| * win/WebKit2Release.vsprops: |
| * win/WebKit2ReleaseCairoCFLite.vsprops: |
| * win/WebKit2WebProcessProduction.vsprops: |
| * win/WebKit2WebProcessRelease.vsprops: |
| * win/WebKit2WebProcessReleaseCairoCFLite.vsprops: |
| |
| 2011-03-30 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| Ensure consistent, readable working directory for WebProcess before entering sandbox |
| <rdar://problem/8951176> |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| |
| 2011-03-30 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Brady Eidson. |
| |
| WebKit2: Attempting to view css file from url causes it to download |
| <rdar://problem/9102611> |
| https://bugs.webkit.org/show_bug.cgi?id=57501 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::canShowMIMEType): |
| Match WebKit1 by allowing any MIME type that starts with "text/" |
| except the ones we explicitly blacklist. |
| |
| 2011-03-30 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Update Windows production build logic for new production configurations |
| https://bugs.webkit.org/show_bug.cgi?id=57494 |
| |
| * win/WebKit2.make: |
| * win/WebKit2Production.vsprops: |
| * win/WebKit2WebProcessProduction.vsprops: |
| |
| 2011-03-30 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Rename Windows configuration Release_LTCG to Production for clarity |
| https://bugs.webkit.org/show_bug.cgi?id=57465 |
| |
| * win/WebKit2.submit.sln: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Generated.vcproj: |
| * win/WebKit2Production.vsprops: Copied from Source/WebKit2/win/WebKit2ReleaseLTCG.vsprops. |
| * win/WebKit2ReleaseLTCG.vsprops: Removed. |
| * win/WebKit2WebProcess.vcproj: |
| * win/WebKit2WebProcessProduction.vsprops: Copied from Source/WebKit2/win/WebKit2WebProcessReleaseLTCG.vsprops. |
| * win/WebKit2WebProcessReleaseLTCG.vsprops: Removed. |
| |
| 2011-03-30 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: WebProcess is using 89%, while viewing a PDF |
| https://bugs.webkit.org/show_bug.cgi?id=57471 |
| |
| Break a never ending display/update cycle between the UIProcess and the WebProcess |
| by clearing the dirty region when a page has a custom representation (like a PDF). |
| Also, avoid the issue where possible by not setting the dirty region in the same case. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::setNeedsDisplay): Bail early if mainFrameHasCustomRepresentation(). |
| (WebKit::DrawingAreaImpl::scroll): Ditto. |
| (WebKit::DrawingAreaImpl::display): Both bail early and clear m_dirtyRegion if |
| mainFrameHasCustomRepresentation(). |
| |
| 2011-03-30 Sam Weinig <sam@webkit.org> |
| |
| Fix Snow Leopard build. |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::showContextMenu): |
| |
| 2011-03-30 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2 contextual menu looks different than the rest of the OS |
| <rdar://problem/9172935> |
| https://bugs.webkit.org/show_bug.cgi?id=57475 |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::showContextMenu): |
| Use correct SPI for showing a context menu. The dummy view is also |
| not necessary, so remove it. |
| |
| 2011-03-30 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Crash when NPN_Evaluate removes the plug-in frame |
| https://bugs.webkit.org/show_bug.cgi?id=57474 |
| <rdar://problem/9191396> |
| |
| Get a reference to the frame since it can be nulled out if running the JavaScript code |
| causes the plug-in's containing frame to be removed from the frame tree. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::evaluate): |
| |
| 2011-03-30 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add default localization strategy that can be shared by WebKit1 and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57406 |
| |
| * Shared/WebLocalizableStrings.h: Removed. |
| Removed in favor of using WebCore/LocalizedStrings.h directly. |
| |
| * PluginProcess/mac/PluginProcessMac.mm: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm: |
| * WebProcess/mac/WebProcessMac.mm: |
| Use WebCore/LocalizedStrings.h directly. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| Remove localization strategy override in favor of using new default implementation. |
| |
| * GNUmakefile.am: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| Remove WebLocalizableStrings.h |
| |
| 2011-03-30 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Assertion failure in plug-in process when calling WKPluginSiteDataManagerGetSitesWithData |
| https://bugs.webkit.org/show_bug.cgi?id=57468 |
| <rdar://problem/9199089> |
| |
| Call decrementLoadCount from removeWebProcessConnection instead of startShutdownTimerIfNecessary, |
| otherwise we'll get a load count underflow when a connection is never created. |
| |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::removeWebProcessConnection): |
| (WebKit::PluginProcess::createWebProcessConnection): |
| (WebKit::PluginProcess::startShutdownTimerIfNecessary): |
| |
| 2011-03-30 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Make sure to try to terminate the Web Process when any work that might require the |
| Web Process to be relaunched is done |
| https://bugs.webkit.org/show_bug.cgi?id=57462 |
| |
| For the ManagerProxies in the UIProcess, only return true from shouldTerminate if there are |
| no more callbacks waiting to be invoked. |
| |
| For the the Managers in the WebProcess, call WebProcess::shared().terminateIfPossible() when |
| any work called for by a ManagerProxy function that called relaunchProcessIfNecessary is |
| finished. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::shouldTerminate): |
| Check with each of the ManagerProxies. |
| |
| * UIProcess/WebApplicationCacheManagerProxy.cpp: |
| (WebKit::WebApplicationCacheManagerProxy::shouldTerminate): |
| * UIProcess/WebApplicationCacheManagerProxy.h: |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::shouldTerminate): |
| * UIProcess/WebCookieManagerProxy.h: |
| * UIProcess/WebDatabaseManagerProxy.cpp: |
| (WebKit::WebDatabaseManagerProxy::shouldTerminate): |
| * UIProcess/WebDatabaseManagerProxy.h: |
| * UIProcess/WebKeyValueStorageManagerProxy.cpp: |
| (WebKit::WebKeyValueStorageManagerProxy::shouldTerminate): |
| * UIProcess/WebKeyValueStorageManagerProxy.h: |
| * UIProcess/WebMediaCacheManagerProxy.cpp: |
| (WebKit::WebMediaCacheManagerProxy::shouldTerminate): |
| * UIProcess/WebMediaCacheManagerProxy.h: |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::shouldTerminate): |
| * UIProcess/WebResourceCacheManagerProxy.h: |
| |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: |
| (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManager::deleteAllEntries): |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::getHostnamesWithCookies): |
| (WebKit::WebCookieManager::deleteCookiesForHostname): |
| (WebKit::WebCookieManager::deleteAllCookies): |
| (WebKit::WebCookieManager::startObservingCookieChanges): |
| (WebKit::WebCookieManager::setHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManager::getHTTPCookieAcceptPolicy): |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManager::deleteAllEntries): |
| * WebProcess/MediaCache/WebMediaCacheManager.cpp: |
| (WebKit::WebMediaCacheManager::getHostnamesWithMediaCache): |
| (WebKit::WebMediaCacheManager::clearCacheForHostname): |
| (WebKit::WebMediaCacheManager::clearCacheForAllHostnames): |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::getCacheOrigins): |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManager::clearCacheForAllOrigins): |
| * WebProcess/WebCoreSupport/WebDatabaseManager.cpp: |
| (WebKit::WebDatabaseManager::getDatabasesByOrigin): |
| (WebKit::WebDatabaseManager::getDatabaseOrigins): |
| (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin): |
| (WebKit::WebDatabaseManager::deleteDatabasesForOrigin): |
| (WebKit::WebDatabaseManager::deleteAllDatabases): |
| (WebKit::WebDatabaseManager::setQuotaForOrigin): |
| |
| 2011-03-30 Adam Roben <aroben@apple.com> |
| |
| Mac build fix after r82442 |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::geometryDidChange): Added a missing argument. |
| |
| 2011-03-29 Adam Roben <aroben@apple.com> |
| |
| Add a way to specify that a ShareableBitmap has no alpha channel |
| |
| Before this patch, all ShareableBitmaps had an alpha channel. With this patch, all |
| ShareableBitmaps *still* have an alpha channel. But now there's a way to specify you don't |
| want one (which will be used in the future)! |
| |
| Fixes <http://webkit.org/b/57388> Need a way to specify that a ShareableBitmap has no alpha |
| channel |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/ShareableBitmap.cpp: |
| (WebKit::ShareableBitmap::Handle::Handle): Moved here from the header file, and added |
| initialization of m_flags. |
| |
| (WebKit::ShareableBitmap::Handle::encode): |
| (WebKit::ShareableBitmap::Handle::decode): |
| Encode/decode m_flags. |
| |
| (WebKit::ShareableBitmap::create): |
| (WebKit::ShareableBitmap::createShareable): |
| Pass along the new Flags argument. |
| |
| (WebKit::ShareableBitmap::createHandle): Store our Flags on the Handle. |
| (WebKit::ShareableBitmap::ShareableBitmap): Store the Flags in m_flags. |
| |
| * Shared/ShareableBitmap.h: Added Flag, Flags, and m_flags, and added a Flags argument to |
| some create functions. |
| |
| * Shared/WebCoreArgumentCoders.cpp: |
| (CoreIPC::encodeImage): |
| * Shared/WebImage.cpp: |
| (WebKit::WebImage::create): |
| Specify that we want a bitmap that supports alpha to maintain current behavior. |
| |
| * Shared/cg/ShareableBitmapCG.cpp: |
| (WebKit::bitmapInfo): New helper function. Includes an alpha channel only if specified in |
| the flags. |
| |
| (WebKit::ShareableBitmap::createGraphicsContext): |
| (WebKit::ShareableBitmap::makeCGImage): |
| Use the new helper function. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::snapshot): |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::geometryDidChange): |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::convertImageToBitmap): |
| * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: |
| (WebKit::WebPopupMenu::setUpPlatformData): |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::display): |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::updateFindIndicator): |
| Specify that we want a bitmap that supports alpha to maintain current behavior. |
| |
| 2011-03-29 Adam Roben <aroben@apple.com> |
| |
| Add ShareableBitmap::Handle |
| |
| This object is used for encoding/decoding a ShareableBitmap via CoreIPC. It currently just |
| encapsulates a SharedMemory::Handle (which is what we were using previously) and the image's |
| size (which means callers no longer need to deal with the size explicitly), but in the |
| future could be used to store more information about the bitmap. |
| |
| This should cause no behavior changes. |
| |
| Fixes <http://webkit.org/b/57397> ShareableBitmap needs its own Handle type |
| |
| Reviewed by Anders Carlsson. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::geometryDidChange): No longer need to pass a size to create, |
| since the Handle records the size. |
| (WebKit::PluginControllerProxy::snapshot): No longer need the bufferSize argument, since the |
| Handle records the size. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginControllerProxy.messages.in: |
| Updated Handle types and removed unnecessary size argument to Snapshot. |
| |
| * Shared/PlatformPopupMenuData.cpp: |
| (WebKit::PlatformPopupMenuData::encode): |
| (WebKit::PlatformPopupMenuData::decode): |
| * Shared/PlatformPopupMenuData.h: |
| Changed to use ShareableBitmap::Handle and removed m_backingStoreSize, which is now stored |
| in the Handles. |
| |
| * Shared/ShareableBitmap.cpp: |
| (WebKit::ShareableBitmap::Handle::encode): |
| (WebKit::ShareableBitmap::Handle::decode): |
| Simple encode/decode functions. |
| |
| (WebKit::ShareableBitmap::create): Get the size from the Handle instead of as a separate |
| argument. |
| (WebKit::ShareableBitmap::createHandle): Store our size in the Handle. |
| |
| * Shared/ShareableBitmap.h: Added ShareableBitmap::Handle and made some functions use it. |
| |
| * Shared/UpdateInfo.h: Changed to use ShareableBitmap::Handle. |
| |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| * Shared/WebCoreArgumentCoders.cpp: |
| (CoreIPC::encodeImage): |
| (CoreIPC::decodeImage): |
| Use the size stored in the Handle instead of encoding/decoding one separately. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::setDragImage): |
| Removed the unnecessary imageSize argument. We can get it from the image itself. |
| |
| * UIProcess/BackingStore.cpp: |
| (WebKit::BackingStore::incorporateUpdate): |
| * UIProcess/FindIndicator.cpp: |
| (WebKit::FindIndicator::create): |
| No longer need to pass a size when creating a ShareableBitmap from a Handle. |
| |
| * UIProcess/FindIndicator.h: Changed to use ShareableBitmap::Handle. |
| |
| * UIProcess/PageClient.h: Removed unnecessary imageSize argument from setDragImage. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setFindIndicator): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::setDragImage): |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::snapshot): |
| (WebKit::PluginProxy::geometryDidChange): |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::startDrag): |
| Changed to use ShareableBitmap::Handle and removed now-unnecessary size arguments (since we |
| can get the size from the Handle). |
| |
| * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: |
| (WebKit::WebPopupMenu::setUpPlatformData): Don't need to store the backing store size in the |
| data anymore; the Handles will make sure it reaches the other process. |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::updateFindIndicator): |
| (WebKit::FindController::hideFindIndicator): |
| Changed to use ShareableBitmap::Handle. |
| |
| 2011-03-30 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix GTK build after r81980. |
| |
| * GNUmakefile.am: |
| |
| 2011-03-29 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Fix for https://bugs.webkit.org/show_bug.cgi?id=57408 |
| webkit-min-device-pixel-ratio media query doesn't work post-SnowLeopard |
| -and corresponding- |
| <rdar://problem/8665411> |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::userSpaceScaleFactor): |
| * UIProcess/API/qt/qwkpage_p.h: |
| (QWKPagePrivate::userSpaceScaleFactor): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/gtk/WebView.h: |
| (WebKit::WebView::userSpaceScaleFactor): |
| * UIProcess/win/WebView.h: |
| (WebKit::WebView::userSpaceScaleFactor): |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::scaleFactor): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::userSpaceScaleFactor): |
| |
| 2011-03-29 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed WinCairo build fix. |
| |
| Bring DownloadCurl implementation stubs in line with current |
| CFNetwork API. |
| |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: |
| (WebKit::Download::receivedCredential): |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| (WebKit::Download::receivedCancellation): |
| |
| 2011-03-29 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| AX: WK2: When creating the window remote token, use what's returned from accessibility |
| https://bugs.webkit.org/show_bug.cgi?id=57398 |
| |
| This will allow a specific WKView to override what's used for the window attribute of the |
| HTML elements. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewDidMoveToWindow]): |
| |
| 2011-03-29 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Make Windows-only InjectedBundle functions platform-specific |
| https://bugs.webkit.org/show_bug.cgi?id=57385 |
| |
| Added files for Windows-specific WKBundle functions. |
| Removed stub wrappers for InjectedBundle::setHostAllowsAnyHTTPSCertificate() and InjectedBundle::setClientCertificate() from non-Windows platforms. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: Moved WKBundleSetHostAllowsAnyHTTPSCertificate() and WKBundleSetClientCertificate() to WKBundlePrivateWin.cpp. |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Moved WKBundleSetHostAllowsAnyHTTPSCertificate() and WKBundleSetClientCertificate() to WKBundlePrivateWin.h. |
| * WebProcess/InjectedBundle/API/c/win: Added. |
| * WebProcess/InjectedBundle/API/c/win/WKBundlePrivateWin.cpp: Added. |
| (WKBundleSetHostAllowsAnyHTTPSCertificate): Moved from WKBundle.cpp. |
| (WKBundleSetClientCertificate): Moved from WKBundle.cpp. |
| * WebProcess/InjectedBundle/API/c/win/WKBundlePrivateWin.h: Added. |
| * WebProcess/InjectedBundle/InjectedBundle.h: setHostAllowsAnyHTTPSCertificate() and setClientCertificate() are Windows-only. |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: Removed setHostAllowsAnyHTTPSCertificate() and setClientCertificate(). |
| * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Removed setHostAllowsAnyHTTPSCertificate() and setClientCertificate(). |
| * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: Removed setHostAllowsAnyHTTPSCertificate() and setClientCertificate(). |
| * win/WebKit2.vcproj: Added WKBundlePrivateWin.cpp and WKBundlePrivateWin.h. |
| * win/WebKit2Generated.make: Copy WKBundlePrivateWin.h. |
| |
| 2011-03-29 Anders Carlsson <andersca@apple.com> |
| |
| Fix Windows build. |
| |
| * WebProcess/Downloads/cfnet/DownloadCFNet.cpp: |
| (WebKit::Download::receivedCredential): |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| (WebKit::Download::receivedCancellation): |
| |
| 2011-03-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Downloads: Authentication support |
| https://bugs.webkit.org/show_bug.cgi?id=57403 |
| <rdar://problem/8691166> |
| |
| * UIProcess/API/C/WKContext.h: |
| Add didReceiveAuthenticationChallenge callback. |
| |
| * UIProcess/Downloads/DownloadProxy.cpp: |
| (WebKit::DownloadProxy::didReceiveAuthenticationChallenge): |
| Call the download client. |
| |
| * UIProcess/Downloads/DownloadProxy.messages.in: |
| Add DidReceiveAuthenticationChallenge message. |
| |
| * UIProcess/WebDownloadClient.cpp: |
| (WebKit::WebDownloadClient::didReceiveAuthenticationChallenge): |
| Call the client callback function. |
| |
| * UIProcess/WebDownloadClient.h: |
| * WebProcess/Authentication/AuthenticationManager.cpp: |
| (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge): |
| Send the DidReceiveAuthenticationChallenge message to the download proxy. |
| |
| (WebKit::AuthenticationManager::useCredentialForChallenge): |
| (WebKit::AuthenticationManager::continueWithoutCredentialForChallenge): |
| (WebKit::AuthenticationManager::cancelChallenge): |
| If the authentication client is null, call the static download member functions. |
| |
| * WebProcess/Authentication/AuthenticationManager.h: |
| * WebProcess/Downloads/Download.cpp: |
| (WebKit::Download::didReceiveAuthenticationChallenge): |
| Call the authentication manager. |
| |
| * WebProcess/Downloads/Download.h: |
| * WebProcess/Downloads/mac/DownloadMac.mm: |
| (WebKit::Download::receivedCredential): |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| (WebKit::Download::receivedCancellation): |
| Call the right sender methods. |
| |
| (-[WKDownloadAsDelegate download:didReceiveAuthenticationChallenge:]): |
| (-[WKDownloadAsDelegate downloadShouldUseCredentialStorage:]): |
| Call the right Download member functions. |
| |
| * WebProcess/Downloads/qt/DownloadQt.cpp: |
| (WebKit::Download::receivedCredential): |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| (WebKit::Download::receivedCancellation): |
| * WebProcess/Downloads/soup/DownloadSoup.cpp: |
| (WebKit::Download::receivedCredential): |
| (WebKit::Download::receivedRequestToContinueWithoutCredential): |
| (WebKit::Download::receivedCancellation): |
| Add stubs. |
| |
| 2011-03-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| AuthenticationChallengeProxy objects should be associated with processes, not pages |
| https://bugs.webkit.org/show_bug.cgi?id=57401 |
| |
| * UIProcess/Authentication/AuthenticationChallengeProxy.cpp: |
| (WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy): |
| (WebKit::AuthenticationChallengeProxy::~AuthenticationChallengeProxy): |
| (WebKit::AuthenticationChallengeProxy::useCredential): |
| (WebKit::AuthenticationChallengeProxy::cancel): |
| * UIProcess/Authentication/AuthenticationChallengeProxy.h: |
| (WebKit::AuthenticationChallengeProxy::create): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveAuthenticationChallenge): |
| |
| 2011-03-29 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Use LocalizedStrings.h as a bottleneck for localized strings instead of |
| using UI_STRING. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView validateUserInterfaceItem:]): |
| Call existing localization functions instead of using UI_STRING. |
| |
| (-[WKView _getTextInputState:selectionEnd:underlines:]): |
| Remove unnecessary WebCore:: prefix. |
| |
| 2011-03-29 Chang Shu <cshu@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| WebKitTestRunner needs layoutTestController.setAllowUniversalAccessFromFileURLs |
| https://bugs.webkit.org/show_bug.cgi?id=42692 |
| |
| * Shared/WebPreferencesStore.cpp: |
| (WebKit::WebPreferencesStore::decode): |
| (WebKit::WebPreferencesStore::overrideAllowUniversalAccessFromFileURLsForTestRunner): |
| * Shared/WebPreferencesStore.h: |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleOverrideAllowUniversalAccessFromFileURLsForTestRunner): |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: |
| * WebProcess/InjectedBundle/InjectedBundle.cpp: |
| (WebKit::InjectedBundle::overrideAllowUniversalAccessFromFileURLsForTestRunner): |
| * WebProcess/InjectedBundle/InjectedBundle.h: |
| |
| 2011-03-29 Timothy Hatcher <timothy@apple.com> |
| |
| Update the order of the context menu to better match AppKit on Mac. |
| |
| <rdar://problem/9054893> |
| |
| Reviewed by John Sullivan. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::contextMenuItemTagLookUpInDictionary): Added argument for selected string. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2011-03-29 Jeff Miller <jeffm@apple.com> |
| |
| Fix formatting of WebKit2.vcproj after r82283. |
| |
| * win/WebKit2.vcproj: |
| |
| 2011-03-29 Martin Robinson <mrobinson@igalia.com> |
| |
| [GTK] Build failed with ‘GDK_KEY_KP_Space’ was not declared in this scope |
| https://bugs.webkit.org/show_bug.cgi?id=55314 |
| |
| Build fix for older versions of GTK+. Use the deprecated names for GDK key |
| defines and include GtkVersioning.h to allow building on newer versions |
| of GTK+. |
| |
| * Shared/gtk/WebEventFactory.cpp: |
| (WebKit::isGdkKeyCodeFromKeyPad): Update key defines. |
| |
| 2011-03-29 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Use per-configuration vsprops in WebKit to avoid WebKitVSPropsRedirectionDir removal by MSVC IDE |
| https://bugs.webkit.org/show_bug.cgi?id=57383 |
| |
| Visual Studio's IDE was removing instances of $(WebKitVSPropsRedirectionDir) from |
| InheritedPropertySheet rules in our vcproj files when the vcproj was edited from within |
| the IDE. To avoid this, add a separate vsprops file for each project configuration that |
| contains the required inherited property sheets. |
| |
| * win/WebKit2.vcproj: |
| * win/WebKit2Debug.vsprops: Added. |
| * win/WebKit2DebugAll.vsprops: Added. |
| * win/WebKit2DebugCairoCFLite.vsprops: Added. |
| * win/WebKit2Release.vsprops: Added. |
| * win/WebKit2ReleaseCairoCFLite.vsprops: Added. |
| * win/WebKit2ReleaseLTCG.vsprops: Added. |
| * win/WebKit2WebProcess.vcproj: |
| * win/WebKit2WebProcessDebug.vsprops: Added. |
| * win/WebKit2WebProcessDebugAll.vsprops: Added. |
| * win/WebKit2WebProcessDebugCairoCFLite.vsprops: Added. |
| * win/WebKit2WebProcessRelease.vsprops: Added. |
| * win/WebKit2WebProcessReleaseCairoCFLite.vsprops: Added. |
| * win/WebKit2WebProcessReleaseLTCG.vsprops: Added. |
| |
| 2011-03-29 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: The WebProcess should be relaunched if necessary when WebKit2 is asked for |
| information about Cookies, Databases, Local Storage, etc. |
| https://bugs.webkit.org/show_bug.cgi?id=57374 |
| |
| Instead of bailing when the WebProcess is not valid, call relaunchProcessIfNecessary(). |
| |
| * UIProcess/Plugins/WebPluginSiteDataManager.cpp: |
| (WebKit::WebPluginSiteDataManager::getSitesWithData): |
| (WebKit::WebPluginSiteDataManager::clearSiteData): |
| * UIProcess/WebApplicationCacheManagerProxy.cpp: |
| (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries): |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::getHostnamesWithCookies): |
| (WebKit::WebCookieManagerProxy::deleteCookiesForHostname): |
| (WebKit::WebCookieManagerProxy::deleteAllCookies): |
| (WebKit::WebCookieManagerProxy::startObservingCookieChanges): |
| (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): |
| * UIProcess/WebDatabaseManagerProxy.cpp: |
| (WebKit::WebDatabaseManagerProxy::getDatabasesByOrigin): |
| (WebKit::WebDatabaseManagerProxy::getDatabaseOrigins): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabaseWithNameForOrigin): |
| (WebKit::WebDatabaseManagerProxy::deleteDatabasesForOrigin): |
| (WebKit::WebDatabaseManagerProxy::deleteAllDatabases): |
| (WebKit::WebDatabaseManagerProxy::setQuotaForOrigin): |
| * UIProcess/WebKeyValueStorageManagerProxy.cpp: |
| (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries): |
| * UIProcess/WebMediaCacheManagerProxy.cpp: |
| (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache): |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForHostname): |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForAllHostnames): |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::getCacheOrigins): |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForOrigin): |
| (WebKit::WebResourceCacheManagerProxy::clearCacheForAllOrigins): |
| |
| 2011-03-29 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Support setting the client certificate on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57368 |
| |
| Allow setting the client certificate for a host via the injected bundle. |
| This requires the ability for Webkit2 Windows clients to create a WKCertificateInfo from a PCCERT_CONTEXT so they can send it to the web process. |
| |
| * Shared/API/c/win/WKCertificateInfoWin.cpp: |
| (WKCertificateInfoCreateWithCertificate): Added. |
| * Shared/API/c/win/WKCertificateInfoWin.h: Added WKCertificateInfoCreateWithCertificate(). |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetClientCertificate): Added. |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetClientCertificate(). |
| * WebProcess/InjectedBundle/InjectedBundle.h: Added setClientCertificate(). |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: |
| (WebKit::InjectedBundle::setClientCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: |
| (WebKit::InjectedBundle::setClientCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: |
| (WebKit::InjectedBundle::setClientCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: |
| (WebKit::InjectedBundle::setClientCertificate): Added. |
| |
| 2011-03-29 Timothy Hatcher <timothy@apple.com> |
| |
| Make WebKit2 work with update-webkit-localizable-strings. |
| |
| https://webkit.org/b/57354 |
| |
| Reviewed by Sam Weinig. |
| |
| * PluginProcess/mac/PluginProcessMac.mm: Remove UI_STRING macro. Use WebLocalizableStrings.h. |
| * Shared/WebLocalizableStrings.h: Added. |
| * UIProcess/API/mac/WKView.mm: Remove UI_STRING macro. Use WebLocalizableStrings.h. |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): Use UI_STRING. Remove FIXME. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Remove UI_STRING macros. |
| Use WebLocalizableStrings.h. |
| * WebProcess/WebCoreSupport/mac/WebErrorsMac.mm: |
| (registerErrors): Remove UI_STRING macro. Use WebLocalizableStrings.h. |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformInitializeWebProcess): Use UI_STRING. Remove FIXME. |
| |
| * GNUmakefile.am: Added Shared/WebLocalizableStrings.h. |
| * WebKit2.pro: Ditto. |
| * WebKit2.xcodeproj/project.pbxproj: Ditto. |
| * win/WebKit2.vcproj: Ditto. |
| |
| 2011-03-29 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| CoreIPC::decodeResourceError() leaks a CFDataRef |
| https://bugs.webkit.org/show_bug.cgi?id=57366 |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceError): Don't leak the result of WebCore::copyCertificateToData(), since the ResourceError will retain it. |
| |
| 2011-03-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Allow the AppleConnect plug-in to use the QuickDraw drawing model |
| https://bugs.webkit.org/show_bug.cgi?id=57365 |
| <rdar://problem/8712320> |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): |
| * Shared/Plugins/PluginQuirks.h: |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| |
| 2011-03-29 Darin Adler <darin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2 bundle page needs to offer generated file hooks |
| https://bugs.webkit.org/show_bug.cgi?id=57279 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Added shouldGenerateFileForUpload and |
| generateFileForUpload callback pointers. |
| |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: |
| (WebKit::InjectedBundlePageUIClient::shouldGenerateFileForUpload): Added. |
| (WebKit::InjectedBundlePageUIClient::generateFileForUpload): Added. |
| * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added functions above. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::shouldReplaceWithGeneratedFileForUpload): Implemented by |
| calling the functions above. |
| (WebKit::WebChromeClient::generateReplacementFile): Ditto. |
| |
| 2011-03-29 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Assertion failure in plug-in process with clang-built 32/64-bit WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57359 |
| |
| Don't use __alignof when encoding and decoding scalar types. |
| |
| Darwin 32-bit, double and unsigned long long are 4-byte aligned but on 64-bit they're |
| 8-byte aligned which causes problems when doing IPC between 32-bit and 64-bit processes. |
| GCC is buggy and returns 8, but clang is correct and returns 4. Use sizeof instead which we know |
| is equal to or greater than the alignment. |
| |
| * Platform/CoreIPC/ArgumentDecoder.cpp: |
| (CoreIPC::ArgumentDecoder::decodeBool): |
| (CoreIPC::ArgumentDecoder::decodeUInt32): |
| (CoreIPC::ArgumentDecoder::decodeUInt64): |
| (CoreIPC::ArgumentDecoder::decodeInt32): |
| (CoreIPC::ArgumentDecoder::decodeInt64): |
| (CoreIPC::ArgumentDecoder::decodeFloat): |
| (CoreIPC::ArgumentDecoder::decodeDouble): |
| * Platform/CoreIPC/ArgumentEncoder.cpp: |
| (CoreIPC::ArgumentEncoder::encodeBool): |
| (CoreIPC::ArgumentEncoder::encodeUInt32): |
| (CoreIPC::ArgumentEncoder::encodeUInt64): |
| (CoreIPC::ArgumentEncoder::encodeInt32): |
| (CoreIPC::ArgumentEncoder::encodeInt64): |
| (CoreIPC::ArgumentEncoder::encodeFloat): |
| (CoreIPC::ArgumentEncoder::encodeDouble): |
| |
| 2011-03-29 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed build fix after r81928. |
| |
| * win/WebKit2.vcproj: Don't build CG-specific icon routines |
| for WinCairo port. |
| |
| 2011-03-29 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Reproducible crash running under libgmalloc, in -[WKView(Internal) removeTrackingRect:] --> objc_assign_ivar_non_gc |
| <rdar://problem/9193352> |
| https://bugs.webkit.org/show_bug.cgi?id=57358 |
| |
| -[WKView removeTrackingRect] can be called from below -[WKView dealloc] after we have |
| destroyed _data. So, nil out _data after releasing it and nil check it appropriately. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView dealloc]): |
| Nil out _data after releasing it. |
| |
| (-[WKView removeTrackingRect:]): |
| Add early return for nil _data. |
| |
| 2011-03-29 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Jon Honeycutt. |
| |
| Add WebCore::copyCertificateToData() on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57296 |
| |
| Remove duplicate code that implemented this functionality in WebCoreArgumentCodersWin.cpp and use WebCore::copyCertificateToData() instead. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::decodeResourceError): Use WebCore::copyCertificateToData(). |
| |
| 2011-03-29 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Unreviewed build fix (64 bit gcc). |
| |
| GCC does not accept uint64_t formatted as %lli. |
| |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::getLoadDecisionForIconURL): Add explicit cast to long long. |
| |
| 2011-03-28 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WKPageGetSourceForFrame and WKPageGetContentsAsString should throw an error in case of a race with page loading |
| https://bugs.webkit.org/show_bug.cgi?id=57305 |
| <rdar://problem/8738060>, <rdar://problem/8780168> |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Clear m_loadDependentStringCallbackIDs |
| (WebKit::WebPageProxy::getSourceForFrame): track the callback as load dependent |
| (WebKit::WebPageProxy::getContentsAsString): ditto |
| (WebKit::WebPageProxy::clearLoadDependentCallbacks): Invalidate all load dependent callbacks |
| (WebKit::WebPageProxy::didCommitLoadForFrame): Call clearLoadDependentCallbacks |
| (WebKit::WebPageProxy::didFailLoadForFrame): ditto |
| (WebKit::WebPageProxy::stringCallback): Remove callback from load dependent set if appropriate |
| (WebKit::WebPageProxy::processDidCrash): Clear m_loadDependentStringCallbackIDs |
| * UIProcess/WebPageProxy.h: Add m_loadDependentStringCallbackIDs hash set. |
| |
| 2011-03-28 Patrick Gansterer <paroga@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Use String instead of CString as return value of openTemporaryFile |
| https://bugs.webkit.org/show_bug.cgi?id=55332 |
| |
| * Shared/WebMemorySampler.cpp: |
| (WebKit::WebMemorySampler::initializeTempLogFile): |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: |
| (WebKit::NetscapePluginStream::stop): |
| * WebProcess/Plugins/Netscape/NetscapePluginStream.h: |
| |
| 2011-03-28 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Jon Honeycutt. |
| |
| WebKit2: Downloads started with DownloadCFNet::start never start |
| https://bugs.webkit.org/show_bug.cgi?id=57268 |
| |
| * WebProcess/Downloads/cfnet/DownloadCFNet.cpp: |
| (WebKit::Download::start): Call CFURLDownloadStart on the download we create. |
| |
| 2011-03-28 Anders Carlsson <andersca@apple.com> |
| |
| Fix Windows build. |
| |
| * Shared/ShareableBitmap.h: |
| |
| 2011-03-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Beep when pressing a menu key equivalent when a plug-in has focus |
| https://bugs.webkit.org/show_bug.cgi?id=57264 |
| <rdar://problem/8935597> |
| |
| We don't want the WKTextInputWindowController inputContext to be involved in interpretKeyEvents. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView inputContext]): |
| |
| 2011-03-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| CGImageRefs must hold a strong reference to underlying data |
| https://bugs.webkit.org/show_bug.cgi?id=57263 |
| <rdar://problem/9146179> |
| |
| Make paintBitmapContext use CGBitmapContextCreateImage, which creates a copy-on-write copy |
| of the bitmap data. Also, add ShareableBitmap::makeCGImageCopy which does the same thing, and |
| ShareableBitmap::makeCGImage in the cases where we know that the ShareableBitmap data will never change. |
| |
| * Platform/cg/CGUtilities.cpp: |
| (WebKit::paintImage): |
| Factor image painting code out into a separate function. |
| |
| (WebKit::paintBitmapContext): |
| Call paintImage. |
| |
| * Shared/API/c/cg/WKImageCG.cpp: |
| (WKImagemakeCGImage): |
| Use ShareableBitmap::makeCGImageCopy. |
| |
| * Shared/ShareableBitmap.h: |
| * Shared/cg/ShareableBitmapCG.cpp: |
| (WebKit::ShareableBitmap::createGraphicsContext): |
| (WebKit::ShareableBitmap::paint): |
| (WebKit::ShareableBitmap::makeCGImageCopy): |
| (WebKit::ShareableBitmap::makeCGImage): |
| (WebKit::ShareableBitmap::releaseBitmapContextData): |
| (WebKit::ShareableBitmap::releaseDataProviderData): |
| Add makeCGImage and makeCGImageCopy. |
| |
| * Shared/cg/WebCoreArgumentCodersCG.cpp: |
| (CoreIPC::createImage): |
| Use ShareableBitmap::makeCGImage. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::setDragImage): |
| Use ShareableBitmap::makeCGImage and plug a CGImageRef leak. |
| |
| 2011-03-28 Alexey Proskuryakov <ap@apple.com> |
| |
| Build fix. |
| |
| * UIProcess/API/mac/WKView.mm: (-[WKView keyDown:]): It's not "event" in this function, it's |
| "theEvent". |
| |
| 2011-03-28 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57260 |
| Clean up text input code a little |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView doCommandBySelector:]): This NSTextInput protocol method lacked a LOG() call. |
| (-[WKView keyDown:]): Added (possibly useless) event protection to match performKeyEquivalent: |
| and also WebKit1. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: Removed an obsolete comment. |
| |
| 2011-03-28 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| ResourceError::certificate() should return a PCCERT_CONTEXT |
| https://bugs.webkit.org/show_bug.cgi?id=57262 |
| |
| * Shared/win/PlatformCertificateInfo.cpp: |
| (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Don't assert if no PCCERT_CONTEXT is specified. |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::encodeResourceError): Removed unneeded code now that ResourceError::certificate() returns a PCCERT_CONTEXT. |
| |
| 2011-03-28 Jeff Miller <jeffm@apple.com> |
| |
| Rubber-stamped by Adam Roben. |
| |
| Remove unused CFErrorRef. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::encodeResourceError): Remove unused CFErrorRef. |
| |
| 2011-03-28 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Include certificate when sending a WebCore::ResourceError to UI process on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57195 |
| |
| Add support for sending the certificate with the WebCore::ResourceError. |
| |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::encodeResourceError): Encode certificate data. |
| (CoreIPC::deallocCertContext): Added. |
| (CoreIPC::createCertContextDeallocator): Added. |
| (CoreIPC::copyCert): Added. |
| (CoreIPC::decodeResourceError): Decode certificate data. |
| |
| 2011-03-27 Andy Estes <aestes@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Correctly get a plug-in's MIME type when it uses WebPluginMIMETypesFilename |
| https://bugs.webkit.org/show_bug.cgi?id=57205 |
| |
| If the plug-in's Info.plist uses WebPluginMIMETypesFilename to specify |
| plug-in MIME types, WebKit has to check for a property list file in |
| ~/Library/Preferences for the MIME type dictionary. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getMIMETypesFromPluginBundle): If the bundle's Info dictionary |
| has the key WebPluginMIMETypesFilename, open the property list |
| specified by that key's value and return the MIME type dictionary from |
| there. Otherwise, return the MIME type dictionary specified by the key |
| WebPluginMIMETypes. |
| (WebKit::getPluginInfoFromPropertyLists): Call |
| getMIMETypesFromPluginBundle(). |
| |
| 2011-03-27 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Full Screen: disable keyboard access by default |
| https://bugs.webkit.org/show_bug.cgi?id=56684 |
| |
| Take into account whether keyboard access was requested when deciding whether full |
| screen mode is supported. |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| (WebKit::WebFullScreenManagerProxy::supportsFullScreen): |
| * UIProcess/WebFullScreenManagerProxy.h: |
| * UIProcess/WebFullScreenManagerProxy.messages.in: |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: |
| (WebKit::WebFullScreenManager::supportsFullScreen): |
| * WebProcess/FullScreen/WebFullScreenManager.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::supportsFullScreenForElement): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-03-27 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Dock doesn't come back after leaving fullscreen on Hulu |
| https://bugs.webkit.org/show_bug.cgi?id=57189 |
| <rdar://problem/9192413> |
| |
| Port some code over from the old WebKit1 plug-in host. |
| |
| * PluginProcess/mac/PluginProcessShim.mm: |
| (WebKit::shimShowMenuBar): |
| (WebKit::shimHideMenuBar): |
| (WebKit::shimIsMenuBarVisible): |
| |
| 2011-03-27 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Keep a strong reference to the connection to avoid crashes. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| |
| 2011-03-26 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WKErrorCopyCFError() doesn't actually return a copy of the CFErrorRef |
| https://bugs.webkit.org/show_bug.cgi?id=57172 |
| |
| * Shared/API/c/cf/WKErrorCF.cpp: |
| (WKErrorCopyCFError): Use RetainPtr<> and leakRef() to return a real copy. |
| |
| 2011-03-26 Maciej Stachowiak <mjs@apple.com> |
| |
| Revert inadvertently committed changes. |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-03-26 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Eric Carlson. |
| |
| Enable the Full Screen API by default in WebKit/mac and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=56956 |
| |
| * Shared/WebPreferencesStore.h: Default the fullScreenEnabled preference to true. |
| |
| 2011-03-26 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Steve Falkenburg. |
| |
| Add PlatformCertificateInfo::PlatformCertificateInfo(PCCERT_CONTEXT) constructor on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=57152 |
| |
| We're going to need to create a PlatformCertificateInfo with a single certificate on Windows to support client certificates. |
| Also, stop relying on the fact that the Win32 API CertDuplicateCertificateContext() currently returns the same PCCERT_CONTEXT that you pass to it, since that may change in the future. |
| |
| * Shared/win/PlatformCertificateInfo.cpp: |
| (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Added PlatformCertificateInfo(PCCERT_CONTEXT) construtor. Use return value from CertDuplicateCertificateContext(). |
| (WebKit::PlatformCertificateInfo::operator=): Use return value from CertDuplicateCertificateContext(). |
| * Shared/win/PlatformCertificateInfo.h: Added PlatformCertificateInfo(PCCERT_CONTEXT) construtor. |
| |
| 2011-03-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Graphic corruption appeared with Silverlight contents while resizing window |
| https://bugs.webkit.org/show_bug.cgi?id=57167 |
| <rdar://problem/9094052> |
| |
| Pass DispatchMessageEvenWhenWaitingForSyncReply when sending GeometryDidChange messages since that will guarantee |
| that those messages will be handled before PaintEntirePlugin messages which prevents the PaintEntirePlugin handler from |
| painting into the wrong backing store. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::geometryDidChange): |
| |
| 2011-03-26 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Web process considered unresponsive (SPOD shown) when displaying a JavaScript alert() as a result of a click |
| <rdar://problem/9067557> |
| https://bugs.webkit.org/show_bug.cgi?id=57166 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::runJavaScriptAlert): |
| (WebKit::WebPageProxy::runJavaScriptConfirm): |
| (WebKit::WebPageProxy::runJavaScriptPrompt): |
| Invalidate the responsiveness timer before calling out to the client. |
| |
| 2011-03-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| ASSERTION FAILED: m_operationInProgress == NoOperation loading nytimes.com |
| https://bugs.webkit.org/show_bug.cgi?id=57165 |
| <rdar://problem/9024311> |
| |
| The assertion fired because during GC, the web process sends a synchronous NPObjectMessageReceiver::Deallocate |
| message to the plug-in process. Since this is a synchronous message, the web process needs to process incoming synchronous |
| messages. While waiting, we get an incoming PluginProxy::Evaluate message from the plug-in. This causes JavaScript to run |
| during GC which is very bad. |
| |
| The fix for this is to add a flag on the connection that will cause synchronous messages sent by the connection (in this case the |
| plug-in process) to not be processed while the other side (the web process) is waiting for a synchronous reply _unless_ the connection |
| is actually processing a synchronous message. (The last part is to avoid deadlocks). |
| |
| Since the call to NPN_Evaluate by the plug-in (that ends up sending the PluginProxy::Evaluate message) comes from a run loop timer firing, |
| it's OK to wait for it to be processed by the web process when it returns to the run loop. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::Connection): |
| Initialize m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage and m_inDispatchMessageMarkedDispatchWhenWaitingForSyncReplyCount. |
| |
| (CoreIPC::Connection::setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage): |
| Set m_onlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage. |
| |
| (CoreIPC::Connection::sendMessage): |
| Don't add the MessageID::DispatchMessageWhenWaitingForSyncReply flag when the right flags has been set on the connection, and it's not processing a synchronous message. |
| |
| (CoreIPC::Connection::dispatchMessage): |
| Increment and decrement m_inDispatchMessageMarkedDispatchWhenWaitingForSyncReplyCount accordingly. |
| |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::WebProcessConnection): |
| Call setOnlySendMessagesAsDispatchWhenWaitingForSyncReplyWhenProcessingSuchAMessage on the connection. |
| |
| 2011-03-26 Sam Weinig <sam@webkit.org> |
| |
| Rollout r82042 (If a user doesn't have a Database/LocalStorage directory, it can't be created (sandbox violations)) |
| |
| -[NSString stringByResolvingSymlinksInPath] does not do what we needed for paths within /private. |
| This caused all SSL sites to stop working. |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::appendSandboxParameterPath): |
| (WebKit::initializeSandbox): |
| |
| 2011-03-26 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| If a user doesn't have a Database/LocalStorage directory, it can't be created (sandbox violations) |
| <rdar://problem/9127411> |
| https://bugs.webkit.org/show_bug.cgi?id=57164 |
| |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::appendSandboxParameterPath): |
| (WebKit::initializeSandbox): |
| Use -[NSString stringByResolvingSymlinksInPath] instead of realpath to ensure we can resolve |
| symlinks even if the file/directory doesn't exist yet. |
| |
| 2011-03-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Factor processing of incoming sync replies out into processIncomingSyncReply |
| https://bugs.webkit.org/show_bug.cgi?id=57161 |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::sendSyncMessage): |
| Pass DispatchMessageEvenWhenWaitingForSyncReply to sendMessage. |
| |
| (CoreIPC::Connection::processIncomingSyncReply): |
| Move code from processIncomingMessage to here. |
| |
| (CoreIPC::Connection::processIncomingMessage): |
| Call processIncomingSyncReply. |
| |
| 2011-03-26 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Assert in CoreIPC::typeFromCFTypeRef() when loading a site with an invalid certificate |
| <rdar://problem/9188041> |
| https://bugs.webkit.org/show_bug.cgi?id=57159 |
| |
| * Shared/cf/ArgumentCodersCF.cpp: |
| (CoreIPC::typeFromCFTypeRef): |
| (CoreIPC::encode): |
| (CoreIPC::decode): |
| * Shared/cf/ArgumentCodersCF.h: |
| Add encoding/decoding for SecCertificateRef type. |
| |
| * Shared/mac/PlatformCertificateInfo.mm: |
| (WebKit::PlatformCertificateInfo::encode): |
| (WebKit::PlatformCertificateInfo::decode): |
| Use ArgumentCodersCF now that it knows how to encode/decode SecCertificateRefs. |
| |
| 2011-03-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Handle synchronous replies coming in out of order |
| https://bugs.webkit.org/show_bug.cgi?id=57158 |
| |
| When processing an incoming reply, don't assume that it belongs to the last sent synchronous request. |
| Instead, iterate over the m_pendingSyncReplies vector backwards looking for the corresponding request. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::processIncomingMessage): |
| |
| 2011-03-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Fix a possible deadlock when two synchronous messages are sent at the same time |
| https://bugs.webkit.org/show_bug.cgi?id=57155 |
| |
| Simplify code and fix a possible (although highly improbable) dead lock. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| Make SyncMessageState atomically ref counted since it can be ref()'ed from the connection queue. |
| Get rid of m_waitForSyncReplyCount and add m_didScheduleDispatchMessagesWork. |
| |
| (CoreIPC::Connection::SyncMessageState::SyncMessageState): |
| Initialize m_didScheduleDispatchMessagesWork to false. |
| |
| (CoreIPC::Connection::SyncMessageState::processIncomingMessage): |
| if m_didScheduleDispatchMessagesWork is false, schedule a call to dispatchMessageAndResetDidScheduleDispatchMessagesWork |
| on the client run loop. |
| |
| (CoreIPC::Connection::SyncMessageState::dispatchMessageAndResetDidScheduleDispatchMessagesWork): |
| Dispatch messages and set m_didScheduleDispatchMessagesWork back to false. |
| |
| (CoreIPC::Connection::sendSyncMessage): |
| Remove calls to beginWaitForSyncReply and endWaitForSyncReply. |
| |
| 2011-03-25 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adele Peterson. |
| |
| WKPageLoadAlternateHTMLString doesn't re-spawn a dead WebProcess, but should |
| <rdar://problem/9191493> |
| https://bugs.webkit.org/show_bug.cgi?id=57134 |
| |
| Make all load functions respawn a dead WebProcess for consistency. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::loadHTMLString): |
| Respawn a dead WebProcess. |
| |
| (WebKit::WebPageProxy::loadAlternateHTMLString): |
| Respawn a dead WebProcess. |
| |
| (WebKit::WebPageProxy::loadPlainTextString): |
| Respawn a dead WebProcess. |
| |
| (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::loadAlternateHTMLString): |
| Since we may no longer always have a main frame when calling WKPageLoadAlternateHTMLString, |
| set the unreachable URL, if there is one, on provisional load. |
| |
| 2011-03-25 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| PluginView's call to invalidateContentsAndWindow() in invalidateRect() is wrong for plug-ins which paint into compositing layers |
| https://bugs.webkit.org/show_bug.cgi?id=57133 |
| <rdar://problem/9029442> |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformInvalidate): |
| Return true under the Core Animation drawing model, since that prevents the plug-in from calling PluginController::invalidate. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::invalidateRect): |
| Don't call invalidateContentsAndWindow() if the plug-in has a Core Animation layer. |
| |
| 2011-03-25 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56425 |
| WebKit2 IconDatabase and API |
| |
| This gets a basic, usable API in place. |
| Enhancements can come in other bugs as they're needed. |
| |
| * UIProcess/API/C/WKIconDatabase.cpp: |
| (WKIconDatabaseRetainIconForURL): |
| (WKIconDatabaseReleaseIconForURL): |
| (WKIconDatabaseEnableDatabaseCleanup): |
| * UIProcess/API/C/WKIconDatabase.h: |
| |
| The first actual accessor for an "icon for a URL" is for a CGImageRef: |
| * UIProcess/API/C/cg: Added. |
| * UIProcess/API/C/cg/WKIconDatabaseCG.cpp: Added. |
| (WKIconDatabaseGetCGImageForURL): |
| * UIProcess/API/C/cg/WKIconDatabaseCG.h: Added. |
| |
| Expose relevant methods to support the above API: |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::WebIconDatabase): New IconDatabases will have cleanup disabled from the start, |
| and require a single call to "enableDatabaseCleanup" to allow cleanup. |
| (WebKit::WebIconDatabase::setDatabasePath): |
| (WebKit::WebIconDatabase::enableDatabaseCleanup): |
| (WebKit::WebIconDatabase::imageForPageURL): |
| * UIProcess/WebIconDatabase.h: |
| |
| Project file stuff: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| |
| 2011-03-25 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add CoreIPC::encodeResourceError() and CoreIPC::decodeResourceError() for all platforms |
| https://bugs.webkit.org/show_bug.cgi?id=57125 |
| |
| Currently, these are only implemented on the Mac, but we're going to need them for Windows as well, so we might as well make them always platform-specific. |
| In this patch, just replicate the existing common non-Mac implementation in WebCoreArgumentCoders.h to platform-specific files. |
| |
| * Shared/WebCoreArgumentCoders.h: Move non-Mac implementations of encodeResourceError() and decodeResourceError() to common files. |
| * Shared/gtk/WebCoreArgumentCodersGtk.cpp: |
| (CoreIPC::encodeResourceError): Added. |
| (CoreIPC::decodeResourceError): Added. |
| * Shared/qt/WebCoreArgumentCodersQt.cpp: |
| (CoreIPC::encodeResourceError): Added. |
| (CoreIPC::decodeResourceError): Added. |
| * Shared/win/WebCoreArgumentCodersWin.cpp: |
| (CoreIPC::encodeResourceError): Added. |
| (CoreIPC::decodeResourceError): Added. |
| |
| 2011-03-25 Andy Estes <aestes@apple.com> |
| |
| Reviewed by Adele Peterson. |
| |
| REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js |
| https://bugs.webkit.org/show_bug.cgi?id=49016 |
| |
| Update objectContentType() implementation to handle the |
| shouldPreferPlugInsForImages flag. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::objectContentType): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-03-25 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed build correction. |
| |
| Add stubs for WK2 cookie handling with cURL. |
| |
| * WebProcess/Cookies/curl: Added. |
| * WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Added. |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy): |
| * win/WebKit2.vcproj: |
| |
| 2011-03-25 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Brian Weinstein. |
| |
| Microsoft Windows Presentation Foundation (WPF) plug-in complains about missing xpcom.dll |
| https://bugs.webkit.org/show_bug.cgi?id=57119 |
| <rdar://problem/9054148> |
| |
| This plug-in from Microsoft links against xpcom.dll, which is a Firefox-specific DLL |
| not available in WebKit. The plug-in is fairly widespread, since it was included in |
| a Windows Update push at one point. |
| |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::shouldUsePlugin): Blacklist npwpf.dll. |
| |
| 2011-03-25 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Need to be able to set and get the Cookie Storage Policy. |
| https://bugs.webkit.org/show_bug.cgi?id=50780 |
| |
| Part 2: Make it possible to set the initial policy on Windows. |
| |
| In WebKit1, we read the initial policy on Windows from WebPreferences at startup. |
| Since that is not possible in WebKit2, make it possible to specify the initial policy |
| as a creation parameter to the WebProcess. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| Encode initialHTTPCookieAcceptPolicy on Windows. |
| (WebKit::WebProcessCreationParameters::decode): |
| Decode initialHTTPCookieAcceptPolicy on Windows. |
| * Shared/WebProcessCreationParameters.h: |
| |
| * UIProcess/API/C/win/WKContextPrivateWin.h: |
| * UIProcess/API/C/win/WKContextWin.cpp: |
| (WKContextSetInitialHTTPCookieAcceptPolicy): |
| Call through to WebContext. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| Give the initial policy a default of "Always". |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::setInitialHTTPCookieAcceptPolicy): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Set the initial policy on Windows. |
| |
| * WebProcess/Cookies/WebCookieManager.h: |
| Make setHTTPCookieAcceptPolicy public so that it can be called from WebProcessWin. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Tell the WebCookieManager about the initial policy. |
| |
| 2011-03-25 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Need to be able to set and get the Cookie Storage Policy. |
| https://bugs.webkit.org/show_bug.cgi?id=50780 |
| |
| * Shared/HTTPCookieAcceptPolicy.h: Added. |
| |
| * UIProcess/API/C/WKAPICast.h: |
| (WebKit::toHTTPCookieAcceptPolicy): |
| (WebKit::toAPI): |
| |
| * UIProcess/API/C/WKCookieManager.cpp: |
| (WKCookieManagerSetHTTPCookieAcceptPolicy): |
| Call through to WebCookieManagerProxy. |
| (WKCookieManagerGetHTTPCookieAcceptPolicy): |
| Ditto. |
| * UIProcess/API/C/WKCookieManager.h: |
| |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::invalidate): |
| Invalidate the get http cookie accept policy callbacks. |
| (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): |
| Send a message to the Web Process with the new value. |
| (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): |
| Keep track of the callback and send a message to the Web Process. |
| (WebKit::WebCookieManagerProxy::didGetHTTPCookieAcceptPolicy): |
| Invoke the callback. |
| * UIProcess/mac/WebCookieManagerProxyMac.mm: Added. |
| (WebKit::WebCookieManagerProxy::persistHTTPCookieAcceptPolicy): |
| On Mac, also set the policy in the UI Process because the sandboxed Web Process cannot |
| persist the policy. |
| * UIProcess/WebCookieManagerProxy.h: |
| * UIProcess/WebCookieManagerProxy.messages.in: |
| |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::setHTTPCookieAcceptPolicy): |
| Call platformSetHTTPCookieAcceptPolicy. |
| (WebKit::WebCookieManager::getHTTPCookieAcceptPolicy): |
| Send the result of platformGetHTTPCookieAcceptPolicy to the UI Process. |
| * WebProcess/Cookies/WebCookieManager.h: |
| * WebProcess/Cookies/WebCookieManager.messages.in: |
| |
| * WebProcess/Cookies/cf: Added. |
| * WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: Added. |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| Set the policy on both the default cookie storage and any Private Browsing cookie storage. |
| (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy): |
| * WebProcess/Cookies/mac: Added. |
| * WebProcess/Cookies/mac/WebCookieManagerMac.mm: Added. |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| Set the policy on the default cookie storage and add a FIXME to set it on any Private |
| Browsing cookie storage. |
| (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy): |
| |
| * WebProcess/Cookies/gtk: Added. |
| * WebProcess/Cookies/gtk/WebCookieManagerGtk.cpp: Added. |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy): |
| * WebProcess/Cookies/qt: Added. |
| * WebProcess/Cookies/qt/WebCookieManagerQt.cpp: Added. |
| (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): |
| (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy): |
| |
| 2011-03-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| REGRESSION(r79227): CFURLCache not initialized correctly in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=57109 |
| <rdar://problem/9184590> |
| |
| Check for a trailing Windows path separator, not a Unix path separator. |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| |
| 2011-03-25 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled |
| https://bugs.webkit.org/show_bug.cgi?id=57087 |
| |
| Use explicit conversion for string to avoid depending on the default codec |
| installed by the user code. |
| |
| * Platform/qt/SharedMemoryQt.cpp: |
| (WebKit::SharedMemory::create): |
| * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: |
| (WebKit::initializeGTK): |
| * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp: |
| (tst_QGraphicsWKView::loadEmptyPage): |
| (tst_QGraphicsWKView::loadEmptyUrl): |
| * UIProcess/API/qt/tests/qwkpage/tst_qwkpage.cpp: |
| (tst_QWKPage::loadEmptyUrl): |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| (WebKit::ProcessLauncher::launchProcess): |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::getPluginDisplay): |
| * WebProcess/qt/WebProcessMainQt.cpp: |
| (WebKit::EnvHttpProxyFactory::initializeFromEnvironment): |
| (WebKit::WebProcessMainQt): |
| |
| 2011-03-25 Brent Fulgham <bfulgham@webkit.org> |
| |
| Correct project file missing $(WebKitVSPropsRedirectionDir)s |
| after r81924. |
| |
| * win/WebKit2.vcproj: Restore lost $(WebKitVSPropsRedirectionDir) |
| |
| 2011-03-25 Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [WK2] Consider .c files in the generate-forwarding-headers script |
| https://bugs.webkit.org/show_bug.cgi?id=56680 |
| |
| * Scripts/generate-forwarding-headers.pl: |
| |
| 2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r81916 and r81917. |
| http://trac.webkit.org/changeset/81916 |
| http://trac.webkit.org/changeset/81917 |
| https://bugs.webkit.org/show_bug.cgi?id=57071 |
| |
| broke a test on platforms that do not have QuickTime installed |
| (Requested by estes on #webkit). |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::objectContentType): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-03-24 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57069 |
| Add WKIconDatabase api to the project files, and expose accessor on WKContext. |
| |
| Project file stuffs: |
| * GNUmakefile.am: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| |
| * Shared/API/c/WKBase.h: |
| * UIProcess/API/C/WKAPICast.h: |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetIconDatabase): |
| * UIProcess/API/C/WKContext.h: |
| |
| * UIProcess/API/C/WKIconDatabase.cpp: Added. |
| (WKIconDatabaseGetTypeID): |
| * UIProcess/API/C/WKIconDatabase.h: Added. |
| |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::iconDatabase): |
| |
| 2011-03-24 Brent Fulgham <bfulgham@webkit.org> |
| |
| Build correction. |
| |
| Disable the CA Layer stuff when building with Cairo. |
| |
| * win/WebKit2.vcproj: |
| |
| 2011-03-24 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=57058 |
| Hookup the UIProcess WebIconDatabase to a WebCore::IconDatabase as its implementation |
| |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::WebIconDatabase): |
| (WebKit::WebIconDatabase::setDatabasePath): Create a new WebCore::IconDatabase and open it to this path. |
| (WebKit::WebIconDatabase::retainIconForPageURL): Actually retain the url, using the impl. |
| (WebKit::WebIconDatabase::releaseIconForPageURL): Actually release the url, using the impl. |
| (WebKit::WebIconDatabase::setIconURLForPageURL): Actually set the url, using the impl. |
| (WebKit::WebIconDatabase::setIconDataForIconURL): Actually set the data, using the impl. |
| (WebKit::WebIconDatabase::getLoadDecisionForIconURL): Actually ask for a load decision to call back with. |
| (WebKit::WebIconDatabase::performImport): |
| (WebKit::WebIconDatabase::didImportIconURLForPageURL): |
| (WebKit::WebIconDatabase::didImportIconDataForPageURL): |
| (WebKit::WebIconDatabase::didChangeIconForPageURL): |
| (WebKit::WebIconDatabase::didRemoveAllIcons): |
| (WebKit::WebIconDatabase::didFinishURLImport): Notify all the pending callbacks what their load decisions |
| are now that they're available. |
| * UIProcess/WebIconDatabase.h: |
| |
| Add an IconDatabase logging channel: |
| * Platform/Logging.cpp: |
| (WebKit::initializeLogChannelsIfNecessary): |
| * Platform/Logging.h: |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::setIconDatabasePath): Pass the new path on to the WebIconDatabase, possibly |
| opening it. |
| * UIProcess/WebContext.h: |
| |
| 2011-03-24 Andy Estes <aestes@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js |
| https://bugs.webkit.org/show_bug.cgi?id=49016 |
| |
| Update objectContentType() implementation to handle the |
| shouldPreferPlugInsForImages flag. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::objectContentType): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-03-24 Adam Roben <aroben@apple.com> |
| |
| Start compiling LayerTreeHostCA on Windows |
| |
| Fixes <http://webkit.org/b/57060> WebKit2.vcproj should compile LayerTreeHostCA |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.cpp: Added. |
| (WebKit::LayerTreeHostCA::platformInitialize): |
| (WebKit::LayerTreeHostCA::scheduleLayerFlush): |
| (WebKit::LayerTreeHostCA::platformInvalidate): |
| (WebKit::LayerTreeHostCA::platformSizeDidChange): |
| (WebKit::LayerTreeHostCA::platformForceRepaint): |
| (WebKit::LayerTreeHostCA::platformDidPerformScheduledLayerFlush): |
| Stubbed out. |
| |
| * win/WebKit2.vcproj: Added new files. Let VS reorder existing files. |
| |
| * win/WebKit2Apple.vsprops: Added WebProcess\WebPage\ca to the include path. |
| |
| 2011-03-24 Jer Noble <jer.noble@apple.com> |
| |
| Unreviewed build fix. |
| |
| Remove reference to LayerTreeHostMac.h from WebFullScreenManagerMac.mm. |
| |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| |
| 2011-03-24 Adam Roben <aroben@apple.com> |
| |
| Split Mac-specific parts of LayerTreeHostCA into LayerTreeHostCAMac.mm |
| |
| Fixes <http://webkit.org/b/57046> LayerTreeHostMac's code should be shareable with Windows |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.mm. |
| (WebKit::LayerTreeHostCA::LayerTreeHostCA): Moved some Mac-specific code to |
| LayerTreeHostCAMac.mm. |
| (WebKit::LayerTreeHostCA::~LayerTreeHostCA): Wrapped some Mac-specific code in |
| PLATFORM(MAC). |
| |
| (WebKit::LayerTreeHostCA::invalidate): |
| (WebKit::LayerTreeHostCA::sizeDidChange): |
| (WebKit::LayerTreeHostCA::forceRepaint): |
| Moved some Mac-specific code to LayerTreeHostCAMac.mm. |
| |
| (WebKit::LayerTreeHostCA::performScheduledLayerFlush): Renamed from |
| flushPendingLayerChangesRunLoopObserverCallback. Moved some code from here... |
| (WebKit::LayerTreeHostCA::didPerformScheduledLayerFlush): ...to here. Moved some |
| Mac-specific code to LayerTreeHostCAMac.mm. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.h: Added new functions, wrapped some Mac-specific |
| declarations in PLATFORM(MAC). |
| |
| * WebProcess/WebPage/ca/mac/LayerTreeHostCAMac.mm: Added. |
| (WebKit::LayerTreeHostCA::platformInitialize): |
| (WebKit::LayerTreeHostCA::scheduleLayerFlush): |
| (WebKit::LayerTreeHostCA::platformInvalidate): |
| (WebKit::LayerTreeHostCA::platformSizeDidChange): |
| (WebKit::LayerTreeHostCA::platformForceRepaint): |
| (WebKit::LayerTreeHostCA::flushPendingLayerChangesRunLoopObserverCallback): |
| (WebKit::LayerTreeHostCA::platformDidPerformScheduledLayerFlush): |
| Code was extracted from LayerTreeHostCA.cpp. |
| |
| 2011-03-24 Adam Roben <aroben@apple.com> |
| |
| Rename LayerTreeHostMac to LayerTreeHostCA |
| |
| This is the first step toward sharing code with Windows. |
| |
| Fixes <http://webkit.org/b/57051>. |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/LayerTreeHost.cpp: |
| (WebKit::LayerTreeHost::create): |
| Updated for rename. |
| |
| * WebProcess/WebPage/ca/LayerTreeHostCA.h: Renamed from Source/WebKit2/WebProcess/WebPage/mac/LayerTreeHostMac.h. |
| * WebProcess/WebPage/ca/LayerTreeHostCA.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/LayerTreeHostMac.mm. |
| |
| 2011-03-17 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Cancelling full screen early leaves full screen window up. |
| https://bugs.webkit.org/show_bug.cgi?id=56589 |
| |
| No new tests, as WebKitTestRunner does not currently support the new Full Screen API. |
| |
| Notify the UIProcess when it needs to tear down its layer hosting view, turn off |
| the background layer when not in accelerated rendering mode and don't swap out |
| the web view unnecessarily |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Check before swapping _webView. |
| (-[WKFullScreenWindowController enterAcceleratedCompositingMode:]): Add the _layerHostingView |
| to the full screen window's animationView, not its contentsView. |
| (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Hide the background layer. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): If given a null rootLayer, tell |
| the client to exit accelerated mode. |
| |
| 2011-03-24 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| WebKit2:Services menu item to convert selected Simplified/Traditional Chinese Text is not working. |
| https://bugs.webkit.org/show_bug.cgi?id=56975 |
| <rdar://problem/8915066> |
| |
| Adding missing entry point to support Mac OS X services in WebKit2. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView readSelectionFromPasteboard:]): Added. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::readSelectionFromPasteboard): Added. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Added synchronous |
| message. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::readSelectionFromPasteboard): Added. |
| |
| 2011-03-24 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Dismissed reversion suggestion is incorrectly learned. |
| https://bugs.webkit.org/show_bug.cgi?id=57039 |
| |
| CorrectionPanel should always use [NSSpellChecker dismissCorrectionBubbleForView]. |
| [NSSpellChecker cancelCorrectionBubbleForView] is reserved for situation where correction panel |
| is dismissed explicitly by ESC key or clicking the dimiss button. Misusing these causes |
| incorrect automatic learning. |
| |
| * UIProcess/mac/CorrectionPanel.mm: |
| (WebKit::CorrectionPanel::dismissInternal): |
| |
| 2011-03-24 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Add Trackpoint driver hack to support IBM trackpads |
| https://bugs.webkit.org/show_bug.cgi?id=49830 |
| <rdar://problem/8705951> |
| |
| Copy code from WebKit1 to WebKit2 to handle initializing fake scrollbars so |
| IBM machines with a trackpad send us WM_VSCROLL and WM_HSCROLL messages. |
| |
| Listen for the WM_VSCROLL and WM_HSCROLL messages, and turn the values into |
| ScrollDirection and ScrollGranularity, and send a scroll command to the |
| WebProcess. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::scrollBy): Send a message to the WebProcess. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::wndProc): Add WM_VSCROLL and WM_HSCROLL message handling. |
| (WebKit::WebView::initialize): Call shouldInitializeTrackPointHack. |
| (WebKit::WebView::onHorizontalScroll): Turn wParam into a ScrollDirection and ScrollGranularity. |
| (WebKit::WebView::onVerticalScroll): Ditto. |
| (WebKit::WebView::shouldInitializeTrackPointHack): Check the registry for keys that indicate |
| the machine has a IBM Trackpoint driver. |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::scrollBy): Call scroll method. |
| (WebKit::WebPage::scroll): Moved from WebPageMac and WebPageWin. |
| (WebKit::WebPage::logicalScroll): Ditto. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Add a new scrollBy message. |
| * WebProcess/WebPage/mac/WebPageMac.mm: Remove scroll and logicalScroll, they are now in WebPage.cpp. |
| * WebProcess/WebPage/win/WebPageWin.cpp: Ditto. |
| |
| 2011-03-24 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Dictionary text extraction is not correctly detecting word boundaries on bing.com |
| <rdar://problem/9078569> |
| https://bugs.webkit.org/show_bug.cgi?id=56995 |
| |
| * Shared/DictionaryPopupInfo.cpp: |
| (WebKit::DictionaryPopupInfo::encode): |
| (WebKit::DictionaryPopupInfo::decode): |
| * Shared/DictionaryPopupInfo.h: |
| Add options dictionary. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Add path that can pass options through. |
| |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| (WebKit::WebContextMenuClient::lookUpInDictionary): |
| Use the new performDictionaryLookupForSelection which can extract context |
| if supported. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::characterRangeAtPositionForPoint): |
| (WebKit::characterRangeAtPoint): |
| Split functionality out of characterRangeAtPoint and into |
| characterRangeAtPositionForPoint to avoid doing duplicate work |
| if you already have the position. |
| |
| (WebKit::isPositionInRange): |
| (WebKit::shouldUseSelection): |
| Add predicate to determine if we should use the selection instead |
| of expanding to find the word we are over. |
| |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| If available, use the surrounding paragraph as context to get better extraction |
| and to get lexicographical information about the word. Also, clean up and use |
| editing APIs to make the code more concise and understandable. |
| |
| (WebKit::WebPage::performDictionaryLookupForSelection): |
| Use similar logic as in performDictionaryLookupAtLocation to extract additional |
| details from a selection for use in the dictionary popup. |
| |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| Pass options to WebProcess if available. |
| |
| 2011-03-24 Jon Lee <jonlee@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Tabbing from the last focused field to a non-webpage element leaves the selection in a weird state |
| <rdar://problem/8553962> |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::setFocused): When the page loses focus, clear out any selection in the frame |
| |
| 2011-03-24 Brian Weinstein <bweinstein@apple.com> |
| |
| Rubber-stamped by Sam Weinig. |
| |
| Fix a typo in the VK_LEFT case of performDefaultBehaviorForKeyEvent. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): It should be a logical or, |
| not a bitwise or. |
| |
| 2011-03-24 Jeff Miller <jeffm@apple.com> |
| |
| Fix typo - USE(CF_NETWORK) should be USE(CFNETWORK). |
| |
| * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: |
| (WebKit::InjectedBundle::setHostAllowsAnyHTTPSCertificate): USE(CF_NETWORK) should be USE(CFNETWORK) |
| |
| 2011-03-23 Jia Pu <jpu@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Hook up new AppKit autocorrection UI with WK2. |
| https://bugs.webkit.org/show_bug.cgi?id=56055 |
| <rdar://problem/8947463> |
| |
| Please see WebCore/ChangeLog for detail. |
| |
| The calls to AppKit are implemented in PageClientImpl. Other changes are necessary for the |
| plumbing work. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::showCorrectionPanel): |
| (WebKit::PageClientImpl::dismissCorrectionPanel): |
| (WebKit::PageClientImpl::dismissCorrectionPanelSoon): |
| (WebKit::PageClientImpl::recordAutocorrectionResponse): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView spellCheckerDocumentTag]): |
| (-[WKView handleCorrectionPanelResult:]): |
| * UIProcess/API/mac/WKViewPrivate.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didCommitLoadForFrame): |
| (WebKit::WebPageProxy::showCorrectionPanel): |
| (WebKit::WebPageProxy::dismissCorrectionPanel): |
| (WebKit::WebPageProxy::dismissCorrectionPanelSoon): |
| (WebKit::WebPageProxy::recordAutocorrectionResponse): |
| (WebKit::WebPageProxy::handleCorrectionPanelResult): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/CorrectionPanel.h: Added. |
| (WebKit::CorrectionPanel::isShowing): |
| * UIProcess/mac/CorrectionPanel.mm: Added. |
| (correctionBubbleType): |
| (WebKit::CorrectionPanel::CorrectionPanel): |
| (WebKit::CorrectionPanel::~CorrectionPanel): |
| (WebKit::CorrectionPanel::show): |
| (WebKit::CorrectionPanel::dismiss): |
| (WebKit::CorrectionPanel::dismissSoon): |
| (WebKit::CorrectionPanel::dismissInternal): |
| (WebKit::CorrectionPanel::recordAutocorrectionResponse): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebCoreSupport/WebEditorClient.h: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| (WebKit::WebEditorClient::showCorrectionPanel): |
| (WebKit::WebEditorClient::dismissCorrectionPanel): |
| (WebKit::WebEditorClient::dismissCorrectionPanelSoon): |
| (WebKit::WebEditorClient::recordAutocorrectionResponse): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::handleCorrectionPanelResult): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| |
| 2011-03-23 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Need API to manage the Media Cache |
| https://bugs.webkit.org/show_bug.cgi?id=56878 |
| <rdar://problem/9082503> |
| |
| Call through to HTMLMediaElement functions to manage the WebCore media cache. |
| |
| * WebProcess/MediaCache/WebMediaCacheManager.cpp: |
| (WebKit::WebMediaCacheManager::getHostnamesWithMediaCache): |
| (WebKit::WebMediaCacheManager::clearCacheForHostname): |
| (WebKit::WebMediaCacheManager::clearCacheForAllHostnames): |
| |
| 2011-03-23 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add WKBundleSetHostAllowsAnyHTTPSCertificate() for Windows |
| https://bugs.webkit.org/show_bug.cgi?id=56972 |
| |
| This is the WebKit2 equivalent to the WebKit1 API IWebMutableURLRequest::setAllowsAnyHTTPSCertificate(). |
| |
| * WebProcess/InjectedBundle/API/c/WKBundle.cpp: |
| (WKBundleSetHostAllowsAnyHTTPSCertificate): Added. |
| * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetHostAllowsAnyHTTPSCertificate(). |
| * WebProcess/InjectedBundle/InjectedBundle.h: Added setHostAllowsAnyHTTPSCertificate(). |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: |
| (WebKit::InjectedBundle::setHostAllowsAnyHTTPSCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: |
| (WebKit::InjectedBundle::setHostAllowsAnyHTTPSCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/qt/InjectedBundleQt.cpp: |
| (WebKit::InjectedBundle::setHostAllowsAnyHTTPSCertificate): Added, should never be called. |
| * WebProcess/InjectedBundle/win/InjectedBundleWin.cpp: |
| (WebKit::InjectedBundle::setHostAllowsAnyHTTPSCertificate): Added. |
| |
| 2011-03-23 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Roll out r81593 Need WebKit2 API for creating a page with a specific main frame name |
| |
| This API is not necessary. |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/API/mac/WKView.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:]): |
| (-[WKView initWithFrame:contextRef:]): |
| (-[WKView initWithFrame:contextRef:pageGroupRef:]): |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createMainFrame): |
| * WebProcess/WebPage/WebFrame.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| |
| 2011-03-23 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Andreas Kling. |
| |
| [WK2] Handle keyboard and mouse events on X11 |
| https://bugs.webkit.org/show_bug.cgi?id=56103 |
| |
| Propagate keyboard and mouse events to the plugin |
| as XEvent's. |
| |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::initializeXEvent): |
| (WebKit::xTimeStamp): |
| (WebKit::xKeyModifiers): |
| (WebKit::setCommonMouseEventFields): |
| (WebKit::setXMotionEventFields): |
| (WebKit::setXButtonEventFields): |
| (WebKit::setXCrossingEventFields): |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): |
| (WebKit::setXKeyEventFields): |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): |
| |
| 2011-03-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Connection::SyncMessageState::processIncomingMessage should ignore whether the message is sync or not |
| https://bugs.webkit.org/show_bug.cgi?id=56954 |
| |
| This is so we'll eventually be able to send sync messages that aren't processed immediately if the |
| destination is waiting for a reply to another synchronous message. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::SyncMessageState::processIncomingMessage): |
| Only check for the DispatchMessageWhenWaitingForSyncReply flag. |
| |
| (CoreIPC::Connection::sendSyncMessage): |
| Add both DispatchMessageWhenWaitingForSyncReply and SyncMessage to the message ID. |
| |
| * Platform/CoreIPC/Connection.h: |
| (CoreIPC::Connection::sendSync): |
| (CoreIPC::Connection::deprecatedSendSync): |
| No need to add SyncMessage here anymore. |
| |
| 2011-03-23 Brian Weinstein <bweinstein@apple.com> |
| |
| Qt Build Fix. |
| |
| * DerivedSources.pro: |
| |
| 2011-03-22 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Need API to manage the Media Cache |
| https://bugs.webkit.org/show_bug.cgi?id=56878 |
| <rdar://problem/9082503> |
| |
| Project File Fun: |
| * GNUmakefile.am: |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| * win/WebKit2Generated.make: |
| |
| Derived Sources and API fun: |
| * DerivedSources.make: |
| * DerivedSources.pro: |
| * Platform/CoreIPC/MessageID.h: |
| * Shared/API/c/WKBase.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/WKAPICast.h: |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): Add a case for MediaCache messages. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): Ditto. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): Initialize the WebMediaCacheManagerProxy member variable. |
| (WebKit::WebContext::~WebContext): Invalidate the WebMediaCacheManagerProxy. |
| (WebKit::WebContext::disconnectProcess): Ditto. |
| (WebKit::WebContext::didReceiveMessage): Add a case for MediaCache messages. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::mediaCacheManagerProxy): |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetMediaCacheManager): Returns the context's WebMediaCacheManager. |
| * UIProcess/API/C/WKContext.h: |
| |
| * UIProcess/API/C/WKMediaCacheManager.cpp: Added. |
| (WKMediaCacheManagerGetTypeID): Returns the WebMediaCacheManagerProxy type. |
| (WKMediaCacheManagerGetHostnamesWithMediaCache): Calls down to the WebMediaCacheManagerProxy. |
| (WKMediaCacheManagerClearCacheForHostname): Ditto. |
| (WKMediaCacheManagerClearCacheForAllHostnames): Ditto. |
| * UIProcess/API/C/WKMediaCacheManager.h: Added. |
| |
| * UIProcess/WebMediaCacheManagerProxy.cpp: Added. |
| (WebKit::WebMediaCacheManagerProxy::create): |
| (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy): |
| (WebKit::WebMediaCacheManagerProxy::~WebMediaCacheManagerProxy): |
| (WebKit::WebMediaCacheManagerProxy::invalidate): |
| (WebKit::WebMediaCacheManagerProxy::didReceiveMessage): |
| (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache): Call through to the WebProcess. |
| (WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache): Process the WebProcess response, |
| and call the callback. |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForHostname): Call through to the WebProcess. |
| (WebKit::WebMediaCacheManagerProxy::clearCacheForAllHostnames): Call through to the WebProcess. |
| * UIProcess/WebMediaCacheManagerProxy.h: Added. |
| (WebKit::WebMediaCacheManagerProxy::clearContext): |
| (WebKit::WebMediaCacheManagerProxy::type): |
| * UIProcess/WebMediaCacheManagerProxy.messages.in: Added. |
| |
| * WebProcess/MediaCache: Added. |
| * WebProcess/MediaCache/WebMediaCacheManager.cpp: Added. |
| (WebKit::WebMediaCacheManager::shared): |
| (WebKit::WebMediaCacheManager::WebMediaCacheManager): |
| (WebKit::WebMediaCacheManager::didReceiveMessage): |
| (WebKit::WebMediaCacheManager::getHostnamesWithMediaCache): Added a FIXME to call through to WebCore. |
| (WebKit::WebMediaCacheManager::clearCacheForHostname): Ditto. |
| (WebKit::WebMediaCacheManager::clearCacheForAllHostnames): Ditto. |
| * WebProcess/MediaCache/WebMediaCacheManager.h: Added. |
| * WebProcess/MediaCache/WebMediaCacheManager.messages.in: Added. |
| |
| 2011-03-22 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add asynchronous load decision call to WebKit2 IconDatabase |
| https://bugs.webkit.org/show_bug.cgi?id=56887 |
| |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::getLoadDecisionForIconURL): In the future, get the actual load decision from the database. |
| For now, always message "IconLoadNo" back to the WebProcess. |
| * UIProcess/WebIconDatabase.h: |
| * UIProcess/WebIconDatabase.messages.in: |
| |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: |
| (WebKit::WebIconDatabaseProxy::loadDecisionForIconURL): Message the UIProcess for the load decision. |
| (WebKit::WebIconDatabaseProxy::receivedIconLoadDecision): Callback into WebCore with the received load decision. |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.h: |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in: |
| |
| 2011-03-23 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION: WK2: AX: PDF in Safari no longer accessible. |
| https://bugs.webkit.org/show_bug.cgi?id=56849 |
| |
| The WKView needs to know when to return the WKPDFView and when to return |
| the remote web process connection. |
| |
| * UIProcess/API/mac/PDFViewController.h: |
| (WebKit::PDFViewController::pdfView): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView accessibilityFocusedUIElement]): |
| (-[WKView accessibilityHitTest:]): |
| (-[WKView accessibilityAttributeValue:]): |
| |
| 2011-03-21 Stephanie Lewis <slewis@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56798 |
| Wrap autorelease pools around calls that can have pathological memory growth on Membuster. |
| Only wrap the main runloop because some background threads are not expected to call into |
| objc and an autorelease pool could mask bugs. |
| |
| * Platform/mac/RunLoopMac.mm: |
| (RunLoop::performWork): |
| (RunLoop::TimerBase::timerFired): |
| * WebProcess/WebPage/mac/LayerTreeHostMac.mm: |
| (WebKit::LayerTreeHostMac::flushPendingLayerChangesRunLoopObserverCallback): |
| |
| 2011-03-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| OBJECT element with DivX source is always downloaded |
| https://bugs.webkit.org/show_bug.cgi?id=56879 |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::getPluginInfoFromPropertyLists): |
| Always try to split every element in the "WebPluginExtensions" array, since the DivX plug-in |
| specifies multiple file extensions in a single element. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::pluginSupportsExtension): |
| Add a new helper function. |
| |
| (WebKit::WebFrameLoaderClient::objectContentType): |
| If we can't find the MIME for an extension, explicitly check if there's a plugin that claims to |
| handle the given extension. |
| |
| 2011-03-22 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Rename the synchronous icon database messages to be prefixed with "synchronous" |
| |
| * UIProcess/WebIconDatabase.cpp: |
| (WebKit::WebIconDatabase::synchronousIconDataForPageURL): |
| (WebKit::WebIconDatabase::synchronousIconURLForPageURL): |
| (WebKit::WebIconDatabase::synchronousIconDataKnownForIconURL): |
| (WebKit::WebIconDatabase::synchronousLoadDecisionForIconURL): |
| * UIProcess/WebIconDatabase.h: |
| * UIProcess/WebIconDatabase.messages.in: |
| |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: |
| (WebKit::WebIconDatabaseProxy::synchronousIconForPageURL): |
| |
| 2011-03-22 Sam Weinig <sam@webkit.org> |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| Loading a new tab does not dismiss Lookup |
| <rdar://problem/9138391> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewDidMoveToWindow]): |
| Hide the dictionary popup when moving the WKView out of a window. |
| |
| 2011-03-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Microsoft Silverlight playback shows artifacts |
| https://bugs.webkit.org/show_bug.cgi?id=56863 |
| <rdar://problem/9103136> |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::paint): |
| If the plug-in is transparent, clear the dirty rect before painting. |
| |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): |
| Add the MakeTransparentIfBackgroundAttributeExists quirk for Silverlight plug-ins. |
| |
| * Shared/Plugins/PluginQuirks.h: |
| Add MakeTransparentIfBackgroundAttributeExists quirk. |
| |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_SetValue): |
| Handle NPPVpluginTransparentBool. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::NetscapePlugin): |
| Initialize m_isTransparent to false. |
| |
| (WebKit::NetscapePlugin::setIsTransparent): |
| Set m_isTransparent. |
| |
| (WebKit::NetscapePlugin::initialize): |
| If the plug-in has the MakeTransparentIfBackgroundAttributeExists quirk, make it transparent |
| if there's a 'background' attribute. |
| |
| (WebKit::NetscapePlugin::isTransparent): |
| Add getter. |
| |
| * WebProcess/Plugins/Plugin.h: |
| Add isTransparent(). |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::paint): |
| Always copy the plug-in backing store to the plug-in proxy backing store. |
| |
| (WebKit::PluginProxy::isTransparent): |
| Add getter that should never be called. |
| |
| (WebKit::PluginProxy::update): |
| Always copy the plug-in backing store to the plug-in proxy backing store. |
| |
| 2011-03-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Crash when calling PluginProxy::evaluate on a destroyed plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=56848 |
| <rdar://problem/9168975> |
| |
| Return early if the NPObject doesn't exist anymore. |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::evaluate): |
| |
| 2011-03-22 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Cannot make a selection past the end of the visible page (no autoscrolling) |
| <rdar://problem/8823874> |
| https://bugs.webkit.org/show_bug.cgi?id=56847 |
| |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::currentMouseButton): |
| (WebKit::mouseButtonForEvent): |
| Add mouse button for mouseEnter/Exit events. [NSEvent buttonNumber] doesn't seem to give the right result |
| for these events, but getting the currentMouseButton does work. |
| |
| 2011-03-21 Brady Eidson <beidson@apple.com> |
| |
| Fix Mac release builds after https://bugs.webkit.org/show_bug.cgi?id=56783 |
| |
| * Platform/mac/Logging.mac.mm: |
| |
| 2011-03-21 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Brian Weinstein. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56783 |
| Actually hook up WebKit2 logging on Mac. |
| |
| * Platform/Logging.cpp: |
| (WebKit::initializeLogChannel): |
| * Platform/Logging.h: |
| * Platform/mac/Logging.mac.mm: Added. |
| (WebKit::initializeLogChannel): |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): Initialize logging if necessary. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-03-21 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (r81269): WebKit2 gets into an infinite recursion after an unhandled command key |
| https://bugs.webkit.org/show_bug.cgi?id=56782 |
| <rdar://problem/9151993> |
| |
| * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::doneWithKeyEvent): |
| Factored out code for resending an event and moved it to WKView. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView performKeyEquivalent:]): Don't zero out _keyDownEventBeingResent, it's easier |
| to just do that in _resendKeyDownEvent:. |
| (-[WKView keyDown:]): Ditto. |
| (-[WKView _resendKeyDownEvent:]): Moved from PageClientImpl.mm. Added an assertion that we |
| are not already resending an event - it would be too confusing if we ever had to do that, |
| but looks like this never happens. |
| |
| * UIProcess/API/mac/WKViewInternal.h: Exposed _resendKeyDownEvent. |
| |
| 2011-03-21 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| QT plug-in fails to load contextual menu |
| https://bugs.webkit.org/show_bug.cgi?id=56777 |
| <rdar://problem/8979033> |
| |
| Open a Carbon resource map and make it the current map when calling NP_Initialize. |
| |
| * Platform/Module.cpp: |
| (WebKit::Module::Module): |
| Initialize m_bundleResourceMap to -1. |
| |
| * Platform/Module.h: |
| Add m_bundleResourceMap. |
| |
| * Platform/mac/ModuleMac.mm: |
| (WebKit::Module::unload): |
| Close the resource map. |
| |
| (WebKit::Module::bundleResourceMap): |
| Open a resource map if necessary. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::tryLoad): |
| Get the resource map and make it current before calling NP_Initialize. |
| |
| 2011-03-21 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Plug-in process crashes if it fails to load a plug-in module |
| https://bugs.webkit.org/show_bug.cgi?id=56775 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::initialize): |
| If NetscapePlugin::create returns null, call removePluginControllerProxy with a null plug-in. |
| |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::removePluginControllerProxy): |
| Remove an incorrect assertion. Don't invalidate the remote object map if the plug-in is null. |
| |
| 2011-03-21 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| QT plug-in loads controller at top of movie not bottom |
| https://bugs.webkit.org/show_bug.cgi?id=56764 |
| <rdar://problem/8979037> |
| |
| Create a layer with geometryFlipped set and add the plug-in layer as a sublayer, |
| matching WebKit1. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformPostInitialize): |
| |
| 2011-03-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2 needs preferences to change security knobs |
| https://bugs.webkit.org/show_bug.cgi?id=56762 |
| |
| Add preferences for WebSecurityEnabled, UniversalAccessFromFileURLsAllowed |
| and FileAccessFromFileURLsAllowed. |
| |
| * Shared/WebPreferencesStore.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetWebSecurityEnabled): |
| (WKPreferencesGetWebSecurityEnabled): |
| (WKPreferencesSetUniversalAccessFromFileURLsAllowed): |
| (WKPreferencesGetUniversalAccessFromFileURLsAllowed): |
| (WKPreferencesSetFileAccessFromFileURLsAllowed): |
| (WKPreferencesGetFileAccessFromFileURLsAllowed): |
| * UIProcess/API/C/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2011-03-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Remove old DrawingArea and LayerHostingView code from WKView. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView drawRect:]): |
| (-[WKView hitTest:]): |
| (-[WKView WebKit::]): |
| |
| 2011-03-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Need WebKit2 API for creating a page with a specific main frame name |
| https://bugs.webkit.org/show_bug.cgi?id=56759 |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| Add mainFrameName to creation parameters. |
| |
| * UIProcess/API/mac/WKView.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:]): |
| (-[WKView initWithFrame:contextRef:]): |
| (-[WKView initWithFrame:contextRef:pageGroupRef:]): |
| (-[WKView initWithFrame:contextRef:pageGroupRef:mainFrameName:]): |
| Add new initializer which takes a main frame name. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setMainFrameName): |
| (WebKit::WebPageProxy::creationParameters): |
| * UIProcess/WebPageProxy.h: |
| Store the main frame name for initialization/re-initialization. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::createMainFrame): |
| * WebProcess/WebPage/WebFrame.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Pass the name to main frame creation. |
| |
| 2011-03-20 Bill Budge <bbudge@chromium.org> |
| |
| Reviewed by Adam Barth. |
| |
| Rename ThreadSafeShared to ThreadSafeRefCounted |
| https://bugs.webkit.org/show_bug.cgi?id=56714 |
| |
| No new tests. Exposes no new functionality. |
| |
| * Platform/CoreIPC/Connection.h: |
| * Platform/WorkQueue.h: |
| * Platform/win/WorkQueueWin.cpp: |
| * UIProcess/Launcher/ProcessLauncher.h: |
| * UIProcess/Launcher/ThreadLauncher.h: |
| |
| 2011-03-19 Anton D'Auria <adauria@apple.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| ApplicationCacheGroup is not obsolete after being deleted via ApplicationCacheStorage::deleteEntriesForOrigin |
| https://bugs.webkit.org/show_bug.cgi?id=56415 |
| |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: calling ApplicationCacheGroup::deleteCacheGroupsForOrigin |
| instead of ApplicationCacheStorage::deleteEntriesForOrigin. |
| (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin): |
| |
| 2011-03-18 Sam Weinig <sam@webkit.org> |
| |
| Attempt to fix the WinCairo build. |
| |
| * win/WebKit2.vcproj: |
| |
| 2011-03-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Empty gray page after going back from a PDF |
| https://bugs.webkit.org/show_bug.cgi?id=56694 |
| <rdar://problem/8811854> |
| |
| Update m_frameHasCustomRepresentation when loading a page that's in the page cache. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame): |
| |
| 2011-03-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Crash when sending a sync message ends up invalidating the connection |
| https://bugs.webkit.org/show_bug.cgi?id=56686 |
| <rdar://problem/9048781> |
| |
| Guard against a null client. |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::sendSyncMessage): |
| |
| 2011-03-18 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Benjamin Poulain. |
| |
| [Qt][WK2] Need a way to debug the web process after the UI process dies |
| https://bugs.webkit.org/show_bug.cgi?id=56116 |
| |
| Allow the web process to outlive it's parent process |
| in debug builds if the QT_WEBKIT_KEEP_ALIVE_WEB_PROCESS |
| environment variable is set. |
| |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| (WebKit::QtWebProcess::setupChildProcess): Used getenv |
| since the prctl call is already in a Linux-only block |
| and the implementation in this file is a candidate |
| for sharing across ports in the future. |
| |
| 2011-03-18 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Command-period does not stop load when page has focus in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=56601 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView doCommandBySelector:]): If called outside interpretKeyEvents, |
| call through to super. |
| (-[WKView insertText:]): Assert that we are inside interpretKeyEvents. |
| (-[WKView unmarkText]): Ditto. |
| (-[WKView setMarkedText:selectedRange:]): Ditto. |
| (-[WKView _interceptKeyEvent:]): Set a flag to indicate we are inside |
| interpretKeyEvents for use by the above. |
| |
| 2011-03-18 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56425 |
| More groundwork for WebKit2 IconDatabase |
| |
| -Update the synchronous method names to be prefixed with "synchronous." |
| -Add empty implementations for the asynchronous accessors. |
| |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: |
| (WebKit::WebIconDatabaseProxy::setEnabled): |
| (WebKit::WebIconDatabaseProxy::synchronousIconForPageURL): |
| (WebKit::WebIconDatabaseProxy::synchronousIconURLForPageURL): |
| (WebKit::WebIconDatabaseProxy::synchronousIconDataKnownForIconURL): |
| (WebKit::WebIconDatabaseProxy::synchronousLoadDecisionForIconURL): |
| (WebKit::WebIconDatabaseProxy::supportsAsynchronousMode): |
| (WebKit::WebIconDatabaseProxy::loadDecisionForIconURL): |
| (WebKit::WebIconDatabaseProxy::iconDataForIconURL): |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.h: |
| |
| 2011-03-18 Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| Fixed compilation after r80925. |
| |
| * GNUmakefile.am: |
| * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp: Added. |
| (WebKit::WebFullScreenManagerProxy::enterFullScreen): |
| (WebKit::WebFullScreenManagerProxy::exitFullScreen): |
| (WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation): |
| (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation): |
| (WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode): |
| (WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode): |
| (WebKit::WebFullScreenManagerProxy::getFullScreenRect): |
| * WebProcess/FullScreen/gtk/WebFullScreenManagerGtk.cpp: Added. |
| (WebKit::WebFullScreenManagerGtk::WebFullScreenManagerGtk): |
| (WebKit::WebFullScreenManager::create): |
| (WebKit::WebFullScreenManagerGtk::setRootFullScreenLayer): |
| (WebKit::WebFullScreenManagerGtk::beginEnterFullScreenAnimation): |
| (WebKit::WebFullScreenManagerGtk::beginExitFullScreenAnimation): |
| * WebProcess/FullScreen/gtk/WebFullScreenManagerGtk.h: Added. |
| |
| 2011-03-18 Alejandro G. Castro <alex@igalia.com> |
| |
| Unreviewed, fixed compilation after r81208. |
| |
| * GNUmakefile.am: |
| |
| 2011-03-18 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56645 |
| Assertion fires when hidden Find-on-Page matches are encountered in WebKit2 |
| |
| * WebProcess/WebPage/FindController.cpp: |
| (WebKit::FindController::updateFindIndicator): |
| Bail out if the selection rect is empty, before trying to generate an appropriately-sized |
| bitmap. (Previously it was bailing out afterwards, but encountering an assertion in debug |
| builds along the way.) |
| |
| 2011-03-18 Mark Rowe <mrowe@apple.com> |
| |
| Rubber-stamped by Jon Honeycutt. |
| |
| <rdar://problem/9153929> PluginProcess fails to launch due to PluginProcessShim.dylib building for 64-bit only |
| |
| Fix a bogus change from r81392 that made PluginProcessShim.xcconfig import DebugRelease.xcconfig. |
| As its name suggests, DebugRelease.xcconfig is only applicable for the debug and release configurations. |
| It overrides the valid build architectures and also restricts the build to only the active architecture. |
| |
| * Configurations/PluginProcessShim.xcconfig: Import BaseTarget.xcconfig instead. This is what |
| each target-specific .xcconfig file should import. |
| |
| 2011-03-17 Mark Rowe <mrowe@apple.com> |
| |
| Fix the build. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Implement PluginProcessProxy::setFullscreenWindowIsShowing |
| https://bugs.webkit.org/show_bug.cgi?id=56618 |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::PluginProcessProxy): |
| Initialize m_fullscreenWindowIsShowing. |
| |
| (WebKit::PluginProcessProxy::didClose): |
| if m_fullscreenWindowIsShowing is true, call exitFullscreen. |
| |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::getPluginProcessSerialNumber): |
| Add helper function for getting a PSN for the plug-in process. |
| |
| (WebKit::PluginProcessProxy::makePluginProcessTheFrontProcess): |
| Make the plug-in process the front process. |
| |
| (WebKit::PluginProcessProxy::makeUIProcessTheFrontProcess): |
| Make the current process (the UI process) the front process. |
| |
| (WebKit::PluginProcessProxy::setFullscreenWindowIsShowing): |
| Call enterFullscreen or exitFullscreen. |
| |
| (WebKit::PluginProcessProxy::enterFullscreen): |
| Make the plug-in process the front process and hide the menu bar. |
| |
| (WebKit::PluginProcessProxy::exitFullscreen): |
| Show the menu bar and if necessary make the UI process the front process. |
| |
| (WebKit::PluginProcessProxy::endModal): |
| call makeUIProcessTheFrontProcess. |
| |
| (WebKit::PluginProcessProxy::applicationDidBecomeActive): |
| Call makePluginProcessTheFrontProcess. |
| |
| 2011-03-17 Adam Roben <aroben@apple.com> |
| |
| Make bidi text in <select> menus in WebKit2 on Windows match WebKit1 |
| |
| Fixes <http://webkit.org/b/56614> 3 <select> bidi tests failing on Windows 7 Release |
| (WebKit2 Tests) |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural): |
| (WebKit::WebChromeClient::selectItemAlignmentFollowsMenuWritingDirection): |
| On Windows, return the same values we return in WebKit1. |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Implement PluginProcessProxy::setModalWindowIsShowing |
| https://bugs.webkit.org/show_bug.cgi?id=56615 |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::PluginProcessProxy): |
| Initialize m_modalWindowIsShowing. |
| |
| (WebKit::PluginProcessProxy::didClose): |
| If m_modalWindowIsShowing is true, we must call endModal. |
| |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (-[WKPlaceholderModalWindow _wantsUserAttention]): |
| Add a WKPlaceholderModalWindow. |
| |
| (WebKit::PluginProcessProxy::setModalWindowIsShowing): |
| Call beginModal or endModal depending on whether we're showing a modal window or not. |
| |
| (WebKit::PluginProcessProxy::beginModal): |
| Create a fake window and start a nested run loop. Listen for NSApplicationWillBecomeActiveNotification notifications. |
| |
| (WebKit::PluginProcessProxy::endModal): |
| Tear down the window and the run loop. |
| |
| (WebKit::PluginProcessProxy::applicationDidBecomeActive): |
| Make sure that the plug-in process is frontmost. |
| |
| 2011-03-17 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Web page shouldn't swallow alt-key combinations on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=56612 |
| |
| Make Alt+Left Arrow and Alt+Right Arrow go back and forward, but make |
| sure any alt-key combinations bubble up to the client. |
| |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::performDefaultBehaviorForKeyEvent): Make Alt+Left Arrow and Alt+Right Arrow go back and forward, ignore any other alt-key combinations. |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Send SetModalWindowIsShowing and SetFullscreenWindowIsShowing messages to the UI process |
| https://bugs.webkit.org/show_bug.cgi?id=56610 |
| |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::FullscreenWindowTracker::FullscreenWindowTracker): |
| Add fullscreen window tracker class. |
| |
| (WebKit::rectCoversAnyScreen): |
| Return whether the given rect covers any screen. |
| |
| (WebKit::windowCoversAnyScreen): |
| Return whether the given window covers any screen. |
| |
| (WebKit::FullscreenWindowTracker::windowShown): |
| If we're showing a fullscreen window, call PluginProcess::setFullscreenWindowIsShowing. |
| |
| (WebKit::FullscreenWindowTracker::windowHidden): |
| If we're hiding the last fullscreen window, call PluginProcess::setFullscreenWindowIsShowing. |
| |
| (WebKit::cocoaWindowShown): |
| (WebKit::cocoaWindowHidden): |
| (WebKit::carbonWindowShown): |
| (WebKit::carbonWindowHidden): |
| Call the window tracking functions. |
| |
| (WebKit::setModal): |
| Call PluginProcess::setModalWindowIsShowing. |
| |
| (WebKit::PluginProcess::setModalWindowIsShowing): |
| (WebKit::PluginProcess::setFullscreenWindowIsShowing): |
| Send CoreIPC messages. |
| |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/PluginProcessProxy.messages.in: |
| Add new messages. |
| |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::setModalWindowIsShowing): |
| (WebKit::PluginProcessProxy::setFullscreenWindowIsShowing): |
| Add stubs. |
| |
| 2011-03-17 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Brady Eidson. |
| |
| Allow passing a certificate chain as a user message |
| <rdar://problem/8951709> |
| https://bugs.webkit.org/show_bug.cgi?id=56605 |
| |
| * Shared/API/c/mac/WKCertificateInfoMac.h: |
| * Shared/API/c/mac/WKCertificateInfoMac.mm: |
| (WKCertificateInfoCreateWithCertficateChain): |
| Added. Creates a WKCertificate from a certificate chain. |
| |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| Add encoding/decoding of WebCertificateInfo. |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add PluginProcessShim hooks for when windows are shown and hidden |
| https://bugs.webkit.org/show_bug.cgi?id=56597 |
| |
| * Configurations/PluginProcessShim.xcconfig: |
| Add HEADER_SEARCH_PATHS so we can find WebKitSystemInterface.h. |
| |
| * PluginProcess/mac/PluginProcessMac.mm: |
| (WebKit::cocoaWindowShown): |
| (WebKit::cocoaWindowHidden): |
| (WebKit::carbonWindowShown): |
| (WebKit::carbonWindowHidden): |
| (WebKit::setModal): |
| (WebKit::PluginProcess::initializeShim): |
| Add empty stubs. |
| |
| * PluginProcess/mac/PluginProcessShim.h: |
| * PluginProcess/mac/PluginProcessShim.mm: |
| (WebKit::beginModal): |
| (WebKit::endModal): |
| Keep a modal count and call setModal accordingly. |
| |
| (WebKit::shim_NSApplication_RunModalForWindow): |
| (WebKit::shimModalDialog): |
| (WebKit::shimAlert): |
| Call beginModal/endModal. |
| |
| (WebKit::shimShowWindow): |
| (WebKit::shimHideWindow): |
| Call the shim functions. |
| |
| (WebKit::WebKitPluginProcessShimInitialize): |
| Listen for notifications and call the necessary shim functions. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Link the plug-in process shim with AppKit and QuartzCore and WKSI. |
| |
| 2011-03-17 Jeff Miller <jeffm@apple.com> |
| |
| Use a consistent set of file patterns in the svn:ignore property for all .xcodeproj directories, specifically: |
| |
| *.mode* |
| *.pbxuser |
| *.perspective* |
| project.xcworkspace |
| xcuserdata |
| |
| * WebKit2.xcodeproj: Modified property svn:ignore. |
| |
| 2011-03-17 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WKErrors need the PeerCertificateChain for certificate errors |
| <rdar://problem/8951784> |
| https://bugs.webkit.org/show_bug.cgi?id=56592 |
| |
| * Shared/WebCoreArgumentCoders.h: |
| Special case encoding/decoding of ResourceErrors for the mac. |
| |
| * Shared/mac/PlatformCertificateInfo.h: |
| * Shared/mac/PlatformCertificateInfo.mm: |
| (WebKit::PlatformCertificateInfo::PlatformCertificateInfo): |
| Add constructor that take the PeerCertificateChain as CFArrayRef. |
| |
| * Shared/mac/WebCoreArgumentCodersMac.mm: |
| (CoreIPC::encodeResourceError): |
| (CoreIPC::decodeResourceError): |
| Add encode/decode for ResourceError using the underlying NSError |
| and encoding/decoding as much of the userInfo as we know how to. |
| Right now this includes all string values and the PeerCertificateChain. |
| |
| 2011-03-17 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56574 |
| Dealloc'ing a WKView can leave a stale reference to it in NSWindow |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView viewWillMoveToWindow:]): |
| Clear the outgoing window's growBoxOwner if it is this view. |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Rubber-stamped by John Sullivan. |
| |
| Rename PluginProcessShim.cpp to PluginProcessShim.mm. |
| |
| * PluginProcess/mac/PluginProcessShim.cpp: Removed. |
| * PluginProcess/mac/PluginProcessShim.mm: Copied from PluginProcess/mac/PluginProcessShim.cpp. |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-03-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Invalidate all NPObjects for a plug-in when that plug-in is destroyed |
| https://bugs.webkit.org/show_bug.cgi?id=56511 |
| <rdar://problem/8993491> |
| |
| Before this change, we would invalidate NPObjectProxy objects and delete NPObjectMessageReceiver |
| objects when the last plug-in of a certain type was destroyed. Doing so caused us to hold on to memory |
| which we don't need, and could also lead to crashes if the NPObjectMessageReceiver would get a message and |
| tried to invoke it on a already deallocated NPObject. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::initialize): |
| If we fail to initialize, call removePluginControllerProxy instead of having WebProcessConnection do so. |
| |
| (WebKit::PluginControllerProxy::destroy): |
| Pass the plug-in to removePluginControllerProxy. |
| |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::removePluginControllerProxy): |
| Call NPRemoteObjectMap::pluginDestroyed when the plug-in has been destroyed. |
| |
| (WebKit::WebProcessConnection::createPlugin): |
| Don't call removePluginControllerProxy if the plug-in fails to initialize. PluginControllerProxy::initialize now |
| takes care of doing this. |
| |
| * Shared/Plugins/NPObjectMessageReceiver.cpp: |
| (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver): |
| (WebKit::NPObjectMessageReceiver::~NPObjectMessageReceiver): |
| * Shared/Plugins/NPObjectMessageReceiver.h: |
| Remove m_shouldReleaseObjectWhenInvalidating, we now know that no NPObjects will have been deallocated |
| by the time the NPObjectMessageReceiver is destroyed. |
| |
| (WebKit::NPObjectMessageReceiver::plugin): |
| Add getter. |
| |
| * Shared/Plugins/NPObjectProxy.h: |
| (WebKit::NPObjectProxy::plugin): |
| Add getter. |
| |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| (WebKit::NPRemoteObjectMap::NPRemoteObjectMap): |
| Remove m_isInvalidating. |
| |
| (WebKit::NPRemoteObjectMap::npObjectProxyDestroyed): |
| Simplify code. |
| |
| (WebKit::NPRemoteObjectMap::pluginDestroyed): |
| Rename invalidate to pluginDestroyed. Only invalidate/delete objects that belong to the given plug-in. |
| |
| * Shared/Plugins/NPRemoteObjectMap.h: |
| Remove m_isInvalidating. |
| |
| * WebProcess/Plugins/PluginProcessConnection.cpp: |
| (WebKit::PluginProcessConnection::removePluginProxy): |
| Call NPRemoteObjectMap::pluginDestroyed when the plug-in has been destroyed. |
| |
| 2011-03-17 Oleg Romashin <oleg.romashin@nokia.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Teach WebKit2 messages.py generator to ifdef headers include |
| which are related to ifdef-ed methods/types |
| https://bugs.webkit.org/show_bug.cgi?id=55658 |
| |
| * Scripts/webkit2/messages.py: |
| * Scripts/webkit2/messages_unittest.py: |
| |
| 2011-03-16 Joseph Pecoraro <joepeck@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| Viewport no longer allows an auto value for "user-scalable" |
| https://bugs.webkit.org/show_bug.cgi?id=55416 |
| |
| Make the default value for userScalable be true. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::viewportAttributesForSize): |
| |
| 2011-03-16 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| NPObjectProxy and NPObjectMessageReceiver objects should know their Plugin object |
| https://bugs.webkit.org/show_bug.cgi?id=56506 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::windowScriptNPObject): |
| (WebKit::PluginControllerProxy::pluginElementNPObject): |
| (WebKit::PluginControllerProxy::evaluate): |
| (WebKit::PluginControllerProxy::getPluginScriptableNPObject): |
| * Shared/Plugins/NPObjectMessageReceiver.cpp: |
| (WebKit::NPObjectMessageReceiver::create): |
| (WebKit::NPObjectMessageReceiver::NPObjectMessageReceiver): |
| (WebKit::NPObjectMessageReceiver::invoke): |
| (WebKit::NPObjectMessageReceiver::invokeDefault): |
| (WebKit::NPObjectMessageReceiver::getProperty): |
| (WebKit::NPObjectMessageReceiver::setProperty): |
| (WebKit::NPObjectMessageReceiver::construct): |
| * Shared/Plugins/NPObjectMessageReceiver.h: |
| * Shared/Plugins/NPObjectProxy.cpp: |
| (WebKit::NPObjectProxy::create): |
| (WebKit::NPObjectProxy::NPObjectProxy): |
| (WebKit::NPObjectProxy::invalidate): |
| (WebKit::NPObjectProxy::initialize): |
| (WebKit::NPObjectProxy::invoke): |
| (WebKit::NPObjectProxy::invokeDefault): |
| (WebKit::NPObjectProxy::getProperty): |
| (WebKit::NPObjectProxy::setProperty): |
| (WebKit::NPObjectProxy::construct): |
| * Shared/Plugins/NPObjectProxy.h: |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| (WebKit::NPRemoteObjectMap::createNPObjectProxy): |
| (WebKit::NPRemoteObjectMap::registerNPObject): |
| (WebKit::NPRemoteObjectMap::npVariantToNPVariantData): |
| (WebKit::NPRemoteObjectMap::npVariantDataToNPVariant): |
| * Shared/Plugins/NPRemoteObjectMap.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::pluginScriptableNPObject): |
| (WebKit::PluginProxy::getWindowScriptNPObject): |
| (WebKit::PluginProxy::getPluginElementNPObject): |
| (WebKit::PluginProxy::evaluate): |
| |
| 2011-03-16 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Fix for https://bugs.webkit.org/show_bug.cgi?id=54987 Crash beneath |
| WebPageProxy::viewWillStartLiveResize when resizing window after web process |
| crashed |
| -and corresponding- |
| <rdar://problem/9037685> |
| |
| Just need simple isValid() checks here. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::initializeUIClient): |
| (WebKit::WebPageProxy::viewWillStartLiveResize): |
| (WebKit::WebPageProxy::viewWillEndLiveResize): |
| |
| 2011-03-16 Damian Kaleta <dkaleta@apple.com> |
| |
| Reviewed by Kevin Decker. |
| |
| Add a user default that will force all plugins to opt in to non-executable data |
| https://bugs.webkit.org/show_bug.cgi?id=56487 |
| <rdar://problem/9109095> |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::PluginProcessProxy::PluginProcessProxy): |
| * UIProcess/Plugins/PluginProcessProxy.h: |
| * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: |
| (WebKit::PluginProcessProxy::pluginNeedsExecutableHeap): |
| |
| 2011-03-16 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WK2: Need to propagate enhanced accessibility flag from UI -> web process |
| https://bugs.webkit.org/show_bug.cgi?id=56379 |
| |
| Support sending the enhanced accessibility flag between processes. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::~WebContext): |
| (WebKit::WebContext::setEnhancedAccessibility): |
| * UIProcess/WebContext.h: |
| * UIProcess/gtk/WebContextGtk.cpp: |
| (WebKit::WebContet::platformInvalidateContext): |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| (WebKit::WebContext::platformInvalidateContext): |
| * UIProcess/qt/WebContextQt.cpp: |
| (WebKit::WebContext::platformInvalidateContext): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInvalidateContext): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::setEnhancedAccessibility): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| |
| 2011-03-15 Oliver Hunt <oliver@apple.com> |
| |
| Reviewed by Geoffrey Garen. |
| |
| Make Structure creation require a JSGlobalData |
| https://bugs.webkit.org/show_bug.cgi?id=56438 |
| |
| Mechanical change to make all Structure creation use a JSGlobalData&. |
| |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| (WebKit::JSNPMethod::JSNPMethod): |
| * WebProcess/Plugins/Netscape/JSNPMethod.h: |
| (WebKit::JSNPMethod::createStructure): |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::JSNPObject): |
| * WebProcess/Plugins/Netscape/JSNPObject.h: |
| (WebKit::JSNPObject::createStructure): |
| |
| 2011-03-16 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| WebKit2: Sometimes Command-[ opens a new tab and loads the back page in it |
| https://bugs.webkit.org/show_bug.cgi?id=56477 |
| <rdar://problem/8806664> |
| |
| * UIProcess/API/mac/PageClientImpl.mm: (WebKit::PageClientImpl::doneWithKeyEvent): |
| Set NSApplication current event when re-dispatching a key event that returned from the web |
| process unhandled. That way, code that looks at current event modifiers won't be confused. |
| |
| 2011-03-16 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| Add WebKit2 API to figure out if an input or textarea was edited |
| https://bugs.webkit.org/show_bug.cgi?id=56474 |
| |
| Expose WKBundleNodeHandleGetHTMLInputElementLastChangeWasUserEdit and |
| WKBundleNodeHandleGetHTMLTextAreaElementLastChangeWasUserEdit. Next time, |
| I will work on giving these functions longer names. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (WKBundleNodeHandleGetHTMLInputElementLastChangeWasUserEdit): |
| (WKBundleNodeHandleGetHTMLTextAreaElementLastChangeWasUserEdit): |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit): |
| (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: |
| |
| 2011-03-16 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56467 |
| IconDatabase-related crash seen in WK2 tests |
| |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: |
| (WebKit::WebIconDatabaseProxy::setIconDataForIconURL): The IconLoader might set a null data for an icon, so handle that case. |
| |
| 2011-03-16 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Loading an empty URL crashes |
| https://bugs.webkit.org/show_bug.cgi?id=55501 |
| |
| A null WKURLRef is created in the API of WebKit 2 when converting a null string. The code |
| of WKPageLoadURL assume the WKPageRef is not null which causes crashes if it is. |
| |
| This patch uses the converter toWTFString() to pass from WKPageRef to WTFString. This converter |
| ensure the returned string is a valid null string. |
| |
| Tested through the Qt API tests. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageLoadURL): |
| * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp: |
| (tst_QGraphicsWKView::loadEmptyUrl): |
| * UIProcess/API/qt/tests/qwkpage/qwkpage.pro: Added. |
| * UIProcess/API/qt/tests/qwkpage/tst_qwkpage.cpp: Added. |
| (tst_QWKPage::init): |
| (tst_QWKPage::cleanup): |
| (tst_QWKPage::loadEmptyUrl): |
| * UIProcess/API/qt/tests/tests.pro: |
| |
| 2011-03-15 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56425 |
| WebKit2 icon database. |
| |
| Project file paperwork: |
| * DerivedSources.make: |
| * DerivedSources.pro: |
| * GNUmakefile.am: |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| * Scripts/webkit2/messages.py: Special-case capitalization for messages that start with "URL" to be lowercased |
| to "url" instead of "uRL". |
| |
| Add messaging-related stuff: |
| * Platform/CoreIPC/MessageID.h: |
| * UIProcess/WebIconDatabase.messages.in: Added. |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.messages.in: Added. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): |
| |
| Prep to make WebIconDatabase an API object: |
| * Shared/APIObject.h: |
| |
| Add an "icon DB is enabled" flag to WebProcessCreationParameters: |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| |
| Add SPI for client apps to set the icon database path: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextSetIconDatabasePath): |
| * UIProcess/API/C/WKContextPrivate.h: |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::setIconDatabasePath): |
| |
| Hook up initialization, clearing, and messaging for the icon database: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::~WebContext): |
| (WebKit::WebContext::ensureWebProcess): |
| (WebKit::WebContext::didReceiveMessage): |
| (WebKit::WebContext::didReceiveSyncMessage): |
| (WebKit::WebContext::iconDatabasePath): |
| * UIProcess/gtk/WebContextGtk.cpp: |
| (WebKit::WebContext::platformDefaultIconDatabasePath): |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformDefaultIconDatabasePath): |
| * UIProcess/qt/WebContextQt.cpp: |
| (WebKit::WebContext::platformDefaultIconDatabasePath): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformDefaultIconDatabasePath): |
| |
| Add the UIProcess-side IconDatabase. It will be the "actual database" as well as the API object: |
| * UIProcess/WebIconDatabase.cpp: Added. |
| (WebKit::WebIconDatabase::create): |
| (WebKit::WebIconDatabase::~WebIconDatabase): |
| (WebKit::WebIconDatabase::WebIconDatabase): |
| (WebKit::WebIconDatabase::invalidate): |
| (WebKit::WebIconDatabase::retainIconForPageURL): |
| (WebKit::WebIconDatabase::releaseIconForPageURL): |
| (WebKit::WebIconDatabase::setIconURLForPageURL): |
| (WebKit::WebIconDatabase::setIconDataForIconURL): |
| (WebKit::WebIconDatabase::iconDataForPageURL): |
| (WebKit::WebIconDatabase::iconURLForPageURL): |
| (WebKit::WebIconDatabase::iconDataKnownForIconURL): |
| (WebKit::WebIconDatabase::loadDecisionForIconURL): |
| (WebKit::WebIconDatabase::didReceiveMessage): |
| (WebKit::WebIconDatabase::didReceiveSyncMessage): |
| * UIProcess/WebIconDatabase.h: Added. |
| (WebKit::WebIconDatabase::clearContext): |
| (WebKit::WebIconDatabase::type): |
| |
| Add the WebProcess-side IconDatabaseProxy. It acts as the WebCore IconDatabase and operates via messaging: |
| * WebProcess/IconDatabase: Added. |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp: Added. |
| (WebKit::WebIconDatabaseProxy::~WebIconDatabaseProxy): |
| (WebKit::WebIconDatabaseProxy::WebIconDatabaseProxy): |
| (WebKit::WebIconDatabaseProxy::isEnabled): |
| (WebKit::WebIconDatabaseProxy::setEnabled): |
| (WebKit::WebIconDatabaseProxy::iconForPageURL): |
| (WebKit::WebIconDatabaseProxy::retainIconForPageURL): |
| (WebKit::WebIconDatabaseProxy::releaseIconForPageURL): |
| (WebKit::WebIconDatabaseProxy::iconURLForPageURL): |
| (WebKit::WebIconDatabaseProxy::iconDataKnownForIconURL): |
| (WebKit::WebIconDatabaseProxy::loadDecisionForIconURL): |
| (WebKit::WebIconDatabaseProxy::setIconURLForPageURL): |
| (WebKit::WebIconDatabaseProxy::setIconDataForIconURL): |
| (WebKit::WebIconDatabaseProxy::urlImportFinished): |
| (WebKit::WebIconDatabaseProxy::didReceiveMessage): |
| * WebProcess/IconDatabase/WebIconDatabaseProxy.h: Added. |
| |
| Hook up initialization and messaging for the icon database proxy: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::didReceiveMessage): |
| * WebProcess/WebProcess.h: |
| |
| 2011-03-15 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: False SPOD cursor when context menu is open |
| <rdar://problem/9029154> |
| https://bugs.webkit.org/show_bug.cgi?id=56433 |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::showContextMenu): |
| Update to match showPopupMenu idiomatically, and stop the responsivenessTimer |
| since the act of showing the context menu could spin a nested runloop. |
| |
| * UIProcess/mac/WebContextMenuProxyMac.mm: |
| (WebKit::WebContextMenuProxyMac::showContextMenu): |
| * UIProcess/qt/WebContextMenuProxyQt.cpp: |
| (WebKit::WebContextMenuProxyQt::showContextMenu): |
| * UIProcess/win/WebContextMenuProxyWin.cpp: |
| (WebKit::WebContextMenuProxyWin::showContextMenu): |
| Move isEmpty() check to implementations, since we don't want to show |
| this in any case, not just the one where we check it. |
| |
| 2011-03-15 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][Symbian][WK2] Fix exporting and importing the WebProcessMainQt symbol |
| https://bugs.webkit.org/show_bug.cgi?id=56417 |
| |
| Use the Q_DECL_EXPORT and Q_DECL_IMPORT macros directly to make sure |
| the symbol is always exported/imported. |
| |
| * WebProcess/qt/WebProcessMainQt.cpp: |
| (WebKit::WebProcessMainQt): |
| * qt/MainQt.cpp: |
| |
| 2011-03-15 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (WebKit2): keygen element doesn't work |
| https://bugs.webkit.org/show_bug.cgi?id=56402 |
| <rdar://problem/9006545> |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| Added strings used by keygen. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: Initialize a WebCore pointer to |
| a function used by keygen. |
| |
| 2011-03-15 Beth Dakin <bdakin@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| WebKit2 part of <rdar://problem/9075624> Overlay scrollbars slow down PLT by 6% |
| |
| New WebKitystemInterface function to force the scrollbars to flash |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2011-03-15 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Make sure that NP_Shutdown is always the last NPP function called |
| https://bugs.webkit.org/show_bug.cgi?id=56391 |
| <rdar://problem/8989902> |
| |
| Make sure to always increment the load count whenever a web process connection |
| is opened to a plug-in process, and decrement it when the last web process connection |
| goes away. |
| |
| * PluginProcess/PluginProcess.cpp: |
| (WebKit::PluginProcess::createWebProcessConnection): |
| (WebKit::PluginProcess::startShutdownTimerIfNecessary): |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| * Shared/Plugins/Netscape/NetscapePluginModule.h: |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::NetscapePlugin): |
| (WebKit::NetscapePlugin::~NetscapePlugin): |
| |
| 2011-03-15 Martin Robinson <mrobinson@igalia.com> |
| |
| Reviewed by Adam Barth. |
| |
| [GTK] [WebKit2] The UIProcess never changes the mouse cursor |
| https://bugs.webkit.org/show_bug.cgi?id=56333 |
| |
| Add an implementation for WebView::addCursor for WebKit2 GTK+. This allows |
| the cursor to change as the user mouses around the page. There is currently |
| no test infrastructure to track cursor changes. |
| |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::setCursor): Ported implementation from WebKit1. |
| |
| 2011-03-15 Kevin Ollivier <kevino@theolliviers.com> |
| |
| Reviewed by Darin Adler. |
| |
| Introduce WTF_USE_EXPORT_MACROS, which will allow us to put shared library import/export |
| info into the headers rather than in export symbol definition files, but disable it on |
| all platforms initially so we can deal with port build issues one port at a time. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=27551 |
| |
| * config.h: |
| |
| 2011-03-14 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION: Print preview is blank when selecting multiple pages per sheet |
| https://bugs.webkit.org/show_bug.cgi?id=56341 |
| <rdar://problem/8991382> |
| |
| * UIProcess/API/mac/WKPrintingView.mm: (pageDidDrawToPDF): Don't reset latest expected |
| callback number after receiving a different one. We only update preview after receiving |
| the latest expected page data (and the assumption is that AppKit will ask for pages in |
| natural order for N-up). |
| |
| 2011-03-14 Adam Roben <aroben@apple.com> |
| |
| Make WKBundlePageCanHandleRequest return true for empty document URLs |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::canHandleRequest): Return true for any URL schemes that are handled as |
| empty documents, and defer to the platform for everything else. |
| |
| * WebProcess/WebPage/WebPage.h: Added platformCanHandleRequest. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformCanHandleRequest): |
| * WebProcess/WebPage/qt/WebPageQt.cpp: |
| (WebKit::WebPage::platformCanHandleRequest): |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::platformCanHandleRequest): |
| Renamed from canHandleRequest. |
| |
| 2011-03-14 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Beth Dakin. |
| |
| CrashTracer: 60 crashes in WebProcess at com.apple.WebKit2: -[AccessibilityWebPageObject accessibilityHitTest:] + 248 |
| https://bugs.webkit.org/show_bug.cgi?id=56336 |
| |
| Crash trace indicates a nil pointer access in one of these m_page->mainFrame()->coreFrame()->view() |
| pointers. |
| |
| * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: |
| (-[AccessibilityWebPageObject accessibilityHitTest:]): |
| |
| 2011-03-14 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Provide API for creating WKImage from CGImageRef |
| https://bugs.webkit.org/show_bug.cgi?id=56159 |
| |
| Add function for creating a WKImage from CGImage data. |
| * Shared/API/c/cg/WKImageCG.cpp: |
| (WKImageCreateFromCGImage): Added. Creates a graphics context for the bitmap-backed image and draws into it. |
| * Shared/API/c/cg/WKImageCG.h: |
| |
| 2011-03-14 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| [Qt][WK2]Unbreak InjectedBundle on Qt |
| https://bugs.webkit.org/show_bug.cgi?id=54109 |
| |
| Add API's to WKURL and WKString to satisfy |
| WebKitTestRunner's needs. |
| |
| * Shared/API/c/WKString.cpp: |
| (WKStringIsEqualToUTF8CStringIgnoringCase): |
| * Shared/API/c/WKString.h: |
| * Shared/API/c/WKURL.cpp: |
| (WKURLCopyHostName): |
| (WKURLCopyScheme): |
| * Shared/API/c/WKURL.h: |
| * Shared/WebString.h: |
| (WebKit::WebString::equalToUTF8StringIgnoringCase): |
| * Shared/WebURL.h: Added OwnPtr<KURL> member to be able |
| to lazily parse the URL and store the result. |
| (WebKit::WebURL::host): |
| (WebKit::WebURL::protocol): |
| (WebKit::WebURL::parseURLIfNecessary): |
| * win/WebKit2.def: Revert the symbol exports that were |
| needed to use KURL in WebKitTestRunner. |
| |
| 2011-03-14 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Add WKViewSetScrollOffsetOnNextResize() to C API on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=56340 |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewSetScrollOffsetOnNextResize): Added. |
| * UIProcess/API/C/win/WKView.h: Added WKViewSetScrollOffsetOnNextResize(). |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::onSizeEvent): Apply any scroll offset when setting the drawing area size. |
| (WebKit::WebView::setScrollOffsetOnNextResize): Added. |
| * UIProcess/win/WebView.h: Added setScrollOffsetOnNextResize(). |
| |
| 2011-03-14 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben and Gavin Barraclough. |
| |
| FileSystemWin.cpp needs listDirectory() implementation |
| https://bugs.webkit.org/show_bug.cgi?id=56331 |
| <rdar://problem/9126635> |
| |
| Move PathWalker down into WebCore, and call the PathWalker in WebCore |
| (that now has a second argument, the pattern to take). |
| |
| * UIProcess/Plugins/win/PluginInfoStoreWin.cpp: |
| (WebKit::PluginInfoStore::pluginPathsInDirectory): |
| |
| 2011-03-14 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: No icon shown for <input type=file> |
| <rdar://problem/8988982> |
| https://bugs.webkit.org/show_bug.cgi?id=54288 |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::chooseIconForFiles): |
| Add implementation for chooseIconForFiles which calls down to Icon::createIconForFiles. |
| |
| 2011-03-14 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| <rdar://problem/8762095> and https://bugs.webkit.org/show_bug.cgi?id=55172 |
| Need WK2 API to view/manage origins with LocalStorage |
| |
| Hookup the existing API stubs to the WebCore implementations: |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManager::deleteAllEntries): |
| |
| 2011-03-13 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| <rdar://problem/9127270> and https://bugs.webkit.org/show_bug.cgi?id=56282 |
| |
| Pass the path along with creation parameters: |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| |
| Add SPI to set the path: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextSetLocalStorageDirectory): |
| * UIProcess/API/C/WKContextPrivate.h: |
| |
| Pass the path along in the process creation parameters: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::ensureWebProcess): |
| (WebKit::WebContext::localStorageDirectory): |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::setLocalStorageDirectory): |
| |
| * UIProcess/gtk/WebContextGtk.cpp: |
| (WebKit::WebContext::platformDefaultLocalStorageDirectory): |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformDefaultLocalStorageDirectory): |
| * UIProcess/qt/WebContextQt.cpp: |
| (WebKit::WebContext::platformDefaultLocalStorageDirectory): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformDefaultLocalStorageDirectory): |
| |
| Include the path with settings updates, because WebCore needs it set on the Settings object: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| * WebProcess/WebProcess.h: |
| (WebKit::WebProcess::localStorageDirectory): |
| |
| Sandboxing stuff: |
| * WebProcess/com.apple.WebProcess.sb: |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::initializeSandbox): |
| |
| 2011-03-12 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| WebKit2: Build WKFullScreenWindowController cleanly in 32-bit. |
| https://bugs.webkit.org/show_bug.cgi?id=56260 |
| |
| Include <Carbon/Carbon.h> instead of <HIToolbox/MacApplication.h>. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| |
| 2011-03-13 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add ability to create a WKErrorRef |
| <rdar://problem/9115768> |
| https://bugs.webkit.org/show_bug.cgi?id=56279 |
| |
| * Shared/API/c/cf/WKErrorCF.cpp: Added. |
| (WKErrorCreateWithCFError): |
| (WKErrorCopyCFError): |
| * Shared/API/c/cf/WKErrorCF.h: Added. |
| Add new API to create a WKErrorRef from a CFErrorRef |
| and vice-versa. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Generated.make: |
| Add new files. |
| |
| 2011-03-13 Pratik Solanki <psolanki@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| Make adjustMIMETypeIfNecessary use CFNetwork directly |
| https://bugs.webkit.org/show_bug.cgi?id=55912 |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): Support for new WKSI functions. |
| |
| 2011-03-13 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebPageProxy cleanup |
| https://bugs.webkit.org/show_bug.cgi?id=56267 |
| |
| * UIProcess/WebPageProxy.cpp: Moved all Mac-only function implementations from |
| here to WebPageProxyMac.mm. |
| * UIProcess/WebPageProxy.h: Cleaned up #includes. |
| * UIProcess/mac/WebPageProxyMac.mm: Moved all Mac-only function implementations |
| here. |
| (WebKit::WebPageProxy::updateWindowIsVisible): |
| (WebKit::WebPageProxy::windowAndViewFramesChanged): |
| (WebKit::WebPageProxy::getMarkedRange): |
| (WebKit::WebPageProxy::characterIndexForPoint): |
| (WebKit::WebPageProxy::firstRectForCharacterRange): |
| (WebKit::WebPageProxy::writeSelectionToPasteboard): |
| (WebKit::WebPageProxy::setDragImage): |
| (WebKit::WebPageProxy::performDictionaryLookupAtLocation): |
| (WebKit::WebPageProxy::interpretKeyEvent): |
| (WebKit::WebPageProxy::sendComplexTextInputToPlugin): |
| (WebKit::WebPageProxy::uppercaseWord): |
| (WebKit::WebPageProxy::lowercaseWord): |
| (WebKit::WebPageProxy::capitalizeWord): |
| (WebKit::WebPageProxy::setSmartInsertDeleteEnabled): |
| (WebKit::WebPageProxy::didPerformDictionaryLookup): |
| (WebKit::WebPageProxy::registerWebProcessAccessibilityToken): |
| (WebKit::WebPageProxy::registerUIProcessAccessibilityTokens): |
| (WebKit::WebPageProxy::setComplexTextInputEnabled): |
| |
| 2011-03-13 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| <rdar://problem/8949683> WebKit2: Drag image is offset when the page is scrolled down |
| https://bugs.webkit.org/show_bug.cgi?id=56265 |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::startDrag): Send the location in view coordinates rather than |
| document coordinates. |
| |
| 2011-03-13 Dan Bernstein <mitz@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| Fix a crash when dragging. |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::convertImageToBitmap): Retain the saved context. |
| |
| 2011-03-12 Darin Adler <darin@apple.com> |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::WebDragClient::startDrag): Fixed typo in a comment. |
| |
| 2011-03-11 Darin Adler <darin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Dragging image to desktop gives webloc instead of image file in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=56193 |
| |
| * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: |
| (WebKit::convertImageToBitmap): Added. Factored out from startDrag to |
| make the startDrag code clearer. |
| (WebKit::WebDragClient::startDrag): Streamlined code a bit. |
| (WebKit::cachedImage): Added. Helper for function below. |
| (WebKit::arrayForURLsWithTitles): Added. Helper for function below. |
| (WebKit::WebDragClient::declareAndWriteDragImage): Added code to handle file |
| promises and removed a log of uneeded code. |
| (-[WKPasteboardFilePromiseOwner copyDropDirectory]): Added. |
| (promisedDataClient): Added. |
| (-[WKPasteboardOwner clearImage]): Added. |
| (-[WKPasteboardOwner initWithImage:]): Added. |
| (-[WKPasteboardOwner dealloc]): Added. |
| (-[WKPasteboardOwner finalize]): Added. |
| (-[WKPasteboardOwner pasteboard:provideDataForType:]): Added. |
| (-[WKPasteboardOwner pasteboardChangedOwner:]): Added. |
| (matchesExtensionOrEquivalent): Added. |
| (-[WKPasteboardOwner namesOfPromisedFilesDroppedAtDestination:]): Added. |
| Much of the new code above came from the WebKit1 drag code. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::dragEnded): Added call to Mac-only platformDragEnded. |
| * WebProcess/WebPage/WebPage.h: Added Mac-only platformDragEnded and m_dragSource. |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::setDragSource): Added. |
| (WebKit::WebPage::platformDragEnded): Added. |
| |
| 2011-03-12 Mark Rowe <mrowe@apple.com> |
| |
| Fix the 32-bit build. |
| |
| This involves hacking around some HIToolbox headers that do things of dubious correctness, |
| and fixing the usual CGRect vs NSRect issues. |
| |
| * UIProcess/mac/WKFullScreenWindowController.mm: |
| (-[WKFullScreenWindowController enterFullScreen:]): NSRect is not CGRect. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): Ditto. |
| |
| 2011-03-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| * WebProcess/WebPage/WebFrame.cpp: |
| (WebKit::WebFrame::url): |
| Get the URL from the loader, not from the document. |
| |
| (WebKit::WebFrame::suggestedFilenameForResourceWithURL): |
| Return the correct suggested filename for the main resource. |
| |
| (WebKit::WebFrame::mimeTypeForResourceWithURL): |
| Return the correct mime type for the main resource. |
| |
| 2011-03-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Should be able to download a PDF to the Downloads folder |
| https://bugs.webkit.org/show_bug.cgi?id=56256 |
| |
| * UIProcess/API/C/WKPage.h: |
| Add WKPageSaveDataToFileInDownloadsFolderCallback to the UI client. |
| |
| * UIProcess/API/mac/PDFViewController.h: |
| * UIProcess/API/mac/PDFViewController.mm: |
| (-[WKPDFView _applyPDFPreferences]): |
| (-[WKPDFView _updatePreferences:]): |
| Use new PDFViewController::page getter. |
| |
| (-[WKPDFView PDFViewSavePDFToDownloadFolder:]): |
| Call PDFViewController::savePDFToDownloadsFolder. |
| |
| (WebKit::releaseCFData): |
| (WebKit::PDFViewController::savePDFToDownloadsFolder): |
| Create a WebData that wraps the CFData, then pass it along to |
| WebPageProxy::saveDataToFileInDownloadsFolder. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::saveDataToFileInDownloadsFolder): |
| Call WebUIClient::saveDataToFileInDownloadsFolder. |
| |
| (WebKit::WebUIClient::saveDataToFileInDownloadsFolder): |
| * UIProcess/WebUIClient.h: |
| Call the UI client callback function. |
| |
| 2011-03-12 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebData should be able to wrap already existing data |
| https://bugs.webkit.org/show_bug.cgi?id=56254 |
| |
| * Shared/WebData.h: |
| (WebKit::WebData::createWithoutCopying): |
| (WebKit::WebData::create): |
| (WebKit::WebData::~WebData): |
| (WebKit::WebData::bytes): |
| (WebKit::WebData::size): |
| (WebKit::WebData::WebData): |
| (WebKit::WebData::fastFreeBytes): |
| |
| 2011-03-12 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Eric Carlson. |
| |
| WebKit2: Initialize the WebFullScreenManagerProxy with a WKView |
| https://bugs.webkit.org/show_bug.cgi?id=56250 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:contextRef:pageGroupRef:]): Call fullScreenManager()->setView(self). |
| |
| 2011-03-11 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add full screen animation code to WebFullScreenManager. |
| https://bugs.webkit.org/show_bug.cgi?id=56220 |
| |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: . |
| (WebKit::WebFullScreenManager::~WebFullScreenManager): Added. |
| (WebKit::WebFullScreenManager::exitFullScreenForElement): Remove ASSERTs. |
| (WebKit::WebFullScreenManager::willEnterFullScreen): Set the full screen renderer's background color. |
| (WebKit::WebFullScreenManager::didEnterFullScreen): Ditto. |
| (WebKit::WebFullScreenManager::willExitFullScreen): Ditto. |
| (WebKit::WebFullScreenManager::didExitFullScreen): Ditto. |
| * WebProcess/FullScreen/WebFullScreenManager.h: Make a few functions pure virtual to be implemented in a |
| concrete subclass. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.h: Added. |
| * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm: Added. |
| (-[WebFullScreenManagerAnimationListener initWithManager:WebKit::began:finished:]): Listener for CAAnimations. |
| (-[WebFullScreenManagerAnimationListener animationDidStart:]): Added. |
| (-[WebFullScreenManagerAnimationListener animationDidStop:finished:]): Added. |
| (-[WebFullScreenManagerAnimationListener invalidate]): Added. |
| (WebKit::WebFullScreenManager::create): Now creates a WebFullScreenManagerMac. |
| (WebKit::WebFullScreenManagerMac::create): Added. |
| (WebKit::WebFullScreenManagerMac::WebFullScreenManagerMac): Added. |
| (WebKit::WebFullScreenManagerMac::~WebFullScreenManagerMac): Added. |
| (WebKit::WebFullScreenManagerMac::setRootFullScreenLayer): Set up the remote layer host. |
| (WebKit::WebFullScreenManagerMac::beginEnterFullScreenAnimation): Create a CATransform3D |
| which will animate the full screen renderer from its initial position to its final one. |
| (WebKit::WebFullScreenManagerMac::beginExitFullScreenAnimation): Ditto. |
| |
| 2011-03-11 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Hook up new WKFullScreenWindowController functions to WebFullScreenManagerProxy |
| https://bugs.webkit.org/show_bug.cgi?id=56218 |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| * UIProcess/mac/WebFullScreenManagerProxyMac.mm: Added. |
| (WebKit::WebFullScreenManagerProxy::enterFullScreen): Call into WKFullScreenWindowController. |
| (WebKit::WebFullScreenManagerProxy::exitFullScreen): Ditto. |
| (WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation): Ditto. |
| (WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation): Ditto. |
| (WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation): Ditto. |
| (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation): Ditto. |
| (WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode): Ditto. |
| (WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode): Ditto. |
| (WebKit::WebFullScreenManagerProxy::getFullScreenRect): Ditto. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView fullScreenWindowController]): Lazily instantiate a WKFullScreenWindowController. |
| * UIProcess/API/mac/WKViewInternal.h: |
| |
| 2011-03-11 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add the WKFullScreenWindowController, mostly cribbed from WebKit's WebFullScreenController. |
| |
| [WebKit2] Implement a full screen window controller |
| https://bugs.webkit.org/show_bug.cgi?id=56210 |
| |
| * UIProcess/mac/WKFullScreenWindowController.h: Added. |
| * UIProcess/mac/WKFullScreenWindowController.mm: Added. |
| (-[WKFullScreenWindowController init]): Remove the _mediaEventListener. |
| (-[WKFullScreenWindowController dealloc]): Make sure to cancel previous async requests. |
| (-[WKFullScreenWindowController windowDidLoad]): Remove the Tiger protection. |
| (-[WKFullScreenWindowController webView]): Type change. |
| (-[WKFullScreenWindowController setWebView:]): Type change. |
| (-[WKFullScreenWindowController applicationDidResignActive:]): Case changes. |
| (-[WKFullScreenWindowController applicationDidChangeScreenParameters:]): Case changes. |
| (-[WKFullScreenWindowController enterFullScreen:]): Removed most of the animation code |
| which will reappear in WebFullScreenManager. |
| (-[WKFullScreenWindowController beganEnterFullScreenAnimation]): Added. |
| (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Added. |
| (-[WKFullScreenWindowController exitFullScreen]): Ditto to enterFullScreen. |
| (-[WKFullScreenWindowController beganExitFullScreenAnimation]): Added. |
| (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Added. |
| (-[WKFullScreenWindowController enterAcceleratedCompositingMode:WebKit::]): Set up the |
| layer tree host. |
| (-[WKFullScreenWindowController exitAcceleratedCompositingMode]): Tear down same. |
| (-[WKFullScreenWindowController getFullScreenRect:WebCore::]): Added. |
| (-[WKFullScreenWindowController _updateMenuAndDockForFullScreen]): Case changes. |
| (-[WKFullScreenWindowController _disableIdleDisplaySleep]): Ditto. |
| (-[WKFullScreenWindowController _enableIdleDisplaySleep]): Ditto. |
| (-[WKFullScreenWindowController _disableIdleSystemSleep]): Ditto. |
| (-[WKFullScreenWindowController _enableIdleSystemSleep]): Ditto. |
| (-[WKFullScreenWindowController _enableTickleTimer]): Ditto. |
| (-[WKFullScreenWindowController _disableTickleTimer]): Ditto. |
| (-[WKFullScreenWindowController _tickleTimerFired]): Ditto. |
| (-[WKFullScreenWindowController _updatePowerAssertions]): Use _isPlaying ivar. |
| (-[WKFullScreenWindowController _manager]): Added. |
| (-[WKFullScreenWindowController _requestExit]): Case changes. |
| (-[WKFullScreenWindowController _requestExitFullScreenWithAnimation:]): Ditto. |
| (-[WKFullScreenWindowController _swapView:with:]): Added. |
| (-[WKFullScreenWindowController _fullScreenWindow]): Case changes. |
| (-[WKFullScreenWindow initWithContentRect:styleMask:backing:defer:]): Geometry no |
| longer needs to be flipped. |
| (-[WKFullScreenWindow cancelOperation:]): Case changes. |
| |
| 2011-03-11 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Create new interface stubs to support full screen mode in WebKit2. |
| |
| WebKit2: Plumb new full screen animation APIs through WebKit2. |
| https://bugs.webkit.org/show_bug.cgi?id=55993 |
| |
| * UIProcess/WebFullScreenManagerProxy.cpp: |
| (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy): Added. |
| (WebKit::WebFullScreenManagerProxy::invalidate): Clear m_webView. |
| (WebKit::WebFullScreenManagerProxy::setWebView): Set m_webView. |
| (WebKit::WebFullScreenManagerProxy::beginEnterFullScreenAnimation): Added. |
| (WebKit::WebFullScreenManagerProxy::beginExitFullScreenAnimation): Added. |
| (WebKit::WebFullScreenManagerProxy::beganEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::finishedEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::beganExitFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::finishedExitFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManagerProxy::enterAcceleratedCompositingMode): Added stub. |
| (WebKit::WebFullScreenManagerProxy::exitAcceleratedCompositingMode): Added stub. |
| (WebKit::WebFullScreenManagerProxy::getFullScreenRect): Added stub. |
| * UIProcess/WebFullScreenManagerProxy.h: |
| * UIProcess/WebFullScreenManagerProxy.messages.in: Added new message definitions. |
| * UIProcess/WebPageProxy.cpp: Moved include of WebFullScreenManagerProxy.h into source file. |
| * UIProcess/WebPageProxy.h: Ditto. |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: |
| (WebKit::WebFullScreenManager::element): Added. |
| (WebKit::WebFullScreenManager::supportsFullScreen): Send message through WebPage. |
| (WebKit::WebFullScreenManager::enterFullScreenForElement): Ditto. |
| (WebKit::WebFullScreenManager::exitFullScreenForElement): Ditto. |
| (WebKit::WebFullScreenManager::beganEnterFullScreenAnimation): Added.. |
| (WebKit::WebFullScreenManager::finishedEnterFullScreenAnimation): Added. |
| (WebKit::WebFullScreenManager::beganExitFullScreenAnimation): Added. |
| (WebKit::WebFullScreenManager::finishedExitFullScreenAnimation): Added. |
| (WebKit::WebFullScreenManager::setRootFullScreenLayer): Added stub. |
| (WebKit::WebFullScreenManager::getFullScreenRect): Added. |
| (WebKit::WebFullScreenManager::beginEnterFullScreenAnimation): Added stub. |
| (WebKit::WebFullScreenManager::beginExitFullScreenAnimation): Added stub. |
| * WebProcess/FullScreen/WebFullScreenManager.h: |
| * WebProcess/FullScreen/WebFullScreenManager.messages.in: Added new message definitions. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::setRootFullScreenLayer): Added. |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| |
| 2011-03-11 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Support encoding /decoding WebData in usermessages |
| https://bugs.webkit.org/show_bug.cgi?id=56158 |
| |
| Added encoding/decoding for APIObject::TypeData |
| * Shared/UserMessageCoders.h: |
| (WebKit::UserMessageEncoder::baseEncode): |
| (WebKit::UserMessageDecoder::baseDecode): |
| |
| 2011-03-11 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add api for "remove" to WKMutableDictionary |
| https://bugs.webkit.org/show_bug.cgi?id=56157 |
| |
| * Shared/API/c/WKMutableDictionary.cpp: |
| (WKDictionaryRemoveItem): Added; call remove on MutableDictionary impl. |
| * Shared/API/c/WKMutableDictionary.h: |
| * Shared/MutableDictionary.cpp: |
| (WebKit::MutableDictionary::remove): Added; call remove on the underlying hashmap. |
| * Shared/MutableDictionary.h: |
| |
| 2011-03-11 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r80899 and r80912. |
| http://trac.webkit.org/changeset/80899 |
| http://trac.webkit.org/changeset/80912 |
| https://bugs.webkit.org/show_bug.cgi?id=56236 |
| |
| Caused animation tests to crash on Snow Leopard WebKit2 |
| (Requested by rniwa on #webkit). |
| |
| * Shared/ShareableBitmap.cpp: |
| (WebKit::ShareableBitmap::create): |
| (WebKit::ShareableBitmap::createShareable): |
| (WebKit::ShareableBitmap::resize): |
| * Shared/ShareableBitmap.h: |
| (WebKit::ShareableBitmap::numBytesForSize): |
| (WebKit::ShareableBitmap::sizeInBytes): |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::update): |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::didUpdate): |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::~DrawingAreaImpl): |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): |
| (WebKit::DrawingAreaImpl::didUpdate): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| (WebKit::DrawingAreaImpl::display): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/SharedMemoryCache.cpp: Removed. |
| * WebProcess/WebPage/SharedMemoryCache.h: Removed. |
| * win/WebKit2.vcproj: |
| |
| 2011-03-11 Brian Weinstein <bweinstein@apple.com> |
| |
| Windows build fix. Add SharedMemoryCache to the vcproj. |
| |
| * win/WebKit2.vcproj: |
| |
| 2011-03-11 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=56222 |
| A window remains frozen if web process crashes during printing |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setComplexTextInputEnabled): |
| * UIProcess/WebPageProxy.h: |
| Moved setAutodisplay code into WKPrintingView. |
| |
| * UIProcess/API/mac/WKPrintingView.h: |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView printOperationWithPrintInfo:forFrame:]): |
| Keep a reference to the actual WKView, so that we can manipulate how it displays, even if |
| page goes away. |
| |
| * UIProcess/API/mac/WKPrintingView.mm: |
| (-[WKPrintingView initWithFrameProxy:WebKit::view:]): |
| (-[WKPrintingView _setAutodisplay:]): |
| (-[WKPrintingView _suspendAutodisplay]): |
| (-[WKPrintingView _delayedResumeAutodisplayTimerFired]): |
| Move setAutodisplay here. |
| |
| 2011-03-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add a shared memory cache to the web process |
| https://bugs.webkit.org/show_bug.cgi?id=56232 |
| |
| Add a very simple shared memory cache to the web process, so that we don't have to allocate and |
| free memory over and over when painting. |
| |
| * Shared/ShareableBitmap.cpp: |
| (WebKit::ShareableBitmap::create): |
| (WebKit::ShareableBitmap::createShareable): |
| (WebKit::ShareableBitmap::resize): |
| * Shared/ShareableBitmap.h: |
| (WebKit::ShareableBitmap::numBytesNeededForBitmapSize): |
| (WebKit::ShareableBitmap::sizeInBytes): |
| Rename numBytesForSize to numBytesNeededForBitmapSize. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::update): |
| Always send back a DidUpdate message, even if we didn't use the update info. |
| This is needed so that the web process knows when the UI process is done with the shared memory inside |
| the update info struct. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new files. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::didUpdate): |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| DidUpdate now takes a boolean. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::sharedMemoryCache): |
| Add shared memory cache. |
| |
| (WebKit::DrawingAreaImpl::~DrawingAreaImpl): |
| Return the shared memory to the cache. |
| |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): |
| display now takes an extra boolean. |
| |
| (WebKit::DrawingAreaImpl::didUpdate): |
| Return the shared memory to the cache. |
| |
| (WebKit::DrawingAreaImpl::display): |
| If useSharedMemoryCache is true, get shared memory from the cache. |
| |
| * WebProcess/WebPage/SharedMemoryCache.cpp: Added. |
| (WebKit::SharedMemoryCache::acquireSharedMemory): |
| If the memory we currently hold on to is big enough, return it. |
| |
| (WebKit::SharedMemoryCache::releaseSharedMemory): |
| If we're already holding on to shared memory, evict it if the returned |
| shared memory object is bigger than the one we currently hold. |
| |
| (WebKit::SharedMemoryCache::clearCacheTimerFired): |
| Null out the shared memory object. |
| |
| 2011-03-11 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Crash calling WebContext::clearResourceCaches(InMemoryResourceCachesOnly) before the Web |
| Process has finished launching. |
| https://bugs.webkit.org/show_bug.cgi?id=56208 |
| |
| Only send the message if the Web Process is valid. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::clearResourceCaches): |
| |
| 2011-03-11 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Don't paint more than 60 times per second |
| https://bugs.webkit.org/show_bug.cgi?id=56206 |
| <rdar://problem/9085989> |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| Initialize m_lastDisplayTime to 0. Change the display timer to call displayTimerFired. |
| |
| (WebKit::DrawingAreaImpl::didUpdate): |
| Call displayTimerFired instead of display. |
| |
| (WebKit::DrawingAreaImpl::displayTimerFired): |
| If we're asked to paint again less than 1/60th of a second after we've already painted, |
| defer painting. |
| |
| (WebKit::DrawingAreaImpl::display): |
| Update m_lastDisplayTime. |
| |
| 2011-03-11 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Alice Liu. |
| |
| <rdar://problem/9120161> WKPageRestoreFromSessionState does not set the pending API request URL. |
| |
| * UIProcess/cf/WebPageProxyCF.cpp: |
| (WebKit::WebPageProxy::restoreFromSessionStateData): If we're navigating to a back/forward item |
| as part of the restoration, call setPendingAPIRequestURL. When there's a provisional URL this will |
| be done by our call to loadURL elsewhere in the function. |
| |
| 2011-03-10 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Jon Honeycutt. |
| |
| WebKit2 UI process crashes if web process crashes while computing page rects for printing |
| https://bugs.webkit.org/show_bug.cgi?id=56160 |
| <rdar://problem/9027410> |
| |
| * UIProcess/API/mac/WKPrintingView.mm: |
| (-[WKPrintingView _suspendAutodisplay]): Added a null check for page, matching one that |
| we have when resuming autodisplay. |
| (-[WKPrintingView _delayedResumeAutodisplayTimerFired]): Added a FIXME. |
| (pageDidComputePageRects): Sanitize results coming from the web process (and avoid crashing |
| when there is a communication error, so results are all null). |
| (-[WKPrintingView knowsPageRange:]): If there is no page any more, we can't tell how many |
| pages it had. |
| (-[WKPrintingView rectForPage:]): Handle the case where we are neither calculating pages |
| nor knowing them, as it happens when the web process crashes. |
| |
| 2011-03-10 Mark Rowe <mrowe@apple.com> |
| |
| Rubber-stamped by Sam Weinig. |
| |
| Part of <rdar://problem/8728860> WebKit2 needs to be made localizable |
| |
| The presence of CFBundleDevelopmentRegion in the application's Info.plist prevents |
| the default localization that we set during launch from being respected. |
| |
| * PluginProcess/Info.plist: Remove CFBundleDevelopmentRegion. |
| * WebProcess/Info.plist: Ditto. |
| |
| 2011-03-10 Martin Robinson <mrobinson@igalia.com> |
| |
| Build for WebKit2 GTK+ after r80714. |
| |
| * GNUmakefile.am: Update source list. |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: |
| (WebKit::x11Display): Add missing semicolon. |
| |
| 2011-03-10 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (WebKit2): VoiceOver focus no longer follows keyboard focus |
| https://bugs.webkit.org/show_bug.cgi?id=55959 |
| |
| NSApplication has to return the focused element within the app in order |
| for NSAccessibilityHandleFocusChanged() to work. The default implementation |
| relies on keyWindow. Consequently, in WK2, the WebProcess must override that method |
| to return the appropriate focused element within the WebProcess, since |
| there is no keyWindow. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/mac/AccessibilityWebPageObject.mm: |
| (-[AccessibilityWebPageObject accessibilityFocusedUIElement]): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::focusedWebPage): |
| * WebProcess/WebProcess.h: |
| * WebProcess/mac/NSApplicationOverride.mm: Added. |
| (-[NSApplication accessibilityFocusedUIElement]): |
| |
| 2011-03-10 Oleg Romashin <romaxa@gmail.com> |
| |
| Reviewed by Andreas Kling. |
| |
| Make Qt port compiling with ENABLE_PLUGIN_PROCESS=1, part3 |
| Solving conflict of Qt and Xlib includes |
| |
| * Shared/Plugins/NPIdentifierData.cpp: |
| * Shared/Plugins/NPIdentifierData.h: |
| * Shared/Plugins/NPObjectProxy.cpp: |
| * Shared/Plugins/NPVariantData.h: |
| |
| 2011-03-10 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Mark Rowe. |
| |
| - Fix plugins in release and production builds. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Make sure to base the PluginProcess target on the correct xcconfig file |
| in all configurations. |
| |
| 2011-03-09 Matthew Delaney <mdelaney@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Plumb through settings for accelerated drawing for canvas |
| https://bugs.webkit.org/show_bug.cgi?id=56039 |
| |
| * Shared/WebPreferencesStore.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| * UIProcess/API/C/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| |
| 2011-03-10 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Oliver Hunt and Brian Weinstein. |
| |
| WebKit2: Need a way to clear only the in-memory resource caches |
| https://bugs.webkit.org/show_bug.cgi?id=56022 |
| |
| Add a parameter to WKContextClearResourceCaches to specify whether to clear all the caches |
| or just the memory caches. |
| |
| * Shared/ResourceCachesToClear.h: Added. |
| * UIProcess/API/C/WKAPICast.h: |
| (WebKit::toResourceCachesToClear): |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextClearResourceCaches): |
| Add the new parameter. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::clearResourceCaches): |
| Ditto. |
| * UIProcess/WebContext.h: |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::clearResourceCaches): |
| Pass the new parameter through to the platform-specific functions. |
| * WebProcess/WebProcess.h: |
| Add the new parameter and give it a default of AllResourceCaches. |
| * WebProcess/WebProcess.messages.in: |
| Ditto. |
| * WebProcess/gtk/WebProcessGtk.cpp: |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| * WebProcess/qt/WebProcessQt.cpp: |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformClearResourceCaches): |
| When told to clear only the in-memory caches, return early so as not to clear the CFNetwork |
| disk cache. |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformClearResourceCaches): |
| Ditto. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add ResourceCachesToClear.h |
| * win/WebKit2.vcproj: |
| Ditto. |
| |
| 2011-03-10 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WKViewRegisterEditCommandCallback should use WKViewUndoType |
| https://bugs.webkit.org/show_bug.cgi?id=56120 |
| |
| * UIProcess/API/C/win/WKView.h: Change undoOrRedo parameter in WKViewRegisterEditCommandCallback to be WKViewUndoType. |
| |
| 2011-03-10 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| Tiled backing store's delegated scroll request uses incorrect convention |
| https://bugs.webkit.org/show_bug.cgi?id=56011 |
| |
| Adapt all of the internal API to match the delta to point |
| conversion at the WebCore side. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::pageDidRequestScroll): |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::pageDidRequestScroll): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::delegatedScrollRequested): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::pageDidRequestScroll): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-03-10 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Andreas Kling. |
| |
| [WK2] Make non-transparent windowless plugins paint on X11 |
| https://bugs.webkit.org/show_bug.cgi?id=55660 |
| |
| Implement painting for non-transparent windowless X11 plugins. |
| The essence of the logic has been adapted from WebCore. |
| The implementation is stubbed for GTK and working only on Qt |
| but it should be really easy to finish it for GTK. |
| |
| * WebKit2.pro: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Handle X11 specific values that are necessary. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::NetscapePlugin): Initialize the X11 specific |
| members that has been added. |
| (WebKit::NetscapePlugin::callSetWindow): Always set the x and y coordinates |
| of the NP_Window to 0 on X11 since we are using a backings store as the |
| painting area for the plugin. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: Removed in favour |
| of a common implementation for X11. |
| * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: Ditto. |
| * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp: Added. |
| (WebKit::getPluginDisplay): |
| |
| Platform specific static getters. |
| (WebKit::x11Display): |
| (WebKit::displayDepth): |
| (WebKit::rootWindowID): |
| (WebKit::x11Screen): |
| |
| (WebKit::NetscapePlugin::platformPostInitialize): Set up the visual |
| settings and the colormap for the plugin. |
| (WebKit::NetscapePlugin::platformDestroy): |
| (WebKit::NetscapePlugin::platformInvalidate): Remained stub. |
| (WebKit::NetscapePlugin::platformGeometryDidChange): Create a new |
| pixmap that fits the geometry. |
| (WebKit::NetscapePlugin::platformPaint): Propagate a paint event |
| to the plugin, sync with it if necessary and draw the pixmap to |
| the screen. |
| (WebKit::toNP): Remained stub. |
| (WebKit::NetscapePlugin::platformHandleMouseEvent): Remained stub. |
| (WebKit::NetscapePlugin::platformHandleWheelEvent): Remained stub. |
| (WebKit::NetscapePlugin::platformSetFocus): Remained stub. |
| (WebKit::NetscapePlugin::platformHandleMouseEnterEvent): Remained stub. |
| (WebKit::NetscapePlugin::platformHandleMouseLeaveEvent): Remained stub. |
| (WebKit::NetscapePlugin::platformHandleKeyboardEvent): Remained stub. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::createPlugin): Hack. Inject wmode=opaque |
| key-value pair to the plugin parameters to force Flash to act in |
| non-transparent windowless mode. Qt also doing this in WebCore. |
| |
| 2011-03-09 Peter Kasting <pkasting@google.com> |
| |
| Reviewed by Mihai Parparita. |
| |
| Unify Windows version checks. |
| https://bugs.webkit.org/show_bug.cgi?id=55979 |
| |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| 2011-03-09 Adele Peterson <adele@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Fix for https://bugs.webkit.org/show_bug.cgi?id=56068 |
| <rdar://problem/9058245> WebKit2: Can't uncheck 'Spelling and Grammar' contextual items |
| |
| * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::contextMenuItemSelected): |
| Add cases for ContextMenuItemTagCorrectSpellingAutomatically, ContextMenuItemTagCheckSpellingWhileTyping, |
| and ContextMenuItemTagCheckGrammarWithSpelling |
| |
| 2011-03-09 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Frequent crashes when printing in WebPageProxy::setAutodisplay |
| https://bugs.webkit.org/show_bug.cgi?id=56057 |
| <rdar://problem/9053290> |
| |
| * UIProcess/API/mac/WKPrintingView.mm: (-[WKPrintingView _delayedResumeAutodisplayTimerFired]): |
| Null check the page, there is no reason for it to still exist. |
| |
| 2011-03-09 Brent Fulgham <bfulgham@webkit.org> |
| |
| Unreviewed build correction. |
| |
| * UIProcess/DrawingAreaProxy.messages.in: Exclude the other |
| method using LayerTreeContext for non-accelerated composition case. |
| |
| 2011-03-09 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Change plugins to use their own executable on Mac OS X |
| https://bugs.webkit.org/show_bug.cgi?id=55991 |
| |
| * Configurations/PluginProcess.xcconfig: Copied from Source/WebKit2/Configurations/WebProcess.xcconfig. |
| * PluginProcess/Info.plist: Copied from Source/WebKit2/WebProcess/Info.plist. |
| Add files necessary for adding PluginProcess.app. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): |
| Launch the PluginProcess.app when launching a plugin process. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Add new executable and new files, removes some unneeded copying |
| and duplicate compiling of files. |
| |
| * WebProcess/Info.plist: |
| Sorted. |
| |
| 2011-03-09 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Use the Cookie Storage from the Private Browsing Storage Session directly |
| https://bugs.webkit.org/show_bug.cgi?id=55986 |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| |
| 2011-03-09 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix compilation after r80596, add soup Download stubs. |
| |
| * GNUmakefile.am: |
| * WebProcess/Downloads/soup/DownloadSoup.cpp: Added. |
| (WebKit::Download::start): |
| (WebKit::Download::startWithHandle): |
| (WebKit::Download::cancel): |
| (WebKit::Download::platformInvalidate): |
| (WebKit::Download::didDecideDestination): |
| (WebKit::Download::platformDidFinish): |
| |
| 2011-03-09 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix GTK+ compilation after r80619. Add WebFullScreenManager. |
| |
| * GNUmakefile.am: |
| |
| 2011-03-08 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Plumb through the FULLSCREEN_API Chrome client calls |
| https://bugs.webkit.org/show_bug.cgi?id=55273 |
| |
| The FULLSCREEN_API Chrome client calls need to be plumbed through from the |
| WebProcess to the UIProcess. To do this, WebFullScreenManager (and Proxy) |
| classes have been added to WebPage. |
| |
| * DerivedSources.make: Added rules necessary to build DerivedSources for new .in files. |
| * DerivedSources.pro: Ditto. |
| * Platform/CoreIPC/MessageID.h: Added message types for WebFullScreenManager. |
| * Shared/API/c/WKBase.h: Added WKFullScreenManagerRef. |
| * Shared/APIObject.h: Added APIType for WebFullScreenManager. |
| * UIProcess/WebFullScreenManagerProxy.cpp: Added. |
| * UIProcess/WebFullScreenManagerProxy.h: Added. |
| * UIProcess/WebFullScreenManagerProxy.messages.in: Added. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Invalidate and clear m_fullScreenManager. |
| (WebKit::WebPageProxy::processDidCrash): Ditto. |
| (WebKit::WebPageProxy::didReceiveMessage): Pass messages on to WebFullScreenManagerProxy. |
| (WebKit::WebPageProxy::didReceiveSyncMessage): Ditto. |
| (WebKit::WebPageProxy::fullScreenManager): Added. Lazy instantiation of m_fullScreenManager. |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebUIClient.cpp: |
| * UIProcess/WebUIClient.h: |
| * WebKit2.xcodeproj/project.pbxproj: Added references to new classes in project file. |
| * WebKit2.pro: Ditto. |
| * win/WebKit2.vcproj: Ditto. |
| * WebKit2.pri: Added new directories to include file path. |
| * win/WebKit2Common.vsprops: Ditto. |
| * WebProcess/FullScreen/WebFullScreenManager.cpp: Added. |
| * WebProcess/FullScreen/WebFullScreenManager.h: Added. |
| * WebProcess/FullScreen/WebFullScreenManager.messages.in: Added. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::supportsFullScreenForElement): Pass through to WebFullScreenManager. |
| (WebKit::WebChromeClient::enterFullScreenForElement): Ditto. |
| (WebKit::WebChromeClient::exitFullScreenForElement): Ditto. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::close): Invalidate and clear m_fullScreenManager. |
| (WebKit::WebPage::fullScreenManager): Lazy instantiation of m_fullScreenManager. |
| (WebKit::WebPage::didReceiveMessage): Pass messages through to WebFullScreenManager. |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-03-08 Jer Noble <jer.noble@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Plumb through the "supportsFullScreen" preference. |
| https://bugs.webkit.org/show_bug.cgi?id=55261 |
| |
| The "supportsFullScreen" preference needs to be plumbed through from |
| the UIProcess to the WebProcess. |
| |
| * Shared/WebPreferencesStore.h: Add a new macro entry. |
| * UIProcess/API/C/WKPreferences.cpp: Implement preferences getter and setter. |
| (WKPreferencesSetFullScreenEnabled): |
| (WKPreferencesGetFullScreenEnabled): |
| * UIProcess/API/C/WKPreferences.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): Sync the fullScreenEnabled setting through to |
| the settings object. |
| |
| 2011-03-08 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Adele Peterson. |
| |
| WebKit2: Implement Windows glue for Undo/Redo |
| https://bugs.webkit.org/show_bug.cgi?id=55961 |
| |
| Expose Undo/Redo infrastructure through WKView on Windows by |
| adding an undo client as well as APIs to reapply and unapply |
| an edit command. |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewSetViewUndoClient): Added. |
| (WKViewReapplyEditCommand): Added. |
| (WKViewUnapplyEditCommand): Added. |
| * UIProcess/API/C/win/WKView.h: Added WKViewUndoClient, WKViewSetViewUndoClient(), and WKViewUnapplyEditCommand(). |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::isValidEditCommand): Added, used to validated an edit command from a WKView API. |
| * UIProcess/WebPageProxy.h: Added isValidEditCommand(). |
| * UIProcess/win/WebUndoClient.cpp: Added, APIClient for WKViewUndoClient. |
| (WebKit::WebUndoClient::registerEditCommand): Added. |
| (WebKit::WebUndoClient::clearAllEditCommands): Added. |
| * UIProcess/win/WebUndoClient.h: Added, APIClient for WKViewUndoClient. |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::initializeUndoClient): Added. |
| (WebKit::WebView::close): Clear out undo client. |
| (WebKit::WebView::registerEditCommand): Implemented to call through to WKViewUndoClient. |
| (WebKit::WebView::clearAllEditCommands): Implmented to call through to WKViewUndoClient. |
| (WebKit::WebView::reapplyEditCommand): Added. |
| (WebKit::WebView::unapplyEditCommand): Added. |
| * UIProcess/win/WebView.h: Added undo client support. |
| * win/WebKit2.vcproj: Added WebUndoClient.cpp and WebUndoClient.h. |
| |
| 2011-03-08 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Expose WebEditCommandProxy in the C API on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=55962 |
| |
| Make WebEditCommandProxy a subclass of APIObject, and define |
| WKEditCommandRef as the type that will be exposed through the C API. |
| |
| * Shared/API/c/win/WKBaseWin.h: Add WKEditCommandRef. |
| * Shared/APIObject.h: Add platform-specific TypeEditCommandProxy. |
| * UIProcess/API/C/win/WKAPICastWin.h: Add API mapping for WKEditCommandRef. |
| * UIProcess/WebEditCommandProxy.h: Subclass WebEditCommandProxy from APIObject. |
| (WebKit::WebEditCommandProxy::type): Added. |
| |
| 2011-03-08 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| WebKit2: Redo is broken |
| https://bugs.webkit.org/show_bug.cgi?id=55978 |
| |
| WebEditCommandProxy::unapply() and WebEditCommandProxy::reapply() were registering the wrong edit command when an undo or redo happens. |
| For example, when we unapply(), we should register a Redo command, not an Undo command. |
| |
| * UIProcess/WebEditCommandProxy.cpp: |
| (WebKit::WebEditCommandProxy::unapply): Register a Redo command, not an Undo command. |
| (WebKit::WebEditCommandProxy::reapply): Register an Undo command, not a Redo command. |
| |
| 2011-03-08 Brent Fulgham <bfulgham@webkit.org> |
| |
| Reviewed by Adam Roben. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55977 |
| Refine CF/CFNet distinctions for better code sharing. |
| 1. Rename Downloads/cf/win/DownloadCFNetWin.cpp to DownloadCFWin.cpp |
| since it does not use any CFNETWORK features. |
| 2. Create new cfnet directory. |
| 3. Move Downloads/cf/DownloadCFNet.cpp to Downloads/cfnet |
| 4. Update project file. |
| |
| * WebProcess/Downloads/cf/DownloadCFNet.cpp: Removed. |
| * WebProcess/Downloads/cf/win/DownloadCFNetWin.cpp: Removed. |
| * WebProcess/Downloads/cf/win/DownloadCFWin.cpp: Copied from WebProcess/Downloads/cf/win/DownloadCFNetWin.cpp. |
| * WebProcess/Downloads/cfnet: Added. |
| * WebProcess/Downloads/cfnet/DownloadCFNet.cpp: Copied from WebProcess/Downloads/cf/DownloadCFNet.cpp. |
| * win/WebKit2.vcproj: |
| |
| 2011-03-08 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| <http://webkit.org/b/55976> Provisional URL should be loaded when restoring session state even if there are back / forward list entries. |
| |
| * UIProcess/cf/WebPageProxyCF.cpp: |
| (WebKit::WebPageProxy::restoreFromSessionStateData): If there's a provisional URL that we will load then restore the session state |
| without navigating to the current item. |
| * WebProcess/WebPage/WebPage.messages.in: Expose the ability to restore the session state without navigating to the current item. |
| |
| 2011-03-08 Brent Fulgham <bfulgham@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55956 |
| WebKit2 Changes to correct WinCairo port build |
| |
| * Shared/LayerTreeContext.h: Don't exclude CoreIPC declarations for non-accelerated |
| compositing case. |
| * UIProcess/DrawingAreaProxy.h: Add "stdint.h" include needed for Cairo build. |
| * UIProcess/DrawingAreaProxyImpl.cpp: Exclude accelerated compositing code for |
| WinCairo build. |
| (WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl): |
| (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): |
| (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode): |
| (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode): |
| (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState): |
| (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState): |
| * UIProcess/DrawingAreaProxyImpl.h: Exclude declarations for code only used when |
| accelerated compositing is enabled. |
| (WebKit::DrawingAreaProxyImpl::isInAcceleratedCompositingMode): |
| * UIProcess/win/WebView.cpp: Protect CG-specific drawing code. |
| (WebKit::WebView::setFindIndicator): |
| * WebProcess/Downloads/Download.h: Allow CFLite implentation to share overwrite flag, |
| as well as destination and bundle paths. |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: Remove stub (to share CFNet implementation |
| of file handling. This will be moved to a common area in a future patch.) |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: Exclude accelerated-compositing paths. |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| * WebProcess/WebPage/WebPage.cpp: Protect CG-specific drawing code. |
| (WebKit::WebPage::drawRectToPDF): |
| (WebKit::WebPage::drawPagesToPDF): |
| * win/WebKit2.vcproj: Exclude unused LayerTreeContext from WinCairo |
| |
| 2011-03-08 Ivan Krstić <ike@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Re-fix: can't paste from 3rd party text editor into WebKit2 window |
| <rdar://problem/8978624> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-03-08 Martin Robinson <mrobinson@igalia.com> |
| |
| Fix the WebKit2 compilation after r80578. |
| |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::setFocus): Added. |
| * UIProcess/gtk/WebView.h: |
| |
| 2011-03-08 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| Crash in CFNetwork visiting google.com |
| https://bugs.webkit.org/show_bug.cgi?id=55958 |
| |
| * Shared/API/c/cf/WKURLResponseCF.cpp: |
| (WKURLResponseCopyCFURLResponse): |
| If the response to copy is null, return 0; |
| |
| 2011-03-08 John Sullivan <sullivan@apple.com> |
| |
| Reverted the patch for https://bugs.webkit.org/show_bug.cgi?id=55940 |
| |
| The patch was insufficient, and it wasn't useful for the intended client use either. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| |
| 2011-03-08 Alejandro G. Castro <alex@igalia.com> |
| |
| Unreviewed, fixed GTK+ compilation after r80569. |
| |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::windowToScreen): |
| * UIProcess/gtk/WebView.h: |
| |
| 2011-03-08 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WK2: Cannot set focus on an element when focus is outside of WKView |
| https://bugs.webkit.org/show_bug.cgi?id=55281 |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::setFocus): |
| * UIProcess/API/qt/qwkpage_p.h: |
| (QWKPagePrivate::setFocus): |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::setFocus): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/win/WebView.h: |
| (WebKit::WebView::setFocus): |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::focus): |
| (WebKit::WebChromeClient::unfocus): |
| |
| 2011-03-08 Jeff Miller <jeffm@apple.com> |
| |
| Unreviewed, fix last change so WKBaseWin.h is in alphabetical order in the project XML. |
| |
| * win/WebKit2.vcproj: Move WKBaseWin.h to be in alphabetical order. |
| |
| 2011-03-08 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Remove Source/WebKit2/UIProcess/API/C/win/WKBaseWin.h |
| https://bugs.webkit.org/show_bug.cgi?id=55952 |
| |
| * UIProcess/API/C/win/WKBaseWin.h: Removed. |
| * win/WebKit2.vcproj: Refer to the Shared version of WKBaseWin.h instead of the one in UIProcess. |
| |
| 2011-03-08 Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Add new files to compilation after r77974 |
| https://bugs.webkit.org/show_bug.cgi?id=54076 |
| |
| The commit added new code to allow passing context to policy |
| delegate methods, we also added dummy ResourceRequest and |
| ResourceResponse decoders until we implement them. |
| |
| * GNUmakefile.am: |
| * Shared/gtk/WebCoreArgumentCodersGtk.cpp: |
| (CoreIPC::decodeResourceRequest): |
| (CoreIPC::decodeResourceResponse): |
| |
| 2011-03-08 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| AX: Webkit2 not sending UAZoomFocusChanged notifications |
| https://bugs.webkit.org/show_bug.cgi?id=55916 |
| |
| Needed to implement the windowToScreen() method so that the right frame |
| could be calculated to send for zoom focus changes. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::windowToScreen): |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::windowToScreen): |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::windowToScreen): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::windowToScreen): |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::windowToScreen): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::windowToScreen): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-03-08 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55940 |
| WebKit2 should support Ignore policy from injected bundle client |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| Added WKBundlePagePolicyActionIgnore. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| If the injected bundle client returns WKBundlePagePolicyActionIgnore, convert it |
| to the loader's PolicyIgnore. |
| |
| 2011-03-08 Laszlo Gombos <laszlo.1.gombos@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] [Symbian] [WK2] Fix building WebKit 2 API tests |
| https://bugs.webkit.org/show_bug.cgi?id=55876 |
| |
| Make sure TESTS_SOURCE_DIR is set for Symbian the same way |
| as it is for WK1. |
| |
| * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp: |
| (tst_QGraphicsWKView::loadEmptyPage): |
| * UIProcess/API/qt/tests/tests.pri: |
| |
| 2011-03-07 Damian Kaleta <dkaleta@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| QuickTime plugin should opt in to a 32-bit non-executable heap |
| https://bugs.webkit.org/show_bug.cgi?id=55704 |
| <rdar://problem/8105706> |
| |
| * UIProcess/Plugins/PluginProcessProxy.cpp: |
| (WebKit::pluginNeedsExecutableHeap): Decides per plugin if it should opt-in to a 32-bit non-executable heap. |
| By default it should opt-out. |
| (WebKit::PluginProcessProxy::PluginProcessProxy): |
| |
| 2011-03-07 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add unableToImplementPolicy callback for WebKit2 policy client |
| <rdar://problem/9071902> |
| https://bugs.webkit.org/show_bug.cgi?id=55884 |
| |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::unableToImplementPolicy): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebPolicyClient.cpp: |
| (WebKit::WebPolicyClient::unableToImplementPolicy): |
| * UIProcess/WebPolicyClient.h: |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp: |
| (WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy): |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy): |
| Pipe unableToImplementPolicy through both the bundle and the main WebKit2 API. |
| |
| 2011-03-07 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Replace WebKit2's decidePolicyForMIMEType with decidePolicyForResponse |
| https://bugs.webkit.org/show_bug.cgi?id=55827 |
| |
| - Renamed FrameLoaderClient::dispatchDecidePolicyForMIMEType to dispatchDecidePolicyForResponse |
| and pass the entire response, instead of just the MIMEType. |
| - Updated both UIProcess API and bundle API to also be based on the whole response, not just the |
| MIMEType. |
| |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::decidePolicyForResponse): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebPolicyClient.cpp: |
| (WebKit::WebPolicyClient::decidePolicyForResponse): |
| * UIProcess/WebPolicyClient.h: |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp: |
| (WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse): |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-03-06 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2: Use CFNetwork Sessions API. |
| https://bugs.webkit.org/show_bug.cgi?id=55435. |
| |
| When Private Browsing is enabled, use cookies from a in-memory cookie storage based on the |
| Private Browsing Storage Session. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| Add support for using the new WKSI functions in WebCore. |
| |
| 2011-03-06 Oleg Romashin <romaxa@gmail.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Make Qt port compiling with ENABLE_PLUGIN_PROCESS=1, part1 |
| Adding dummy Qt files for Plugin Process implementation, |
| Adding missing sources into Qt pro files |
| https://bugs.webkit.org/show_bug.cgi?id=55719 |
| |
| * DerivedSources.pro: |
| * PluginProcess/qt: Added. |
| * PluginProcess/qt/PluginControllerProxyQt.cpp: Added. |
| (WebKit::PluginControllerProxy::platformInitialize): |
| (WebKit::PluginControllerProxy::platformDestroy): |
| (WebKit::PluginControllerProxy::platformGeometryDidChange): |
| * PluginProcess/qt/PluginProcessMainQt.cpp: Added. |
| (WebKit::PluginProcessMain): |
| * PluginProcess/qt/PluginProcessQt.cpp: Added. |
| (WebKit::PluginProcess::platformInitialize): |
| * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp: Added. |
| (WebKit::PluginProcessProxy::platformInitializePluginProcess): |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2API.pri: |
| * WebProcess/Plugins/Netscape/qt/PluginProxyQt.cpp: Added. |
| (WebKit::PluginProxy::needsBackingStore): |
| |
| 2011-03-05 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Remove unneeded onPageClose function from DrawingArea |
| https://bugs.webkit.org/show_bug.cgi?id=55836 |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| Remove empty function. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::close): |
| Remove only called |
| |
| 2011-03-04 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WK2 Mac build fix. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageComputePagesForPrinting): |
| (WKPageBeginPrinting): |
| |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| 2011-03-04 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WK2 Mac build fix. |
| |
| * UIProcess/API/C/WKPagePrivate.h: |
| |
| 2011-03-04 Jon Honeycutt <jhoneycutt@apple.com> |
| |
| WK2 needs printing support on Windows |
| https://bugs.webkit.org/show_bug.cgi?id=55800 |
| <rdar://problem/8903808> |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (ComputedPagesContext::ComputedPagesContext): |
| (computedPagesCallback): |
| From the Vector of WebCore::IntRects, build up a Vector of WKRects. |
| Call the callback, passing these rects and the scale factor. |
| (printInfoFromWKPrintInfo): |
| Return a PrintInfo structure from the WKPrintInfo. |
| (WKPageComputePagesForPrinting): |
| Call WebPageProxy::computePagesForPrinting(). Pass |
| computedPagesCallback as the callback function, so that we can |
| translate the WebCore rect type to WKRect before calling the caller's |
| callback function. |
| (WKPageBeginPrinting): |
| Call WebPageProxy::beginPrinting(). |
| (WKPageDrawPagesToPDF): |
| Call WebPageProxy::drawPagesToPDF(). |
| |
| * UIProcess/API/C/WKPagePrivate.h: |
| Declare the WKPrintInfo type and new functions. |
| |
| * UIProcess/WebPageProxy.cpp: |
| Compile this code on Windows. |
| |
| * UIProcess/WebPageProxy.h: |
| Ditto. |
| |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::paint): |
| We're painting the window; leave printing mode. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| Compile this code on Windows. |
| |
| * WebProcess/WebPage/WebPage.h: |
| Ditto. |
| |
| * WebProcess/WebPage/WebPage.messages.in: |
| Ditto. |
| |
| 2011-03-04 Steve Falkenburg <sfalken@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Adopt VersionStamper tool for Windows WebKit DLLs |
| https://bugs.webkit.org/show_bug.cgi?id=55784 |
| <rdar://problem/9021320> |
| |
| We now use a tool to stamp the version number onto the Apple WebKit DLLs |
| during the post-build step. |
| |
| Fetch the WebKit version from a string resource instead of the version resource. |
| |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::userVisibleWebKitVersionString): Fetch version from a string resource. |
| * win/WebKit2.rc: Removed version, added stringtable. |
| * win/WebKit2WebProcess.rc: Removed. |
| * win/WebKit2WebProcess.vcproj: |
| * win/WebKit2WebProcessPostBuild.cmd: Don't run autoversion script. It isn't used in this project. |
| * win/WebKit2WebProcessPreBuild.cmd: Stamp version. |
| * win/WebKitPostBuild.cmd: Stamp version. |
| |
| 2011-03-04 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Add WKPageValidateCommand() |
| https://bugs.webkit.org/show_bug.cgi?id=55793 |
| |
| On the Mac, validation of edit menu commands is handled within WebKit2 in WKView.mm. |
| However, on Windows we need to do this in the client, so expose this functionality |
| in the API via WKPageValidateCommand(). |
| |
| Change the Mac implementation to call WebPageProxy::validateCommand() with a callback |
| to match this new API, so it no longer has to go through PageClient to get notified |
| when a command is validated. This makes PageClient::setEditCommandState() obsolete, |
| so I removed the stub implementations in qt and gtk as well. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageValidateCommand): Added. |
| * UIProcess/API/C/WKPage.h: Added WKPageValidateCommand(). |
| * UIProcess/API/mac/PageClientImpl.h: Removed setEditCommandState(). |
| * UIProcess/API/mac/PageClientImpl.mm: Removed setEditCommandState(). |
| * UIProcess/API/mac/WKView.mm: |
| (validateCommandCallback): Added. |
| (-[WKView validateUserInterfaceItem:]): Pass callback to validateCommand(). |
| * UIProcess/API/qt/qwkpage.cpp: Removed setEditCommandState(). |
| * UIProcess/API/qt/qwkpage_p.h: Removed setEditCommandState(). |
| * UIProcess/PageClient.h: Removed setEditCommandState(). |
| * UIProcess/WebPageProxy.cpp: Removed didValidateCommand(). |
| (WebKit::WebPageProxy::validateCommand): This now takes a callback. |
| (WebKit::WebPageProxy::validateCommandCallback): Added. |
| (WebKit::WebPageProxy::processDidCrash): Invalidate m_validateCommandCallbacks. |
| * UIProcess/WebPageProxy.h: Removed didValidateCommand(), validateCommand() now takes a callback. |
| (WebKit::ValidateCommandCallback::create): Added. |
| (WebKit::ValidateCommandCallback::~ValidateCommandCallback): Added. |
| (WebKit::ValidateCommandCallback::performCallbackWithReturnValue): Added. |
| (WebKit::ValidateCommandCallback::invalidate): Added. |
| (WebKit::ValidateCommandCallback::ValidateCommandCallback): Added. |
| * UIProcess/WebPageProxy.messages.in: Removed DidValidateCommand, added ValidateCommandCallback. |
| * UIProcess/gtk/WebView.cpp: Removed setEditCommandState(). |
| * UIProcess/gtk/WebView.h: Removed setEditCommandState(). |
| * UIProcess/win/WebView.cpp: Removed setEditCommandState(). |
| * UIProcess/win/WebView.h: Removed setEditCommandState(). |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::validateCommand): This now takes a callbackID. |
| * WebProcess/WebPage/WebPage.h: validateCommand now takes a callbackID. |
| * WebProcess/WebPage/WebPage.messages.in: ValidateCommand now takes a callbackID. |
| |
| 2011-03-04 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Reference-counting for WKBundlePageResourceLoadClient::willSendRequestForFrame seems unclear/wrong |
| https://bugs.webkit.org/show_bug.cgi?id=53919 |
| <rdar://problem/8966020> |
| |
| Adopt the result of m_client.willSendRequestForFrame (which will be leaked by the client). |
| |
| * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp: |
| (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame): |
| |
| 2011-03-04 Darin Adler <darin@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| WebKit2 session state should include even loads too new to be in the back/forward list |
| https://bugs.webkit.org/show_bug.cgi?id=55781 |
| part of <rdar://problem/8968847> |
| |
| * UIProcess/cf/WebPageProxyCF.cpp: |
| (WebKit::WebPageProxy::sessionStateData): Save URLs that are early enough in the loading |
| process to not be included in the back/forward list yet: The pending API request URL and |
| the provisional URL. |
| (WebKit::WebPageProxy::restoreFromSessionStateData): Call loadURL if the back/forward |
| list is not restored and a URL is present. Later we can improve the way we handle the |
| case where we have both a back/forward list and a URL. |
| |
| 2011-03-04 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WebKit2: Use CFNetwork Sessions API. |
| https://bugs.webkit.org/show_bug.cgi?id=55435. |
| |
| Add in the CFURLSTORAGESESSIONS guards that I incorrectly left out because the code was |
| contained within guards that made USE(CFURLSTORAGESESSIONS) always be true. |
| |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| |
| 2011-03-04 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Use CFNetwork Sessions API. |
| https://bugs.webkit.org/show_bug.cgi?id=55435. |
| |
| When Private Browsing is enabled, get the cached url response from the cache associated with |
| the Private Browsing Storage Session. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| If Private Browsing is enabled, call into WKSI to get the response. |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| Ditto. |
| * WebProcess/WebPage/win/WebPageWin.cpp: |
| (WebKit::WebPage::platformHasLocalDataForURL): |
| If Private Browsing is enabled, call into WKSI to get the CFURLCacheRef. |
| (WebKit::WebPage::cachedResponseMIMETypeForURL): |
| Ditto. |
| |
| 2011-03-04 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Move WKViewExecuteCommand() to WKPageExecuteCommand() |
| https://bugs.webkit.org/show_bug.cgi?id=55744 |
| |
| Executing a command operates on a page, so it makes more sense for it to be in WKPage. |
| This also makes it available on all platforms, not just Windows. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageExecuteCommand): Added. |
| * UIProcess/API/C/WKPage.h: Add WKPageExecuteCommand(). |
| * UIProcess/API/C/win/WKView.cpp: Remove WKViewExecuteCommand(). |
| * UIProcess/API/C/win/WKView.h: Remove WKViewExecuteCommand(). |
| |
| 2011-03-04 Dan Bernstein <mitz@apple.com> |
| |
| LLVM Compiler build fix. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): |
| |
| 2011-03-03 Timothy Hatcher <timothy@apple.com> |
| |
| Make the WKPageRunJavaScriptFunction callback take a WKSerializedScriptValueRef. |
| |
| https://webkit.org/b/55623 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageRunJavaScriptInMainFrame): Use ScriptValueCallback. |
| (callRunJavaScriptBlockAndRelease): Use WKSerializedScriptValueRef. |
| * UIProcess/API/C/WKPage.h: Use WKSerializedScriptValueRef. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Call invalidateCallbackMap for m_scriptValueCallbacks. |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): Take a ScriptValueCallback. |
| (WebKit::WebPageProxy::scriptValueCallback): Added. Create a WebSerializedScriptValue |
| from the DataReference before calling the callback. |
| (WebKit::WebPageProxy::processDidCrash): Call invalidateCallbackMap for m_scriptValueCallbacks. |
| * UIProcess/WebPageProxy.h: Added ScriptValueCallback and m_scriptValueCallbacks. |
| * UIProcess/WebPageProxy.messages.in: Added ScriptValueCallback. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): Create a DataReference from a WebCore::SerializedScriptValue. |
| And use ScriptValueCallback to send the message back. |
| |
| 2011-03-03 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Cleanup from https://bugs.webkit.org/show_bug.cgi?id=55427. |
| |
| Call WebCore::startObservingCookieChanges and WebCore::stopObservingCookieChanges |
| on all platforms, and stub the functions on platforms that don't implement them. |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::startObservingCookieChanges): |
| (WebKit::WebCookieManager::stopObservingCookieChanges): |
| |
| 2011-03-03 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Refactor classes in GenericCallback.h |
| https://bugs.webkit.org/show_bug.cgi?id=55732 |
| |
| Since we're going to need to add additional callback classes, make a CallbackBase class that manages |
| the context and the callback ID. The existing callback classes (VoidCallback, GenericCallback, and |
| ComputedPagesCallback) now all derive from CallbackBase. |
| |
| Fix bug in VoidCallback where we meant to implement the destructor, but we were implementing the default |
| constructor instead (we forgot the leading ~). |
| |
| * UIProcess/GenericCallback.h: |
| (WebKit::CallbackBase::~CallbackBase): |
| (WebKit::CallbackBase::callbackID): |
| (WebKit::CallbackBase::CallbackBase): |
| (WebKit::CallbackBase::context): |
| (WebKit::CallbackBase::generateCallbackID): |
| (WebKit::VoidCallback::~VoidCallback): |
| (WebKit::VoidCallback::performCallback): |
| (WebKit::VoidCallback::invalidate): |
| (WebKit::VoidCallback::VoidCallback): |
| (WebKit::GenericCallback::create): |
| (WebKit::GenericCallback::~GenericCallback): |
| (WebKit::GenericCallback::performCallbackWithReturnValue): |
| (WebKit::GenericCallback::invalidate): |
| (WebKit::GenericCallback::GenericCallback): |
| (WebKit::ComputedPagesCallback::create): |
| (WebKit::ComputedPagesCallback::~ComputedPagesCallback): |
| (WebKit::ComputedPagesCallback::performCallbackWithReturnValue): |
| (WebKit::ComputedPagesCallback::invalidate): |
| (WebKit::ComputedPagesCallback::ComputedPagesCallback): |
| |
| 2011-03-03 Adam Roben <aroben@apple.com> |
| |
| Don't assume the web process has had a chance to paint before the view has to paint |
| |
| Fixes <http://webkit.org/b/55739> REGRESSION (r80307): Lots of tests crashing in |
| BackingStore::paint |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::paint): Bail if the web process hasn't had a chance to paint |
| yet. |
| |
| 2011-03-03 Adam Roben <aroben@apple.com> |
| |
| Throw away DrawingAreaProxyImpl's backing store after not painting for 5 seconds |
| |
| The intent is to save memory for views that aren't painting. |
| |
| Fixes <http://webkit.org/b/51262> <rdar://problem/8782537> WebPageProxy should delete its |
| backing store after not painting for a while |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Initialize our timer. |
| (WebKit::DrawingAreaProxyImpl::paint): Don't bail if we don't have a backing store (but do |
| bail if we're in accelerated compositing mode); we might have thrown it away to save memory |
| but now are being asked to paint by the view. The existing code in this function will handle |
| getting a new backing store if possible by blocking for a little while to try to receive a |
| DidUpdateBackingStoreState message. Added an assertion that we do have a backing store if we |
| don't have any outstanding UpdateBackingStoreState requests. After painting, call |
| discardBackingStoreSoon to update our timer. |
| (WebKit::DrawingAreaProxyImpl::discardBackingStoreSoon): Set the timer for 5 seconds in the |
| future. |
| (WebKit::DrawingAreaProxyImpl::discardBackingStore): Throw away the backing store, and tell |
| the web process we'll need a full backing store update on the next paint. |
| |
| * UIProcess/DrawingAreaProxyImpl.h: Added m_discardBackingStoreTimer. |
| |
| 2011-03-03 Adam Roben <aroben@apple.com> |
| |
| Add a way to tell the web process to perform a full backing store update on its next paint |
| |
| Messages::DrawingArea::UpdateBackingStoreState now takes a boolean specifying whether the |
| full backing store update should happen immediately or should be deferred until the next |
| paint or compositing mode change occurs. The deferred update isn't used yet, but will be |
| used when we start throwing away backing stores to save memory. |
| |
| Fixes <http://webkit.org/b/55730> UI process needs a way to tell the web process its backing |
| store needs a full update on the next paint |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::paint): If we have an outstanding backing store state change |
| request, tell the web process to perform the backing store update right away, in case we |
| previously told it it could defer the update. |
| (WebKit::DrawingAreaProxyImpl::sizeDidChange): Specify that we need an immediate backing |
| store update. |
| (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState): We can no longer assert that we |
| were waiting for a DidUpdateBackingStoreState message when we receive one, as it's possible |
| for the web process to decide to send us this message on its own (if we asked it to do a |
| deferred backing store update and then it needed to paint some part of the page). Specify |
| that we need an immediate backing store update if the web process hasn't updated to our |
| latest state, as we're about to draw potentially out-of-date bits to the screen and want to |
| get the right bits as soon as possible. Also added a FIXME about a potential optimization. |
| (WebKit::DrawingAreaProxyImpl::backingStoreStateDidChange): Added a RespondImmediatelyOrNot |
| parameter, which is just passed through to sendUpdateBackingStoreState. |
| (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState): Added a RespondImmediatelyOrNot |
| parameter that is used to specify to the web process whether to perform the full backing |
| store update immediately. We now only wait for a DidUpdateBackingStoreState message (and |
| thus suppress any more UpdateBackingStoreState messages until one is received) when we ask |
| the web process for an immediate response; otherwise we could end up accidentally calling |
| waitForAndDispatchDidUpdateBackingStoreState when the web process hasn't been told to send |
| us such a message. |
| |
| * UIProcess/DrawingAreaProxyImpl.h: Added RespondImmediatelyOrNot. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::updateBackingStoreState): Added respondImmediately argument. |
| |
| * WebProcess/WebPage/DrawingArea.messages.in: Added respondImmediately argument to |
| UpdateBackingStoreState message. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): Initialize new member that's used to track |
| whether we should send a DidUpdateBackingStoreState message instead of an Update or |
| compositing mode change message. This will be set to true when a deferred backing store |
| update is pending. |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): If a deferred update is pending, send a |
| DidUpdateBackingStoreState message instead of a compositing mode change message. |
| (WebKit::DrawingAreaImpl::updateBackingStoreState): Added respondImmediately argument. If |
| we've already been told about this state ID (as can happen when the UI process decides it |
| needs an immediate update to a state that it previously requested a deferred update to), |
| don't bother updating the page's size, etc. In addition, if we've already sent a |
| DidUpdateBackingStoreState message for this state, we don't have to do anything at all. |
| Moved code to send the DidUpdateBackingStoreState message from here... |
| (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState): ...to here. |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): Always update our dirty region, |
| even if painting is suspended or we're in the process of updating the backing store state. |
| It causes no harm and simplifies the code. If a deferred update is pending, send a |
| DidUpdateBackingStoreState message instead of a compositing mode change message. Also |
| removed a redundant if. |
| (WebKit::DrawingAreaImpl::display): Added an assertion that this isn't called while updating |
| backing store state, as otherwise we might end up sending two DidUpdateBackingStoreState |
| messages. If a deferred update is pending, send a DidUpdateBackingStoreState message instead |
| of an Update message. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.h: Updated updateBackingStoreState to match the base |
| class. Added sendDidUpdateBackingStoreState and m_shouldSendDidUpdateBackingStoreState. |
| |
| 2011-03-03 Andy Estes <aestes@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| When displaying the missing plug-in sheet, pass the 'pluginspage' |
| attribute to the UI process. |
| https://bugs.webkit.org/show_bug.cgi?id=55553 |
| |
| * UIProcess/API/C/WKPage.h: Add pluginsPageURL as the third argument to |
| missingPluginButtonClicked. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::missingPluginButtonClicked): Ditto. |
| * UIProcess/WebPageProxy.h: Ditto. |
| * UIProcess/WebPageProxy.messages.in: Ditto. |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::missingPluginButtonClicked): Ditto. |
| * UIProcess/WebUIClient.h: Ditto. |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::missingPluginButtonClicked): Get the value of |
| pluginspageAttr. |
| |
| 2011-03-03 Alexey Proskuryakov <ap@apple.com> |
| |
| Suggested by Dan Bernstein. |
| |
| Move "const" around "NSString *", so that it suddenly begins to make sense. |
| |
| * WebProcess/mac/FullKeyboardAccessWatcher.mm: |
| |
| 2011-03-03 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Add WKViewRef API for executing edit commands |
| https://bugs.webkit.org/show_bug.cgi?id=49829 |
| |
| Added WKViewExecuteCommand() and documented some of the WebCore EditorCommand strings. |
| |
| * UIProcess/API/C/win/WKView.cpp: |
| (WKViewExecuteCommand): Added. |
| * UIProcess/API/C/win/WKView.h: Added WKViewExecuteCommand() and comment block with WebCore EditorCommand strings. |
| |
| 2011-03-03 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Use CFNetwork Sessions API. |
| https://bugs.webkit.org/show_bug.cgi?id=55435 |
| |
| Set the Private Browsing Storage Session on requests when Private Browsing is enabled. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| Support using WKCopyRequestWithStorageSession in WebCore. |
| |
| 2011-03-03 Adam Roben <aroben@apple.com> |
| |
| Don't try to paint outside the page's bounds |
| |
| When the page is resized smaller, we would allocate a ShareableBitmap at the old, larger |
| size, even though we only needed to paint at the new, smaller size. |
| |
| The assertion added in this patch will fire during the WebKit2/ResizeViewWhileHidden API |
| test if this fix gets broken in the future. |
| |
| Fixes <http://webkit.org/b/55715> DrawingAreaImpl allocates more memory than necessary when |
| the page is resized smaller |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::updateBackingStoreState): Update our dirty region even if painting |
| is suspended (but still refrain from updating it when in accelerated compositing mode). |
| Rather than unite our existing dirty region with the page's new bounds, overwrite our dirty |
| region with the page's new bounds. This prevents us from accumulating a dirty region that is |
| larger than the page in the case where the page is being resized smaller. |
| (WebKit::DrawingAreaImpl::display): Added an assertion that we're not trying to paint |
| outside of the page's bounds. |
| |
| 2011-03-03 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| WebProcess is calling CFURLCacheRemoveAllCachedResponses when loading, results in origin-load for all resources |
| https://bugs.webkit.org/show_bug.cgi?id=55701 |
| <rdar://problem/9074017> |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): Initialize cache-clearing |
| flag parameters to false. |
| (WebKit::WebProcessCreationParameters::encode): Serialize them properly. |
| (WebKit::WebProcessCreationParameters::decode): And deserialize. |
| |
| 2011-03-03 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| REGRESSION (WebKit2): Tab keys no longer observe Full Keyboard Access |
| https://bugs.webkit.org/show_bug.cgi?id=55633 |
| <rdar://problem/8963023> |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/mac/FullKeyboardAccessWatcher.h: Added. |
| * WebProcess/mac/FullKeyboardAccessWatcher.mm: Added. |
| (-[FullKeyboardAccessWatcher retrieveKeyboardUIModeFromPreferences:]): |
| (-[FullKeyboardAccessWatcher init]): |
| (+[FullKeyboardAccessWatcher fullKeyboardAccessEnabled]): |
| Get the current state of full keyboard access, listening for change notifications. |
| |
| * WebProcess/WebProcess.h: Added fullKeyboardAccessEnabled(). |
| |
| * WebProcess/WebProcess.cpp: (WebKit::WebProcess::fullKeyboardAccessEnabled): |
| WebKit1 also doesn't implement this on platforms other than Mac. |
| |
| * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::fullKeyboardAccessEnabled): |
| Just ask FullKeyboardAccessWatcher. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::keyboardUIMode): |
| * WebProcess/WebCoreSupport/WebChromeClient.h: |
| Added keyboardUIMode(), removed tabsToLinks(). |
| |
| * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::keyboardUIMode): |
| * WebProcess/WebPage/WebPage.h: |
| Generate keyboard UI mode from tabToLinks preference and current state of FKA. |
| |
| 2011-03-03 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Give the Bundle's policy client the option of deciding the policy |
| https://bugs.webkit.org/show_bug.cgi?id=55699 |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.h: |
| Add WKBundlePagePolicyAction enum and make it the return value of |
| the WKBundlePagePolicyClient functions. |
| |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp: |
| (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction): |
| (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction): |
| (WebKit::InjectedBundlePagePolicyClient::decidePolicyForMIMEType): |
| * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h: |
| Pass the return value back to the caller. For unimplemented functions, return WKBundlePagePolicyActionPassThrough. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForMIMEType): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| Call the policy function early if the bundle handles it. |
| |
| 2011-03-02 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Rest of WebKit2: Need a way to send notifications to client when cookies change |
| https://bugs.webkit.org/show_bug.cgi?id=55427 |
| <rdar://problem/9056027> |
| |
| This patch adds the communication from the WebProcess <-> UIProcess about starting/stopping |
| listening for cookies changing, and adds a mechanism for the WebProcess to notify the UIProcess |
| when the cookies have changed. The WebProcess sends a message to the UIProcess when the cookies |
| change, and the UIProcess passes this along to the WebCookieManagerProxyClient. |
| |
| * UIProcess/API/C/WKCookieManager.cpp: |
| (WKCookieManagerSetClient): Call through to WebCookieManagerProxy. |
| (WKCookieManagerStartObservingCookieChanges): Ditto. |
| (WKCookieManagerStopObservingCookieChanges): Ditto. |
| |
| * UIProcess/API/C/WKCookieManager.h: Add new functions and a WKCookieManagerClient |
| which is responsible for cookiesDidChange. |
| |
| * UIProcess/WebCookieManagerProxy.cpp: |
| (WebKit::WebCookieManagerProxy::initializeClient): |
| (WebKit::WebCookieManagerProxy::startObservingCookieChanges): Send the message down to the web process. |
| (WebKit::WebCookieManagerProxy::stopObservingCookieChanges): Ditto. |
| (WebKit::WebCookieManagerProxy::cookiesDidChange): Tell the WKCookieManagerClient the cookies were |
| modified. |
| * UIProcess/WebCookieManagerProxy.h: |
| * UIProcess/WebCookieManagerProxy.messages.in: Add new messages. |
| |
| * UIProcess/WebCookieManagerProxyClient.cpp: Added. |
| (WebKit::WebCookieManagerProxyClient::cookiesDidChange): Calls through to the client saying that |
| cookies changed. |
| * UIProcess/WebCookieManagerProxyClient.h: Added. |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::startObservingCookieChanges): Call through to WebCore::startObservingCookieChanges |
| (on platforms that support it). |
| (WebKit::WebCookieManager::stopObservingCookieChanges): Ditto (for stopObservingCookieChanges). |
| (WebKit::WebCookieManager::dispatchDidModifyCookies): Send a message to the UI process that cookies changed. |
| * WebProcess/Cookies/WebCookieManager.h: |
| * WebProcess/Cookies/WebCookieManager.messages.in: |
| |
| Add new files. |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * GNUmakefile.am: |
| * win/WebKit2.vcproj: |
| |
| 2011-03-03 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Remove CanRunBeforeUnloadConfirmPanel sync message |
| https://bugs.webkit.org/show_bug.cgi?id=55689 |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| Encode and decode canRunBeforeUnloadConfirmPanel, as well as canRunModal, which wasn't |
| being encoded/decoded. |
| |
| * Shared/WebPageCreationParameters.h: |
| Add canRunBeforeUnloadConfirmPanel. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::initializeUIClient): |
| Send SetCanRunBeforeUnloadConfirmPanel and SetCanRunModal messages. |
| |
| (WebKit::WebPageProxy::creationParameters): |
| Initialize parameters.canRunBeforeUnloadConfirmPanel. |
| |
| * UIProcess/WebPageProxy.messages.in: |
| Remove CanRunBeforeUnloadConfirmPanel message. |
| |
| * UIProcess/WebUIClient.cpp: |
| (WebKit::WebUIClient::canRunBeforeUnloadConfirmPanel): |
| * UIProcess/WebUIClient.h: |
| Make canRunBeforeUnloadConfirmPanel const. |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::WebChromeClient::canRunBeforeUnloadConfirmPanel): |
| Ask the web page instead of sending a synchronous message. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Initialize m_canRunBeforeUnloadConfirmPanel. |
| |
| * WebProcess/WebPage/WebPage.h: |
| (WebKit::WebPage::canRunBeforeUnloadConfirmPanel): |
| (WebKit::WebPage::setCanRunBeforeUnloadConfirmPanel): |
| Add getter and setter for m_canRunBeforeUnloadConfirmPanel. |
| |
| (WebKit::WebPage::setCanRunModal): |
| Add setter for m_canRunModal. |
| |
| * WebProcess/WebPage/WebPage.messages.in: |
| Add SetCanRunBeforeUnloadConfirmPanel and SetCanRunModal messages. |
| |
| 2011-03-03 Adam Roben <aroben@apple.com> |
| |
| Create the CFBundleRef for WebKit.dll on Windows if needed |
| |
| WebKit part of <http://webkit.org/b/55672> <rdar://problem/9080867> All inspector tests time |
| out or crash on Windows 7 Release (WebKit2 Tests) |
| |
| Reviewed by Darin Adler. |
| |
| * Shared/win/WebKitBundle.cpp: Added. |
| (WebKit::createWebKitBundle): Returns a pre-existing bundle, if possible, otherwise creates |
| and returns a new bundle. |
| (WebKit::webKitBundle): Creates and caches a bundle, and returns it. |
| |
| * Shared/win/WebKitBundle.h: Added. |
| |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::inspectorPageURL): |
| * WebProcess/WebPage/win/WebInspectorWin.cpp: |
| (WebKit::WebInspector::localizedStringsURL): |
| Changed to use webKitBundle() to ensure that the bundle has been created. |
| |
| * win/WebKit2.vcproj: Added new files. |
| |
| 2011-03-03 Peter Kasting <pkasting@google.com> |
| |
| Reviewed by James Robinson. |
| |
| Drop redundant "Windows; " from the Windows-specific User Agent string. |
| https://bugs.webkit.org/show_bug.cgi?id=54567 |
| |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| 2011-03-02 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r80188. |
| http://trac.webkit.org/changeset/80188 |
| https://bugs.webkit.org/show_bug.cgi?id=55647 |
| |
| Broke the WebKit API tests. (Requested by xenon on #webkit). |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageRunJavaScriptInMainFrame): |
| (callRunJavaScriptBlockAndRelease): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): |
| (WebKit::WebPageProxy::processDidCrash): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): |
| |
| 2011-03-02 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Rename WebKit::WebPage::validateMenuItem() to validateCommand() |
| https://bugs.webkit.org/show_bug.cgi?id=55636 |
| |
| Since this method can validate more than menu items, validateCommand() is a better name. Also rename various messages and WebKit::WebPageProxy::didValidateMenuItem() to didValidateCommand(). |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView validateUserInterfaceItem:]): Call validateCommand() instead of validateMenuItem(). |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::validateCommand): Renamed from validateMenuItem(). |
| (WebKit::WebPageProxy::didValidateCommand): Renamed from didValidateMenuItem(). |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: Renamed DidValidateMenuItem to DidValidateCommand. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::validateCommand): Renamed from validateMenuItem(). |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: Renamed ValidateMenuItem to ValidateCommand. |
| |
| 2011-03-02 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WKPageSetMemoryCacheClientCallsEnabled doesn't persist if web process crashes |
| https://bugs.webkit.org/show_bug.cgi?id=55635 |
| |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| Encode and decode areMemoryCacheClientCallsEnabled. |
| |
| * Shared/WebPageCreationParameters.h: |
| Add areMemoryCacheClientCallsEnabled member variable. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| Initialize m_areMemoryCacheClientCallsEnabled. |
| |
| (WebKit::WebPageProxy::setMemoryCacheClientCallsEnabled): |
| Update m_areMemoryCacheClientCallsEnabled. Send a message if necessary. |
| |
| (WebKit::WebPageProxy::creationParameters): |
| Set areMemoryCacheClientCallsEnabled. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| Call WebPage::setMemoryCacheMessagesEnabled. |
| |
| 2011-03-02 Timothy Hatcher <timothy@apple.com> |
| |
| Make the runJavaScriptInMainFrame callback send a WKSerializedScriptValueRef. |
| |
| https://webkit.org/b/55623 |
| |
| Reviewed by Darin Adler. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageRunJavaScriptInMainFrame): Use ScriptValueCallback. |
| (callRunJavaScriptBlockAndRelease): Use WKSerializedScriptValueRef. |
| * UIProcess/API/C/WKPage.h: Use WKSerializedScriptValueRef. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::close): Call invalidateCallbackMap for m_scriptValueCallbacks. |
| (WebKit::WebPageProxy::runJavaScriptInMainFrame): Take a ScriptValueCallback. |
| (WebKit::WebPageProxy::scriptValueCallback): Added. Create a WebSerializedScriptValue |
| from the DataReference before calling the callback. |
| (WebKit::WebPageProxy::processDidCrash): Call invalidateCallbackMap for m_scriptValueCallbacks. |
| * UIProcess/WebPageProxy.h: Added ScriptValueCallback and m_scriptValueCallbacks. |
| * UIProcess/WebPageProxy.messages.in: Added ScriptValueCallback. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::runJavaScriptInMainFrame): Create a DataReference from a WebCore::SerializedScriptValue. |
| And use ScriptValueCallback to send the message back. |
| |
| 2011-03-02 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: Use CFNetwork Sessions API. |
| https://bugs.webkit.org/show_bug.cgi?id=55435 |
| |
| Add the ability to create a Private Browsing Storage Session. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| Encode the UI Process bundle identifier. |
| (WebKit::WebProcessCreationParameters::decode): |
| Decode the UI Process bundle identifier. |
| * Shared/WebProcessCreationParameters.h: |
| |
| * UIProcess/mac/WebContextMac.mm: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Grab the bundle identifier and use it to set the WebProcessCreationParameter. |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Ditto. |
| |
| * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: |
| (InitWebCoreSystemInterface): |
| Support using the wkCreatePrivateStorageSession WKSI in WebCore. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| Set the base for the Private Browsing Storage Session identifier to be the bundle identifier |
| from the UI Process so that WebKit1 would create a Private Browsing Storage Session with the |
| same identifier as WebKit2. |
| |
| 2011-03-01 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Part of WebKit2: Need a way to send notifications to client when cookies change |
| https://bugs.webkit.org/show_bug.cgi?id=55427 |
| <rdar://problem/9056027> |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::dispatchDidModifyCookies): Add a stub with a FIXME to send a |
| message to the UI process. |
| |
| * WebProcess/Cookies/WebCookieManager.h: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::createCookiesStrategy): |
| (WebKit::WebPlatformStrategies::notifyCookiesChanged): Call WebCookieManager::dispatchDidModifyCookies. |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2011-03-02 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt][WK2] generate-forwarding-headers.pl should generate paths with framework names |
| https://bugs.webkit.org/show_bug.cgi?id=55478 |
| |
| On case insensitive systems the generated forwarding headers cause build problems. |
| |
| * Scripts/generate-forwarding-headers.pl: The generated header should |
| also contain the framework name. |
| |
| 2011-03-01 Jeff Miller <jeffm@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Expose some selection state fields in WKPage |
| https://bugs.webkit.org/show_bug.cgi?id=55541 |
| |
| Added WKPageCanDelete(), WKPageHasSelectedRange(), and WKPageIsContentEditable() so we can enable some |
| Edit menu items properly on Windows when using WebKit2. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageCanDelete): Added. |
| (WKPageHasSelectedRange): Added. |
| (WKPageIsContentEditable): Added. |
| * UIProcess/API/C/WKPage.h: Added new functions. |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::canDelete): Added. |
| (WebKit::WebPageProxy::hasSelectedRange): Added. |
| (WebKit::WebPageProxy::isContentEditable): Added. |
| |
| 2011-03-01 Mark Rowe <mrowe@apple.com> |
| |
| Hide the typeinfo name symbols for std::exception and std::bad_alloc too. |
| |
| * Configurations/Base.xcconfig: |
| |
| 2011-03-01 Mark Rowe <mrowe@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add verification scripts to WebKit2 project and fix the issues they reveal. |
| |
| * Configurations/Base.xcconfig: Add linker flags to prevent C++ standard |
| library functions from being exported as weak externals. |
| * Configurations/WebKit2.xcconfig: Inherit linker flags from the project level. |
| * Shared/WebContextMenuItem.cpp: |
| (WebKit::WebContextMenuItem::separatorItem): Use DEFINE_STATIC_LOCAL. |
| * UIProcess/WebPageGroup.cpp: |
| (WebKit::webPageGroupMap): Ditto. |
| * WebKit2.xcodeproj/project.pbxproj: Don't copy .in files in to the framework. |
| Run verification scripts at the appropriate times. |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::didBeginEditing): Use DEFINE_STATIC_LOCAL. |
| (WebKit::WebEditorClient::respondToChangedContents): Ditto. |
| (WebKit::WebEditorClient::respondToChangedSelection): Ditto. |
| (WebKit::WebEditorClient::didEndEditing): Ditto. |
| * WebProcess/WebPage/WebBackForwardListProxy.cpp: |
| (WebKit::idToHistoryItemMap): Ditto. |
| (WebKit::historyItemToIDMap): Ditto. |
| |
| 2011-03-01 Joseph Pecoraro <joepeck@webkit.org> |
| |
| Unreviewed. Roll out r80068 and r80073 due to breaking WebKit2 Qt port. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::viewportAttributesForSize): |
| |
| 2011-03-01 Joseph Pecoraro <joepeck@webkit.org> |
| |
| Unreviewed, missed updating a call to WebCore::computeViewportAttributes |
| who's prototype changed. |
| |
| Viewport Warning/Error Messages Are Now Inaccurate |
| https://bugs.webkit.org/show_bug.cgi?id=53707 |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPage::viewportAttributesForSize): pass in a value for the document argument. |
| |
| 2011-03-01 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WKPluginSiteDataManagerClearAllSiteData is not working |
| https://bugs.webkit.org/show_bug.cgi?id=55528 |
| <rdar://problem/9071823> |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::tryGetSitesWithData): |
| Remove version checks, checking that the function pointer is not null is enough. |
| |
| (WebKit::NetscapePluginModule::tryClearSiteData): |
| Remove version checks, checking that the function pointer is not null is enough. |
| Also, correctly convert a null String to a null CString. |
| |
| 2011-03-01 Adam Roben <aroben@apple.com> |
| |
| Incorporate a review comment I missed in r80051 |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: Clarified error message. |
| |
| 2011-03-01 Adam Roben <aroben@apple.com> |
| |
| Make the PLUGIN_ARCHITECTURE() macro work with MSVC |
| |
| Fixes <http://webkit.org/b/55513> <rdar://problem/9069189> REGRESSION (r79925): Lots of |
| plugins tests crashing in NetscapePlugin::initialize on Windows |
| |
| Reviewed by Anders Carlsson. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: Added a compile-time check to make sure |
| PLUGIN_ARCHITECTURE() is defined for some platform. |
| |
| * config.h: Removed the parentheses from the use of "defined" in the PLUGIN_ARCHITECTURE() |
| macro. This matches PLATFORM(), OS(), etc., and makes the macro work on Windows. Also |
| replaced the nonsense OS(WIN) with OS(WINDOWS). |
| |
| * win/WebKit2.vcproj: Added config.h for editing convenience. Let VS do its thang. |
| |
| 2011-03-01 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Timothy Hatcher. |
| |
| WebKit2 needs to be made localizable |
| https://bugs.webkit.org/show_bug.cgi?id=55483 |
| |
| * PluginProcess/mac/PluginProcessMainMac.mm: |
| * WebProcess/mac/WebProcessMainMac.mm: |
| Set the default localization from the passed in parameter. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| Add the preferred localization as a parameter when launching processes |
| so that they can set their localization to match the launching app. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| Use WebCore's localizedString function on the mac, to actually localize |
| these strings. |
| |
| (WebKit::WebPlatformStrategies::imageTitle): |
| Switch to using replace, instead of concatenation, to give localizers a chance |
| to rearrange the wording. |
| |
| 2011-03-01 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| [Qt][WK2] Plugin initialization |
| https://bugs.webkit.org/show_bug.cgi?id=48127 |
| |
| Apply the quirks that are necessary for the flash plugin |
| to not crash on X11. |
| |
| * Platform/qt/ModuleQt.cpp: |
| (WebKit::Module::load): Use the ResolveAllSymbols hint as we do in WebCore. |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::tryLoad): Call applyX11QuirksBeforeLoad |
| if PLUGIN_ARCHITECTURE is X11. |
| * Shared/Plugins/Netscape/NetscapePluginModule.h: |
| * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp: |
| (WebKit::initializeGTK): The same hack that we do in WebCore. |
| Call gtk_init because flash don't do it for itself. |
| (WebKit::NetscapePluginModule::applyX11QuirksBeforeLoad): Added for X11. |
| Do the hacks that we need to do before calling NP_Initialize on the |
| flash plugin to save it form crashing. |
| * Shared/Plugins/PluginQuirks.h: Use PLUGIN_ARCHITECTURE macros. |
| Added RequiresGTKToolKit quirk for X11. |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::NPN_GetValue): Handle the RequiresGTKToolKit quirk on X11. |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| (WebKit::NetscapePlugin::quirks): Added getter for the PluginModule's |
| quirks to be available in NPN_GetValue. |
| |
| 2011-03-01 Adam Roben <aroben@apple.com> |
| |
| Convert seconds to milliseconds before calling ::SetTimer |
| |
| Fixes <http://webkit.org/b/55417> <rdar://problem/9065287> RunLoop::Timer fires 1000x too |
| early on Windows |
| |
| Reviewed by Anders Carlsson. |
| |
| * Platform/win/RunLoopWin.cpp: |
| (RunLoop::TimerBase::start): Convert the timeout interval to milliseconds, since that's what |
| ::SetTimer expects. |
| |
| 2011-03-01 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [Qt] Clean up the project files and move common options to WebKit.pri. |
| |
| * WebKit2.pro: Deduplicate options. |
| |
| 2011-03-01 Juha Savolainen <juha.savolainen@weego.fi> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] WebKit2 needs to support font size changing and getting default font size |
| https://bugs.webkit.org/show_bug.cgi?id=53671 |
| |
| Added new enum for font size type and added methods to set and get default font sizes. |
| |
| * UIProcess/API/qt/qwkpreferences.cpp: |
| (QWKPreferences::setFontSize): Added. |
| (QWKPreferences::fontSize): Added. |
| * UIProcess/API/qt/qwkpreferences.h: |
| |
| 2011-02-28 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Adam Roben and Gavin Barraclough. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=54898 |
| InjectedBundleNodeHandle dies too early in WKBundleHitTestResultGetNodeHandle |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp: |
| (WKBundleHitTestResultCopyNodeHandle): |
| Instead of .get(), call .release.leakRef() like other functions that return WKBundleNodeHandleRef. |
| * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h: |
| Renamed from "get" to "copy", because it leaksRef. |
| |
| 2011-02-28 Alice Liu <alice.liu@apple.com> |
| |
| Reviewed by Gavin Barraclough. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55442 |
| Webarchives don't contain subframe content |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::getWebArchiveOfFrame): |
| Pass the frame's document instead of just the frame, to use a different LegacyWebArchive::create function. |
| |
| 2011-02-28 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt][WK2] Add a way to test the WebKit 2 APIs |
| https://bugs.webkit.org/show_bug.cgi?id=55408 |
| |
| Add an initial test for the WebKit 2 APIs of Qt. |
| |
| * UIProcess/API/qt/tests/html/basic_page.html: Added. |
| * UIProcess/API/qt/tests/qgraphicswkview/qgraphicswkview.pro: Added. |
| * UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp: Added. |
| (View::View): |
| (View::resizeEvent): |
| (tst_QGraphicsWKView::init): |
| (tst_QGraphicsWKView::cleanup): |
| (tst_QGraphicsWKView::loadEmptyPage): |
| * UIProcess/API/qt/tests/tests.pri: Added. |
| * UIProcess/API/qt/tests/tests.pro: Added. |
| * UIProcess/API/qt/tests/util.h: Added. |
| (waitForSignal): |
| |
| 2011-02-28 Anders Carlsson <andersca@apple.com> |
| |
| Fix clang build. |
| |
| * UIProcess/API/mac/FindIndicatorWindow.mm: |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::deprecatedUpdate): |
| (WebKit::ChunkedUpdateDrawingAreaProxy::didReceiveMessage): |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: |
| (WebKit::ChunkedUpdateDrawingArea::deprecatedResumePainting): |
| (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage): |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: |
| |
| 2011-02-28 Dan Bernstein <mitz@apple.com> |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| Do not copy config.h into WebKit2. |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| 2011-02-28 Dan Bernstein <mitz@apple.com> |
| |
| LLVM Compiler build fix. |
| |
| * Scripts/webkit2/messages.py: |
| * UIProcess/WebPageProxy.h: |
| |
| 2011-02-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein, Sam Weinig, Alexey Proskuryakov and Darin Adler. |
| |
| Open PDF in Preview doesn't work |
| https://bugs.webkit.org/show_bug.cgi?id=55400 |
| <rdar://problem/8750353> |
| |
| * UIProcess/API/mac/PDFViewController.mm: |
| (-[WKPDFView initWithFrame:PDFViewController:]): |
| Set the WKPDFView as the delegate of itself. |
| |
| (-[WKPDFView PDFViewOpenPDFInNativeApplication:]): |
| Call PDFViewController::openPDFInFinder. |
| |
| (WebKit::PDFViewController::PDFViewController): |
| Initialize m_hasWrittenPDFToDisk to false. |
| |
| (WebKit::PDFViewController::openPDFInFinder): |
| Write the PDF to disk if needed and then open it using -[NSWorkspace openFile:]. |
| |
| (WebKit::temporaryPDFDirectoryPath): |
| Create a directory to put PDFs in. |
| |
| (WebKit::PDFViewController::pathToPDFOnDisk): |
| Return a path to a (non-existent) file in the temporary PDF directory. |
| |
| 2011-02-28 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Frequent crashes in CFURLCache code on Snow Leopard |
| https://bugs.webkit.org/show_bug.cgi?id=55412 |
| <rdar://problem/9063922> |
| |
| CString is evil, it has two lengths which can be different - specifically, fileSystemRepresentation() |
| creates a string with maximum possible buffer size. A path with garbage at the end confused |
| CFURLCache into corrupting its data structures. |
| |
| * Shared/WebProcessCreationParameters.h: Added a FIXME about merging Mac and Windows code. |
| This problem wouldn't have occured if we didn't use CString in the first place. |
| |
| * UIProcess/mac/WebContextMac.mm: (WebKit::WebContext::platformInitializeWebProcess): |
| Added an assertion matching Windows behavior (seems likely that NSURLCache also wouldn't |
| have liked trailing slash). |
| |
| * UIProcess/win/WebContextWin.cpp: (WebKit::WebContext::platformInitializeWebProcess): |
| Made slash removal conditional for robustness. |
| |
| * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::platformInitializeWebProcess): |
| Use actual string length, not CString::length(). |
| |
| 2011-02-28 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| [Qt][WK2] Plugin initialization |
| https://bugs.webkit.org/show_bug.cgi?id=48127 |
| |
| Specialize the way of initializing the plugin for X11. |
| Introduce PLUGIN_ARCHITECTURE macros to allow code sharing |
| across platforms. |
| |
| * Shared/Plugins/Netscape/NetscapePluginModule.cpp: |
| (WebKit::NetscapePluginModule::tryLoad): |
| * config.h: |
| |
| 2011-02-28 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Brady Eidson. |
| |
| WK2 Context Menus - Implement LookUpInDictionary |
| https://bugs.webkit.org/show_bug.cgi?id=55405 |
| |
| * Shared/DictionaryPopupInfo.cpp: |
| (WebKit::DictionaryPopupInfo::encode): |
| (WebKit::DictionaryPopupInfo::decode): |
| * Shared/DictionaryPopupInfo.h: |
| Add type to differentiate between HotKey and ContextMenu triggered |
| dictionary popups. This is necessary since HotKey triggered ones want |
| to override the style to always be overlay. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Only force the overlay style for HotKey triggered dictionary lookups. |
| |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| (WebKit::WebPage::performDictionaryLookupForRange): |
| Factor out shared functionality into performDictionaryLookupForRange. |
| |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| (WebKit::WebContextMenuClient::lookUpInDictionary): |
| Get selected range and call newly factored out performDictionaryLookupForRange. |
| |
| 2011-02-28 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| PDFViewController should hold a reference to the PDF data |
| https://bugs.webkit.org/show_bug.cgi?id=55394 |
| |
| * UIProcess/API/mac/PDFViewController.h: |
| * UIProcess/API/mac/PDFViewController.mm: |
| (WebKit::PDFViewController::setPDFDocumentData): |
| |
| 2011-02-28 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Size of text in popup menu doesn't match size of text in <select> itself in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=48234 |
| |
| * Shared/TextInfo.cpp: Removed. |
| * Shared/TextInfo.h: Removed. |
| Replace this with the more appropriately DictionaryPopupInfo. |
| |
| * Shared/DictionaryPopupInfo.cpp: Copied from Source/WebKit2/Shared/TextInfo.cpp. |
| (WebKit::DictionaryPopupInfo::encode): |
| (WebKit::DictionaryPopupInfo::decode): |
| * Shared/DictionaryPopupInfo.h: Copied from Source/WebKit2/Shared/TextInfo.h. |
| (WebKit::DictionaryPopupInfo::DictionaryPopupInfo): |
| Replace individual font related fields with FontInfo. |
| |
| * Shared/FontInfo.cpp: Added. |
| (WebKit::FontInfo::FontInfo): |
| (WebKit::FontInfo::encode): |
| (WebKit::FontInfo::decode): |
| * Shared/FontInfo.h: Added. |
| Add class to encapsulate passing a font description over the wire. |
| |
| * Shared/PlatformPopupMenuData.cpp: |
| (WebKit::PlatformPopupMenuData::encode): |
| (WebKit::PlatformPopupMenuData::decode): |
| * Shared/PlatformPopupMenuData.h: |
| Add FontInfo as extra data for the Mac. |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| * UIProcess/PageClient.h: |
| Add scaleFactor and use it to construct a font at the right size. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::showPopupMenu): |
| (WebKit::WebPageProxy::didPerformDictionaryLookup): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/WebPopupMenuProxy.h: |
| * UIProcess/mac/WebPopupMenuProxyMac.h: |
| (WebKit::WebPopupMenuProxyMac::create): |
| * UIProcess/mac/WebPopupMenuProxyMac.mm: |
| (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac): |
| (WebKit::WebPopupMenuProxyMac::populate): |
| (WebKit::WebPopupMenuProxyMac::showPopupMenu): |
| * UIProcess/qt/WebPopupMenuProxyQt.cpp: |
| (WebKit::WebPopupMenuProxyQt::showPopupMenu): |
| * UIProcess/qt/WebPopupMenuProxyQt.h: |
| * UIProcess/win/WebPopupMenuProxyWin.cpp: |
| (WebKit::WebPopupMenuProxyWin::showPopupMenu): |
| * UIProcess/win/WebPopupMenuProxyWin.h: |
| * WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm: |
| (WebKit::WebPopupMenu::setUpPlatformData): |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| Pass scale factor through and rename TextInfo -> DictionaryPopupInfo. |
| |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| Add new files. |
| |
| 2011-02-28 Adam Roben <aroben@apple.com> |
| |
| One more rename as a followup to r79868 |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| * UIProcess/DrawingAreaProxyImpl.h: |
| Rename stateDidChange to backingStoreStateDidChange. |
| |
| 2011-02-28 Adam Roben <aroben@apple.com> |
| |
| Rename DrawingArea[Proxy]Impl's "state ID" concept to "backing store state ID" |
| |
| Rubber-stamped (and suggested) by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxy.h: |
| * UIProcess/DrawingAreaProxy.messages.in: |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| Perform the rename. |
| |
| 2011-02-28 Adam Roben <aroben@apple.com> |
| |
| Decouple state changes from sending of UpdateState messages in DrawingAreaProxyImpl |
| |
| The new DrawingAreaProxyImpl::stateDidChange function should be called whenever |
| DrawingAreaProxyImpl's state changes in a way that will require allocating a new backing |
| store. (Currently, this is just when the size changes.) This function will sometimes (but |
| not always, as when we're waiting for a DidUpdateState message) send an UpdateState message |
| to the web process. This means it's now possible for the state IDs sent in consecutive |
| UpdateState messages to increase by more than one, but that's OK. |
| |
| This should cause no change in behavior. |
| |
| Fixes <http://webkit.org/b/55382> DrawingAreaProxyImpl's state ID should be updated whenever |
| its state changes, not just when we send an UpdateState message |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Updated for rename. |
| (WebKit::DrawingAreaProxyImpl::sizeDidChange): Changed to call stateDidChange. |
| (WebKit::DrawingAreaProxyImpl::didUpdateState): Updated for rename, and changed to call |
| sendUpdateState whenever our state has changed for any reason since the last UpdateState |
| message was sent. |
| (WebKit::DrawingAreaProxyImpl::stateDidChange): Added. Increments m_nextStateID and calls |
| through to sendUpdateState. |
| (WebKit::DrawingAreaProxyImpl::sendUpdateState): Updated for rename, moved incrementing of |
| the state ID we send to the web process from here to stateDidChange, and added an assertion. |
| |
| * UIProcess/DrawingAreaProxyImpl.h: Renamed m_requestedStateID to m_nextStateID, and updated |
| the comment explaining its meaning. |
| |
| 2011-02-28 Adam Roben <aroben@apple.com> |
| |
| Pass the right dirty rect to Plugin::paint |
| |
| A typo in r79040 broke this. Much of this patch is just support for testing the fix. |
| |
| Fixes <http://webkit.org/b/55365> <rdar://problem/9031089> REGRESSION (r79040): WebKit2: |
| Large portions of pages with plugins paint black |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::paint): Pass the dirty rect we calculated earlier to Plugin::paint, |
| rather than just passing along the dirty rect that was passed into this function. This is |
| the bug fix. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: |
| (WKBundlePageForceRepaint): |
| * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: |
| Added new SPI. Just calls through to WebPage::forceRepaintWithoutCallback. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::forceRepaintWithoutCallback): Moved code to force a repaint here... |
| (WebKit::WebPage::forceRepaint): ...from here. |
| |
| * WebProcess/WebPage/WebPage.h: Added forceRepaintWithoutCallback. |
| |
| 2011-02-27 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Force dictionary popup to use overlay type |
| <rdar://problem/9052483> |
| https://bugs.webkit.org/show_bug.cgi?id=55337 |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): As this is only |
| used for the hot key version of the dictionary popup, force the overlay |
| style. |
| |
| 2011-02-27 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] [WK2] QGraphicsWKView::showContextMenu() should be public |
| https://bugs.webkit.org/show_bug.cgi?id=55330 |
| |
| Move QGraphicsWKView::showContextMenu() to the public API. Add documentation |
| on its use. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| * UIProcess/API/qt/qgraphicswkview.h: |
| |
| 2011-02-27 Alejandro G. Castro <alex@igalia.com> |
| |
| Unreviewed, fixed GTK compilation after r79806. |
| |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::didFinishLoadingDataForCustomRepresentation): |
| * UIProcess/gtk/WebView.h: |
| |
| 2011-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Asynchronous response to FramePolicyListener is not finishing the load |
| https://bugs.webkit.org/show_bug.cgi?id=55305 |
| <rdar://problem/9044356> |
| |
| Always initialize the receivedPolicyAction reply parameter. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| (WebKit::WebPageProxy::decidePolicyForMIMEType): |
| |
| 2011-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| DidFinishLoadingDataForCustomRepresentation should pass along the suggested filename |
| https://bugs.webkit.org/show_bug.cgi?id=55304 |
| |
| * UIProcess/API/mac/PDFViewController.h: |
| * UIProcess/API/mac/PDFViewController.mm: |
| (WebKit::PDFViewController::setPDFDocumentData): |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation): |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _didFinishLoadingDataForCustomRepresentationWithSuggestedFilename:dataReference:CoreIPC::]): |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::didFinishLoadingDataForCustomRepresentation): |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didFinishLoadingDataForCustomRepresentation): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/win/WebView.cpp: |
| (WebKit::WebView::didFinishLoadingDataForCustomRepresentation): |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::finishedLoading): |
| |
| 2011-02-26 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Oliver Hunt. |
| |
| DrawingArea should not be reference counted |
| https://bugs.webkit.org/show_bug.cgi?id=55284 |
| |
| * Shared/DrawingAreaInfo.h: |
| * Shared/WebPageCreationParameters.cpp: |
| (WebKit::WebPageCreationParameters::encode): |
| (WebKit::WebPageCreationParameters::decode): |
| * Shared/WebPageCreationParameters.h: |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp: |
| (WebKit::ChunkedUpdateDrawingAreaProxy::ChunkedUpdateDrawingAreaProxy): |
| (WebKit::ChunkedUpdateDrawingAreaProxy::setPageIsVisible): |
| (WebKit::ChunkedUpdateDrawingAreaProxy::update): |
| (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize): |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: |
| * UIProcess/DrawingAreaProxy.cpp: |
| (WebKit::DrawingAreaProxy::DrawingAreaProxy): |
| * UIProcess/DrawingAreaProxy.h: |
| (WebKit::DrawingAreaProxy::type): |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::TiledDrawingAreaProxy): |
| * UIProcess/TiledDrawingAreaProxy.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::didReceiveSyncMessage): |
| (WebKit::WebPageProxy::creationParameters): |
| * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.cpp: |
| (WebKit::ChunkedUpdateDrawingArea::ChunkedUpdateDrawingArea): |
| (WebKit::ChunkedUpdateDrawingArea::display): |
| (WebKit::ChunkedUpdateDrawingArea::setSize): |
| (WebKit::ChunkedUpdateDrawingArea::didReceiveMessage): |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): |
| (WebKit::DrawingArea::DrawingArea): |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::create): |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/TiledDrawingArea.cpp: |
| (WebKit::TiledDrawingArea::TiledDrawingArea): |
| * WebProcess/WebPage/TiledDrawingArea.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::drawRect): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-02-26 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Reviewed by Pavel Feldman. |
| |
| DumpRenderTree should reset frame opener between tests. |
| https://bugs.webkit.org/show_bug.cgi?id=54874 |
| |
| Added clearOpener method to WKBundleWebFramePrivate. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameClearOpener): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| |
| 2011-02-26 Yael Aharon <yael.aharon@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] Fix the focus in MiniBrowser. |
| https://bugs.webkit.org/show_bug.cgi?id=55288 |
| |
| Implement basic functionality for focus in QWKPagePrivate. |
| |
| * UIProcess/API/qt/qwkpage.cpp: |
| (QWKPagePrivate::isViewWindowActive): |
| (QWKPagePrivate::isViewFocused): |
| (QWKPagePrivate::isViewVisible): |
| |
| 2011-02-26 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r79764. |
| http://trac.webkit.org/changeset/79764 |
| https://bugs.webkit.org/show_bug.cgi?id=55295 |
| |
| "broke Chromium builds" (Requested by rniwa on #webkit). |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| |
| 2011-02-26 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Reviewed by Pavel Feldman. |
| |
| DumpRenderTree should reset frame opener between tests. |
| https://bugs.webkit.org/show_bug.cgi?id=54874 |
| |
| Added clearOpener method to WKBundleWebFramePrivate. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameClearOpener): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| |
| 2011-02-25 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Plug-in process crashes when using GuardMalloc |
| https://bugs.webkit.org/show_bug.cgi?id=55279 |
| <rdar://problem/9044618> |
| |
| Update m_environmentPointer after copying the environment variables. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::EnvironmentVariables::copyEnvironmentVariables): |
| |
| 2011-02-25 Darin Adler <darin@apple.com> |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): Fixed backwards logic from last change. |
| |
| 2011-02-25 Darin Adler <darin@apple.com> |
| |
| Reviewed by Mark Rowe. |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::ProcessLauncher::launchProcess): Fixed performance problem in production |
| builds by only setting DYLD_FRAMEWORK_PATH in engineering configurations. |
| |
| 2011-02-25 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| <rdar://problem/8036034> WebKit2 should work even if DYLD_FRAMEWORK_PATH is not set |
| |
| * UIProcess/Launcher/mac/ProcessLauncherMac.mm: |
| (WebKit::EnvironmentVariables::~EnvironmentVariables): Use fastFree, not delete, on |
| the strings here because they are allocated with fastMalloc, not new. |
| (WebKit::EnvironmentVariables::set): Use const more. |
| (WebKit::EnvironmentVariables::get): Ditto. |
| (WebKit::EnvironmentVariables::appendValue): Ditto. |
| (WebKit::EnvironmentVariables::valueIfVariableHasName): Ditto. Also fix mistake |
| where this would match if the name matched only a prefix of the environment variable's |
| name. We want to match the whole name, so we need to use memcmp, not strncmp. |
| (WebKit::EnvironmentVariables::createStringForVariable): Use const more. |
| (WebKit::ProcessLauncher::launchProcess): Use clearer name, frameworkExecutablePath, |
| for what was called bundlePath before. Append the frameworks path to DYLD_FRAMEWORK_PATH, |
| ensuring we can pick up other frameworks from the same directory in the web process. |
| Use a const_cast instead of a C-style cast. |
| |
| 2011-02-25 Chris Fleizach <cfleizach@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| AX: WK2: AXApplication not returning the AXFocusedUIElement within the web area |
| https://bugs.webkit.org/show_bug.cgi?id=55277 |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView accessibilityFocusedUIElement]): |
| |
| 2011-02-25 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55276 |
| WebPage::close() accesses "this" after it is destroyed. |
| |
| This was making many tests crash with GuardMalloc. |
| |
| * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::close): Access "this" before it can be |
| destroyed, not after. |
| |
| 2011-02-25 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Unreviewed. |
| Add missing sources to WebKit2API.pri. |
| |
| * WebKit2API.pri: |
| |
| 2011-02-25 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| A WKView without a window will cause CG errors in the console |
| https://bugs.webkit.org/show_bug.cgi?id=55264 |
| <rdar://problem/9044281> |
| |
| Check that the window has a valid window number before trying to get its graphics context. |
| |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::containingWindowGraphicsContext): |
| |
| 2011-02-25 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Brady Eidson and looked over by Jessie Berlin. |
| |
| WebKit2: Need a way to manage cookies from the web process |
| https://bugs.webkit.org/show_bug.cgi?id=55086 |
| |
| Call through to WebCore::CookieJar in our WebCookieManager functions. |
| |
| * WebProcess/Cookies/WebCookieManager.cpp: |
| (WebKit::WebCookieManager::getHostnamesWithCookies): |
| (WebKit::WebCookieManager::deleteCookiesForHostname): |
| (WebKit::WebCookieManager::deleteAllCookies): |
| |
| 2011-02-25 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Option-clicking on links doesn't download them due to sandbox violation |
| https://bugs.webkit.org/show_bug.cgi?id=55250 |
| <rdar://problem/9018359> |
| |
| The change to make DecidePolicyForNavigationAction sync didn't handle the case when the |
| decided policy was "Download". Fix this by passing along the download ID back to the web process. |
| |
| * Platform/CoreIPC/HandleMessage.h: |
| (CoreIPC::callMemberFunction): |
| Add new overload. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| Initialize m_syncNavigationActionPolicyDownloadID. |
| |
| (WebKit::WebPageProxy::receivedPolicyDecision): |
| Set m_syncNavigationActionPolicyDownloadID to the download ID. |
| |
| (WebKit::WebPageProxy::decidePolicyForNavigationAction): |
| Return the m_syncNavigationActionPolicyDownloadID. |
| |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| Add a DownloadID reply parameter. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| Don't pass a zero download ID to didReceivePolicyDecision. |
| |
| 2011-02-25 Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com> and Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement WebContext and NativeKeyboardEvent classes for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=48510 |
| |
| * GNUmakefile.am: |
| * Shared/NativeWebKeyboardEvent.h: Added the GTK event attribute |
| and constructors, in our case we need it because we use a pointer |
| and copy the event. |
| (WebKit::NativeWebKeyboardEvent::nativeEvent): |
| * Shared/gtk/NativeWebKeyboardEventGtk.cpp: Added. |
| (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent): We need |
| to copy the event in the constructor to avoid two references to |
| the same event. |
| * Shared/gtk/WebEventFactory.cpp: Changed the prototype of the |
| functions to add const, we need it for the NativeWebKeyboardEvent |
| constructor. |
| (WebKit::modifiersForEvent): |
| (WebKit::WebEventFactory::createWebKeyboardEvent): |
| * UIProcess/gtk/WebContextGtk.cpp: Added. Stubbed implementation |
| for GTK port. Yet to implement. |
| (WebKit::WebContext::applicationCacheDirectory): |
| (WebKit::WebContext::platformInitializeWebProcess): |
| (WebKit::WebContext::platformDefaultDatabaseDirectory): |
| * UIProcess/gtk/WebView.cpp: |
| (WebKit::WebView::handleKeyboardEvent): |
| |
| 2011-02-25 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Get rid of more old accelerated compositing code |
| https://bugs.webkit.org/show_bug.cgi?id=55235 |
| |
| * Shared/CoreIPCSupport/DrawingAreaProxyMessageKinds.h: |
| * UIProcess/ChunkedUpdateDrawingAreaProxy.h: |
| * UIProcess/DrawingAreaProxy.h: |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * WebProcess/WebPage/ChunkedUpdateDrawingArea.h: |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| |
| 2011-02-25 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [Qt] Make the WebKit2 build system less confusing for non-Qt developers |
| https://bugs.webkit.org/show_bug.cgi?id=55213 |
| |
| * WebKit2API.pri: Added. |
| |
| 2011-02-25 Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com> and Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement WebView and WebKitWebView classes for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=48509 |
| |
| * GNUmakefile.am: |
| * UIProcess/API/C/gtk/WKView.cpp: |
| * UIProcess/API/C/gtk/WKView.h: Removed gdkrectangle from |
| constructor. |
| * UIProcess/gtk/WebViewWidget.cpp: Added. The GObject interface |
| for WebView. The GObject is the GtkWidget handle which is used by |
| WebView class for GTK port. |
| * UIProcess/gtk/WebViewWidget.h: Added. The GObject interface |
| declarations for GtkWidget handle for GTK port. |
| * UIProcess/gtk/WebView.cpp: Added. The native GtkWidget handle |
| for GTK port which is associated with each WKViewRef. |
| * UIProcess/gtk/WebView.h: Added. Class which implements the |
| PageClient interface. It is a wrapper over the native GtkWidget |
| handle associated with each WKViewRef for GTK port. |
| |
| 2011-02-25 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix GTK compilation after r79654. |
| |
| * GNUmakefile.am: |
| |
| 2011-02-24 Brian Weinstein <bweinstein@apple.com> |
| |
| Qt build fix. |
| |
| * WebKit2.pri: |
| |
| 2011-02-24 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Sam Weinig and looked over by Brian Weinstein. |
| |
| Part of <rdar://problem/8762095> and https://bugs.webkit.org/show_bug.cgi?id=55172 |
| Need WebKit2 API to view/manage origins with LocalStorage. |
| |
| Project file stuff: |
| * GNUmakefile.am: |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| * win/WebKit2Generated.make: |
| |
| WK2 derived sources and API stuff: |
| * DerivedSources.make: |
| * DerivedSources.pro: |
| * Platform/CoreIPC/MessageID.h: |
| * Shared/API/c/WKBase.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/WKAPICast.h: |
| |
| Add an KeyValueStorageManager to the context and invalidate it at the appropriate times: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::~WebContext): |
| (WebKit::WebContext::disconnectProcess): |
| (WebKit::WebContext::didReceiveMessage): |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::keyValueStorageManagerProxy): |
| |
| Add API to get the KeyValueStorageManager for a context: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetKeyValueStorageManager): |
| * UIProcess/API/C/WKContext.h: |
| |
| Route messages to the right place: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): |
| |
| Add the API object, which wraps to WebKeyValueStorageManagerProxy: |
| * UIProcess/API/C/WKKeyValueStorageManager.cpp: Added. |
| (WKKeyValueStorageManagerGetTypeID): |
| (WKKeyValueStorageManagerGetKeyValueStorageOrigins): |
| (WKKeyValueStorageManagerDeleteEntriesForOrigin): |
| (WKKeyValueStorageManagerDeleteAllEntries): |
| * UIProcess/API/C/WKKeyValueStorageManager.h: Added. |
| |
| The UIProcess implementation of the manager to send messages to the WebProcess and pipe a callback back up to the client: |
| * UIProcess/WebKeyValueStorageManagerProxy.cpp: Added. |
| (WebKit::WebKeyValueStorageManagerProxy::create): |
| (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy): |
| (WebKit::WebKeyValueStorageManagerProxy::~WebKeyValueStorageManagerProxy): |
| (WebKit::WebKeyValueStorageManagerProxy::invalidate): |
| (WebKit::WebKeyValueStorageManagerProxy::didReceiveMessage): |
| (WebKit::WebKeyValueStorageManagerProxy::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManagerProxy::didGetKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManagerProxy::deleteAllEntries): |
| * UIProcess/WebKeyValueStorageManagerProxy.h: Added. |
| (WebKit::WebKeyValueStorageManagerProxy::clearContext): |
| (WebKit::WebKeyValueStorageManagerProxy::type): |
| * UIProcess/WebKeyValueStorageManagerProxy.messages.in: Added. |
| |
| The WebProcess implementation to response to UIProcess messages and actually do the dirty-work in WebCore: |
| * WebProcess/KeyValueStorage: Added. |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.cpp: Added. |
| (WebKit::WebKeyValueStorageManager::shared): |
| (WebKit::WebKeyValueStorageManager::WebKeyValueStorageManager): |
| (WebKit::WebKeyValueStorageManager::didReceiveMessage): |
| (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins): |
| (WebKit::WebKeyValueStorageManager::deleteEntriesForOrigin): |
| (WebKit::WebKeyValueStorageManager::deleteAllEntries): |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.h: Added. |
| * WebProcess/KeyValueStorage/WebKeyValueStorageManager.messages.in: Added. |
| |
| 2011-02-24 Darin Adler <darin@apple.com> |
| |
| Reviewed by Anders Carlsson. |
| |
| WebKit2: Image-based cursors do not work |
| https://bugs.webkit.org/show_bug.cgi?id=55184 |
| |
| * Shared/ShareableBitmap.h: Added releaseData function |
| declaration. This is only defined for CG, but we can declare |
| it without defining it on non-CG platforms without causing problems. |
| |
| * Shared/WebCoreArgumentCoders.cpp: Added. |
| (CoreIPC::encodeImage): Added. For use in the Cursor argument coder. |
| (CoreIPC::decodeImage): Ditto. |
| |
| * Shared/WebCoreArgumentCoders.h: Added code to the Cursor encoder |
| and decoder to handle image-based cursors, using the new encodeImage |
| and decodeImage functions. |
| |
| * Shared/cg/ShareableBitmapCG.cpp: |
| (WebKit::ShareableBitmap::releaseData): Added. |
| (WebKit::ShareableBitmap::createGraphicsContext): Use |
| CGBitmapContextCreateWithData instead of CGBitmapContextCreate, |
| to guarantee we outlast the CGBitmapContext we create. |
| (WebKit::ShareableBitmap::paint): Got rid of unnneeded local variable. |
| |
| * Shared/cg/WebCoreArgumentCodersCG.cpp: Added. |
| (CoreIPC::createImage): Added. For use by CoreIPC::decodeImage. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Added WebCoreArgumentCoders.cpp |
| and WebCoreArgumentCodersCG.cpp. |
| * win/WebKit2.vcproj: Ditto. |
| |
| 2011-02-24 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Crash when trying to send a sync message on an invalid connection |
| https://bugs.webkit.org/show_bug.cgi?id=55190 |
| <rdar://problem/9035806> |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::sendSyncMessage): |
| Don't try to call a client function if isValid() returns false since the client |
| will be null in that case. |
| |
| 2011-02-24 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Remove the layer backed drawing area |
| https://bugs.webkit.org/show_bug.cgi?id=55174 |
| |
| * GNUmakefile.am: |
| * Shared/DrawingAreaInfo.h: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/LayerBackedDrawingAreaProxy.cpp: Removed. |
| * UIProcess/LayerBackedDrawingAreaProxy.h: Removed. |
| * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: Removed. |
| * UIProcess/win/LayerBackedDrawingAreaProxyWin.cpp: Removed. |
| * UIProcess/win/WebView.cpp: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/DrawingArea.cpp: |
| (WebKit::DrawingArea::create): |
| * WebProcess/WebPage/LayerBackedDrawingArea.cpp: Removed. |
| * WebProcess/WebPage/LayerBackedDrawingArea.h: Removed. |
| * WebProcess/WebPage/mac/LayerBackedDrawingAreaMac.mm: Removed. |
| * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Removed. |
| * win/WebKit2.vcproj: |
| |
| 2011-02-24 Mike Thole <mthole@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WK2: Add ability to get document node for a WKBundleNodeHandle |
| https://bugs.webkit.org/post_bug.cgi |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp: |
| (WKBundleNodeHandleCopyDocument): |
| * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp: |
| (WebKit::InjectedBundleNodeHandle::document): |
| * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: |
| |
| 2011-02-24 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Adam Roben and looked at by Brian Weinstein. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=55165 |
| Can call CF API with a null CFArray in WebResourceCacheManager |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::getCacheOrigins): cfURLCacheHostNames() can return a null CFArrayRef, |
| so the call to CFArrayGetCount must be null checked. |
| |
| 2011-02-24 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| ASSERTION FAILED: !isInAcceleratedCompositingMode() when entering accelerated compositing early |
| https://bugs.webkit.org/show_bug.cgi?id=55162 |
| <rdar://problem/9048523> |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::updateState): |
| Call setShouldNotifyAfterNextScheduledLayerFlush(false) so the web process process won't send an |
| EnterAcceleratedCompositingMode message. |
| |
| (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): |
| setShouldNotifyAfterNextScheduledLayerFlush now takes a boolean. |
| |
| * WebProcess/WebPage/LayerTreeHost.h: |
| * WebProcess/WebPage/mac/LayerTreeHostMac.h: |
| * WebProcess/WebPage/mac/LayerTreeHostMac.mm: |
| (WebKit::LayerTreeHostMac::setShouldNotifyAfterNextScheduledLayerFlush): |
| Make this take a boolean. |
| |
| 2011-02-24 Peter Kasting <pkasting@google.com> |
| |
| Reviewed by Eric Seidel. |
| |
| Drop the "U; " encryption level from the User Agent string. |
| https://bugs.webkit.org/show_bug.cgi?id=54566 |
| |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::standardUserAgent): |
| * UIProcess/qt/WebPageProxyQt.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| 2011-02-24 Andrew Wilson <atwilson@chromium.org> |
| |
| Unreviewed, rolling out r79570. |
| http://trac.webkit.org/changeset/79570 |
| https://bugs.webkit.org/show_bug.cgi?id=54874 |
| |
| Breaks chromium build because glue/mocks/mock_web_frame.h/cc |
| was not updated |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| |
| 2011-02-23 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben and looked over by Jessie Berlin. |
| |
| Part of WebKit2: Need a way to manage cookies from the web process |
| https://bugs.webkit.org/show_bug.cgi?id=55086 |
| |
| This patch adds the plumbing and classes that are needed to manage cookies from the web process. |
| The functions that the API calls are currently stubs, but will be implemented in a follow-up patch. |
| |
| Project file changes. |
| * DerivedSources.make: |
| * DerivedSources.pro: |
| * GNUmakefile.am: |
| * WebKit2.pri: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| * win/WebKit2Generated.make: |
| |
| Add some needed plumbing for WebCookieManager{Proxy}. |
| * Platform/CoreIPC/MessageID.h: |
| * Shared/API/c/WKBase.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/WKAPICast.h: |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetCookieManager): Gets the cookie manager proxy. |
| * UIProcess/API/C/WKContext.h: |
| * UIProcess/API/C/WKCookieManager.cpp: Added. |
| (WKCookieManagerGetTypeID): |
| (WKCookieManagerGetHostnamesWithCookies): Calls through to WebCookieManagerProxy. |
| (WKCookieManagerDeleteCookiesForHostname): Ditto. |
| (WKCookieManagerDeleteAllCookies): Ditto. |
| * UIProcess/API/C/WKCookieManager.h: Added. |
| |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): Add a case for the cookie manager. |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): Initialize the cookie manager. |
| (WebKit::WebContext::~WebContext): Invalidate the cookie manager. |
| (WebKit::WebContext::disconnectProcess): Ditto. |
| (WebKit::WebContext::didReceiveMessage): Add a case for the cookie manager. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::cookieManagerProxy): Returns the cookie manager. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): Add a case for the cookie manager. |
| |
| * UIProcess/WebCookieManagerProxy.cpp: Added. |
| (WebKit::WebCookieManagerProxy::create): |
| (WebKit::WebCookieManagerProxy::WebCookieManagerProxy): |
| (WebKit::WebCookieManagerProxy::~WebCookieManagerProxy): |
| (WebKit::WebCookieManagerProxy::invalidate): |
| (WebKit::WebCookieManagerProxy::didReceiveMessage): |
| (WebKit::WebCookieManagerProxy::getHostnamesWithCookies): Call through to the web process to get hostnames with cookies. |
| (WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies): Call the callback we were passed in getHostnamesWithCookies. |
| (WebKit::WebCookieManagerProxy::deleteCookiesForHostname): Call through to the web process to delete cookies |
| for the origin. |
| (WebKit::WebCookieManagerProxy::deleteAllCookies): Call through to the web process to delete all cookies. |
| * UIProcess/WebCookieManagerProxy.h: Added. |
| (WebKit::WebCookieManagerProxy::clearContext): |
| (WebKit::WebCookieManagerProxy::type): |
| * UIProcess/WebCookieManagerProxy.messages.in: Added. |
| |
| * WebProcess/Cookies: Added. |
| * WebProcess/Cookies/WebCookieManager.cpp: Added. |
| (WebKit::WebCookieManager::shared): |
| (WebKit::WebCookieManager::WebCookieManager): |
| (WebKit::WebCookieManager::didReceiveMessage): Call through to didReceiveWebCookieManagerMessage. |
| (WebKit::WebCookieManager::getHostnamesWithCookies): Build an array from a HashSet (that isn't filled yet), and |
| convert that HashSet to a Vector to send to the UI process. |
| (WebKit::WebCookieManager::deleteCookiesForHostname): Added a stub. |
| (WebKit::WebCookieManager::deleteAllCookies): Ditto. |
| * WebProcess/Cookies/WebCookieManager.h: Added. |
| * WebProcess/Cookies/WebCookieManager.messages.in: Added. |
| |
| 2011-02-24 Amruth Raj <amruthraj@motorola.com> and Ravi Phaneendra Kasibhatla <ravi.kasibhatla@motorola.com> and Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Implement WebEventFactory, WebErrors classes for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=48510 |
| |
| * GNUmakefile.am: |
| * Shared/gtk/WebEventFactory.cpp: Added. implementation for |
| WebMouseEvent, WebWheelEvent, WebKeyboardEvent. |
| * Shared/gtk/WebEventFactory.h: Added. |
| * WebProcess/WebCoreSupport/gtk/WebErrorsGtk.cpp: Added. Stubbed |
| implementation for GTK port. |
| |
| 2011-02-24 Vsevolod Vlasov <vsevik@chromium.org> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| DumpRenderTree should reset frame opener between tests. |
| https://bugs.webkit.org/show_bug.cgi?id=54874 |
| |
| Added clearOpener method to WKBundleWebFramePrivate. |
| |
| * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: |
| (WKBundleFrameClearOpener): |
| * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: |
| |
| 2011-02-24 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Eric Seidel. |
| |
| Support building WebKit with Python 3 |
| https://bugs.webkit.org/show_bug.cgi?id=55038 |
| |
| Update the generator scripts to support Python 3. |
| |
| * Scripts/generate-message-receiver.py: print is a function in Python 3, write the output to |
| sys.stdout to be compatible with Python 2 and 3. |
| * Scripts/generate-messages-header.py: |
| * Scripts/webkit2/messages.py: dist.iteritems does not exist in Python 3, fallback |
| to dict.items which is common to Python 2 and 3. |
| |
| 2011-02-24 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt] MinGW build fails to link |
| https://bugs.webkit.org/show_bug.cgi?id=55050 |
| |
| Prepend the libraries of subcomponents instead of appending them |
| to fix the library order according to the dependency of the libraries |
| |
| * WebKit2.pri: |
| |
| 2011-02-24 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Csaba Osztrogonác. |
| |
| [Qt] REGRESSION(69304): WKNativeEvent.h forwarding header is always regenerated |
| https://bugs.webkit.org/show_bug.cgi?id=47589 |
| |
| In case of file name clashes only generate forwarding header for the current platform. |
| |
| * Scripts/generate-forwarding-headers.pl: |
| |
| 2011-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Remove some of the old accelerated compositing code |
| https://bugs.webkit.org/show_bug.cgi?id=55084 |
| |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::exitAcceleratedCompositingMode): |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/API/mac/WKViewInternal.h: |
| * UIProcess/API/qt/qwkpage_p.h: |
| * UIProcess/PageClient.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::exitAcceleratedCompositingMode): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * UIProcess/mac/LayerBackedDrawingAreaProxyMac.mm: |
| (WebKit::LayerBackedDrawingAreaProxy::attachCompositingContext): |
| (WebKit::LayerBackedDrawingAreaProxy::detachCompositingContext): |
| * UIProcess/win/WebView.cpp: |
| * UIProcess/win/WebView.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::enterAcceleratedCompositingMode): |
| (WebKit::WebPage::exitAcceleratedCompositingMode): |
| * WebProcess/WebPage/WebPage.h: |
| |
| 2011-02-23 Enrica Casucci <enrica@apple.com> |
| |
| Reverting an unintentional change that was part of http://trac.webkit.org/changeset/79494. |
| Unreviewed. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::interceptEditingKeyboardEvent): |
| |
| 2011-02-18 Enrica Casucci <enrica@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| Mac OS X Services are not available for selected text in WebKit2 windows. |
| https://bugs.webkit.org/show_bug.cgi?id=54777 |
| <rdar://problem/8666428> |
| |
| This patch adds support for Mac OS X Services in WebKit2 windows. |
| In WKView we now call registerServicesMenuSendTypes providing the |
| pasteboard types supported by WebKit and we also implement the two |
| protocol methods required to validate the send type and write the |
| content to the pasteboard. Unfortunately, AppKit expects the content |
| to be available in the pasteboard upon return from writeSelectionToPasteboard and |
| this is the reason why the call to the WebProcess is synchronous. |
| |
| * Shared/SelectionState.h: |
| (WebKit::SelectionState::SelectionState): Extended to include |
| isContentRichlyEditable |
| * Shared/mac/PasteboardTypes.h: |
| * Shared/mac/PasteboardTypes.mm: |
| (WebKit::PasteboardTypes::forSelection): Added. |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView initWithFrame:contextRef:pageGroupRef:]): Added call |
| to registerServicesMenuSendTypes. |
| (-[WKView writeSelectionToPasteboard:types:]): Added. |
| (-[WKView validRequestorForSendType:returnType:]): Added. |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::writeSelectionToPasteboard): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::respondToChangedSelection): Modified to |
| support the new SelectionState value. |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::writeSelectionToPasteboard): Added synchronous |
| message to write the selected content to the pasteboard. |
| |
| 2011-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Add a ShareableBitmap::create overload that takes an existing SharedMemory object |
| https://bugs.webkit.org/show_bug.cgi?id=55081 |
| |
| * Shared/ShareableBitmap.cpp: |
| (WebKit::ShareableBitmap::createShareable): |
| (WebKit::ShareableBitmap::create): |
| * Shared/ShareableBitmap.h: |
| |
| 2011-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Web Inspector toolbar looks bad in WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=55076 |
| <rdar://problem/8866258> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView mouseDownCanMoveWindow]): |
| Return NO from mouseDownCanMoveWindow to prevent drags in the (now transparent) inspector WKView |
| from dragging the window around. |
| |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformCreateInspectorPage): |
| Call [WKView setDrawsBackground:NO]. |
| |
| 2011-02-23 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Remove WKPageForceRepaintWithInvalidation and instead make WKPageForceRepaint |
| always dirty the entire page. |
| |
| * Shared/ForceRepaintFlags.h: Removed. |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageForceRepaint): |
| * UIProcess/API/C/WKPage.h: |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::forceRepaint): |
| * UIProcess/WebPageProxy.h: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::forceRepaint): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| * win/WebKit2.vcproj: |
| |
| 2011-02-23 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Race condition when creating and destroying pages quickly |
| https://bugs.webkit.org/show_bug.cgi?id=55061 |
| <rdar://problem/8708435> |
| |
| When the last page in a web process is closed, the web process would |
| previously terminate, even if the UI process had created a new page |
| (the CreateNewPage message just wouldn't have reached the web process yet). |
| |
| Fix this by adding a ShouldTerminate message that the web process sends when it's |
| about to terminate. If the UI process has any pending pages, downloads etc. it will |
| prevent the web process from terminating. Otherwise, it will immmediately disconnect |
| the WebPageProxy so that creating a page after that will launch a new web process. |
| |
| * UIProcess/Plugins/WebPluginSiteDataManager.cpp: |
| (WebKit::WebPluginSiteDataManager::shouldTerminate): |
| * UIProcess/Plugins/WebPluginSiteDataManager.h: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::shouldTerminate): |
| (WebKit::WebContext::disconnectProcess): |
| * UIProcess/WebContext.h: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::disconnect): |
| (WebKit::WebProcessProxy::didReceiveSyncMessage): |
| (WebKit::WebProcessProxy::didClose): |
| (WebKit::WebProcessProxy::shouldTerminate): |
| * UIProcess/WebProcessProxy.h: |
| * UIProcess/WebProcessProxy.messages.in: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::terminateIfPossible): |
| |
| 2011-02-23 Mike Thole <mthole@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| WKBundleNavigationAction.h should be exposed as a public header |
| https://bugs.webkit.org/show_bug.cgi?id=55059 |
| |
| * WebKit2.xcodeproj/project.pbxproj: |
| Changed WKBundleNavigationAction.h from 'project' to 'public'. |
| |
| 2011-02-23 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt] Make sure Symbian binary UIDs are unique |
| |
| * WebProcess.pro: Resolve the UID collision with QtTestBrowser.pro |
| by changing the UID. |
| |
| 2011-02-23 Siddharth Mathur <siddharth.mathur@nokia.com> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt] Fix the Symbian build after r79334 |
| https://bugs.webkit.org/show_bug.cgi?id=55044 |
| |
| * WebKit2.pri: Copy the rules from JavaScriptCore.pri for |
| defineTest(). |
| |
| Remove addWebKit2LibWholeArchive as it is no longer needed. |
| |
| 2011-02-23 Alejandro G. Castro <alex@igalia.com> |
| |
| Unreviewed, fixed GTK WebKit2 compilation after r79366. |
| |
| * GNUmakefile.am: |
| |
| 2011-02-23 Patrick Gansterer <paroga@webkit.org> |
| |
| Reviewed by Darin Adler. |
| |
| Rename PLATFORM(CF) to USE(CF) |
| https://bugs.webkit.org/show_bug.cgi?id=53540 |
| |
| * UIProcess/WebBackForwardList.h: |
| * UIProcess/WebPageProxy.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::formatLocalizedString): |
| |
| 2011-02-23 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] [WK2] When the context menu is empty, we should still send the signal QWKPage::showContextMenu() |
| https://bugs.webkit.org/show_bug.cgi?id=54996 |
| |
| Send the signal QWKPage::showContextMenu() with an empty menu even if the content menu generated |
| is empty/contain only disabled elements. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| (QGraphicsWKView::showContextMenu): |
| * UIProcess/qt/WebContextMenuProxyQt.cpp: |
| (WebKit::WebContextMenuProxyQt::showContextMenu): |
| |
| 2011-02-22 Dan Bernstein <mitz@apple.com> |
| |
| LLVM Compiler build fix. |
| |
| * Scripts/webkit2/messages.py: |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.h: |
| |
| 2011-02-22 Laszlo Gombos <laszlo.1.gombos@nokia.com> |
| |
| Reviewed by Alexey Proskuryakov. |
| |
| Drop the language tag part from the User Agent string |
| https://bugs.webkit.org/show_bug.cgi?id=54560 |
| |
| * UIProcess/gtk/WebPageProxyGtk.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| * UIProcess/mac/WebPageProxyMac.mm: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| * UIProcess/qt/WebPageProxyQt.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): |
| |
| * UIProcess/win/WebPageProxyWin.cpp: |
| (WebKit::WebPageProxy::standardUserAgent): Drop the language tag |
| part and fix style. |
| |
| 2011-02-22 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add WebKit2 API to force a repaint with an invalidation |
| https://bugs.webkit.org/show_bug.cgi?id=55015 |
| |
| * Shared/ForceRepaintFlags.h: Added. |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageForceRepaint): |
| (WKPageForceRepaintWithInvalidation): |
| * UIProcess/API/C/WKPage.h: |
| Add WKPageForceRepaintWithInvalidation which does the same thing WKPageForceRepaint |
| but also calls setNeedsDisplay on the entire bounds of the page. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::forceRepaint): |
| * UIProcess/WebPageProxy.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::forceRepaint): |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| Pipe the flag down to the WebProcess. |
| |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| Add ForceRepaintFlags.h. |
| |
| 2011-02-22 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| <rdar://problem/9039670> |
| |
| Make sure that we set the accelerateDrawing property on the LayerTreeHosts's |
| non-composited content layer if the preference is set. |
| |
| * WebProcess/WebPage/mac/LayerTreeHostMac.mm: |
| (WebKit::LayerTreeHostMac::LayerTreeHostMac): |
| |
| 2011-02-22 Brady Eidson <beidson@apple.com> |
| |
| Fix it Windows-style. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::getSitesWithPluginData): |
| (WebKit::WebProcess::clearPluginSiteData): |
| |
| 2011-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Rename WebProcess::shutdownIfPossible to WebProcess::terminateIfPossible |
| https://bugs.webkit.org/show_bug.cgi?id=55008 |
| |
| * WebProcess/Downloads/DownloadManager.cpp: |
| (WebKit::DownloadManager::downloadFinished): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::removeWebPage): |
| (WebKit::WebProcess::terminateIfPossible): |
| (WebKit::WebProcess::getSitesWithPluginData): |
| * WebProcess/WebProcess.h: |
| * WebProcess/gtk/WebProcessGtk.cpp: |
| (WebKit::WebProcess::platformTerminate): |
| * WebProcess/mac/WebProcessMac.mm: |
| (WebKit::WebProcess::platformTerminate): |
| * WebProcess/qt/WebProcessQt.cpp: |
| (WebKit::WebProcess::platformTerminate): |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformTerminate): |
| |
| 2011-02-22 Brady Eidson <beidson@apple.com> |
| |
| Windows build-fix attempt. |
| |
| * win/WebKit2Generated.make: |
| |
| 2011-02-22 Csaba Osztrogonác <ossy@webkit.org> |
| |
| Unreviewed. |
| |
| <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514 |
| API to view and delete Application Cache data by origin. |
| |
| [Qt][WK2] Buildfix after r79364. |
| |
| * DerivedSources.pro: |
| * WebKit2.pri: |
| |
| 2011-02-22 Brady Eidson <beidson@apple.com> |
| |
| Reviewed by Anders Carlsson and looked over by Brian Weinstein. |
| |
| <rdar://problem/8762042> and https://bugs.webkit.org/show_bug.cgi?id=54514 |
| API to view and delete Application Cache data by origin. |
| |
| I couldn't help myself - I also re-alphabetized WebResourceCacheManager in many places where |
| it's sorting was wrong due to a last minute name change. |
| |
| Project file changes: |
| * GNUmakefile.am: |
| * win/WebKit2.vcproj: |
| * win/WebKit2Common.vsprops: |
| * win/WebKit2Generated.make: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| |
| WK2 build-system and API paperwork: |
| * DerivedSources.make: |
| * Platform/CoreIPC/MessageID.h: |
| * Shared/API/c/WKBase.h: |
| * Shared/APIObject.h: |
| * UIProcess/API/C/WKAPICast.h: |
| |
| Add a helper to perform an ArrayCallback with a Vector of SecurityOriginDatas: |
| * Shared/SecurityOriginData.cpp: |
| (WebKit::performAPICallbackWithSecurityOriginDataVector): |
| * Shared/SecurityOriginData.h: |
| * UIProcess/WebResourceCacheManagerProxy.cpp: |
| (WebKit::WebResourceCacheManagerProxy::didGetCacheOrigins): Use performAPICallbackWithSecurityOriginDataVector here. |
| |
| Add an ApplicationCacheManagerProxy to the context and invalidate it at the appropriate times: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| (WebKit::WebContext::~WebContext): |
| (WebKit::WebContext::processDidClose): |
| (WebKit::WebContext::didReceiveMessage): Route messages to the right proxy. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::applicationCacheManagerProxy): |
| (WebKit::WebContext::resourceCacheManagerProxy): |
| |
| Add API to get the ApplicationCacheManager for a context: |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetApplicationCacheManager): |
| (WKContextGetResourceCacheManager): |
| * UIProcess/API/C/WKContext.h: |
| |
| Route messages to the right place: |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): |
| |
| Add the API object, which wraps to WebApplicationCacheManagerProxy: |
| * UIProcess/API/C/WKApplicationCacheManager.cpp: Added. |
| (WKApplicationCacheManagerGetTypeID): |
| (WKApplicationCacheManagerGetApplicationCacheOrigins): |
| (WKApplicationCacheManagerDeleteEntriesForOrigin): |
| (WKApplicationCacheManagerDeleteAllEntries): |
| * UIProcess/API/C/WKApplicationCacheManager.h: Added. |
| |
| The UIProcess implementation of the manager to send messages to the WebProcess and pipe a callback back up to the client: |
| * UIProcess/WebApplicationCacheManagerProxy.cpp: Added. |
| (WebKit::WebApplicationCacheManagerProxy::create): |
| (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy): |
| (WebKit::WebApplicationCacheManagerProxy::~WebApplicationCacheManagerProxy): |
| (WebKit::WebApplicationCacheManagerProxy::invalidate): |
| (WebKit::WebApplicationCacheManagerProxy::didReceiveMessage): |
| (WebKit::WebApplicationCacheManagerProxy::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManagerProxy::didGetApplicationCacheOrigins): Use performAPICallbackWithSecurityOriginDataVector here. |
| (WebKit::WebApplicationCacheManagerProxy::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManagerProxy::deleteAllEntries): |
| * UIProcess/WebApplicationCacheManagerProxy.h: Added. |
| (WebKit::WebApplicationCacheManagerProxy::clearContext): |
| (WebKit::WebApplicationCacheManagerProxy::type): |
| * UIProcess/WebApplicationCacheManagerProxy.messages.in: Added. |
| |
| The WebProcess implementation to response to UIProcess messages and actually do the dirty-work in WebCore: |
| * WebProcess/ApplicationCache: Added. |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp: Added. |
| (WebKit::WebApplicationCacheManager::shared): |
| (WebKit::WebApplicationCacheManager::WebApplicationCacheManager): |
| (WebKit::WebApplicationCacheManager::didReceiveMessage): |
| (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins): |
| (WebKit::WebApplicationCacheManager::deleteEntriesForOrigin): |
| (WebKit::WebApplicationCacheManager::deleteAllEntries): |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.h: Added. |
| * WebProcess/ApplicationCache/WebApplicationCacheManager.messages.in: Added. |
| |
| 2011-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Get rid of WebProcessManager |
| https://bugs.webkit.org/show_bug.cgi?id=55001 |
| |
| WebProcessManager had become a stupid map of WebContext > WebProcess relations, |
| which isn't really useful since the WebContext already knows about its process. |
| |
| * Shared/WebURLRequest.cpp: |
| * UIProcess/API/mac/WKView.mm: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::~WebContext): |
| (WebKit::WebContext::ensureWebProcess): |
| (WebKit::WebContext::processDidFinishLaunching): |
| * UIProcess/WebProcessManager.cpp: Removed. |
| * UIProcess/WebProcessManager.h: Removed. |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didClose): |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| |
| 2011-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Darin Adler. |
| |
| Get rid of WebProcessManager::getAllWebProcessContexts |
| https://bugs.webkit.org/show_bug.cgi?id=55000 |
| |
| * Shared/WebURLRequest.cpp: |
| (WebKit::WebURLRequest::setDefaultTimeoutInterval): |
| Call WebContext::allContexts instead. |
| |
| * UIProcess/WebContext.cpp: |
| * UIProcess/WebContext.h: |
| Add a vector of WebContext objects. Update it when creating and destroying contexts. |
| |
| * UIProcess/WebProcessManager.cpp: |
| * UIProcess/WebProcessManager.h: |
| Remove WebProcessManager::getAllWebProcessContexts. |
| |
| 2011-02-22 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Re-add early bail out in dispatchDecidePolicyForNavigationAction with prevents |
| a crash running fast/loader/empty-embed-src-attribute.html. This matches a |
| bail out in the default policy delegate in WebKit1. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): |
| |
| 2011-02-22 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Grammar correction from Spelling & Grammar window doesn't work |
| https://bugs.webkit.org/show_bug.cgi?id=54982 |
| <rdar://problem/8940918> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView isGrammarCheckingEnabled]): |
| (-[WKView setGrammarCheckingEnabled:]): |
| Call down to the text checker. |
| |
| * UIProcess/TextChecker.h: |
| Add updateSpellingUIWithGrammarString. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::updateSpellingUIWithGrammarString): |
| Call TextChecker::updateSpellingUIWithGrammarString. |
| |
| * UIProcess/WebPageProxy.messages.in: |
| Add UpdateSpellingUIWithGrammarString message. |
| |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| * UIProcess/qt/TextCheckerQt.cpp: |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| * UIProcess/win/TextCheckerWin.cpp: |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Add stubs. |
| |
| * UIProcess/mac/TextCheckerMac.mm: |
| (WebKit::TextChecker::updateSpellingUIWithGrammarString): |
| Update the spelling panel. |
| |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| (WebKit::WebEditorClient::updateSpellingUIWithGrammarString): |
| Send an UpdateSpellingUIWithGrammarString message to the UI process. |
| |
| 2011-02-22 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| notImplemented() should behave identical in WebCore and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=54449 |
| |
| Use NotImplemented.h from WebCore. Initialize logging channels. |
| Remove the WebKit2 concept of notImplemented(). |
| |
| * Platform/gtk/SharedMemoryGtk.cpp: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| * Platform/qt/WorkQueueQt.cpp: |
| * Platform/win/WorkQueueWin.cpp: |
| * Shared/NotImplemented.h: Removed. |
| * Shared/Plugins/NPIdentifierData.cpp: |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| * Shared/Plugins/NPVariantData.cpp: |
| * Shared/cairo/ShareableBitmapCairo.cpp: |
| * Shared/gtk/ShareableBitmapGtk.cpp: |
| * Shared/gtk/WebCoreArgumentCodersGtk.cpp: |
| * Shared/qt/WebCoreArgumentCodersQt.cpp: |
| * Shared/win/LayerTreeContextWin.cpp: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| * UIProcess/API/qt/qwkpage.cpp: |
| * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp: |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| * UIProcess/WebInspectorProxy.cpp: |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| * UIProcess/qt/TextCheckerQt.cpp: |
| * UIProcess/qt/WebInspectorProxyQt.cpp: |
| * UIProcess/win/TextCheckerWin.cpp: |
| * UIProcess/win/WebContextMenuProxyWin.cpp: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Downloads/cf/DownloadCFNet.cpp: |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: |
| * WebProcess/Downloads/mac/DownloadMac.mm: |
| * WebProcess/Downloads/qt/DownloadQt.cpp: |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: |
| * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: |
| * WebProcess/WebCoreSupport/WebDragClient.cpp: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp: |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp: |
| * WebProcess/WebPage/gtk/WebInspectorGtk.cpp: |
| * WebProcess/WebPage/qt/WebInspectorQt.cpp: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/gtk/WebProcessGtk.cpp: |
| * config.h: |
| * win/WebKit2.vcproj: |
| |
| 2011-02-22 Brian Weinstein <bweinstein@apple.com> |
| |
| Rubber-stamped by Brady Eidson. |
| |
| Invalidate the WebResourceCacheManagerProxy in WebContext::processDidClose. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::processDidClose): |
| |
| 2011-02-21 Adam Roben <aroben@apple.com> |
| |
| Make DrawingAreaProxyImpl keep track of the most recent state ID it sent to the web process |
| |
| This will be useful for sending repeated messages for the same state ID to the web process. |
| We don't do this currently, but will need to if we're asked to paint after we've thrown away |
| our backing store to save memory. |
| |
| Fixes <http://webkit.org/b/54916> DrawingAreaProxyImpl should keep track of the state ID it |
| last sent to the web process |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl): Initialize m_requestedStateID, and |
| reordered member initialization to match the new declaration order. |
| (WebKit::DrawingAreaProxyImpl::didUpdateState): Added an assertion that the stateID we got |
| from the web process is no newer than the most recent one we requested. |
| (WebKit::DrawingAreaProxyImpl::sendUpdateState): Changed to increment and send |
| m_requestedStateID instead of a new global stateID. |
| |
| * UIProcess/DrawingAreaProxyImpl.h: Added m_requestedStateID, and moved the state IDs before |
| other data members. Also beefed the comment explaining m_currentStateID. |
| |
| 2011-02-22 Andras Becsi <abecsi@webkit.org> |
| |
| Reviewed by Laszlo Gombos. |
| |
| [Qt] Redesign the build system |
| https://bugs.webkit.org/show_bug.cgi?id=51339 |
| |
| Part 2. |
| |
| Build WebCore as a static library, compile the WebKit API and WebKit2 API |
| in a final step and link to WebKit2, WebCore and JSC libraries to fix |
| linking issues resulting from stripped away symbols. |
| |
| * WebKit2.pri: Add include paths. |
| * WebKit2.pro: Move include paths to WebKit2.pri and move |
| the API source to WebKit/qt/QtWebKit.pro |
| |
| 2011-02-22 Benjamin Poulain <benjamin.poulain@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] [WK2] Improve the memory handling of the context menu for WebKit 2 |
| https://bugs.webkit.org/show_bug.cgi?id=54902 |
| |
| Refactor the context menu handling of Qt to make it simpler to manage memory. |
| |
| WebContextMenuProxyQt uses smart pointer for all the references to menu so |
| there is no need to delete it explicitely. |
| |
| Passing the QMenu from QWKPage to the client of the signal now uses a QSharedPointer so |
| the client can choose to handle the memory, but there is no leak if it does not. |
| |
| * UIProcess/API/qt/qgraphicswkview.cpp: |
| (QGraphicsWKView::QGraphicsWKView): |
| (QGraphicsWKView::showContextMenu): |
| * UIProcess/API/qt/qgraphicswkview.h: |
| * UIProcess/API/qt/qwkpage.h: |
| * UIProcess/qt/WebContextMenuProxyQt.cpp: |
| (WebKit::WebContextMenuProxyQt::showContextMenu): |
| (WebKit::WebContextMenuProxyQt::createContextMenu): |
| * UIProcess/qt/WebContextMenuProxyQt.h: |
| |
| 2011-02-22 Philippe Normand <pnormand@igalia.com> |
| |
| Reviewed by Xan Lopez. |
| |
| [GTK] make distcheck fails |
| https://bugs.webkit.org/show_bug.cgi?id=54943 |
| |
| Removed reference to NotImplemented.h which was removed. |
| |
| * GNUmakefile.am: |
| |
| 2011-02-22 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] QtWebProcess should be installed with 'make install' |
| https://bugs.webkit.org/show_bug.cgi?id=44100 |
| |
| Follow the standard in other project files and allow install |
| location to be changed with INSTALL_BINS variable. |
| |
| * WebProcess.pro: Install QtWebProcess. |
| |
| 2011-02-22 Sheriff Bot <webkit.review.bot@gmail.com> |
| |
| Unreviewed, rolling out r79296. |
| http://trac.webkit.org/changeset/79296 |
| https://bugs.webkit.org/show_bug.cgi?id=54941 |
| |
| Breaks compilation on SnowLeapard Intel Release (Requested by |
| kbalazs_ on #webkit). |
| |
| * Platform/gtk/SharedMemoryGtk.cpp: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| * Platform/qt/WorkQueueQt.cpp: |
| * Platform/win/WorkQueueWin.cpp: |
| * Shared/NotImplemented.h: Copied from Source/WebKit2/WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp. |
| * Shared/Plugins/NPIdentifierData.cpp: |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| * Shared/Plugins/NPVariantData.cpp: |
| * Shared/cairo/ShareableBitmapCairo.cpp: |
| * Shared/gtk/ShareableBitmapGtk.cpp: |
| * Shared/gtk/WebCoreArgumentCodersGtk.cpp: |
| * Shared/qt/WebCoreArgumentCodersQt.cpp: |
| * Shared/win/LayerTreeContextWin.cpp: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| * UIProcess/API/qt/qwkpage.cpp: |
| * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp: |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| * UIProcess/WebInspectorProxy.cpp: |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| * UIProcess/qt/TextCheckerQt.cpp: |
| * UIProcess/qt/WebInspectorProxyQt.cpp: |
| * UIProcess/win/TextCheckerWin.cpp: |
| * UIProcess/win/WebContextMenuProxyWin.cpp: |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * WebProcess/Downloads/cf/DownloadCFNet.cpp: |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: |
| * WebProcess/Downloads/mac/DownloadMac.mm: |
| * WebProcess/Downloads/qt/DownloadQt.cpp: |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: |
| * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: |
| * WebProcess/WebCoreSupport/WebDragClient.cpp: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp: |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp: |
| * WebProcess/WebPage/gtk/WebInspectorGtk.cpp: |
| * WebProcess/WebPage/qt/WebInspectorQt.cpp: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/gtk/WebProcessGtk.cpp: |
| * config.h: |
| * win/WebKit2.vcproj: |
| |
| 2011-02-16 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| notImplemented() should behave identical in WebCore and WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=54449 |
| |
| Use NotImplemented.h from WebCore. Initialize logging channels. |
| Remove the WebKit2 concept of notImplemented(). |
| |
| * Platform/gtk/SharedMemoryGtk.cpp: |
| * Platform/gtk/WorkQueueGtk.cpp: |
| * Platform/qt/WorkQueueQt.cpp: |
| * Platform/win/WorkQueueWin.cpp: |
| * Shared/NotImplemented.h: Removed. |
| * Shared/Plugins/NPIdentifierData.cpp: |
| * Shared/Plugins/NPRemoteObjectMap.cpp: |
| * Shared/Plugins/NPVariantData.cpp: |
| * Shared/cairo/ShareableBitmapCairo.cpp: |
| * Shared/gtk/ShareableBitmapGtk.cpp: |
| * Shared/gtk/WebCoreArgumentCodersGtk.cpp: |
| * Shared/qt/WebCoreArgumentCodersQt.cpp: |
| * Shared/win/LayerTreeContextWin.cpp: |
| * UIProcess/API/qt/qwkpage.cpp: |
| * UIProcess/Launcher/gtk/ThreadLauncherGtk.cpp: |
| * UIProcess/Launcher/qt/ProcessLauncherQt.cpp: |
| * UIProcess/Plugins/gtk/PluginInfoStoreGtk.cpp: |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): |
| * UIProcess/WebInspectorProxy.cpp: |
| * UIProcess/gtk/TextCheckerGtk.cpp: |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| * UIProcess/gtk/WebPreferencesGtk.cpp: |
| * UIProcess/qt/TextCheckerQt.cpp: |
| * UIProcess/qt/WebInspectorProxyQt.cpp: |
| * UIProcess/win/TextCheckerWin.cpp: |
| * UIProcess/win/WebContextMenuProxyWin.cpp: |
| * WebKit2.pro: |
| * WebProcess/Downloads/cf/DownloadCFNet.cpp: |
| * WebProcess/Downloads/curl/DownloadCurl.cpp: |
| * WebProcess/Downloads/mac/DownloadMac.mm: |
| * WebProcess/Downloads/qt/DownloadQt.cpp: |
| * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp: |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| * WebProcess/Plugins/Netscape/NPJSObject.cpp: |
| * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: |
| * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: |
| * WebProcess/WebCoreSupport/WebDragClient.cpp: |
| * WebProcess/WebCoreSupport/WebEditorClient.cpp: |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorClient.cpp: |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp: |
| * WebProcess/WebCoreSupport/gtk/WebPopupMenuGtk.cpp: |
| * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm: |
| * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm: |
| * WebProcess/WebCoreSupport/qt/WebContextMenuClientQt.cpp: |
| * WebProcess/WebPage/gtk/WebInspectorGtk.cpp: |
| * WebProcess/WebPage/qt/WebInspectorQt.cpp: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::WebProcess): |
| * WebProcess/gtk/WebProcessGtk.cpp: |
| |
| 2011-02-21 Timothy Hatcher <timothy@apple.com> |
| |
| Set and update the window title for the Web Inspector in WebKit2. |
| |
| https://webkit.org/b/50945 |
| rdar://problem/8762410 |
| |
| Reviewed by Adam Roben. |
| |
| * UIProcess/WebInspectorProxy.cpp: |
| (WebKit::WebInspectorProxy::inspectedURLChanged): Added. Call platformInspectedURLChanged. |
| * UIProcess/WebInspectorProxy.h: |
| * UIProcess/WebInspectorProxy.messages.in: Added InspectedURLChanged. |
| * UIProcess/mac/WebInspectorProxyMac.mm: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): Added. Set the window title. |
| * UIProcess/win/WebInspectorProxyWin.cpp: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): Added. Set the window title. |
| * UIProcess/gtk/WebInspectorGtk.cpp: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): Added. Not implemented. |
| * UIProcess/qt/WebInspectorProxyQt.cpp: |
| (WebKit::WebInspectorProxy::platformInspectedURLChanged): Added. Not implemented. |
| * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: |
| (WebKit::WebInspectorFrontendClient::inspectedURLChanged): Call WebInspector::inspectedURLChanged. |
| * WebProcess/WebPage/WebInspector.cpp: |
| (WebKit::WebInspector::inspectedURLChanged): Added. Send the InspectedURLChanged message. |
| * WebProcess/WebPage/WebInspector.h: |
| |
| 2011-02-21 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Can't paste from 3rd party text editor into WebKit2 window. |
| <rdar://problem/8978624> |
| |
| * WebProcess/com.apple.WebProcess.sb: |
| |
| 2011-02-21 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Initialize DrawingAreaProxy::m_size |
| https://bugs.webkit.org/show_bug.cgi?id=54913 |
| |
| This was removed in r76962 since it caused flashes when switching drawing areas due to |
| entering and exiting composited mode, but since we no longer switch drawing areas we can |
| put it back. |
| |
| * UIProcess/DrawingAreaProxy.cpp: |
| (WebKit::DrawingAreaProxy::DrawingAreaProxy): |
| |
| 2011-02-21 Adam Roben <aroben@apple.com> |
| |
| Add some assertions about the state IDs we receive from the web process |
| |
| Rubber-stamped by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::DrawingAreaProxyImpl::update): |
| (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode): |
| (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode): |
| Assert that the state ID the web process sent us is no newer than our own state ID. |
| |
| 2011-02-21 Adam Roben <aroben@apple.com> |
| |
| Rename DrawingArea[Proxy]Impl's "sequence number" concept to "state ID". |
| |
| As explained in r79251, DrawingAreaProxyImpl has some state that, when it changes, causes |
| all operations performed before that state change to become invalid. Currently, this state |
| consists of a single piece of data: the view's size. Eventually it will encompass more data |
| (e.g., the backing store we're drawing into; when we start throwing away the backing store |
| to save memory, our state will have changed, and any operations that were intended for the |
| old backing store will have become invalid). r79251 effectively transformed |
| DrawingArea[Proxy]Impl's "sequence number," which incremented every time DrawingAreaImpl |
| sent DrawingAreaProxyImpl a message, to a "state ID," which only increments when the view's |
| size changes. |
| |
| This patch is just a set of simple renames to reflect the transformation that r79251 |
| effected. It should not introduce any changes in behavior. The renames are: |
| - Messages::DrawingArea::SetSize -> UpdateState |
| - Messages::DrawingAreaProxy::DidSetSize -> DidUpdateState |
| - DrawingAreaProxyImpl::m_lastDidSetSizeSequenceNumber -> m_currentStateID |
| - DrawingAreaProxyImpl::m_isWaitingForDidSetSize -> m_isWaitingForDidUpdateState |
| - DrawingAreaProxyImpl::waitForAndDispatchDidSetSize -> waitForAndDispatchDidUpdateState |
| - DrawingAreaImpl::m_inSetSize -> m_inUpdateState |
| - generateSequenceNumber -> generateStateID |
| - sequenceNumber -> stateID |
| |
| Fixes <http://webkit.org/b/54911> DrawingArea[Proxy]Impl's "sequence number" concept should |
| be renamed to "state ID" |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxy.h: |
| * UIProcess/DrawingAreaProxy.messages.in: |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| * UIProcess/DrawingAreaProxyImpl.h: |
| * WebProcess/WebPage/DrawingArea.h: |
| * WebProcess/WebPage/DrawingArea.messages.in: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| Performed the renames described above. |
| |
| 2011-02-21 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| REGRESSION (WebKit2): HTTP requests time out after 60 seconds |
| https://bugs.webkit.org/show_bug.cgi?id=54755 |
| <rdar://problem/9006592> |
| |
| * Shared/API/c/WKURLRequest.cpp: |
| (WKURLRequestSetDefaultTimeoutInterval): |
| * Shared/API/c/WKURLRequest.h: |
| Added an API to set a default timeout interval for requests created from URLs. The API |
| affects both the UI process and requests created internally by the Web process. Requests |
| created from NSURLRequest or CFURLRequest take timeout from those. |
| |
| * Shared/WebURLRequest.cpp: (WebKit::WebURLRequest::setDefaultTimeoutInterval): |
| * Shared/WebURLRequest.h: |
| Pipe the default timeout interval from WKURLRequest down to actual implementation. Since |
| WebURLRequest is currently implemented with WebCore::ResourceRequest, it automatically respects |
| NSURLRequest default timeout interval. |
| |
| * UIProcess/WebProcessManager.cpp: (WebKit::WebProcessManager::getAllWebProcessContexts): |
| * UIProcess/WebProcessManager.h: |
| Added a way to enumerate all contexts running in separate processes. |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| (WebKit::WebContext::ensureWebProcess): |
| (WebKit::WebContext::setDefaultRequestTimeoutInterval): |
| * UIProcess/WebContext.h: |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::initializeWebProcess): |
| (WebKit::WebProcess::setDefaultRequestTimeoutInterval): |
| * WebProcess/WebProcess.h: |
| * WebProcess/WebProcess.messages.in: |
| Use UI process default timeout interval in separate process contexts, too. |
| |
| 2011-02-18 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebResourceCacheManager should be responsible for managing the CFURLCache as well |
| as the WebCore memory cache. |
| https://bugs.webkit.org/show_bug.cgi?id=54886 |
| Part of <rdar://problem/8971738> |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: |
| (WebKit::WebResourceCacheManager::getCacheOrigins): Call through to cFURLCacheHostNames, and add |
| create SecurityOrigin's for them and add them to the set of SecurityOrigins with cache. |
| (WebKit::WebResourceCacheManager::clearCacheForOrigin): Call through to clear the CFURLCache for |
| the origin's hostname. |
| * WebProcess/ResourceCache/WebResourceCacheManager.h: |
| |
| * WebProcess/ResourceCache/cf: Added. |
| * WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp: Added. |
| (WebKit::WebResourceCacheManager::cfURLCacheHostNames): Call through to WebKitSystemInterface. |
| (WebKit::WebResourceCacheManager::clearCFURLCacheForHostNames): Ditto. |
| |
| * win/WebKit2.vcproj: Added new file. |
| * WebKit2.xcodeproj/project.pbxproj: Ditto. |
| |
| 2011-02-21 Adam Roben <aroben@apple.com> |
| |
| Move control of the sequence number from DrawingAreaImpl to DrawingAreaProxyImpl |
| |
| DrawingAreaProxyImpl has some state that, when it changes, causes all operations performed |
| before that state change to become invalid. When painting, we need to have performed at |
| least one Update for the most recent state; otherwise, we'll be painting old/incorrect bits |
| into the view. |
| |
| Currently, this state consists of a single piece of data: the view's size. Whenever the |
| state (i.e., size) changes, we tell the web process via the SetSize message, and the web |
| process lets us know that it has updated to match the new state (i.e., size) via the |
| DidSetSize message. |
| |
| When it's time to paint, if we're waiting for the web process to update to match our current |
| state (i.e., size), we block for a little while hoping to receive a DidSetSize message so |
| that we can paint up-to-date bits into the window. This can cause us to receive messages |
| out-of-order; the DidSetSize message will be processed immediately, and any messages that |
| were sent before the DidSetSize message will be processed later. Since the messages from |
| before the DidSetSize message correspond to an old state (i.e., size), they are no longer |
| useful (e.g., they contain bits of the page that are drawn at the wrong size/location), so |
| we discard them. |
| |
| The way we identify and discard these messages is by keeping track of a sequence number. |
| Currently, DrawingAreaImpl sends a monotonically-increasing sequence number to |
| DrawingAreaProxyImpl with every message. Whenever DrawingAreaProxyImpl receives a DidSetSize |
| message, it records the sequence number that came along with it. If we then later receive |
| any messages that have a lower sequence number, we know they correspond to an old state |
| (i.e., size) and can discard them. |
| |
| This patch moves control of the sequence number to DrawingAreaProxyImpl. |
| DrawingAreaProxyImpl now sends a monotonically-increasing sequence number in the SetSize |
| message. DrawingAreaImpl records this sequence number when it receives the SetSize message, |
| and sends it back to DrawingAreaProxyImpl in every message. Otherwise the logic is the same |
| as before. |
| |
| This should cause no changes in behavior, but will allow DrawingAreaProxyImpl to request a |
| full backing store update (by incrementing the sequence number) at times other than when the |
| view's size changes (e.g., after it has thrown away its backing store in order to save |
| memory). |
| |
| Fixes <http://webkit.org/b/54907> DrawingAreaProxyImpl should tell DrawingAreaImpl what |
| sequence number to use |
| |
| Reviewed by Anders Carlsson. |
| |
| * UIProcess/DrawingAreaProxyImpl.cpp: |
| (WebKit::generateSequenceNumber): Moved here from DrawingAreaImpl.cpp. |
| (WebKit::DrawingAreaProxyImpl::sendSetSize): Changed to pass a new sequence number in the |
| SetSize message. |
| (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidSetSize): Added a FIXME about a |
| potential improvement. |
| |
| * WebProcess/WebPage/DrawingArea.h: |
| (WebKit::DrawingArea::setSize): Updated to match the message's new parameters. |
| |
| * WebProcess/WebPage/DrawingArea.messages.in: Added a sequenceNumber parameter to SetSize. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): Initialize m_sequenceNumber. |
| (WebKit::DrawingAreaImpl::setSize): Record the new sequence number from the UI process. |
| |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| (WebKit::DrawingAreaImpl::display): |
| Send m_sequenceNumber, instead of a new sequence number, back to the UI process. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.h: Added m_sequenceNumber, updated setSize function to |
| match the base class. |
| |
| 2011-02-21 Gavin Barraclough <barraclough@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Bug 54894 - Make inheritance structure described by ClassInfo match C++ class hierarchy. |
| |
| The ClassInfo objects describe an inheritance hierarchy, with each ClassInfo instance |
| containing a pointer to its parent class. These links should reflect the inheritance |
| hierarchy of C++ classes below JSObject. For the large part it does, but in some cases |
| entries in the C++ hierarchy are skipped over. This presently likely doesn't matter, |
| since intervening C++ classes may not have ClassInfo - but would be a potential bug |
| were ClassInfo were to be added. |
| |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| |
| 2011-02-21 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| [Qt] Implement WorkQueue::sheduleWorkAfterDelay |
| https://bugs.webkit.org/show_bug.cgi?id=54878 |
| |
| * Platform/qt/WorkQueueQt.cpp: |
| (WorkQueue::scheduleWorkAfterDelay): |
| |
| 2011-02-20 Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Add WebResourceCacheDataManager to the compilation after r78848 |
| https://bugs.webkit.org/show_bug.cgi?id=54732 |
| |
| Added resource cache manager API to GTK+ compilation after r78848. |
| |
| * GNUmakefile.am: |
| |
| 2011-02-20 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Dan Bernstein. |
| |
| Crash in WebProcess at com.apple.WebCore: WebCore::Page::goToItem + 46 |
| <rdar://problem/8942726> |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::goForward): |
| (WebKit::WebPage::goBack): |
| (WebKit::WebPage::goToBackForwardItem): |
| Defend agains null HistoryItems. |
| |
| 2011-02-20 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Crash when a plug-in requests a javascript: url that destroys the plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=54837 |
| <rdar://problem/9005475> |
| |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::destroy): |
| Null out m_pluginController. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::performJavaScriptURLRequest): |
| Don't access the frame through m_pluginElement since it will be nulled out |
| when the plug-in is destroyed. |
| |
| 2011-02-20 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Fix another crash when a plug-in is destroyed when evaluating JavaScript |
| https://bugs.webkit.org/show_bug.cgi?id=54834 |
| <rdar://problem/9005475> |
| |
| This contains three separate fixes: |
| |
| - In unprotectPluginFromDestruction we can't just destroy the plug-in once |
| the count reaches zero, because the plug-in might still have code executing |
| on the stack. To fix this we use a zero-delay timer to defer destruction |
| of the plug-in. |
| |
| - Trying to get the NPObject for the window using NPN_GetValue would return |
| NPERR_NO_ERROR, even if the returned NPObject was null. Fix this to return |
| NPERR_GENERIC_ERROR instead. |
| |
| - Protect the plug-in from destruction anytime an NPAPI call that sends a |
| synchronous IPC message is made. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| (WebKit::PluginControllerProxy::destroy): |
| (WebKit::PluginControllerProxy::unprotectPluginFromDestruction): |
| * PluginProcess/PluginControllerProxy.h: |
| * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: |
| (WebKit::PluginDestructionProtector::PluginDestructionProtector): |
| (WebKit::NPN_GetValue): |
| (WebKit::NPN_Evaluate): |
| (WebKit::NPN_GetProperty): |
| (WebKit::NPN_SetProperty): |
| (WebKit::NPN_RemoveProperty): |
| (WebKit::NPN_HasProperty): |
| (WebKit::NPN_HasMethod): |
| (WebKit::NPN_Enumerate): |
| (WebKit::NPN_Construct): |
| (WebKit::NPN_GetValueForURL): |
| (WebKit::NPN_SetValueForURL): |
| |
| 2011-02-19 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Add phase in addition to momentumPhase to platform wheel events |
| Part of <rdar://problem/8945362> |
| |
| Rename existing phase to momentumPhase. |
| |
| * Shared/WebEvent.h: |
| (WebKit::WebWheelEvent::momentumPhase): |
| * Shared/WebEventConversion.cpp: |
| (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent): |
| * Shared/WebWheelEvent.cpp: |
| (WebKit::WebWheelEvent::WebWheelEvent): |
| (WebKit::WebWheelEvent::encode): |
| (WebKit::WebWheelEvent::decode): |
| * Shared/mac/WebEventFactory.mm: |
| (WebKit::phaseForEvent): |
| (WebKit::momentumPhaseForEvent): |
| (WebKit::WebEventFactory::createWebWheelEvent): |
| |
| 2011-02-19 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Crash when trying to take a snapshot of an uninitialized plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=54812 |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::notifyWidget): |
| Don't try to create a snapshot of the plug-in if it hasn't been initialized. |
| |
| 2011-02-18 Gavin Barraclough <barraclough@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Bug 54786 - Devirtualize JSCell::classInfo() |
| |
| Instead of making a virtual function call, add a pointer to the ClassInfo |
| onto Structure. |
| |
| This removes a virtual function call, and paves the way towards removing all |
| the createStructure methods, and StructureFlags/AnonymousSlotCount properties |
| (these should be able to move onto ClassInfo). |
| |
| Calls to Structure::create must now pass a pointer to the ClassInfo for the |
| structure. All objects now have a ClassInfo pointer, non-object cell types |
| still do not. |
| |
| Changes are most mechanical, involving three steps: |
| * Remove virtual classInfo() methods. |
| * Add &s_info parameter to calls to Structure::create. |
| * Rename ClassInfo static members on classes from 'info' to 's_info', |
| for consistency. |
| |
| * WebProcess/Plugins/Netscape/JSNPMethod.cpp: |
| (WebKit::JSNPMethod::JSNPMethod): |
| * WebProcess/Plugins/Netscape/JSNPMethod.h: |
| (WebKit::JSNPMethod::createStructure): |
| * WebProcess/Plugins/Netscape/JSNPObject.cpp: |
| (WebKit::JSNPObject::JSNPObject): |
| * WebProcess/Plugins/Netscape/JSNPObject.h: |
| (WebKit::JSNPObject::createStructure): |
| |
| 2011-02-19 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Anders Carlsson. |
| |
| Rename performLookupAtCurrentMouseLocation to performDictionaryLookupAtCurrentMouseLocation |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView performDictionaryLookupAtCurrentMouseLocation]): |
| * UIProcess/API/mac/WKViewPrivate.h: |
| |
| 2011-02-19 Charlie Reis <creis@chromium.org> |
| |
| Reviewed by Mihai Parparita. |
| |
| Ensure loading has stopped in HistoryController::goToItem |
| https://bugs.webkit.org/show_bug.cgi?id=54517 |
| |
| Add a FrameLoaderClient callback for whether to stop loading before goToItem. |
| |
| Test: http/tests/navigation/forward-to-fragment-fires-onload.html |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebFrameLoaderClient::shouldStopLoadingForHistoryItem): Added. |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| |
| 2011-02-18 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Adele Peterson. |
| |
| Real fix for <rdar://problem/9025723> CrashTracer: [USER] |
| 1 crash in WebProcess at com.apple.WebKit2: |
| WebKit::WebPage::didChangeScrollOffsetForMainFrame + 31 |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::didChangeScrollOffset): |
| Add null check for the FrameView. This function can be called when the |
| FrameView is being torn down during a transition to a new FrameView. |
| |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeScrollOffsetForMainFrame): |
| Revert last attempt. |
| |
| 2011-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Hang trying to load nytimes.com with Flash installed |
| <rdar://problem/9018113> |
| |
| * Platform/CoreIPC/Connection.cpp: |
| (CoreIPC::Connection::sendSyncMessage): |
| Call beginWaitForSyncReply() before sending the message. Otherwise, in some cases we could |
| have gotten back a synchronous request before calling beginWaitForSyncReply(), and then we wouldn't |
| process it correctly. (Which would lead to the hang). |
| |
| 2011-02-18 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Kevin Decker. |
| |
| <rdar://problem/9021296> Some plug-ins are the wrong size after zooming |
| |
| Use the same frame/bounds adjustment that we use for NSView-based |
| plugins in WebKit2, which allows plug-ins and their snapshots to |
| render with the correct size after scaling. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::setBoundsSize): |
| (WebKit::PluginView::viewGeometryDidChange): |
| (WebKit::PluginView::clipRectInWindowCoordinates): |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2011-02-18 Beth Dakin <bdakin@apple.com> |
| |
| Rubber-stamped by Adele Peterson. |
| |
| Fix for <rdar://problem/9025723> CrashTracer: [USER] |
| 1 crash in WebProcess at com.apple.WebKit2: |
| WebKit::WebPage::didChangeScrollOffsetForMainFrame + 31 |
| |
| Simple null-check. |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::didChangeScrollOffsetForMainFrame): |
| |
| 2011-02-18 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com> |
| |
| Reviewed by Kenneth Rohde Christiansen. |
| |
| Tiled backing store area is too big. |
| Error in area calculcation causes size of backing store |
| up to 8 times bigger than viewport with default multipliers. |
| https://bugs.webkit.org/show_bug.cgi?id=54587 |
| |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::calculateKeepRect): |
| (WebKit::TiledDrawingAreaProxy::calculateCoverRect): |
| |
| 2011-02-18 John Sullivan <sullivan@apple.com> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| <rdar://problem/9026169> |
| https://bugs.webkit.org/show_bug.cgi?id=54780 |
| pendingAPIRequestURL isn't updated for WKPageGoToBackForwardListItem |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::goToBackForwardItem): |
| Update the pending API URL. |
| |
| 2011-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Accelerated content fades in when using a layer backed WKView |
| <rdar://problem/9021586> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _enterAcceleratedCompositingMode:]): |
| Make a new nested CATransaction and disable animations when adding the layer |
| hosting subview. This avoids an implicit fade animation that would otherwise occur. |
| |
| 2011-02-18 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| Plugin snapshot location is wrong for subframes |
| https://bugs.webkit.org/show_bug.cgi?id=54776 |
| |
| Only change the CTM to the way that the plugin expects it |
| when painting the plugin, not when drawing the snapshot. |
| This fixes the snapshot location when painting flattened |
| frames. |
| |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::paint): |
| |
| 2011-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Implement NetscapePlugin::pluginComplexTextInputIdentifier |
| https://bugs.webkit.org/show_bug.cgi?id=54770 |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::pluginComplexTextInputIdentifier): |
| |
| 2011-02-18 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| Add the ability to ask the WKPage if the main frame is pinned |
| to the right or left hand side. |
| Part of <rdar://problem/9017043>. |
| |
| * UIProcess/API/C/WKPage.cpp: |
| (WKPageIsPinnedToLeftSide): |
| (WKPageIsPinnedToRightSide): |
| * UIProcess/API/C/WKPage.h: |
| Add new API calls. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::WebPageProxy): |
| (WebKit::WebPageProxy::close): |
| (WebKit::WebPageProxy::processDidCrash): |
| (WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame): |
| * UIProcess/WebPageProxy.h: |
| (WebKit::WebPageProxy::isPinnedToLeftSide): |
| (WebKit::WebPageProxy::isPinnedToRightSide): |
| Initialize, reset and update the pinned state. |
| |
| * UIProcess/WebPageProxy.messages.in: |
| Add message to update the pinned state. |
| |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: |
| (WebKit::WebFrameLoaderClient::didChangeScrollOffset): |
| * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::WebPage): |
| (WebKit::WebPage::didChangeScrollOffsetForMainFrame): |
| * WebProcess/WebPage/WebPage.h: |
| Cache the pinned state, and only update the UIProcess when it |
| changes. |
| |
| 2011-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Fix assertion in SharedMemory::create when trying to snapshot 0x0 plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=54768 |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::snapshot): |
| Don't try to create a handle from a null ShareableBitmap. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::snapshot): |
| Check for a zero sized plug-in before trying to create a snapshot. |
| |
| 2011-02-18 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| WKView flashes when entering/exiting compositing mode |
| https://bugs.webkit.org/show_bug.cgi?id=54695 |
| <rdar://problem/9011554> |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView _exitAcceleratedCompositingMode]): |
| Remove the layer hosting view before clearing out its layer, otherwise we can get |
| white flashes when exiting accelerated compositing mode. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| When entering accelerated compositing mode, we want to defer sending the message |
| until we've actually committed the layer tree and pushed all changes over to the |
| UI process. |
| |
| (WebKit::DrawingAreaImpl::layerHostDidFlushLayers): |
| Tell the layer tree host to force a repaint. This will ensure that all layer tree |
| changes are pushed over to the UI process. When that is done, send the new layer tree |
| context over to the UI process. |
| |
| (WebKit::DrawingAreaImpl::setRootCompositingLayer): |
| When exiting compositing mode in response to a didSetSize, we want to exit accelerated |
| compositing mode right away to avoid flashes. This is safe since we've laid out the page |
| already so we won't end up reentering setRootCompositingLayer. |
| |
| (WebKit::DrawingAreaImpl::enterAcceleratedCompositingMode): |
| Tell the layer tree host to notify us when the next layer tree flush happened, so we can |
| let the UI process know. If we're entering accelerated compositing mode in response to a |
| SetSize message, the new layer tree context will be passed in the DidSetSize message. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| Add layerHostDidFlushLayers. |
| |
| * WebProcess/WebPage/LayerTreeHost.h: |
| Add setShouldNotifyAfterNextScheduledLayerFlush. |
| |
| * WebProcess/WebPage/mac/LayerTreeHostMac.h: |
| Add a m_notifyAfterScheduledLayerFlush flag. |
| |
| * WebProcess/WebPage/mac/LayerTreeHostMac.mm: |
| (WebKit::LayerTreeHostMac::LayerTreeHostMac): |
| Initialize m_notifyAfterScheduledLayerFlush to false. |
| |
| (WebKit::LayerTreeHostMac::setShouldNotifyAfterNextScheduledLayerFlush): |
| Set m_notifyAfterScheduledLayerFlush to true. |
| |
| (WebKit::LayerTreeHostMac::flushPendingLayerChangesRunLoopObserverCallback): |
| If m_notifyAfterScheduledLayerFlush is true, call DrawingAreaImpl::layerHostDidFlushLayers. |
| |
| 2011-02-18 Alexey Proskuryakov <ap@apple.com> |
| |
| Reviewed by Adele Peterson. |
| |
| REGRESSION (WebKit2): Wrong frame printed on tivofaq.com |
| https://bugs.webkit.org/show_bug.cgi?id=54677 |
| <rdar://problem/8994133> |
| |
| * WebProcess/WebCoreSupport/WebChromeClient.cpp: |
| (WebKit::area): Use visible frame bounds. |
| (WebKit::findLargestFrameInFrameSet): Added a comment explaining what we're up to here. |
| WebKit2 shouldn't be making policy decisions for the client, but it gets dangerously close |
| to that. We used to expose the same as WK1 API though. |
| |
| 2011-02-18 Balazs Kelemen <kbalazs@webkit.org> |
| |
| Unreviwed. |
| |
| Remove CleanupHandler since we do not use it anymore. |
| |
| * Shared/qt/CleanupHandler.cpp: Removed. |
| * Shared/qt/CleanupHandler.h: Removed. |
| |
| 2011-02-18 Alejandro G. Castro <alex@igalia.com> |
| |
| Fix GTK build by fixing signature of platformPaint(), required after r78956. |
| |
| * WebProcess/Plugins/Netscape/gtk/NetscapePluginGtk.cpp: |
| (WebKit::NetscapePlugin::platformPaint): |
| |
| 2011-02-17 Dan Bernstein <mitz@apple.com> |
| |
| LLVM Compiler build fix. |
| |
| * UIProcess/WebResourceCacheManagerProxy.h: |
| * WebProcess/ResourceCache/WebResourceCacheManager.h: |
| |
| 2011-02-17 Simon Fraser <simon.fraser@apple.com> |
| |
| Fix Windows and Qt builds by fixing signature of platformPaint(). |
| |
| * WebProcess/Plugins/Netscape/qt/NetscapePluginQt.cpp: |
| (WebKit::NetscapePlugin::platformPaint): |
| * WebProcess/Plugins/Netscape/win/NetscapePluginWin.cpp: |
| (WebKit::NetscapePlugin::platformPaint): |
| |
| 2011-02-17 Simon Fraser <simon.fraser@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| WebKit2 snapshots don't show plug-ins |
| https://bugs.webkit.org/show_bug.cgi?id=54716 |
| |
| Fix WebKit2 plug-ins to do a software paint for |
| snapshotting. |
| |
| * PluginProcess/PluginControllerProxy.h: |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::snapshot): Respond to the snapshot |
| message by getting a sharable bitmap from the plugin, and returning |
| a handle to it in the reply. |
| |
| * PluginProcess/PluginControllerProxy.messages.in: Add the snapshot |
| message. |
| |
| * Shared/Plugins/PluginQuirks.h: |
| * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm: |
| (WebKit::NetscapePluginModule::determineQuirks): Add a quirk for the |
| ability to be snapshotted, which we only set for Flash at the moment. |
| |
| * WebProcess/Plugins/Netscape/NetscapePlugin.h: |
| * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: |
| (WebKit::NetscapePlugin::snapshot): Create a shareable bitmap, and |
| paint into it. |
| (WebKit::NetscapePlugin::supportsSnapshotting): Test the quirk. |
| |
| * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm: |
| (WebKit::NetscapePlugin::platformPaint): Allow the paint to happen |
| if we're snapshotting, even when using the CoreAnimation drawing |
| model. |
| |
| * WebProcess/Plugins/Plugin.h: New snapshot method. |
| |
| * WebProcess/Plugins/PluginProxy.h: |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::snapshot): Send a sync message to the plugin process, |
| asking for a snapshot in a shareble bitmap. |
| |
| * WebProcess/Plugins/PluginView.h: |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::paint): Use the snapshot if we have one, to avoid |
| calling into the plugin to draw, which may run script. |
| |
| (WebKit::PluginView::notifyWidget): Generate the snapshot before |
| a flattening paint, and throw it away after. |
| |
| 2011-02-17 Jessie Berlin <jberlin@apple.com> |
| |
| Reviewed by Adam Roben. |
| |
| WebKit2: The CFNetwork Cache should be shared between the UI Process and the Web Process on |
| Windows. |
| https://bugs.webkit.org/show_bug.cgi?id=54683 |
| |
| * Shared/WebProcessCreationParameters.cpp: |
| (WebKit::WebProcessCreationParameters::encode): |
| (WebKit::WebProcessCreationParameters::decode): |
| * Shared/WebProcessCreationParameters.h: |
| |
| * UIProcess/win/WebContextWin.cpp: |
| (WebKit::WebContext::platformInitializeWebProcess): |
| Make sure to remove the ending slash, as CFNetwork does not recognize the directory with |
| that slash. |
| |
| * WebProcess/win/WebProcessWin.cpp: |
| (WebKit::WebProcess::platformInitializeWebProcess): |
| Create a cache using the path, disk capacity, and memory capacity and set it as default. |
| |
| 2011-02-17 Anders Carlsson <andersca@apple.com> |
| |
| Reviewed by Sam Weinig. |
| |
| Web and/or plug-in process crashes when NPN_Evaluate destroys the plug-in |
| https://bugs.webkit.org/show_bug.cgi?id=54686 |
| <rdar://problem/9013384> |
| |
| This patch fixes two bugs with a plug-in calling NPN_Evaluate to destroy itself: |
| |
| - The PluginProxy object would be destroyed in the middle of PluginProxy::evaluate. |
| This would cause the web process to crash. |
| |
| - The PluginControllerProxy would call NPP_Destroy while the plug-in was busy running |
| code. This would cause the plug-in process to crash. |
| |
| To fix this, we add protectPluginFromDestruction/unprotectPluginFromDestruction to |
| PluginControllerProxy and use it to defer calling destroy() in the plug-in process, |
| and defer actually destroying the plug-in in the web process. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=54171 tracks adding a test for this. |
| |
| * PluginProcess/PluginControllerProxy.cpp: |
| (WebKit::PluginControllerProxy::PluginControllerProxy): |
| (WebKit::PluginControllerProxy::destroy): |
| (WebKit::PluginControllerProxy::evaluate): |
| (WebKit::PluginControllerProxy::protectPluginFromDestruction): |
| (WebKit::PluginControllerProxy::unprotectPluginFromDestruction): |
| * PluginProcess/PluginControllerProxy.h: |
| (WebKit::PluginControllerProxy::asPluginController): |
| * PluginProcess/WebProcessConnection.cpp: |
| (WebKit::WebProcessConnection::destroyPluginControllerProxy): |
| (WebKit::WebProcessConnection::didReceiveMessage): |
| (WebKit::WebProcessConnection::didReceiveSyncMessage): |
| * PluginProcess/WebProcessConnection.h: |
| (WebKit::WebProcessConnection::connection): |
| * WebProcess/Plugins/PluginController.h: |
| (WebKit::PluginController::PluginDestructionProtector::PluginDestructionProtector): |
| (WebKit::PluginController::PluginDestructionProtector::~PluginDestructionProtector): |
| * WebProcess/Plugins/PluginProxy.cpp: |
| (WebKit::PluginProxy::evaluate): |
| * WebProcess/Plugins/PluginView.cpp: |
| (WebKit::PluginView::protectPluginFromDestruction): |
| (WebKit::PluginView::unprotectPluginFromDestruction): |
| * WebProcess/Plugins/PluginView.h: |
| |
| 2011-02-17 Sam Weinig <sam@webkit.org> |
| |
| Build fix. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| |
| 2011-02-17 Sam Weinig <sam@webkit.org> |
| |
| Reviewed by Maciej Stachowiak. |
| |
| WebKit2: Support Dictionary popup |
| <rdar://problem/7660670> |
| |
| * Shared/TextInfo.cpp: Added. |
| (WebKit::TextInfo::encode): |
| (WebKit::TextInfo::decode): |
| * Shared/TextInfo.h: Added. |
| (WebKit::TextInfo::TextInfo): |
| Add class to represent the location and style of a run of text. |
| |
| * UIProcess/PageClient.h: |
| * UIProcess/API/mac/PageClientImpl.h: |
| * UIProcess/API/mac/PageClientImpl.mm: |
| (WebKit::PageClientImpl::didPerformDictionaryLookup): |
| Invoke the dictionary popup. |
| |
| * UIProcess/API/mac/WKView.mm: |
| (-[WKView performLookupAtCurrentMouseLocation]): |
| Tell the WebProcess to get get the text under the mouse and cause |
| the dictionary popup to appear. |
| |
| * UIProcess/API/mac/WKViewPrivate.h: |
| Add performLookupAtCurrentMouseLocation. |
| |
| * UIProcess/WebPageProxy.cpp: |
| (WebKit::WebPageProxy::performDictionaryLookupAtLocation): |
| (WebKit::WebPageProxy::didPerformDictionaryLookup): |
| * UIProcess/WebPageProxy.h: |
| * UIProcess/WebPageProxy.messages.in: |
| * WebProcess/WebPage/WebPage.cpp: |
| * WebProcess/WebPage/WebPage.h: |
| * WebProcess/WebPage/WebPage.messages.in: |
| Pipe messages through. |
| |
| * WebProcess/WebPage/mac/WebPageMac.mm: |
| (WebKit::characterRangeAtPoint): Fix to return PassRefPtr |
| and not potentially stale pointers. |
| |
| (WebKit::WebPage::characterIndexForPoint): |
| Change to use a RefPtr. |
| |
| (WebKit::WebPage::performDictionaryLookupAtLocation): |
| Add simple heuristic to get the word at the current point (or the current selection |
| if it is at that point) and grab the style of the word to send the UIProcess. |
| |
| * WebKit2.pro: |
| * WebKit2.xcodeproj/project.pbxproj: |
| * win/WebKit2.vcproj: |
| Add new files. |
| |
| 2011-02-17 Brian Weinstein <bweinstein@apple.com> |
| |
| Qt build fix. |
| |
| * WebKit2.pro: Update after renaming of MemoryCache to ResourceCache. |
| |
| 2011-02-17 Brian Weinstein <bweinstein@apple.com> |
| |
| Mac build fix. |
| |
| * WebKit2.xcodeproj/project.pbxproj: Use relative to group instead of absolute paths. Not everyone's home |
| directory is /Users/brian_weinstein. |
| |
| 2011-02-16 Brian Weinstein <bweinstein@apple.com> |
| |
| Reviewed by Brady Eidson. |
| |
| WebKit2: Need a way to manage the WebCore Cache |
| https://bugs.webkit.org/show_bug.cgi?id=54501 |
| |
| Implement a WebKit2 API to manage the WebCore memory cache. This API exposes three functions: |
| |
| 1) A method to get a list of all security origins that have entries in the WebCore memory cache. |
| 2) A method to remove all entries in the WebCore memory cache from a SecurityOrigin. |
| 3) A method to remove all entries from the WebCore memory cache. |
| |
| * Platform/CoreIPC/MessageID.h: Add two new MessageClasses. |
| * Shared/API/c/WKBase.h: |
| * Shared/APIObject.h: Add a CacheManager type. |
| * Shared/WebSecurityOrigin.h: Typedef WKCacheManagerRef. |
| (WebKit::WebSecurityOrigin::createFromString): Creates a WebCore::SecurityOrigin using |
| SecurityOrigin::createFromString. |
| (WebKit::WebSecurityOrigin::toString): Calls through to SecurityOrigin::toString. |
| * UIProcess/API/C/WKAPICast.h: |
| |
| * UIProcess/API/C/WKCacheManager.cpp: Added. |
| (WKCacheManagerGetTypeID): Returns the WebResourceCacheManagerProxy type. |
| (WKCacheManagerGetCacheOrigins): Calls through to WebResourceCacheManagerProxy::getCacheOrigins. |
| (callGetCacheOriginsBlockBlockAndDispose): |
| (WKCacheManagerGetCacheOrigins_b): |
| (WKCacheManagerDeleteCacheForOrigin): Calls through to WebResourceCacheManagerProxy::deleteCacheForOrigin. |
| (WKCacheManagerDeleteAllCache): Calls through to WebResourceCacheManagerProxy::deleteAllCache. |
| * UIProcess/API/C/WKCacheManager.h: Added. |
| |
| * UIProcess/API/C/WKContext.cpp: |
| (WKContextGetCacheManager): Calls to get the WebResourceCacheManagerProxy. |
| * UIProcess/API/C/WKContext.h: |
| |
| * UIProcess/WebResourceCacheManagerProxy.cpp: Added. |
| (WebKit::WebResourceCacheManagerProxy::create): Calls through to the constructor. |
| (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy): Initialize the m_webContext variable. |
| (WebKit::WebResourceCacheManagerProxy::~WebResourceCacheManagerProxy): |
| (WebKit::WebResourceCacheManagerProxy::invalidate): Invalidate the callback map. |
| (WebKit::WebResourceCacheManagerProxy::getCacheOrigins): Call through to the web process to get the cache |
| origins. |
| (WebKit::WebResourceCacheManagerProxy::didGetCacheOrigins): Call the callback. |
| (WebKit::WebResourceCacheManagerProxy::deleteCacheForOrigin): Call through to the web process to delete cache |
| for the given origin. |
| (WebKit::WebResourceCacheManagerProxy::deleteAllCache): Call through to the web process to delete all of the cache. |
| * UIProcess/WebResourceCacheManagerProxy.h: Added. |
| (WebKit::WebResourceCacheManagerProxy::clearContext): |
| (WebKit::WebResourceCacheManagerProxy::type): |
| * UIProcess/WebResourceCacheManagerProxy.messages.in: Added. |
| |
| * UIProcess/WebContext.cpp: |
| (WebKit::WebContext::WebContext): Initialize new member variable. |
| (WebKit::WebContext::~WebContext): Invalidates new member variable. |
| (WebKit::WebContext::didReceiveMessage): Passes cache messages to the cache manager. |
| * UIProcess/WebContext.h: |
| (WebKit::WebContext::cacheManagerProxy): |
| * UIProcess/WebProcessProxy.cpp: |
| (WebKit::WebProcessProxy::didReceiveMessage): Add a new message class. |
| |
| * WebProcess/ResourceCache/WebResourceCacheManager.cpp: Added. |
| (WebKit::WebResourceCacheManager::shared): |
| (WebKit::WebResourceCacheManager::WebResourceCacheManager): |
| (WebKit::WebResourceCacheManager::~WebResourceCacheManager): |
| (WebKit::WebResourceCacheManager::didReceiveMessage): Calls through to didReceiveWebResourceCacheManagerMessage. |
| (WebKit::WebResourceCacheManager::getCacheOrigins): Gets a list of origins with cache entries from the memory |
| cache, and puts them into a vector to send to the UI process. |
| (WebKit::WebResourceCacheManager::deleteCacheForOrigin): Calls through to ResourceCache to delete all cache entries |
| from a given origin. |
| (WebKit::WebResourceCacheManager::deleteAllCache): |
| * WebProcess/ResourceCache/WebResourceCacheManager.h: Added. |
| * WebProcess/ResourceCache/WebResourceCacheManager.messages.in: Added. |
| |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::didReceiveMessage): |
| (WebKit::WebProcess::clearResourceCaches): Tell the memory cache to evict its resources. This was done on WebKit1, |
| but not WebKit2. |
| * WebProcess/WebProcess.h: |
| |
| * WebKit2.xcodeproj/project.pbxproj: Added new files. |
| * win/WebKit2.vcproj: Ditto. |
| * win/WebKit2Common.vsprops: Added new include directory. |
| * win/WebKit2Generated.make: Added new header. |
| |
| 2011-02-16 David Hyatt <hyatt@apple.com> |
| |
| Reviewed by Dan Bernstein. |
| |
| https://bugs.webkit.org/show_bug.cgi?id=54244 |
| |
| Convert the line box tree to floating point and eliminate font rounding hacks. This patch removes all of the rounding |
| hacks from the Font code and makes sure all Font APIs involving width measurement and width offsets use floats. |
| |
| The line box tree's x, y and logicalWidth members have all been converted to floats and all of the line box APIs have |
| been changed as well. |
| |
| In terms of pixel adjustments, overflow is using an enclosing model (so it will be enclosingIntRect of a line box's x/y/width/height). |
| |
| Background and border painting is using a rounding model, so borders and backgrounds will round to the nearest pixel when painting. |
| |
| Replaced elements still snap to integer positions on lines, and they use a rounding model as well, although their underlying line boxes |
| still have a precise floating point position. |
| |
| Justification will now allow subpixel positioning to occur as well. Platforms that don't support subpixel positioning should already |
| be rounding justification spacing in their font code. |
| |
| Many layout test results change on Mac, since rounding hacks were used there and are now gone. |
| |
| * WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp: |
| (WebKit::WebPopupMenu::setUpPlatformData): |
| |
| 2011-02-10 Luiz Agostini <luiz.agostini@openbossa.org> |
| |
| Reviewed by Adam Roben. |
| |
| HTML5 <details> and <summary>: localized text |
| https://bugs.webkit.org/show_bug.cgi?id=54260 |
| |
| The method defaultDetailsSummaryText was added to LocalizationStrategy class. It is used to |
| provide the default label to be used by a <details> tag that has no <summary> child. |
| |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: |
| (WebKit::WebPlatformStrategies::defaultDetailsSummaryText): |
| * WebProcess/WebCoreSupport/WebPlatformStrategies.h: |
| |
| 2011-02-17 Adam Roben <aroben@apple.com> |
| |
| Make sure layout is up-to-date before rendering the layer tree in DrawingAreaImpl |
| |
| Fixes <http://webkit.org/b/54646> <rdar://problem/9016889> Assertion failure in |
| FrameView::paintContents when calling WKPageForceRepaint on a page that uses accelerated |
| compositing |
| |
| Reviewed by Anders Carlsson. |
| |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::forceRepaint): Lay out before we do anything else. |
| |
| 2011-02-17 Alejandro G. Castro <alex@igalia.com> |
| |
| Reviewed by Martin Robinson. |
| |
| [GTK] Add WKPluginSiteDataManager.cpp compilation after r78647 |
| https://bugs.webkit.org/show_bug.cgi?id=54564 |
| |
| * GNUmakefile.am: Added files to compilation. |
| * Shared/Plugins/Netscape/NetscapePluginModule.h: used |
| npruntime_internal.h in the include to avoid problems with X |
| types. |
| * WebProcess/WebProcess.cpp: |
| (WebKit::WebProcess::setAlwaysUsesComplexTextCodePath): fixed |
| ambiguous reference to Font caused by the X headers required by |
| the plugins. |
| |
| 2011-02-16 Matthew Delaney <mdelaney@apple.com> |
| |
| Reviewed by Simon Fraser. |
| |
| Allow acceleratesDrawing for WebKit2 |
| https://bugs.webkit.org/show_bug.cgi?id=54511 |
| |
| Plumb through preference for accelerated drawing. |
| |
| If accelerated drawing is enabled, keep the DrawingAreaImpl in |
| accelerated compositing mode. |
| |
| * Shared/WebPreferencesStore.h: |
| * UIProcess/API/C/WKPreferences.cpp: |
| (WKPreferencesSetAcceleratedDrawingEnabled): |
| (WKPreferencesGetAcceleratedDrawingEnabled): |
| * UIProcess/API/C/WKPreferencesPrivate.h: |
| * WebProcess/WebPage/DrawingAreaImpl.cpp: |
| (WebKit::DrawingAreaImpl::DrawingAreaImpl): |
| (WebKit::DrawingAreaImpl::setRootCompositingLayer): |
| (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode): |
| * WebProcess/WebPage/DrawingAreaImpl.h: |
| * WebProcess/WebPage/WebPage.cpp: |
| (WebKit::WebPage::updatePreferences): |
| |
| 2011-02-16 Yael Aharon <yael.aharon@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] White screen is displayed when tiled backing store is enabled in MiniBrowser. |
| https://bugs.webkit.org/show_bug.cgi?id=54583 |
| |
| Make sure to invalidate all the tiles, including the last one. |
| |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::invalidate): |
| |
| 2011-02-16 Yael Aharon <yael.aharon@nokia.com> |
| |
| Reviewed by Andreas Kling. |
| |
| [Qt] Tiles are not created for webkit2 after r77286. |
| https://bugs.webkit.org/show_bug.cgi?id=54577 |
| |
| When using the default tile size of 1024x1024, only one tile is created. |
| Make sure to create this tile by undoing what seems to be a typo in r77286. |
| |
| * UIProcess/TiledDrawingAreaProxy.cpp: |
| (WebKit::TiledDrawingAreaProxy::paint): |
| (WebKit::TiledDrawingAreaProxy::createTiles): |
| |
| == Rolled over to ChangeLog-2011-02-16 == |