2012-12-13  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Fix painting on Mac with retina display
        https://bugs.webkit.org/show_bug.cgi?id=104574

        Reviewed by Kenneth Rohde Christiansen.

        Since HiDPI support has been added and enabled in Qt we ended up
        painting incorrectly scaled content on high-resolution screens.
        Because the intrinsic device pixel ratio is always taken into
        account by Qt when painting to high-resolution screens we should
        automatically obtain the scale ratio from the window in which the
        item is rendered instead of setting it in QML.

        Qt does not make it possible to override the device pixel ratio
        of the native window, therefore our experimental QML API for setting
        a custom value is of no use any more and should be removed.

        This patch fixes the scaling issue on Mac retina display by querying
        the underlying window for the device scale factor and applying it to
        the backing store and the scene-graph rendering of the content node.
        Additionally removes the experimental API and related API tests.

        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPage::updatePaintNode):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::QQuickWebViewPrivate):
        (QQuickWebViewLegacyPrivate::updateViewportSize):
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
        (tst_QQuickWebView::newWebView):
        * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
        (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
        (WebKit::CoordinatedLayerTreeHostProxy::deviceScaleFactor):
        * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
        (CoordinatedLayerTreeHostProxy):
        * UIProcess/qt/QtWebPageSGNode.cpp:
        (WebKit::ContentsSGNode::ContentsSGNode):
        (WebKit::ContentsSGNode::render):
        (WebKit::ContentsSGNode::clipRect):
        (ContentsSGNode):
        (WebKit::QtWebPageSGNode::QtWebPageSGNode):
        (WebKit::QtWebPageSGNode::devicePixelRatio):
        (WebKit):
        (WebKit::QtWebPageSGNode::setRenderer):
        * UIProcess/qt/QtWebPageSGNode.h:
        (QtWebPageSGNode):

2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Fix QtWebProcess discovery on Windows
        https://bugs.webkit.org/show_bug.cgi?id=104552

        Reviewed by Jocelyn Turcotte.

        Make sure to look for QtWebProcess.exe on Windows instead of QtWebProcess.

        * Shared/qt/ProcessExecutablePathQt.cpp:
        (WebKit::executablePath):

2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Use QLibraryInfo::LibraryExecutablesPath unconditionally
        https://bugs.webkit.org/show_bug.cgi?id=104541

        Reviewed by Jocelyn Turcotte.

        We now depend on a Qt 5 version that is guaranteed to have this API, so we
        can remove the configure checks for it.

        * PluginProcess.pro:
        * Shared/qt/ProcessExecutablePathQt.cpp:
        (WebKit::executablePath):
        * WebProcess.pro:

2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Fix build without QtQuick 2

        Unreviewed trivial build fix.

        This function is defined in QtWebContext, which is only used when QtQuick2 is available.

        * UIProcess/qt/WebContextQt.cpp:
        (WebKit::WebContext::platformInvalidateContext):

2012-12-03  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Do not override previously set flags of QQuickWebView when enabling drag&drop
        https://bugs.webkit.org/show_bug.cgi?id=103901

        Reviewed by Jocelyn Turcotte.

        Setting the specific flag instead of resetting all the flags
        when enabling QQuickItem::ItemAcceptsDrops.
        This fixes clipping of the contents of QQuickWebView.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::initialize):

2012-12-03  Simon Hausmann  <simon.hausmann@digia.com>

        Unreviewed, rolling out r136119.
        http://trac.webkit.org/changeset/136119
        https://bugs.webkit.org/show_bug.cgi?id=100964

        We decided to restore previous default behaviour

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::handleMouseEvent):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewFlickablePrivate):

2012-11-30  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Unreviewed speculative Mac build fix after r136232

        cleanup an oversight from r136235

        * PluginProcess.pro: s/webkit/webkitwidgets/

2012-11-30  Simon Hausmann  <simon.hausmann@digia.com>

        Unreviewed trivial Qt build fix:

        Always link against WebProcess against QT += webkit and use webkitwidgets only if available.

        * WebProcess.pro:

2012-11-30  Simon Hausmann  <simon.hausmann@digia.com>, Pierre Rossi  <pierre.rossi@digia.com>

        [Qt] Separate Qt WebKit into Qt WebKit and Qt WebKit Widgets
        https://bugs.webkit.org/show_bug.cgi?id=99314

        Reviewed by Tor Arne Vestbø.

        This big change separates QtWebKit into QtWebKit and QtWebKitWidgets as
        shared libraries.

        It's a big refactoring that mostly involves moving WebCore dependent
        code into QtWebKit and accessing it through exported QWebFrameAdapter
        and QWebPageAdapter classes.


        * UIProcess/API/qt/tests/inspectorserver/inspectorserver.pro:
        * UIProcess/API/qt/tests/publicapi/publicapi.pro:
        * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
        * UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro:
        * UIProcess/API/qt/tests/tests.pri:

2012-11-30  Joone Hur  <joone.hur@intel.com>

        [EFL]Drawing artifacts while resizing the view
        https://bugs.webkit.org/show_bug.cgi?id=101288

        Reviewed by Kenneth Rohde Christiansen.

        An Evas GL surface is recreated when the window is resized, but the update of the surface is 
        asynchronously done, which gives Evas a chance of painting the empty surface on the screen.
        As a result, the flickering problem happens while resizing the view.
        So this patch allows to create an Evas GL surface synchronously with the update of the surface.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl): Set m_pendingSurfaceResize to false.
        (EwkViewImpl::displayTimerFired): Create an Evas GL surface.
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::setNeedsSurfaceResize): Added.
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate): Set m_pendingSurfaceResize to true.

2012-11-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] TiledBackingStore: Frame view re-layouts with wrong Fixed Visible Content Rect.
        https://bugs.webkit.org/show_bug.cgi?id=103428

        Reviewed by Kenneth Rohde Christiansen.

        Set now appropriate fixed visible content rect before layout when viewport
        attributes change.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::syncVisibleContents):
        (WebKit::PageViewportController::didChangeViewportAttributes):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):

2012-11-30  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL] Gardening after r136031 and r136142
        https://bugs.webkit.org/show_bug.cgi?id=103734

        Unreviewed, API test EWK2UnitTestBase.ewk_view_setting_encoding_custom
        is asserting after r136031. So, disabling the test until bug 103732 is
        fixed.

        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-11-30  Zeno Albisser  <zeno@webkit.org>

        [Qt] Enable WebGL by default.
        https://bugs.webkit.org/show_bug.cgi?id=103731

        Reviewed by Simon Hausmann.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::initialize):

2012-11-30  Mihai Maerean  <mmaerean@adobe.com>

        [CSSRegions] when WebKit uses V8, there should be a single variable to store if the CSS Regions feature is enabled
        https://bugs.webkit.org/show_bug.cgi?id=101192

        Reviewed by Hajime Morita.

        Removed the CSS Regions flag in Settings and switched to using the new flag I have added in RuntimeEnabledFeatures.

        Tests: No new tests because there is no functional change.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
        (WebKit::InjectedBundle::setCSSRegionsEnabled):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):

2012-11-29  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Only plain text can be copied out of PDFs
        https://bugs.webkit.org/show_bug.cgi?id=103591
        <rdar://problem/12555161>

        Reviewed by Alexey Proskuryakov.

        Don't write zero-length data to the pasteboard, just skip the item.

        As mentioned in the comment, we don't expect this to come up, and would like to know if it does,
        so we assert that it doesn't happen in debug builds.

        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::writeItemsToPasteboard):

2012-11-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [WebKit2] WebKitWebViewBase creates a GL context for the redirected XComposite window crashing WebKit in Xvfb
        https://bugs.webkit.org/show_bug.cgi?id=103476

        Reviewed by Alejandro G. Castro.

        Create the RedirectedXCompositeWindow with an argument specifying that it
        should never have a GLContext backing it.

        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate):

2012-11-29  Rafael Weinstein  <rafaelw@chromium.org>

        [HTMLTemplateElement] Add feature flag
        https://bugs.webkit.org/show_bug.cgi?id=103694

        Reviewed by Adam Barth.

        This flag will guard the implementation of the HTMLTemplateElement.
        http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/templates/index.html

        * Configurations/FeatureDefines.xcconfig:

2012-11-29  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Forward cookie jar calls to NetworkProcess
        https://bugs.webkit.org/show_bug.cgi?id=103457

        Reviewed by Darin Adler.

        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
        Added messages to maniputate CookieJar in network process.

        * NetworkProcess/NetworkConnectionToWebProcess.h:
        * NetworkProcess/NetworkConnectionToWebProcess.cpp: Removed unnecessary WebCore:: prefixes,
        this file has a using direcive.
        (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
        (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
        (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
        (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
        (WebKit::NetworkConnectionToWebProcess::getRawCookies):
        (WebKit::NetworkConnectionToWebProcess::deleteCookie):
        (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies):
        (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname):
        (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
        Added implementations that use PlatformCookieJar in the network process.

        * Scripts/webkit2/messages.py: (struct_or_class):
        * Shared/WebCoreArgumentCoders.h:
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        Added support for Cookie.
        
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::cookiesForDOM):
        (WebKit::WebPlatformStrategies::setCookiesFromDOM):
        (WebKit::WebPlatformStrategies::cookiesEnabled):
        (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
        (WebKit::WebPlatformStrategies::getRawCookies):
        (WebKit::WebPlatformStrategies::deleteCookie):
        (WebKit::WebPlatformStrategies::getHostnamesWithCookies):
        (WebKit::WebPlatformStrategies::deleteCookiesForHostname):
        (WebKit::WebPlatformStrategies::deleteAllCookies):
        When using the network process, forward cookie calls to it.

2012-11-29  Kiran Muppala  <cmuppala@apple.com>

        Instantiate snapshot plugins in a PluginProcess with muted audio
        https://bugs.webkit.org/show_bug.cgi?id=101536

        Reviewed by Anders Carlsson.

        Plugins created for generation of a snapshot should be instantiated in a separate process with
        muted audio so that any sound generated during the snapshot process is not audible to the user.

        * Configurations/WebKit2.xcconfig: Add CoreAudio to the list of linked frameworks.
        * PluginProcess/PluginProcess.h: Add PluginProcess::Type enum with values for regular and
        snapshot process types. Provide DefaultHash and IsInteger template specializations for the enum
        so that PluginProcessConnectionManager can store it in a HashMap.
        * PluginProcess/mac/PluginProcessMac.mm:
        (WebKit::muteAudio):
        (WebKit::PluginProcess::platformInitialize): Mute audio if the process creation parameters indicate
        that the plugin process type is snapshot process.
        * Shared/Plugins/PluginProcessCreationParameters.cpp:
        (WebKit::PluginProcessCreationParameters::encode):
        (WebKit::PluginProcessCreationParameters::decode):
        * Shared/Plugins/PluginProcessCreationParameters.h: Add processType process creation parameter.
        * UIProcess/Plugins/PluginProcessManager.cpp:
        (WebKit::PluginProcessManager::getPluginProcessConnection): Add process type parameter.
        (WebKit::PluginProcessManager::getSitesWithData): Forward message to regular plugin process only.
        (WebKit::PluginProcessManager::clearSiteData): Forward message to regular plugin process only.
        (WebKit::PluginProcessManager::pluginProcessWithPath): Add process type parameter.
        (WebKit::PluginProcessManager::getOrCreatePluginProcess): Ditto.
        * UIProcess/Plugins/PluginProcessManager.h:
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::create): Add process type parameter.
        (WebKit::PluginProcessProxy::PluginProcessProxy): Ditto.
        (WebKit::PluginProcessProxy::didClose): Include process type with the plugin process crashed message.
        (WebKit::PluginProcessProxy::didFinishLaunching): Set process type process creation parameter.
        * UIProcess/Plugins/PluginProcessProxy.h:
        (WebKit::PluginProcessProxy::processType):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::getPluginProcessConnection): Pass along process type parameter to
        PluginProcessManager.
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in: Add process type parameter to GetPluginProcessConnection message.
        * WebProcess/Plugins/PluginProcessConnection.cpp:
        (WebKit::PluginProcessConnection::PluginProcessConnection): Add process type parameter.
        * WebProcess/Plugins/PluginProcessConnection.h:
        (WebKit::PluginProcessConnection::create): Ditto.
        (WebKit::PluginProcessConnection::processType): Ditto.
        * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
        (WebKit::PluginProcessConnectionManager::getPluginProcessConnection): Add process type parameter.
        (WebKit::PluginProcessConnectionManager::removePluginProcessConnection): Use process type in addition to
        plugin path to find the connection to remove.
        (WebKit::PluginProcessConnectionManager::pluginProcessCrashed): Add process type parameter.
        * WebProcess/Plugins/PluginProcessConnectionManager.h:
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::create): Ditto.
        (WebKit::PluginProxy::PluginProxy): Ditto.
        (WebKit::PluginProxy::initialize): Add process type parameter in call to
        PluginProcessConnectionManager::getPluginProcessConnection.
        * WebProcess/Plugins/PluginProxy.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::createPlugin): Determine process type based on display state of plugin element and
        pass it to PluginProxy::create.
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::pluginProcessCrashed): Pass along process type parameter to
        PluginProcessConnectionManager.
        * WebProcess/WebProcess.h:
        * WebProcess/WebProcess.messages.in: Add process type parameter to PluginProcessCrashed message.

2012-11-29  Anders Carlsson  <andersca@apple.com>

        Initialize m_xpcConnection to null if the identifier doesn't have an XPC connection
        https://bugs.webkit.org/show_bug.cgi?id=103689

        Reviewed by Darin Adler.

        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::platformInitialize):

2012-11-29  Christophe Dumez  <christophe.dumez@intel.com>

        [CoordinatedGraphics] Use OwnPtr for LayerMap's layers in LayerTreeRenderer
        https://bugs.webkit.org/show_bug.cgi?id=103650

        Reviewed by Noam Rosenthal.

        We currently store raw pointers to WebCore::GraphicsLayer in the LayerMap
        meaning that we need to delete them manually. This patch leverages smart
        pointers and stores layers as OwnPtr in the LayerMap so that the layers
        are owned by the HashMap and we don't have to handle memory manually.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
        (WebKit::LayerTreeRenderer::setLayerChildren):
        (WebKit::LayerTreeRenderer::deleteLayer):
        (WebKit::LayerTreeRenderer::ensureLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

2012-11-29  Anders Carlsson  <andersca@apple.com>

        Add a minimumLayoutWidth WKView property
        https://bugs.webkit.org/show_bug.cgi?id=103660
        <rdar://problem/11791729>

        Reviewed by Beth Dakin.

        When minimumLayoutWidth is set to a positive value, the WKView will update its intrinsic content size given the layout width.

        * UIProcess/API/mac/PageClientImpl.h:
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::intrinsicContentSizeDidChange):
        Call the WKView.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView intrinsicContentSize]):
        Override the intrinsicContentSize getter.

        (-[WKView _setIntrinsicContentSize:]):
        Update the intrinsic content size and mark it as invalid.

        (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
        By default, the WKView should have no intrinsic size.

        (-[WKView minimumLayoutWidth]):
        (-[WKView setMinimumLayoutWidth:]):
        Call through to the WebPageProxy object.

        * UIProcess/API/mac/WKViewPrivate.h:
        Add the SPI here.

        * UIProcess/DrawingAreaProxy.h:
        (WebKit::DrawingAreaProxy::minimumLayoutWidthDidChange):
        (WebKit::DrawingAreaProxy::didUpdateGeometry):
        (WebKit::DrawingAreaProxy::intrinsicContentSizeDidChange):
        Add empty stubs.

        * UIProcess/DrawingAreaProxy.messages.in:
        Update the DidUpdateGeometry signature and add IntrinsicContentSizeDidChange.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        Initialize the minimum layout width.

        (WebKit::WebPageProxy::setMinimumLayoutWidth):
        Update the minimum layout width and call the drawing area proxy.

        * UIProcess/WebPageProxy.h:
        (WebKit::WebPageProxy::minimumLayoutWidth):
        Add getter.

        * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
        (TiledCoreAnimationDrawingAreaProxy):
        * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
        (WebKit::TiledCoreAnimationDrawingAreaProxy::minimumLayoutWidthDidChange):
        Update the geometry if needed.

        (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
        Update the intrinsic content size.

        (WebKit::TiledCoreAnimationDrawingAreaProxy::intrinsicContentSizeDidChange):
        Call through to WebPageProxy::intrinsicContentSizeDidChange.

        (WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
        Pass along the minimum layout width.

        * UIProcess/mac/WebPageProxyMac.mm:
        (WebKit::WebPageProxy::intrinsicContentSizeDidChange):
        Call through to the page client.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::contentsSizeChanged):
        Call DrawingArea::mainFrameContentSizeChanged.

        * WebProcess/WebPage/DrawingArea.h:
        (WebKit::DrawingArea::mainFrameContentSizeChanged):
        Add empty stub.

        (WebKit::DrawingArea::updateGeometry):
        Update signature.

        * WebProcess/WebPage/DrawingArea.messages.in:
        Add minimumLayoutWidth to UpdateGeometry.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::mainFrameContentSizeChanged):
        If the content size change is not coming from updateGeometry, send an InstrinsicContentSizeDidChange message.

        (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
        If m_minimumLayoutWidth is positive, do an initial layout pass to figure out the height of the page and then do another
        layout with the viewport set to that height.

2012-11-29  Anders Carlsson  <andersca@apple.com>

        CoreIPC::Connection should retain its xpc_connection_t
        https://bugs.webkit.org/show_bug.cgi?id=103671
        <rdar://problem/12717331>

        Reviewed by Beth Dakin.

        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::platformInitialize):
        Retain the xpc_connection_t object here to balance the xpc_object_release in platformInvalidate.

2012-11-29  Brent Fulgham  <bfulgham@webkit.org>

        [Windows, WinCairo] Unreviewed build fix.  Build was failing
        because the export definition file included a debug-only
        symbol.  It's not needed and shouldn't be included for export.

        * win/WebKit2.def: Don't require notSolidColor to be exported.
        * win/WebKit2CFLite.def: Ditto.

2012-11-29  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Only plain text can be copied out of PDFs
        https://bugs.webkit.org/show_bug.cgi?id=103591
        <rdar://problem/12555161>

        Reviewed by Alexey Proskuryakov.

        Enable rich data to be copied from PDFKit to the pasteboard.

        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Add writeItemsToPasteboard.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (-[WKPDFLayerControllerDelegate writeItemsToPasteboard:withTypes:]): Move implementation to PDFPlugin.
        (WebKit::PDFPlugin::writeItemsToPasteboard): Don't round-trip through WebCore for pasteboard operations,
        use WebContext directly. This provides a simple way to hand over a buffer for complex pasteboard types
        (RTF, HTML, etc.). Use this interface for arbitrary non-plain-text pasteboard data that PDFKit hands us.

2012-11-29  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [WebKit2] Embed the HTTP authentication dialog into the WebView
        https://bugs.webkit.org/show_bug.cgi?id=103277

        Reviewed by Carlos Garcia Campos.

        Embed the WebKit2 HTTP authentication dialog into the WebView. Add the dialog as a child
        of the WebKitWebViewBase container (like the web inspector).

        We do not yet properly handle pages that require authentication for more than one resource.
        As that is an uncommon situation, it will be handled in another patch.

        * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp:
        (WebKit::drawSignal): We have to override the draw signal of the dialog to draw
        a GtkWindow background on the widget. This is required because the widget doesn't
        have a real GtkWindow to draw its background.
        (WebKit::loadChangedSignal): When a new load starts in the WebView destroy the dialog. This
        is so that the dialog doesn't stick around when the user chooses to navigate away from the
        page requiring authentication.
        (WebKit::WebKit2GtkAuthenticationDialog::WebKit2GtkAuthenticationDialog): Create an eventbox
        and frame to hold the dialog contents. Also append the 'background' widget class to the
        event box, so that it can draw a GtkWindow background in the draw signal handler.
        (WebKit::WebKit2GtkAuthenticationDialog::~WebKit2GtkAuthenticationDialog): Disconnect the
        load status changed signal handler.
        (WebKit::WebKit2GtkAuthenticationDialog::show): When it's time to show the dialog, add it to
        WebKitWebViewBase.
        * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Add some new methods for handling the
        embedded dialog.
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (didReceiveAuthenticationChallengeInFrame): Collapse the creation of the dialog into one line.
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (_WebKitWebViewBasePrivate): Add the dialog as a property of the private structure.
        (webkitWebViewChildIsInternalWidget): Added this helper used for determining when a child widget
        is "internal" (ie the web inspector or the authentication dialog).
        (webkitWebViewBaseContainerAdd): Only add non-internal widgets to the children map.
        (webkitWebViewBaseAddAuthenticationDialog): Added.
        (webkitWebViewBaseAddWebInspector): Added this more-foolproof method of adding a web inspector
        to the WebView. This also aligns it with the way the authentication dialog is added.
        (webkitWebViewBaseContainerRemove): When removing the authentication dialog, zero out the
        field in the private structure.
        (webkitWebViewBaseContainerForall): Add support for the authentication dialog here too.
        (webkitWebViewBaseChildMoveResize): Don't pass on move_resize events to internal children.
        (webkit_web_view_base_init): Zero out the authentication dialog member on init.
        (webkitWebViewBaseDraw): If the authentication dialog is active, draw a shadow over web content.
        (resizeWebKitWebViewBaseFromAllocation): Make the authentication dialog centered in the view.
        (webkitWebViewBaseKeyPressEvent): Pass on key events to the authentication dialog if active.
        (webkitWebViewBaseButtonPressEvent): If the authentication dialog is active don't pass button events
        to web content.
        (webkitWebViewBaseButtonReleaseEvent):  Ditto.
        (webkitWebViewBaseScrollEvent): Ditto.
        (webkitWebViewBaseMotionNotifyEvent): Ditto.
        (webkitWebViewBaseFocus): Pass on focus events to the authentication dialog so that tabbing between
        elements in the dialog works correctly.
        (webkit_web_view_base_class_init): Hook up the focus event.
        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h: Add new methods for adding the authentication dialog
        and the web inspector.
        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
        (WebKit::WebInspectorProxy::createInspectorWindow): Use the new method for adding the web inspector.

2012-11-29  Andrei Bucur  <abucur@adobe.com>

        Fix the build after r136095
        https://bugs.webkit.org/show_bug.cgi?id=103629

        Unreviewed.

        Add a static_cast to fix the build.

        * Shared/mac/ObjCObjectGraphCoders.mm:
        (WebKit::ObjCObjectGraphEncoder::baseEncode):

2012-11-29  Christophe Dumez  <christophe.dumez@intel.com>

        [CoordinatedGraphics] Have LayerTreeRenderer::ensureLayer() return the layer
        https://bugs.webkit.org/show_bug.cgi?id=103645

        Reviewed by Noam Rosenthal.

        The current LayerTreeRenderer code keep calling ensureLayer() and then
        LayerMap::find() to retrieve the layer. Since ensureLayer() already has
        a pointer to the layer, we can simply have the function return it.
        This is slightly more efficient and it makes the code a bit simpler.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::setLayerChildren):
        (WebKit::LayerTreeRenderer::setLayerFilters):
        (WebKit::LayerTreeRenderer::setLayerState):
        (WebKit::LayerTreeRenderer::ensureLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

2012-11-29  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] TiledBackingStore: User events are sent to web page before it is shown
        https://bugs.webkit.org/show_bug.cgi?id=101753

        Reviewed by Jocelyn Turcotte.

        User events are suppressed on WEB process side while drawing area is frozen.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::mouseEvent):
        (WebKit::WebPage::wheelEvent):
        (WebKit::WebPage::keyEvent):
        (WebKit::WebPage::gestureEvent):
        (WebKit::WebPage::touchEvent):
        (WebKit::WebPage::sendIfEventCannotBeHandled):
        (WebKit):
        (WebKit::WebPage::didCompletePageTransition):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):

2012-11-29  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        Possible to resize out of bounds 
        https://bugs.webkit.org/show_bug.cgi?id=103521

        Reviewed by Jocelyn Turcotte.

        Enforce the viewportBounds after resize, and ensure a user fitted page remains
        fit on viewport resize, but not on content growth.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml: Added.
        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didChangeContentsSize):
        (WebKit::PageViewportController::didChangeViewportAttributes):
        (WebKit::PageViewportController::updateMinimumScaleToFit):
        * UIProcess/PageViewportController.h:
        (PageViewportController):

2012-11-29  Michael Brüning  <michael.bruning@digia.com>

        [Qt][WK2] Commit the preedit string in the input method when focus is about to be moved.
        https://bugs.webkit.org/show_bug.cgi?id=97774

        Reviewed by Kenneth Rohde Christiansen.

        Implements the handler for willSetInputMethodState in WebKit2 in Qt.
        This is needed to tell the input method instance in Qt to commit its
        preedit content when the focus has moved to another node to prevent a
        bug where the old preedit string was kept as the preedit string and
        the editor moved focus back to the old node when continuing to enter
        text via the input method.

        This behavior is analog to the behavior of the QtQuick text input
        elements.

        * UIProcess/API/qt/raw/qrawwebview.cpp:
        (QRawWebViewPrivate::handleWillSetInputMethodState):
        * UIProcess/API/qt/raw/qrawwebview_p_p.h:
        (QRawWebViewPrivate):
        * UIProcess/PageClient.h:
        (PageClient):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit::QtPageClient::handleWillSetInputMethodState):
        (WebKit):
        * UIProcess/qt/QtPageClient.h:
        (QtPageClient):
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::handleWillSetInputMethodState):
        (WebKit):
        * UIProcess/qt/QtWebPageEventHandler.h:
        (QtWebPageEventHandler):
        * UIProcess/qt/WebPageProxyQt.cpp:
        (WebKit::WebPageProxy::willSetInputMethodState):
        (WebKit):
        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        (WebKit::WebEditorClient::willSetInputMethodState):

2012-11-28  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] The WebView should be flickable only using touch events
        https://bugs.webkit.org/show_bug.cgi?id=100964

        Reviewed by Kenneth Rohde Christiansen.

        Let a user interacting with the WebView using a mouse the same way that a
        desktop browser would.
        This allows normal behaviors like text selecting, hover events, mouse cursors
        as well as avoid touch highlighting and touch adjustment.

        To do so we let all mouse events to be handled by the page directly instead
        of sending them to QtWebPageEventHandler. Since unhandled mouse events aren't
        pushed back to the PageClient like touch events does, this have the intended
        behavior of not letting mouse events affect QQuickFlickable.

        * UIProcess/API/qt/qquickwebview.cpp:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewFlickablePrivate):

2012-11-29  Andras Becsi  <andras.becsi@digia.com>

        [Qt] Fix installation of QtWebProcess binary
        https://bugs.webkit.org/show_bug.cgi?id=101735

        Reviewed by Simon Hausmann.

        If available use QLibraryInfo::LibraryExecutablesPath to find
        the web process and the plugin process and deploy both helper
        processes to QT_INSTALL_LIBEXECS.

        The effective fallback used to find the helper processes becomes:
            1. Application directory
            2. Qt library executables directory (QLibraryInfo::LibraryExecutablesPath)
            3. Qt binaries directory (QLibraryInfo::BinariesPath)
            4. No absolute path used

        * PluginProcess.pro:
        * Shared/qt/ProcessExecutablePathQt.cpp:
        (WebKit::executablePath):
        * WebProcess.pro:

2012-11-28  Ryuan Choi  <ryuan.choi@gmail.com>

        [EFL] Generate big_button_theme.edj
        https://bugs.webkit.org/show_bug.cgi?id=103511

        Reviewed by Gyuyoung Kim.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
        (EWK2UnitTest::EWK2UnitTestEnvironment::pathForTheme):
        (EWK2UnitTest):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
        (EWK2UnitTestEnvironment):
        * UIProcess/API/efl/tests/resources/big_button_theme.edj: Removed.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp: Modified to use generated big_button_theme.edj
        (TEST_F):

2012-11-28  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135973.
        http://trac.webkit.org/changeset/135973
        https://bugs.webkit.org/show_bug.cgi?id=103604

        It made API test crash on EFL bots (Requested by gyuyoung on
        #webkit).

        * UIProcess/API/efl/ewk_view.cpp:
        (createEwkView):

2012-11-28  Michael Pruett  <michael@68k.org>

        IndexedDB: Remove duplicate toWireString() and createFromWire() methods in JSC SerializedScriptValue
        https://bugs.webkit.org/show_bug.cgi?id=103554

        Reviewed by Kentaro Hara.

        In r135022, duplicate createFromWire() and toWireString() methods
        were added to the JSC version of SerializedScriptValue. In
        order to allow the JSC SerializedScriptValue to compile when
        ENABLE(INDEXED_DATABASE) is turned on, these new methods have
        been removed and the old methods have been moved outside the
        ENABLE(INDEXED_DATABASE) guard.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-28  Sam Weinig  <sam@webkit.org>

        Fix 32bit build.

        * Shared/mac/ObjCObjectGraphCoders.mm:
        (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
        (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):

2012-11-28  Sam Weinig  <sam@webkit.org>

        Add an objc object graph wrapper and coder for WKConnection message bodies
        https://bugs.webkit.org/show_bug.cgi?id=103589

        Reviewed by Anders Carlsson.

        Adds a new type of UserMessageCoder for objc object graphs that allows encoding/decoding
        WKBrowsingContextController across the wire.

        * Shared/APIClient.h:
        (APIClient):
        (WebKit::APIClient::client):
        Add accessor for the ClientInterface.

        * Shared/APIObject.h:
        Add new TypeObjCObjectGraph type.

        * Shared/mac/ObjCObjectGraph.h: Added.
        (ObjCObjectGraph):
        (WebKit::ObjCObjectGraph::create):
        (WebKit::ObjCObjectGraph::root):
        (WebKit::ObjCObjectGraph::ObjCObjectGraph):
        (WebKit::ObjCObjectGraph::type):
        * Shared/mac/ObjCObjectGraph.mm: Added.
        Wraps 

        * Shared/mac/ObjCObjectGraphCoders.h: Added.
        (WebContextObjCObjectGraphEncoder):
        (WebContextObjCObjectGraphDecoder):
        (InjectedBundleObjCObjectGraphEncoder):
        (InjectedBundleObjCObjectGraphDecoder):
        * Shared/mac/ObjCObjectGraphCoders.mm: Added.
        (WebKit::typeFromObject):
        (ObjCObjectGraphEncoder):
        (WebKit::ObjCObjectGraphEncoder::baseEncode):
        (WebKit::ObjCObjectGraphEncoder::ObjCObjectGraphEncoder):
        (ObjCObjectGraphDecoder):
        (WebKit::ObjCObjectGraphDecoder::baseDecode):
        (WebKit::ObjCObjectGraphDecoder::ObjCObjectGraphDecoder):
        (WebContextObjCObjectGraphEncoderImpl):
        (WebKit::WebContextObjCObjectGraphEncoderImpl::WebContextObjCObjectGraphEncoderImpl):
        (WebKit::WebContextObjCObjectGraphEncoderImpl::encode):
        (WebContextObjCObjectGraphDecoderImpl):
        (WebKit::WebContextObjCObjectGraphDecoderImpl::WebContextObjCObjectGraphDecoderImpl):
        (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
        (InjectedBundleObjCObjectGraphEncoderImpl):
        (WebKit::InjectedBundleObjCObjectGraphEncoderImpl::InjectedBundleObjCObjectGraphEncoderImpl):
        (WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):
        (InjectedBundleObjCObjectGraphDecoderImpl):
        (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::InjectedBundleObjCObjectGraphDecoderImpl):
        (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
        (WebKit::WebContextObjCObjectGraphEncoder::WebContextObjCObjectGraphEncoder):
        (WebKit::WebContextObjCObjectGraphEncoder::encode):
        (WebKit::WebContextObjCObjectGraphDecoder::WebContextObjCObjectGraphDecoder):
        (WebKit::WebContextObjCObjectGraphDecoder::decode):
        (WebKit::InjectedBundleObjCObjectGraphEncoder::InjectedBundleObjCObjectGraphEncoder):
        (WebKit::InjectedBundleObjCObjectGraphEncoder::encode):
        (WebKit::InjectedBundleObjCObjectGraphDecoder::InjectedBundleObjCObjectGraphDecoder):
        (WebKit::InjectedBundleObjCObjectGraphDecoder::decode):
        Added.

        * UIProcess/API/mac/WKBrowsingContextController.mm:
        (+[WKBrowsingContextController _browsingContextControllerForPageRef:]):
        * UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
        Expose the accessor to get the WKPageRef from a WKBrowsingContextController and add a 
        new method to get a WKBrowsingContextController from a WKPageRef.

        * UIProcess/API/mac/WKConnection.mm:
        (-[WKConnection sendMessageWithName:body:]):
        (didReceiveMessage):
        Switch WKConnection to use ObjCObjectGraph to encode the messageBody.

        * UIProcess/WebContextUserMessageCoders.h:
        (WebKit::WebContextUserMessageEncoder::encode):
        (WebKit::WebContextUserMessageDecoder::decode):
        * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
        (WebKit::InjectedBundleUserMessageEncoder::encode):
        (WebKit::InjectedBundleUserMessageDecoder::decode):
        Proxy to ObjCObjectGraph coders when user message encoding/decoding ObjCObjectGraph APIObjects.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
        (-[WKWebProcessPlugInController _browserContextControllerForBundlePageRef:]):
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
        Add method to get WKWebProcessPlugInController from the WKBundlePageRef.

        * WebKit2.xcodeproj/project.pbxproj:
        Add new files.

2012-11-28  Sergio Villar Senin  <svillar@igalia.com>

        [WK2][Qt] Add drag&drop support to Flickable webView
        https://bugs.webkit.org/show_bug.cgi?id=100778

        Reviewed by Jocelyn Turcotte.

        Enable the ItemAcceptsDrops flag in the flickable WebView. This
        will allow the WebView to receive drag&drop events.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::initialize):

2012-11-28  Shinya Kawanaka  <shinyak@chromium.org>

        [Shadow] Move Distribution stuffs from ShadowRoot
        https://bugs.webkit.org/show_bug.cgi?id=103481

        Reviewed by Hajime Morita.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-28  Tim Horton  <timothy_horton@apple.com>

        [mac] Dictionary lookup bubble loses intrarange formatting
        https://bugs.webkit.org/show_bug.cgi?id=103496
        <rdar://problem/12762172>

        Reviewed by Alexey Proskuryakov.

        Pass an NSAttributedString (made via WebHTMLConverter on the WebProcess side) through
        when showing dictionary popups, so that we preserve more formatting in the yellow dictionary
        highlight. Also, remove the fontInfo member from DictionaryPopupInfo, since we don't need it anymore.

        * Shared/DictionaryPopupInfo.cpp:
        (WebKit::DictionaryPopupInfo::encode): Don't encode the now-removed fontInfo member.
        (WebKit::DictionaryPopupInfo::decode): Don't decode the now-removed fontInfo member.
        * Shared/DictionaryPopupInfo.h: Remove the fontInfo member.
        * UIProcess/API/mac/PageClientImpl.h:
        (PageClientImpl): didPerformDictionaryLookup should take an AttributedString instead of a plain String, and
        no longer needs to take the page scale factor.
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::didPerformDictionaryLookup): Use the AttributedString we're handed from the WebProcess
        instead of constructing one ourselves; this way, we have all the attributes instead of just a single font.
        * UIProcess/PageClient.h:
        (PageClient): didPerformDictionaryLookup should take an AttributedString instead of a plain String.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): didPerformDictionaryLookup should take an AttributedString instead of a plain String.
        * UIProcess/WebPageProxy.messages.in: DidPerformDictionaryLookup should take an AttributedString instead of a plain String.
        * UIProcess/mac/WebPageProxyMac.mm:
        (WebKit::WebPageProxy::didPerformDictionaryLookup): didPerformDictionaryLookup should take an AttributedString instead of a plain String.
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::performDictionaryLookupForRange): performDictionaryLookupForRange should hand WebPageProxy an AttributedString
        constructed via WebHTMLConverter instead of a plain text string paired with a single font descriptor.
        Also, scale the size of every font attribute by the current pageScaleFactor.

2012-11-28  peavo@outlook.com  <peavo@outlook.com>

        [WinCairo] Crash when requesting favicon.
        https://bugs.webkit.org/show_bug.cgi?id=102689

        Reviewed by Brent Fulgham.

        * win/WebKit2CFLite.def: Link fixes.
        * win/WebKit2.def: Link fixes.

2012-11-28  Christophe Dumez  <christophe.dumez@intel.com>

        Regression(r135962): m_pendingSyncBackingStores needs to be cleared in LayerTreeRenderer::purgeGLResources()
        https://bugs.webkit.org/show_bug.cgi?id=103527

        Reviewed by Jocelyn Turcotte.

        Make sure m_pendingSyncBackingStores is cleared in
        LayerTreeRenderer::purgeGLResources() to avoid trying to assign
        backing store to layers after everything has been invalidated.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::purgeGLResources):

2012-11-28  Christophe Dumez  <christophe.dumez@intel.com>

        Regression(r135962): ASSERTION FAILED: !m_pedningSyncBackingStores.contains(layer)
        https://bugs.webkit.org/show_bug.cgi?id=103498

        Reviewed by Kenneth Rohde Christiansen.

        We hit the !m_pedningSyncBackingStores.contains(layer) assertion
        in LayerTreeRenderer when 2 asynchronous backing store operations
        are pending. The current code checks if the layer already has a
        backing store in its guard but this is insufficient as it is not
        checking the m_pendingSyncBackingStores hash for pending backing
        store changes.

        In this patch, we improve the guards in createBackingStoreIfNeeded()
        and removeBackingStoreIfNeeded() to check not only if the layer has
        already a backing store but also check m_pendingSyncBackingStores
        for pending changes. This is safer and it allows for optimizations
        in the cases where we have both a removal and a creation pending.
        In those cases, we can simply cancel the pending operation instead
        of queueing a new one.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::getBackingStore):
        (WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

2012-11-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [EFL][WK2] MiniBrowser rendering should not get blurry when scrolled down with different scale values
        https://bugs.webkit.org/show_bug.cgi?id=103079

        Reviewed by Simon Hausmann.

        The problem was caused because we moved the page inside our viewport
        in non-discrete units.

        Now instead of changing the content visible in our viewport by
        applying scale, and then transforming the CSS offset, we now first
        discretely position the page in UI coordinates.

        This patch also removes some dead code.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::transformFromScene):
        (EwkViewImpl::displayTimerFired):

           Transform according to the page position.

        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::setPagePosition): Now stores a float.
        (EwkViewImpl::discretePagePosition): Returns the discrete page position.
        (EwkViewImpl):
        * UIProcess/efl/PageClientLegacyImpl.cpp:
        (WebKit::PageClientLegacyImpl::updateViewportSize):
        (WebKit::PageClientLegacyImpl::pageDidRequestScroll):
        * UIProcess/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::setViewportPosition): Convert to page position.
        (WebKit::PageViewportControllerClientEfl::setContentsScale):
        (WebKit::PageViewportControllerClientEfl::didResumeContent):
        * UIProcess/efl/PageViewportControllerClientEfl.h:
        (WebKit::PageViewportControllerClientEfl::scaleFactor): Use the value
        from the view directly.
        (WebKit::PageViewportControllerClientEfl::contentPosition):
        (PageViewportControllerClientEfl):

2012-11-28  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2][AC] No need to export GL properties from EwkViewImpl class
        https://bugs.webkit.org/show_bug.cgi?id=103505

        Reviewed by Kenneth Rohde Christiansen.

        No need to export GL data members from EwkViewImpl class, 
        those are internal implementation objects not used by anyone outside the class.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::createGLSurface):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        (EwkViewImpl::evasGLContext):
        (EwkViewImpl::evasGLSurface):

2012-11-28  Joone Hur  <joone.hur@intel.com>

        [EFL][WK2][AC] Clear the viewport with white color
        https://bugs.webkit.org/show_bug.cgi?id=103495

        When initializing a GL surface, we should clear the buffer with white color.

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):

2012-11-27  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Duplicated WebPageGroup initialization
        https://bugs.webkit.org/show_bug.cgi?id=103229

        Reviewed by Gyuyoung Kim.

        WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
        because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.

        As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
        is created with default context.

        * UIProcess/API/efl/ewk_view.cpp:
        (createEwkView):

2012-11-27  Huang Dongsung  <luxtella@company100.net>

        REGRESSION(r135620): ASSERT(m_state.drawsContent && m_state.contentsVisible && !m_size.isEmpty()) hits in TextureMapperLayer::paintSelf().
        https://bugs.webkit.org/show_bug.cgi?id=103171

        Reviewed by Noam Rosenthal.

        Ensure that TextureMapperLayer has a backing store when the layer has
        drawsContent and contentsVisible properties and the size of the layer is not
        empty.

        LayerTreeRenderer::setLayerState() must not set a backing store to
        TextureMapperLayer because setLayerState() just changes states of
        GraphicsLayerTextureMapper instead of TextureMapperLayer.

        Now LayerTreeRenderer::flushLayerChanges() sets a backing store as well as layer
        states to TextureMapperLayer.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::getBackingStore):
        (WebKit::LayerTreeRenderer::prepareContentBackingStore):
        (WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
        (WebKit::LayerTreeRenderer::flushLayerChanges):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (WebCore):

2012-11-27  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Should not be able to edit read-only text annotations
        https://bugs.webkit.org/show_bug.cgi?id=103387
        <rdar://problem/12752313>

        Reviewed by Alexey Proskuryakov.

        Don't allow read-only annotations to become active.

        * WebKit2.xcodeproj/project.pbxproj: Add PDFAnnotationTextWidgetDetails.h.
        * WebProcess/Plugins/PDF/PDFAnnotationTextWidgetDetails.h: Added.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::setActiveAnnotation): Bail if the annotation is read-only.
        * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm: Move PDFAnnotationTextWidget details category to PDFAnnotationTextWidgetDetails.h

2012-11-27  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Refactor code managing a backing store in LayerTreeRenderer.
        https://bugs.webkit.org/show_bug.cgi?id=103298

        Reviewed by Noam Rosenthal.

        This patch makes LayerTreeRenderer assign a content backing store to
        TextureMapperLayer only in setLayerState(). Currently, createTile() can assign
        the backing store to TextureMapperLayer and it can break the invariant condition
        of TextureMapperLayer: TextureMapperLayer can have its own backing store only if
        the layer has following conditions: drawsContent, contentsVisible and non empty
        size.

        In addition, the modified code about creating and removing a backing store
        matches the same purpose code of CoordinatedGraphicsLayer and
        GraphicsLayerTextureMapepr.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::layerShouldHaveBackingStore):
        (WebKit):
        (WebKit::LayerTreeRenderer::setLayerState):
        (WebKit::LayerTreeRenderer::getBackingStore):
        (WebKit::LayerTreeRenderer::prepareContentBackingStore):
        (WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::removeBackingStore):
        (WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
        (WebKit::LayerTreeRenderer::createTile):
        (WebKit::LayerTreeRenderer::removeTile):
        (WebKit::LayerTreeRenderer::updateTile):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
            This method does not create a backing store anymore because flushCompositingStateForThisLayerOnly()
            can create a backing store if needed. Moreover, we must sync a layer state prior to creating a backing store
            after this patch, because LayerTreeRenderer::createTile() does not create a backing store anymore.

2012-11-27  James Simonsen  <simonjam@chromium.org>

        Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
        https://bugs.webkit.org/show_bug.cgi?id=102151

        Reviewed by Adam Barth.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::performFrameLoadURLRequest):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::loadURLRequest):
        (WebKit::WebPage::loadData):

2012-10-22  Jer Noble  <jer.noble@apple.com>

        [WK2] [Mac] WebKit Full Screen API should use NSWindow full screen API.
        https://bugs.webkit.org/show_bug.cgi?id=100025

        Reviewed by Dan Bernstein.

        Use the NSWindow full screen API when taking the WebView full screen. To facility the case where the browser window is already
        in full screen mode, no longer hide the browser window when entering full screen. Instead, provide a placeholder view with 
        instructions to click the placeholder to exit full screen.

        * UIProcess/mac/WKFullScreenWindowController.h:
        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController init]): Set self as the window's delegate; enable window's full screen action.
        (-[WKFullScreenWindowController dealloc]): Clear our window's delegate.
        (-[WKFullScreenWindowController applicationDidChangeScreenParameters:]): Remove reference to _updateWindowAndDockForFullScreen.
        (-[WKFullScreenWindowController enterFullScreen:]):  Ditto. Create a WKFullScreenPlaceholderView instead of generic NSImageView.
        (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]): Ditto. Call NSWindow enterFullScreen: API.
        (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Show the warning view.
        (-[WKFullScreenWindowController exitFullScreen]): Hide the warning view.
        (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]): Add special case where we are exiting
            from full screen mode when the full screen window is not on screen.
        (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Remove reference to _updateMenuAndDockForFullScreen.
        (-[WKFullScreenWindowController customWindowsToEnterFullScreenForWindow:]): Added. Return the background window and the full screen window.
        (-[WKFullScreenWindowController customWindowsToExitFullScreenForWindow:]): Ditto.
        (-[WKFullScreenWindowController window:startCustomAnimationToEnterFullScreenWithDuration:]): Added. Call through to _startEnterFullScreenAnimationWithDuration:
        (-[WKFullScreenWindowController window:startCustomAnimationToExitFullScreenWithDuration:]): Added. Call through to _startExitFullScreenAnimationWithDuration:

2012-11-27  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] 3D pixel tests are failing
        https://bugs.webkit.org/show_bug.cgi?id=102833

        Reviewed by Kenneth Rohde Christiansen.

        Added an API for generating a snapshot, to be used from WebKitTestRunner.

        * PlatformEfl.cmake:
        * UIProcess/API/C/efl/WKView.cpp:
        (WKViewGetSnapshot):
        * UIProcess/API/C/efl/WKView.h:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::onFaviconChanged):
        (EwkViewImpl::takeSnapshot):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/SnapshotImageGL.cpp: Added.
        (getImageFromCurrentTexture):
        * UIProcess/API/efl/SnapshotImageGL.h: Added.

2012-11-27  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Page scale factor should affect subframe PDFs
        https://bugs.webkit.org/show_bug.cgi?id=103291
        <rdar://problem/12555249>

        Reviewed by Darin Adler.

        For subframe PDFs, hand PDFKit the pageScaleFactor for the parent page
        so it can scale its drawing appropriately.

        * WebProcess/Plugins/PDF/PDFPlugin.h: Add updatePageAndDeviceScaleFactors.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Call updatePageAndDeviceScaleFactors
        instead of manually updating PDFLayerController's device scale factor.
        (WebKit::PDFPlugin::updatePageAndDeviceScaleFactors): Hand PDFLayerController
        the "underlying" (non-zoom) content scale, which is the product of the
        device scale and the page scale.
        (WebKit::PDFPlugin::contentsScaleFactorChanged): Use updatePageAndDeviceScaleFactors.
        (WebKit::PDFPlugin::geometryDidChange): Use updatePageAndDeviceScaleFactors to keep
        PDFLayerController's notion of the page scale up to date when the plugin's
        geometry changes.

2012-11-27  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Scroll bars do not grow on hover
        https://bugs.webkit.org/show_bug.cgi?id=103382
        <rdar://problem/12555262>

        Reviewed by Beth Dakin.

        PDFPlugin needs to forward relevant mouse events to the scrollbars.
        In addition, it needs to implement currentMousePosition so ScrollableArea and friends
        can find the mouse position at arbitrary times.

        I also took this opportunity to factor some coordinate space conversion functions out.

        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (WebKit::PDFPlugin::currentMousePosition): Added. Return the last mouse position in our coordinate space.
        (WebKit::PDFPlugin::convertFromRootViewToPlugin): Added.
        (WebKit::PDFPlugin::convertFromPluginToPDFView): Added.
        (PDFPlugin):
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::convertFromRootViewToPlugin): Convert a point from content space to plugin space, via the transform we get in geometryDidChange.
        (WebKit::PDFPlugin::convertFromPluginToPDFView): Convert a point from plugin space to PDFLayerController's flipped coordinate space.
        (WebKit::PDFPlugin::geometryDidChange): Use convertFromPluginToPDFView.
        (WebKit::PDFPlugin::nsEventForWebMouseEvent): Cache the mouse position in plugin space instead of PDFLayerController space. Use our new conversion functions.
        (WebKit::PDFPlugin::handleMouseEvent): Forward relevant mouse events to scrollbars:
        Determine which scrollbar the mouse is over now, and which it was previously over, and use that to:
        If the mouse is moved over a scrollbar, send mouseEntered to the scrollbar.
        If the mouse is moved out of a scrollbar, send mouseExited to the scrollbar.
        If the mouse is currently over a scrollbar, send mouseMoved/Up/Down to the scrollbar instead of PDFLayerController.
        If the mouse is currently over the scroll corner, bail, because nobody should get those events.

2012-11-27  Dan Bernstein  <mitz@apple.com>

        Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
        https://bugs.webkit.org/show_bug.cgi?id=103358

        Reviewed by Adele Peterson.

        To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
        prevent media from starting automatically when the view is put in a window.

        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
        (WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.
        * Shared/WebPageCreationParameters.h:
        (WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.
        * UIProcess/API/C/WKPage.cpp:
        (WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.
        * UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
        to true, the value matching the current behavior.
        (WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
        m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
        (WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
        process creation parameters.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
        m_mayStartMediaWhenInWindow.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
        parameters.
        (WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
        conditional on m_mayStartMediaWhenInWindow.
        (WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
        already in a window when changing from false to true, starts m_setCanStartMediaTimer.
        * WebProcess/WebPage/WebPage.h:
        (WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.
        * WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.

2012-11-27  Pratik Solanki  <psolanki@apple.com>

        objc/objc-runtime.h does not exist on all PLATFORM(MAC)
        https://bugs.webkit.org/show_bug.cgi?id=101780

        Reviewed by Brent Fulgham.

        Clean up header includes so we don't include objc/objc-runtime.h.

        * PluginProcess/mac/PluginProcessShim.mm:
        * UIProcess/API/mac/PDFViewController.mm:

2012-11-27  Alexey Proskuryakov  <ap@apple.com>

        [WK2] WebPageProxy::relatedPages() cannot assume that this page is known to process
        https://bugs.webkit.org/show_bug.cgi?id=103433
        <rdar://problem/12543513>

        Reviewed by Jessie Berlin.

        * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::relatedPages): Removed an incorrect
        assertion, and modified code to not rely on its condition being true.

2012-11-27  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][Qt][WK2] Tiles not always painted
        https://bugs.webkit.org/show_bug.cgi?id=103271

        Reviewed by Kenneth Rohde Christiansen.

        The problem turned up because visible content was synchromized before the new fixed
        layout size had been applied in the web process.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didChangeViewportSize):
        (WebKit::PageViewportController::didChangeViewportAttributes):

2012-11-27  Yael Aharon  <yael.aharon@intel.com>

        [EFL] Graphics layer edges are sometimes very pixelated
        https://bugs.webkit.org/show_bug.cgi?id=103302

        Reviewed by Kenneth Rohde Christiansen.

        The call setEnableEdgeDistanceAntialiasing(true) was lost in the refactoring of
        http://trac.webkit.org/changeset/135401.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):

2012-11-27  KwangYong Choi  <ky0.choi@samsung.com>

        [X11] Allow empty plugin name and description during scan plugin
        https://bugs.webkit.org/show_bug.cgi?id=103234

        Reviewed by Simon Hausmann.

        Empty entries should be allowed when split the output string of scan plugin
        because the plugin name and the description can be empty string.

        * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
        (WebKit::PluginProcessProxy::scanPlugin):
        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::scanPlugin):

2012-11-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135819.
        http://trac.webkit.org/changeset/135819
        https://bugs.webkit.org/show_bug.cgi?id=103388

        It broke many tests on Qt and EFL WK2 platforms (Requested by
        Ossy on #webkit).

        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode):
        (WebKit::WebPageCreationParameters::decode):
        * Shared/WebPageCreationParameters.h:
        (WebPageCreationParameters):
        * UIProcess/API/C/WKPage.cpp:
        (WKPageCopyRelatedPages):
        * UIProcess/API/C/WKPagePrivate.h:
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        (WebKit::WebPageProxy::creationParameters):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::setIsInWindow):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:

2012-11-27  Kyungjin Kim  <gen.kim@samsung.com>

        [WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=103008

        Reviewed by Gyuyoung Kim.

        Fix API names in WKPreferences from 2d to 2D.

        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetAccelerated2DCanvasEnabled):
        (WKPreferencesGetAccelerated2DCanvasEnabled):
        * UIProcess/API/C/WKPreferencesPrivate.h:

2012-11-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135786.
        http://trac.webkit.org/changeset/135786
        https://bugs.webkit.org/show_bug.cgi?id=103379

        It made 3 plugin tests timeout on several platforms (Requested
        by Ossy on #webkit).

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::performFrameLoadURLRequest):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::loadURLRequest):
        (WebKit::WebPage::loadData):
        (WebKit::WebPage::linkClicked):

2012-11-27  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove the maskTarget member of CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=103297

        Reviewed by Noam Rosenthal.

        Remove the maskTarget member of CoordinatedGraphicsLayer, which is not used.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135822.
        http://trac.webkit.org/changeset/135822
        https://bugs.webkit.org/show_bug.cgi?id=103369

        Undo the revert of r135818, since that change does not affect
        code used by Chromium (Requested by apavlov on #webkit).

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):

2012-11-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135818.
        http://trac.webkit.org/changeset/135818
        https://bugs.webkit.org/show_bug.cgi?id=103368

        platform/chromium/virtual/threaded/compositing/visibility
        /visibility-simple-webgl-layer.html crash on Mountain Lion
        (Requested by apavlov on #webkit).

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):

2012-11-26  Dan Bernstein  <mitz@apple.com>

        <rdar://problem/11931191> Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
        https://bugs.webkit.org/show_bug.cgi?id=103358

        Reviewed by Adele Peterson.

        To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
        prevent media from starting automatically when the view is put in a window.

        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
        (WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.
        * Shared/WebPageCreationParameters.h:
        (WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.
        * UIProcess/API/C/WKPage.cpp:
        (WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.
        * UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
        to true, the value matching the current behavior.
        (WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
        m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
        (WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
        process creation parameters.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
        m_mayStartMediaWhenInWindow.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
        parameters.
        (WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
        conditional on m_mayStartMediaWhenInWindow.
        (WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
        already in a window when changing from false to true, starts m_setCanStartMediaTimer.
        * WebProcess/WebPage/WebPage.h:
        (WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.
        * WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.

2012-11-26  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Set visibility to a mask layer in GraphicsLayer::setContentsVisible().
        https://bugs.webkit.org/show_bug.cgi?id=103297

        Reviewed by Noam Rosenthal.

        GraphicsLayerTextureMapper and CoordinatedGraphicsLayer set the visibility of a
        mask layer in setContentsVisible() and setMaskLayer() like setting a size.
        This patch is needed because RenderLayerBacking does not set the visibility to a
        mask layer like the size.

        This patch does not change user experience because an invisible layer is not
        rendered although the mask layer is rendered. In that sense, it is an
        optimization patch.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsVisible):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):

2012-11-26  Kyungjin Kim  <gen.kim@samsung.com>

        [WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=103008

        Reviewed by Gyuyoung Kim.

        Add setting APIs for accelerated 2d canvas in WebKit2.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetAccelerated2dCanvasEnabled):
        (WKPreferencesGetAccelerated2dCanvasEnabled):
        * UIProcess/API/C/WKPreferencesPrivate.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):

2012-11-26  Tim Horton  <timothy_horton@apple.com>

        Ensure that plugins are initialized before using handleEditingCommand/isEditingCommandEnabled/shouldAllowScripting
        https://bugs.webkit.org/show_bug.cgi?id=103288

        Reviewed by Dan Bernstein.

        Other PluginView methods that use m_plugin null-check m_plugin and check
        that the plugin has finished initializing before using it. These three
        should do the same thing.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::handleEditingCommand):
        (WebKit::PluginView::isEditingCommandEnabled):
        (WebKit::PluginView::shouldAllowScripting):

2012-11-26  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Subframe PDF context menus are in the wrong place
        https://bugs.webkit.org/show_bug.cgi?id=103284
        <rdar://problem/12727972>

        Reviewed by Dan Bernstein.

        Event position is in window coordinates, not content coordinates.
        Since we have no windowToScreen(), use windowToContents and contentsToScreen
        to get to screen coordinate space, which WKPopupContextMenu wants.

        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::handleContextMenuEvent):

2012-11-26  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin: Ctrl-click opens a link in a PDF in addition to context menu
        https://bugs.webkit.org/show_bug.cgi?id=103282
        <rdar://problem/12710892>

        Reviewed by Dan Bernstein.

        Don't send standard mouse events to PDFKit if a click will also show/hide the context menu.

        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::handleMouseEvent):

2012-11-26  Ryuan Choi  <ryuan.choi@gmail.com>

        [EFL] Unreviewed build fix after r135767 without Tiled Backing Store
        https://bugs.webkit.org/show_bug.cgi?id=103320

        Unreviewed build fix.

        * WebProcess/Plugins/Plugin.cpp:
        * WebProcess/Plugins/Plugin.h:
        (WebCore):

2012-11-26  James Simonsen  <simonjam@chromium.org>

        Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
        https://bugs.webkit.org/show_bug.cgi?id=102151

        Reviewed by Adam Barth.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::performFrameLoadURLRequest):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::loadURLRequest):
        (WebKit::WebPage::loadData):

2012-11-26  Jon Lee  <jonlee@apple.com>

        Pass clicks through to the restarted plugin
        https://bugs.webkit.org/show_bug.cgi?id=102150
        <rdar://problem/12695575>

        Reviewed by Simon Fraser.

        Expose convertToRootView() as a public function for all plugins. It converts the click point
        from local plugin coordinates to root view coordinates. When the events are sent to the
        plugin, the coordinate gets converted back to the local reference frame.
        * WebProcess/Plugins/Plugin.cpp:
        (WebKit::Plugin::convertToRootView): Default implementation should not be reached.
        * WebProcess/Plugins/Plugin.h: Promote convertToRootView() from NetscapePlugin.h.
        * WebProcess/Plugins/Netscape/NetscapePlugin.h: An implementation already existed. Make the
        method virtual.
        * WebProcess/Plugins/PluginProxy.h:
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::convertToRootView): Apply the transform to the provided point to return
        a point in root view coordinates.

        Change the threshold state to PlayingWithPendingMouseClick instead of Playing, since that is
        the earliest state where the plugin is playing.
        * WebProcess/Plugins/PluginView.cpp: Give the snapshot a little more time to generate.
        (WebKit::PluginView::didInitializePlugin): When the plugin has initialized, tell the plugin
        element to dispatch the pending mouse click.
        (WebKit::PluginView::paint):
        (WebKit::PluginView::createWebEvent): Helper function to convert a WebCore mouse event to a
        WebMouseEvent.
        (WebKit::PluginView::handleEvent): If the event is simulated, there is no source event from
        the UI process. So we fabricate one based on the simulated event.
        (WebKit::PluginView::invalidateRect):
        (WebKit::PluginView::isAcceleratedCompositingEnabled):
        * WebProcess/Plugins/PluginView.h:

2012-11-26  Kalev Lember  <kalevlember@gmail.com>

        [GTK] Explicitly link against librt
        https://bugs.webkit.org/show_bug.cgi?id=103194

        Reviewed by Martin Robinson.

        Fixes broken build with undefined references to shm_open / shm_unlink
        symbols. SharedMemoryUnix.cpp uses these so we need to link with -lrt.

        * GNUmakefile.am:

2012-11-26  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add setting to enable / disable HTML5 local storage functionality
        https://bugs.webkit.org/show_bug.cgi?id=103224

        Reviewed by Laszlo Gombos.

        Add API to ewk_settings to enable / disable the HTML5
        local storage functionality. The functionality is
        enabled by default.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_local_storage_enabled_set):
        (ewk_settings_local_storage_enabled_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F): Add API test for ewk_settings_local_storage_enabled_get / set.

2012-11-26  Rafael Brandao  <rafael.lobo@openbossa.org>

        [CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread safe
        https://bugs.webkit.org/show_bug.cgi?id=101341

        Reviewed by Noam Rosenthal.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::syncRemoteContent): The previous swap already clears the
        vector on m_renderQueue. It is also done in a thread-safe way, so clearing it afterward
        can be harmful as we've already released the lock.

2012-11-26  Jaehun Lim  <ljaehun.lim@samsung.com>

        Text Autosizing: Add Text Autosizing APIs for WK2
        https://bugs.webkit.org/show_bug.cgi?id=100633

        Reviewed by Sam Weinig.

        Implement basic Text Autosizing APIs for WK2.
        Text Autosizing is a useful feature for mobile browsers. It adjusts the font size
        of text in wide columns, and makes text more legible.
        This patch adds setting APIs for Text Autosizing in WK2.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetTextAutosizingEnabled):
        (WKPreferencesGetTextAutosizingEnabled):
        * UIProcess/API/C/WKPreferences.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):

2012-11-26  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] REGRESSION(r135575): It made all tests assert
        https://bugs.webkit.org/show_bug.cgi?id=103169

        Reviewed by Simon Hausmann.

        This fixes another regression introduced in r135515:
        initializeWebKitQt shouldn't implicitely call initializeWebCoreQt
        since it can be called from WebKit2 to initialize QStyle for testing.
        This would then lead to things such as PlatformStrategies being
        initialized twice.

        * qt/MainQt.cpp: No need to initialize anything if we're not using QStyle.
        (WebKit):
        (main):

2012-11-26  Huang Dongsung  <luxtella@company100.net>

        REGRESSION(134142): ASSERT(!m_size.isZero()) hits in CoordinatedBackingStore::paintToTextureMapper().
        https://bugs.webkit.org/show_bug.cgi?id=103217

        Reviewed by Noam Rosenthal.

        It is possible for CoordinatedBackingStore of directed composited image to not
        have tiles, because CoordinatedImageBacking does not create tiles when the image
        is invisible.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):

2012-11-25  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] TiledBackingStore: page contents is scaled wrongly
        https://bugs.webkit.org/show_bug.cgi?id=103090

        Reviewed by Kenneth Rohde Christiansen.

        Before this change the page contents scaling in PageViewportController was
        defined all the times by m_rawAttributes.initialScale. If initial scale had not
        been specified in the viewport meta tag it was set to m_minimumScaleToFit inside
        PageViewportController::didChangeViewportAttributes().

        The problem was that m_minimumScaleToFit could have wrong value as contents size
        might have not be updated by the time PageViewportController::didChangeViewportAttributes()
        was invoked.

        The solution is to use m_minimumScaleToFit for contents scaling if initial scale
        is not specified in the viewport meta tag, as it is updated all the time. 
        Also a flag m_initiallyFitToViewport is added to PageViewportController to detect
        whether m_minimumScaleToFit should be used for scaling.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::didChangeContentsSize):
        (WebKit::PageViewportController::pageTransitionViewportReady):
        (WebKit::PageViewportController::didChangeViewportAttributes):
        * UIProcess/PageViewportController.h:
        (PageViewportController):

2012-11-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Stop the mess with DECLARE_EWK_VIEW_CALLBACK arg type definition
        https://bugs.webkit.org/show_bug.cgi?id=103187

        Reviewed by Kenneth Rohde Christiansen.

        Now the client should pass to DECLARE_EWK_VIEW_CALLBACK macro exacly the 
        same arg type s/he wants to have in the Ewk_View callback.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EvasObjectHolder):
        (EwkViewCallbacks::EvasObjectHolder::EvasObjectHolder):
        (EwkViewCallbacks):

2012-11-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Check errors in EwkView callbacks usage at compile time
        https://bugs.webkit.org/show_bug.cgi?id=103177

        Reviewed by Kenneth Rohde Christiansen.

        Errors in EwkView callbacks usage are now checked at compile time.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        (CallBack):
        (EwkViewCallbacks::CallBack::CallBack):
        (EwkViewCallbacks::CallBack::call):

2012-11-23  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135575.
        http://trac.webkit.org/changeset/135575
        https://bugs.webkit.org/show_bug.cgi?id=103169

        It made all tests assert (Requested by Ossy on #webkit).

        * qt/MainQt.cpp:
        (WebKit):
        (main):

2012-11-23  Alexis Menard  <alexis@webkit.org>

        [CSS3 Backgrounds and Borders] Implement new CSS3 background-position parsing.
        https://bugs.webkit.org/show_bug.cgi?id=102104

        Reviewed by Julien Chaffraix.

        Protect the new feature behind a feature flag.

        * Configurations/FeatureDefines.xcconfig:

2012-11-23  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Match the behavior of selfOrAncestorHaveNonAffineTransforms() to its name.
        https://bugs.webkit.org/show_bug.cgi?id=103097

        Reviewed by Noam Rosenthal.

        CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms() does
        not check its ancestor. This patch makes this method check its ancestor
        to match its name.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):

2012-11-23  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: LayerTreeRenderer::removeTile() does not remove tiles actually.
        https://bugs.webkit.org/show_bug.cgi?id=103030

        Reviewed by Noam Rosenthal.

        LayerTreeRenderer::removeTile() must add a backing store into
        m_backingStoresWithPendingBuffers. Otherwise, tiles are not removed.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::removeTile):

2012-11-23  Huang Dongsung  <luxtella@company100.net>

        [TexMap] Remove dependency of TextureMapperLayer on GraphicsLayerTextureMapper.
        https://bugs.webkit.org/show_bug.cgi?id=103046

        Reviewed by Noam Rosenthal.

        This patch makes GraphicsLayerTextureMapper create its own backing
        store. However, LayerTreeRenderer also creates its own backing store. So
        when LayerTreeRenderer uses GraphicsLayerTextureMapper,
        LayerTreeRenderer needs GraphicsLayerTextureMapper to not create its own
        backing store.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::createLayer):
        (WebKit::LayerTreeRenderer::getBackingStore):

2012-11-23  Huang Dongsung  <luxtella@company100.net>

        REGRESSION(r135486): ASSERT(isMainThread()) hit in LayerTreeRenderer::setActive(bool)
        https://bugs.webkit.org/show_bug.cgi?id=103077

        Reviewed by Noam Rosenthal.

        Currently, the painting thread uses purgeGLResources() and setActive().
        QQuickWebPage::updatePaintNode() indirectly calls both methods after
        locking the main thread.

        This patch changes two points.
        1. Remove ASSERT(isMainThread()) in methods that the painting thread can
        call.
        2. Make purgeGLResources() and setActive() call methods of
        LayerTreeCoordinatorProxy via dispatchOnMainThread().

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::renderNextFrame):
        (WebKit::LayerTreeRenderer::purgeGLResources):
        (WebKit):
        (WebKit::LayerTreeRenderer::purgeBackingStores):
        (WebKit::LayerTreeRenderer::setActive):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):

2012-11-23  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2][AC] EwkViewImpl::transformToScreen() does not retrieve the Ecore_X_Window properly
        https://bugs.webkit.org/show_bug.cgi?id=103133

        Reviewed by Kenneth Rohde Christiansen.

        If accelerated compositing is enabled, EwkViewImpl::transformToScreen() should
        attempt to retrieve the Ecore_X_Window using ecore_evas_gl_x11_window_get() first
        and only fall back to ecore_evas_software_x11_window_get().

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::transformToScreen):

2012-11-23  Wojciech Bielawski  <w.bielawski@samsung.com>

        [WK2][WKTR] WebKitTestRunner needs eventSender.contextClick()
        https://bugs.webkit.org/show_bug.cgi?id=86881

        Reviewed by Kenneth Rohde Christiansen.

        InjectedBundle API extended to retrieve contextMenu entries names.
        WebContextMenu exteded with function to retrieve menu items.
        This API is required by layout tests.
        Common code in WebContextMenu.cpp moved to separate method menuItemsWithUserData().
        Behaviour of dependend methods is unchanged.

        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
        (WKBundlePageGetContextMenuEntriesNames):
        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/WebPage/WebContextMenu.cpp:
        (WebKit::WebContextMenu::items):
        (WebKit):
        * WebProcess/WebPage/WebContextMenu.h:
        (WebContextMenu):

2012-11-22  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Avoid initializing PlatformStrategies twice.

        Rubber-stamped by Simon Hausmann.

        This fixes another regression introduced in r135515:
        initializeWebKitQt shouldn't implicitely call initializeWebCoreQt
        since it can be called from WebKit2 to initialize QStyle for testing.
        This would then lead to things such as PlatformStrategies being
        initialized twice.

        * qt/MainQt.cpp: No need to initialize anything if we're not using QStyle.
        (WebKit):
        (main):

2012-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Use custom private macros to define GObjects
        https://bugs.webkit.org/show_bug.cgi?id=99705

        Reviewed by Martin Robinson.

        Add WEBKIT_DEFINE_TYPE macros, similar and compatible with
        G_DEFINE_TYPE macros, to define GObject types. These macros also
        define the init and finalize functions reducing the GObject
        boilerplate and hiding the placement new syntax that causes some
        confusion. The patch replaces the use of G_DEFINE_TYPE macros by
        WEBKIT_DEFINE_TYPE ones and removes the init and finalize
        implementations, moving custom code when needed to the private
        struct constructor/destructor or constructed/dispose virtual
        methods when appropriate.

        * UIProcess/API/gtk/WebKitBackForwardList.cpp:
        * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
        (webkit_back_forward_list_item_class_init):
        * UIProcess/API/gtk/WebKitContextMenu.cpp:
        (webkitContextMenuDispose):
        (webkit_context_menu_class_init):
        * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
        (_WebKitContextMenuItemPrivate::~_WebKitContextMenuItemPrivate):
        (_WebKitContextMenuItemPrivate):
        (webkit_context_menu_item_class_init):
        * UIProcess/API/gtk/WebKitCookieManager.cpp:
        (_WebKitCookieManagerPrivate::~_WebKitCookieManagerPrivate):
        (_WebKitCookieManagerPrivate):
        * UIProcess/API/gtk/WebKitDownload.cpp:
        (webkit_download_class_init):
        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (webkit_favicon_database_class_init):
        * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
        (webkitFileChooserRequestDispose):
        (webkit_file_chooser_request_class_init):
        * UIProcess/API/gtk/WebKitFindController.cpp:
        (webkit_find_controller_class_init):
        * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
        (webkitFormSubmissionRequestDispose):
        (webkit_form_submission_request_class_init):
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp:
        (webkitGeolocationPermissionRequestDispose):
        (webkit_geolocation_permission_request_class_init):
        * UIProcess/API/gtk/WebKitHitTestResult.cpp:
        (webkit_hit_test_result_class_init):
        * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
        (webkit_navigation_policy_decision_class_init):
        * UIProcess/API/gtk/WebKitPlugin.cpp:
        (_WebKitPluginPrivate::~_WebKitPluginPrivate):
        (_WebKitPluginPrivate):
        (webkit_plugin_class_init):
        * UIProcess/API/gtk/WebKitPolicyDecision.cpp:
        (webkitPolicyDecisionDispose):
        (webkit_policy_decision_class_init):
        (webkit_policy_decision_use):
        (webkit_policy_decision_ignore):
        (webkit_policy_decision_download):
        * UIProcess/API/gtk/WebKitPrintOperation.cpp:
        (_WebKitPrintOperationPrivate::~_WebKitPrintOperationPrivate):
        (_WebKitPrintOperationPrivate):
        (webkit_print_operation_class_init):
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
        (webkit_response_policy_decision_class_init):
        * UIProcess/API/gtk/WebKitSecurityManager.cpp:
        (webkit_security_manager_class_init):
        * UIProcess/API/gtk/WebKitSettings.cpp:
        (_WebKitSettingsPrivate::_WebKitSettingsPrivate):
        (_WebKitSettingsPrivate):
        (webkit_settings_class_init):
        * UIProcess/API/gtk/WebKitURIRequest.cpp:
        (webkit_uri_request_class_init):
        * UIProcess/API/gtk/WebKitURIResponse.cpp:
        (webkit_uri_response_class_init):
        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
        (webkit_uri_scheme_request_class_init):
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        * UIProcess/API/gtk/WebKitWebInspector.cpp:
        (_WebKitWebInspectorPrivate::~_WebKitWebInspectorPrivate):
        (_WebKitWebInspectorPrivate):
        (webkit_web_inspector_class_init):
        * UIProcess/API/gtk/WebKitWebResource.cpp:
        (webkit_web_resource_class_init):
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (_WebKitWebViewPrivate::~_WebKitWebViewPrivate):
        (_WebKitWebViewPrivate):
        (webkitWebViewConstructed):
        (webkitWebViewDispose):
        (webkit_web_view_class_init):
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate):
        (_WebKitWebViewBasePrivate):
        (_WebKitWebViewBasePrivate::~_WebKitWebViewBasePrivate):
        (webkitWebViewBaseDispose):
        (webkitWebViewBaseConstructed):
        (webkit_web_view_base_class_init):
        * UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp:
        (webkit_web_view_base_accessible_class_init):
        * UIProcess/API/gtk/WebKitWindowProperties.cpp:
        (webkit_window_properties_class_init):

2012-11-22  KwangYong Choi  <ky0.choi@samsung.com>

        [EFL][WK2] Buildfix when ENABLE_NETSCAPE_PLUGIN_API is disabled
        https://bugs.webkit.org/show_bug.cgi?id=103044

        Reviewed by Kentaro Hara.

        enum ProcessType has PluginProcess only if ENABLE(PLUGIN_PROCESS) is enabled.
        So, guard PluginProcess with ENABLE(PLUGIN_PROCESS).

        * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
        (WebKit::ProcessLauncher::launchProcess):

2012-09-26  Gustavo Noronha Silva  <gns@gnome.org>

        [GTK] Split SVG from WebCore to work-around make limitation
        https://bugs.webkit.org/show_bug.cgi?id=97735

        Reviewed by Carlos Garcia Campos.

        Add a new libtool convenience library, libWebCoreSVG.la, to work-around
        make limitation when linking libWebCore.

        * GNUmakefile.am: link libWebCoreSVG.la into libwebkit2gtk.

2012-11-22  Simon Hausmann  <simon.hausmann@digia.com>, Pierre Rossi <pierre.rossi@digia.com>

        [Qt] Separate QWidget dependant code into separate WebKitWidgets static library
        https://bugs.webkit.org/show_bug.cgi?id=102800

        Reviewed by Tor Arne Vestbø.

        This patch separates code that needs to use QWidget related APIs in
        WebKit/qt/WebCoreSupport and Api from code that doesn't. This means for
        example FrameLoaderClientQt.cpp remains in the WebKit1 static library,
        while qwebpage.cpp and qwebframe.cpp become part of the WebKitWidgets
        static library. WebKit1 is compiled without QT += widgets and therefore
        any widget related dependency has been moved "up" and out of WebKit1 into
        the WebKitWidgets library.

        Between the code in WebKit.a and WebKitWidgets.a new adapters and
        interfaces have been introduced, such as QWebPageAdapter and
        QWebFrameAdapter. QWebPageAdapter, when used from WebKit1, is a way to
        call out into the API layer, implemented by QWebPage (QWebPagePrivate).
        The other way around if QWebPage wants to access WebCore or
        WebCoreSupport related functionality, it will go through
        QWebPageAdapater (as base class). The separation in the direction up
        into the API layer is complete with this patch, no code in WebKit1
        depends on QtWidgets. The separation the other way around, code in the
        API layer not using any WebCore types, is not complete yet.

        Some classes such as QWebSettings, QWebElement or
        DumpRenderTreeSupportQt remain in WebKit1. While they are API layer,
        they do not depend on widget related Qt APIs and they make much more
        use of WebCore internal APIs and therefore are easier to keep in
        WebKit1.

        In the future we plan to place a real shared library boundary between
        WebKit1 and WebKitWidgets, by keeping the WebKit1 static library as
        part of the QtWebKit shared library and by turning the WebKitWidgets
        static library into a shared one.

        * qt/MainQt.cpp:
        (WebKit):
        (main):

2012-11-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [WK2][EFL] No need to remove surface before replacing
        https://bugs.webkit.org/show_bug.cgi?id=103055

        Rubberstamped by Simon Hausmann.

        The surface is stored in a OwnPtr which automatically
        frees the existing surface after replacing it with a new
        one. For some reason, this also fixes resizing issues on
        my Nvidia driver.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):
        * UIProcess/API/efl/EwkViewImpl.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):

2012-11-22  Christophe Dumez  <christophe.dumez@intel.com>

        WebKitTestRunner needs layoutTestController.setCacheModel
        https://bugs.webkit.org/show_bug.cgi?id=42684

        Reviewed by Kenneth Rohde Christiansen.

        Add Bundle C API for WebKitTestRunner to set the
        cache model.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetCacheModel):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setCacheModel):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):
        * WebProcess/WebProcess.h:
        (WebProcess):

2012-11-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        REGRESSION(r135399): Wrong assertion causing an assertion failure: m_rawAttributes.initialScale > 0
        https://bugs.webkit.org/show_bug.cgi?id=102971

        Reviewed by Kenneth Rohde Christiansen.

        m_rawAttributes.initialScale has to be initialized even if m_minimumScaleToFit hasn't changed
        it's value.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didChangeViewportAttributes):

2012-11-22  Eunmi Lee  <eunmi15.lee@samsung.com>

        [EFL][WK2] Correct the parameters of WebPlatformTouchPoint.
        https://bugs.webkit.org/show_bug.cgi?id=102865

        Reviewed by Kenneth Rohde Christiansen.

        Set the screen position as a third parameter and contents position as
        a fourth parameter of WebPlatformTouchPoint().

        * Shared/efl/WebEventFactory.cpp:
        (WebKit::WebEventFactory::createWebTouchEvent):

2012-11-22  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove an invisible TiledBackingStore of CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=102894

        Reviewed by Kenneth Rohde Christiansen.

        CoordinatedGraphicsLayer does not need to have a backing store
        if (!drawsContent() || !contentsAreVisible() || m_size.isEmpty()).

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):

2012-11-22  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: refactor LayerTreeRenderer.
        https://bugs.webkit.org/show_bug.cgi?id=103004

        Reviewed by Noam Rosenthal.

        This patch changes two subjects.
        1. Add ASSERT(isMainThread()) in all methods that are called in the main thread.
        In addition, make dispatchOnMainThread() use callOnMainThread(const Function<void()>&
        function) instead of its own implementation.

        2. Remove setAccelerationMode() because we don't use m_accelerationMode member
        except for the setter.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit):
        (WebKit::LayerTreeRenderer::dispatchOnMainThread):
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::animationFrameReady):
        (WebKit::LayerTreeRenderer::updateViewport):
        (WebKit::LayerTreeRenderer::renderNextFrame):
        (WebKit::LayerTreeRenderer::purgeGLResources):
        (WebKit::LayerTreeRenderer::detach):
        (WebKit::LayerTreeRenderer::setActive):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * UIProcess/efl/PageClientBase.cpp:
        (WebKit::PageClientBase::createDrawingAreaProxy):

2012-11-21  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Use consistent class names in the clients
        https://bugs.webkit.org/show_bug.cgi?id=102684

        Reviewed by Gyuyoung Kim.

        WebKit EFL classes do not use '_' since r135117 but '_' is still remained
        in some clients classes. This patch removed the '_' to make class names
        to be consistent.

        * UIProcess/efl/ContextHistoryClientEfl.cpp:
        (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::didFail):
        * UIProcess/efl/FormClientEfl.cpp:
        (WebKit::FormClientEfl::willSubmitForm):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
        (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
        (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
        * UIProcess/efl/PagePolicyClientEfl.cpp:
        (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::runOpenPanel):
        * UIProcess/efl/RequestManagerClientEfl.cpp:
        (WebKit::EwkUrlSchemeHandler::EwkUrlSchemeHandler):
        (WebKit::RequestManagerClientEfl::didReceiveURIRequest):
        (WebKit::RequestManagerClientEfl::registerURLSchemeHandler):
        * UIProcess/efl/RequestManagerClientEfl.h:
        (RequestManagerClientEfl):
        * UIProcess/efl/ResourceLoadClientEfl.cpp:
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
        (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):
        (WebKit::ResourceLoadClientEfl::didFinishLoadForResource):
        (WebKit::ResourceLoadClientEfl::didFailLoadForResource):
        * UIProcess/efl/ResourceLoadClientEfl.h:
        (ResourceLoadClientEfl):

2012-11-21  Jaehun Lim  <ljaehun.lim@samsung.com>

        [EFL][WK2] Remove #include "ewk_view_private.h" in PageViewportControllerClientEfl.cpp
        https://bugs.webkit.org/show_bug.cgi?id=102773

        Reviewed by Gyuyoung Kim.

        PageViewportControllerClientEfl.cpp doesn't need to include ewk_view_private.h.

        * UIProcess/efl/PageViewportControllerClientEfl.cpp:

2012-11-21  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: refactor changing children code in CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=102896

        Reviewed by Noam Rosenthal.

        When changing children, we don't need to sync a layer state because
        there is no more need to send the parent ID every time the layer tree
        hierarchy changes. So this patch removes didChangeLayerState() in
        methods which change children.

        In addition, purgeBackingStores() does not need to call didChangeChildren()
        because purgeBackingStores() does not change children.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setChildren):
        (WebCore::CoordinatedGraphicsLayer::addChild):
        (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
        (WebCore::CoordinatedGraphicsLayer::addChildAbove):
        (WebCore::CoordinatedGraphicsLayer::addChildBelow):
        (WebCore::CoordinatedGraphicsLayer::replaceChild):
        (WebCore::CoordinatedGraphicsLayer::removeFromParent):
        (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):

2012-11-21  Huang Dongsung  <luxtella@company100.net>

        REGRESSION(r135212): Fix crash due to an infinite rect.
        https://bugs.webkit.org/show_bug.cgi?id=102891

        Reviewed by Noam Rosenthal.

        When CoordinatedGraphicsLayer has a 3D transform, tiledBackingStoreVisibleRect()
        can calculate an infinite rect. However, TiledBackingStore cannot handle the
        infinite rect. This patch clamps the infinite rect to avoid crash in
        TiledBackingStore.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::clampToContentsRectIfRectIsInfinite):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):

2012-11-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        Disambiguate innerNodeFramePoint and mainFramePoint
        https://bugs.webkit.org/show_bug.cgi?id=98139

        Reviewed by Julien Chaffraix.

        Switch to using HitTestResult::innerNodeFrame and HitTestResult::innerNodeFramePoint.

        * WebProcess/WebPage/WebContextMenu.cpp:
        (WebKit::WebContextMenu::show):
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::characterIndexForPoint):

2012-11-21  Simon Hausmann  <simon.hausmann@digia.com>

        Unreviewed Qt/Windows build fix.
        https://bugs.webkit.org/show_bug.cgi?id=102787

        Remove inclusion of QtQml, which drags in QtNetwork, which drags in qnetworksession.h, which
        defines a member function called "interface". Since windows headers also define a pre-processor
        macro called "interface", it has to do that. However we have now a dependency between combaseapi.h,
        which #defines interface and is included earlier (before qnetworksession.h) and shlwapi.h, which _needs_
        the interface macro and is included afterwards. Since this module-wide QtQml inclusion is unnecessary
        and just slows down the build, this patch removes it.

        * UIProcess/API/qt/qwebkittest_p.h:

2012-11-21  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: refactor LayerTreeRenderer::syncRemoteContent().
        https://bugs.webkit.org/show_bug.cgi?id=102900

        Reviewed by Noam Rosenthal.

        Currently, QQuickWebPage::updatePaintNode() calls
        LayerTreeRenderer::syncRemoteContent() with locking the main thread.
        syncRemoteContent() is heavy, so we should not call syncRemoteContent() in
        updatePaintNode(). Calling syncRemoteContent() in the painting thread is
        thread-safe because syncRemoteContent() does not access any data
        structures, which the main thread use.

        After this patch, syncRemoteContent() is used only internally, so
        syncRemoteContent() becomes private.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::displayTimerFired):
        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPage::updatePaintNode):
        * UIProcess/API/qt/raw/qrawwebview.cpp:
        (QRawWebView::paint):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
        (WebKit::LayerTreeRenderer::ensureRootLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):

2012-11-21  Andras Becsi  <andras.becsi@digia.com>

        [WK2] Viewport meta tag broken after r134801
        https://bugs.webkit.org/show_bug.cgi?id=102801

        Reviewed by Kenneth Rohde Christiansen.

        If the initial-scale attribute is not explicitly specified it is left -1 by the
        viewport meta algorithm and if the content is not scalable the min and max scales
        are restricted by restrictScaleFactorToInitialScaleIfNotUserScalable() which resulted
        in negative scales on the UI side.
        Make sure that the minimum scale to fit the viewport is calculated before restricting
        the scales and use this scale as the initial scale if no explicit initial scale was set.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::pageTransitionViewportReady):
        (WebKit::PageViewportController::didChangeViewportAttributes):
        (WebKit::PageViewportController::updateMinimumScaleToFit):

2012-11-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL][WK2] Support Context Menu
        https://bugs.webkit.org/show_bug.cgi?id=96200

        Reviewed by Laszlo Gombos.

        This patch supports WK2 EFL's context menu as WK1 implementation because we can't use elementary in inside WebKit.
        Only basic functionalities of context menu are supported. Beside this implementation follows GTK's implementation.
        For example, ewk_context_menu_new, ewk_context_menu_item_append, ewk_context_menu_item_remove are supported.

        In addition, ewk_defines.h file is added in order to support cross inclusion as GTK port.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::showContextMenu):
        (EwkViewImpl::hideContextMenu):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_context_menu.cpp: Added.
        (EwkContextMenu::EwkContextMenu):
        (EwkContextMenu::~EwkContextMenu):
        (EwkContextMenu::hide):
        (Ewk_Context_Menu::appendItem):
        (Ewk_Context_Menu::removeItem):
        (EwkContextMenu::contextMenuItemSelected):
        (ewk_context_menu_new):
        (ewk_context_menu_new_with_items):
        (ewk_context_menu_item_append):
        (ewk_context_menu_item_remove):
        (ewk_context_menu_hide):
        (ewk_context_menu_items_get):
        (ewk_context_menu_item_select):
        * UIProcess/API/efl/ewk_context_menu.h: Added.
        * UIProcess/API/efl/ewk_context_menu_item.cpp: Added.
        (EwkContextMenuItem::EwkContextMenuItem):
        (ewk_context_menu_item_new):
        (ewk_context_menu_item_new_with_submenu):
        (ewk_context_menu_item_type_get):
        (ewk_context_menu_item_type_set):
        (ewk_context_menu_item_action_get):
        (ewk_context_menu_item_action_set):
        (ewk_context_menu_item_title_get):
        (ewk_context_menu_item_title_set):
        (ewk_context_menu_item_checked_get):
        (ewk_context_menu_item_checked_set):
        (ewk_context_menu_item_enabled_get):
        (ewk_context_menu_item_enabled_set):
        * UIProcess/API/efl/ewk_context_menu_item.h: Added.
        * UIProcess/API/efl/ewk_context_menu_item_private.h: Added.
        (EwkContextMenuItem):
        (EwkContextMenuItem::create):
        (EwkContextMenuItem::action):
        (EwkContextMenuItem::setAction):
        (EwkContextMenuItem::title):
        (EwkContextMenuItem::setTitle):
        (EwkContextMenuItem::type):
        (EwkContextMenuItem::setType):
        (EwkContextMenuItem::checked):
        (EwkContextMenuItem::setChecked):
        (EwkContextMenuItem::enabled):
        (EwkContextMenuItem::setEnabled):
        * UIProcess/API/efl/ewk_context_menu_private.h: Added.
        (WebKit):
        (EwkContextMenu):
        (EwkContextMenu::create):
        (EwkContextMenu::items):
        * UIProcess/API/efl/ewk_defines.h: Added.
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp: Added.
        (checkBasicContextMenuItem):
        (showContextMenu):
        (TEST_F):
        * UIProcess/efl/ContextMenuClientEfl.cpp: Added.
        (toContextClientEfl):
        (ContextMenuClientEfl::ContextMenuClientEfl):
        (ContextMenuClientEfl::getContextMenuFromProposedMenu):
        * UIProcess/efl/ContextMenuClientEfl.h: Added.
        (WebKit):
        (ContextMenuClientEfl):
        (WebKit::ContextMenuClientEfl::create):
        * UIProcess/efl/PageClientBase.cpp:
        (WebKit::PageClientBase::createContextMenuProxy):
        * UIProcess/efl/WebContextMenuProxyEfl.cpp: Added.
        (WebKit):
        (WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl):
        (WebKit::WebContextMenuProxyEfl::~WebContextMenuProxyEfl):
        (WebKit::WebContextMenuProxyEfl::showContextMenu):
        (WebKit::WebContextMenuProxyEfl::hideContextMenu):
        (WebKit::WebContextMenuProxyEfl::contextMenuItemSelected):
        * UIProcess/efl/WebContextMenuProxyEfl.h: Added.
        (WebKit):
        (WebContextMenuProxyEfl):
        (WebKit::WebContextMenuProxyEfl::create):

2012-11-21  Jongseok Yang  <js45.yang@samsung.com>

        [EFL][WK2] Rename ewk_view_setting_encoding_custom_XXX to ewk_view_custom_encoding_XXX
        https://bugs.webkit.org/show_bug.cgi?id=102867

        Reviewed by Gyuyoung Kim.

        Rename ewk_view_setting_encoding_custom_XXX to ewk_view_custom_encoding_XXX.

        ewk_view_setting_encoding_custom_XXX APIs might be misunderstanded as the "setting" word
        because ewk_view_setting_encoding_custom_set triggers the "reload" operation.
        And ewk_view_setting_XXX is not correct because there is ewk_settings object for settings.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_encoding_custom_get):
        (ewk_view_encoding_custom_set):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-11-20  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Remove unnecessary #include in API test
        https://bugs.webkit.org/show_bug.cgi?id=102674

        Reviewed by Laszlo Gombos.

        Removed duplicated header files from the API test cases.
        Now, EWK2UnitTestBase.h includes the basic header files, 
        so test cases may only include this one and add the addtional
        header files if necessary.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
        * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
        * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
        * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        * UIProcess/API/efl/tests/test_ewk2_context_history_callbacks.cpp:
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        * UIProcess/API/efl/tests/test_ewk2_database_manager.cpp:
        * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
        * UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
        * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
        * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
        * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
        * UIProcess/API/efl/tests/test_ewk2_object.cpp:
        * UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp:
        * UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
        * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:

2012-11-19  Sam Weinig  <sam@webkit.org>

        Simplify WebConnection by removing its underlying CoreIPC::Connection
        https://bugs.webkit.org/show_bug.cgi?id=102771

        Reviewed by Anders Carlsson.

        Instead of having WebConnection subclasses own the CoreIPC::Connection,
        move back to having the WebProcess and WebProcessProxy own it (and be
        its Connection::Client) and use the new MessageReceiver class to vend
        messages to the WebConnection.

        * Shared/WebConnection.cpp:
        (WebKit::WebConnection::WebConnection):
        (WebKit::WebConnection::postMessage):
        (WebKit::WebConnection::didClose):
        (WebKit::WebConnection::didReceiveMessage):
        * Shared/WebConnection.h:
        Make WebConnection both a MessageReceiver and MessageSender
        and add virtual functions for derived classes to fill in.

        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::create):
        (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
        (WebKit::WebConnectionToWebProcess::invalidate):
        (WebKit::WebConnectionToWebProcess::decodeMessageBody):
        (WebKit::WebConnectionToWebProcess::connection):
        (WebKit::WebConnectionToWebProcess::destinationID):
        (WebKit::WebConnectionToWebProcess::hasValidConnection):
        * UIProcess/WebConnectionToWebProcess.h:
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::~WebProcessProxy):
        (WebKit::WebProcessProxy::fromConnection):
        (WebKit::WebProcessProxy::disconnect):
        (WebKit::WebProcessProxy::addMessageReceiver):
        (WebKit::WebProcessProxy::didClose):
        (WebKit::WebProcessProxy::didReceiveInvalidMessage):
        (WebKit::WebProcessProxy::didFinishLaunching):
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::connection):
        (WebProcessProxy):
        (WebKit::WebProcessProxy::webConnection):
        * WebProcess/WebConnectionToUIProcess.cpp:
        (WebKit::WebConnectionToUIProcess::create):
        (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
        (WebKit):
        (WebKit::WebConnectionToUIProcess::invalidate):
        (WebKit::WebConnectionToUIProcess::connection):
        (WebKit::WebConnectionToUIProcess::destinationID):
        (WebKit::WebConnectionToUIProcess::hasValidConnection):
        * WebProcess/WebConnectionToUIProcess.h:
        (WebConnectionToUIProcess):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::initialize):
        (WebKit::WebProcess::terminate):
        * WebProcess/WebProcess.h:
        (WebKit::WebProcess::connection):
        (WebKit::WebProcess::webConnectionToUIProcess):
        Move the CoreIPC::Connection back to the processes.

2012-11-20  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Add Ewk_Window_Features API and related UI callbacks
        https://bugs.webkit.org/show_bug.cgi?id=99114

        Reviewed by Gyuyoung Kim.

        Added Ewk_Window_Features API so that we can create new windows
        with various window features such as location, size, toolbar, menubar,
        statusbar, locationbar, scrollbar, resizable, and fullscreen.

        UI client callbacks related to window features also implemented
        so that it is possible to retrieve the window object property values.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EwkViewCallbacks):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::windowFeatures):
        (EwkViewImpl::createNewPage):
        (EwkViewImpl::closePage):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::createNewPage):
        (WebKit::PageUIClientEfl::toolbarsAreVisible):
        (WebKit):
        (WebKit::PageUIClientEfl::setToolbarsAreVisible):
        (WebKit::PageUIClientEfl::menuBarIsVisible):
        (WebKit::PageUIClientEfl::setMenuBarIsVisible):
        (WebKit::PageUIClientEfl::statusBarIsVisible):
        (WebKit::PageUIClientEfl::setStatusBarIsVisible):
        (WebKit::PageUIClientEfl::isResizable):
        (WebKit::PageUIClientEfl::setIsResizable):
        (WebKit::PageUIClientEfl::PageUIClientEfl):
        * UIProcess/efl/PageUIClientEfl.h:
        (PageUIClientEfl):

2012-11-20  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135295.
        http://trac.webkit.org/changeset/135295
        https://bugs.webkit.org/show_bug.cgi?id=102834

        This patch causes assertion to some layout tests on chromium
        (Requested by jianli on #webkit).

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::performFrameLoadURLRequest):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::loadURLRequest):
        (WebKit::WebPage::loadData):
        (WebKit::WebPage::linkClicked):

2012-11-20  James Simonsen  <simonjam@chromium.org>

        Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
        https://bugs.webkit.org/show_bug.cgi?id=102151

        Reviewed by Adam Barth.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::performFrameLoadURLRequest):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::loadURLRequest):
        (WebKit::WebPage::loadData):

2012-11-20  peavo@outlook.com  <peavo@outlook.com>

        WinCairo build fails to link.
        https://bugs.webkit.org/show_bug.cgi?id=102804

        Reviewed by Alexey Proskuryakov.

        * win/WebKit2CFLite.def:

2012-11-20  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [WTR] WebKitTestRunner should be able to run tests using fixed layout
        https://bugs.webkit.org/show_bug.cgi?id=102517

        Reviewed by Kenneth Rohde Christiansen.

        Update EFL private API so we can create a view with fixed layout. We
        can keep this as private as I don't see a real life use case for it
        outside WTR and the WebInspector.

        * UIProcess/API/C/efl/WKView.cpp:
        (WKViewCreate):
        (WKViewCreateWithFixedLayout):
        * UIProcess/API/C/efl/WKView.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):

2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] PageViewportControllerClient::didChangeViewportAttributes called twice
        https://bugs.webkit.org/show_bug.cgi?id=102790

        Reviewed by Kenneth Rohde Christiansen.

        Change updateMinimumScaleToFit to no longer call PageViewportControllerClient::didChangeViewportAttributes,
        but instead return whether it has changed the minimumScaleToFit.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didChangeContentsSize):
        (WebKit::PageViewportController::updateMinimumScaleToFit):
        * UIProcess/PageViewportController.h:
        (PageViewportController):

2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] No test of double-click to zoom out
        https://bugs.webkit.org/show_bug.cgi?id=102810

        Reviewed by Kenneth Rohde Christiansen.

        Adds tests of zoom-stack behaviour, the ability to restore previous zoom levels. It tests
        that zoom out always goes to lower zoom levels.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:

2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] Large areas highlighted on touch
        https://bugs.webkit.org/show_bug.cgi?id=97216

        Reviewed by Simon Hausmann.

        Restrict highlighting of scripted event-handlers to inline elements only.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::highlightPotentialActivation):

2012-11-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] Zoom logic confused by page and pinch resize
        https://bugs.webkit.org/show_bug.cgi?id=102803

        Reviewed by Kenneth Rohde Christiansen.

        Clear the zoom-out stack after page resize, and ensure the zoom logic can still detect
        zoom-out and zoom-back when the zoom-out stack is empty.

        * UIProcess/qt/PageViewportControllerClientQt.cpp:
        (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
        (WebKit::PageViewportControllerClientQt::clearRelativeZoomState):
        (WebKit::PageViewportControllerClientQt::setContentsScale):
        (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
        (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
        * UIProcess/qt/PageViewportControllerClientQt.h:
        (PageViewportControllerClientQt):

2012-11-19  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2] Unused parameters on CoordinatedGraphicsLayer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=102760

        Reviewed by Laszlo Gombos.

        Because the 'platformLayer' parameter is not used when !USE(GRAPHICS_SURFACE),
        use UNUSED_PARAM macro to fix build warning -Wunused-parameter

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):

2012-11-19  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove tiles of a layer when they are off the viewport.
        https://bugs.webkit.org/show_bug.cgi?id=102313

        Reviewed by Noam Rosenthal.

        Currently, we don't remove tiles of the layer with the special properties: a
        transform animation and non affine transform. If a page has a lot of layers with
        a transform animation, we will encounter OOM. So this patch removes the
        privilege of the layer.

        There are two changes.
        1. computeTransformedVisibleRect() calculates a layer transform using the
        current local transform which a transform animation applied.
        2. tiledBackingStoreVisibleRect() calculates a visible
        rect of all layers, even if the layer includes the property: a transform
        animation or non affine transform.

        Test: animations/animation-offscreen-to-onscreen.html

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::effectiveContentsScale):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::hasPendingVisibleChanges):
        (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHasActiveTransformAnimation):
        (WebCore):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-19  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove a texture if an direct composited image is off the viewport.
        https://bugs.webkit.org/show_bug.cgi?id=102449

        Reviewed by Noam Rosenthal.

        Currently, once uploading textures for composited images, Coordinated Graphics
        does not release the textures until all layers using images are destroyed.

        This patch removes a texture if we don't need to render an image. This mechanism
        is similar how TiledBackingStore removes invisible tiles.

        When all layers are invisible, we wait 3 seconds to remove the content
        of the image, because we want to prevent a transform animation from
        creating and destroying a texture over and over again.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::removeAllTiles):
        (WebKit):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::clearImageBackingContents):
        (WebKit):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::clearImageBackingContents):
        (WebKit):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
        (WebCore::CoordinatedGraphicsLayer::imageBackingVisible):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp:
        (WebKit::CoordinatedImageBacking::CoordinatedImageBacking):
        (WebKit::CoordinatedImageBacking::addHost):
        (WebKit::CoordinatedImageBacking::removeHost):
        (WebKit::CoordinatedImageBacking::update):
        (WebKit):
        (WebKit::CoordinatedImageBacking::updateVisibilityIfNeeded):
        (WebKit::CoordinatedImageBacking::clearContentsTimerFired):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
        (Coordinator):
        (Host):
        (CoordinatedImageBacking):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::clearImageBackingContents):
        (WebKit):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r135201.
        http://trac.webkit.org/changeset/135201
        https://bugs.webkit.org/show_bug.cgi?id=102725

        Broke all non-Mac WK2 builds. (Requested by rakuco on
        #webkit).

        * Shared/mac/PlatformCertificateInfo.h:
        * Shared/mac/PlatformCertificateInfo.mm:
        (WebKit):
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/Authentication/AuthenticationManager.cpp:
        * WebProcess/Authentication/AuthenticationManager.h:
        (AuthenticationManager):
        * WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Copied from Source/WebKit2/Shared/mac/PlatformCertificateInfo.mm.
        (WebKit):
        (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):

2012-11-19  Brady Eidson  <beidson@apple.com>

        Move tryUsePlatformCertificateInfoForChallenge from AuthenticationManager to PlatformCertificateInfo.
        https://bugs.webkit.org/show_bug.cgi?id=102718

        Reviewed by Sam Weinig.

        Add the shared PlatformCertificateInfo version of the method:
        * Shared/mac/PlatformCertificateInfo.h:
        * Shared/mac/PlatformCertificateInfo.mm:
        (WebKit::tryUsePlatformCertificateInfoForChallenge):

        Use the new shared version:
        * WebProcess/Authentication/AuthenticationManager.cpp:

        Remove the old member version:
        * WebProcess/Authentication/AuthenticationManager.h:
        * WebProcess/Authentication/mac/AuthenticationManager.mac.mm: Removed.
        * WebKit2.xcodeproj/project.pbxproj:

2012-11-19  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: refactor syncCanvas to handle the lifecycle clearly.
        https://bugs.webkit.org/show_bug.cgi?id=102664

        Reviewed by Noam Rosenthal.

        This patch makes sync canvas code handle the lifecycle of the canvas
        GraphicsSurface in the similar style to a directly image compositing and
        an update atlas code. This patch moves the canvas lifecycle handling
        code from LayerTreeRenderer to CoordinatedGraphicsLayer, because
        CoordinatedGraphicsLayer knows best when to create and remove the canvas
        GraphicsSurface.

        After this patch, we can remove the canvas GraphicsSurface in UI Process as soon
        as the canvas platform layer is unset in Web Process.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::createCanvas):
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
        (WebKit::LayerTreeCoordinatorProxy::destroyCanvas):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::createCanvas):
        (WebKit):
        (WebKit::LayerTreeRenderer::syncCanvas):
        (WebKit::LayerTreeRenderer::destroyCanvas):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
        (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
        (WebCore::CoordinatedGraphicsLayer::syncCanvas):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
        (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createCanvas):
        (WebKit):
        (WebKit::LayerTreeCoordinator::syncCanvas):
        (WebKit::LayerTreeCoordinator::destroyCanvas):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-19  Brady Eidson  <beidson@apple.com>

        Replace an unneeded #include with a forward declaration after r135179.

        Reviewed by nobody, but suggested by Alexey Proskuryakov.

        * WebProcess/Network/WebResourceLoader.h:

2012-11-19  Martin Robinson  <mrobinson@igalia.com>

        [GTK] REGRESSION(r134955): Plugins are broken due to unresolved symbol in plugin process
        https://bugs.webkit.org/show_bug.cgi?id=102613

        Unreviewed build fix.

        * GNUmakefile.am: Fix the build after one of my previous patches introduced
        a link dependency on libsecret.

2012-11-19  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] Web Inspector crashes if evas_gl is not available
        https://bugs.webkit.org/show_bug.cgi?id=102531

        Reviewed by Kenneth Rohde Christiansen.

        Teach Web Inspector to fallback gracefully to the software path when evas_gl engine is not available.

        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):

2012-11-19  Brady Eidson  <beidson@apple.com>

        Remove the source files for NetworkRequest from the repository.
        They were obsoleted and removed from the project file awhile ago, but I forgot to nuke the source.

        Unreviewed.

        * NetworkProcess/NetworkRequest.cpp: Removed.
        * NetworkProcess/NetworkRequest.h: Removed.

2012-11-19  Brady Eidson  <beidson@apple.com>

        Add 64-bit specializations for atomicIncrement and atomicDecrement
        https://bugs.webkit.org/show_bug.cgi?id=102702

        Reviewed by Eric Carlson.

        Move away from the Darwin-specific OSAtomicIncrement64Barrier and use WTF::atomicIncrement instead.

        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::generateWillSendRequestID): Adopt WTF::atomicIncrement.
        (WebKit::generateCanAuthenticateAgainstProtectionSpaceID): Ditto.

        * WebProcess/mac/KeychainItemShimMethods.mm:
        (WebKit::generateSecKeychainItemRequestID): Ditto.

        * WebProcess/mac/SecItemShimMethods.mm:
        (WebKit::generateSecItemRequestID): Ditto.

2012-11-19  Brady Eidson  <beidson@apple.com>

        NetworkProcess Authentication.
        https://bugs.webkit.org/show_bug.cgi?id=102592

        Reviewed by Alexey Proskuryakov.

        This get's basic HTTP authentication working with the NetworkProcess by dispatching authentication
        related events to the WebProcess and relying on existing client APIs to answer them.

        Implement ResourceHandleClient methods related to auth challenges and message them to the WebProcess.
        Also implement messaging back from the WebProcess to response to those auth challenges:
        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::willSendRequestResponseMap):
        (WebKit::NetworkResourceLoader::willSendRequest):
        (WebKit::NetworkResourceLoader::willSendRequestHandled):
        (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
        (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
        (WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
        (WebKit::NetworkResourceLoader::receivedCancellation):
        (WebKit::NetworkResourceLoader::receivedAuthenticationCredential):
        (WebKit::NetworkResourceLoader::receivedRequestToContinueWithoutAuthenticationCredential):
        (WebKit::NetworkResourceLoader::receivedAuthenticationCancellation):
        (WebKit::canAuthenticateAgainstProtectionSpaceResponseMap):
        (WebKit::generateCanAuthenticateAgainstProtectionSpaceID):
        (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
        (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceHandled):
        * NetworkProcess/NetworkResourceLoader.h:
        * NetworkProcess/NetworkResourceLoader.messages.in:

        Implement messaging to response to auth challenges from the NetworkProcess, and implement
        AuthenticationClient to response to auth responses from WebProcess clients:
        * WebProcess/Network/WebResourceLoader.cpp:
        (WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace):
        (WebKit::WebResourceLoader::didReceiveAuthenticationChallenge):
        (WebKit::WebResourceLoader::didCancelAuthenticationChallenge):
        (WebKit::WebResourceLoader::receivedCredential):
        (WebKit::WebResourceLoader::receivedRequestToContinueWithoutCredential):
        (WebKit::WebResourceLoader::receivedCancellation):
        * WebProcess/Network/WebResourceLoader.h:
        (WebKit::WebResourceLoader::refAuthenticationClient):
        (WebKit::WebResourceLoader::derefAuthenticationClient):
        * WebProcess/Network/WebResourceLoader.messages.in:

        Add a BlockingResponseMap for bool responses, which don't need OwnPtr trickery:
        * Shared/BlockingResponseMap.h:
        (BlockingBoolResponseMap::waitForResponse):
        (BlockingBoolResponseMap::didReceiveResponse):

        Add "allowsStoredCredentials" to NetworkResourceLoadParameters so the NetworkProcess
        already has the answer when the question is asked:
        * Shared/Network/NetworkResourceLoadParameters.cpp:
        (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
        (WebKit::NetworkResourceLoadParameters::encode):
        (WebKit::NetworkResourceLoadParameters::decode):
        * Shared/Network/NetworkResourceLoadParameters.h:
        (WebKit::NetworkResourceLoadParameters::allowStoredCredentials):

        Grab the value for "allowsStoredCredentials" when scheduling the load in the NetworkProcess:
        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad):

        Add a FIXME for client certs:
        * WebProcess/Authentication/mac/AuthenticationManager.mac.mm:
        (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge):

        Add a FIXME for downloads:
        * WebProcess/Downloads/mac/DownloadMac.mm:

        Remove unused messaging related methods:
        * WebProcess/Network/NetworkProcessConnection.cpp:
        * WebProcess/Network/NetworkProcessConnection.h:

2012-11-19  Kihong Kwon  <kihong.kwon@samsung.com>

        Add PROXIMITY_EVENTS feature
        https://bugs.webkit.org/show_bug.cgi?id=102658

        Reviewed by Kentaro Hara.

        Add PROXIMITY_EVENTS feature to xcode project for WebKit2.

        * Configurations/FeatureDefines.xcconfig:

2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Fix possible crash in EwkViewImpl::displayTimerFired()
        https://bugs.webkit.org/show_bug.cgi?id=102682

        Reviewed by Kenneth Rohde Christiansen.

        Add NULL check for DrawingAreaProxy and LayerTreeCoordinatorProxy
        in displayTimerFired() to avoid crashing if those have already
        been destroyed by the time to timer is fired.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::layerTreeRenderer):
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):

2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][WTR] Memory leak in TestController::initialize()
        https://bugs.webkit.org/show_bug.cgi?id=102616

        Reviewed by Kenneth Rohde Christiansen.

        Export a few additional WTF symbols for windows port.

        * win/WebKit2.def:

2012-11-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitWebView/create-ready-close is failing after r134586
        https://bugs.webkit.org/show_bug.cgi?id=102668

        Reviewed by Philippe Normand.

        Check only that window properties match when creating a new window
        if the expected window properties has been set. Also remove a
        FIXME and actually check that x and y are equal to the expected
        one, now that the issue is fixed.

        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

2012-11-19  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed buildfix.

        Fix -Wdelete-non-virtual-destructor error with gcc 4.7 after r135056.

        * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:
        (WebCustomFilterProgramProxy): This is a polymorphic derived class
        so the destructor should be virtual.

2012-11-19  Christophe Dumez  <christophe.dumez@intel.com>

        [CG][WK2] Assertion in CoordinatedGraphicsLayer::setContentsToImage(WebCore::Image*)
        https://bugs.webkit.org/show_bug.cgi?id=102652

        Reviewed by Kenneth Rohde Christiansen.

        Handle null return of nativeImageForCurrentFrame similarly to Chromium
        port in r130610. This can happen if there is an error early in the
        decoding of an image.

        Test: Already covered by compositing/images/truncated-direct-png-image.html

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsToImage):

2012-11-18  Jaehun Lim  <ljaehun.lim@samsung.com>

        [EFL][WK2] Remove underscore characters in Ewk class names.
        https://bugs.webkit.org/show_bug.cgi?id=102641

        Reviewed by Gyuyoung Kim.

        WebKit EFL doesn't use '_' in C++ class names.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::settings):
        (EwkViewImpl::backForwardList):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_auth_request.h:
        * UIProcess/API/efl/ewk_auth_request_private.h:
        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (EwkBackForwardList::EwkBackForwardList):
        (EwkBackForwardList::nextItem):
        (EwkBackForwardList::previousItem):
        (EwkBackForwardList::currentItem):
        (EwkBackForwardList::itemAt):
        (EwkBackForwardList::size):
        (EwkBackForwardList::backList):
        (EwkBackForwardList::forwardList):
        (EwkBackForwardList::getFromCacheOrCreate):
        (EwkBackForwardList::createEinaList):
        (EwkBackForwardList::update):
        * UIProcess/API/efl/ewk_back_forward_list.h:
        * UIProcess/API/efl/ewk_back_forward_list_item.h:
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        * UIProcess/API/efl/ewk_back_forward_list_private.h:
        (EwkBackForwardList::create):
        (EwkBackForwardList):
        * UIProcess/API/efl/ewk_color_picker.cpp:
        (EwkColorPicker::EwkColorPicker):
        (EwkColorPicker::setColor):
        (EwkColorPicker::color):
        * UIProcess/API/efl/ewk_color_picker.h:
        * UIProcess/API/efl/ewk_color_picker_private.h:
        (EwkColorPicker::create):
        (EwkColorPicker):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (EwkCookieManager::EwkCookieManager):
        (EwkCookieManager::~EwkCookieManager):
        (EwkCookieManager::setPersistentStorage):
        (EwkCookieManager::setHTTPAcceptPolicy):
        (EwkCookieManager::clearHostnameCookies):
        (EwkCookieManager::clearAllCookies):
        (EwkCookieManager::watchChanges):
        (EwkCookieManager::isWatchingForChanges):
        (EwkCookieManager::getHostNamesWithCookies):
        (EwkCookieManager::getHTTPAcceptPolicy):
        (EwkCookieManager::cookiesDidChange):
        * UIProcess/API/efl/ewk_cookie_manager.h:
        * UIProcess/API/efl/ewk_cookie_manager_private.h:
        (EwkCookieManager::create):
        (EwkCookieManager):
        * UIProcess/API/efl/ewk_database_manager.cpp:
        (EwkDatabaseManager::EwkDatabaseManager):
        (EwkDatabaseManager::getDatabaseOrigins):
        (EwkDatabaseManager::createOriginList):
        * UIProcess/API/efl/ewk_database_manager.h:
        * UIProcess/API/efl/ewk_database_manager_private.h:
        (EwkDatabaseManager::create):
        (EwkDatabaseManager):
        * UIProcess/API/efl/ewk_download_job.h:
        * UIProcess/API/efl/ewk_download_job_private.h:
        * UIProcess/API/efl/ewk_error.cpp:
        (EwkError::EwkError):
        (EwkError::url):
        (EwkError::description):
        (EwkError::domain):
        (EwkError::errorCode):
        (EwkError::isCancellation):
        * UIProcess/API/efl/ewk_error.h:
        * UIProcess/API/efl/ewk_error_private.h:
        (EwkError::create):
        (EwkError):
        * UIProcess/API/efl/ewk_favicon_database.cpp:
        (EwkFaviconDatabase::EwkFaviconDatabase):
        (EwkFaviconDatabase::~EwkFaviconDatabase):
        (EwkFaviconDatabase::iconURLForPageURL):
        (EwkFaviconDatabase::watchChanges):
        (EwkFaviconDatabase::unwatchChanges):
        (EwkFaviconDatabase::iconForPageURL):
        (EwkFaviconDatabase::didChangeIconForPageURL):
        (EwkFaviconDatabase::getIconSurfaceSynchronously):
        (EwkFaviconDatabase::iconDataReadyForPageURL):
        * UIProcess/API/efl/ewk_favicon_database.h:
        * UIProcess/API/efl/ewk_favicon_database_private.h:
        (EwkFaviconDatabase::create):
        (EwkFaviconDatabase):
        * UIProcess/API/efl/ewk_file_chooser_request.h:
        * UIProcess/API/efl/ewk_file_chooser_request_private.h:
        * UIProcess/API/efl/ewk_form_submission_request.h:
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        * UIProcess/API/efl/ewk_intent.h:
        * UIProcess/API/efl/ewk_intent_private.h:
        * UIProcess/API/efl/ewk_intent_service.h:
        * UIProcess/API/efl/ewk_intent_service_private.h:
        * UIProcess/API/efl/ewk_navigation_data.h:
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        * UIProcess/API/efl/ewk_object.h:
        * UIProcess/API/efl/ewk_object_private.h:
        (EwkObject::~EwkObject):
        (ewk_object_is_of_type):
        (ewk_object_cast_check):
        (ewk_object_cast):
        * UIProcess/API/efl/ewk_popup_menu.cpp:
        (EwkPopupMenu::EwkPopupMenu):
        (EwkPopupMenu::~EwkPopupMenu):
        (EwkPopupMenu::close):
        (EwkPopupMenu::items):
        (EwkPopupMenu::selectedIndex):
        (EwkPopupMenu::setSelectedIndex):
        * UIProcess/API/efl/ewk_popup_menu.h:
        * UIProcess/API/efl/ewk_popup_menu_item.cpp:
        (EwkPopupMenuItem::EwkPopupMenuItem):
        (EwkPopupMenuItem::type):
        (EwkPopupMenuItem::textDirection):
        (EwkPopupMenuItem::text):
        (EwkPopupMenuItem::tooltipText):
        (EwkPopupMenuItem::accessibilityText):
        (EwkPopupMenuItem::hasTextDirectionOverride):
        (EwkPopupMenuItem::isEnabled):
        (EwkPopupMenuItem::isLabel):
        (EwkPopupMenuItem::isSelected):
        * UIProcess/API/efl/ewk_popup_menu_item.h:
        * UIProcess/API/efl/ewk_popup_menu_item_private.h:
        (EwkPopupMenuItem::create):
        (EwkPopupMenuItem):
        * UIProcess/API/efl/ewk_popup_menu_private.h:
        (EwkPopupMenu::create):
        (EwkPopupMenu):
        * UIProcess/API/efl/ewk_resource.h:
        * UIProcess/API/efl/ewk_resource_private.h:
        * UIProcess/API/efl/ewk_security_origin.h:
        * UIProcess/API/efl/ewk_security_origin_private.h:
        * UIProcess/API/efl/ewk_settings.cpp:
        (EwkSettings::preferences):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/ewk_settings_private.h:
        (EwkSettings::create):
        (EwkSettings::EwkSettings):
        * UIProcess/API/efl/ewk_storage_manager.cpp:
        (EwkStorageManager::EwkStorageManager):
        (EwkStorageManager::getStorageOrigins):
        (EwkStorageManager::createOriginList):
        * UIProcess/API/efl/ewk_storage_manager.h:
        * UIProcess/API/efl/ewk_storage_manager_private.h:
        (EwkStorageManager::create):
        (EwkStorageManager):
        * UIProcess/API/efl/ewk_url_request.h:
        * UIProcess/API/efl/ewk_url_request_private.h:
        * UIProcess/API/efl/ewk_url_response.h:
        * UIProcess/API/efl/ewk_url_response_private.h:
        * UIProcess/API/efl/ewk_url_scheme_request.h:
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        * UIProcess/API/efl/tests/test_ewk2_object.cpp:
        (TEST_F):

2012-11-18  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] Wrong transform when using software path.
        https://bugs.webkit.org/show_bug.cgi?id=102549

        Reviewed by Kenneth Rohde Christiansen.

        When using the software path, our transform is not correct and results 
        in drawing the wrong part of the page. This becomes more obvious after scrolling.

        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):

2012-11-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [WK2] REGRESSION: After web process crash a new web process is created for every existing page
        https://bugs.webkit.org/show_bug.cgi?id=102520

        Reviewed by Alexey Proskuryakov.

        When process model is SharedSecondaryProcess a new shared process
        should be created instead of a new process per page.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::ensureSharedWebProcess): Ensure a shared web
        process and return it.
        (WebKit::WebContext::createWebPage): Update to change in
        ensureSharedWebProcess() that returns the shared web process now.
        * UIProcess/WebContext.h:
        (WebContext): Remove relaunchProcessIfNecessary().
        (WebKit::WebContext::sendToAllProcessesRelaunchingThemIfNecessary):
        Use ensureSharedWebProcess() instead of relaunchProcessIfNecessary().
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::reattachToWebProcess): Ensure a shared web
        process for SharedSecondaryProcess model or create a new web
        process for multi-process models.

2012-11-17  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        Remove 8-bit related assertion from NetscapePluginModuleX11.
        https://bugs.webkit.org/show_bug.cgi?id=102588

        Reviewed by Andreas Kling.

        Follow-up to r135043: since String::fromUTF8() is not guaranteed
        to give us a 16-bit string, the assertion in
        truncateToSingleLine() will fail in that case.

        This should make the EFL WK2 Debug bot stop failing all
        plugin-related tests because "WebKit Test Plugin" is returned as
        an 8-bit string.

        * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
        (WebKit::truncateToSingleLine):

2012-11-17  Alexandru Chiculita  <achicu@adobe.com>

        [Texmap][CSS Shaders] Reuse the precompiled shader for custom filters in TextureMapperGL
        https://bugs.webkit.org/show_bug.cgi?id=101801

        Reviewed by Noam Rosenthal.

        Changed the encoding code for ValidatedCustomFilterOperation to only encode the ID of the program.
        LayerTreeCoordinator makes sure to send the programs in full before the encoder runs.
        LayerTreeRenderer will maintain a HashMap from these IDs to the real CustomFilterProgram.
        The UI process will also receive a message from the WebProcess when the shader is no longer in needed.
        LayerTreeRenderer calls the TextureMapper's removeCachedCustomFilterProgram to notify
        about the removed CustomFilterProgram.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        (CoreIPC):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
        (WebCore):
        * Shared/CoordinatedGraphics/WebCustomFilterOperation.h: Added.
        (WebCore):
        (WebCustomFilterOperation):
        (WebCore::WebCustomFilterOperation::create):
        (WebCore::WebCustomFilterOperation::programID):
        (WebCore::WebCustomFilterOperation::WebCustomFilterOperation):
        * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h:
        (WebKit::WebCustomFilterProgramProxy::create):
        (WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::removeCustomFilterProgram):
        (WebKit::LayerTreeCoordinatorProxy::createCustomFilterProgram):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::setLayerFilters):
        (WebKit):
        (WebKit::LayerTreeRenderer::injectCachedCustomFilterPrograms):
        (WebKit::LayerTreeRenderer::createCustomFilterProgram):
        (WebKit::LayerTreeRenderer::removeCustomFilterProgram):
        (WebKit::LayerTreeRenderer::setLayerAnimations):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (WebCore):
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
        (WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
        (WebKit::LayerTreeCoordinator::setLayerAnimations):

2012-11-17  Brady Eidson  <beidson@apple.com>

        Add an integer identifier field to AuthenticationChallengeBase.
        https://bugs.webkit.org/show_bug.cgi?id=102593

        Reviewed by Darin Adler.

        Properly encode/decode the identifier when sending the challenge over CoreIPC.

        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-11-17  Balazs Kelemen  <kbalazs@webkit.org>

        8bit-unaware String usage in NetscapePluginModuleX11.cpp
        https://bugs.webkit.org/show_bug.cgi?id=102482

        Reviewed by Michael Saboff.

        String::fromUTF8 is not guaranteed to give a 16 bit string.

        * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
        (WebKit::truncateToSingleLine): Do an explicit 16 bit conversion.

2012-11-16  Jaehun Lim  <ljaehun.lim@samsung.com>

        [EFL][WK2] Remove unnecessary #include statemtns
        https://bugs.webkit.org/show_bug.cgi?id=102577

        Reviewed by Anders Carlsson.

        ewk_*_private.h doesn't need to include RefCounted.h after Ewk_Object refactoring.

        * UIProcess/API/efl/ewk_auth_request_private.h:
        * UIProcess/API/efl/ewk_database_manager.cpp:
        * UIProcess/API/efl/ewk_file_chooser_request_private.h:
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        * UIProcess/API/efl/ewk_resource_private.h:
        * UIProcess/API/efl/ewk_storage_manager.cpp:

2012-11-16  Sam Weinig  <weinig@apple.com>

        Fix the windows build.

        * WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:
        (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
        (WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
        (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::defaultCookieStorage):
        * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
        (WebFrameNetworkingContext):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):
        * WebProcess/WebPage/win/WebPageWin.cpp:
        (WebKit::cachedResponseForURL):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::initializeWebProcess):
        * WebProcess/win/WebProcessWin.cpp:
        (WebKit::WebProcess::platformSetCacheModel):
        (WebKit::WebProcess::platformClearResourceCaches):
        (WebKit::WebProcess::platformInitializeWebProcess):

2012-11-16  Alec Flett  <alecflett@chromium.org>

        Add tests for explicit serialization values
        https://bugs.webkit.org/show_bug.cgi?id=96818

        Reviewed by Adam Barth.

        Add exports for SerializedScriptValue changes.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-16  Kiran Muppala  <cmuppala@apple.com>

        Set task priority of WebKit2 processes to zero on Mac
        https://bugs.webkit.org/show_bug.cgi?id=102567

        Reviewed by Mark Rowe.

        Explicitly set task priority of WebKit2 processes to zero, to
        override automatic priority determination by the system.

        * Shared/ChildProcess.cpp:
        (WebKit::ChildProcess::ChildProcess): Add call to platformInitialize() and
        move MAC specific call to disableProcessSuppression to platformInitialize.
        (WebKit::ChildProcess::platformInitialize): Dummy for non MAC platforms.
        * Shared/ChildProcess.h:
        * Shared/mac/ChildProcessMac.mm:
        (WebKit::ChildProcess::platformInitialize): Add call to setpriority().

2012-11-16  Brady Eidson  <beidson@apple.com>

        Move resource loader messaging from NetworkConnectionToWebProcess directly to NetworkResourceLoader
        https://bugs.webkit.org/show_bug.cgi?id=102570

        Reviewed by Alexey Proskuryakov.

        This patch adds the ability for WebResourceLoader to message NetworkResourceLoader directly.

        This further cements the 1-to-1 relationship between the two classes and makes it easy to add/change
        loader related messaging going forward.

        Build/infrastructure stuff:
        * Platform/CoreIPC/MessageID.h:
        * WebKit2.xcodeproj/project.pbxproj:
        * DerivedSources.make:

        Remove the WillSendRequestHandled message, and forward NetworkResourceLoader messages on to the correct object:
        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:

        Hang on to a master map of identifiers to NetworkResourceLoaders:
        * NetworkProcess/NetworkResourceLoadScheduler.cpp:
        (WebKit::NetworkResourceLoadScheduler::scheduleResourceLoad):
        (WebKit::NetworkResourceLoadScheduler::removeLoadIdentifier):
        (WebKit::NetworkResourceLoadScheduler::networkResourceLoaderForIdentifier):
        * NetworkProcess/NetworkResourceLoadScheduler.h:

        Change the way "willSendRequestHandled" comes in to be a direct message:
        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::NetworkResourceLoader::willSendRequest):
        (WebKit::NetworkResourceLoader::willSendRequestHandled):
        * NetworkProcess/NetworkResourceLoader.h:
        * NetworkProcess/NetworkResourceLoader.messages.in:

        Make WebResourceLoader a MessageSender:
        * WebProcess/Network/WebResourceLoader.cpp:
        (WebKit::WebResourceLoader::connection):
        (WebKit::WebResourceLoader::destinationID):
        (WebKit::WebResourceLoader::willSendRequest): Use MessageSender abilities to message the NetworkResourceLoader.
        * WebProcess/Network/WebResourceLoader.h:

2012-11-16  Tony Chang  <tony@chromium.org>

        Remove ENABLE_CSS_HIERARCHIES since it's no longer in use
        https://bugs.webkit.org/show_bug.cgi?id=102554

        Reviewed by Andreas Kling.

        As mentioned in https://bugs.webkit.org/show_bug.cgi?id=79939#c41 ,
        we're going to revist this feature once additional vendor support is
        achieved.

        * Configurations/FeatureDefines.xcconfig:

2012-11-16  Brent Fulgham  <bfulgham@webkit.org>

        [WinCairo] Build correction after r134960.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:  Stub out
        calls to CFNetwork-based implementation.

2012-11-16  Martin Robinson  <mrobinson@igalia.com>

        Move authentication dialog to the UIProcess

        [GTK] [WebKit2] Move GtkAuthenticationDialog to the UIProcess
        https://bugs.webkit.org/show_bug.cgi?id=101843

        Reviewed by Gustavo Noronha Silva.

        Move the use of GtkAuthenticationDialog to the UIProcess along with the rest of
        the GTK+ widgets. This will allow us to to embed the dialog into the WebView
        in the future and to test authentication with the WebKit2 C API.

        * GNUmakefile.list.am: Add the new class to the source list and remove the
        GTK+-only WebFrameLoader implementation file.
        * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp: Added. A subclass of GtkAuthenticationDialog
        which uses the WebKit2 classes to do the UIProcess-side authentication.
        * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h: Added.
        * UIProcess/API/gtk/WebKitLoaderClient.cpp: Add a callback for didReceiveAuthenticationChallengeInFrame.
        (didReceiveAuthenticationChallengeInFrame): Added.
        (attachLoaderClientToView): Use the new callback.
        * UIProcess/Authentication/AuthenticationChallengeProxy.h:
        (WebKit::AuthenticationChallengeProxy::core): Add this getter for the WebCore class.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Share the implementation
        again.
        * WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Removed.

2012-11-15  Alexey Proskuryakov  <ap@apple.com>

        Private Browsing is a per-page setting that sets a global value
        https://bugs.webkit.org/show_bug.cgi?id=67870

        Reviewed by Sam Weinig.

        * NetworkProcess/mac/RemoteNetworkingContext.h: Added storageSession().

        * NetworkProcess/mac/RemoteNetworkingContext.mm:
        (WebKit::RemoteNetworkingContext::storageSession): Just always fall back to default
        so far.

        * WebKit2.xcodeproj/project.pbxproj: Added WebPlatformStrategiesMac.mm for strategy
        code that uses Objective C.

        * WebProcess/Cookies/mac/WebCookieManagerMac.mm:
        (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Use WebFrameNetworkingContext
        instead of hardcoding access to sessiosn here.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setPrivateBrowsingEnabled): Create and destroy private
        browsing session as appropriate.
        (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession): Use WebFrameNetworkingContext
        instead of hardcoding access to sessiosn here.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
        * WebProcess/WebCoreSupport/mac/WebPlatformStrategiesMac.mm: Added.
        (WebKit::WebPlatformStrategies::defaultCookieStorage):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::defaultCookieStorage):
        Implemented defaultCookieStorage() through WebFrameNetworkingContext.

        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
        Moved code for dealing with global contexts here from WebCore.

        * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::updatePreferences):
        Create a global private session when any page enters private browsing, and
        delete it when any page exits private browsing. This is handling a preference
        change, so all pages get it once.

        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::platformHasLocalDataForURL): Use main frame's context.
        (WebKit::cachedResponseForURL): Ditto.

        * WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeWebProcess): Updated
        to talk to WebFrameNetworkingContext instead of ResourceHandle for global session.

2012-11-16  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>

        [EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.
        https://bugs.webkit.org/show_bug.cgi?id=102000

        Reviewed by Kenneth Rohde Christiansen.

        Add matching of view background color to the page background. This helps to reduce 
        visibility of flicker during scrolling/scaling/repainting where page tiles are not
        ready. View background color matching is disabled by default and can be enabled 
        with new API function ewk_view_draws_page_background_set .
        View background color can interfere with semi-transparent pages and should be
        disabled by default.
        Upstreaming changes by Youngtaeck Song(youngtaeck.song@samsung.com).

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::displayTimerFired):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::setDrawsBackground):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_draws_page_background_set):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::setBackgroundColor):
        (WebKit):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
        (WebKit::LayerTreeRenderer::paintToGraphicsContext):
        (WebKit::LayerTreeRenderer::setBackgroundColor):
        (WebKit):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::setDrawsBackground):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::setBackgroundColor):
        (WebKit):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/LayerTreeHost.h:
        (WebKit::LayerTreeHost::setBackgroundColor):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::mainFrameDidLayout):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):

2012-11-16  Krzysztof Czech  <k.czech@samsung.com>

        [WK2][GTK][EFL] Share WebKit2-GTK's WebProcess Accessibility implementation with other WebKit ports.
        https://bugs.webkit.org/show_bug.cgi?id=101748

        Reviewed by Martin Robinson.

        Remove and rename files related to Accessibility from WebPage/gtk to WebPage/atk.

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * WebProcess/WebPage/atk/WebPageAccessibilityObject.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.h.
        (WebKit):
        (_WebPageAccessibilityObject):
        (_WebPageAccessibilityObjectClass):
        * WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp.
        (accessibilityRootObjectWrapper):
        (webPageAccessibilityObjectInitialize):
        (webPageAccessibilityObjectGetIndexInParent):
        (webPageAccessibilityObjectGetNChildren):
        (webPageAccessibilityObjectRefChild):
        (web_page_accessibility_object_init):
        (web_page_accessibility_object_class_init):
        (webPageAccessibilityObjectNew):
        (webPageAccessibilityObjectRefresh):

2012-11-16  Alexandru Chiculita  <achicu@adobe.com>

        [Texmap][CSS Shaders] Make the CustomFilterValidatedProgram maintain the platform compiled program
        https://bugs.webkit.org/show_bug.cgi?id=102414

        Reviewed by Noam Rosenthal.

        This is the first part of shader caching implementation for the Custom Filters in WK2 LayerTreeCoordinator.
        In this patch it will just make the LayerTreeCoordinator knowledgeable about the life-time
        of the custom filter programs. It can allocate IDs for the filters and it also gets a callback when the
        filters are not needed anymore.

        The UI process is still recreating the shader every time, but https://bugs.webkit.org/show_bug.cgi?id=101801
        will fix that and try to reuse existing custom filters.

        * CMakeLists.txt:
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Added.
        (WebKit):
        (WebKit::WebCustomFilterProgramProxy::~WebCustomFilterProgramProxy):
        * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Added.
        (WebKit):
        (WebCustomFilterProgramProxyClient):
        (WebCustomFilterProgramProxy):
        (WebKit::WebCustomFilterProgramProxy::create):
        (WebKit::WebCustomFilterProgramProxy::id):
        (WebKit::WebCustomFilterProgramProxy::refFromValidatedProgram):
        (WebKit::WebCustomFilterProgramProxy::derefFromValidatedProgram):
        (WebKit::WebCustomFilterProgramProxy::setClient):
        (WebKit::WebCustomFilterProgramProxy::client):
        (WebKit::WebCustomFilterProgramProxy::WebCustomFilterProgramProxy):
        * Target.pri:
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::syncLayerFilters):
        (WebKit):
        (WebKit::LayerTreeCoordinator::checkCustomFilterProgramProxies):
        (WebKit::LayerTreeCoordinator::removeCustomFilterProgramProxy):
        (WebKit::LayerTreeCoordinator::disconnectCustomFilterPrograms):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-16  Peter Gal  <galpeter@inf.u-szeged.hu>

        [Qt][Mac] Fix the build after r124873
        https://bugs.webkit.org/show_bug.cgi?id=102475

        Reviewed by Noam Rosenthal.

        Change the CoordinatedImageBackingID typedef from uintptr_t to uint64_t.

        * Shared/WebLayerTreeInfo.h:
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:

2012-11-16  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][WK2] Unset the tooltip when the web process has crashed
        https://bugs.webkit.org/show_bug.cgi?id=102232

        Reviewed by Gyuyoung Kim.

        Emit 'tooltip,text,unset' signal to unset the tooltip
        when the web process has crashed.

        * UIProcess/efl/PageClientBase.cpp:
        (WebKit::PageClientBase::processDidCrash):

2012-11-16  Helder Correia  <helder.correia@nokia.com>

        [CoordGfx] Follow coding style on explicit constructors
        https://bugs.webkit.org/show_bug.cgi?id=102451

        Reviewed by Noam Rosenthal.

        Use the explicit keyword on single argument constructors.

        No new tests needed.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
        (CoordinatedTileBackend):

2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134908.
        http://trac.webkit.org/changeset/134908
        https://bugs.webkit.org/show_bug.cgi?id=102473

        Broke the Apple Windows Debug build. (Requested by dydx on
        #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134913.
        http://trac.webkit.org/changeset/134913
        https://bugs.webkit.org/show_bug.cgi?id=102472

        Incorrect fix. (Requested by dydx on #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-16  Daniel Bates  <dbates@webkit.org>

        Attempt to fix the Apple Windows Debug build after http://trac.webkit.org/changeset/134908
        (https://bugs.webkit.org/show_bug.cgi?id=102354).

        Add symbol.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-16  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2] Bug on ASSERT code in CoordinatedBackingStore.cpp
        https://bugs.webkit.org/show_bug.cgi?id=102465

        Reviewed by Noam Rosenthal.

        The ASSERT code should be fixed because the 'operator>=' is not defined for WebCore::IntSize.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStoreTile::swapBuffers):

2012-11-16  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134865.
        http://trac.webkit.org/changeset/134865
        https://bugs.webkit.org/show_bug.cgi?id=102466

        Broke the Apple Windows Debug build. (Requested by dydx on
        #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-16  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        Avoid copying of ViewportArguments in computeViewportAttributes function
        https://bugs.webkit.org/show_bug.cgi?id=102354

        Reviewed by Kenneth Rohde Christiansen.

        Update exported symbols.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-15  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Refactor code related to directly composited images.
        https://bugs.webkit.org/show_bug.cgi?id=101023

        Reviewed by Noam Rosenthal.

        Internal Review by Gwang Yoon Hwang and Jae Hyun Park.

        Currently, LayerTreeCoordinator manages composited images using
        ShareableBitmap. This patch introduces CoordinatedImageBacking which
        plays a role in managing composited images. CoordinatedImageBacking makes us
        gather code related to a directly composited image into a single class.

        We create only one CoordinatedImageBacking per image. For example, in the leaves
        demo, we create only 3 textures of leaves.

        * CMakeLists.txt:
        * Shared/WebLayerTreeInfo.h:
        (WebKit::WebLayerInfo::WebLayerInfo):
        (WebLayerInfo):
        * Target.pri:
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStoreTile::swapBuffers):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::createImageBacking):
        (WebKit::LayerTreeCoordinatorProxy::updateImageBacking):
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::removeImageBacking):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::setLayerState):
        (WebKit::LayerTreeRenderer::createImageBacking):
        (WebKit::LayerTreeRenderer::updateImageBacking):
        (WebKit::LayerTreeRenderer::removeImageBacking):
        (WebKit):
        (WebKit::LayerTreeRenderer::assignImageBackingToLayer):
        (WebKit::LayerTreeRenderer::removeReleasedImageBackingsIfNeeded):
        (WebKit::LayerTreeRenderer::flushLayerChanges):
        (WebKit::LayerTreeRenderer::purgeGLResources):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
        (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
        (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
        (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp: Added.
        (WebKit):
        (WebKit::CoordinatedImageBacking::getCoordinatedImageBackingID):
        (WebKit::CoordinatedImageBacking::create):
        (WebKit::CoordinatedImageBacking::CoordinatedImageBacking):
        (WebKit::CoordinatedImageBacking::~CoordinatedImageBacking):
        (WebKit::CoordinatedImageBacking::addLayerClient):
        (WebKit::CoordinatedImageBacking::removeLayerClient):
        (WebKit::CoordinatedImageBacking::markDirty):
        (WebKit::CoordinatedImageBacking::update):
        (WebKit::CoordinatedImageBacking::releaseSurfaceIfNeeded):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h: Added.
        (WebCore):
        (WebKit):
        (CoordinatedImageBacking):
        (Coordinator):
        (WebKit::CoordinatedImageBacking::id):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
        (WebKit::LayerTreeCoordinator::createImageBackingIfNeeded):
        (WebKit::LayerTreeCoordinator::createImageBacking):
        (WebKit::LayerTreeCoordinator::updateImageBacking):
        (WebKit::LayerTreeCoordinator::removeImageBacking):
        (WebKit::LayerTreeCoordinator::flushPendingImageBackingChanges):
        (WebKit::LayerTreeCoordinator::purgeBackingStores):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-15  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: A Minor optimization of calculating transforms in CoordinagedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=102309

        We calculate an inverse transform each tiledBackingStoreVisibleRect() call by
        a TiledBackingStore and every tiles.
        This patch caches the inverse transform to reuse it.

        Reviewed by Noam Rosenthal.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-15  Alec Flett  <alecflett@chromium.org>

        Add tests for explicit serialization values
        https://bugs.webkit.org/show_bug.cgi?id=96818

        Reviewed by Adam Barth.

        Add exports for SerializedScriptValue changes.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-15  Gustavo Noronha Silva  <gns@gnome.org>

        [GTK] Split WebCore/platform into a separate library
        https://bugs.webkit.org/show_bug.cgi?id=94435

        Reviewed by Martin Robinson.

        More people have been reporting problems when linking WebCore because
        the command line limit is being exceeded. Splitting WebCore a bit more
        is in order.

        * GNUmakefile.am: link libWebCorePlatform into libwebkit2gtk

2012-11-15  Anders Carlsson  <andersca@apple.com>

        Consolidate four accelerated compositing WKView methods into a single method
        https://bugs.webkit.org/show_bug.cgi?id=102419

        Reviewed by Andreas Kling.

        Add a single -[WKView _setAcceleratedCompositingModeRootLayer:] method and have
        the existing PageClientImpl member functions call it. Also, add a new
        PageClient member function, setAcceleratedCompositingRootLayer.

        * UIProcess/API/mac/PageClientImpl.h:
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
        (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
        (WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
        * UIProcess/API/mac/WKView.mm:
        (-[WKView _processDidCrash]):
        (-[WKView _setAcceleratedCompositingModeRootLayer:]):
        * UIProcess/API/mac/WKViewInternal.h:
        * UIProcess/PageClient.h:
        * UIProcess/WebPageProxy.h:
        * UIProcess/mac/RemoteLayerTreeHost.mm:
        (WebKit::RemoteLayerTreeHost::commit):
        * UIProcess/mac/WebPageProxyMac.mm:
        (WebKit::WebPageProxy::setAcceleratedCompositingRootLayer):

2012-11-15  Rick Byers  <rbyers@chromium.org>

        No tests for changing mouse cursors
        https://bugs.webkit.org/show_bug.cgi?id=100550

        Reviewed by Brent Fulgham.

        Add necessary exports for Internals::getCurrentCursorInfo

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-15  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Remove initiallyFitToViewport attribute
        https://bugs.webkit.org/show_bug.cgi?id=102392

        Reviewed by Noam Rosenthal.

        Remove the initiallyFitToViewport which shouldn't have been
        added in the first place. We now reset userScalable to auto (-1)
        in case it was not explicitly set by the web author.

        Same behavior, covered by existing tests.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::pageTransitionViewportReady):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):

2012-11-15  Balazs Kelemen  <kbalazs@webkit.org>

        Coordinated Graphics: support the "freeze animations" API
        https://bugs.webkit.org/show_bug.cgi?id=100703

        Reviewed by Noam Rosenthal.

        Implement suspendAnimations and resumeAnimations in CoordinatedGraphicsLayer.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::suspendAnimations):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::resumeAnimations):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-15  Yuni Jeong  <yhnet.jung@samsung.com>

        [EFL][WK2] Add APIs to get/set whether scripts can open new windows.
        https://bugs.webkit.org/show_bug.cgi?id=102054

        Reviewed by Gyuyoung Kim.

        Added setting APIs make it possible to allow or prevent scripts from opening new windows automatically.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_scripts_can_open_windows_set):
        (ewk_settings_scripts_can_open_windows_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134691, r134703, r134715, r134716,
        and r134733.
        http://trac.webkit.org/changeset/134691
        http://trac.webkit.org/changeset/134703
        http://trac.webkit.org/changeset/134715
        http://trac.webkit.org/changeset/134716
        http://trac.webkit.org/changeset/134733
        https://bugs.webkit.org/show_bug.cgi?id=102342

        "Broke the Apple Windows Debug and GTK builds." (Requested by
        dydx on #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134741.
        http://trac.webkit.org/changeset/134741
        https://bugs.webkit.org/show_bug.cgi?id=102337

        "Change is incorrect." (Requested by dydx on #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-14  Daniel Bates  <dbates@webkit.org>

        Attempt to fix the Apple Windows Debug and GTK builds after <http://trac.webkit.org/changeset/134691>
        (https://bugs.webkit.org/show_bug.cgi?id=96818)

        Export symbols of the form:
        ?deserializeBuffer@Internals@WebCore[...]
        ?serializeObject@Internals@WebCore[...]

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-14  Alec Flett  <alecflett@chromium.org>

        Fix windows build exports (again)
        https://bugs.webkit.org/show_bug.cgi?id=102324

        Unreviewed windows-only build fix.

        Add one more export that was causing unit tests to fail to link.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-14  Brent Fulgham  <bfulgham@webkit.org>

        [WinCairo] Build correction after r134703.

        * win/WebKit2CFLite.def: Add exports to CFLite version of
        Windows build to match Alec's last update.

2012-11-14  Alec Flett  <alecflett@chromium.org>

        Fix Windows exports for TestWebKit
        https://bugs.webkit.org/show_bug.cgi?id=102302

        Unreviewed, fixing Safari Win build.

        Add missing exports.

        * win/WebKit2.def:

2012-11-14  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove unused members and methods in CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=102172

        Reviewed by Noam Rosenthal.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-14  Brady Eidson  <beidson@apple.com>

        Move loading responsibility out of WebResourceLoadScheduler into a new WebResourceLoader
        https://bugs.webkit.org/show_bug.cgi?id=102259

        Reviewed by Alexey Proskuryakov.

        Add a new WebResourceLoader message class which allows NetworkResourceLoader to message
        WebResourceLoaders directly.

        Consolidate the NetworkProcessConnection and WebResourceLoadScheduler messaging responsibilities
        directly into WebResourceLoader.

        Build-system infrastructure stuff:
        * DerivedSources.make:
        * Platform/CoreIPC/MessageID.h:
        * WebKit2.xcodeproj/project.pbxproj:

        Message directly to WebResourceLoader instead of NetworkProcessConnection:
        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::NetworkResourceLoader::connection):
        (WebKit::NetworkResourceLoader::didReceiveResponse):
        (WebKit::NetworkResourceLoader::didReceiveData):
        (WebKit::NetworkResourceLoader::didFinishLoading):
        (WebKit::NetworkResourceLoader::didFail):
        (WebKit::NetworkResourceLoader::willSendRequest):
        * NetworkProcess/NetworkResourceLoader.h:
        (WebKit::NetworkResourceLoader::destinationID):

        For now handle the only relevant message class which is the WebResourceLoader class:
        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::didReceiveMessage):
        * WebProcess/Network/NetworkProcessConnection.h:
        * WebProcess/Network/NetworkProcessConnection.messages.in:

        Allow access to WebResourceLoaders by identifier:
        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        * WebProcess/Network/WebResourceLoadScheduler.h:
        (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier):

        Directly handle resource loading messages instead of having WebResourceLoadScheduler do it:
        * WebProcess/Network/WebResourceLoader.cpp:
        (WebKit::WebResourceLoader::willSendRequest):
        (WebKit::WebResourceLoader::didReceiveResponse):
        (WebKit::WebResourceLoader::didReceiveData):
        (WebKit::WebResourceLoader::didFinishResourceLoad):
        (WebKit::WebResourceLoader::didFailResourceLoad):
        (WebKit::WebResourceLoader::didReceiveResource):
        * WebProcess/Network/WebResourceLoader.h:
        * WebProcess/Network/WebResourceLoader.messages.in:

2012-11-14  Andy Estes  <aestes@apple.com>

        Fix the Lion build after r134681.

        * WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

2012-11-08  Andy Estes  <aestes@apple.com>

        [WebKit2] Need API in UIProcess to enable loading of custom protocols
        https://bugs.webkit.org/show_bug.cgi?id=101674

        Reviewed by Brady Eidson.

        Enable clients of WebKit2 to implement NSURLProtocol subclasses to
        control the loading of resources with schemes that WebKit2 cannot
        handle natively. Since loading happens in a different process, we
        accomplish this by registering a global NSURLProtocol in the web
        process and proxying NSURLProtocol and NSURLProtocolClient calls to
        the client's NSURLProtocol in the UI process.

        * DerivedSources.make: Addded new .messages.in files.
        * Platform/CoreIPC/MessageID.h:
        * Shared/WebProcessCreationParameters.cpp: Added the list of supported schemes.
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        * UIProcess/API/mac/WKBrowsingContextController.h:
        * UIProcess/API/mac/WKBrowsingContextController.mm:
        (+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
        Added a class method where a client can register a scheme that it supports.
        (+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
        Added a class method where a client can unregister a scheme that it no longer supports.
        (+[WKBrowsingContextController customSchemes]):
        * UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
        * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h: Added.
        * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.messages.in: Added.
        * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm: Added.

        Implemented an NSURLConnectionDelegate that proxies messages to the
        equivalent NSURLProtocolClient in the web process:
        (-[WKCustomProtocolLoader initWithCustomProtocolManagerProxy:customProtocolID:request:connection:]):
        (-[WKCustomProtocolLoader dealloc]):
        (-[WKCustomProtocolLoader connection:didFailWithError:]):
        (-[WKCustomProtocolLoader connection:willCacheResponse:]):
        (-[WKCustomProtocolLoader connection:didReceiveResponse:]):
        (-[WKCustomProtocolLoader connection:didReceiveData:]):
        (-[WKCustomProtocolLoader connection:willSendRequest:redirectResponse:]):
        (-[WKCustomProtocolLoader connectionDidFinishLoading:]):

        Implemented a proxy that recieves -startLoading and -stopLoading
        messages from the NSURLProtocol in the web process and starts an
        NSURLConnection in the UI process, which will instantiate the client's NSURLProtocol:
        (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
        (WebKit::CustomProtocolManagerProxy::didReceiveMessage):
        (WebKit::CustomProtocolManagerProxy::startLoading):
        (WebKit::CustomProtocolManagerProxy::stopLoading):

        * UIProcess/WebContext.h: Declared strings that store names of
        NSNotifications used for scheme registration in the UI process.
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::WebProcessProxy):
        (WebKit::WebProcessProxy::didReceiveMessage): Forwarded messages to the
        CustomProtocolManagerProxy.
        * UIProcess/WebProcessProxy.h:
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess): Added the currently
        registered schemes to the WebProcessCreationParameters and register
        NSNotification observers for new scheme registration that forwards to
        the context's web processes.
        * WebKit2.xcodeproj/project.pbxproj:
        * WebKit2Prefix.h: Enabled the CUSTOM_PROTOCOLS macro for the Mac.
        * WebProcess/Network/CustomProtocols/CustomProtocolManager.h: Added.
        * WebProcess/Network/CustomProtocols/CustomProtocolManager.messages.in: Added.
        * WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Added.
        (generateCustomProtocolID): Generate a per-WebProcess unique ID.

        Implemented a global NSURLProtocol that claims to support all schemes
        registered in the UI process. When NSURLConnection calls -startLoading
        and -stopLoading, we forward these messages to the client's NSURLProtocol
        in the UI process:
        (+[WKCustomProtocol canInitWithRequest:]):
        (+[WKCustomProtocol canonicalRequestForRequest:]):
        (+[WKCustomProtocol requestIsCacheEquivalent:toRequest:]):
        (-[WKCustomProtocol initWithRequest:cachedResponse:client:]):
        (-[WKCustomProtocol startLoading]):
        (-[WKCustomProtocol stopLoading]):

        Implemented a manager that receives NSURLConnectionDelegate messages
        forwarded from the UI process and passes them to the global NSURLProtocol's NSURLProtocolClient:
        (WebKit::CustomProtocolManager::shared):
        (WebKit::CustomProtocolManager::registerCustomProtocolClass):
        (WebKit::CustomProtocolManager::addCustomProtocol):
        (WebKit::CustomProtocolManager::removeCustomProtocol):
        (WebKit::CustomProtocolManager::registerScheme):
        (WebKit::CustomProtocolManager::unregisterScheme):
        (WebKit::CustomProtocolManager::supportsScheme):
        (WebKit::CustomProtocolManager::didReceiveMessage):
        (WebKit::CustomProtocolManager::didFailWithError):
        (WebKit::CustomProtocolManager::didLoadData):
        (WebKit::CustomProtocolManager::didReceiveResponse):
        (WebKit::CustomProtocolManager::didFinishLoading):
        (WebKit::CustomProtocolManager::protocolForID):

        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveMessage): Forwarded messages to the
        shared CustomProtocolManager.
        (WebKit::WebProcess::registerSchemeForCustomProtocol): Register a
        scheme received from the UI process.
        (WebKit::WebProcess::unregisterSchemeForCustomProtocol): Unregister a
        scheme received from the UI process.
        * WebProcess/WebProcess.h:
        * WebProcess/WebProcess.messages.in: Declared messages for passing
        supported schemes from the UI process the web process.
        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::WebProcess::platformInitializeWebProcess): Register the
        schemes contained in the WebProcessCreationParameters.

2012-11-14  Helder Correia  <helder.correia@nokia.com>

        [TexMap][Cairo] Accelerated compositing debug visuals
        https://bugs.webkit.org/show_bug.cgi?id=101883

        Reviewed by Kenneth Rohde Christiansen.

        No new tests, just introducing a debug feature.

        Add a Cairo implementation to complement the patch from bug 90116
        (http://trac.webkit.org/changeset/122275).

        For this feature to be enabled, the environment variable
        WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
        both repaint counters and tile borders will be painted.

        A Cairo-specific drawRepaintCounter() implementation was added to
        TextureMapperGL. A cairo_surface_t is used as scratch buffer to paint
        the counters. It is then uploaded to a BitmapTexture acquired
        from the pool and finally draw by TextureMapper. The actual compositing
        happens inside LayerBackingStore::paintToTextureMapper(). Each
        LayerBackingStoreTile has a repaint counter which gets incremented in
        LayerBackingStore::updateTile().

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::shouldShowTileDebugVisuals):

2012-11-14  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Rename m_CoordinatedGraphicsLayerClient to m_coordinator
        https://bugs.webkit.org/show_bug.cgi?id=102133

        Renamed m_CoordinatedGraphicsLayerClient to m_coordinator.
        Also, there is no need for calling setCoordinator every time the tree changes,
        since we can call it once when the layer is created, now that LayerTreeCoordinator
        is the GraphicsLayerFactory.

        Reviewed by Kenneth Rohde Christiansen

        No change in functionality.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setChildren):
        (WebCore::CoordinatedGraphicsLayer::addChild):
        (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
        (WebCore::CoordinatedGraphicsLayer::addChildAbove):
        (WebCore::CoordinatedGraphicsLayer::addChildBelow):
        (WebCore::CoordinatedGraphicsLayer::replaceChild):
        (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
        (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
        (WebCore::CoordinatedGraphicsLayer::syncChildren):
        (WebCore::CoordinatedGraphicsLayer::syncFilters):
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):
        (WebCore::CoordinatedGraphicsLayer::syncAnimations):
        (WebCore::CoordinatedGraphicsLayer::syncCanvas):
        (WebCore::CoordinatedGraphicsLayer::ensureImageBackingStore):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
        (WebCore::CoordinatedGraphicsLayer::createTile):
        (WebCore::CoordinatedGraphicsLayer::updateTile):
        (WebCore::CoordinatedGraphicsLayer::removeTile):
        (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
        (WebCore::CoordinatedGraphicsLayer::setCoordinator):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::paintContents):

2012-11-14  Anders Carlsson  <andersca@apple.com>

        More steps towards actually hosting layers in the UI process
        https://bugs.webkit.org/show_bug.cgi?id=102275

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        (WebKit::RemoteLayerTreeTransaction::rootLayerID):
        Add a getter for the root layer ID.

        * UIProcess/mac/RemoteLayerTreeHost.h:
        (RemoteLayerTreeHost):
        Add root layer member variable. Make the RemoteLayerTreeHost class a GraphicsLayerClient.

        * UIProcess/mac/RemoteLayerTreeHost.mm:
        (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
        Initialize the root layer to null.

        (WebKit::RemoteLayerTreeHost::notifyAnimationStarted):
        (WebKit::RemoteLayerTreeHost::notifyFlushRequired):
        (WebKit::RemoteLayerTreeHost::paintContents):
        Add empty stubs.

        (WebKit::RemoteLayerTreeHost::commit):
        Try to get the root layer.

        (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
        Look up the layer with the given ID in the m_layers hash table and create it if it doesn't exist.

2012-11-14  Brady Eidson  <beidson@apple.com>

        Fix the Production build after r134640 broke it.

        * WebProcess/Network/WebResourceLoader.h:
        (WebKit::WebResourceLoader::resourceLoadIdentifier): Use the un-used.

2012-11-14  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin should make use of PDFKit's fluid zooming
        https://bugs.webkit.org/show_bug.cgi?id=101962
        <rdar://problem/12555229>

        Reviewed by Anders Carlsson.

        Expose the notion of a frame that handles page scale gestures via WebFrame and to the bundle via WKBundleFrame.
        The only frames that will purport to handle page scale gestures are those which contain PluginDocuments
        backed by PDFPlugin, for now. Also, allow PDFKit to do its own fluid zooming animation.

        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
        (WKBundleFrameHandlesPageScaleGesture): Provide WKBundleFrameHandlesPageScaleGesture to
        inform the injected bundle whether or not the frame handles scaling itself.
        * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h: Add WKBundleFrameHandlesPageScaleGesture.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::geometryDidChange): Allow PDFKit to use its fluid zooming instead of changing
        the scale factor immediately.
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::handlesPageScaleGesture): For now, the only frames that handle page scale
        gestures themselves are plugins that purport to handle page scale changes themselves (i.e. only PDFPlugin).
        * WebProcess/WebPage/WebFrame.h:
        (WebFrame):

2012-11-14  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin should support downloading PDFs
        https://bugs.webkit.org/show_bug.cgi?id=102152
        <rdar://problem/12555313>

        Reviewed by Alexey Proskuryakov.

        Clicking on the "Download PDF" HUD button should download the current
        PDF to the Downloads folder.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::savePDFToFileInDownloadsFolder): Added. Save the
        PDF data to disk, in the Downloads folder. This will only save files with
        the .pdf extension, and of MIME type "application/pdf".
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Add savePDFToFileInDownloadsFolder.
        * UIProcess/WebPageProxy.messages.in: Add savePDFToFileInDownloadsFolder.
        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Add saveToPDF().
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (-[WKPDFLayerControllerDelegate saveToPDF]): Forward saveToPDF delegate callback to PDFPlugin.
        (WebKit::PDFPlugin::saveToPDF): Hand WebPageProxy the raw data for the
        current PDF, which it will save to the Downloads folder. We receive
        the suggested filename during loading.
        * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
        (WebKit::SimplePDFPlugin::suggestedFilename): Expose a getter for suggestedFilename.
        * WebProcess/Plugins/PDF/SimplePDFPlugin.mm:
        (WebKit::SimplePDFPlugin::pluginInfo): Add a missing space after an operator.

2012-11-14  Brady Eidson  <beidson@apple.com>

        Part of "Move loading responsibility out of WebResourceLoadScheduler into a new WebResourceLoader"
        https://bugs.webkit.org/show_bug.cgi?id=102259

        Reviewed by Alexey Proskuryakov.

        WebResourceLoadScheduler has taken on too many responsibilities that shouldn't belong to it.

        We should create a WebResourceLoader that will eventually act as an intermediary between
        WebCore::ResourceLoader and NetworkResourceLoader.

        This patch is prep-work: It adds a new skeleton class to the WebProcess.

        * WebKit2.xcodeproj/project.pbxproj:

        Add the new WebResourceLoader class which is a very thin skeleton for now:
        * WebProcess/Network/WebResourceLoader.cpp: Added.
        (WebKit::WebResourceLoader::create):
        (WebKit::WebResourceLoader::WebResourceLoader):
        (WebKit::WebResourceLoader::~WebResourceLoader):
        * WebProcess/Network/WebResourceLoader.h: Added.
        (WebKit::WebResourceLoader::coreLoader):

        Adapt WebResourceLoadScheduler to use this new class where appropriate:
        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad):
        (WebKit::WebResourceLoadScheduler::addMainResourceLoad):
        (WebKit::WebResourceLoadScheduler::remove):
        (WebKit::WebResourceLoadScheduler::willSendRequest):
        (WebKit::WebResourceLoadScheduler::didReceiveResponse):
        (WebKit::WebResourceLoadScheduler::didReceiveData):
        (WebKit::WebResourceLoadScheduler::didFinishResourceLoad):
        (WebKit::WebResourceLoadScheduler::didReceiveResource):
        (WebKit::WebResourceLoadScheduler::didFailResourceLoad):
        * WebProcess/Network/WebResourceLoadScheduler.h:


2012-11-14  Brady Eidson  <beidson@apple.com>

        Deliver data from NetworkProcess to resources progressively.
        https://bugs.webkit.org/show_bug.cgi?id=102171

        Reviewed by Alexey Proskuryakov.

        Instead of buffering up the data for an entire resource and delivering it in one chunk, we need
        to deliver data progressively.

        This allows progressive parsing of textual resources and progressive rendering of images,
        as well as allows endless multipart resources (e.g., multipart jpegs) to work at all.

        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::NetworkResourceLoader::didReceiveData): Don't buffer data locally (for now) but rather
          pass it straight through to the WebProcess.
        (WebKit::NetworkResourceLoader::didFinishLoading): Only notify didFinishLoading instead of
          delivering a chunk of buffered data.
        (WebKit::NetworkResourceLoader::didFail):
        * NetworkProcess/NetworkResourceLoader.h:

        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::didReceiveData): Pass through towards ResourceLoader.
        (WebKit::NetworkProcessConnection::didFinishResourceLoad):
        (WebKit::NetworkProcessConnection::didFailResourceLoad):
        * WebProcess/Network/NetworkProcessConnection.h:
        * WebProcess/Network/NetworkProcessConnection.messages.in:

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::didReceiveData): Hand this chunk of data to the ResourceLoader directly.
        (WebKit::WebResourceLoadScheduler::didFinishResourceLoad):
        * WebProcess/Network/WebResourceLoadScheduler.h:

2012-11-14  Anton Obzhirov  <a.obzhirov@samsung.com>

        Add platform implementation of remote web inspector server for GTK port.
        https://bugs.webkit.org/show_bug.cgi?id=88094 

        Reviewed by Gustavo Noronha Silva.

        The platform implementation is based on GSocket API (WebInspectorServerGtk.cpp and WebSocketServerGtk.cpp).
        The server listens on port 2999 by default. IP address of the server can be set
        in WEBKIT_INSPECTOR_SERVER (for example export WEBKIT_INSPECTOR_SERVER="192.168.124.130:2999").
        The server is started during WebKit context initialization.
        Once a page is loaded insector server can be accessed via other WebKit based browser.
        New WebKit API gtk tests have beed added.
        inspectorPageIndex.html has been moved to new location to share the file between GTK and Qt ports.

        Test: test-page-list, test-remote-debugging-message, test-open-debugging-session

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * Platform/Logging.cpp:
        (WebKit):
        (WebKit::getChannelFromName):
        (WebKit::initializeLogChannelsIfNecessary):
        * Platform/Logging.h:
        (WebKit):
        * UIProcess/API/gtk/tests/GNUmakefile.am:
        * UIProcess/API/gtk/tests/InspectorTestServer.cpp: Added.
        (loadChangedCallback):
        (main):
        * UIProcess/API/gtk/tests/TestInspectorServer.cpp: Added.
        (stopTestServer):
        (sigAbortHandler):
        (testServerMonitorThreadFunc):
        (startTestServerMonitor):
        (startTestServer):
        (testInspectorServerPageList):
        (testRemoteDebuggingMessage):
        (openRemoteDebuggingSession):
        (beforeAll):
        (afterAll):
        * UIProcess/InspectorServer/WebInspectorServer.h:
        (WebInspectorServer):
        * UIProcess/InspectorServer/WebSocketServer.h:
        (WebSocketServer):
        * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
        (WebKit::WebSocketServerConnection::WebSocketServerConnection):
        (WebKit::WebSocketServerConnection::shutdownNow):
        (WebKit::WebSocketServerConnection::shutdownAfterSendOrNow):
        (WebKit::WebSocketServerConnection::didCloseSocketStream):
        (WebKit::WebSocketServerConnection::didReceiveSocketStreamData):
        (WebKit):
        (WebKit::WebSocketServerConnection::didUpdateBufferedAmount):
        * UIProcess/InspectorServer/WebSocketServerConnection.h:
        (WebSocketServerConnection):
        * UIProcess/InspectorServer/front-end: Added.
        * UIProcess/InspectorServer/front-end/inspectorPageIndex.html: Added.
        * UIProcess/InspectorServer/gtk: Added.
        * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp: Added.
        (WebKit):
        (WebKit::WebInspectorServer::platformResourceForPath):
        (WebKit::WebInspectorServer::buildPageList):
        * UIProcess/InspectorServer/gtk/WebSocketServerGtk.cpp: Added.
        (WebKit):
        (WebKit::connectionCallback):
        (WebKit::WebSocketServer::platformInitialize):
        (WebKit::WebSocketServer::platformListen):
        (WebKit::WebSocketServer::platformClose):
        * UIProcess/gtk/WebContextGtk.cpp:
        (WebKit::initInspectorServer):
        (WebKit):
        (WebKit::WebContext::platformInitializeWebProcess):
        * WebKit2.qrc:
        * config.h:
        * qt/Resources/inspectorPageIndex.html: Removed.

2012-11-14  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2][AC] Print out warning if we fallback back to software mode
        https://bugs.webkit.org/show_bug.cgi?id=102188

        Reviewed by Kenneth Rohde Christiansen.

        Print out a warning if accelerated compositing is enabled but the
        implementation is falling back to software mode for some reason.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):

2012-11-14  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134531.
        http://trac.webkit.org/changeset/134531
        https://bugs.webkit.org/show_bug.cgi?id=102193

        Makes >70 tests crash on EFL and Qt bots. (Requested by drott
        on #webkit).

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setChildren):
        (WebCore::CoordinatedGraphicsLayer::addChild):
        (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
        (WebCore::CoordinatedGraphicsLayer::addChildAbove):
        (WebCore::CoordinatedGraphicsLayer::addChildBelow):
        (WebCore::CoordinatedGraphicsLayer::replaceChild):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
        (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
        (WebCore::CoordinatedGraphicsLayer::syncChildren):
        (WebCore::CoordinatedGraphicsLayer::syncFilters):
        (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):
        (WebCore::CoordinatedGraphicsLayer::syncAnimations):
        (WebCore::CoordinatedGraphicsLayer::syncCanvas):
        (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
        (WebCore::CoordinatedGraphicsLayer::createTile):
        (WebCore::CoordinatedGraphicsLayer::updateTile):
        (WebCore::CoordinatedGraphicsLayer::removeTile):
        (WebCore::CoordinatedGraphicsLayer::setCoordinatedGraphicsLayerClient):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::createGraphicsLayer):

2012-11-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL][WK2] Add a button parameter to mouseClick, mouseDown, mouseUp functions
        https://bugs.webkit.org/show_bug.cgi?id=102065

        Reviewed by Laszlo Gombos.

        mouseClick(), mouseDown() and mouseUp() test functions are only able to test a left button of mouse now.
        However, EFL API test framwork needs to test various mouse buttons. For example, context menu test needs
        to simulate a right mouse button. So, button type parameter needs to be added for it.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::mouseClick):
        (EWK2UnitTest::EWK2UnitTestBase::mouseDown):
        (EWK2UnitTest::EWK2UnitTestBase::mouseUp):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        (EWK2UnitTestBase):

2012-11-13  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] New window size should consult the window attributes
        https://bugs.webkit.org/show_bug.cgi?id=102122

        Reviewed by Kenneth Rohde Christiansen.

        Pass the size that was specified in window.open to the embedder.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createNewPage):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::createNewPage):

2012-11-13  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Rename m_CoordinatedGraphicsLayerClient to m_coordinator
        https://bugs.webkit.org/show_bug.cgi?id=102133

        Renamed m_CoordinatedGraphicsLayerClient to m_coordinator.
        Also, there is no need for calling setCoordinator every time the tree changes,
        since we can call it once when the layer is created, now that LayerTreeCoordinator
        is the GraphicsLayerFactory.

        Reviewed by Kenneth Rohde Christiansen.

        No change in functionality.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setChildren):
        (WebCore::CoordinatedGraphicsLayer::addChild):
        (WebCore::CoordinatedGraphicsLayer::addChildAtIndex):
        (WebCore::CoordinatedGraphicsLayer::addChildAbove):
        (WebCore::CoordinatedGraphicsLayer::addChildBelow):
        (WebCore::CoordinatedGraphicsLayer::replaceChild):
        (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
        (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
        (WebCore::CoordinatedGraphicsLayer::setReplicatedByLayer):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
        (WebCore::CoordinatedGraphicsLayer::syncChildren):
        (WebCore::CoordinatedGraphicsLayer::syncFilters):
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):
        (WebCore::CoordinatedGraphicsLayer::syncAnimations):
        (WebCore::CoordinatedGraphicsLayer::syncCanvas):
        (WebCore::CoordinatedGraphicsLayer::ensureImageBackingStore):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
        (WebCore::CoordinatedGraphicsLayer::createTile):
        (WebCore::CoordinatedGraphicsLayer::updateTile):
        (WebCore::CoordinatedGraphicsLayer::removeTile):
        (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
        (WebCore::CoordinatedGraphicsLayer::setCoordinator):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::paintContents):

2012-11-13  Brady Eidson  <beidson@apple.com>

        REGRESSION(r134328) - ASSERT(isMainThread()) when subresources redirect in the NetworkProcessPass through
        https://bugs.webkit.org/show_bug.cgi?id=102167

        Reviewed by Simon Fraser.

        willSendRequest comes in on a background thread but we need to do HostRecord accounting on the main thread.

        So we'll just dispatch the receivedRedirect call to the main thread RunLoop.

        * NetworkProcess/NetworkResourceLoader.cpp:
        (WebKit::NetworkResourceLoader::willSendRequest):

2012-11-13  Timothy Hatcher  <timothy@apple.com>

        Make InspectorFrontendHost.moveWindowBy work in WebKit2 for Mac.

        https://bugs.webkit.org/show_bug.cgi?id=102154

        Reviewed by Joseph Pecoraro.

        * UIProcess/WebInspectorProxy.h:
        * UIProcess/mac/WebInspectorProxyMac.mm:
        (WebKit::getWindowFrame): Added. Call setInspectorWindowFrame.
        (WebKit::setWindowFrame): Added. Call inspectorWindowFrame.
        (WebKit::WebInspectorProxy::setInspectorWindowFrame): Added.
        (WebKit::WebInspectorProxy::inspectorWindowFrame): Added.
        (WebKit::WebInspectorProxy::platformCreateInspectorPage): Create and set the WKPageUIClient
        with getWindowFrame and setWindowFrame.

2012-11-13  Jon Lee  <jonlee@apple.com>

        Reduce snapshot waiting time
        https://bugs.webkit.org/show_bug.cgi?id=102147
        <rdar://problem/12695539>

        Reviewed by Brian Weinstein.

        * WebProcess/Plugins/PluginView.cpp: Reduce to 1 second. Improves impressions of responsiveness.

2012-11-13  Anders Carlsson  <andersca@apple.com>

        Factor the code to enter accelerated compositing given a layer out into a separate method
        https://bugs.webkit.org/show_bug.cgi?id=102155

        Reviewed by Andreas Kling.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView _enterAcceleratedCompositingMode:]):
        (-[WKView _enterAcceleratedCompositingModeWithRootLayer:]):
        * UIProcess/API/mac/WKViewInternal.h:

2012-11-13  Anders Carlsson  <andersca@apple.com>

        RemoteGraphicsLayer destructor should call GraphicsLayer::willBeDestroyed
        https://bugs.webkit.org/show_bug.cgi?id=102135

        Reviewed by Andreas Kling.

        Call GraphicsLayer::willBeDestroyed from the RemoteGraphicsLayer destructor and move
        the call to RemoteLayerTreeContext::layerWillBeDestroyed to the overridden
        willBeDestroyed member function.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        (RemoteGraphicsLayer):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::~RemoteGraphicsLayer):
        (WebKit::RemoteGraphicsLayer::willBeDestroyed):
        (WebKit):

2012-11-13  Brady Eidson  <beidson@apple.com>

        Split NetworkRequest up into a request class and a loading class.
        https://bugs.webkit.org/show_bug.cgi?id=102049

        Reviewed by Alexey Proskuryakov.

        NetworkRequest unintentionally grew into a class that managed actual loading.

        This patch splits it into "NetworkResourceLoadParameters" for all request-related data
        and "NetworkResourceLoader" for handling the actual load itself.

        Change HostRecord to manage NetworkResourceLoaders instead of NetworkRequests:
        * NetworkProcess/HostRecord.cpp:
        (WebKit::HostRecord::~HostRecord):
        (WebKit::HostRecord::schedule):
        (WebKit::HostRecord::addLoadInProgress):
        (WebKit::HostRecord::remove):
        (WebKit::HostRecord::hasRequests):
        (WebKit::HostRecord::limitRequests):
        * NetworkProcess/HostRecord.h:
        (WebKit::HostRecord::loadersPending):

        A new class to be a container for all the data required to start a network load:
        * Shared/Network/NetworkResourceLoadParameters.cpp:
        (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
        (WebKit::NetworkResourceLoadParameters::encode):
        (WebKit::NetworkResourceLoadParameters::decode):
        * Shared/Network/NetworkResourceLoadParameters.h:
        (WebKit::NetworkResourceLoadParameters::request):
        (WebKit::NetworkResourceLoadParameters::priority):
        (WebKit::NetworkResourceLoadParameters::contentSniffingPolicy):

        Pass a single NetworkResourceLoadParameters around instead of multiple bits of data:
        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
        * NetworkProcess/NetworkResourceLoadScheduler.cpp:
        (WebKit::NetworkResourceLoadScheduler::scheduleResourceLoad):
        (WebKit::NetworkResourceLoadScheduler::servePendingRequestsForHost):
        * NetworkProcess/NetworkResourceLoadScheduler.h:

        The actual ResourceHandleClient that does the actual loading:
        * NetworkProcess/NetworkResourceLoader.cpp: Renamed from Source/WebKit2/NetworkProcess/NetworkRequest.cpp.
        (WebKit::NetworkResourceLoader::NetworkResourceLoader):
        (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
        (WebKit::NetworkResourceLoader::priority):
        (WebKit::NetworkResourceLoader::start):
        (WebKit::requestsToStopMutex):
        (WebKit::requestsToStop):
        (WebKit::NetworkResourceLoader::scheduleStopOnMainThread):
        (WebKit::NetworkResourceLoader::performStops):
        (WebKit::NetworkResourceLoader::stop):
        (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose):
        (WebKit::NetworkResourceLoader::didReceiveResponse):
        (WebKit::NetworkResourceLoader::didReceiveData):
        (WebKit::NetworkResourceLoader::didFinishLoading):
        (WebKit::NetworkResourceLoader::didFail):
        (WebKit::responseMap):
        (WebKit::generateWillSendRequestID):
        (WebKit::didReceiveWillSendRequestHandled):
        (WebKit::NetworkResourceLoader::willSendRequest):
        (WebKit::NetworkResourceLoader::didSendData):
        (WebKit::NetworkResourceLoader::didReceiveCachedMetadata):
        (WebKit::NetworkResourceLoader::wasBlocked):
        (WebKit::NetworkResourceLoader::cannotShowURL):
        (WebKit::NetworkResourceLoader::willCacheResponse):
        (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
        (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
        (WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
        (WebKit::NetworkResourceLoader::receivedCancellation):
        (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
        (WebKit::NetworkResourceLoader::supportsDataArray):
        (WebKit::NetworkResourceLoader::didReceiveDataArray):
        (WebKit::NetworkResourceLoader::willStopBufferingData):
        (WebKit::NetworkResourceLoader::createAsyncFileStream):
        * NetworkProcess/NetworkResourceLoader.h:
        (WebKit::NetworkResourceLoader::create):
        (WebKit::NetworkResourceLoader::identifier):
        (WebKit::NetworkResourceLoader::connectionToWebProcess):

        * WebKit2.xcodeproj/project.pbxproj:

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad):

2012-11-13  Anders Carlsson  <andersca@apple.com>

        Store destroyed layers in the remote layer tree transaction
        https://bugs.webkit.org/show_bug.cgi?id=102127

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        (RemoteLayerTreeTransaction):
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::encode):
        (WebKit::RemoteLayerTreeTransaction::decode):
        (WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
        (WebKit):
        (WebKit::RemoteLayerTreeTransaction::dump):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        (RemoteGraphicsLayer):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::~RemoteGraphicsLayer):
        (WebKit::RemoteGraphicsLayer::removeFromParent):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
        (RemoteLayerTreeContext):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
        (WebKit::RemoteLayerTreeContext::layerWillBeDestroyed):
        (WebKit::RemoteLayerTreeContext::flushLayers):

2012-11-13  Timothy Hatcher  <timothy@apple.com>

        Adjust the Web Inspector window title frame if needed to prevent it from intersecting the dock button.

        https://bugs.webkit.org/show_bug.cgi?id=102073

        Reviewed by Joseph Pecoraro.

        * UIProcess/mac/WebInspectorProxyMac.mm:
        (-[WKWebInspectorWindow _customTitleFrame]): Added. Adjust the title frame.

2012-11-13  Anders Carlsson  <andersca@apple.com>

        Store layer positions and sizes in the transaction
        https://bugs.webkit.org/show_bug.cgi?id=102115

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        (LayerProperties):
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
        (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
        (WebKit::dumpChangedLayers):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        (RemoteGraphicsLayer):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::setPosition):
        (WebKit::RemoteGraphicsLayer::setSize):

2012-11-13  Anders Carlsson  <andersca@apple.com>

        The layer tree transaction should include the root layer
        https://bugs.webkit.org/show_bug.cgi?id=102109

        Reviewed by Andreas Kling.

        Keep the root layer ID in the layer tree transaction and encode/decode and dump it.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        (RemoteLayerTreeTransaction):
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::encode):
        (WebKit::RemoteLayerTreeTransaction::decode):
        (WebKit::RemoteLayerTreeTransaction::setRootLayerID):
        (WebKit):
        (WebKit::RemoteLayerTreeTransaction::dump):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
        (RemoteLayerTreeContext):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
        (WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
        (WebKit::RemoteLayerTreeContext::setRootLayer):
        (WebKit::RemoteLayerTreeContext::flushLayers):

2012-11-13  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] TiledBackingStore: WebChromeClient::pageRect() should consider viewport size
        https://bugs.webkit.org/show_bug.cgi?id=101946

        Reviewed by Noam Rosenthal.

        WebChromeClient::pageRect() should consider viewport size when TILED_BACKING_STORE enabled.

        Based on patch by Kenneth Rohde Christiansen.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::pageRect):

2012-11-13  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Directly composited animated GIFs only render the first image.
        https://bugs.webkit.org/show_bug.cgi?id=102043

        Reviewed by Noam Rosenthal.

        CoordinatedGraphicsLayer::setContentsToImage() checks the pointer to the image,
        not nativeImagePtr, so Coordinated Graphics currently draws only the first frame
        of gif animations. This patch makes Coordinated Graphics draw gif animations.

        In addition, this patch modifies the style of direct image compositing
        code to match other parts of CoordinatedGraphicsLayer.

        Test: ManualTests/animated-gif-on-compositing-layer.html

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::didChangeImageBacking):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
        (WebCore::CoordinatedGraphicsLayer::setContentsToImage):
        (WebCore::CoordinatedGraphicsLayer::syncImageBacking):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
        (WebCore::CoordinatedGraphicsLayer::releaseImageBackingIfNeeded):
        (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
        (WebCore::CoordinatedGraphicsLayer::hasPendingVisibleChanges):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-12  Huang Dongsung  <luxtella@company100.net>

        [Qt] REGRESSION(134142): overscaled tiles in pixel test results and MiniBrowser
        https://bugs.webkit.org/show_bug.cgi?id=101918

        Reviewed by Noam Rosenthal.

        Currently, CoordinatedBackingStore can keep out-dated contents size, because the
        size of CoordinatedBackingStore is set by only LayerTreeRenderer::createTile().
        Although the size of GraphicsLayer is changed, LayerTreeRenderer::createTile()
        is not called. However, LayerTreeRenderer::createTile() is always called, when
        the contents scale of GraphicsLayer is changed.

        This patch makes sure that we reset the backing store's size to the
        layer size when UpdateTile or RemoveTile are called.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::setSize):
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::getBackingStore):
        (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
        (WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
        (WebKit):
        (WebKit::LayerTreeRenderer::createTile):
        (WebKit::LayerTreeRenderer::removeTile):
        (WebKit::LayerTreeRenderer::updateTile):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::createTile):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
        (WebKit::CoordinatedTile::updateBackBuffer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
        (CoordinatedTileClient):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createTile):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-12  Sam Weinig  <sam@webkit.org>

        <rdar://problem/12445176>
        WebProcess needs permission to open AppleUpstreamUserClient

        Rubber-stamped by Dan Bernstein.

        * WebProcess/com.apple.WebProcess.sb.in:

2012-11-12  Simon Fraser  <simon.fraser@apple.com>

        Build fix after r134346 and 134347.
        
        Use frameView.isFlipped, not frameView.flipped in the assertion.

        * UIProcess/mac/WebInspectorProxyMac.mm:
        (WebKit::WebInspectorProxy::createInspectorWindow):

2012-11-12  Timothy Hatcher  <timothy@apple.com>

        Add a dock button to the top right corner of the Web Inspector window (similar to the full screen button).

        https://bugs.webkit.org/show_bug.cgi?id=102023

        Reviewed by Anders Carlsson.

        * Resources/Dock.pdf: Added.
        * UIProcess/WebInspectorProxy.cpp:
        (WebKit::WebInspectorProxy::attach): Set the SetAttachedWindow message.
        (WebKit::WebInspectorProxy::detach): Ditto.
        (WebKit::WebInspectorProxy::attachAvailabilityChanged): Added. Call platformAttachAvailabilityChanged.
        * UIProcess/WebInspectorProxy.h:
        * UIProcess/WebInspectorProxy.messages.in: Added AttachAvailabilityChanged message.
        * UIProcess/mac/WebInspectorProxyMac.mm:
        (-[WKWebInspectorProxyObjCAdapter attach:]): Added. Call WebInspectorProxy::attach.
        (-[WKWebInspectorWindow _cursorForResizeDirection:]): Added.
        (WebKit::WebInspectorProxy::createInspectorWindow): Create the dock button and add it.
        (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Added. Update hidden state of the dock button.
        * WebKit2.xcodeproj/project.pbxproj: Added Dock.pdf.
        * WebProcess/WebPage/WebInspector.cpp:
        (WebKit::WebInspector::setAttachedWindow): Added. Call through to the frontend client.
        (WebKit::WebInspector::updateDockingAvailability): Send AttachAvailabilityChanged message.
        * WebProcess/WebPage/WebInspector.h:
        * WebProcess/WebPage/WebInspector.messages.in: Added SetAttachedWindow message.

        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Added stub.
        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
        (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Ditto.
        * UIProcess/qt/WebInspectorProxyQt.cpp:
        (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Ditto.
        * UIProcess/win/WebInspectorProxyWin.cpp:
        (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Ditto.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Include child layers in the remote layer tree transaction
        https://bugs.webkit.org/show_bug.cgi?id=102026

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
        Encode and decode child layer IDs.

        (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
        Grab all child layer IDs and stick them in a vector.

        (WebKit::dumpChangedLayers):
        Dump child layer IDs as well.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::setChildren):
        (WebKit::RemoteGraphicsLayer::addChild):
        (WebKit::RemoteGraphicsLayer::addChildAtIndex):
        (WebKit::RemoteGraphicsLayer::addChildAbove):
        (WebKit::RemoteGraphicsLayer::addChildBelow):
        (WebKit::RemoteGraphicsLayer::replaceChild):
        Call noteSublayersChanged.

        (WebKit::RemoteGraphicsLayer::noteSublayersChanged):
        Note that the Children property changed.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Send along the current remote layer tree transaction with the commit message
        https://bugs.webkit.org/show_bug.cgi?id=102014

        Reviewed by Tim Horton.

        Add encode and decode member functions to RemoteLayerTreeTransaction and RemoteLayerTreeTransaction::LayerProperties.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
        (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
        (WebKit::RemoteLayerTreeTransaction::encode):
        (WebKit::RemoteLayerTreeTransaction::decode):
        * UIProcess/mac/RemoteLayerTreeHost.h:
        * UIProcess/mac/RemoteLayerTreeHost.messages.in:
        * UIProcess/mac/RemoteLayerTreeHost.mm:
        (WebKit::RemoteLayerTreeHost::commit):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
        (WebKit::RemoteLayerTreeContext::flushLayers):

2012-11-12  Brady Eidson  <beidson@apple.com>

        Get rid of the CrossOriginRedirectReceived message to the NetworkProcess.
        https://bugs.webkit.org/show_bug.cgi?id=102010

        Reviewed by Alexey Proskuryakov.

        This message was a stop-gap measure for when the NetworkProcess did scheduling but not loading.
        Now that the NetworkProcess does loading it doesn't need to be told when redirect is received.

        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in: Get rid of the message to the NetworkProcess.

        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::willSendRequest): After willSendRequest is dispatched to the WebProcess, directly call
          "receivedRedirect" on the NetworkResourceLoadScheduler.

        * NetworkProcess/NetworkResourceLoadScheduler.cpp:
        (WebKit::NetworkResourceLoadScheduler::receivedRedirect): Renamed from crossOriginRedirectReceived, as the
          function already checks to see if the redirect was actually cross-origin.
        * NetworkProcess/NetworkResourceLoadScheduler.h:

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): A no-op so the WebProcess doesn't
          do any host record accounting of its own.

2012-11-12  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin should use PDFKit's context menu instead of the default WebKit one
        https://bugs.webkit.org/show_bug.cgi?id=101896
        <rdar://problem/12555173>

        Reviewed by Anders Carlsson.

        Show the context menu that PDFKit vends us instead of the default WebKit one
        when PDFPlugin is told to show a context menu.

        Also, react to the didChangeContentScaleFactor callback, so that when the context
        menu (or HUD) is used to change the scale factor, we can inform PluginView.

        * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
        Add pdfLayerController:didChangeContentScaleFactor: delegate callback.
        Rename tileScaleFactor to contentScaleFactor.
        Add rightMouseDown: and menuForEvent: on PDFLayerController.
        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin):
        Add notifyContentScaleFactorChanged, handleContextMenuEvent, and nsEventForWebMouseEvent.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (-[WKPDFLayerControllerDelegate pdfLayerController:didChangeContentScaleFactor:]): Forward content scale factor changes to PDFPlugin.
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Rename tileScaleFactor to contentScaleFactor.
        (WebKit::PDFPlugin::geometryDidChange): Rename tileScaleFactor to contentScaleFactor.
        (WebKit::eventTypeFromWebEvent): It turns out we can infer whether the mouse is being dragged during a MouseMove event
        by whether it has a mouse button associated with it or not, so we don't need to track this state manually.
        (WebKit::PDFPlugin::nsEventForWebMouseEvent): Factor the part of handleMouseEvent that creates NSEvents* out into its own function.
        (WebKit::PDFPlugin::handleMouseEvent):
        Don't track mouseButtonIsDown manually, make use of the new nsEventForWebMouseEvent.
        Hand rightMouseDown: to PDFLayerController instead of mouseDown: if necessary.
        (WebKit::PDFPlugin::handleContextMenuEvent): Grab the relevant NSMenu from PDFKit and display it.
        (WebKit::PDFPlugin::handleKeyboardEvent): Don't pass a bogus mouseButtonIsDown to eventTypeFromWebEvent.
        (WebKit::PDFPlugin::notifyContentScaleFactorChanged): Update PluginView and co.'s notion of page scale when
        PDFKit changes it (generally from the context menu/HUD). Also update page size and scrollbar size/position.
        (WebKit::PDFPlugin::setScrollOffset): Don't call SimplePDFPlugin's implementation, as PDFKit handles invalidation itself.
        * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
        (WebKit::PDFPluginChoiceAnnotation::updateGeometry): Rename tileScaleFactor to contentScaleFactor.
        * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
        (WebKit::PDFPluginTextAnnotation::updateGeometry): Rename tileScaleFactor to contentScaleFactor.
        * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Make m_scrollOffset protected.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Add a RemoteLayerTreeHost object in the UI process
        https://bugs.webkit.org/show_bug.cgi?id=101999

        Reviewed by Tim Horton.

        Add a (mostly empty) RemoteLayerTreeHost class that will live in the UI process and host the layer tree.

        * DerivedSources.make:
        Add RemoteLayerTreeHost.messages.in.

        * Platform/CoreIPC/MessageID.h:
        Add a RemoteLayerTreeHost message class.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::addMessageReceiver):
        (WebKit::WebProcessProxy::removeMessageReceiver):
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        Add a message receiver map to the web process proxy.

        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
        Add a RemoteLayerTreeHost member variable.

        * UIProcess/mac/RemoteLayerTreeHost.h:
        Add new class.

        * UIProcess/mac/RemoteLayerTreeHost.messages.in:
        Add new messages file with a single Commit message.
        
        * UIProcess/mac/RemoteLayerTreeHost.mm:
        (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
        Add the layer tree host as a message receiver.

        (WebKit::RemoteLayerTreeHost::~RemoteLayerTreeHost):
        Remote the layer tree host as a message receiver.

        (WebKit::RemoteLayerTreeHost::didReceiveMessage):
        Call the generated member function.

        (WebKit::RemoteLayerTreeHost::commit):
        Add an empty stub for now.

        * WebKit2.xcodeproj/project.pbxproj:
        Add new files.

        * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
        (WebKit::RemoteLayerTreeContext::flushLayers):
        Send a commit message to the remote layer tree host.

2012-11-12  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin should support non-1 device scale factor
        https://bugs.webkit.org/show_bug.cgi?id=101923

        Reviewed by Alexey Proskuryakov.

        Do the appropriate plumbing to ensure that PDFPlugin handles device scale factor > 1
        (it's called contentsScaleFactor in plugins), both for normal drawing and for snapshotting.

        * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add deviceScaleFactor setter/getter to PDFLayerController.
        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Override contentsScaleFactorChanged.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Plumb device scale factor through to PDFLayerController.
        (WebKit::PDFPlugin::contentsScaleFactorChanged): Plumb device scale factor through to PDFLayerController
        when we're notified that it has changed.
        (WebKit::PDFPlugin::snapshot): Create snapshots with the device scale factor applied.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Rename RemoteLayerTreeController to RemoteLayerTreeContext
        https://bugs.webkit.org/show_bug.cgi?id=101993

        Reviewed by Andreas Kling.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        (RemoteGraphicsLayer):
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::create):
        (WebKit::RemoteGraphicsLayer::RemoteGraphicsLayer):
        (WebKit::RemoteGraphicsLayer::flushCompositingStateForThisLayerOnly):
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.h: Renamed from Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeController.h.
        * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeController.mm.
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
        (RemoteLayerTreeDrawingArea):
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
        (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
        (WebKit::RemoteLayerTreeDrawingArea::graphicsLayerFactory):
        (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
        (WebKit::RemoteLayerTreeDrawingArea::scheduleCompositingLayerFlush):

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Add debug only code to dump the contents of a transaction
        https://bugs.webkit.org/show_bug.cgi?id=101991

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::writeIndent):
        (WebKit::dumpChangedLayers):
        (WebKit::RemoteLayerTreeTransaction::dump):

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Store name changes in the layer transaction
        https://bugs.webkit.org/show_bug.cgi?id=101981

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        (LayerProperties):
        Add new LayerProperties class.

        (RemoteLayerTreeTransaction):
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
        Find the changed layer properties for the given layer and apply the changed properties.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        (WebKit::RemoteGraphicsLayer::layerID):
        Add new getter.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::generateLayerID):
        (WebKit::RemoteGraphicsLayer::RemoteGraphicsLayer):
        Give each remote graphics layer a unique ID.

2012-11-12  Brady Eidson  <beidson@apple.com>

        NetworkProcess: Use an accurate shouldContentSniff value when creating ResourceHandles
        https://bugs.webkit.org/show_bug.cgi?id=101872

        Reviewed by Alexey Proskuryakov.

        The WebProcess now passes "shouldContentSniff" over to the NetworkProcess with the requests so it can be respected.

        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::scheduleNetworkRequest): Update to pass through "shouldContentSniff"
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:

        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::NetworkRequest):
        (WebKit::NetworkRequest::start):
        * NetworkProcess/NetworkRequest.h:
        (WebKit::NetworkRequest::create):

        * NetworkProcess/NetworkResourceLoadScheduler.cpp:
        (WebKit::NetworkResourceLoadScheduler::scheduleNetworkRequest): Update to pass through "shouldContentSniff"
        * NetworkProcess/NetworkResourceLoadScheduler.h:
        * WebProcess/Network/NetworkProcessConnection.h:

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad): Update to pass through "shouldContentSniff"

2012-11-12  Anders Carlsson  <andersca@apple.com>

        More work towards packaging layer changes up into a transaction object
        https://bugs.webkit.org/show_bug.cgi?id=101969

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        (WebKit::RemoteLayerTreeTransaction::RemoteLayerTreeTransaction):
        (WebKit::RemoteLayerTreeTransaction::~RemoteLayerTreeTransaction):
        (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
        Add empty stubs.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::flushCompositingStateForThisLayerOnly):
        Call layerPropertiesChanged on the current transaction.

        * WebProcess/WebPage/mac/RemoteLayerTreeController.h:
        * WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
        (WebKit::RemoteLayerTreeController::RemoteLayerTreeController):
        Initialize m_currentTransaction till 0.

        (WebKit::RemoteLayerTreeController::currentTransaction):
        Add getter. This may only be called from beneath flushLayers.

        (WebKit::RemoteLayerTreeController::flushLayers):
        Create a transaction before flusing the compositing state.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        More work on remote layer flushing
        https://bugs.webkit.org/show_bug.cgi?id=101960

        Reviewed by Andreas Kling.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::flushCompositingState):
        Call recursiveCommitChanges.

        (WebKit::RemoteGraphicsLayer::flushCompositingStateForThisLayerOnly):
        Add stub function for now.

        (WebKit::RemoteGraphicsLayer::recursiveCommitChanges):
        Call flushCompositingStateForThisLayerOnly and then call recursiveCommitChanges recursively on all the child layers.

        * WebProcess/WebPage/mac/RemoteLayerTreeController.h:
        * WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
        (WebKit::RemoteLayerTreeController::create):
        (WebKit::RemoteLayerTreeController::RemoteLayerTreeController):
        This now takes a web page.

        (WebKit::RemoteLayerTreeController::setRootLayer):
        Add empty function.

        (WebKit::RemoteLayerTreeController::layerFlushTimerFired):
        Call flushLayers explicitly.

        (WebKit::RemoteLayerTreeController::flushLayers):
        Force a layout and then sync all the compositing layers.

        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
        (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
        RemoteLayerTreeController::create now takes a web page.

        (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
        Call the remote layer tree controller.

2012-11-12  Anders Carlsson  <andersca@apple.com>

        Layer property changes should schedule a remote layer flush
        https://bugs.webkit.org/show_bug.cgi?id=101951

        Reviewed by Andreas Kling.

        * Shared/mac/RemoteLayerTreeTransaction.h:
        * Shared/mac/RemoteLayerTreeTransaction.mm:
        New class. For now this just contains the changed layer properties flags but this will be extended
        to cover changed layers as well.

        * WebKit2.xcodeproj/project.pbxproj:
        Add new files.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::RemoteGraphicsLayer):
        Initialize m_uncommittedLayerChanges.

        (WebKit::RemoteGraphicsLayer::setName):
        Set the name and call noteLayerPropertiesChanged.

        (WebKit::RemoteGraphicsLayer::noteLayerPropertiesChanged):
        Notify that a flush is required (if required).

        * WebProcess/WebPage/mac/RemoteLayerTreeController.h:
        Add a layer flush timer.

        * WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
        (WebKit::RemoteLayerTreeController::RemoteLayerTreeController):
        Initialize the layer flush timer.

        (WebKit::RemoteLayerTreeController::scheduleLayerFlush):
        Schedule the layer flush timer if needed.

        (WebKit::RemoteLayerTreeController::layerFlushTimerFired):
        Empty stub for now.

        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
        (WebKit::RemoteLayerTreeDrawingArea::scheduleCompositingLayerFlush):
        Call the remote layer tree controller.

2012-11-12  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [EFL] Add implementations of device - user conversion methods
        https://bugs.webkit.org/show_bug.cgi?id=101938

        Reviewed by Laszlo Gombos.

        Consider the deviceScaleFactor when convertion to/from user
        and device units.

        This affects DOM API's such as window.moveTo, resizeTo etc.

        * UIProcess/efl/PageClientBase.cpp:
        * UIProcess/efl/PageClientBase.h:
        (PageClientBase):
        * UIProcess/efl/PageClientDefaultImpl.cpp:
        (WebKit::PageClientDefaultImpl::convertToDeviceSpace):
        (WebKit):
        (WebKit::PageClientDefaultImpl::convertToUserSpace):
        * UIProcess/efl/PageClientDefaultImpl.h:
        (PageClientDefaultImpl):
        * UIProcess/efl/PageClientLegacyImpl.cpp:
        (WebKit::PageClientLegacyImpl::convertToDeviceSpace):
        (WebKit):
        (WebKit::PageClientLegacyImpl::convertToUserSpace):
        * UIProcess/efl/PageClientLegacyImpl.h:
        (PageClientLegacyImpl):

2012-11-12  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Black screen when applications use software backend.
        https://bugs.webkit.org/show_bug.cgi?id=101659

        Reviewed by Kenneth Rohde Christiansen.

        If creating openGL context fails, automatically fallback to software rendering.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::hardwareAccelerationEnabled):
        (EwkViewImpl):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::ensureRootLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (WebKit::LayerTreeRenderer::setAccelerationMode):
        (LayerTreeRenderer):
        * UIProcess/efl/PageClientBase.cpp:
        (WebKit::PageClientBase::createDrawingAreaProxy):

2012-11-12  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [WK2] Indentation nit on WebPage
        https://bugs.webkit.org/show_bug.cgi?id=101928

        Reviewed by Kenneth Rohde Christiansen.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::setViewportSize):

2012-11-12  Jiyeon Kim  <jiyeon0402.kim@samsung.com>

        [EFL][WK2] Add ewk_settings_offline_web_application_cache_enabled set/get APIs
        https://bugs.webkit.org/show_bug.cgi?id=101688

        Reviewed by Gyuyoung Kim.

        Add ewk_settings_offline_web_application_cache_get API to be used for enabling disabling the web application cache.
        Add ewk_settings_offline_web_application_cache_set API to be used for getting the web application cache status.
        In addition, offline web application cache is enabled by default.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_offline_web_application_cache_enabled_set):
        (ewk_settings_offline_web_application_cache_enabled_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-11-11  Shinya Kawanaka  <shinyak@chromium.org>

        [Shadow] ElementShadow should have RuleFeatureSet for select attribute selectors.
        https://bugs.webkit.org/show_bug.cgi?id=101180

        Reviewed by Dimitri Glazkov.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-11  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r134144.
        http://trac.webkit.org/changeset/134144
        https://bugs.webkit.org/show_bug.cgi?id=101876

        seems to break win 7 chromium browser test (Requested by
        hayato on #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-11  Kenichi Ishibashi  <bashi@chromium.org>

        WTFString::utf8() should have a mode of conversion to use replacement character
        https://bugs.webkit.org/show_bug.cgi?id=101678

        Reviewed by Alexey Proskuryakov.

        Update the symbol for String::utf8().

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-10  Zeno Albisser  <zeno@webkit.org>

        [Qt][WK2] Use QLibraryInfo to search for executables.
        https://bugs.webkit.org/show_bug.cgi?id=101774

        Reviewed by Simon Hausmann.

        This allows finding the WebProcess or the PluginProcess
        in it's installed location. This is necessary when
        deploying QtWebKit with an installer.

        * Shared/qt/ProcessExecutablePathQt.cpp:
        (WebKit::executablePath):

2012-11-09  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Rename tileRect from targetRect.
        https://bugs.webkit.org/show_bug.cgi?id=101705

        Reviewed by Noam Rosenthal.

        Messages::LayerTreeCoordinatorProxy::CreateTileForLayer contains the targetRect
        variable. The targetRect stands for the rect of the tile created. This patch
        renames tileRect to enhance the clearity.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStoreTile::swapBuffers):
        (WebKit::CoordinatedBackingStoreTile::setBackBuffer):
        (WebKit::CoordinatedBackingStore::updateTile):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStoreTile):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::updateTile):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (TileUpdate):
        (WebKit::LayerTreeRenderer::TileUpdate::TileUpdate):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::createTile):
        (WebCore::CoordinatedGraphicsLayer::updateTile):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
        (CoordinatedTileClient):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createTile):
        (WebKit::LayerTreeCoordinator::updateTile):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-09  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Allow ports to decide whether an image should be directly composited
        https://bugs.webkit.org/show_bug.cgi?id=101827

        Reviewed by Simon Fraser.

        Implement shouldDirectlyCompositeImage for coordinated graphics, effectively disabling direct
        compositing of images with width or height larger than 2000 pixels.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::shouldDirectlyCompositeImage):
        (WebCore):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-09  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Antialias the edge-tiles of CoordinatedBackingStore.
        https://bugs.webkit.org/show_bug.cgi?id=101818

        Reviewed by Noam Rosenthal.

        Since we now have the entire surfaceRect, we can antialias the edge-tiles.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):

2012-11-09  Rick Byers  <rbyers@chromium.org>

        No tests for changing mouse cursors
        https://bugs.webkit.org/show_bug.cgi?id=100550

        Reviewed by Adam Barth.

        Add necessary exports for Internals::getCurrentCursorInfo

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-09  Vivek Galatage  <vivekgalatage@gmail.com>

        Add missing exports setMediaTypeOverride, setResolutionOverride and layerTreeAsText to WebKit2CFLite.def
        https://bugs.webkit.org/show_bug.cgi?id=101816

        Reviewed by Anders Carlsson.

        Add missing exports setMediaTypeOverride, setResolutionOverride and layerTreeAsText to WebKit2CFLite.def to fix win-cairo build.

        * win/WebKit2CFLite.def:

2012-11-09  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Amend CoordinatedBackingStore::paintToTextureMapper to fit its own semantic.
        https://bugs.webkit.org/show_bug.cgi?id=101701

        Reviewed by Noam Rosenthal.

        Currently, all subclasses of TextureMapperPlatformLayer implement
        paintToTextureMapper to draw its own texture on the given targetRect. Subclasses
        can scale the texture to fit the size of the targetRect. However, only
        CoordinatedBackingStore::paintToTextureMapper draws its texture using its own
        texture size. There is no bug yet, because TextureMapperLayer uses
        CoordinatedBackingStore only as a backing store, not a content layer. So,
        TextureMapperLayer always request CoordinatedBackingStore to draw using its own
        texture size. However, we can use CoordinatedBackingStore as a content layer in
        the future. So this patch fixes this potential bug.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::setSize):
        (WebKit):
        (WebKit::mapToContents):
        (WebKit::paintTilesToTextureMapper):
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::createTile):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::createTile):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
        (WebKit::CoordinatedTile::updateBackBuffer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
        (CoordinatedTileClient):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createTile):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-09  Brady Eidson  <beidson@apple.com>

        Implement NetworkProcess willSendRequest
        https://bugs.webkit.org/show_bug.cgi?id=101812

        Reviewed by Alexey Proskuryakov.

        Message to the WebProcess to get the new request, if any.

        Because network callbacks are coming in on a background thread we have to jump through hoops to synchronously
        ask the WebProcess, but these hoops follow an established pattern of using async messaging with BlockingResourceMap.

        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::willSendRequestHandled): Pass the new request back to NetworkRequest for handling.
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:

        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::didFail):
        (WebKit::responseMap):
        (WebKit::generateWillSendRequestID):
        (WebKit::didReceiveWillSendRequestHandled):
        (WebKit::NetworkRequest::willSendRequest): Asynchronously message the WebProcess but synchronous wait for a reply back.
        * NetworkProcess/NetworkRequest.h:

        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::willSendRequest): Ask the WebResourceLoadScheduler for the new request then
          message back to the NetworkProcess with the reply.
        * WebProcess/Network/NetworkProcessConnection.h:

        * WebProcess/Network/NetworkProcessConnection.messages.in:

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::willSendRequest):
        * WebProcess/Network/WebResourceLoadScheduler.h:

2012-11-09  Tim Horton  <timothy_horton@apple.com>

        PDFPlugin should support clicking on external links
        https://bugs.webkit.org/show_bug.cgi?id=101647
        <rdar://problem/12555222>

        Reviewed by Alexey Proskuryakov.

        * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add details about clickedLinkWithURL: callback.
        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Add clickedLink() and storage for the last mouse event that was dispatched.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (-[WKPDFLayerControllerDelegate pdfLayerController:clickedLinkWithURL:]): Forward the URL to PDFPlugin.
        (WebKit::PDFPlugin::handleMouseEvent): Store the last mouse event that was dispatched.
        We use this to get the correct mouse button and modifier keys, so that command-clicking, etc. links works.
        (WebKit::PDFPlugin::clickedLink): Request a load given the new URL.

        * PluginProcess/PluginControllerProxy.h:
        (PluginControllerProxy):
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::shouldAllowScripting):
        * WebProcess/Plugins/Netscape/NetscapePlugin.h:
        * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
        * WebProcess/Plugins/Plugin.h:
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::shouldAllowScripting):
        * WebProcess/Plugins/PluginProxy.h:
        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::shouldAllowScripting):
        * WebProcess/Plugins/PluginView.h:
        Add shouldAllowScripting() function to Plugin (and plumb through PluginProxy and PluginView, etc.)

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::allowScript): Override allowScript(); if the frame is hosting a PluginDocument,
        ask its plugin whether it should allow execution of JavaScript and JavaScript URLs or not.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

        * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Disable scripting for SimplePDFPlugin (and, by inheritance, PDFPlugin).

2012-11-09  Brady Eidson  <beidson@apple.com>

        Implement WebResourceBuffer::isEmpty()
        https://bugs.webkit.org/show_bug.cgi?id=101805

        Reviewed by Alexey Proskuryakov.

        This is required to make the existing subresource loading in NetworkProcess work correctly,
        as there's an isEmpty() check in the WebProcess that decides whether or not to actually deliver 
        the data to the ResourceLoader.

        * Shared/WebResourceBuffer.cpp:
        (WebKit::WebResourceBuffer::isEmpty):
        * Shared/WebResourceBuffer.h:

2012-11-09  Hurnjoo Lee  <hurnjoo.lee@samsung.com>

        [EFL][WK2][AC] Fixed layers are shaking when scrolling
        https://bugs.webkit.org/show_bug.cgi?id=101549

        Reviewed by Kenneth Rohde Christiansen.

        At the time of adjusting positions for fixed layers, the locations of
        fixed layers are calculated incorrectly because the contentsSize is empty.

        * UIProcess/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize): Call the
        setContentsSize function in LayerTreeCoordinatorProxy in order to calculate
        the locations of fixed layers correctly.

2012-11-09  Brady Eidson  <beidson@apple.com>

        NetworkRequest refactoring
        https://bugs.webkit.org/show_bug.cgi?id=101777

        Reviewed by Alexey Proskuryakov.

        Move all of the ResourceHandleClient stubs from the .h to the .cpp in one patch
        to make future patches cleaner.

        Also completely remove the declaration for shouldCacheResponse() for now.

        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::willSendRequest):
        (WebKit::NetworkRequest::didSendData):
        (WebKit::NetworkRequest::didReceiveCachedMetadata):
        (WebKit::NetworkRequest::wasBlocked):
        (WebKit::NetworkRequest::cannotShowURL):
        (WebKit::NetworkRequest::willCacheResponse):
        (WebKit::NetworkRequest::shouldUseCredentialStorage):
        (WebKit::NetworkRequest::didReceiveAuthenticationChallenge):
        (WebKit::NetworkRequest::didCancelAuthenticationChallenge):
        (WebKit::NetworkRequest::receivedCancellation):
        (WebKit::NetworkRequest::canAuthenticateAgainstProtectionSpace):
        (WebKit::NetworkRequest::supportsDataArray):
        (WebKit::NetworkRequest::didReceiveDataArray):
        (WebKit::NetworkRequest::willStopBufferingData):
        (WebKit::NetworkRequest::createAsyncFileStream):
        * NetworkProcess/NetworkRequest.h:

2012-11-09  Alexey Proskuryakov  <ap@apple.com>

        CookieJar uses Document class, which is a layering violation
        https://bugs.webkit.org/show_bug.cgi?id=101621

        Reviewed by Brady Eidson.

        * UIProcess/API/C/WKAPICast.h: Don't include CookieJar.h, its completely unnecessary.

2012-11-09  peavo@outlook.com  <peavo@outlook.com>

        WinCairo build fails to link
        https://bugs.webkit.org/show_bug.cgi?id=101739

        Reviewed by Kentaro Hara.

        * win/WebKit2CFLite.def:

2012-11-09  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][WK2] REGRESSION (r134043): API tests crashes
        https://bugs.webkit.org/show_bug.cgi?id=101742

        Reviewed by Kenneth Rohde Christiansen.

        Do not assert on PassRefPtr<WebContext> after it becomes 0.

        * UIProcess/efl/BatteryProvider.cpp:
        (BatteryProvider::BatteryProvider):
        * UIProcess/efl/NetworkInfoProvider.cpp:
        (NetworkInfoProvider::NetworkInfoProvider):

2012-11-09  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Random crashes in layout tests on the bot
        https://bugs.webkit.org/show_bug.cgi?id=101687

        Reviewed by Kenneth Rohde Christiansen.

        Speculative fix for a crash on the bot.
        If didCommitLoad() is called before the view size was set, we will
        try to paint an empty area, and that will crash.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::update):

2012-11-09  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Make classes for client use WebContext instead of WKContext
        https://bugs.webkit.org/show_bug.cgi?id=101564

        Reviewed by Kenneth Rohde Christiansen.

        EwkContext class has been refactored to use WebContext instead of WKContext in r133844,
        so this patch makes client classes use WebContext

        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::EwkContext):
        * UIProcess/efl/BatteryProvider.cpp:
        (BatteryProvider::~BatteryProvider):
        (BatteryProvider::create):
        (BatteryProvider::BatteryProvider):
        (BatteryProvider::didChangeBatteryStatus):
        * UIProcess/efl/BatteryProvider.h:
        (BatteryProvider):
        * UIProcess/efl/ContextHistoryClientEfl.cpp:
        (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
        * UIProcess/efl/ContextHistoryClientEfl.h:
        (WebKit::ContextHistoryClientEfl::create):
        (ContextHistoryClientEfl):
        * UIProcess/efl/NetworkInfoProvider.cpp:
        (NetworkInfoProvider::create):
        (NetworkInfoProvider::NetworkInfoProvider):
        (NetworkInfoProvider::~NetworkInfoProvider):
        * UIProcess/efl/NetworkInfoProvider.h:
        (NetworkInfoProvider):

2012-11-09  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Fix build warning in test_ewk2_context.cpp: [-Wwrite-strings]
        https://bugs.webkit.org/show_bug.cgi?id=101666

        Reviewed by Kenneth Rohde Christiansen.

        Use constant character pointer to fix [-Wwrite-strings] warning.

        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):

2012-11-09  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add support for custom cursors
        https://bugs.webkit.org/show_bug.cgi?id=101723

        Reviewed by Kenneth Rohde Christiansen.

        EwkViewImpl::setCursor() now properly handles custom
        cursors.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::setCursor):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):

2012-11-08  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        [EFL] Add a method to the TextCheckerEnchant class to check whether any dictionary is loaded
        https://bugs.webkit.org/show_bug.cgi?id=101570

        Reviewed by Gustavo Noronha Silva.

        To do not get the vector of loaded languages, WebKit2-EFL calls
        TextCheckerEnchant::hasDictionary() method to check whether the
        dictionaries vector is empty.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_continuous_spell_checking_enabled_set):
        * UIProcess/API/efl/ewk_text_checker.cpp:
        (Ewk_Text_Checker::hasDictionary):
        (Ewk_Text_Checker):
        * UIProcess/API/efl/ewk_text_checker_private.h:
        (Ewk_Text_Checker):

2012-11-08  Timothy Hatcher  <timothy@apple.com>

        Always use a textured window for the Web Inspector.

        https://bugs.webkit.org/show_bug.cgi?id=101693

        Reviewed by Joseph Pecoraro.

        * UIProcess/mac/WebInspectorProxyMac.mm:
        (WebKit::WebInspectorProxy::createInspectorWindow): Removed the conditional for a textured window.

2012-11-08  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Don't send the messages for releasing resources during purging.
        https://bugs.webkit.org/show_bug.cgi?id=101685

        Reviewed by Noam Rosenthal.

        We don't need to send the messages related to releasing resources to UI Process
        during purging, because UI Process already had removed all resources.
        This patch gives us reducing slight messaging overhead and increasing readability.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::purgeReleasedImages):
        (WebKit::LayerTreeCoordinator::removeTile):
        (WebKit::LayerTreeCoordinator::removeUpdateAtlas):
        (WebKit::LayerTreeCoordinator::purgeBackingStores):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-08  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2] Unused parameters on LayerTreeRenderer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=101653

        Reviewed by Noam Rosenthal.

        Because the 'tileID' parameter is not used now,
        comment out it to fix build warning -Wunused-parameter

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):

2012-11-08  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add proper support for fullscreen API to MiniBrowser
        https://bugs.webkit.org/show_bug.cgi?id=101615

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::enterFullScreen):
        * UIProcess/API/efl/ewk_security_origin.cpp:
        (EwkSecurityOrigin::EwkSecurityOrigin):
        * UIProcess/API/efl/ewk_security_origin_private.h:
        (EwkSecurityOrigin::create): Add factory method to construct a
        EwkSecurityOrigin from a KURL.
        (EwkSecurityOrigin):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_fullscreen_exit): Add public API function to exit
        fullscreen mode.
        * UIProcess/API/efl/ewk_view.h: Add security origin parameter
        to fullscreen_enter smart function since this information is
        useful to the user agent.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (fullScreenCallback):
        (fullScreenExitCallback):
        (TEST_F):

2012-11-08  Brady Eidson  <beidson@apple.com>

        Have NetworkProcess do the actual loading of subresources.
        https://bugs.webkit.org/show_bug.cgi?id=101640

        Reviewed by Alexey Proskuryakov.

        This adds actual loading of subresources in the NetworkProcess.

        Currently a resource just gets its entire buffer of data built up and then delivered to the WebProcess in one chunk.

        Many FIXMEs point the path towards much better behavior.

        Project file stuff:
        * WebKit2.xcodeproj/project.pbxproj:

        Add a new Logging channel for scheduling so the one for loading can be separate:
        * Platform/Logging.cpp:
        * Platform/Logging.h:

        Add an enhancement FIXME:
        * NetworkProcess/HostRecord.cpp:
        (WebKit::HostRecord::remove):

        NetworkRequest now derives from ResourceHandleClient and does actual loading, messaging WebProcess as it does:
        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::NetworkRequest):
        (WebKit::NetworkRequest::~NetworkRequest):
        (WebKit::NetworkRequest::start):
        (WebKit::requestsToStopMutex):
        (WebKit::requestsToStop):
        (WebKit::NetworkRequest::scheduleStopOnMainThread): Stop
        (WebKit::NetworkRequest::performStops):
        (WebKit::NetworkRequest::stop): Does NetworkRequest cleanup that happens no matter the state of the network load.
        (WebKit::NetworkRequest::didReceiveResponse):
        (WebKit::NetworkRequest::didReceiveData):
        (WebKit::NetworkRequest::didFinishLoading):
        (WebKit::NetworkRequest::didFail):
        * NetworkProcess/NetworkRequest.h:

        Change some logging and now invalid asserts, as well as starting requests in-process instead of relying on WebProcess:
        * NetworkProcess/NetworkResourceLoadScheduler.cpp:
        (WebKit::NetworkResourceLoadScheduler::scheduleNetworkRequest):
        (WebKit::NetworkResourceLoadScheduler::addLoadInProgress):
        (WebKit::NetworkResourceLoadScheduler::removeLoadIdentifier):
        (WebKit::NetworkResourceLoadScheduler::crossOriginRedirectReceived):
        (WebKit::NetworkResourceLoadScheduler::servePendingRequests):
        (WebKit::NetworkResourceLoadScheduler::servePendingRequestsForHost):
        (WebKit::NetworkResourceLoadScheduler::removeScheduledLoadIdentifiers):
        (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoadIdentifier):
        * NetworkProcess/NetworkResourceLoadScheduler.h:
        (NetworkResourceLoadScheduler):

        Add a "ShareableResource" which includes a SharedMemory block, an offset into that block, and a size:
        * Shared/ShareableResource.cpp: Added.
        (WebKit::ShareableResource::Handle::Handle):
        (WebKit::ShareableResource::Handle::encode):
        (WebKit::ShareableResource::Handle::decode):
        (WebKit::ShareableResource::create):
        (WebKit::ShareableResource::ShareableResource):
        (WebKit::ShareableResource::~ShareableResource):
        (WebKit::ShareableResource::createHandle):
        (WebKit::ShareableResource::data):
        (WebKit::ShareableResource::size):
        * Shared/ShareableResource.h: 
        (WebKit::ShareableResource::Handle::isNull):
        (WebKit::ShareableResource::Handle::size):

        Add an implementation of WebCore::ResourceBuffer that wraps a ShareableResource instead of a SharedBuffer:
        * Shared/WebResourceBuffer.cpp:
        (WebKit::WebResourceBuffer::WebResourceBuffer):
        (WebKit::WebResourceBuffer::~WebResourceBuffer):
        (WebKit::WebResourceBuffer::data):
        (WebKit::WebResourceBuffer::size):
        * Shared/WebResourceBuffer.h:
        (WebResourceBuffer):
        (WebKit::WebResourceBuffer::create):

        Add messaging that responds to resource load events from the NetworkProcess and passes them to the scheduler:
        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::didReceiveResponse):
        (WebKit::NetworkProcessConnection::didReceiveResource):
        (WebKit::NetworkProcessConnection::didFailResourceLoad):
        * WebProcess/Network/NetworkProcessConnection.h:
        * WebProcess/Network/NetworkProcessConnection.messages.in:

        Takes resource load events passed from the NetworkProcess and hands them off directly to WebCore ResourceLoaders:
        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::scheduleLoad): Update some logging.
        (WebKit::WebResourceLoadScheduler::addMainResourceLoad): Ditto.
        (WebKit::WebResourceLoadScheduler::remove): Ditto.
        (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Ditto.
        (WebKit::WebResourceLoadScheduler::servePendingRequests): Ditto.
        (WebKit::WebResourceLoadScheduler::didReceiveResponse): Call through to ResourceLoader.
        (WebKit::WebResourceLoadScheduler::didReceiveResource): Ditto.
        (WebKit::WebResourceLoadScheduler::didFailResourceLoad): Ditto.
        * WebProcess/Network/WebResourceLoadScheduler.h:

2012-11-08  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove an invisible TiledBackingStore of CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=101424

        Reviewed by Noam Rosenthal.

        We must remove an invisible TiledBackingStore of CoordinatedGraphicsLayer.
        Currently, CoordinatedGraphicsLayer only removes a TiledBackingStore if
        !drawsContent() while TextureMapperLayer::updateBackingStore() removes a backing
        store if (!m_state.drawsContent || !m_state.contentsVisible || m_size.isEmpty()).
        CoordinatedGraphicsLayer must have the same behavior.

        In addition, this patch makes LayerTreeRenderer remove a backing store from
        GraphicsLayerTextureMapper when CoordinatedBackingStore does not have any tiles.

        Test: compositing/nested-direct-image-compositing.html

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::removeTile):
        (WebKit::CoordinatedBackingStore::isEmpty):
        (WebKit):
        (WebKit::CoordinatedBackingStore::commitTileOperations):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
        (CoordinatedBackingStore):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
        (WebKit):
        (WebKit::LayerTreeRenderer::removeTile):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):

2012-11-08  Tim Horton  <timothy_horton@apple.com>

        [WK2] Print preview should vend images to the UIProcess instead of PDFs
        https://bugs.webkit.org/show_bug.cgi?id=101382
        <rdar://problem/9866766>

        Reviewed by Alexey Proskuryakov.

        In the interests of keeping PDF processing inside the WebProcess, we should
        remove print preview's reliance on PDFs, by handing bitmaps back instead.

        * Shared/ShareableBitmap.cpp:
        (WebKit::ShareableBitmap::create): Add an optional SharedMemory::Protection argument, so we can make
        ShareableBitmaps from read-only handles if desired. Defaults to read-write as previously.
        (WebKit::ShareableBitmap::createHandle): Add an optional SharedMemory::Protection argument, so we can make
        read-only handles if desired. Defaults to read-write as previously.
        * Shared/ShareableBitmap.h:
        * UIProcess/API/mac/WKPrintingView.h:
        (WebImage): Store WebImages instead of raw PDF data for previews.
        * UIProcess/API/mac/WKPrintingView.mm:
        (pageDidDrawToImage): Add a callback for when a preview we've requested is done rendering into an image.
        Cache the image in _pagePreviews if appropriate.
        (pageDidDrawToPDF): Do not handle PDF data unless we are expecting a real print callback (not a preview).
        (-[WKPrintingView _drawPreview:]): Request an image instead of PDF data when doing a print preview.
        * UIProcess/GenericCallback.h:
        (ImageCallback): Add a callback type with one argument: a ShareableBitmap::Handle.
        I can't use the GenericCallback template because ShareableBitmap::Handle doesn't have a corresponding WK type.
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::close): Add support for ImageCallback.
        (WebKit::WebPageProxy::imageCallback): Add support for ImageCallback.
        (WebKit::WebPageProxy::drawRectToImage): Rename drawRectToPDF to drawRectToImage.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Rename drawRectToPDF to drawRectToImage, add support for ImageCallback.
        * UIProcess/WebPageProxy.messages.in: Add support for ImageCallback.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::drawRectToImage): Rename drawRectToPDF to drawRectToImage.
        Make drawRectToImage create a bitmap snapshot of the page (using the normal snapshotting code),
        or, if the page is backed by a *PDFPlugin, draw the PDF document into a bitmap and use that.
        * WebProcess/WebPage/WebPage.h:
        (WebPage): Rename drawRectToPDF to drawRectToImage.
        * WebProcess/WebPage/WebPage.messages.in: Rename drawRectToPDF to drawRectToImage.
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::drawPDFDocument): Rename drawRectToPDFFromPDFDocument to drawPDFDocument,
        because it's more like drawImage than anything else.

2012-11-08  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Fix build without WebKit1
        https://bugs.webkit.org/show_bug.cgi?id=101583

        Reviewed by Tor Arne Vestbø.

        WebProcess needs access to the QStyle themeing via the initializeWebKit2Theme() function from
        WebKit1. Try to access it depending on whether WebKit1 is built or not, not depending on whether
        widgets are available not.

        * WebProcess.pro:
        * qt/MainQt.cpp:
        (WebKit):
        (main):

2012-11-08  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        [EFL] Unreviewed build fix after r133880.

        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::setAdditionalPluginPath):

2012-11-08  KwangYong Choi  <ky0.choi@samsung.com>

        [EFL][WK2] Add ewk_context_additional_plugin_path_set API
        https://bugs.webkit.org/show_bug.cgi?id=101530

        Reviewed by Gyuyoung Kim.

        Add ewk_context_additional_plugin_path_set() to set additional plugin directory.

        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::setAdditionalPluginPath):
        (ewk_context_additional_plugin_path_set):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (EwkContext):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):

2012-11-08  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Use explicit constructor in BatteryProvider, DownloadManagerEfl, NetworkInfoProvider
        https://bugs.webkit.org/show_bug.cgi?id=101567

        Reviewed by Kentaro Hara.

        Added explicit keyword in constructors of BatteryProvider, DownloadManagerEfl,
        and NetworkInfoProvider in order to avoid implicit type conversion.

        * UIProcess/efl/BatteryProvider.h:
        (BatteryProvider):
        * UIProcess/efl/DownloadManagerEfl.h:
        (DownloadManagerEfl):
        * UIProcess/efl/NetworkInfoProvider.h:
        (NetworkInfoProvider):

2012-11-08  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Use smart pointers in EwkContext more actively
        https://bugs.webkit.org/show_bug.cgi?id=101565

        Reviewed by Gyuyoung Kim.

        Since we're using WebContext instead of WKContext starting r133844 we should
        use smart pointers accordingly including PassRefPtr.

        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::EwkContext):
        (EwkContext::~EwkContext):
        (EwkContext::create):
        (EwkContext::cookieManager):
        (EwkContext::ensureFaviconDatabase):
        (EwkContext::setFaviconDatabaseDirectoryPath):
        (EwkContext::addVisitedLink):
        (EwkContext::setCacheModel):
        (EwkContext::cacheModel):
        * UIProcess/API/efl/ewk_context_private.h:
        (EwkContext):
        (EwkContext::webContext):
        * UIProcess/API/efl/ewk_database_manager_private.h:
        (Ewk_Database_Manager::create):
        * UIProcess/API/efl/ewk_storage_manager_private.h:
        (Ewk_Storage_Manager::create):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::DownloadManagerEfl):
        * UIProcess/efl/RequestManagerClientEfl.cpp:
        (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):

2012-11-08  Kangil Han  <kangil.han@samsung.com>

        [EFL][MiniBrowser] Add encoding detector option.
        https://bugs.webkit.org/show_bug.cgi?id=100931

        Reviewed by Gyuyoung Kim.

        Add triggering Settings::setUsesEncodingDetector for WK2 UI process.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):

2012-11-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] WebKitWebView doesn't notify of favicon changes for known favicons but new pages
        https://bugs.webkit.org/show_bug.cgi?id=98874

        Reviewed by Martin Robinson.

        If the page is unknown (not registered in the icon database) but
        the icon is known (registered by another page) favicon-ready
        signal is not emitted because the icon has already been imported
        from the database. The view always asks for the favicon when the
        load has been committed, but it's usually too early and the
        favicon of the page is still unkown. We can use
        didChangeIconForPageURLCallback to know when to ask for the
        favicon emitting a favicon-changed signal. The callback
        iconDataReadyForPageURLCallback is still useful to process pending
        icon requests, but the favicon-ready signal can be removed in
        favor of favicon-changed.

        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (_WebKitFaviconDatabasePrivate): Keep a map of page icons that has
        been imported to make sure we only emit favicon-changed signal
        when the favicon URI has actually changed, because
        didChangeIconForPageURLCallback can be called multiple times for
        the same favicon URI in some cases.
        (webkit_favicon_database_class_init): Remove favicon-ready signal
        and add favicon-changed that includes the new favicon URI for the
        given page URI.
        (didChangeIconForPageURLCallback): Emit favicon-changed signal if
        the favicon URI is new or has changed for the given page URI.
        (iconDataReadyForPageURLCallback): Process pending icon requests.
        (webkitFaviconDatabaseCreate): Add implementation for
        didChangeIconForPageURLCallback.
        * UIProcess/API/gtk/WebKitFaviconDatabasePrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (_WebKitWebViewPrivate): Add favicon URI to make sure we only ask for a
        new favicon when the favicon URI has changed.
        (webkitWebViewUpdateFavicon): Update the favicon and emit
        notify::favicon if it has changed.
        (gotFaviconCallback): Update the favicon if the request hasn't
        been cancelled.
        (webkitWebViewRequestFavicon): Ask for the page favicon.
        (webkitWebViewUpdateFaviconURI): Updated the favicon URI and
        request the page favicon if the favicon URI has changed.
        (faviconChangedCallback): Call webkitWebViewUpdateFaviconURI() with
        the given favicon URI.
        (webkitWebViewWatchForChangesInFavicon): Connect to
        WebKitFaviconDatabase::favicon-changed.
        (webkitWebViewDisconnectFaviconDatabaseSignalHandlers): Disconnect
        WebKitFaviconDatabase::favicon-changed signal.
        (webkitWebViewLoadChanged): Call webkitWebViewUpdateFaviconURI()
        with the current favicon URI when the load has been committed.
        * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
        (serverCallback):
        (testNotInitialized):
        (testGetFavicon):
        (testGetFaviconURI):
        (testWebViewFavicon):
        (beforeAll):
        * UIProcess/API/gtk/webkit2marshal.list: Add new marshaler.

2012-11-08  Anders Carlsson  <andersca@apple.com>

        Attempt to silence a compiler warning.

        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        (WebKit::RemoteGraphicsLayer::RemoteGraphicsLayer):

2012-11-07  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r133841.
        http://trac.webkit.org/changeset/133841
        https://bugs.webkit.org/show_bug.cgi?id=101542

        Reverted patches were innocent (Requested by shinyak on
        #webkit).

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-07  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Make ewk_context use WebContext instead of WKContext
        https://bugs.webkit.org/show_bug.cgi?id=101477

        Reviewed by Gyuyoung Kim.

        Refactor ewk_context to use WebContext as ewk_context is encapsulated in a C++ classes.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::EwkContext):
        (EwkContext::~EwkContext):
        (EwkContext::create):
        (EwkContext::defaultContext):
        (EwkContext::cookieManager):
        (EwkContext::ensureFaviconDatabase):
        (EwkContext::setFaviconDatabaseDirectoryPath):
        (EwkContext::addVisitedLink):
        (EwkContext::setCacheModel):
        (EwkContext::cacheModel):
        * UIProcess/API/efl/ewk_context_private.h:
        (EwkContext):
        (EwkContext::webContext):
        * UIProcess/API/efl/ewk_database_manager.cpp:
        (Ewk_Database_Manager::Ewk_Database_Manager):
        (Ewk_Database_Manager::getDatabaseOrigins):
        * UIProcess/API/efl/ewk_database_manager_private.h:
        (Ewk_Database_Manager::create):
        (Ewk_Database_Manager):
        * UIProcess/API/efl/ewk_storage_manager.cpp:
        (Ewk_Storage_Manager::Ewk_Storage_Manager):
        (Ewk_Storage_Manager::getStorageOrigins):
        * UIProcess/API/efl/ewk_storage_manager_private.h:
        (Ewk_Storage_Manager::create):
        (Ewk_Storage_Manager):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::DownloadManagerEfl):
        * UIProcess/efl/RequestManagerClientEfl.cpp:
        (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):

2012-11-07  Shinya Kawanaka  <shinyak@chromium.org>

        Unreviewed, rolling out r133428 and r133749
        https://bugs.webkit.org/show_bug.cgi?id=101533

        These patches might cause memory regression.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-07  Anders Carlsson  <andersca@apple.com>

        Add RemoteGraphicsLayer class
        https://bugs.webkit.org/show_bug.cgi?id=101535

        Reviewed by Simon Fraser.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.h:
        * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm:
        Add RemoteGraphicsLayer, a subclass of WebCore::GraphicsLayer.

        * WebProcess/WebPage/mac/RemoteLayerTreeController.h:
        Make RemoteLayerTreeController a GraphicsLayerFactory.

        * WebProcess/WebPage/mac/RemoteLayerTreeController.mm:
        (WebKit::RemoteLayerTreeController::createGraphicsLayer):
        Create a new RemoteGraphicsLayer.

        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
        (WebKit::RemoteLayerTreeDrawingArea::graphicsLayerFactory):
        Return the layer tree controller.

2012-11-07  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Make WebVibrationProxy to be a member of WebPageProxy.
        https://bugs.webkit.org/show_bug.cgi?id=100334

        Reviewed by Anders Carlsson.

        WebVibrationProxy should be a member of WebPageProxy, because the IPC
        messages of WebVibrationProxy have page destination ID.

        The r132386 proposed a way to add/delete message receivers that can
        handle IPC messages with destination ID.

        Previous implementation that creating WebVibrationProxy as a WebContext
        member and using the global message receiver for the proxy can make
        assertions after r132386.

        To handle the vibration IPC messages properly, this patch will do the
        followings.

        1) Instead of WebContext, WebPageProxy will have the WebVibrationProxy.

        2) WebVibrationProxy will add itself to the message receiver map of
           the WebContext with page destination ID.

        3) When WebProcessProxy received vibration ipc messages, it will
           forward the messages to the WebContext first. Then the message
           receiver map of the WebContext will handle the messages with the
           registered WebVibrationProxy.

        4) APIs will be modified to apply these changes.
           a) WK API to get WKVibrationRef will use WKPageRef not WKContextRef.
           b) EFL APIs and API test for the vibration will also be changed.
              - EwkViewImpl will have vibration client. (EwkContext will not
                have it)
              - Previous API to register the vibration callback will be removed.
              - New signals for vibration will be added to the EwkViewImpl.
              - VibrationProxy will be renamed to VibrationClient for the
                consistency with other clients in EwkViewImpl.
              - VibrationClient will use EwkViewImpl instead of EwkContext.
              - Previous API test for vibration will be moved from context test
                to view test, and it will use the changed API.

        * PlatformEfl.cmake:
        * UIProcess/API/C/WKContext.cpp:
        * UIProcess/API/C/WKContext.h:
        * UIProcess/API/C/WKPage.cpp:
        (WKPageGetVibration):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EwkViewCallbacks):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::EwkContext):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (WebKit):
        (EwkContext):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (VibrationCbData):
        (onVibrate):
        (onCancelVibration):
        (loadVibrationHTMLString):
        (TEST_F):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::disconnectProcess):
        * UIProcess/WebContext.h:
        (WebKit):
        (WebContext):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        (WebKit::WebPageProxy::close):
        (WebKit::WebPageProxy::processDidCrash):
        * UIProcess/WebPageProxy.h:
        (WebKit):
        (WebPageProxy):
        (WebKit::WebPageProxy::vibration):
        * UIProcess/WebVibrationProxy.cpp:
        (WebKit::WebVibrationProxy::create):
        (WebKit::WebVibrationProxy::WebVibrationProxy):
        (WebKit::WebVibrationProxy::~WebVibrationProxy):
        (WebKit::WebVibrationProxy::invalidate):
        * UIProcess/WebVibrationProxy.h:
        (WebKit):
        (WebVibrationProxy):
        * UIProcess/efl/VibrationClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/efl/VibrationProvider.cpp.
        (toVibrationClient):
        (VibrationClientEfl::vibrateCallback):
        (VibrationClientEfl::cancelVibrationCallback):
        (VibrationClientEfl::create):
        (VibrationClientEfl::VibrationClientEfl):
        (VibrationClientEfl::~VibrationClientEfl):
        * UIProcess/efl/VibrationClientEfl.h: Renamed from Source/WebKit2/UIProcess/efl/VibrationProvider.h.
        (WebKit):
        (VibrationClientEfl):

2012-11-07  Anders Carlsson  <andersca@apple.com>

        Add empty RemoteLayerTree class
        https://bugs.webkit.org/show_bug.cgi?id=101524

        Reviewed by Simon Fraser.

        Add a new RemoteLayerTree class which will contain the remote graphics layers.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebPage/mac/RemoteLayerTree.h: Added.
        * WebProcess/WebPage/mac/RemoteLayerTree.mm: Added.
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
        (RemoteLayerTreeDrawingArea):
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
        (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):

2012-11-07  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Allow client to override setWindowFrame() / getWindowFrame()
        https://bugs.webkit.org/show_bug.cgi?id=101496

        Reviewed by Kenneth Rohde Christiansen.

        Add window_geometry_set() / window_geometry_get() smart functions to
        ewk_view allowing the client to provide its own implementation for
        those.

        This is particularly useful if the application uses elm_win because
        the default implementation will not behave correctly in this case.
        This is due to the fact that the default implementation interacts
        with the Ecore_Evas that contains the view and is not aware of the
        parent window widget.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::windowGeometry):
        (EwkViewImpl::setWindowGeometry):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::getWindowFrame):
        (WebKit::PageUIClientEfl::setWindowFrame):

2012-11-07  Alexandru Chiculita  <achicu@adobe.com>

        CoordinatedGraphicsArgumentCoders should use ValidatedCustomFitlerOperation instead
        https://bugs.webkit.org/show_bug.cgi?id=100905

        Reviewed by Noam Rosenthal.

        The code now knows how to read a ValidatedCustomFitlerOperation and serialize it to the UI process.

        No new tests, the code path is not used yet.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        * Shared/CoordinatedGraphics/WebCustomFilterProgram.h:

2012-11-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Add ewk_settings_preferred_minimum_contents_width_get/set API
        https://bugs.webkit.org/show_bug.cgi?id=101467

        Reviewed by Kenneth Rohde Christiansen.

        Added ewk_settings_preferred_minimum_contents_width_get/set API which is used for setting/getting
        of default minimum contents width for non viewport meta element sites.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_preferred_minimum_contents_width_set):
        (ewk_settings_preferred_minimum_contents_width_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-11-07  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Avoid creating an empty surface
        https://bugs.webkit.org/show_bug.cgi?id=101464

        Reviewed by Kenneth Rohde Christiansen.

        Make sure we have a valid view size before creating a GL surface.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):

2012-11-07  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][UNIX] Crash in WebKit::PluginProcessProxy::scanPlugin()
        https://bugs.webkit.org/show_bug.cgi?id=101446

        Reviewed by Kenneth Rohde Christiansen.

        Make sure that the disposition of the SIGCHLD signal is reset to the default
        before calling g_spawn_sync(). If the disposition is set to SIG_IGN, then
        g_spawn_sync() will not be able to return the exit status of the child
        process, our exit failure check will be useless and the following warning
        will be printed:

        GLib-WARNING **: In call to g_spawn_sync(), exit status of a child process
        was requested but SIGCHLD action was set to SIG_IGN and ECHILD was received
        by waitpid(), so exit status can't be returned. This is a bug in the
        program calling g_spawn_sync(); either don't request the exit status, or
        don't set the SIGCHLD action.

        This patch also adds a NULL-check for stdOut to avoid crashing in such
        case and makes use of String::split() to parse stdOut instead of doing it
        manually.

        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::scanPlugin):

2012-11-07  Shinya Kawanaka  <shinyak@chromium.org>

        [Shadow] Use setPseudo() instead of setShadowPseudoId().
        https://bugs.webkit.org/show_bug.cgi?id=101306

        Reviewed by Kent Tamura.

        Exposes necessary symbols.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make EWK classes Ewk_Objects
        https://bugs.webkit.org/show_bug.cgi?id=101057

        Reviewed by Kenneth Rohde Christiansen.

        Now all the existing EWK classes share common Ewk_Object ref/unref API.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_database_manager.cpp:
        (Ewk_Database_Manager::createOriginList):
        * UIProcess/API/efl/ewk_database_manager_private.h:
        * UIProcess/API/efl/ewk_file_chooser_request.cpp:
        (EwkFileChooserRequest::EwkFileChooserRequest):
        (EwkFileChooserRequest::~EwkFileChooserRequest):
        (EwkFileChooserRequest::allowMultipleFiles):
        (EwkFileChooserRequest::acceptedMIMETypes):
        (EwkFileChooserRequest::cancel):
        (EwkFileChooserRequest::chooseFiles):
        (ewk_file_chooser_request_allow_multiple_files_get):
        (ewk_file_chooser_request_accepted_mimetypes_get):
        (ewk_file_chooser_request_cancel):
        (ewk_file_chooser_request_files_choose):
        (ewk_file_chooser_request_file_choose):
        * UIProcess/API/efl/ewk_file_chooser_request.h:
        * UIProcess/API/efl/ewk_file_chooser_request_private.h:
        (EwkFileChooserRequest):
        (EwkFileChooserRequest::create):
        * UIProcess/API/efl/ewk_form_submission_request.cpp:
        (EwkFormSubmissionRequest::EwkFormSubmissionRequest):
        (EwkFormSubmissionRequest::~EwkFormSubmissionRequest):
        (EwkFormSubmissionRequest::fieldValue):
        (EwkFormSubmissionRequest::fieldNames):
        (EwkFormSubmissionRequest::submit):
        (ewk_form_submission_request_field_names_get):
        (ewk_form_submission_request_field_value_get):
        (ewk_form_submission_request_submit):
        * UIProcess/API/efl/ewk_form_submission_request.h:
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        (EwkFormSubmissionRequest):
        (EwkFormSubmissionRequest::create):
        * UIProcess/API/efl/ewk_intent.cpp:
        (EwkIntent::EwkIntent):
        (EwkIntent::webIntentData):
        (EwkIntent::action):
        (EwkIntent::type):
        (EwkIntent::service):
        (EwkIntent::suggestions):
        (EwkIntent::extra):
        (EwkIntent::extraKeys):
        (ewk_intent_action_get):
        (ewk_intent_type_get):
        (ewk_intent_service_get):
        (ewk_intent_suggestions_get):
        (ewk_intent_extra_get):
        (ewk_intent_extra_names_get):
        * UIProcess/API/efl/ewk_intent.h:
        * UIProcess/API/efl/ewk_intent_private.h:
        (EwkIntent):
        (EwkIntent::create):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (EwkIntentService::EwkIntentService):
        (EwkIntentService::action):
        (EwkIntentService::type):
        (EwkIntentService::href):
        (EwkIntentService::title):
        (EwkIntentService::disposition):
        (ewk_intent_service_action_get):
        (ewk_intent_service_type_get):
        (ewk_intent_service_href_get):
        (ewk_intent_service_title_get):
        (ewk_intent_service_disposition_get):
        * UIProcess/API/efl/ewk_intent_service.h:
        * UIProcess/API/efl/ewk_intent_service_private.h:
        (EwkIntentService):
        (EwkIntentService::create):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (EwkNavigationPolicyDecision::EwkNavigationPolicyDecision):
        (EwkNavigationPolicyDecision::~EwkNavigationPolicyDecision):
        (EwkNavigationPolicyDecision::navigationType):
        (EwkNavigationPolicyDecision::mouseButton):
        (EwkNavigationPolicyDecision::modifiers):
        (EwkNavigationPolicyDecision::frameName):
        (EwkNavigationPolicyDecision::request):
        (EwkNavigationPolicyDecision::accept):
        (EwkNavigationPolicyDecision::reject):
        (EwkNavigationPolicyDecision::download):
        (ewk_navigation_policy_navigation_type_get):
        (ewk_navigation_policy_mouse_button_get):
        (ewk_navigation_policy_modifiers_get):
        (ewk_navigation_policy_frame_name_get):
        (ewk_navigation_policy_request_get):
        (ewk_navigation_policy_decision_accept):
        (ewk_navigation_policy_decision_reject):
        (ewk_navigation_policy_decision_download):
        * UIProcess/API/efl/ewk_navigation_policy_decision.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (EwkNavigationPolicyDecision):
        (EwkNavigationPolicyDecision::create):
        * UIProcess/API/efl/ewk_resource.cpp:
        (EwkResource::EwkResource):
        (EwkResource::url):
        (EwkResource::isMainResource):
        (ewk_resource_url_get):
        (ewk_resource_main_resource_get):
        * UIProcess/API/efl/ewk_resource.h:
        * UIProcess/API/efl/ewk_resource_private.h:
        (EwkResource):
        (EwkResource::create):
        * UIProcess/API/efl/ewk_security_origin.cpp:
        (EwkSecurityOrigin::EwkSecurityOrigin):
        (EwkSecurityOrigin::host):
        (EwkSecurityOrigin::protocol):
        (EwkSecurityOrigin::port):
        (ewk_security_origin_host_get):
        (ewk_security_origin_protocol_get):
        (ewk_security_origin_port_get):
        * UIProcess/API/efl/ewk_security_origin.h:
        * UIProcess/API/efl/ewk_security_origin_private.h:
        (EwkSecurityOrigin):
        (EwkSecurityOrigin::create):
        * UIProcess/API/efl/ewk_storage_manager.cpp:
        (Ewk_Storage_Manager::createOriginList):
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        (EwkUrlSchemeRequest):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_deliver):
        * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
        (onFileChooserRequest):
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
        (TEST_F):
        * UIProcess/efl/FormClientEfl.cpp:
        (WebKit::FormClientEfl::willSubmitForm):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
        (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
        * UIProcess/efl/PagePolicyClientEfl.cpp:
        (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::runOpenPanel):
        * UIProcess/efl/ResourceLoadClientEfl.cpp:
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        * UIProcess/efl/ResourceLoadClientEfl.h:

2012-11-07  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        [WK2] Return earlier if a plugin snapshot cannot be created.
        https://bugs.webkit.org/show_bug.cgi?id=101445

        Reviewed by Kenneth Rohde Christiansen.

        Currently only the Mac port has support for creating snapshots of
        Netscape plugins. Return earlier in PluginProxy::snapshot() so
        that we do not pass a null handler to ShareableBitmap::create()
        and avoid crashing when running pixel tests with plugins.

        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::snapshot):

2012-11-07  Kangil Han  <kangil.han@samsung.com>

        [EFL][WK2] Change encoding detector API names
        https://bugs.webkit.org/show_bug.cgi?id=101450

        Reviewed by Gyuyoung Kim.

        To make settings API name consistent, we need to change two APIs with respect to encoding detector.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_encoding_detector_enabled_set):
        (ewk_settings_encoding_detector_enabled_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-11-07  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        WebKitTestRunner needs to turn on 'setContinuousSpellCheckingEnabled'
        https://bugs.webkit.org/show_bug.cgi?id=93611

        Reviewed by Gyuyoung Kim.

        When WebKitTestRunner turns on the spelling feature with the resetStateToConsistentValues() method,
        it happens that the WebProcess is still not launched (although it is already created).
        In this case, isValid() method returns false.

        This fix sends a message to the WebProcess messages queue, and the message
        will be handled once the WebProcess is ready.

        * Target.pri:
        Adds missing files to compile spellcheking feature for WebKit2-Qt
        to use WebKit C API from WKTextChecker.h.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::updateTextCheckerState):
        Uses canSendMessage() method instead of isValid() to check whether the message to
        the WebProcess can be sent.

        * UIProcess/efl/TextCheckerEfl.cpp:
        (WebKit::TextChecker::continuousSpellCheckingEnabledStateChanged):
        Calls TextChecker::setContinuousSpellCheckingEnabled which additionaly invokes the client's method.
        WK2-EFL settings for text checker (ewk_settings.cpp) set the default language (if it wasn't set earlier) to
        perform the spelling. It allows to pass the tests from editing/spelling directory.

2012-11-07  Christophe Dumez  <christophe.dumez@intel.com>

        Add replaceWithLiteral() method to WTF::String
        https://bugs.webkit.org/show_bug.cgi?id=101257

        Reviewed by Benjamin Poulain.

        Substitute String::replace() calls by String::replaceWithLiteral() where
        adequate, for efficiency.

        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        (WebKit::makeURLString):

2012-11-06  Vivek Galatage  <vivekgalatage@gmail.com>

        Move DrawingAreaImpl methods graphicsLayerFactory, setRootCompositingLayer & scheduleCompositingLayerSync under ACCELERATED_COMPOSITING
        https://bugs.webkit.org/show_bug.cgi?id=101427

        Reviewed by Anders Carlsson.

        Moving these methods under the ACCELERATED_COMPOSITING flag.
        This fixes broken wincairo due to use of override specifier.

        * WebProcess/WebPage/DrawingAreaImpl.cpp:
        (WebKit):
        * WebProcess/WebPage/DrawingAreaImpl.h:
        (DrawingAreaImpl):

2012-11-06  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>

        [EFL][WK2] API test crash with accelerated compositing on.
        https://bugs.webkit.org/show_bug.cgi?id=101384

        Reviewed by Gyuyoung Kim.

        If accelerated compositing is enabled API tests should create GL evas engine
        instead of default one.
        Also, in API tests first window resize and display often comes earlier
        than enterAcceleratedCompositingMode call, so let's create GL surface in
        _ewk_view_smart_calculate on first window resize.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::SetUp):

2012-11-06  Anders Carlsson  <andersca@apple.com>

        Update Java related WKSI function names
        https://bugs.webkit.org/show_bug.cgi?id=101414

        Reviewed by Sam Weinig.

        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        (WebKit::PluginInfoStore::shouldUsePlugin):
        (WebKit::PluginInfoStore::policyForPlugin):
        (WebKit::PluginInfoStore::reactivateInactivePlugin):

2012-11-06  Kiran Muppala  <cmuppala@apple.com>

        Add application occlusion criterion to enable/disable process suppression on Mac
        https://bugs.webkit.org/show_bug.cgi?id=100997

        Reviewed by Alexey Proskuryakov.

        Provide support for enabling and disabling process suppression when application is completely occluded on Mac.

        * NetworkProcess/NetworkProcess.messages.in: Added message to update application occlusion status.
        * NetworkProcess/mac/NetworkProcessMainMac.mm:
        (WebKit::NetworkProcessMain): Removed call to take process suppression assertion since ChildProcess
        takes one on constrution.
        * PluginProcess/PluginProcess.messages.in: Added message to update application occlusion status.
        * PluginProcess/mac/PluginProcessMainMac.mm:
        (WebKit::PluginProcessMain): Removed call to take process suppression assertion since ChildProcess
        takes one on construction.
        * Shared/ChildProcess.cpp:
        (WebKit::ChildProcess::ChildProcess): Take process suppression assertion on construction.
        * Shared/ChildProcess.h:
        (WebKit::ChildProcess::applicationIsOccluded):
        * Shared/mac/ChildProcessMac.mm: Added.
        (WebKit::ChildProcess::setApplicationIsOccluded): Release process suppression assertion if application
        becomes occluded or take a new assertion if application becomes visible.
        (WebKit::ChildProcess::disableProcessSuppression):
        (WebKit::ChildProcess::enableProcessSuppression):
        Helper methods to take and release process suppression assertion.
        * SharedWorkerProcess/SharedWorkerProcess.messages.in: Added message to update application occlusion status.
        * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm:
        (WebKit::SharedWorkerProcessMain): Removed call to take process suppression assertion since ChildProcess
        takes one on construction.
        * UIProcess/Network/NetworkProcessManager.h:
        * UIProcess/Network/NetworkProcessProxy.cpp:
        (WebKit::NetworkProcessProxy::didFinishLaunching): Update application occlusion status post launch.
        * UIProcess/Network/NetworkProcessProxy.h:
        (WebKit::NetworkProcessProxy::isValid):
        * UIProcess/Network/mac/NetworkProcessManagerMac.mm: Added.
        (WebKit::NetworkProcessManager::setApplicationIsOccluded):
        * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
        (WebKit::NetworkProcessProxy::setApplicationIsOccluded):
        * UIProcess/Plugins/PluginProcessManager.h:
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::didFinishLaunching): Update application occlusion status post launch.
        * UIProcess/Plugins/PluginProcessProxy.h:
        (WebKit::PluginProcessProxy::isValid):
        * UIProcess/Plugins/mac/PluginProcessManagerMac.mm: Added.
        (WebKit::PluginProcessManager::setApplicationIsOccluded):
        * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
        (WebKit::PluginProcessProxy::setApplicationIsOccluded):
        * UIProcess/SharedWorkers/SharedWorkerProcessManager.h:
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
        (WebKit::SharedWorkerProcessProxy::didFinishLaunching): Update application occlusion status post launch.
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
        (WebKit::SharedWorkerProcessProxy::isValid):
        * UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm: Added.
        (WebKit::SharedWorkerProcessManager::setApplicationIsOccluded):
        * UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm: Added.
        (WebKit::SharedWorkerProcessProxy::setApplicationIsOccluded):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::create): Added call to initialize process suppression support.
        * UIProcess/WebContext.h:
        (WebKit::WebContext::applicationIsOccluded):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didFinishLaunching): Update application occlusion status post launch.
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::applicationBecameVisible):
        (WebKit::WebContext::applicationBecameOccluded):
        Notification handlers for informing non UI WebKit2 processes of changes to application occlusion state.
        (WebKit::WebContext::registerOcclusionNotificationHandlers):
        (WebKit::WebContext::initializeProcessSuppressionSupport):
        Helper method to register occlusion notification handlers if process suppression support is enabled.
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebProcess.messages.in: Added message to update application occlusion status.
        * WebProcess/mac/WebProcessInitialization.mm:
        (WebKit::InitializeWebProcess): Removed call to take process supression assertion since ChildProcess
        takes one on construction.

2012-11-06  Alexey Proskuryakov  <ap@apple.com>

        Clean up which storage cookie jar functions use
        https://bugs.webkit.org/show_bug.cgi?id=101395

        Reviewed by Brady Eidson.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
        Updated for two new functions.

2012-11-06  Jihye Kang  <jye.kang@samsung.com>

        [EFL][WK2] Add ewk_database_manager APIs
        https://bugs.webkit.org/show_bug.cgi?id=101193

        Reviewed by Gyuyoung Kim.

        Add ewk_database_manager to manage web database and
        ewk_database_manaager_origins_get to get origins list of web storage.
        Add unit tests for ewk_database_manager APIs.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        (Ewk_Context::databaseManager):
        (ewk_context_database_manager_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_database_manager.cpp: Added.
        (Ewk_Database_Manager::Ewk_Database_Manager):
        (Ewk_Database_Manager::getDatabaseOrigins):
        (Ewk_Database_Manager::createOriginList):
        (Ewk_Database_Origins_Async_Get_Context):
        (Ewk_Database_Origins_Async_Get_Context::Ewk_Database_Origins_Async_Get_Context):
        (getDatabaseOriginsCallback):
        (ewk_database_manager_origins_get):
        * UIProcess/API/efl/ewk_database_manager.h: Added.
        * UIProcess/API/efl/ewk_database_manager_private.h: Added.
        (Ewk_Database_Manager):
        (Ewk_Database_Manager::create):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_database_manager.cpp: Added.
        (OriginData):
        (OriginData::OriginData):
        (getDatabaseOriginsCallback):
        (timerCallback):
        (TEST_F):

2012-11-06  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Refactor Ewk_Auth_Request, Ewk_Url_Scheme_Request and Ewk_Download_Job to be Ewk_Objects
        https://bugs.webkit.org/show_bug.cgi?id=101383

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Auth_Request, Ewk_Url_Scheme_Request and Ewk_Download_Job are Ewk_Objects now.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        * UIProcess/API/efl/EwkViewImpl.h:
        * UIProcess/API/efl/ewk_auth_request.cpp:
        (EwkAuthRequest::EwkAuthRequest):
        (EwkAuthRequest::~EwkAuthRequest):
        (EwkAuthRequest::suggestedUsername):
        (EwkAuthRequest::realm):
        (EwkAuthRequest::host):
        (EwkAuthRequest::continueWithoutCredential):
        (EwkAuthRequest::authenticate):
        (EwkAuthRequest::isRetrying):
        (ewk_auth_request_suggested_username_get):
        (ewk_auth_request_cancel):
        (ewk_auth_request_authenticate):
        (ewk_auth_request_retrying_get):
        (ewk_auth_request_realm_get):
        (ewk_auth_request_host_get):
        * UIProcess/API/efl/ewk_auth_request.h:
        * UIProcess/API/efl/ewk_auth_request_private.h:
        (EwkAuthRequest):
        (EwkAuthRequest::create):
        * UIProcess/API/efl/ewk_back_forward_list.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (EwkContext):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (EwkDownloadJob::EwkDownloadJob):
        (EwkDownloadJob::id):
        (EwkDownloadJob::viewImpl):
        (ewk_download_job_state_get):
        (EwkDownloadJob::state):
        (ewk_download_job_request_get):
        (EwkDownloadJob::request):
        (ewk_download_job_response_get):
        (EwkDownloadJob::response):
        (ewk_download_job_destination_get):
        (EwkDownloadJob::destination):
        (ewk_download_job_destination_set):
        (EwkDownloadJob::setDestination):
        (ewk_download_job_suggested_filename_get):
        (EwkDownloadJob::suggestedFileName):
        (ewk_download_job_cancel):
        (EwkDownloadJob::cancel):
        (ewk_download_job_estimated_progress_get):
        (EwkDownloadJob::estimatedProgress):
        (ewk_download_job_elapsed_time_get):
        (EwkDownloadJob::elapsedTime):
        (EwkDownloadJob::setResponse):
        (EwkDownloadJob::setSuggestedFileName):
        (EwkDownloadJob::incrementReceivedData):
        (EwkDownloadJob::setState):
        * UIProcess/API/efl/ewk_download_job.h:
        * UIProcess/API/efl/ewk_download_job_private.h:
        (EwkDownloadJob):
        (EwkDownloadJob::create):
        * UIProcess/API/efl/ewk_url_scheme_request.cpp:
        (EwkUrlSchemeRequest::EwkUrlSchemeRequest):
        (EwkUrlSchemeRequest::id):
        (EwkUrlSchemeRequest::url):
        (EwkUrlSchemeRequest::scheme):
        (EwkUrlSchemeRequest::path):
        (EwkUrlSchemeRequest::finish):
        (ewk_url_scheme_request_scheme_get):
        (ewk_url_scheme_request_url_get):
        (ewk_url_scheme_request_path_get):
        (ewk_url_scheme_request_finish):
        * UIProcess/API/efl/ewk_url_scheme_request.h:
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        (EwkUrlSchemeRequest):
        (EwkUrlSchemeRequest::create):
        * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
        (onAuthenticationRequest):
        (TEST_F):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
        (WebKit::DownloadManagerEfl::didReceiveResponse):
        (WebKit::DownloadManagerEfl::didCreateDestination):
        (WebKit::DownloadManagerEfl::didReceiveData):
        (WebKit::DownloadManagerEfl::didFail):
        (WebKit::DownloadManagerEfl::didCancel):
        (WebKit::DownloadManagerEfl::didFinish):
        (WebKit::DownloadManagerEfl::registerDownload):
        (WebKit::DownloadManagerEfl::downloadJob):
        * UIProcess/efl/DownloadManagerEfl.h:
        (DownloadManagerEfl):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
        * UIProcess/efl/RequestManagerClientEfl.cpp:
        (WebKit::RequestManagerClientEfl::didReceiveURIRequest):

2012-11-06  Yael Aharon  <yael.aharon@intel.com>

        [WK2] Wrong scroll position when going back in history
        https://bugs.webkit.org/show_bug.cgi?id=101358

        Reviewed by Kenneth Rohde Christiansen.

        Reset the contentsSize after a new load was committed. We should not continue
        to use the contentsSize of the previous page in any calculation.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didCommitLoad):

2012-11-06  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Declare all smart callbacks in EwkViewCallbacks.h
        https://bugs.webkit.org/show_bug.cgi?id=101360

        Reviewed by Kenneth Rohde Christiansen.

        Declare all EwkView smart callbacks in EwkViewCallbacks.h
        and remove remaining calls to evas_object_smart_callback_call().
        It is a good idea to have all the callbacks declared in one
        place for convenience and consistency. We also have better
        argument type checking if we use the new callback mechanism.

        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EwkViewCallbacks::CallBack::call):
        (CallBack):
        (EwkViewCallbacks):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::informIconChange):
        (EwkViewImpl::informURLChange):
        (EwkViewImpl::createNewPage):
        (EwkViewImpl::closePage):

2012-11-05  Anders Carlsson  <andersca@apple.com>

        Hook up the remote layer tree drawing area to an environment variable
        https://bugs.webkit.org/show_bug.cgi?id=101267

        Reviewed by Andreas Kling.

        * UIProcess/API/mac/WKView.mm:
        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
        (WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
        (WebKit::RemoteLayerTreeDrawingAreaProxy::deviceScaleFactorDidChange):

2012-11-06  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Fit-to-width broken on pages with viewport meta tag
        https://bugs.webkit.org/show_bug.cgi?id=99715

        Reviewed by Jocelyn Turcotte.

        The initial scale from the viewport attributes should only
        be applied if the scale was explicitly specified in the
        viewport meta tag.
        If the initial scale is auto it should be calculated using
        the final contents size, which might be larger than the
        layout size, so that the content fits horizontally into
        the view.

        Also add QML unit tests that cover this functionality.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_fitToView.qml:
        * UIProcess/API/qt/tests/qmltests/common/test5.html: Added.
        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::pageTransitionViewportReady):

2012-11-06  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove a parent member in WebLayerInfo.
        https://bugs.webkit.org/show_bug.cgi?id=101142

        Reviewed by Noam Rosenthal.

        The parent member is not used in UI Process, and GraphicsLayer::setParent is
        internally used only, so we don't need to send the parent layer id to UI Process.

        * Shared/WebLayerTreeInfo.h:
        (WebKit::WebLayerInfo::WebLayerInfo):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):

2012-11-06  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Remove two methods' virtual modifiers in CoordinatedGraphicsLayer.
        https://bugs.webkit.org/show_bug.cgi?id=101141

        Reviewed by Noam Rosenthal.

        The methods exist for only CoordinatedGraphicsLayer and we have no plan to
        extend CoordinatedGraphicsLayer.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-06  Balazs Kelemen  <kbalazs@webkit.org>

        [CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread safe
        https://bugs.webkit.org/show_bug.cgi?id=101341

        Reviewed by Noam Rosenthal.

        The queue can be accessed from public API so we should make
        sure it is not updated concurrently with a threaded render loop.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::syncRemoteContent):
        (WebKit::LayerTreeRenderer::appendUpdate):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):

2012-11-06  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make Ewk_Context Ewk_Object
        https://bugs.webkit.org/show_bug.cgi?id=101322

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Context is Ewk_Object now and using common ref/unref API.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::ewkContext):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_context.cpp:
        (EwkContext::EwkContext):
        (EwkContext::~EwkContext):
        (EwkContext::create):
        (EwkContext::defaultContext):
        (EwkContext::cookieManager):
        (EwkContext::ensureFaviconDatabase):
        (EwkContext::setFaviconDatabaseDirectoryPath):
        (EwkContext::faviconDatabase):
        (EwkContext::storageManager):
        (EwkContext::requestManager):
        (EwkContext::vibrationProvider):
        (EwkContext::addVisitedLink):
        (EwkContext::setCacheModel):
        (EwkContext::cacheModel):
        (ewk_context_cookie_manager_get):
        (ewk_context_favicon_database_directory_set):
        (ewk_context_favicon_database_get):
        (ewk_context_storage_manager_get):
        (EwkContext::wkContext):
        (EwkContext::downloadManager):
        (EwkContext::historyClient):
        (ewk_context_default_get):
        (ewk_context_new):
        (ewk_context_new_with_injected_bundle_path):
        (ewk_context_url_scheme_register):
        (ewk_context_vibration_client_callbacks_set):
        (ewk_context_history_callbacks_set):
        (ewk_context_visited_link_add):
        (ewk_context_cache_model_set):
        (ewk_context_cache_model_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (EwkContext):
        * UIProcess/API/efl/ewk_view.cpp:
        (createEwkView):
        (ewk_view_base_add):
        (ewk_view_smart_add):
        (ewk_view_add_with_context):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::DownloadManagerEfl):
        * UIProcess/efl/DownloadManagerEfl.h:
        (WebKit::DownloadManagerEfl::create):
        (DownloadManagerEfl):
        * UIProcess/efl/PageClientBase.cpp:
        (WebKit::PageClientBase::handleDownloadRequest):
        * UIProcess/efl/RequestManagerClientEfl.cpp:
        (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):
        * UIProcess/efl/RequestManagerClientEfl.h:
        (WebKit::RequestManagerClientEfl::create):
        (RequestManagerClientEfl):

2012-11-06  Balazs Kelemen  <kbalazs@webkit.org>

        [CoordinatedGraphics] compositing/iframes/connect-compositing-iframe.html crashes
        https://bugs.webkit.org/show_bug.cgi?id=101232

        Reviewed by Jocelyn Turcotte.

        The crash is happening in CoordinatedGraphicsLayer::flushCompositingState
        because we dereferencing a null m_coordinatedGraphicsLayerClient.
        This happens when the root layer became composited because it has content overlapping
        with an inner iframe that is composited. In this case the RenderLayerCompositor attaches
        the layer with RootLayerAttachedViaEnclosingFrame attachment flag and do not call
        ChromeClient::attachRootGraphcisLayer so we don't have a chance to set m_coordinatedGraphicsLayerClient.
        The solution is to set the client early in the factory method.

        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createGraphicsLayer):

2012-11-06  Viatcheslav Ostapenko  <v.ostapenko@samsung.com>

        [EFL] [WK2] Random crash in Minibrowser
        https://bugs.webkit.org/show_bug.cgi?id=101241

        Reviewed by Gyuyoung Kim.

        Do not clear GL context and GL surface in exitAcceleratedCompositing.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        (EwkViewImpl::exitAcceleratedCompositingMode):

2012-11-05  Sam Weinig  <sam@webkit.org>

        Need a way to send and receive messages between the WKWebProcessPlugIn object and the client
        https://bugs.webkit.org/show_bug.cgi?id=101282

        Reviewed by Anders Carlsson.

        API wise, this adds:
            - A connection property on the WKWebProcessPlugInController
            - A method to send messages across a WKConnection (sendMessageWithName:body).

        It also implements message sending and receiving for WKConnection. Message bodies are currently
        restricted to being object graphs with values that are property list types, but in the future, should
        support all types conforming to the NSSecureCoding protocol.

        * Shared/WebConnection.cpp:
        (WebKit::WebConnection::postMessage):
        (WebKit::WebConnection::handleMessage):
        * Shared/WebConnection.h:
        (WebConnection):
        * Shared/WebConnection.messages.in:
        Switch HandleMessage to be a variadic message to avoid an extra copy and support attachments correctly.

        * Shared/mac/ArgumentCodersMac.h:
        * Shared/mac/ArgumentCodersMac.mm:
        (CoreIPC::typeFromObject):
        (CoreIPC::encode):
        (CoreIPC::decode):
        Add support for encoding/decoding NSArray, NSDate and NSData.

        * UIProcess/API/mac/WKConnection.h:
        * UIProcess/API/mac/WKConnection.mm:
        (-[WKConnection sendMessageWithName:body:]):
        (didReceiveMessage):
        Implement message sending and receiving.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
        (-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundleRef:]):
        (-[WKWebProcessPlugInController connection]):
        Add a wrapper for the WKConnectionRef vended via WKBundleGetApplicationConnection() and expose it as
        API on the WKWebProcessPlugInController.

2012-11-05  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Fix wrong coding style in the boilerplates
        https://bugs.webkit.org/show_bug.cgi?id=101283

        Reviewed by Gyuyoung Kim.

        Fix boilerplate which have wrong coding style.

        * UIProcess/efl/InputMethodContextEfl.cpp:
        * UIProcess/efl/InputMethodContextEfl.h:
        * UIProcess/efl/PageClientDefaultImpl.cpp:
        * UIProcess/efl/PageClientDefaultImpl.h:
        * UIProcess/efl/PageClientLegacyImpl.cpp:
        * UIProcess/efl/PageClientLegacyImpl.h:

2012-11-05  KyungTae Kim  <ktf.kim@samsung.com>

        [EFL][WK2] Fix build warning in PageClientLegacyImpl.cpp
        https://bugs.webkit.org/show_bug.cgi?id=101266

        Reviewed by Laszlo Gombos.

        The 'size' is not used when !USE(TILED_BACKING_STORE)
        Use UNUSED_PARAM macro for removing -Wunused-parameter warning

        * UIProcess/efl/PageClientLegacyImpl.cpp:
        (WebKit::PageClientLegacyImpl::updateViewportSize):

2012-11-05  Anders Carlsson  <andersca@apple.com>

        Begin stubbing out the new remote layer tree drawing area
        https://bugs.webkit.org/show_bug.cgi?id=101256

        Reviewed by Andreas Kling.

        * Shared/DrawingAreaInfo.h:
        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
        * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebPage/DrawingArea.cpp:
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
        * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

2012-11-05  Alexey Proskuryakov  <ap@apple.com>

        Get rid of setCookieStoragePrivateBrowsingEnabled.
        https://bugs.webkit.org/show_bug.cgi?id=101247

        Reviewed by Brady Eidson.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession): Added a FIXME.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: (InitWebCoreSystemInterface):
        We no longer have this function.

2012-11-05  Simon Fraser  <simon.fraser@apple.com>

        Fix layer borders to cleaning appear and disappear on switching
        https://bugs.webkit.org/show_bug.cgi?id=101136

        Reviewed by Sam Weinig.
        
        Remove the GraphicsLayerClient methods showDebugBorders() and
        showRepaintCounter().
        
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
        * WebProcess/WebPage/ca/LayerTreeHostCA.h:
        (LayerTreeHostCA):
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
        (LayerTreeHostGtk):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
        (TiledCoreAnimationDrawingArea):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

2012-11-05  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] Allow using ACCELERATED_COMPOSITING without COORDINATED_GRAPHICS
        https://bugs.webkit.org/show_bug.cgi?id=100674

        Reviewed by Kenneth Rohde Christiansen.

        Make a distinction between calling ewk_view_base_add and ewk_view_smart_add.
        Calling ewk_view_base_add creates a desktop style view, that does not support
        fixed layout size, while calling ewk_view_smart_add does support fixed layout size.
        As a result, WebKitTestRunner and the inspector window do not support
        fixed layout size, while MiniBrowser does. This change allows many DumpAsText
        layout tests to pass without modification, when AC is enabled.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::transformFromScene):
        (EwkViewImpl::informLoadCommitted):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        (EwkViewImpl::informContentsSizeChange):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        (EwkViewImpl::pageClient):
        (EwkViewImpl::setScaleFactor):
        (EwkViewImpl::scaleFactor):
        (EwkViewImpl::setScrollPosition):
        (EwkViewImpl::scrollPosition):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):
        (createEwkView):
        (ewk_view_base_add):
        * UIProcess/efl/PageClientBase.cpp: Copied from Source/WebKit2/UIProcess/efl/PageClientImpl.cpp.
        (WebKit::PageClientBase::PageClientBase):
        (WebKit::PageClientBase::~PageClientBase):
        (WebKit::PageClientBase::viewImpl):
        (WebKit::PageClientBase::createDrawingAreaProxy):
        (WebKit::PageClientBase::setViewNeedsDisplay):
        (WebKit::PageClientBase::displayView):
        (WebKit::PageClientBase::scrollView):
        (WebKit::PageClientBase::viewSize):
        (WebKit::PageClientBase::isViewWindowActive):
        (WebKit::PageClientBase::isViewFocused):
        (WebKit::PageClientBase::isViewVisible):
        (WebKit::PageClientBase::isViewInWindow):
        (WebKit::PageClientBase::processDidCrash):
        (WebKit::PageClientBase::didRelaunchProcess):
        (WebKit::PageClientBase::pageClosed):
        (WebKit::PageClientBase::toolTipChanged):
        (WebKit::PageClientBase::setCursor):
        (WebKit::PageClientBase::setCursorHiddenUntilMouseMoves):
        (WebKit::PageClientBase::registerEditCommand):
        (WebKit::PageClientBase::clearAllEditCommands):
        (WebKit::PageClientBase::canUndoRedo):
        (WebKit::PageClientBase::executeUndoRedo):
        (WebKit::PageClientBase::convertToDeviceSpace):
        (WebKit::PageClientBase::convertToUserSpace):
        (WebKit::PageClientBase::screenToWindow):
        (WebKit::PageClientBase::windowToScreen):
        (WebKit::PageClientBase::doneWithKeyEvent):
        (WebKit::PageClientBase::doneWithTouchEvent):
        (WebKit::PageClientBase::createPopupMenuProxy):
        (WebKit::PageClientBase::createContextMenuProxy):
        (WebKit::PageClientBase::createColorChooserProxy):
        (WebKit::PageClientBase::setFindIndicator):
        (WebKit::PageClientBase::enterAcceleratedCompositingMode):
        (WebKit::PageClientBase::exitAcceleratedCompositingMode):
        (WebKit::PageClientBase::updateAcceleratedCompositingMode):
        (WebKit::PageClientBase::didChangeScrollbarsForMainFrame):
        (WebKit::PageClientBase::didCommitLoadForMainFrame):
        (WebKit::PageClientBase::didFinishLoadingDataForCustomRepresentation):
        (WebKit::PageClientBase::customRepresentationZoomFactor):
        (WebKit::PageClientBase::setCustomRepresentationZoomFactor):
        (WebKit::PageClientBase::flashBackingStoreUpdates):
        (WebKit::PageClientBase::findStringInCustomRepresentation):
        (WebKit::PageClientBase::countStringMatchesInCustomRepresentation):
        (WebKit::PageClientBase::updateTextInputState):
        (WebKit::PageClientBase::handleDownloadRequest):
        * UIProcess/efl/PageClientBase.h: Copied from Source/WebKit2/UIProcess/efl/PageClientImpl.h.
        (PageClientBase):
        * UIProcess/efl/PageClientDefaultImpl.cpp: Added.
        (WebKit):
        (WebKit::PageClientDefaultImpl::PageClientDefaultImpl):
        (WebKit::PageClientDefaultImpl::didCommitLoad):
        (WebKit::PageClientDefaultImpl::updateViewportSize):
        (WebKit::PageClientDefaultImpl::didChangeViewportProperties):
        (WebKit::PageClientDefaultImpl::didChangeContentsSize):
        (WebKit::PageClientDefaultImpl::pageDidRequestScroll):
        (WebKit::PageClientDefaultImpl::didRenderFrame):
        (WebKit::PageClientDefaultImpl::pageTransitionViewportReady):
        * UIProcess/efl/PageClientDefaultImpl.h: Added.
        (WebKit):
        (PageClientDefaultImpl):
        (WebKit::PageClientDefaultImpl::create):
        (WebKit::PageClientDefaultImpl::~PageClientDefaultImpl):
        * UIProcess/efl/PageClientImpl.cpp: Removed.
        * UIProcess/efl/PageClientImpl.h: Removed.
        * UIProcess/efl/PageClientLegacyImpl.cpp: Added.
        (WebKit):
        (WebKit::PageClientLegacyImpl::PageClientLegacyImpl):
        (WebKit::PageClientLegacyImpl::didCommitLoad):
        (WebKit::PageClientLegacyImpl::updateViewportSize):
        (WebKit::PageClientLegacyImpl::didChangeViewportProperties):
        (WebKit::PageClientLegacyImpl::didChangeContentsSize):
        (WebKit::PageClientLegacyImpl::pageDidRequestScroll):
        (WebKit::PageClientLegacyImpl::didRenderFrame):
        (WebKit::PageClientLegacyImpl::pageTransitionViewportReady):
        * UIProcess/efl/PageClientLegacyImpl.h: Added.
        (WebKit):
        (PageClientLegacyImpl):
        (WebKit::PageClientLegacyImpl::create):
        (WebKit::PageClientLegacyImpl::~PageClientLegacyImpl):
        * UIProcess/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::setViewportPosition):
        (WebKit::PageViewportControllerClientEfl::setContentsScale):
        * UIProcess/efl/PageViewportControllerClientEfl.h:
        * UIProcess/efl/WebPageProxyEfl.cpp:
        (WebKit::WebPageProxy::viewWidget):

2012-11-05  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make Ewk_Url_Request, Ewk_Url_Response, Ewk_Navigation_Data  Ewk_Objects
        https://bugs.webkit.org/show_bug.cgi?id=101205

        Reviewed by Gyuyoung Kim.

        Ewk_Url_Request, Ewk_Url_Response, Ewk_Navigation_Data are using common Ewk_Object interface now.

        * UIProcess/API/efl/EwkViewImpl.h:
        * UIProcess/API/efl/ewk_download_job.cpp:
        (Ewk_Download_Job::request):
        (Ewk_Download_Job::response):
        (Ewk_Download_Job::setResponse):
        * UIProcess/API/efl/ewk_download_job_private.h:
        (Ewk_Download_Job):
        * UIProcess/API/efl/ewk_navigation_data.cpp:
        (EwkNavigationData::EwkNavigationData):
        (EwkNavigationData::originalRequest):
        (EwkNavigationData::title):
        (EwkNavigationData::url):
        (ewk_navigation_data_title_get):
        (ewk_navigation_data_original_request_get):
        (ewk_navigation_data_url_get):
        * UIProcess/API/efl/ewk_navigation_data.h:
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        (EwkNavigationData):
        (EwkNavigationData::create):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (Ewk_Navigation_Policy_Decision::Ewk_Navigation_Policy_Decision):
        (Ewk_Navigation_Policy_Decision::request):
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (Ewk_Navigation_Policy_Decision::create):
        (Ewk_Navigation_Policy_Decision):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (EwkUrlRequest::EwkUrlRequest):
        (EwkUrlRequest::url):
        (EwkUrlRequest::firstParty):
        (EwkUrlRequest::httpMethod):
        (ewk_url_request_url_get):
        (ewk_request_cookies_first_party_get):
        (ewk_url_request_http_method_get):
        * UIProcess/API/efl/ewk_url_request.h:
        * UIProcess/API/efl/ewk_url_request_private.h:
        (EwkUrlRequest):
        (EwkUrlRequest::create):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (EwkUrlResponse::EwkUrlResponse):
        (EwkUrlResponse::httpStatusCode):
        (EwkUrlResponse::url):
        (EwkUrlResponse::mimeType):
        (EwkUrlResponse::contentLength):
        (ewk_url_response_url_get):
        (ewk_url_response_status_code_get):
        (ewk_url_response_mime_type_get):
        (ewk_url_response_content_length_get):
        * UIProcess/API/efl/ewk_url_response.h:
        * UIProcess/API/efl/ewk_url_response_private.h:
        (EwkUrlResponse):
        (EwkUrlResponse::create):
        * UIProcess/efl/ContextHistoryClientEfl.cpp:
        (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::didReceiveResponse):
        * UIProcess/efl/ResourceLoadClientEfl.cpp:
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
        (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):

2012-11-05  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] EWK2UnitTestBase.ewk_auth_request_cancel API test is failing after r133389
        https://bugs.webkit.org/show_bug.cgi?id=101203

        Reviewed by Kenneth Rohde Christiansen.

        Attempt for continue without credential when the client cancels
        authentication (or does not handle the authentication request)
        instead of cancelling the load. We now get a 402 error when
        when cancelling the authentication, which is the behavior we
        want (and the behavior we used to have before r133389).

        * UIProcess/API/efl/ewk_auth_request.cpp:
        (Ewk_Auth_Request::~Ewk_Auth_Request):
        (Ewk_Auth_Request::continueWithoutCredential):
        (ewk_auth_request_cancel):
        * UIProcess/API/efl/ewk_auth_request_private.h:
        (Ewk_Auth_Request):
        * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
        (TEST_F):

2012-11-05  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] The icon database path should be set by the client
        https://bugs.webkit.org/show_bug.cgi?id=101182

        Reviewed by Kenneth Rohde Christiansen.

        No longer set the favicon database path in database instance getter.
        Instead, a new ewk_context_favicon_database_directory_set() API
        function was added to let the client set the icon database path.
        This is needed because the icon database path can only be set once
        and setting it unconditionally in the getter prevents the client
        from setting it.

        This will also avoid crashes in WebKitTestRunner since WKTR was
        setting the path once and ewk_context was attempting to override it.

        Note that the favicon database functionality is disabled until the
        client sets its path.

        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::ensureFaviconDatabase):
        (Ewk_Context::setFaviconDatabaseDirectoryPath):
        (Ewk_Context::faviconDatabase):
        (ewk_context_favicon_database_directory_set):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_favicon_database.cpp:
        (Ewk_Favicon_Database::Ewk_Favicon_Database):
        (Ewk_Favicon_Database::~Ewk_Favicon_Database):
        (Ewk_Favicon_Database::iconURLForPageURL):
        (Ewk_Favicon_Database::iconForPageURL):
        (Ewk_Favicon_Database::getIconSurfaceSynchronously):
        * UIProcess/API/efl/ewk_favicon_database_private.h:
        (WebKit):
        (Ewk_Favicon_Database::create):
        (Ewk_Favicon_Database):
        * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
        (TEST_F):

2012-11-04  Halton Huo  <halton.huo@intel.com>

        [EFL] Use _LIBRARIES instead of _LIBRARY
        https://bugs.webkit.org/show_bug.cgi?id=101042

        Reviewed by Gyuyoung Kim.

        In CMake Find files, _LIBRARY is intended for internal use, should
        use _LIBRARIES instead.

        * PlatformEfl.cmake: s/_LIBRARY}/_LIBRARIES}

2012-11-04  Jon Lee  <jonlee@apple.com>

        Expose security origin to BundleFrame
        https://bugs.webkit.org/show_bug.cgi?id=101139
        <rdar://problem/12629900>

        Reviewed by Darin Adler.

        Create a WebSecurityOrigin instance, sharing the security origin instance
        that comes directly from the frame's document. We can do this because the
        WK2 API only retrieves information about the origin, and because those
        results are returned as copies. The security origin holds no references
        that could lead to a retain cycle, avoiding the possibility that the
        injected bundle accidentally keeps something alive.

        * Shared/API/c/WKSharedAPICast.h:
        (WebKit::toCopiedAPI): Create copied API for WebCore::SecurityOrigin
        instances.
        * Shared/WebSecurityOrigin.h:
        (WebKit::WebSecurityOrigin::create): Add a new create() function that
        takes a PassRefPtr to a WebCore SecurityOrigin instance.
        (WebKit::WebSecurityOrigin::createFromString): Refactor to use new create()
        function.
        (WebKit::WebSecurityOrigin::createFromDatabaseIdentifier): Refactor to
        use new create() function.
        (WebKit::WebSecurityOrigin::create): Refactor to use new create()
        function.
        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
        (WKBundleFrameCopySecurityOrigin): Add function to retrieve the security
        origin as a WK2 API object.
        * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:

2012-11-02  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [EFL] Unify transforms in WK2
        https://bugs.webkit.org/show_bug.cgi?id=101051

        Reviewed by Simon Hausmann.

        Move our transforms into EwkViewImpl and use them
        everywhere needed.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::smartData):
        (EwkViewImpl::transformFromScene):
        (EwkViewImpl::transformToScene):
        (EwkViewImpl::transformToScreen):
        (EwkViewImpl::displayTimerFired):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebCore):
        (EwkViewImpl):
        (EwkViewImpl::pageViewportControllerClient):
        (EwkViewImpl::pageViewportController):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (ewk_view_feed_touch_event):

2012-11-03  Alexey Proskuryakov  <ap@apple.com>

        Get rid of USE(CFURLSTORAGESESSIONS)
        https://bugs.webkit.org/show_bug.cgi?id=101131

        Reviewed by Sam Weinig.

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):
        * UIProcess/win/WebContextWin.cpp:
        (WebKit::WebContext::platformInitializeWebProcess):
        * WebProcess/Cookies/mac/WebCookieManagerMac.mm:
        (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::switchNetworkLoaderToNewTestingSession):
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::platformHasLocalDataForURL):
        (WebKit::cachedResponseForURL):
        * WebProcess/WebPage/win/WebPageWin.cpp:
        (WebKit::cachedResponseForURL):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::initializeWebProcess):
        * WebProcess/win/WebProcessWin.cpp:
        (WebKit::WebProcess::platformSetCacheModel):
        (WebKit::WebProcess::platformClearResourceCaches):

2012-11-03  Pavel Feldman  <pfeldman@chromium.org>

        REGRESSION (r132014-r132047): Webkit Inspector Window docking broken
        https://bugs.webkit.org/show_bug.cgi?id=101125

        Reviewed by Vsevolod Vlasov.

        Migrated from ?docked= to ?dockSide= format.

        * UIProcess/WebInspectorProxy.cpp:
        (WebKit::WebInspectorProxy::createInspectorPage):

2012-10-25  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Move soup authentication from GtkAuthenticationDialog to WebCore
        https://bugs.webkit.org/show_bug.cgi?id=99914

        Reviewed by Carlos Garcia Campos.

        Instead of passing the libsoup objects to the GtkAuthenticationDialog, pass the
        AuthenticationChallenge itself.

        * WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp:
        (WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):

2012-11-02  Anders Carlsson  <andersca@apple.com>

        Very speculative ArgumentDecoder crash fix
        https://bugs.webkit.org/show_bug.cgi?id=101130
        <rdar://problem/11917046>

        Reviewed by Sam Weinig.

        Switch from fastMalloc/fastFree to system malloc/free in the hopes that it'll give more information about
        a crash inside TCMalloc when freeing the argument data. (It seems unlikely that this is a bug in TCMalloc, but
        switching to the system malloc could potentially give better error reporting).

        * Platform/CoreIPC/ArgumentDecoder.cpp:
        (CoreIPC::ArgumentDecoder::~ArgumentDecoder):
        (CoreIPC::ArgumentDecoder::initialize):

2012-11-02  Anders Carlsson  <andersca@apple.com>

        Don't instantiate the Java plug-in if it's inactive
        https://bugs.webkit.org/show_bug.cgi?id=101102
        <rdar://problem/12595679>

        Reviewed by Andreas Kling.

        * Shared/Plugins/PluginModuleInfo.h:
        Add a PluginModuleLoadPolicy enum.

        * UIProcess/Plugins/PluginInfoStore.cpp:
        (WebKit::PluginInfoStore::policyForPlugin):
        * UIProcess/Plugins/PluginInfoStore.h:
        (PluginInfoStore):
        Rename shouldBlockPlugin to policyForPlugin and make it return an enum so we can handle inactive plug-ins.
        
        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        (WebKit::shouldBlockPlugin):
        Add helper function.

        (WebKit::PluginInfoStore::policyForPlugin):
        If the Java plug-in is inactive, return PluginModuleInactive.

        (WebKit::PluginInfoStore::reactivateInactivePlugin):
        If the given plug-in is the Java plug-in, call WKJLReportWebComponentsUsed() to reactivate it.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::unavailablePluginButtonClicked):
        If the plug-in is inactive, try to reactivate it and reload the page if reactivation succeeded.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::getPluginPath):
        * UIProcess/WebProcessProxy.h:
        This now returns a plug-in load policy.

        * UIProcess/WebProcessProxy.messages.in:
        GetPluginPack now returns a load policy enum.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):
        Change this to a switch statement and always return true for RenderEmbeddedObject::PluginInactive.

        (WebKit::WebChromeClient::unavailablePluginButtonClicked):
        Add RenderEmbeddedObject::PluginInactive to the assertion.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::createPlugin):
        Update now that GetPluginPath returns a pluginLoadPolicy enum.

        (WebKit::canPluginHandleResponse):
        Ditto.

2012-11-02  Alexey Proskuryakov  <ap@apple.com>

        [Mac] ResourceHandle changes for network process
        https://bugs.webkit.org/show_bug.cgi?id=101111

        Reviewed by Jessie Berlin.

        * NetworkProcess/mac/NetworkProcessMainMac.mm: (WebKit::NetworkProcessMain):
        We want to use WebKitSystemInterface in network process.
        * NetworkProcess/mac/RemoteNetworkingContext.h:
        (WebKit::RemoteNetworkingContext::create): Added a constructor and a create function.
        Switched from scheduledRunLoopPairs() to the new scheduledOperationQueue().

        * NetworkProcess/mac/RemoteNetworkingContext.mm:
        (WebKit::RemoteNetworkingContext::RemoteNetworkingContext):
        (WebKit::RemoteNetworkingContext::scheduledOperationQueue):
        Ditto.

2012-11-02  Simon Fraser  <simon.fraser@apple.com>

        Enable SUBPIXEL_LAYOUT on Mac
        https://bugs.webkit.org/show_bug.cgi?id=101076

        Reviewed by Dave Hyatt.

        Define ENABLE_SUBPIXEL_LAYOUT and include it in FEATURE_DEFINES.

        * Configurations/FeatureDefines.xcconfig:

2012-11-02  Anders Carlsson  <andersca@apple.com>

        Add a PluginInactive plug-in unavailability reason
        https://bugs.webkit.org/show_bug.cgi?id=101089

        Reviewed by Sam Weinig.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::unavailablePluginButtonClicked):

2012-11-02  Adam Barth  <abarth@webkit.org>

        ENABLE(UNDO_MANAGER) is disabled everywhere and is not under active development
        https://bugs.webkit.org/show_bug.cgi?id=100711

        Reviewed by Eric Seidel.

        * Configurations/FeatureDefines.xcconfig:

2012-11-02  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Crash when calling WebOpenPanelResultListenerProxy::cancel() after PageClient is destroyed
        https://bugs.webkit.org/show_bug.cgi?id=100977

        Reviewed by Alexey Proskuryakov.

        Call WebPageProxy::close() in EwkViewImpl's destructor to avoid crashes
        if other objects keep a reference to the WebPageProxy and try to use
        it after the view (and therefore the PageClient) is destroyed.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::~EwkViewImpl):

2012-11-02  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Remove dependency on SoupPasswordManager
        https://bugs.webkit.org/show_bug.cgi?id=100775

        Reviewed by Carlos Garcia Campos.

        Add a libsecret dependency to the build. This is necessary so that we can remove
        a dependency on SoupPasswordManager.

        * GNUmakefile.am: Add libsecret CFLAGS to the WebKit2 build.

2012-11-02  Byungwoo Lee  <bw80.lee@samsung.com>

        [EFL][WK2] Change the scope of locking in WorkQueueEfl.cpp.
        https://bugs.webkit.org/show_bug.cgi?id=98978

        Reviewed by Kenneth Rohde Christiansen.

        Release the m_workItemQueueLock and m_timerWorkItemsLock mutexes
        immediately after the protected resource is no longer modified to
        prevent a possible source of a deadlock.

        And additional mutex locker for the m_writeToPipeDescriptor is added
        to ensure thread-safety of the sendMessageToThread() function.

        * Platform/WorkQueue.h:
        (WorkQueue):
        * Platform/efl/WorkQueueEfl.cpp:
        (WorkQueue::insertTimerWorkItem):
        (WorkQueue::performTimerWork):
        (WorkQueue::sendMessageToThread):
        (WorkQueue::dispatch):
        (WorkQueue::dispatchAfterDelay):

2012-11-02  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Add API unit tests for Ewk_Object
        https://bugs.webkit.org/show_bug.cgi?id=101037

        Reviewed by Kenneth Rohde Christiansen.

        Added API unit tests for Ewk_Object.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/tests/test_ewk2_object.cpp: Added.
        (TestEwkObject1):
        (TestEwkObject1::create):
        (TestEwkObject1::~TestEwkObject1):
        (TestEwkObject2):
        (TestEwkObject2::create):
        (TEST_F):

2012-11-02  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        REGRESSION (r133075): plugins/plugin-javascript-access.html is failing
        https://bugs.webkit.org/show_bug.cgi?id=101045

        Reviewed by Kenneth Rohde Christiansen.

        Encode the plugin filename in ArgumentCoder<PluginInfo> so that
        plugin.filename returns the filename instead of name of the plugin.

        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):

2012-11-01  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Wrong translation of mouse events
        https://bugs.webkit.org/show_bug.cgi?id=100983

        Reviewed by Kenneth Rohde Christiansen.

        The transform that we build for mouse events is scaled by the scale factor.
        The url bar should not be scaled, so it should be scaled in the oposite
        direction to compensate for that.

        * UIProcess/API/efl/ewk_view.cpp:
        (toWebContentTransform):

2012-11-02  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Add missing variable initialization in PageViewportController

        Reviewed by Jocelyn Turcotte.

        Updating the viewport state depends on uninitialized booleans
        which it should not.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):

2012-11-02  Byungwoo Lee  <bw80.lee@samsung.com>

        [EFL][WK2] Use MutexLocker instead of lock()/unlock().
        https://bugs.webkit.org/show_bug.cgi?id=101015

        Reviewed by Kenneth Rohde Christiansen.

        Instead of lock()/unlock(), use MutexLocker in WorkQueue::performWork()
        and WorkQueue::performTimerWork().

        The locking scope will be more clear and simple with using MutexLocker.

        * Platform/efl/WorkQueueEfl.cpp:
        (WorkQueue::performWork):
        (WorkQueue::insertTimerWorkItem):
        (WorkQueue::performTimerWork):
        (WorkQueue::dispatchAfterDelay):

2012-11-02  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Common ref and unref functions for EFL WK2 objects
        https://bugs.webkit.org/show_bug.cgi?id=100751

        Reviewed by Kenneth Rohde Christiansen.

        Added common Ewk_Object class with ref/unref API also added several aux functions for safe
        Ewk_Object conversion. Used new approach on ewk_back_forward_list_item as example.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (Ewk_Back_Forward_List::getFromCacheOrCreate):
        (Ewk_Back_Forward_List::createEinaList):
        * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
        (EwkBackForwardListItem::EwkBackForwardListItem):
        (EwkBackForwardListItem::url):
        (EwkBackForwardListItem::title):
        (EwkBackForwardListItem::originalURL):
        (ewk_back_forward_list_item_url_get):
        (ewk_back_forward_list_item_title_get):
        (ewk_back_forward_list_item_original_url_get):
        * UIProcess/API/efl/ewk_back_forward_list_item.h:
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        (EwkBackForwardListItem):
        (EwkBackForwardListItem::create):
        * UIProcess/API/efl/ewk_back_forward_list_private.h:
        * UIProcess/API/efl/ewk_object.cpp: Copied from Source/WebKit2/UIProcess/API/efl/ewk_back_forward_list_item_private.h.
        (ewk_object_ref):
        (ewk_object_unref):
        * UIProcess/API/efl/ewk_object.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_back_forward_list_item_private.h.
        * UIProcess/API/efl/ewk_object_private.h: Added.
        (Ewk_Object):
        (Ewk_Object::~Ewk_Object):
        (ewk_object_is_of_type):
        (ewk_object_cast_check):
        (ewk_object_cast):
        * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
        (freeEinaList):

2012-11-02  Nandor Huszka  <hnandor@inf.u-szeged.hu>

        [Qt][Mac][Win] Unreviewed build fix after r133182
        https://bugs.webkit.org/show_bug.cgi?id=100995

        Remove two methods' OVERRIDE and virtual modifiers, because they cannot be found in any base class.
        Also relocate their prototypes, because they mix with the overridden ones.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-11-02  Jihye Kang  <jye.kang@samsung.com>

        [EFL][WK2] Add ewk_security_origin and ewk_storage_manager APIs
        https://bugs.webkit.org/show_bug.cgi?id=92827

        Reviewed by Gyuyoung Kim.

        Add ewk_security_origin APIs to get security origin.
        These APIs will be used to get host, protocol and port of security
        origin.
        Add ewk_storage_manager to manage web storage and
        ewk_storage_manager_origins_get to get origins list of web storage.
        Add Unit tests for ewk_storage_manager and ewk_security_origin APIs.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::storageManager):
        (ewk_context_storage_manager_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_security_origin.cpp: Added.
        (Ewk_Security_Origin::Ewk_Security_Origin):
        (Ewk_Security_Origin::host):
        (Ewk_Security_Origin::protocol):
        (Ewk_Security_Origin::port):
        (ewk_security_origin_ref):
        (ewk_security_origin_unref):
        (ewk_security_origin_host_get):
        (ewk_security_origin_protocol_get):
        (ewk_security_origin_port_get):
        * UIProcess/API/efl/ewk_security_origin.h: Added.
        * UIProcess/API/efl/ewk_security_origin_private.h: Added.
        (Ewk_Security_Origin):
        (Ewk_Security_Origin::create):
        * UIProcess/API/efl/ewk_storage_manager.cpp: Added.
        (Ewk_Storage_Manager::Ewk_Storage_Manager):
        (Ewk_Storage_Manager::getStorageOrigins):
        (Ewk_Storage_Manager::createOriginList):
        (_Ewk_Storage_Origins_Async_Get_Context):
        (_Ewk_Storage_Origins_Async_Get_Context::_Ewk_Storage_Origins_Async_Get_Context):
        (getStorageOriginsCallback):
        (ewk_storage_manager_origins_get):
        * UIProcess/API/efl/ewk_storage_manager.h: Added.
        * UIProcess/API/efl/ewk_storage_manager_private.h: Added.
        (Ewk_Storage_Manager):
        (Ewk_Storage_Manager::create):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp: Added.
        (getStorageOriginsCallback):
        (TEST_F):

2012-11-02  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Manage the lifecycle of shareable surfaces precisely.
        https://bugs.webkit.org/show_bug.cgi?id=100797

        Reviewed by Noam Rosenthal.

        Internal Review by Gwang Yoon Hwang and Jae Hyun Park.

        This patch makes UpdateAtlas manage the lifecycle of shareable surfaces
        containing the updates in the way how CoordinatedTile manages the lifecycle of
        tiles. Currently, UI Process creates the shareable surface when receiving an
        UpdateTileForLayer message, but there is no exact point to remove the shareable
        surface. Now, we introduce new two messages to handle the lifecycle:
        CreateUpdateAtlas and RemoveUpdateAtlas.

        This patch gives us two benefits.
        1. Reduce file and mmap operations. Web Process does not need to duplicate a
        file handle every tile update. UI Process does not need to create a
        ShareableSurface every UpdateTileForLayer message.
        2. Save memory. We can remove a ShareableSurface in UI Process when UpdateAtlas
        in Web Process is removed.

        * Shared/SurfaceUpdateInfo.cpp:
        (WebKit::SurfaceUpdateInfo::encode):
        (WebKit::SurfaceUpdateInfo::decode):
        * Shared/SurfaceUpdateInfo.h:
        (SurfaceUpdateInfo):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):
        (WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
        (WebKit::CoordinatedTile::updateBackBuffer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
        (CoordinatedTileClient):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::createUpdateAtlas):
        (WebKit):
        (WebKit::LayerTreeCoordinator::removeUpdateAtlas):
        (WebKit::LayerTreeCoordinator::beginContentUpdate):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/UpdateAtlas.cpp:
        (WebKit::UpdateAtlas::UpdateAtlas):
        (WebKit):
        (WebKit::UpdateAtlas::~UpdateAtlas):
        (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
        * WebProcess/WebPage/UpdateAtlas.h:
        (UpdateAtlasClient):
        (WebKit):
        (UpdateAtlas):

2012-11-02  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Remove redundant internal function
        https://bugs.webkit.org/show_bug.cgi?id=100969

        Reviewed by Gyuyoung Kim.

        Remove ewk_view_text_found() in ewk_view.cpp which is not used anymore.
        Now, "text,found" signal is emitted by DECLARE_EWK_VIEW_CALLBACK(TextFound, "text,found", unsigned) 
        in EwkViewCallback.h

        * UIProcess/API/efl/ewk_view.cpp:

2012-11-01  Anders Carlsson  <andersca@apple.com>

        Reformat the annotationStyle initializer to appease update-webkit-localizable-strings.

        Rubber-stamped by Dan Bernstein.

        * WebProcess/Plugins/PDF/PDFPlugin.mm:

2012-11-01  Alexandru Chiculita  <achicu@adobe.com>

        [CSS Shaders] Move MeshBoxType out of CustomFilterOperation
        https://bugs.webkit.org/show_bug.cgi?id=100782

        Reviewed by Dean Jackson.

        Renamed the CustomFilterOperation::MeshBoxType to CustomFilterMeshBoxType.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::decode):

2012-11-01  Beth Dakin  <bdakin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=100917
        There should be a way to dump the scrolling tree from the layout tests
        
        Reviewed by Simon Fraser.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-11-01  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Clean up headers of Coordinated Graphics.
        https://bugs.webkit.org/show_bug.cgi?id=100907

        Reviewed by Noam Rosenthal.

        This patch performs:
        1. Remove unused methods.
        2. Change public methods to private if needed.
        3. Put virtual, OVERRIDE and explicit keywords if needed.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::fixedToViewport):
        (WebCore::CoordinatedGraphicsLayer::setMaskTarget):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-11-01  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add Ewk_Auth_Request API
        https://bugs.webkit.org/show_bug.cgi?id=100858

        Reviewed by Kenneth Rohde Christiansen.

        Add Ewk_Auth_Request API for the client to handle
        HTTP authentication.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EwkViewCallbacks):
        * UIProcess/API/efl/ewk_auth_request.cpp: Added.
        (Ewk_Auth_Request::Ewk_Auth_Request):
        (Ewk_Auth_Request::~Ewk_Auth_Request):
        (Ewk_Auth_Request::suggestedUsername):
        (Ewk_Auth_Request::realm):
        (Ewk_Auth_Request::host):
        (Ewk_Auth_Request::cancel):
        (Ewk_Auth_Request::authenticate):
        (Ewk_Auth_Request::isRetrying):
        (ewk_auth_request_ref):
        (ewk_auth_request_unref):
        (ewk_auth_request_suggested_username_get):
        (ewk_auth_request_cancel):
        (ewk_auth_request_authenticate):
        (ewk_auth_request_retrying_get):
        (ewk_auth_request_realm_get):
        (ewk_auth_request_host_get):
        * UIProcess/API/efl/ewk_auth_request.h: Added.
        * UIProcess/API/efl/ewk_auth_request_private.h: Added.
        (WebKit):
        (Ewk_Auth_Request):
        (Ewk_Auth_Request::create):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp: Added corresponding API tests.
        (serverCallback):
        (onAuthenticationRequest):
        (TEST_F):
        (onResourceLoadResponse):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
        (WebKit):
        (WebKit::PageLoadClientEfl::PageLoadClientEfl):
        * UIProcess/efl/PageLoadClientEfl.h:
        (PageLoadClientEfl):

2012-11-01  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        Fix the Mac breakage
        https://bugs.webkit.org/show_bug.cgi?id=100383

        Reviewed by Kenneth Rohde Christiansen.

        acceleratedCompositingForFixedPositionEnabled needs to be enabled
        for fixed layout to work efficiently but it's wrong to force it
        to false if fixed layout isn't enabled.

        Separate hard requirements for fixed layout from rendering optimizations
        and guard the later with USE(COORDINATED_GRAPHICS).
        Also add an early return to make sure that ports always having a false
        useFixedLayout creation parameter won't get their settings adjusted.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::setUseFixedLayout):

2012-10-24  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        WebIconDatabase: Properly clean up on destruction
        https://bugs.webkit.org/show_bug.cgi?id=100237

        Reviewed by Brady Eidson.

        * UIProcess/WebIconDatabase.cpp:
        (WebKit::WebIconDatabase::invalidate):
        Make sure that IconDatabaseBase::iconDatabase won't return a dangling pointer.

2012-11-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [EFL] Fix event mapping for WebKit2 with coordinated graphics
        https://bugs.webkit.org/show_bug.cgi?id=100956

        Reviewed by Alexis Menard.

        Apply scale after translation.

        * UIProcess/API/efl/ewk_view.cpp:
        (toWebContentTransform):

2012-11-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [EFL] Correct our use of the coordinated graphics
        https://bugs.webkit.org/show_bug.cgi?id=100947

        Reviewed by Alexis Menard.

        Replace the display(...) call with a regular update() on the view.
        In the coordinated graphics case this updates our view using
        paintToCurrentGLContext with our viewmodel matrix and clips it to
        the viewport. This avoid the need to manually joining update regions.

        Unneeded update calls have also been removed and the resizing
        logic has been improved.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::update):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebCore):
        (EwkViewImpl):
        (EwkViewImpl::clearEvasGLSurface):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):
        * UIProcess/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::setViewNeedsDisplay):
        * UIProcess/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        * UIProcess/efl/PageViewportControllerClientEfl.h:
        (PageViewportControllerClientEfl):

2012-11-01  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Double clicks/taps aren't passed down to the page
        https://bugs.webkit.org/show_bug.cgi?id=100949

        Reviewed by Kenneth Rohde Christiansen.

        Since we are passing double click events as press events and that
        they are preceeded by a real press event, double clicks are passed
        down to the page as triple clicks.

        Ignore double click events and let WebCore::EventHandler handle it
        through press and release events.

        * Shared/qt/WebEventFactoryQt.cpp:
        (WebKit::webEventTypeForEvent):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::handleMouseEvent):
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::handleInputEvent):

2012-11-01  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [AC][EFL][WK2] Rename PageViewportControllerClientEfl::m_pageViewportController to m_controller
        https://bugs.webkit.org/show_bug.cgi?id=100933

        Reviewed by Kenneth Rohde Christiansen.

        PageViewportControllerClientEfl::m_pageViewportController has to be renamed to m_controller
        to keep consistency with other ports. Assertinons were also added.

        * UIProcess/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
        (WebKit::PageViewportControllerClientEfl::didResumeContent):
        (WebKit::PageViewportControllerClientEfl::setController):
        * UIProcess/efl/PageViewportControllerClientEfl.h:
        (PageViewportControllerClientEfl):

2012-11-01  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r133126.
        http://trac.webkit.org/changeset/133126
        https://bugs.webkit.org/show_bug.cgi?id=100925

        This made EFL API test break on EFL buildbots (Requested by
        gyuyoung on #webkit).

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_security_origin.cpp: Removed.
        * UIProcess/API/efl/ewk_security_origin.h: Removed.
        * UIProcess/API/efl/ewk_security_origin_private.h: Removed.
        * UIProcess/API/efl/ewk_storage_manager.cpp: Removed.
        * UIProcess/API/efl/ewk_storage_manager.h: Removed.
        * UIProcess/API/efl/ewk_storage_manager_private.h: Removed.
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp: Removed.

2012-11-01  Yuni Jeong  <yhnet.jung@samsung.com>

        [WK2] Add APIs to get/set encoding detector
        https://bugs.webkit.org/show_bug.cgi?id=100066

        Reviewed by Gyuyoung Kim.

        Add setting APIs for encoding dector and a unit test.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetUsesEncodingDetector):
        (WKPreferencesGetUsesEncodingDetector):
        * UIProcess/API/C/WKPreferences.h:
        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_setting_uses_encoding_detector_set):
        (ewk_setting_uses_encoding_detector_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-10-31  Jihye Kang  <jye.kang@samsung.com>

        [EFL][WK2] Add ewk_security_origin and ewk_storage_manager APIs
        https://bugs.webkit.org/show_bug.cgi?id=92827

        Reviewed by Gyuyoung Kim.

        Add ewk_security_origin APIs to get security origin.
        These APIs will be used to get host, protocol and port of security
        origin.
        Add ewk_storage_manager to manage web storage and
        ewk_storage_manager_origins_get to get origins list of web storage.
        Add Unit tests for ewk_storage_manager and ewk_security_origin APIs.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::storageManager):
        (ewk_context_storage_manager_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_security_origin.cpp: Added.
        (Ewk_Security_Origin::Ewk_Security_Origin):
        (Ewk_Security_Origin::host):
        (Ewk_Security_Origin::protocol):
        (Ewk_Security_Origin::port):
        (ewk_security_origin_ref):
        (ewk_security_origin_unref):
        (ewk_security_origin_host_get):
        (ewk_security_origin_protocol_get):
        (ewk_security_origin_port_get):
        * UIProcess/API/efl/ewk_security_origin.h: Added.
        * UIProcess/API/efl/ewk_security_origin_private.h: Added.
        (Ewk_Security_Origin):
        (Ewk_Security_Origin::create):
        * UIProcess/API/efl/ewk_storage_manager.cpp: Added.
        (Ewk_Storage_Manager::Ewk_Storage_Manager):
        (Ewk_Storage_Manager::getStorageOrigins):
        (Ewk_Storage_Manager::createOriginList):
        (_Ewk_Storage_Origins_Async_Get_Context):
        (_Ewk_Storage_Origins_Async_Get_Context::_Ewk_Storage_Origins_Async_Get_Context):
        (getStorageOriginsCallback):
        (ewk_storage_manager_origins_get):
        * UIProcess/API/efl/ewk_storage_manager.h: Added.
        * UIProcess/API/efl/ewk_storage_manager_private.h: Added.
        (Ewk_Storage_Manager):
        (Ewk_Storage_Manager::create):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp: Added.
        (getStorageOriginsCallback):
        (TEST_F):

2012-10-31  Alexandru Chiculita  <achicu@adobe.com>

        CustomFilterOperation parameters list is not decoded correctly in CoordinatedGraphicsArgumentCoders
        https://bugs.webkit.org/show_bug.cgi?id=100889

        Reviewed by Noam Rosenthal.

        The custom filters parameters list was initialized with a specific size and then
        the decoder was expected to fill it with all the decoded parameters. The decoder was
        using the append command which added the paramters at the end, so it doubled the size
        of the vector leaving empty spaces at the beginning of the list. Fixed it by writting
        directly into the allocated space.

        No new tests, the code path is not activated yet.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::decode):

2012-10-31  Sam Weinig  <sam@webkit.org>

        Convert the rest of the encoders to take the encoder as a reference
        https://bugs.webkit.org/show_bug.cgi?id=100821

        Reviewed by Anders Carlsson.

        * Platform/CoreIPC/ArgumentCoders.h:
        (CoreIPC::SimpleArgumentCoder::encode):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::encodeTimingFunction):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
        * Shared/PrintInfo.cpp:
        (WebKit::PrintInfo::encode):
        * Shared/SessionState.cpp:
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageDecoder::baseDecode):
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Shared/WebCoreArgumentCoders.h:
        * Shared/WebGeolocationPosition.cpp:
        (WebKit::WebGeolocationPosition::Data::encode):
        * Shared/WebLayerTreeInfo.cpp:
        (WebKit::WebLayerInfo::encode):
        * Shared/gtk/ArgumentCodersGtk.cpp:
        (CoreIPC::encodeImage):
        (CoreIPC::encodeDataObject):
        (CoreIPC::::encode):
        (CoreIPC::encodeGKeyFile):
        (CoreIPC::encode):
        * Shared/gtk/ArgumentCodersGtk.h:
        * Shared/mac/WebCoreArgumentCodersMac.mm:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::encode):
        * Shared/qt/ArgumentCodersQt.cpp:
        (CoreIPC::::encode):
        * Shared/qt/ArgumentCodersQt.h:
        (CoreIPC):
        * Shared/qt/WebCoreArgumentCodersQt.cpp:
        (CoreIPC::::encodePlatformData):
        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::encodePlatformData):
        * Shared/win/WebCoreArgumentCodersWin.cpp:
        (CoreIPC::::encodePlatformData):
        * WebProcess/WebPage/DecoderAdapter.cpp:
        (WebKit::DecoderAdapter::decodeBytes):
        * WebProcess/WebPage/EncoderAdapter.cpp:
        (WebKit::EncoderAdapter::encodeBytes):

2012-10-31  Jesse van den Kieboom  <jessevdk@gnome.org>

        Enable webkit2 introspection
        https://bugs.webkit.org/show_bug.cgi?id=94313

        Reviewed by Martin Robinson.

        This patch enables generation of introspection information for webkit2
        in the same was as it is done for webkit. The resulting gir and
        typelib file are named WebKit2-3.0.{gir,typelib}.

        * GNUmakefile.am:
        * UIProcess/API/gtk/WebKitBackForwardList.cpp:

2012-10-31  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add Ewk_File_Chooser_Request API
        https://bugs.webkit.org/show_bug.cgi?id=100818

        Reviewed by Kenneth Rohde Christiansen.

        Add Ewk_File_Chooser_Request API so that the client
        can handle file chooser requests (e.g. Show a file
        picker dialog) when the user clicks on an input
        element of type "file".

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewCallbacks.h:
        (EwkViewCallbacks):
        * UIProcess/API/efl/ewk_file_chooser_request.cpp: Added.
        (Ewk_File_Chooser_Request::Ewk_File_Chooser_Request):
        (Ewk_File_Chooser_Request::~Ewk_File_Chooser_Request):
        (Ewk_File_Chooser_Request::allowMultipleFiles):
        (Ewk_File_Chooser_Request::acceptedMIMETypes):
        (Ewk_File_Chooser_Request::cancel):
        (Ewk_File_Chooser_Request::chooseFiles):
        (ewk_file_chooser_request_ref):
        (ewk_file_chooser_request_unref):
        (ewk_file_chooser_request_allow_multiple_files_get):
        (ewk_file_chooser_request_accepted_mimetypes_get):
        (ewk_file_chooser_request_cancel):
        (ewk_file_chooser_request_files_choose):
        (ewk_file_chooser_request_file_choose):
        * UIProcess/API/efl/ewk_file_chooser_request.h: Added.
        * UIProcess/API/efl/ewk_file_chooser_request_private.h: Added.
        (WebKit):
        (Ewk_File_Chooser_Request):
        (Ewk_File_Chooser_Request::create):
        (Ewk_File_Chooser_Request::wasHandled):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/resources/file_chooser.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp: Added corresponding
        unit tests.
        (onFileChooserRequest):
        (compareStrings):
        (freeStringList):
        (TEST_F):
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::runOpenPanel):
        (WebKit):
        (WebKit::PageUIClientEfl::PageUIClientEfl):
        * UIProcess/efl/PageUIClientEfl.h:
        (PageUIClientEfl):

2012-10-31  Noam Rosenthal  <noam.rosenthal@nokia.com>

        [Texmap] Enable filter animations in GraphicsLayerAnimation
        https://bugs.webkit.org/show_bug.cgi?id=100318

        Reviewed by Kenneth Rohde Christiansen.

        Encode/decode KeyframeValues of type FilterOperations.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-10-31  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2][AC] Avoid storing dirty rects in a Vector inside EwkViewImpl
        https://bugs.webkit.org/show_bug.cgi?id=100736

        Reviewed by Kenneth Rohde Christiansen.

        No longer store dirty rectangles in a temporary Vector and construct
        a WebCore::Region directly from them instead. This avoid having to
        iterate over the Vector in EwkViewImpl::displayTimerFired() to construct
        a Region object, which should be more efficient.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::redrawRegion):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebCore):
        (EwkViewImpl):

2012-10-30  Anders Carlsson  <andersca@apple.com>

        Connection::Client::didReceiveInvalidMessage should take the full message name
        https://bugs.webkit.org/show_bug.cgi?id=100788

        Reviewed by Sam Weinig.

        Change Connection::Client::didReceiveInvalidMessage to take the message receiver name and message name as parameters
        and make WebProcessProxy::didReceiveInvalidMessage print out the full message name.

        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        (NetworkConnectionToWebProcess):
        * NetworkProcess/NetworkProcess.cpp:
        (WebKit::NetworkProcess::didReceiveInvalidMessage):
        * NetworkProcess/NetworkProcess.h:
        (NetworkProcess):
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::dispatchMessage):
        * Platform/CoreIPC/Connection.h:
        (Client):
        * Platform/CoreIPC/StringReference.cpp:
        (CoreIPC::StringReference::toString):
        (CoreIPC):
        * Platform/CoreIPC/StringReference.h:
        (StringReference):
        * PluginProcess/PluginProcess.cpp:
        (WebKit::PluginProcess::didReceiveInvalidMessage):
        * PluginProcess/PluginProcess.h:
        (PluginProcess):
        * PluginProcess/WebProcessConnection.cpp:
        (WebKit::WebProcessConnection::didReceiveInvalidMessage):
        * PluginProcess/WebProcessConnection.h:
        (WebProcessConnection):
        * SharedWorkerProcess/SharedWorkerProcess.cpp:
        (WebKit::SharedWorkerProcess::didReceiveInvalidMessage):
        * SharedWorkerProcess/SharedWorkerProcess.h:
        (SharedWorkerProcess):
        * UIProcess/Network/NetworkProcessProxy.cpp:
        (WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
        * UIProcess/Network/NetworkProcessProxy.h:
        (NetworkProcessProxy):
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::didReceiveInvalidMessage):
        * UIProcess/Plugins/PluginProcessProxy.h:
        (PluginProcessProxy):
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
        (WebKit::SharedWorkerProcessProxy::didReceiveInvalidMessage):
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
        (SharedWorkerProcessProxy):
        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::didReceiveInvalidMessage):
        * UIProcess/WebConnectionToWebProcess.h:
        (WebConnectionToWebProcess):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveInvalidMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
        * WebProcess/Network/NetworkProcessConnection.h:
        (NetworkProcessConnection):
        * WebProcess/Plugins/PluginProcessConnection.cpp:
        (WebKit::PluginProcessConnection::didReceiveInvalidMessage):
        * WebProcess/Plugins/PluginProcessConnection.h:
        (PluginProcessConnection):
        * WebProcess/WebConnectionToUIProcess.cpp:
        (WebKit::WebConnectionToUIProcess::didReceiveInvalidMessage):
        * WebProcess/WebConnectionToUIProcess.h:
        (WebConnectionToUIProcess):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveInvalidMessage):
        * WebProcess/WebProcess.h:
        (WebProcess):

2012-10-31  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2][AC] Use smart pointers for Evas_GL types
        https://bugs.webkit.org/show_bug.cgi?id=100745

        Reviewed by Kenneth Rohde Christiansen.

        Replace raw pointers to Evas_GL, Evas_GL_Context and
        Evas_GL_Surface by smart pointers in EwkViewImpl.

        C++ wrappers were added for Evas_GL_Context and
        Evas_GL_Surface in order to use OwnPtr. This is needed
        because their destroy functions need the Evas_GL.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EvasGLContext.cpp: Added.
        (WebKit):
        (WebKit::EvasGLContext::EvasGLContext):
        (WebKit::EvasGLContext::~EvasGLContext):
        * UIProcess/API/efl/EvasGLContext.h: Added.
        (WebKit):
        (EvasGLContext):
        (WebKit::EvasGLContext::create):
        (WebKit::EvasGLContext::context):
        * UIProcess/API/efl/EvasGLSurface.cpp: Added.
        (WebKit):
        (WebKit::EvasGLSurface::EvasGLSurface):
        (WebKit::EvasGLSurface::~EvasGLSurface):
        * UIProcess/API/efl/EvasGLSurface.h: Added.
        (WebKit):
        (EvasGLSurface):
        (WebKit::EvasGLSurface::create):
        (WebKit::EvasGLSurface::surface):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        (EwkViewImpl::exitAcceleratedCompositingMode):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl::evasGL):
        (EwkViewImpl::evasGLContext):
        (EwkViewImpl::evasGLSurface):
        (EwkViewImpl::resetEvasGLSurface):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):

2012-10-31  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] Fix "Unable to find a renderable master window QQuickView" warnings in tst_QQuickWebView
        https://bugs.webkit.org/show_bug.cgi?id=100247

        Reviewed by Jocelyn Turcotte.

        Make sure we have a visible window for tests that want to render.

        * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
        (tst_QQuickWebView::showWebView):
        (tst_QQuickWebView::removeFromCanvas):
        (tst_QQuickWebView::multipleWebViewWindows):
        (tst_QQuickWebView::multipleWebViews):
        (tst_QQuickWebView::basicRenderingSanity):
        (tst_QQuickWebView::transparentWebViews):
        Removed some unnecessary resize now that the window have a default size.
        * UIProcess/API/qt/tests/testwindow.h:
        (TestWindow): Resize the window to a default size at construction.

2012-10-31  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL] WebContext::platformDefaultIconDatabasePath() should return a path to a file
        https://bugs.webkit.org/show_bug.cgi?id=100679

        Reviewed by Kenneth Rohde Christiansen.

        This patch aligns the EFL implementation with other ports. Before
        that, we had an inconsistence: the return value of the getter could
        not be used on the setter (the setter expects a full path, not a
        directory).

        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::faviconDatabase):
        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::platformDefaultIconDatabasePath):

2012-10-31  Ian Vollick  <vollick@chromium.org>

        Add support for text-based repaint testing
        https://bugs.webkit.org/show_bug.cgi?id=100584

        Reviewed by Simon Fraser.

        Allows tracked repaint rects to be dumped as text.

        * mac/WebKit2.order:
        * win/WebKit2.def:
        * win/WebKit2CFLite.def:
          Exports for:
            FrameView::setTracksRepaints(bool)
            Frame::trackedRepaintRectsAsText() const

2012-10-31  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL] Skip EWK2UnitTestBase.ewk_context_vibration_client_callbacks_set API test
        https://bugs.webkit.org/show_bug.cgi?id=100839

        Unreviewed, Skip EWK2UnitTestBase.ewk_context_vibration_client_callbacks_set
        API test since it is failing on the bots.

        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):

2012-10-31  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2][EFL] Assert check need to be changed in InputMethodContextEfl::InputMethodContextEfl
        https://bugs.webkit.org/show_bug.cgi?id=100840

        Reviewed by Kenneth Rohde Christiansen.

        Because 'context' is already set to 'm_context', assert check need to be done for m_context.

        * UIProcess/efl/InputMethodContextEfl.cpp:
        (WebKit::InputMethodContextEfl::InputMethodContextEfl):

2012-10-31  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [WK2/EFL] Make sure all our events are transformed correctly
        https://bugs.webkit.org/show_bug.cgi?id=100836

        Reviewed by Alexis Menard.

        When moving to using the tiled backing store, we need to
        transform our events before sending them to the web process.

        We needed to do that before as well, as the webkit view
        doesn't have to be positioned at (0,0), but it was done in
        a hacking way in the WebEvent creating.

        Now we generate two transforms, one for transforming points
        to the web content, and one for transforming them into the
        device screen coordinate system.

        This fixes the global position which was wrong before.

        * Shared/NativeWebMouseEvent.h:
        (NativeWebMouseEvent):
        * Shared/NativeWebTouchEvent.h:
        (NativeWebTouchEvent):
        * Shared/NativeWebWheelEvent.h:
        (NativeWebWheelEvent):
        * Shared/efl/NativeWebMouseEventEfl.cpp:
        (WebKit::NativeWebMouseEvent::NativeWebMouseEvent):
        * Shared/efl/NativeWebTouchEventEfl.cpp:
        (WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
        * Shared/efl/NativeWebWheelEventEfl.cpp:
        (WebKit::NativeWebWheelEvent::NativeWebWheelEvent):
        * Shared/efl/WebEventFactory.cpp:
        (WebKit::WebEventFactory::createWebMouseEvent):
        (WebKit::WebEventFactory::createWebWheelEvent):
        (WebKit::WebEventFactory::createWebTouchEvent):
        * Shared/efl/WebEventFactory.h:
        (WebEventFactory):
        * UIProcess/API/efl/ewk_view.cpp:
        (toDeviceScreenTransform):
        (toWebContentTransform):
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (ewk_view_feed_touch_event):

2012-10-31  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Change the scope of locking in CoreIPC::Connection class.
        https://bugs.webkit.org/show_bug.cgi?id=98998

        Reviewed by Laszlo Gombos.

        Release the m_incomingMessagesLock and m_outgoingMessagesLock mutexes
        immediately after the protected resource is no longer modified to
        prevent a possible source of a deadlock.

        The change allows the EFL port to prevent an actual dead-lock
        situation with some upcoming changes.

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::sendMessage):
        (CoreIPC::Connection::enqueueIncomingMessage):

2012-10-31  Tim Horton  <timothy_horton@apple.com>

        Unreviewed, fix header sorting in r132992.

        * WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:
        * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

2012-10-31  Tim Horton  <timothy_horton@apple.com>

        Unreviewed, fix 32bit build breakage.

        * WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:
        (WebKit::PDFPluginAnnotation::updateGeometry):

2012-10-31  Tim Horton  <timothy_horton@apple.com>

        Full-page PDFPlugin should support inline form editing
        https://bugs.webkit.org/show_bug.cgi?id=100155

        Reviewed by Dan Bernstein.

        Add form controls corresponding to Text and Choice PDF annotations,
        allowing for single- and multi-line text input, and <select>-like input.

        Currently, forms are only implemented for full-page PDF documents.

        * Shared/mac/PDFKitImports.h:
        (WebKit): Add pdfAnnotationTextWidgetClass and pdfAnnotationChoiceWidgetClass.
        * Shared/mac/PDFKitImports.mm:
        (WebKit::pdfAnnotationTextWidgetClass): Add pdfAnnotationTextWidgetClass.
        (WebKit::pdfAnnotationChoiceWidgetClass): Add pdfAnnotationChoiceWidgetClass.
        * WebKit2.xcodeproj/project.pbxproj: Add PDFLayerControllerDetails, PDFPluginTextAnnotation, PDFPluginChoiceAnnotation,
        and PDFPluginAnnotation.
        * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Added. Extract PDFLayerController details category into a header.
        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Add m_activeAnnotation, to keep track of the active PDFPluginAnnotation, and m_annotationContainer,
        the <div> that form controls are inserted into.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (-[WKPDFLayerControllerDelegate pdfLayerController:didChangeActiveAnnotation:]): Forward active annotation changes to PDFPlugin.
        (WebKit::PDFPlugin::PDFPlugin): Add a <div> to the PluginDocument <body>, which will contain <input>, <select>, and <textarea> elements
        corresponding to the active annotation. This div is made to fit to the body, and is "overflow: hidden" so that form elements scrolled
        out of the viewport do not cause the Document to expand to be larger than the Plugin.
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Update PDFPlugin's notion of the scroll position immediately after the document loads, in case
        the scroll position is constrained by PDFKit.
        (WebKit::PDFPlugin::destroy): Tear down any forms for the active annotation.
        (WebKit::PDFPlugin::geometryDidChange): Notify the current annotation that it should update its geometry when the Plugin's geometry changes.
        (WebKit::PDFPlugin::setScrollOffset): Notify the current annotation that it should update its geometry when we scroll.
        (WebKit::PDFPlugin::setActiveAnnotation): Commit changes to the current annotation, if there is one, then make a new PDFPluginAnnotation
        corresponding to the newly active annotation, and attach it to our document.
        * WebProcess/Plugins/PDF/PDFPluginAnnotation.h: Added.
        (WebKit::PDFPluginAnnotation::element): Return the Element corresponding to this object.
        (WebKit::PDFPluginAnnotation::annotation): Return the PDFAnnotation corresponding to this object.
        (WebKit::PDFPluginAnnotation::plugin): Return the Plugin that created this object.
        (WebKit::PDFPluginAnnotation::commit): Commit changes from the form to the PDFAnnotation. This is implemented in subclasses.
        (WebKit::PDFPluginAnnotation::attach): Attach a PDFPluginAnnotation to its parent Element.
        (WebKit::PDFPluginAnnotation::parent): Return the parent Element that we're attach()ed to.
        (WebKit::PDFPluginAnnotation::pdfLayerController): Return the pdfLayerController that the PDFAnnotation comes from.
        (PDFPluginAnnotationEventListener): Add an event listener to respond to "change" and "blur" events from m_element.
        * WebProcess/Plugins/PDF/PDFPluginAnnotation.mm: Added.
        (WebKit::PDFPluginAnnotation::create): Create the appropriate PDFPluginAnnotation subclass (PDFPluginTextAnnotation or
        PDFPluginChoiceAnnotation based on the class of the PDFAnnotation).
        (WebKit::PDFPluginAnnotation::attach): Lazily create the HTML form element corresponding to this annotation. Add it to its parent
        element. Add event listeners for "change" and "blur".
        (WebKit::PDFPluginAnnotation::~PDFPluginAnnotation): Tear down the annotation, by removing event listeners and removing
        the form element from its parent element.
        (WebKit::PDFPluginAnnotation::updateGeometry): Update the size and position of the form element, given the current PDF scale and scrolling position.
        (WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::handleEvent): If we get a blur or change event, we should remove the
        form control to match the behavior of PDFKit.
        * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.h: Added.
        (WebKit::PDFPluginChoiceAnnotation::choiceAnnotation): Return annotation() with the appropriate cast.
        * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm: Added.
        (WebKit::PDFPluginChoiceAnnotation::updateGeometry): Update the font size of the choice widget given the current PDF scale.
        (WebKit::PDFPluginChoiceAnnotation::commit): Save the value of the currently selected <option> into the PDFAnnotationChoiceWidget.
        (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): Create a <select> element, populated with <option> elements
        for the PDFAnnotationChoiceWidget's available choices. Select the correct <option> initially.
        * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h: Added.
        (WebKit::PDFPluginTextAnnotation::textAnnotation): Return annotation() with the appropriate cast.
        * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm: Added.
        (WebKit::cssAlignmentValueForNSTextAlignment): Return the CSS alignment value for a given NSTextAlignment.
        (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Create a <textarea> or <input> element, depending on whether the
        PDFAnnotationTextWidget supports multiline editing or not.
        (WebKit::PDFPluginTextAnnotation::updateGeometry): Update the font size of the text widget given the current PDF scale.
        (WebKit::PDFPluginTextAnnotation::commit): Save the current string in the form element into the PDFAnnotationTextWidget.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::focusedPluginViewForFrame): Return the PluginView for a Frame only if the Plugin's element is focused.
        (WebKit::WebPage::executeEditingCommand): Only forward editing commands to PluginView if the plugin itself is focused.
        (WebKit::WebPage::isEditingCommandEnabled): Ditto.
        (WebKit::WebPage::validateCommand): Ditto.

2012-10-30  Joseph Pecoraro  <pecoraro@apple.com>

        [Mac] Make WebKit2 Build with NETWORK_PROCESS disabled
        https://bugs.webkit.org/show_bug.cgi?id=100798

        Reviewed by David Kilzer.

        Wrap a few remaining NetworkProcess files and related code in
        ENABLE(NETWORK_PROCESS) guards to avoid being compiled when disabled.

        * NetworkProcess/HostRecord.cpp:
        * NetworkProcess/HostRecord.h:
        * NetworkProcess/NetworkRequest.cpp:
        * NetworkProcess/NetworkRequest.h:
        * NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm:
        * UIProcess/Network/NetworkProcessManager.cpp:
        * UIProcess/Network/NetworkProcessManager.h:
        Wrap files in guards.

        * UIProcess/Launcher/ProcessLauncher.h:
        * UIProcess/Launcher/ProcessLauncher.cpp:
        (WebKit::ProcessLauncher::processTypeAsString):
        (WebKit::ProcessLauncher::getProcessTypeFromString):
        Wrap NetworkProcess enum access in guards.

        * WebProcess/WebKitMain.cpp:
        (WebKitMain):
        Wrap NetworkProcess enum switch case in guards.

        * WebKit2Prefix.h:
        Remove an extraneous close and reopen of the same guard.

2012-10-30  Jae Hyun Park  <jae.park@company100.net>

        Coordinated Graphics: Remove unused methods
        https://bugs.webkit.org/show_bug.cgi?id=100799

        Reviewed by Noam Rosenthal.

        Currently, there are several unused methods regarding Coordinated
        Graphics. This patch removes those unused methods.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/DrawingAreaProxy.h:

2012-10-30  Joseph Pecoraro  <pecoraro@apple.com>

        [Mac] Sync up FeatureDefine Configuration Files
        https://bugs.webkit.org/show_bug.cgi?id=100171

        Reviewed by David Kilzer.

        Follow up to better coordinate with iOS feature defines. Make:

          - ENABLE_FILTERS always on
          - ENABLE_INPUT_* iphonesimulator values point to the iphoneos values

        * Configurations/FeatureDefines.xcconfig:

2012-10-30  Joseph Pecoraro  <pecoraro@apple.com>

        [Mac] Sync up FeatureDefine Configuration Files
        https://bugs.webkit.org/show_bug.cgi?id=100171

        Reviewed by David Kilzer.

        Ensure an identical FeatureDefine files across all projects. Changes:

          - ENABLE_CSS_BOX_DECORATION_BREAK should be in all
          - ENABLE_PDFKIT_PLUGIN should be in all
          - ENABLE_RESOLUTION_MEDIA_QUERY should be in all
          - ENABLE_ENCRYPTED_MEDIA should be in all
          - ENABLE_HIDDEN_PAGE_DOM_TIMER_THROTTLING with corrected value
          - Some alphabetical ordering cleanup

        * Configurations/FeatureDefines.xcconfig:

2012-10-30  Christophe Dumez  <christophe.dumez@intel.com>

        Regression(r132887): Caused segfault in a EWK2UnitTestBase.ewk_view_text_find
        https://bugs.webkit.org/show_bug.cgi?id=100781

        Reviewed by Kenneth Rohde Christiansen.

        Make sure we pass a pointer to zero instead of a NULL pointer
        as parameter to the "text,found" in case the text could not
        be found. This prevents crashing in
        EWK2UnitTestBase.ewk_view_text_find when trying to dereference
        the parameter pointer.

        * UIProcess/efl/FindClientEfl.cpp:
        (WebKit::FindClientEfl::didFailToFindString):

2012-10-30  Brady Eidson  <beidson@apple.com>

        Crash in WebProcess at com.apple.WebCore: WebCore::ResourceLoader::start
        <rdar://problem/12596761> and https://webkit.org/b/100792

        Reviewed by Tim Hatcher.

        In release builds we can sometimes end up with a null ResourceLoader due to a race condition
        with the WebProcess telling the NetworkProcess to remove a resource load at the very same time
        the NetworkProcess is about to start that load.

        Until we can resolve that race condition an early return will be necessary.

        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::startResourceLoad):

2012-10-30  Jesse van den Kieboom  <jessevdk@gnome.org>

        Fixed transfer annotation for default web context
        https://bugs.webkit.org/show_bug.cgi?id=94314

        Reviewed by Martin Robinson.

        Add a missing colon which prevented the transfer annotation of
        webkit_web_context_get_default to be parsed correctly.

        * UIProcess/API/gtk/WebKitWebContext.cpp:

2012-10-30  Anders Carlsson  <andersca@apple.com>

        Use the message name when dispatching messages
        https://bugs.webkit.org/show_bug.cgi?id=100774

        Reviewed by Andreas Kling.

        Change the message generator to decide which function to call based on the message name instead
        of the MessageID. This is yet another step towards eliminating MessageID completely.

        * Scripts/webkit2/messages.py:
        (async_message_statement):
        (sync_message_statement):
        (generate_message_handler):
        * Scripts/webkit2/messages_unittest.py:
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::send):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::postMessage):
        (WebKit::InjectedBundle::postSynchronousMessage):

2012-10-29  Sam Weinig  <sam@webkit.org>

        Switch more class to use the new << form of encode
        https://bugs.webkit.org/show_bug.cgi?id=100725

        Reviewed by Anders Carlsson.

        - Switches many uses of encoder.encode(foo) to encoder << foo.
        - Switches a few places to take an ArgumentEncoder& rather than an ArgumentEncoder*.
        - Switches a few places away from using encoder.encodeVariableLengthByteArray(foo) to
          using encoder << CoreIPC::DataReference(foo).

        * Platform/CoreIPC/HandleMessage.h:
        (CoreIPC::handleMessage):
        (CoreIPC::handleMessageVariadic):
        * Platform/CoreIPC/StringReference.cpp:
        (CoreIPC::StringReference::encode):
        (CoreIPC::StringReference::decode):
        * Platform/CoreIPC/mac/MachPort.h:
        (CoreIPC::MachPort::encode):
        * Platform/mac/SharedMemoryMac.cpp:
        (WebKit::SharedMemory::Handle::encode):
        * PluginProcess/PluginCreationParameters.cpp:
        (WebKit::PluginCreationParameters::encode):
        * Shared/DictionaryPopupInfo.cpp:
        (WebKit::DictionaryPopupInfo::encode):
        * Shared/EditorState.cpp:
        (WebKit::EditorState::encode):
        * Shared/FontInfo.cpp:
        (WebKit::FontInfo::encode):
        * Shared/Network/NetworkProcessCreationParameters.cpp:
        (WebKit::NetworkProcessCreationParameters::encode):
        * Shared/OriginAndDatabases.cpp:
        (WebKit::OriginAndDatabases::encode):
        * Shared/PlatformPopupMenuData.cpp:
        (WebKit::PlatformPopupMenuData::encode):
        * Shared/Plugins/NPIdentifierData.cpp:
        (WebKit::NPIdentifierData::encode):
        * Shared/Plugins/NPVariantData.cpp:
        (WebKit::NPVariantData::encode):
        * Shared/Plugins/PluginProcessCreationParameters.cpp:
        (WebKit::PluginProcessCreationParameters::encode):
        * Shared/PrintInfo.cpp:
        (WebKit::PrintInfo::encode):
        * Shared/SecurityOriginData.cpp:
        (WebKit::SecurityOriginData::encode):
        * Shared/SessionState.cpp:
        (WebKit::SessionState::encode):
        * Shared/ShareableBitmap.cpp:
        (WebKit::ShareableBitmap::Handle::encode):
        * Shared/SharedWorkerProcessCreationParameters.cpp:
        (WebKit::SharedWorkerProcessCreationParameters::encode):
        * Shared/StatisticsData.cpp:
        (WebKit::StatisticsData::encode):
        * Shared/StringPairVector.h:
        (WebKit::StringPairVector::encode):
        * Shared/UpdateInfo.cpp:
        (WebKit::UpdateInfo::encode):
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode):
        * Shared/WebBackForwardListItem.cpp:
        (WebKit::WebBackForwardListItem::encode):
        * Shared/WebContextMenuItemData.cpp:
        (WebKit::WebContextMenuItemData::encode):
        * Shared/WebEvent.cpp:
        (WebKit::WebEvent::encode):
        * Shared/WebGestureEvent.cpp:
        (WebKit::WebGestureEvent::encode):
        * Shared/WebHitTestResult.cpp:
        (WebKit::WebHitTestResult::Data::encode):
        * Shared/WebKeyboardEvent.cpp:
        (WebKit::WebKeyboardEvent::encode):
        * Shared/WebMouseEvent.cpp:
        (WebKit::WebMouseEvent::encode):
        * Shared/WebNavigationDataStore.h:
        (WebKit::WebNavigationDataStore::encode):
        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode):
        * Shared/WebPageGroupData.cpp:
        (WebKit::WebPageGroupData::encode):
        * Shared/WebPlatformTouchPoint.cpp:
        (WebKit::WebPlatformTouchPoint::encode):
        * Shared/WebPopupItem.cpp:
        (WebKit::WebPopupItem::encode):
        * Shared/WebPreferencesStore.cpp:
        (WebKit::WebPreferencesStore::encode):
        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        * Shared/WebTouchEvent.cpp:
        (WebKit::WebTouchEvent::encode):
        * Shared/WebWheelEvent.cpp:
        (WebKit::WebWheelEvent::encode):
        * Shared/cf/ArgumentCodersCF.cpp:
        (CoreIPC::encode):
        (CoreIPC::decode):
        * Shared/cf/ArgumentCodersCF.h:
        (CoreIPC):
        * Shared/mac/ArgumentCodersMac.h:
        (CoreIPC):
        * Shared/mac/ArgumentCodersMac.mm:
        (CoreIPC::encode):
        * Shared/mac/AttributedString.mm:
        (WebKit::AttributedString::encode):
        * Shared/mac/ColorSpaceData.mm:
        (WebKit::ColorSpaceData::encode):
        * Shared/mac/KeychainAttribute.cpp:
        (CoreIPC::encode):
        * Shared/mac/KeychainAttribute.h:
        (CoreIPC):
        * Shared/mac/LayerTreeContextMac.mm:
        (WebKit::LayerTreeContext::encode):
        * Shared/mac/PlatformCertificateInfo.mm:
        (WebKit::PlatformCertificateInfo::encode):
        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::Handle::encode):
        (WebKit::SandboxExtension::Handle::decode):
        (WebKit::SandboxExtension::HandleArray::encode):
        (WebKit::SandboxExtension::HandleArray::decode):
        * Shared/mac/SecItemRequestData.cpp:
        (WebKit::SecItemRequestData::encode):
        * Shared/mac/SecItemResponseData.cpp:
        (WebKit::SecItemResponseData::encode):
        * Shared/mac/SecKeychainItemRequestData.cpp:
        (WebKit::SecKeychainItemRequestData::encode):
        (WebKit::SecKeychainItemRequestData::decode):
        * Shared/mac/SecKeychainItemResponseData.cpp:
        (WebKit::SecKeychainItemResponseData::encode):
        * Shared/mac/WebCoreArgumentCodersMac.mm:
        (CoreIPC::::encodePlatformData):
        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::encodeMessageBody):
        * UIProcess/WebContextUserMessageCoders.h:
        (WebKit::WebContextUserMessageEncoder::encode):
        * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
        (WebKit::InjectedBundleUserMessageEncoder::encode):
        * WebProcess/Plugins/Plugin.cpp:
        (WebKit::Plugin::Parameters::encode):
        * WebProcess/WebConnectionToUIProcess.cpp:
        (WebKit::WebConnectionToUIProcess::encodeMessageBody):

2012-10-29  Anders Carlsson  <andersca@apple.com>

        Build WebKit as C++11 on Mac
        https://bugs.webkit.org/show_bug.cgi?id=100720

        Reviewed by Daniel Bates.

        * Configurations/Base.xcconfig:
        Add CLANG_CXX_LANGUAGE_STANDARD=gnu++0x.

        * UIProcess/mac/WebCookieManagerProxyMac.mm:
        (WebKit::WebCookieManagerProxy::persistHTTPCookieAcceptPolicy):
        * WebProcess/Cookies/mac/WebCookieManagerMac.mm:
        (WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
        Add explicit casts to NSHTTPCookieAcceptPolicy.

2012-10-30  Sergio Villar Senin  <svillar@igalia.com>

        [WK2][Qt] Enable hover and mouse events in flickable WebView
        https://bugs.webkit.org/show_bug.cgi?id=100296

        Reviewed by Kenneth Rohde Christiansen.

        Flickable WebView is now allowed to handle both hover and mouse
        events. Flickable was initially meant to be the mobile interface and
        was only handling touch events, but now the idea is that it will be
        the WebView for both mobile and desktop environments.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::initialize): refactored hover and mouse
        event handling from children classes.
        (QQuickWebViewLegacyPrivate::initialize):
        (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):

2012-10-29  Anders Carlsson  <andersca@apple.com>

        String::createCFString should return a RetainPtr
        https://bugs.webkit.org/show_bug.cgi?id=100419

        Reviewed by Andreas Kling.

        Update callers of String::createCFString.

        * Platform/mac/ModuleMac.mm:
        (WebKit::Module::load):
        * PluginProcess/mac/PluginProcessMac.mm:
        (WebKit::initializeSandbox):
        * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
        (WebKit::NetscapePluginModule::getPluginInfo):
        (WebKit::NetscapePluginModule::createPluginMIMETypesPreferences):
        * UIProcess/cf/WebBackForwardListCF.cpp:
        (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
        * UIProcess/cf/WebPageProxyCF.cpp:
        (WebKit::WebPageProxy::sessionStateData):
        (WebKit::autosaveKey):
        (WebKit::WebPageProxy::saveRecentSearches):
        * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
        (WebKit::WebResourceCacheManager::clearCacheForOrigin):
        * WebProcess/WebPage/win/WebPageWin.cpp:
        (WebKit::cachedResponseForURL):
        * WebProcess/win/WebProcessWin.cpp:
        (WebKit::WebProcess::platformSetCacheModel):
        (WebKit::WebProcess::platformInitializeWebProcess):

2012-10-30  Kondapally Kalyan  <kalyan.kondapally@intel.com>

        Regression(r132647)-Enable WebGL in EwkView.
        https://bugs.webkit.org/show_bug.cgi?id=100552.

        Reviewed by Kenneth Rohde Christiansen.

        WebGL is enabled with following changeset: http://trac.webkit.org/changeset/132627.
        Some changes are lost after the following changeset: http://trac.webkit.org/changeset/132647
        i.e setWebGLEnabled(true);  in EwkViewImpl.cpp.
        This patch re-applies the lost changes.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):

2012-10-30  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] Animations jump when the page is suspended
        https://bugs.webkit.org/show_bug.cgi?id=100673

        Reviewed by Kenneth Rohde Christiansen.

        GraphicsLayerAnimations::pause() should accept time from start and not an offset.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::addAnimation):
        (WebCore::CoordinatedGraphicsLayer::pauseAnimation):
        (WebCore::CoordinatedGraphicsLayer::animationStartedTimerFired):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):

2012-10-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Fix EFL build after r132887
        https://bugs.webkit.org/show_bug.cgi?id=100748

        Reviewed by Gyuyoung Kim.

        Fixed EFL build failure with WTF_USE_TILED_BACKING_STORE enabled caused by http://trac.webkit.org/changeset/132887.

        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didCommitLoadForFrame):

2012-10-30  Max Vujovic  <mvujovic@adobe.com>

        [CSS Shaders] Reject vertex shaders with custom attributes
        https://bugs.webkit.org/show_bug.cgi?id=98973

        Reviewed by Dean Jackson.

        Replace CustomFilterOperation::MeshType with CustomFilterMeshType from
        CustomFilterConstants.h.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
            Read the shader strings directly from the CustomFilterProgram instead of asking for a
            CustomFilterProgramInfo object. Also, encode the meshType earlier so that decoding can
            can use it to create a WebCustomFilterProgram, which now requires a meshType.
        (CoreIPC::::decode):
            Decode the meshType earlier to pass it to the new WebCustomFilterProgram constructor.
        * Shared/CoordinatedGraphics/WebCustomFilterProgram.h:
        (WebKit::WebCustomFilterProgram::create):
            Add a meshType parameter to pass to the base class constructor.
        (WebKit::WebCustomFilterProgram::WebCustomFilterProgram): Ditto.

2012-10-30  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Remove ViewportUpdateDeferrer from PageViewportController
        https://bugs.webkit.org/show_bug.cgi?id=100665

        Reviewed by Jocelyn Turcotte.

        Since the original use case of delayed viewport updates and the issue
        of infinite loop conditions between the programmatic adjustmet of the
        viewport and the Qt notification signals are not present any more the
        ViewportUpdateDeferrer became an unnecessary legacy and can be removed.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::pageDidRequestScroll):
        * UIProcess/PageViewportController.h:
        (WebKit):
        (PageViewportController):
        * UIProcess/qt/PageViewportControllerClientQt.cpp:
        (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
        (WebKit::PageViewportControllerClientQt::animateContentRectVisible):
        (WebKit::PageViewportControllerClientQt::flickMoveStarted):
        (WebKit::PageViewportControllerClientQt::flickMoveEnded):
        (WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):
        (WebKit::PageViewportControllerClientQt::touchBegin):
        (WebKit::PageViewportControllerClientQt::touchEnd):
        (WebKit::PageViewportControllerClientQt::setContentsRectToNearestValidBounds):
        (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
        (WebKit::PageViewportControllerClientQt::pinchGestureEnded):
        (WebKit::PageViewportControllerClientQt::pinchGestureCancelled):
        * UIProcess/qt/PageViewportControllerClientQt.h:
        (PageViewportControllerClientQt):

2012-10-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Simplify signal emitting API in EwkViewImpl
        https://bugs.webkit.org/show_bug.cgi?id=100506

        Reviewed by Kenneth Rohde Christiansen.

        Now signal emitting API in EwkViewImpl is simplified so that
        there is one EwkViewImpl::smartCallback template method
        returning EwkViewCallbacks::CallBack class instance
        which encapsulates Ewk_view callback info and also provide
        arguments type checking.

        * UIProcess/API/efl/EwkViewCallbacks.h: Added.
        (EwkViewCallbacks):
        (CallBackInfo):
        (EwkViewCallbacks::CallBackInfo::name):
        (EwkViewCallbacks::CallBackInfo::hasArguments):
        (CallBack):
        (EwkViewCallbacks::CallBack::CallBack):
        (EwkViewCallbacks::CallBack::call):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        (EwkViewImpl::smartCallback):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
        (WebKit::DownloadManagerEfl::didFail):
        (WebKit::DownloadManagerEfl::didCancel):
        (WebKit::DownloadManagerEfl::didFinish):
        * UIProcess/efl/FindClientEfl.cpp:
        (WebKit::FindClientEfl::didFindString):
        (WebKit::FindClientEfl::didFailToFindString):
        * UIProcess/efl/FormClientEfl.cpp:
        (WebKit::FormClientEfl::willSubmitForm):
        * UIProcess/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::processDidCrash):
        (WebKit::PageClientImpl::toolTipChanged):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveTitleForFrame):
        (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
        (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
        (WebKit::PageLoadClientEfl::didChangeProgress):
        (WebKit::PageLoadClientEfl::didFinishLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didStartProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didReceiveServerRedirectForProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didCommitLoadForFrame):
        (WebKit::PageLoadClientEfl::didChangeBackForwardList):
        * UIProcess/efl/PagePolicyClientEfl.cpp:
        (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
        * UIProcess/efl/ResourceLoadClientEfl.cpp:
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
        (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):
        (WebKit::ResourceLoadClientEfl::didFinishLoadForResource):
        (WebKit::ResourceLoadClientEfl::didFailLoadForResource):
        (WebKit::ResourceLoadClientEfl::ResourceLoadClientEfl):
        (WebKit::ResourceLoadClientEfl::~ResourceLoadClientEfl):

2012-10-30  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        Coordinated Graphics: Unrelease adopted images
        https://bugs.webkit.org/show_bug.cgi?id=100671

        Reviewed by Kenneth Rohde Christiansen.

        Reloading could cause a crash since r132640 where the directly composited
        image would be re-adopted with the same key before it was properly released
        in the UI process.
        Cancel the release when this happens rather than creating a new image.

        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::adoptImageBackingStore):

2012-10-30  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Let Ecore_Evas own the cursor object
        https://bugs.webkit.org/show_bug.cgi?id=100731

        Reviewed by Kenneth Rohde Christiansen.

        Ecore_Evas takes care of calling evas_object_del() on
        the cursor object when it is no longer used (e.g. when
        it is replaced by another cursor object). Therefore,
        we don't need to keep a RefPtr to the cursor Evas
        Object as a data member of EwkViewImpl. We pass
        ownership of the cursor object to Ecore_Evas.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::setCursor):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):

2012-10-30  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Simplify getting impl from ewk_view evas object instance
        https://bugs.webkit.org/show_bug.cgi?id=100505

        Reviewed by Kenneth Rohde Christiansen.

        Macros are removed from EwkViewImpl.h. New macro added to EwkViewImpl.cpp
        so that it's possible to get impl directly from ewk view.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::displayTimerFired):
        * UIProcess/API/efl/EwkViewImpl.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_focus_in):
        (_ewk_view_smart_focus_out):
        (mapToWebContent):
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (_ewk_view_smart_key_down):
        (_ewk_view_smart_key_up):
        (_ewk_view_on_show):
        (_ewk_view_on_hide):
        (_ewk_view_smart_calculate):
        (_ewk_view_smart_color_set):
        (ewk_view_context_get):
        (ewk_view_url_set):
        (ewk_view_url_get):
        (ewk_view_icon_url_get):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_stop):
        (ewk_view_settings_get):
        (ewk_view_title_get):
        (ewk_view_load_progress_get):
        (ewk_view_scale_set):
        (ewk_view_scale_get):
        (ewk_view_device_pixel_ratio_set):
        (ewk_view_device_pixel_ratio_get):
        (ewk_view_theme_set):
        (ewk_view_theme_get):
        (ewk_view_back):
        (ewk_view_forward):
        (ewk_view_intent_deliver):
        (ewk_view_back_possible):
        (ewk_view_forward_possible):
        (ewk_view_back_forward_list_get):
        (ewk_view_html_string_load):
        (ewk_view_setting_encoding_custom_get):
        (ewk_view_setting_encoding_custom_set):
        (ewk_view_text_find):
        (ewk_view_text_find_highlight_clear):
        (ewk_view_text_matches_count):
        (ewk_view_mouse_events_enabled_set):
        (ewk_view_mouse_events_enabled_get):
        (ewk_view_feed_touch_event):
        (ewk_view_touch_events_enabled_set):
        (ewk_view_touch_events_enabled_get):
        (ewk_view_inspector_show):
        (ewk_view_inspector_close):
        (ewk_view_pagination_mode_set):
        (ewk_view_pagination_mode_get):

2012-10-30  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Remove incorrect use of preprocessor macro in API headers.
        https://bugs.webkit.org/show_bug.cgi?id=100722

        Reviewed by Gyuyoung Kim.

        Remove the preprocessor macro ENABLE(INSPECTOR) from the WKAPICast.h
        and WKInspector.h.

        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKInspector.cpp:
        (WKInspectorGetTypeID):
        (WKInspectorGetPage):
        (WKInspectorIsVisible):
        (WKInspectorIsFront):
        (WKInspectorShow):
        (WKInspectorClose):
        (WKInspectorShowConsole):
        (WKInspectorShowResources):
        (WKInspectorShowMainResourceForFrame):
        (WKInspectorIsAttached):
        (WKInspectorAttach):
        (WKInspectorDetach):
        (WKInspectorIsDebuggingJavaScript):
        (WKInspectorToggleJavaScriptDebugging):
        (WKInspectorIsProfilingJavaScript):
        (WKInspectorToggleJavaScriptProfiling):
        (WKInspectorIsProfilingPage):
        (WKInspectorTogglePageProfiling):
        * UIProcess/API/C/WKInspector.h:

2012-10-29  Sergio Villar Senin  <svillar@igalia.com>

        REGRESSION(r130755): All WebKit2 unit tests are failing in WebKit2 bot
        https://bugs.webkit.org/show_bug.cgi?id=98864

        Reviewed by Martin Robinson.

        Use a dedicated directory to store WebKit2 generated resources.

        * UIProcess/API/gtk/tests/GNUmakefile.am:
        * UIProcess/API/gtk/tests/TestMain.cpp:
        (registerGResource): load the resource from the new directory.

2012-10-29  Huang Dongsung  <luxtella@company100.net>

        Coordinated Graphics: Delete cached ShareableSurfaces when purging backingStores.
        https://bugs.webkit.org/show_bug.cgi?id=100705

        Reviewed by Noam Rosenthal.

        LayerTreeCoordinatorProxy can be used after calling
        LayerTreeCoordinatorProxy::purgeBackingStores(). So we should clear cached
        ShareableSurfaces.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):

2012-10-28  Mark Rowe  <mrowe@apple.com>

        Simplify Xcode configuration settings that used to vary between OS versions.

        Reviewed by Dan Bernstein.

        * Configurations/Base.xcconfig:
        * Configurations/WebKit2.xcconfig:

2012-10-28  Mark Rowe  <mrowe@apple.com>

        Remove references to unsupported OS and Xcode versions.

        Reviewed by Anders Carlsson.

        * Configurations/Base.xcconfig:
        * Configurations/CompilerVersion.xcconfig: Removed.
        * Configurations/DebugRelease.xcconfig:
        * Configurations/Version.xcconfig:
        * DerivedSources.make:
        * WebKit2.xcodeproj/project.pbxproj:

2012-10-29  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Add a NetworkingContext for NetworkProcess
        https://bugs.webkit.org/show_bug.cgi?id=100708

        Reviewed by Anders Carlsson.

        Each request will have a context, because these are so lightweight on Mac, and
        other platforms will need ResourceHandle refactored anyway to use NetworkProcess.

        * NetworkProcess/mac/RemoteNetworkingContext.h: Added.
        * NetworkProcess/mac/RemoteNetworkingContext.mm: Added.
        These go mac/ subdirectory, because NetworkingContext interface is different on
        each platform, as ResourceHandle needs dictate.

        * WebKit2.xcodeproj/project.pbxproj:

2012-10-29  Michael Saboff  <msaboff@apple.com>

        buildHTTPHeaders() should use a StringBuilder.appendLiteral() for separator
        https://bugs.webkit.org/show_bug.cgi?id=100689

        Reviewed by Darin Adler.

        Changed from using a String temporary for the separator to using StringBuilder.appendLiteral(": ").

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::buildHTTPHeaders):

2012-10-29  Michael Saboff  <msaboff@apple.com>

        WKStringCopyCFString() should directly use 8 bit Strings data instead of up converting
        https://bugs.webkit.org/show_bug.cgi?id=100579

        Reviewed by Oliver Hunt.

        Changed to use CFStringCreateWithBytes() for 8 bit strings using characters8() for an 8 bit argument string.
        Changed the current call to characters16().

        * Shared/API/c/cf/WKStringCF.cpp:
        (WKStringCopyCFString):

2012-10-29  Enrica Casucci  <enrica@apple.com>

        Add ENABLE_USERSELECT_ALL feature flag.
        https://bugs.webkit.org/show_bug.cgi?id=100559

        Reviewed by Eric Seidel.

        * Configurations/FeatureDefines.xcconfig:

2012-10-29  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][WKTR] Enable Shadow DOM at runtime if compiled with SHADOW_DOM support
        https://bugs.webkit.org/show_bug.cgi?id=100668

        Reviewed by Kenneth Rohde Christiansen.

        Add Bundle API to enable Shadow DOM functionality. This is
        now needed by WebKitTestRunner.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetShadowDOMEnabled):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setShadowDOMEnabled):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-10-29  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Fix cursor change detection in EwkViewImpl::setCursor()
        https://bugs.webkit.org/show_bug.cgi?id=100662

        Reviewed by Kenneth Rohde Christiansen.

        Cursor change detection in EwkViewImpl::setCursor() relies on
        addresses returned by Cursor::platformCursor(). However, the
        value returned is currently assigned to a WKEinaSharedString
        instead of a raw pointer. Therefore, the address is always
        different and we keep recreating Evas Objects for the same
        cursor.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::setCursor): Call smartData() after same cursor
        detection since it is not needed if the cursor has not changed
        and it may affect performance.
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):

2012-10-29  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        Coordinated Graphics: Make sure that we release images immediately when purging resources
        https://bugs.webkit.org/show_bug.cgi?id=100661

        Reviewed by Noam Rosenthal.

        When we purge, we do both on the UI and web process at the same time,
        both are expected to release references of the other process.
        This creates problem when delaying the release of directly composited
        images.

        Release them immediately in that case.

        Fixes the tst_QQuickWebView::removeFromCanvas API test.

        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
        (WebKit::LayerTreeCoordinator::purgeReleasedImages):
        (WebKit):
        (WebKit::LayerTreeCoordinator::purgeBackingStores):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-10-29  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Avoid useless assignment in EwkViewImpl::setCustomTextEncodingName()
        https://bugs.webkit.org/show_bug.cgi?id=100667

        Reviewed by Kenneth Rohde Christiansen.

        Remove useless m_customEncoding assignment in EwkViewImpl::setCustomTextEncodingName()
        since the member is anyway assigned in EwkViewImpl::customTextEncodingName().

        Have EwkViewImpl::setCustomTextEncodingName() take a String in argument instead
        of a const char* to make the API more C++ and since we don't need a const char*
        to assign to m_customEncoding anymore.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::setCustomTextEncodingName):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_setting_encoding_custom_set):

2012-10-29  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [WK2] Enable delegated scrolling as soon as the FrameView is created when using fixed layout
        https://bugs.webkit.org/show_bug.cgi?id=100383

        Reviewed by Kenneth Rohde Christiansen.

        Scroll requests and PageTransitionViewportReady messages depend on
        delegated scrolling being set properly on the FrameView to behave
        properly. Since we were waiting for the viewport information to be
        ready before setting the flag this could cause those messages to be avoided.

        This patch takes most of the flag set by setResizesToContentsUsingLayoutSize
        and apply them as soon as possible in WebPage::setUseFixedLayout and
        WebFrameLoaderClient::transitionToCommittedForNewPage.

        The behavior should be the same except for the following settings which are
        now set outside of USE(TILED_BACKING_STORE) if we're using fixed layout:
        - setAcceleratedCompositingForFixedPositionEnabled
        - setFixedElementsLayoutRelativeToFrame
        - setFixedPositionCreatesStackingContext

        This fixes the tst_QQuickWebView::scrollRequest auto test and improves the
        reliability of the loadVisuallyCommitted signal with pages loaded from disk.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):
        (WebKit::WebPage::setUseFixedLayout):
        (WebKit::WebPage::setFixedLayoutSize):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):

2012-10-29  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        Unreviewed build fix after r132709.

        * Shared/WebMemorySampler.cpp: Include unistd.h for getpid(3).

2012-10-28  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Fix the incorrect use of preprocessor statement in API header.
        https://bugs.webkit.org/show_bug.cgi?id=100610

        Reviewed by Timothy Hatcher.

        Remove the preprocessor statement to check 'ENABLE_INSPECTOR' feature
        from the WKPage.h.

        * UIProcess/API/C/WKPage.cpp:
        (WKPageGetInspector):
        * UIProcess/API/C/WKPage.h:

2012-10-28  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Viewport size does not change when the window size changes
        https://bugs.webkit.org/show_bug.cgi?id=100573

        Reviewed by Kenneth Rohde Christiansen.

        The viewport size is set when we create the window the first time
        and does not change automatically afterwards. When we change the window size,
        we need to explicitly change the viewport size as well.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::createGLSurface):

2012-10-27  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Unreviewed build fix for breakage to minimal bot caused by r132742.

        * WebProcess/WebPage/LayerTreeHost.h:
        (LayerTreeHost):
            Added appropriate ENABLE(REQUEST_ANIMATION_FRAME) flag.

2012-10-27  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r132740.
        http://trac.webkit.org/changeset/132740
        https://bugs.webkit.org/show_bug.cgi?id=100603

        "Causing many crashes" (Requested by weinig on #webkit).

        * UIProcess/Downloads/DownloadProxy.cpp:
        (WebKit::DownloadProxy::DownloadProxy):
        (WebKit::DownloadProxy::invalidate):
        (WebKit):
        * UIProcess/Downloads/DownloadProxy.h:
        (DownloadProxy):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createDownloadProxy):
        (WebKit::WebContext::downloadFinished):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        (WebKit):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        (WebKit::WebPageProxy::~WebPageProxy):
        (WebKit::WebPageProxy::didReceiveMessage):
        (WebKit::WebPageProxy::didReceiveSyncMessage):
        * UIProcess/WebPageProxy.h:
        (CoreIPC):
        (WebPageProxy):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::~WebPageGroupProxy):
        (WebKit):
        (WebKit::WebPageGroupProxy::didReceiveMessage):
        (WebKit::WebPageGroupProxy::WebPageGroupProxy):
        * WebProcess/WebPage/WebPageGroupProxy.h:
        (CoreIPC):
        (WebPageGroupProxy):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveSyncMessage):
        (WebKit::WebProcess::didReceiveMessage):

2012-10-27  Noam Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Animation jerkiness when rAF is enabled
        https://bugs.webkit.org/show_bug.cgi?id=100536

        Reviewed by Kenneth Rohde Christiansen.

        The jerkiness comes from the fact that we schedule animations excessively; That's because
        the previous patch broke requestAnimationFrame behavior during CSS animations, since the
        frame returns right away instead of waiting till the previous frame is actually rendered.

        This patch makes sure that when animations are scheduled, they're only serviced after the
        UI process has actually painted the previous frame. We do so by sending a
        RequestAnimationFrame message to the UI process, which responds with AnimationFrameReady
        after the UI process paints.

        New test: fast/animations/request-animation-frame-too-rapid.html
        Tests that we don't receive an unreasonably high number of callbacks from
        requestAnimationFrame (> 1000FPS).

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::requestAnimationFrame):
        (WebKit::LayerTreeCoordinatorProxy::animationFrameReady):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
        (WebKit):
        (WebKit::LayerTreeRenderer::animationFrameReady):
        (WebKit::LayerTreeRenderer::requestAnimationFrame):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit):
        (WebKit::LayerTreeCoordinator::scheduleAnimation):
        (WebKit::LayerTreeCoordinator::animationFrameReady):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in:

2012-10-27  Sam Weinig  <sam@webkit.org>

        Yet more MessageReceivering
        https://bugs.webkit.org/show_bug.cgi?id=100325

        Reviewed by Anders Carlsson.

        Make DownloadProxy, WebPageProxy, and WebPageGroupProxy MessageReceivers.

        * UIProcess/Downloads/DownloadProxy.cpp:
        (WebKit::DownloadProxy::DownloadProxy):
        (WebKit::DownloadProxy::invalidate):
        (WebKit::DownloadProxy::didReceiveMessage):
        (WebKit::DownloadProxy::didReceiveSyncMessage):
        * UIProcess/Downloads/DownloadProxy.h:
        (DownloadProxy):
        Make a MessageReceiver.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::addMessageReceiver):
        (WebKit::WebContext::removeMessageReceiver):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        Add additional MessageReceiverMap forwards, and stop dealing with DownloadProxy explicitly.
        
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        (WebKit::WebPageProxy::~WebPageProxy):
        (WebKit::WebPageProxy::didReceiveMessage):
        (WebKit::WebPageProxy::didReceiveSyncMessage):
        * UIProcess/WebPageProxy.h:
        Make a MessageReceiver, but keep sub objects using didReceiveMessage for now (like WebPage).
        
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::addMessageReceiver):
        (WebKit::WebProcessProxy::removeMessageReceiver):
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        Give WebProcessProxy a MessageReceiverMap and all the appropriate forwarding methods.
        
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::WebPageGroupProxy):
        (WebKit::WebPageGroupProxy::~WebPageGroupProxy):
        (WebKit::WebPageGroupProxy::didReceiveMessage):
        * WebProcess/WebPage/WebPageGroupProxy.h:
        (WebKit::WebPageGroupProxy::isVisibleToHistoryClient):
        (WebPageGroupProxy):
        Make a MessageReceiver and register/unregister with the WebProcess.

        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveSyncMessage):
        Remove extraneous return statement.
        (WebKit::WebProcess::didReceiveMessage):
        Stop handling WebPageGroupProxy special.

2012-10-27  Sam Weinig  <sam@webkit.org>

        Completely roll out https://bugs.webkit.org/show_bug.cgi?id=99251 (r131686)

        It has caused too many crashes.

        * UIProcess/API/mac/PageClientImpl.mm:
        * UIProcess/API/mac/WKView.mm:
        * UIProcess/API/mac/WKViewInternal.h:
        * UIProcess/API/mac/WKViewPrivate.h:
        * UIProcess/mac/CorrectionPanel.mm:
        * UIProcess/mac/WKFullScreenWindowController.mm:
        * UIProcess/mac/WebFullScreenManagerProxyMac.mm:

2012-10-27  Michael Saboff  <msaboff@apple.com>

        buildHTTPHeaders() should use a StringBuilder instead of a Vector<UChar>
        https://bugs.webkit.org/show_bug.cgi?id=100580

        Reviewed by Oliver Hunt.

        Replaced Vector<UChar> with StringBuilder in the HTTP header construction function buildHTTPHeaders.
        This eliminates 8 -> 16 bit up conversion of the strings involved.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::buildHTTPHeaders):

2012-10-27  Dan Bernstein  <mitz@apple.com>

        REAL_PLATFORM_NAME build setting is no longer needed
        https://bugs.webkit.org/show_bug.cgi?id=100587

        Reviewed by Mark Rowe.

        Removed the definition of REAL_PLATFORM_NAME and replaced references to it with references
        to PLATFORM_NAME.

        * Configurations/Base.xcconfig:
        * Configurations/BaseTarget.xcconfig:
        * Configurations/CompilerVersion.xcconfig:
        * Configurations/FeatureDefines.xcconfig:
        * Configurations/WebKit2.xcconfig:

2012-10-26  Brady Eidson  <beidson@apple.com>

        Have NetworkProcess manage resource load scheduling.
        https://bugs.webkit.org/show_bug.cgi?id=100479

        Reviewed by Alexey Proskuryakov.

        Implement a ResourceLoadScheduler that models the same behavior as WebCore::ResourceLoadScheduler.
        
        The WebProcess scheduler acts as a marshall to the NetworkProcess scheduler via CoreIPC messaging.

        Besides MainResourceLoads which are started directly in the WebProcess, all other loads are now
        started only when the NetworkProcess tells them to start.

        Build-system and messaging related stuff:
        * DerivedSources.make:
        * Platform/CoreIPC/MessageID.h:
        * WebKit2.xcodeproj/project.pbxproj:

        Add a new Network logging channel.
        * Platform/Logging.cpp:
        (WebKit::getChannelFromName):
        * Platform/Logging.h:

        Modeled after ResourceLoadScheduler::HostInformation but more specifically geared towards what NetworkProcess needs to track:
        * NetworkProcess/HostRecord.cpp: Added.
        (WebKit::HostRecord::HostRecord):
        (WebKit::HostRecord::~HostRecord):
        (WebKit::HostRecord::schedule):
        (WebKit::HostRecord::addLoadInProgress):
        (WebKit::HostRecord::remove):
        (WebKit::HostRecord::hasRequests):
        (WebKit::HostRecord::limitRequests):
        * NetworkProcess/HostRecord.h:
        (WebKit::HostRecord::name):
        (WebKit::HostRecord::requestsPending):

        Gateway messaging from the WebResourceLoadScheduler to the NetworkResourceLoadScheduler:
        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
        (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):
        (WebKit::NetworkConnectionToWebProcess::registerObserver):
        (WebKit::NetworkConnectionToWebProcess::unregisterObserver):
        (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
        (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
        (WebKit::NetworkConnectionToWebProcess::didClose):
        (WebKit::NetworkConnectionToWebProcess::scheduleNetworkRequest):
        (WebKit::NetworkConnectionToWebProcess::addLoadInProgress):
        (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
        (WebKit::NetworkConnectionToWebProcess::crossOriginRedirectReceived):
        (WebKit::NetworkConnectionToWebProcess::servePendingRequests):
        (WebKit::NetworkConnectionToWebProcess::suspendPendingRequests):
        (WebKit::NetworkConnectionToWebProcess::resumePendingRequests):
        (WebKit::NetworkConnectionToWebProcess::setSerialLoadingEnabled):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        (NetworkConnectionToWebProcessObserver): Add an observer interface so arbitrary objects can be notified if
          a Network->WebProcess connection closes.
        (WebKit::NetworkConnectionToWebProcessObserver::~NetworkConnectionToWebProcessObserver):
        (WebKit::NetworkConnectionToWebProcess::isSerialLoadingEnabled):
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:

        Represents a request,  ResourceLoadIdentifier, and connection that all correspond to the same pending NetworkLoad:
        * NetworkProcess/NetworkRequest.cpp:
        (WebKit::NetworkRequest::NetworkRequest):
        (WebKit::NetworkRequest::~NetworkRequest):
        (WebKit::NetworkRequest::connectionToWebProcessDidClose): Using the NetworkConnectionToWebProcessObserver interface,
          if the connection closes then clear out the connection pointer for this request that is now irrelevant.
        * NetworkProcess/NetworkRequest.h:
        (WebKit::NetworkRequest::create):
        (WebKit::NetworkRequest::identifier):
        (WebKit::NetworkRequest::connectionToWebProcess):

        Manages connection-per-host scheduling with the same structure as WebCore::ResourceLoadScheduling but also with IPC:
        * NetworkProcess/NetworkResourceLoadScheduler.cpp: Added.
        (WebKit::NetworkResourceLoadScheduler::NetworkResourceLoadScheduler):
        (WebKit::NetworkResourceLoadScheduler::scheduleServePendingRequests):
        (WebKit::NetworkResourceLoadScheduler::requestTimerFired):
        (WebKit::NetworkResourceLoadScheduler::scheduleNetworkRequest):
        (WebKit::NetworkResourceLoadScheduler::addLoadInProgress):
        (WebKit::NetworkResourceLoadScheduler::hostForURL):
        (WebKit::NetworkResourceLoadScheduler::removeLoadIdentifier):
        (WebKit::NetworkResourceLoadScheduler::crossOriginRedirectReceived):
        (WebKit::NetworkResourceLoadScheduler::servePendingRequests):
        (WebKit::NetworkResourceLoadScheduler::servePendingRequestsForHost): Serve as many requests for the host as we should,
          skipping the NetworkRequests who have lost their connection to their WebProcess.
        (WebKit::NetworkResourceLoadScheduler::suspendPendingRequests):
        (WebKit::NetworkResourceLoadScheduler::resumePendingRequests):
        * NetworkProcess/NetworkResourceLoadScheduler.h: Added.
        * NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm: Added.
        (WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost):

        * NetworkProcess/NetworkProcess.h:
        (WebKit::NetworkProcess::networkResourceLoadScheduler): Add a scheduler global to the NetworkProcess.

        A thin derivation of WebCore::ResourceLoadScheduler, most of what WebResourceLoadScheduler does is handle IPC to the NetworkProcess:
        * WebProcess/Network/WebResourceLoadScheduler.cpp:
        (WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler):
        (WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad):
        (WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad):
        (WebKit::WebResourceLoadScheduler::scheduleLoad):
        (WebKit::WebResourceLoadScheduler::addMainResourceLoad):
        (WebKit::WebResourceLoadScheduler::remove):
        (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived):
        (WebKit::WebResourceLoadScheduler::servePendingRequests):
        (WebKit::WebResourceLoadScheduler::suspendPendingRequests):
        (WebKit::WebResourceLoadScheduler::resumePendingRequests):
        (WebKit::WebResourceLoadScheduler::setSerialLoadingEnabled):
        (WebKit::WebResourceLoadScheduler::startResourceLoad):
        * WebProcess/Network/WebResourceLoadScheduler.h:

        Add the ability for the NetworkProcess to message back to the WebProcess telling it to start a resource load:
        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit::NetworkProcessConnection::didReceiveMessage):
        (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
        (WebKit::NetworkProcessConnection::startResourceLoad):
        * WebProcess/Network/NetworkProcessConnection.h:
        * WebProcess/Network/NetworkProcessConnection.messages.in:

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::resourceLoadScheduler): Only return the WebResourceLoadScheduler if NetworkProcess is enabled.

        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::ensureNetworkProcessConnection): Actually keep the NetworkProcessConnection around in a member variable.
        (WebKit::WebProcess::networkConnection):
        * WebProcess/WebProcess.h:
        (WebKit::WebProcess::usesNetworkProcess): Expose this for platform strategies sake.

2012-10-26  Brady Eidson  <beidson@apple.com>

        Crash in WebProces at WebCore::ResourceLoadScheduler::crossOriginRedirectReceived + 78
        https://bugs.webkit.org/show_bug.cgi?id=100554

        Reviewed by Alexey Proskuryakov.

        For now, just have WebPlatformStrategies return the same default resourceLoadScheduler that
        WebCore knows about.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::resourceLoadScheduler):

2012-10-26  Anders Carlsson  <andersca@apple.com>

        Crash when making NPRuntime calls with a null NPP pointer
        https://bugs.webkit.org/show_bug.cgi?id=100569
        <rdar://problem/11726426>
        <rdar://problem/12352836>

        Reviewed by Darin Adler.

        Finally bite the bullet and remove the assertion from NetscapePlugin::fromNPP. The WebKit1 equivalent of this
        function used to return the plug-in currently being initialized in NPP_New, but we've never done that in WebKit2
        and it has never been necessary. The crashes fixed here are not from calls underneath NPP_New so fixing it wouldn't
        do us any good anyway.
        
        Also, make the PluginDestructionProtector handle a null plug-in gracefully.

        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        (WebKit::PluginDestructionProtector::PluginDestructionProtector):
        (PluginDestructionProtector):
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::fromNPP):

2012-10-26  Stephanie Lewis  <slewis@apple.com>

        Add pids to WebMemorySampleFiles.
        https://bugs.webkit.org/show_bug.cgi?id=100449.

        Reviewed by Tim Horton.

        Make it easier to associate WebMemorySamples with a process.  Add the pid to the filename and header.

        * Shared/WebMemorySampler.cpp:
        (WebKit::WebMemorySampler::initializeTimers): Update notification.
        (WebKit::WebMemorySampler::stop): Update notification.
        (WebKit::WebMemorySampler::writeHeaders): dump pid in the header.
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::processDidFinishLaunching): append pid to filename.

2012-10-26  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Build fix after r132647.
        https://bugs.webkit.org/show_bug.cgi?id=100540

        Reviewed by Kenneth Rohde Christiansen.

        AC enabled build is broken after the latest refactoring of EFL WK2.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::informLoadCommitted):
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        (EwkViewImpl::exitAcceleratedCompositingMode):
        (EwkViewImpl::informContentsSizeChange):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        (EwkViewImpl::pageViewportControllerClient):
        (EwkViewImpl::pageViewportController):
        (EwkViewImpl::evasGl):
        (EwkViewImpl::evasGlContext):
        (EwkViewImpl::evasGlSurface):
        (EwkViewImpl::resetEvasGlSurface):
        * UIProcess/API/efl/ewk_view.cpp:
        (mapToWebContent):
        (_ewk_view_smart_calculate):

2012-10-26  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Get rid of C'ism in text checker API
        https://bugs.webkit.org/show_bug.cgi?id=100513

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Text_Checker a C++ class and move the
        WebKitTextChecker code to this new class. This
        gets rid of the C'ism in the text checker code
        and make it consistent with other Ewk classes.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        * UIProcess/API/efl/ewk_settings.cpp:
        (spellCheckingLanguagesSetUpdate):
        (ewk_settings_continuous_spell_checking_enabled_set):
        (ewk_settings_spell_checking_available_languages_get):
        (ewk_settings_spell_checking_languages_get):
        * UIProcess/API/efl/ewk_text_checker.cpp:
        (ClientCallbacks):
        (textCheckerEnchant):
        (clientCallbacks):
        (isContinuousSpellCheckingEnabled):
        (setContinuousSpellCheckingEnabled):
        (uniqueSpellDocumentTag):
        (closeSpellDocumentWithTag):
        (checkSpellingOfString):
        (guessesForWord):
        (learnWord):
        (ignoreWord):
        (Ewk_Text_Checker):
        (Ewk_Text_Checker::availableSpellCheckingLanguages):
        (Ewk_Text_Checker::updateSpellCheckingLanguages):
        (Ewk_Text_Checker::loadedSpellCheckingLanguages):
        (Ewk_Text_Checker::initialize):
        * UIProcess/API/efl/ewk_text_checker_private.h:
        (Ewk_Text_Checker):
        * UIProcess/efl/WebKitTextChecker.cpp: Removed.
        * UIProcess/efl/WebKitTextChecker.h: Removed.

2012-10-26  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Clean up construction/destruction code in Ewk_view
        https://bugs.webkit.org/show_bug.cgi?id=100232

        Reviewed by Kenneth Rohde Christiansen.

        Simplified a lot of initialization and destruction code of Ewk_view and EwkViewImpl
        put all the impl stuff to its constructor and destructor, also made EwkViewImpl member
        variables private.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (pageViewMap):
        (EwkViewImpl::addToPageViewMap):
        (EwkViewImpl::removeFromPageViewMap):
        (EwkViewImpl::viewFromPageViewMap):
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::~EwkViewImpl):
        (EwkViewImpl::wkPage):
        (EwkViewImpl::title):
        (EwkViewImpl::setThemePath):
        (EwkViewImpl::customTextEncodingName):
        (EwkViewImpl::setCustomTextEncodingName):
        (EwkViewImpl::informIconChange):
        (EwkViewImpl::informWebProcessCrashed):
        (EwkViewImpl::updateTextInputState):
        (EwkViewImpl::informURLChange):
        (EwkViewImpl::onFaviconChanged):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        (EwkViewImpl::view):
        (EwkViewImpl::page):
        (EwkViewImpl::ewkContext):
        (EwkViewImpl::backForwardList):
        * UIProcess/API/efl/ewk_settings.cpp:
        (Ewk_Settings::preferences):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_focus_in):
        (_ewk_view_smart_focus_out):
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (_ewk_view_smart_key_down):
        (_ewk_view_smart_key_up):
        (_ewk_view_on_show):
        (_ewk_view_on_hide):
        (_ewk_view_smart_add):
        (_ewk_view_smart_del):
        (_ewk_view_smart_calculate):
        (_ewk_view_smart_color_set):
        (createEwkViewSmartClass):
        (createEwkView):
        (ewk_view_base_add):
        (ewk_view_smart_add):
        (ewk_view_add_with_context):
        (ewk_view_url_set):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_stop):
        (ewk_view_load_progress_get):
        (ewk_view_scale_set):
        (ewk_view_scale_get):
        (ewk_view_device_pixel_ratio_set):
        (ewk_view_device_pixel_ratio_get):
        (ewk_view_back):
        (ewk_view_forward):
        (ewk_view_intent_deliver):
        (ewk_view_back_possible):
        (ewk_view_forward_possible):
        (ewk_view_back_forward_list_get):
        (ewk_view_html_string_load):
        (ewk_view_text_find):
        (ewk_view_text_find_highlight_clear):
        (ewk_view_text_matches_count):
        (ewk_view_feed_touch_event):
        (ewk_view_inspector_show):
        (ewk_view_inspector_close):
        (ewk_view_pagination_mode_set):
        (ewk_view_pagination_mode_get):

2012-10-26  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Initialize Ewk_Context class members in initialization list
        https://bugs.webkit.org/show_bug.cgi?id=100503

        Reviewed by Kenneth Rohde Christiansen.

        Move Ewk_Context class members initialization from the
        constructor body to the initialization list for
        efficiency.

        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):

2012-10-26  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        LayerTreeCoordinator: Make sure that dependent layers are deleted before their directly composited image
        https://bugs.webkit.org/show_bug.cgi?id=100495

        Reviewed by Kenneth Rohde Christiansen.

        Since r128980 layers removals are delayed until we flush the layer tree.
        This causes a crash if such a layer had a directly composited image since
        the image is now deleted while the layer is still active in the UI process
        and tries to access a deleted backing store.

        Fix it by delaying the directly composited image removal as well.

        Fixes a crash in tst_QQuickWebView::basicRenderingSanity since showWebView is
        called first and loads direct-image-compositing.html.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h: 
        (LayerTreeRenderer): Remove unused variable.
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
        (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-10-26  Regina Chung  <heejin.r.chung@samsung.com>

        [EFL][WK2] Enable WebGL
        https://bugs.webkit.org/show_bug.cgi?id=97652

        Reviewed by Gyuyoung Kim.

        Set WebGLEnabled to true when WebGL is enabled.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_initialize):

2012-10-26  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add Ewk_Color_Picker API
        https://bugs.webkit.org/show_bug.cgi?id=100472

        Reviewed by Kenneth Rohde Christiansen.

        Move the color picker code out of EwkViewImpl and into
        a new Ewk_Color_Picker class to avoid cluttering the
        view code.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::requestColorPicker):
        (EwkViewImpl::dismissColorPicker):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_color_picker.cpp: Added.
        (Ewk_Color_Picker::Ewk_Color_Picker):
        (Ewk_Color_Picker::setColor):
        (Ewk_Color_Picker::color):
        (ewk_color_picker_color_set):
        (ewk_color_picker_color_get):
        * UIProcess/API/efl/ewk_color_picker.h: Added.
        * UIProcess/API/efl/ewk_color_picker_private.h: Added.
        (Ewk_Color_Picker):
        (Ewk_Color_Picker::create):
        * UIProcess/API/efl/ewk_view.cpp:
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp: Added.
        (onColorPickerDone):
        (setColorPickerColor):
        (showColorPicker):
        (hideColorPicker):
        (hideColorPickerByRemovingElement):
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::showColorPicker):

2012-10-26  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r132601.
        http://trac.webkit.org/changeset/132601
        https://bugs.webkit.org/show_bug.cgi?id=100494

        It broke the Qt build (Requested by Ossy on #webkit).

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_initialize):

2012-10-26  Regina Chung  <heejin.r.chung@samsung.com>

        [EFL][WK2] Enable WebGL
        https://bugs.webkit.org/show_bug.cgi?id=97652

        Reviewed by Gyuyoung Kim.

        Set WebGLEnabled to true when WebGL is enabled.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_initialize):

2012-10-26  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        Add feature flags for CSS Device Adaptation
        https://bugs.webkit.org/show_bug.cgi?id=95960

        Reviewed by Kenneth Rohde Christiansen.

        * Configurations/FeatureDefines.xcconfig:

2012-10-26  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Move input method code out of EwkViewImpl
        https://bugs.webkit.org/show_bug.cgi?id=100468

        Reviewed by Kenneth Rohde Christiansen.

        Move input method code out of EwkViewImpl and into
        a new InputMethodContextEfl class to avoid cluttering
        the view code.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::inputMethodContext):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_key_down):
        * UIProcess/efl/InputMethodContextEfl.cpp: Added.
        (WebKit):
        (WebKit::InputMethodContextEfl::InputMethodContextEfl):
        (WebKit::InputMethodContextEfl::~InputMethodContextEfl):
        (WebKit::InputMethodContextEfl::onIMFInputSequenceComplete):
        (WebKit::InputMethodContextEfl::onIMFPreeditSequenceChanged):
        (WebKit::InputMethodContextEfl::createIMFContext):
        (WebKit::InputMethodContextEfl::handleMouseUpEvent):
        (WebKit::InputMethodContextEfl::handleKeyDownEvent):
        (WebKit::InputMethodContextEfl::updateTextInputState):
        * UIProcess/efl/InputMethodContextEfl.h: Added.
        (WebKit):
        (InputMethodContextEfl):
        (WebKit::InputMethodContextEfl::create):
        * UIProcess/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::updateTextInputState):

2012-10-26  Jaehun Lim  <ljaehun.lim@samsung.com>

        Implement {get,set}FloatValueForKey
        https://bugs.webkit.org/show_bug.cgi?id=100452

        Reviewed by Anders Carlsson.

        Implement missing functions in WebPreferencesStore.

        * Shared/WebPreferencesStore.cpp:
        (WebKit::WebPreferencesStore::setFloatValueForKey):
        (WebKit):
        (WebKit::WebPreferencesStore::getFloatValueForKey):

2012-10-25  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Use per destination ID message receivers for DownloadProxy.
        https://bugs.webkit.org/show_bug.cgi?id=100342

        Reviewed by Anders Carlsson.

        Per destination ID message receivers were proposed in r132386.
        IPC messages of DownloadProxy use download ID for destination ID,
        so the messages should be handled by the messsage receiver that was
        newly proposed.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::createDownloadProxy):
        (WebKit::WebContext::downloadFinished):
        (WebKit::WebContext::addMessageReceiver):
        (WebKit):
        (WebKit::WebContext::removeMessageReceiver):
        * UIProcess/WebContext.h:
        (WebContext):

2012-10-25  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add Ewk_Popup_Menu API
        https://bugs.webkit.org/show_bug.cgi?id=100404

        Reviewed by Kenneth Rohde Christiansen.

        Add new Ewk_Popup_Menu API to complete the existing
        Ewk_Popup_Menu_Item one. This way, we can move the
        popup menu code out of Ewk_View.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::~EwkViewImpl):
        (EwkViewImpl::requestPopupMenu):
        (EwkViewImpl::closePopupMenu):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_popup_menu.cpp: Added.
        (Ewk_Popup_Menu::Ewk_Popup_Menu):
        (Ewk_Popup_Menu::~Ewk_Popup_Menu):
        (Ewk_Popup_Menu::close):
        (Ewk_Popup_Menu::items):
        (Ewk_Popup_Menu::selectedIndex):
        (Ewk_Popup_Menu::setSelectedIndex):
        (ewk_popup_menu_close):
        (ewk_popup_menu_selected_index_set):
        (ewk_popup_menu_selected_index_get):
        (ewk_popup_menu_items_get):
        * UIProcess/API/efl/ewk_popup_menu.h: Added.
        * UIProcess/API/efl/ewk_popup_menu_private.h: Copied from Source/WebKit2/UIProcess/efl/WebPopupMenuProxyEfl.cpp.
        (WebKit):
        (Ewk_Popup_Menu):
        (Ewk_Popup_Menu::create):
        * UIProcess/API/efl/ewk_view.cpp:
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp: Added.
        (checkBasicPopupMenuItem):
        (selectItemAfterDelayed):
        (showPopupMenu):
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        * UIProcess/efl/WebPopupMenuProxyEfl.cpp:
        (WebKit::WebPopupMenuProxyEfl::hidePopupMenu):

2012-10-25  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Close the IconDatabase before the WebContext gets destroyed
        https://bugs.webkit.org/show_bug.cgi?id=100389

        Reviewed by Alexis Menard.

        The WebContext normally gets destroyed 60 seconds after the last page is
        closed and will take down the WebIconDatabase with itself if nothing
        holds a reference to it at this moment.
        We need to close the IconDatabase explicitely before this happens
        to terminate it cleanly and avoid leaking its thread.

        * UIProcess/qt/QtWebIconDatabaseClient.cpp:
        (WebKit::QtWebIconDatabaseClient::~QtWebIconDatabaseClient):

2012-10-25  Dominik Röttsches  <dominik.rottsches@intel.com>

        Conditionalize XHR timeout support
        https://bugs.webkit.org/show_bug.cgi?id=100356

        Reviewed by Adam Barth.

        Adding XHR_TIMEOUT feature to conditionalize this on ports without network backend support.
        Defaults to ON on Mac since the Mac NSUrlConnection based backend has setTimeoutInterval support.

        * Configurations/FeatureDefines.xcconfig:

2012-10-25  Tim Horton  <timothy_horton@apple.com>

        Only full-page PDFPlugins should purport to handle page scale changes
        https://bugs.webkit.org/show_bug.cgi?id=99635

        Reviewed by Sam Weinig.

        PDFPlugin should only handle page scale factor changes itself if it's in the main frame.
        Subframe PDFs will act like images, zooming with the page.

        * WebProcess/Plugins/PDF/PDFPlugin.h:
        (PDFPlugin): Move implementation of handlesPageScaleFactor() to PDFPlugin.mm.
        * WebProcess/Plugins/PDF/PDFPlugin.mm:
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Only copy PDFLayerController's default autoscale magnification to PluginView's
        notion of the current scale factor if we're supposed to be handling page scale factor changes.
        (WebKit::PDFPlugin::geometryDidChange): Only update PDFLayerController's magnification from the page scale factor
        if we're supposed to be handling page scale factor changes.
        (WebKit::PDFPlugin::handlesPageScaleFactor): We should only handle page scale factor changes if we're in the main frame.

2012-10-25  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Move non-API classes out of UIProcess/API/efl
        https://bugs.webkit.org/show_bug.cgi?id=100391

        Reviewed by Kenneth Rohde Christiansen.

        Move non-API classes from UIProcess/API/efl to
        UIProcess/efl for clarity.

        * PlatformEfl.cmake:
        * UIProcess/efl/BatteryProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/BatteryProvider.cpp.
        (toBatteryProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (BatteryProvider::~BatteryProvider):
        (BatteryProvider::create):
        (BatteryProvider::BatteryProvider):
        (BatteryProvider::startUpdating):
        (BatteryProvider::stopUpdating):
        (BatteryProvider::didChangeBatteryStatus):
        * UIProcess/efl/BatteryProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/BatteryProvider.h.
        (WebKit):
        (BatteryProvider):
        * UIProcess/efl/NetworkInfoProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/NetworkInfoProvider.cpp.
        (toNetworkInfoProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (getBandwidthCallback):
        (isMeteredCallback):
        (NetworkInfoProvider::create):
        (NetworkInfoProvider::NetworkInfoProvider):
        (NetworkInfoProvider::~NetworkInfoProvider):
        (NetworkInfoProvider::bandwidth):
        (NetworkInfoProvider::metered):
        (NetworkInfoProvider::startUpdating):
        (NetworkInfoProvider::stopUpdating):
        * UIProcess/efl/NetworkInfoProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/NetworkInfoProvider.h.
        (WebKit):
        (NetworkInfoProvider):
        * UIProcess/efl/PageClientImpl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/PageClientImpl.cpp.
        (WebKit):
        (WebKit::PageClientImpl::PageClientImpl):
        (WebKit::PageClientImpl::~PageClientImpl):
        (WebKit::PageClientImpl::viewImpl):
        (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::processDidCrash):
        (WebKit::PageClientImpl::didRelaunchProcess):
        (WebKit::PageClientImpl::pageClosed):
        (WebKit::PageClientImpl::toolTipChanged):
        (WebKit::PageClientImpl::setCursor):
        (WebKit::PageClientImpl::setCursorHiddenUntilMouseMoves):
        (WebKit::PageClientImpl::didChangeViewportProperties):
        (WebKit::PageClientImpl::registerEditCommand):
        (WebKit::PageClientImpl::clearAllEditCommands):
        (WebKit::PageClientImpl::canUndoRedo):
        (WebKit::PageClientImpl::executeUndoRedo):
        (WebKit::PageClientImpl::convertToDeviceSpace):
        (WebKit::PageClientImpl::convertToUserSpace):
        (WebKit::PageClientImpl::screenToWindow):
        (WebKit::PageClientImpl::windowToScreen):
        (WebKit::PageClientImpl::doneWithKeyEvent):
        (WebKit::PageClientImpl::doneWithTouchEvent):
        (WebKit::PageClientImpl::createPopupMenuProxy):
        (WebKit::PageClientImpl::createContextMenuProxy):
        (WebKit::PageClientImpl::createColorChooserProxy):
        (WebKit::PageClientImpl::setFindIndicator):
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
        (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
        (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame):
        (WebKit::PageClientImpl::didCommitLoadForMainFrame):
        (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation):
        (WebKit::PageClientImpl::customRepresentationZoomFactor):
        (WebKit::PageClientImpl::setCustomRepresentationZoomFactor):
        (WebKit::PageClientImpl::flashBackingStoreUpdates):
        (WebKit::PageClientImpl::findStringInCustomRepresentation):
        (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation):
        (WebKit::PageClientImpl::updateTextInputState):
        (WebKit::PageClientImpl::handleDownloadRequest):
        (WebKit::PageClientImpl::pageDidRequestScroll):
        (WebKit::PageClientImpl::didChangeContentsSize):
        (WebKit::PageClientImpl::didRenderFrame):
        (WebKit::PageClientImpl::pageTransitionViewportReady):
        * UIProcess/efl/PageClientImpl.h: Renamed from Source/WebKit2/UIProcess/API/efl/PageClientImpl.h.
        (WebKit):
        (PageClientImpl):
        (WebKit::PageClientImpl::create):
        (WebKit::PageClientImpl::setPageViewportController):
        * UIProcess/efl/PageViewportControllerClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/PageViewportControllerClientEfl.cpp.
        (WebKit):
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::~PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::drawingArea):
        (WebKit::PageViewportControllerClientEfl::setRendererActive):
        (WebKit::PageViewportControllerClientEfl::display):
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::setViewportPosition):
        (WebKit::PageViewportControllerClientEfl::setContentsScale):
        (WebKit::PageViewportControllerClientEfl::didResumeContent):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        (WebKit::PageViewportControllerClientEfl::didChangeViewportAttributes):
        (WebKit::PageViewportControllerClientEfl::setController):
        * UIProcess/efl/PageViewportControllerClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/PageViewportControllerClientEfl.h.
        (WebKit):
        (PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::create):
        (WebKit::PageViewportControllerClientEfl::viewSize):
        (WebKit::PageViewportControllerClientEfl::scaleFactor):
        (WebKit::PageViewportControllerClientEfl::scrollPosition):
        * UIProcess/efl/VibrationProvider.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/VibrationProvider.cpp.
        (Ewk_Vibration_Client):
        (Ewk_Vibration_Client::Ewk_Vibration_Client):
        (toVibrationProvider):
        (vibrateCallback):
        (cancelVibrationCallback):
        (VibrationProvider::create):
        (VibrationProvider::VibrationProvider):
        (VibrationProvider::~VibrationProvider):
        (VibrationProvider::vibrate):
        (VibrationProvider::cancelVibration):
        (VibrationProvider::setVibrationClientCallbacks):
        * UIProcess/efl/VibrationProvider.h: Renamed from Source/WebKit2/UIProcess/API/efl/VibrationProvider.h.
        (WebKit):
        (VibrationProvider):
        * UIProcess/efl/WebKitTextChecker.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/WebKitTextChecker.cpp.
        (WebKit):
        (WebKit::isContinuousSpellCheckingEnabled):
        (WebKit::setContinuousSpellCheckingEnabled):
        (WebKit::uniqueSpellDocumentTag):
        (WebKit::closeSpellDocumentWithTag):
        (WebKit::checkSpellingOfString):
        (WebKit::guessesForWord):
        (WebKit::learnWord):
        (WebKit::ignoreWord):
        (WebKit::availableSpellCheckingLanguages):
        (WebKit::updateSpellCheckingLanguages):
        (WebKit::loadedSpellCheckingLanguages):
        * UIProcess/efl/WebKitTextChecker.h: Renamed from Source/WebKit2/UIProcess/API/efl/WebKitTextChecker.h.
        (WebKit):

2012-10-25  Brady Eidson  <beidson@apple.com>

        Allow LoaderStrategy to override the ResourceLoadScheduler
        https://bugs.webkit.org/show_bug.cgi?id=100355

        Reviewed by Anders Carlsson.

        Add a WebKit2 subclass of ResourceLoadScheduler that currently adds no new functionality:
        * WebProcess/Network/WebResourceLoadScheduler.cpp: 
        (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler):
        * WebProcess/Network/WebResourceLoadScheduler.h: 

        WebProcess hangs on to the default shared WebResourceLoadScheduler:
        * WebProcess/WebProcess.h:
        (WebKit::WebProcess::webResourceLoadScheduler):

        If the NetworkProcess is enabled, return the new WebResourceLoadScheduler:
        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::resourceLoadScheduler):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:

        * WebKit2.xcodeproj/project.pbxproj:

2012-10-25  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Remove some C'ism from EwkView
        https://bugs.webkit.org/show_bug.cgi?id=100370

        Reviewed by Kenneth Rohde Christiansen.

        Remove a lot of C'ism from EwkView:
        - Make more members private and add C++ methods to
        EwkViewImpl for the public C API to use
        - Use smart pointers when possible instead of raw
        ones
        - Use C++ naming conventions for callback functions
        and define them as static methods in EwkViewImpl.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::onIMFInputSequenceComplete):
        (EwkViewImpl::onIMFPreeditSequenceChanged):
        (EwkViewImpl::createIMFContext):
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::~EwkViewImpl):
        (EwkViewImpl::setCursor):
        (EwkViewImpl::setColorPickerColor):
        (EwkViewImpl::isFocused):
        (EwkViewImpl::isVisible):
        (EwkViewImpl::title):
        (EwkViewImpl::inputMethodContext):
        (EwkViewImpl::themePath):
        (EwkViewImpl::setThemePath):
        (EwkViewImpl::customTextEncodingName):
        (EwkViewImpl::setCustomTextEncodingName):
        (EwkViewImpl::setMouseEventsEnabled):
        (EwkViewImpl::setTouchEventsEnabled):
        (EwkViewImpl::informIconChange):
        (EwkViewImpl::requestColorPicker):
        (EwkViewImpl::dismissColorPicker):
        (EwkViewImpl::updateTextInputState):
        (EwkViewImpl::informURLChange):
        (EwkViewImpl::onMouseDown):
        (EwkViewImpl::onMouseUp):
        (EwkViewImpl::onMouseMove):
        (EwkViewImpl::feedTouchEvents):
        (EwkViewImpl::onTouchDown):
        (EwkViewImpl::onTouchUp):
        (EwkViewImpl::onTouchMove):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebCore):
        (EwkViewImpl::ewkContext):
        (EwkViewImpl::settings):
        (EwkViewImpl):
        (EwkViewImpl::url):
        (EwkViewImpl::faviconURL):
        (EwkViewImpl::mouseEventsEnabled):
        (EwkViewImpl::touchEventsEnabled):
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::isViewFocused):
        (WebKit::PageClientImpl::isViewVisible):
        (WebKit::PageClientImpl::didRelaunchProcess):
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_settings_private.h:
        (Ewk_Settings::create):
        (Ewk_Settings::Ewk_Settings):
        (Ewk_Settings):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_key_down):
        (_ewk_view_smart_add):
        (ewk_view_context_get):
        (ewk_view_url_get):
        (ewk_view_icon_url_get):
        (ewk_view_settings_get):
        (ewk_view_title_get):
        (ewk_view_theme_set):
        (ewk_view_theme_get):
        (ewk_view_setting_encoding_custom_get):
        (ewk_view_setting_encoding_custom_set):
        (ewk_view_mouse_events_enabled_set):
        (ewk_view_mouse_events_enabled_get):
        (ewk_view_color_picker_color_set):
        (ewk_view_touch_events_enabled_set):
        (ewk_view_touch_events_enabled_get):
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):

2012-10-25  Anders Carlsson  <andersca@apple.com>

        Assertion failure trying to dispatch notification messages
        https://bugs.webkit.org/show_bug.cgi?id=100387
        <rdar://problem/12573195>

        Reviewed by Jessie Berlin.

        Pass a zero destination ID when sending WebNotificationManagerProxy messages; they are not
        used by the UI process and since the WebNotificationManagerProxy message receiver is global
        passing a non-zero destination ID would cause the aforementioned assertion failure.

        * WebProcess/Notifications/WebNotificationManager.cpp:
        (WebKit::WebNotificationManager::cancel):
        (WebKit::WebNotificationManager::clearNotifications):
        (WebKit::WebNotificationManager::didDestroyNotification):

2012-10-25  Alexey Proskuryakov  <ap@apple.com>

        REGRESSION (r131686): Crashes in NSToolTipManager
        https://bugs.webkit.org/show_bug.cgi?id=99792

        Now that NSToolTip related parts of this change have been rolled out, roll out
        the initial crash fix, too. We have no direct evidence that it's to blame, but it
        doesn't serve any specific purpose any more.

        * UIProcess/API/mac/WKView.mm: (-[WKView viewDidMoveToWindow]):

2012-10-25  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Memory leak in _ewk_view_preedit_changed()
        https://bugs.webkit.org/show_bug.cgi?id=100380

        Reviewed by Antonio Gomes.

        Fix memory leak in _ewk_view_preedit_changed(). The buffer
        returned by ecore_imf_context_preedit_string_get() is never
        freed.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (_ewk_view_preedit_changed):

2012-10-25  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Regression(132392) infinite loop when displaying certain animations.
        https://bugs.webkit.org/show_bug.cgi?id=100288

        Reviewed by Kenneth Rohde Christiansen.

        When PageClientImpl::setViewNeedsDisplay is called, start a 0 length timer.
        That breaks the synchronous loop we were experiencing when ewk_view_display
        was called directly.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::displayTimerFired):
        (EwkViewImpl::redrawRegion):
        * UIProcess/API/efl/EwkViewImpl.h:
        (EwkViewImpl):

2012-10-25  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        Add setMediaTypeOverride to window.internals.settings
        https://bugs.webkit.org/show_bug.cgi?id=100249

        Reviewed by Kenneth Rohde Christiansen.

        Exported WebCore::Settings::setMediaTypeOverride(WTF::String const&) for WIN port.

        * win/WebKit2.def:

2012-10-25  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2][EFL] Add ewk_view_pagination_mode_set/get() APIs
        https://bugs.webkit.org/show_bug.cgi?id=100213

        Reviewed by Gyuyoung Kim.

        Add ewk_view_pagination_mode_set/get() APIs for paginated display.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_pagination_mode_set):
        (ewk_view_pagination_mode_get):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-25  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][AC] Fix build break when AC is enabled
        https://bugs.webkit.org/show_bug.cgi?id=100367

        Unreviewed build fix after r132405.

        * UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):

2012-10-25  Byungwoo Lee  <bw80.lee@samsung.com>

        [EFL][WK2] Add missing namespace.
        https://bugs.webkit.org/show_bug.cgi?id=100251

        Reviewed by Kenneth Rohde Christiansen.

        Add 'WebKit' namespace for BatteryProvider, NetworkInfoProvider and
        VibrationProvider.

        * UIProcess/API/efl/BatteryProvider.h:
        (WebKit):
        * UIProcess/API/efl/NetworkInfoProvider.cpp:
        * UIProcess/API/efl/NetworkInfoProvider.h:
        (WebKit):
        * UIProcess/API/efl/VibrationProvider.cpp:
        * UIProcess/API/efl/VibrationProvider.h:
        (WebKit):
        * UIProcess/API/efl/ewk_context_private.h:
        (WebKit):
        (Ewk_Context):

2012-10-25  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Detach WebContext's clients from QtWebContext
        https://bugs.webkit.org/show_bug.cgi?id=100224

        Reviewed by Simon Hausmann.

        The lifetime of WebContext isn't bound to QtWebContext and we wouldn't
        keep a reference to our WebContext and would create a new one if a new
        QQuickWebView/QtWebContext was created after we destroyed our QtWebContext.
        This would cause a new WebContext and a new web process and somehow the
        new WebContext could pick the IPC messages from the old WebProcess
        and this would cause the new download client to receive messages about
        downloads he doesn't know about and crash.

        We assumed in the past that we would need multiple WebContext to allow
        multiple web processes but this assumption doesn't hold anymore with
        the work on ProcessModelMultipleSecondaryProcesses.
        This patch enforces the use of a single WebContext by:
        - Holding a single instance of QtWebIconDatabaseClient and QtDownloadManager
        statically in QtWebContext
        - Removing the context ID from QWebIconImageProvider's URLs
        - Using QtWebContext as a temporary wrapper handle on WebContext to
        initialize the WebContext's clients and allow us creating the first web page

        platformInvalidateContext is used to clean up static global instances
        when the WebContext is getting destroyed.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::handleDownloadRequest):
        * UIProcess/API/qt/qwebiconimageprovider.cpp:
        (QWebIconImageProvider::iconURLForPageURLInContext):
        (QWebIconImageProvider::requestImage):
        * UIProcess/qt/QtWebContext.cpp:
        (WebKit):
        (WebKit::QtWebContext::QtWebContext):
        (WebKit::QtWebContext::~QtWebContext):
        (WebKit::QtWebContext::create):
        (WebKit::QtWebContext::defaultContext):
        (WebKit::QtWebContext::downloadManager):
        (WebKit::QtWebContext::iconDatabase):
        (WebKit::QtWebContext::invalidateContext):
        * UIProcess/qt/QtWebContext.h:
        (QtWebContext):
        * UIProcess/qt/QtWebIconDatabaseClient.cpp:
        (WebKit::QtWebIconDatabaseClient::QtWebIconDatabaseClient):
        * UIProcess/qt/QtWebIconDatabaseClient.h:
        (WebKit):
        (QtWebIconDatabaseClient):
        * UIProcess/qt/WebContextQt.cpp:
        (WebKit::WebContext::platformInvalidateContext):

2012-10-25  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Make the context injected bundle client static
        https://bugs.webkit.org/show_bug.cgi?id=100223

        Reviewed by Kenneth Rohde Christiansen.

        It doesn't need any data from QtWebContext.

        * UIProcess/qt/QtWebContext.cpp:
        (WebKit::didReceiveMessageFromInjectedBundle):
        (WebKit):
        (WebKit::initializeContextInjectedBundleClient):
        (WebKit::QtWebContext::defaultContext):
        * UIProcess/qt/QtWebContext.h:
        (QtWebContext):

2012-10-25  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Get rid of Ewk_View private C API (Part 2)
        https://bugs.webkit.org/show_bug.cgi?id=100331

        Reviewed by Kenneth Rohde Christiansen.

        Convert most of the remaining Ewk_View private C API
        into C++ methods in EwkViewImpl class. Only one private
        C function remains but it will be taken care of in a
        later patch to clean up the view construction code.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::addToPageViewMap):
        (EwkViewImpl::removeFromPageViewMap):
        (EwkViewImpl::viewFromPageViewMap):
        (EwkViewImpl::fromEvasObject):
        (EwkViewImpl::informLoadFinished):
        (EwkViewImpl::informProvisionalLoadRedirect):
        (EwkViewImpl::informProvisionalLoadStarted):
        (EwkViewImpl::informWebProcessCrashed):
        (EwkViewImpl::informContentsSizeChange):
        (EwkViewImpl::requestPopupMenu):
        (EwkViewImpl::requestJSAlertPopup):
        (EwkViewImpl::requestJSConfirmPopup):
        (EwkViewImpl::requestJSPromptPopup):
        (EwkViewImpl::informDatabaseQuotaReached):
        (EwkViewImpl::updateTextInputState):
        (EwkViewImpl::informURLChange):
        (EwkViewImpl::createNewPage):
        (EwkViewImpl::closePage):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebKit):
        (EwkViewImpl):
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::processDidCrash):
        (WebKit::PageClientImpl::createPopupMenuProxy):
        (WebKit::PageClientImpl::updateTextInputState):
        (WebKit::PageClientImpl::didChangeContentsSize):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_del):
        (_ewk_view_initialize):
        (ewk_view_url_set):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_html_string_load):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/efl/ContextHistoryClientEfl.cpp:
        (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
        (WebKit::ContextHistoryClientEfl::didPerformClientRedirect):
        (WebKit::ContextHistoryClientEfl::didPerformServerRedirect):
        (WebKit::ContextHistoryClientEfl::didUpdateHistoryTitle):
        * UIProcess/efl/FindClientEfl.cpp:
        * UIProcess/efl/FormClientEfl.cpp:
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didSameDocumentNavigationForFrame):
        * UIProcess/efl/PageLoadClientEfl.h:
        * UIProcess/efl/PagePolicyClientEfl.cpp:
        * UIProcess/efl/PagePolicyClientEfl.h:
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::closePage):
        (WebKit::PageUIClientEfl::createNewPage):
        (WebKit::PageUIClientEfl::runJavaScriptAlert):
        (WebKit::PageUIClientEfl::runJavaScriptConfirm):
        (WebKit::PageUIClientEfl::runJavaScriptPrompt):
        (WebKit::PageUIClientEfl::exceededDatabaseQuota):
        * UIProcess/efl/PageUIClientEfl.h:
        * UIProcess/efl/ResourceLoadClientEfl.h:
        * UIProcess/efl/WebPopupMenuProxyEfl.cpp:
        (WebKit::WebPopupMenuProxyEfl::WebPopupMenuProxyEfl):
        (WebKit::WebPopupMenuProxyEfl::showPopupMenu):
        (WebKit::WebPopupMenuProxyEfl::hidePopupMenu):
        * UIProcess/efl/WebPopupMenuProxyEfl.h:
        (WebKit::WebPopupMenuProxyEfl::create):
        (WebPopupMenuProxyEfl):

2012-10-24  Joone Hur  <joone.hur@intel.com>

        [EFL][AC] Unreviewed, fix build break when AC is enabled

        Fix build break after r132405.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::enterAcceleratedCompositingMode):
        * UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):

2012-10-24  Anders Carlsson  <andersca@apple.com>

        Make it a compile error to send a sync message as async (and vice versa)
        https://bugs.webkit.org/show_bug.cgi?id=100285

        Reviewed by Sam Weinig.

        Add an "isSync" boolean to each generated message struct and add compile asserts to the message senders.

        * Platform/CoreIPC/Connection.h:
        (CoreIPC::Connection::send):
        (CoreIPC::Connection::sendSync):
        * Platform/CoreIPC/MessageSender.h:
        (CoreIPC::MessageSender::send):
        (CoreIPC::MessageSender::sendSync):
        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        * Scripts/webkit2/messages_unittest.py:
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::send):
        (WebKit::WebProcessProxy::sendSync):

2012-10-24  Kiran Muppala  <cmuppala@apple.com>

        Disable auto termination of WebKit2 processes on mac
        https://bugs.webkit.org/show_bug.cgi?id=100176

        Reviewed by Alexey Proskuryakov.

        Disable WebKit2 auto termination by taking corresponding assertion
        until UI process is enhanced to determine when it is safe to enable it.

        * NetworkProcess/mac/NetworkProcessMainMac.mm:
        (WebKit::NetworkProcessMain):
        * PluginProcess/mac/PluginProcessMainMac.mm:
        (WebKit::PluginProcessMain):
        * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm:
        (WebKit::SharedWorkerProcessMain):
        * WebProcess/mac/WebProcessInitialization.mm:
        (WebKit::InitializeWebProcess):

2012-10-24  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Get rid of Ewk_View private C API (Part 1)
        https://bugs.webkit.org/show_bug.cgi?id=100230

        Reviewed by Kenneth Rohde Christiansen.

        Remove part of the Ewk_View private C API and replace
        it by C++ methods in EwkViewImpl class. Eventually,
        all the private C functions will be removed but it
        will be done in several patches.

        * UIProcess/API/C/efl/WKView.cpp:
        (WKViewGetPage):
        * UIProcess/API/efl/EwkViewImpl.cpp:
        (_ewk_view_commit):
        (_ewk_view_preedit_changed):
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::smartData):
        (EwkViewImpl::fromEvasObject):
        (EwkViewImpl::wkPage):
        (EwkViewImpl::setCursor):
        (EwkViewImpl::redrawRegion):
        (EwkViewImpl::informDownloadJobCancelled):
        (EwkViewImpl::informDownloadJobFailed):
        (EwkViewImpl::informDownloadJobFinished):
        (EwkViewImpl::informDownloadJobRequested):
        (EwkViewImpl::informNewFormSubmissionRequest):
        (EwkViewImpl::enterFullScreen):
        (EwkViewImpl::exitFullScreen):
        (EwkViewImpl::setImageData):
        (EwkViewImpl::informLoadError):
        (EwkViewImpl::informLoadFinished):
        (EwkViewImpl::informLoadProgress):
        (EwkViewImpl::informProvisionalLoadFailed):
        (EwkViewImpl::informLoadCommitted):
        (EwkViewImpl::informProvisionalLoadRedirect):
        (EwkViewImpl::informProvisionalLoadStarted):
        (EwkViewImpl::informNavigationPolicyDecision):
        (EwkViewImpl::informNewWindowPolicyDecision):
        (EwkViewImpl::informResourceLoadStarted):
        (EwkViewImpl::informResourceLoadResponse):
        (EwkViewImpl::informResourceLoadFailed):
        (EwkViewImpl::informResourceLoadFinished):
        (EwkViewImpl::informResourceRequestSent):
        (EwkViewImpl::informTitleChange):
        (EwkViewImpl::informTooltipTextChange):
        (EwkViewImpl::informTextFound):
        (EwkViewImpl::size):
        (EwkViewImpl::informIconChange):
        (EwkViewImpl::informIntentRequest):
        (EwkViewImpl::informIntentServiceRegistration):
        (EwkViewImpl::createGLSurface):
        (EwkViewImpl::enterAcceleratedCompositingMode):
        (EwkViewImpl::exitAcceleratedCompositingMode):
        (EwkViewImpl::requestColorPicker):
        (EwkViewImpl::dismissColorPicker):
        (EwkViewImpl::informBackForwardListChange):
        * UIProcess/API/efl/EwkViewImpl.h:
        (WebCore):
        (EwkViewImpl):
        (EwkViewImpl::view):
        (EwkViewImpl::page):
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::PageClientImpl):
        (WebKit::PageClientImpl::viewImpl):
        (WebKit):
        (WebKit::PageClientImpl::createDrawingAreaProxy):
        (WebKit::PageClientImpl::setViewNeedsDisplay):
        (WebKit::PageClientImpl::viewSize):
        (WebKit::PageClientImpl::isViewFocused):
        (WebKit::PageClientImpl::isViewVisible):
        (WebKit::PageClientImpl::processDidCrash):
        (WebKit::PageClientImpl::didRelaunchProcess):
        (WebKit::PageClientImpl::toolTipChanged):
        (WebKit::PageClientImpl::setCursor):
        (WebKit::PageClientImpl::createPopupMenuProxy):
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
        (WebKit::PageClientImpl::updateTextInputState):
        (WebKit::PageClientImpl::handleDownloadRequest):
        (WebKit::PageClientImpl::didChangeContentsSize):
        * UIProcess/API/efl/PageClientImpl.h:
        (WebKit::PageClientImpl::create):
        (PageClientImpl):
        * UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::drawingArea):
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        * UIProcess/API/efl/PageViewportControllerClientEfl.h:
        (WebKit::PageViewportControllerClientEfl::create):
        (PageViewportControllerClientEfl):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (Ewk_Download_Job::Ewk_Download_Job):
        (Ewk_Download_Job::viewImpl):
        * UIProcess/API/efl/ewk_download_job_private.h:
        (Ewk_Download_Job::create):
        (Ewk_Download_Job):
        * UIProcess/API/efl/ewk_view.cpp:
        (pageViewMap):
        (addToPageViewMap):
        (removeFromPageViewMap):
        (_ewk_view_on_favicon_changed):
        (_ewk_view_smart_focus_in):
        (_ewk_view_smart_focus_out):
        (mapToWebContent):
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (_ewk_view_smart_key_down):
        (_ewk_view_smart_key_up):
        (_ewk_view_on_show):
        (_ewk_view_on_hide):
        (_ewk_view_impl_del):
        (_ewk_view_smart_del):
        (_ewk_view_smart_calculate):
        (_ewk_view_smart_color_set):
        (_ewk_view_initialize):
        (_ewk_view_add_with_smart):
        (ewk_view_context_get):
        (ewk_view_url_update):
        (ewk_view_url_set):
        (ewk_view_url_get):
        (ewk_view_icon_url_get):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_stop):
        (ewk_view_settings_get):
        (ewk_view_title_get):
        (ewk_view_text_input_state_update):
        (ewk_view_load_progress_get):
        (ewk_view_scale_set):
        (ewk_view_scale_get):
        (ewk_view_device_pixel_ratio_set):
        (ewk_view_device_pixel_ratio_get):
        (ewk_view_theme_set):
        (ewk_view_theme_get):
        (ewk_view_back):
        (ewk_view_forward):
        (ewk_view_intent_deliver):
        (ewk_view_back_possible):
        (ewk_view_forward_possible):
        (ewk_view_back_forward_list_get):
        (ewk_view_html_string_load):
        (ewk_view_setting_encoding_custom_get):
        (ewk_view_setting_encoding_custom_set):
        (ewk_view_page_create):
        (ewk_view_text_find):
        (ewk_view_text_find_highlight_clear):
        (ewk_view_text_matches_count):
        (ewk_view_contents_size_changed):
        (ewk_view_popup_menu_request):
        (ewk_view_popup_menu_close):
        (ewk_view_popup_menu_select):
        (ewk_view_mouse_events_enabled_set):
        (ewk_view_mouse_events_enabled_get):
        (ewk_view_webprocess_crashed):
        (ewk_view_color_picker_color_set):
        (ewk_view_feed_touch_event):
        (ewk_view_touch_events_enabled_set):
        (ewk_view_touch_events_enabled_get):
        (ewk_view_inspector_show):
        (ewk_view_inspector_close):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/cairo/BackingStoreCairo.cpp:
        (WebKit::BackingStore::incorporateUpdate):
        * UIProcess/efl/DownloadManagerEfl.cpp:
        (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
        (WebKit::DownloadManagerEfl::didFail):
        (WebKit::DownloadManagerEfl::didCancel):
        (WebKit::DownloadManagerEfl::didFinish):
        (WebKit::DownloadManagerEfl::registerDownload):
        * UIProcess/efl/DownloadManagerEfl.h:
        (DownloadManagerEfl):
        * UIProcess/efl/FindClientEfl.cpp:
        (WebKit::FindClientEfl::didFindString):
        (WebKit::FindClientEfl::didFailToFindString):
        (WebKit::FindClientEfl::FindClientEfl):
        * UIProcess/efl/FindClientEfl.h:
        (WebKit::FindClientEfl::create):
        (FindClientEfl):
        * UIProcess/efl/FormClientEfl.cpp:
        (WebKit::FormClientEfl::willSubmitForm):
        (WebKit::FormClientEfl::FormClientEfl):
        * UIProcess/efl/FormClientEfl.h:
        (WebKit::FormClientEfl::create):
        (FormClientEfl):
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit::PageLoadClientEfl::didReceiveTitleForFrame):
        (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
        (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
        (WebKit::PageLoadClientEfl::didChangeProgress):
        (WebKit::PageLoadClientEfl::didFinishLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didStartProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didReceiveServerRedirectForProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didCommitLoadForFrame):
        (WebKit::PageLoadClientEfl::didChangeBackForwardList):
        (WebKit::PageLoadClientEfl::didSameDocumentNavigationForFrame):
        (WebKit::PageLoadClientEfl::PageLoadClientEfl):
        * UIProcess/efl/PageLoadClientEfl.h:
        (WebKit::PageLoadClientEfl::create):
        (PageLoadClientEfl):
        (WebKit::PageLoadClientEfl::viewImpl):
        * UIProcess/efl/PagePolicyClientEfl.cpp:
        (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
        (WebKit::PagePolicyClientEfl::PagePolicyClientEfl):
        * UIProcess/efl/PagePolicyClientEfl.h:
        (WebKit::PagePolicyClientEfl::create):
        (PagePolicyClientEfl):
        * UIProcess/efl/PageUIClientEfl.cpp:
        (WebKit::PageUIClientEfl::closePage):
        (WebKit::PageUIClientEfl::createNewPage):
        (WebKit::PageUIClientEfl::runJavaScriptAlert):
        (WebKit::PageUIClientEfl::runJavaScriptConfirm):
        (WebKit::PageUIClientEfl::runJavaScriptPrompt):
        (WebKit::PageUIClientEfl::showColorPicker):
        (WebKit::PageUIClientEfl::hideColorPicker):
        (WebKit::PageUIClientEfl::exceededDatabaseQuota):
        (WebKit::PageUIClientEfl::focus):
        (WebKit::PageUIClientEfl::unfocus):
        (WebKit::PageUIClientEfl::takeFocus):
        (WebKit::PageUIClientEfl::getWindowFrame):
        (WebKit::PageUIClientEfl::setWindowFrame):
        (WebKit::PageUIClientEfl::PageUIClientEfl):
        * UIProcess/efl/PageUIClientEfl.h:
        (WebKit::PageUIClientEfl::create):
        (PageUIClientEfl):
        * UIProcess/efl/ResourceLoadClientEfl.cpp:
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
        (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):
        (WebKit::ResourceLoadClientEfl::didFinishLoadForResource):
        (WebKit::ResourceLoadClientEfl::didFailLoadForResource):
        (WebKit::ResourceLoadClientEfl::ResourceLoadClientEfl):
        (WebKit::ResourceLoadClientEfl::~ResourceLoadClientEfl):
        * UIProcess/efl/ResourceLoadClientEfl.h:
        (WebKit::ResourceLoadClientEfl::create):
        (ResourceLoadClientEfl):
        * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
        (WebKit::WebFullScreenManagerProxy::enterFullScreen):
        (WebKit::WebFullScreenManagerProxy::exitFullScreen):
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):
        * UIProcess/efl/WebPageProxyEfl.cpp:
        (WebKit::WebPageProxy::viewWidget):

2012-10-24  Brady Eidson  <beidson@apple.com>

        Add a strategy for loader customization.
        https://bugs.webkit.org/show_bug.cgi?id=100278

        Reviewed by Alexey Proskuryakov.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::createLoaderStrategy):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
        (WebPlatformStrategies):

2012-10-24  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Enable threaded/IPC animations
        https://bugs.webkit.org/show_bug.cgi?id=93146

        Reviewed by Caio Marcelo de Oliveira Filho.

        In some cases there are pending changes in the layers, but no actual changes to the frame.
        In that case we should unlock the animations.

        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):

2012-10-24  Noam Rosenthal  <noam.rosenthal@nokia.com>

        [Qt-on-Mac] GraphicsSurfaces should not create a global IOSurface handle
        https://bugs.webkit.org/show_bug.cgi?id=89885

        Reviewed by Kenneth Rohde Christiansen.

        Use mach_port instead of global tokens for IOSurfaces.
        Global IOSurfaces are accessible from other processes, while mach_ports can only be shared
        directly via IPC.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-10-24  Anders Carlsson  <andersca@apple.com>

        Add per destination ID message receivers
        https://bugs.webkit.org/show_bug.cgi?id=100276

        Reviewed by Andreas Kling.

        Extend MessageReceiverMap to handle adding message receivers for a given destinationID/receiver name pair.
        Use this to make every WebPage object a message receiver.

        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC):
        (CoreIPC::MessageReceiverMap::removeMessageReceiver):
        (CoreIPC::MessageReceiverMap::invalidate):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::~WebPage):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::addMessageReceiver):
        (WebKit):
        (WebKit::WebProcess::removeMessageReceiver):
        (WebKit::WebProcess::didReceiveSyncMessage):
        (WebKit::WebProcess::didReceiveMessage):
        * WebProcess/WebProcess.h:
        (WebProcess):

2012-10-24  Timothy Hatcher  <timothy@apple.com>

        Make the Inspector WKView/WebView become the first responder when bringToFront is called.

        https://bugs.webkit.org/show_bug.cgi?id=100209

        Reviewed by Joseph Pecoraro.

        * UIProcess/mac/WebInspectorProxyMac.mm:
        (WebKit::WebInspectorProxy::platformBringToFront): Make the Inspector WKView become the first responder.

2012-10-23  Alexey Proskuryakov  <ap@apple.com>

        Add a strategy for shared workers
        https://bugs.webkit.org/show_bug.cgi?id=100165

        Reviewed by Brady Eidson.

        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::createPasteboardStrategy):
        (WebKit::WebPlatformStrategies::createSharedWorkerStrategy):
        (WebKit::WebPlatformStrategies::createVisitedLinkStrategy):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:

2012-10-23  Sam Weinig  <sam@webkit.org>

        Move a few more WebProcess sub-objects to be MessageReceivers
        https://bugs.webkit.org/show_bug.cgi?id=100186

        Reviewed by Anders Carlsson.

        * WebProcess/Battery/WebBatteryManager.cpp:
        (WebKit::WebBatteryManager::WebBatteryManager):
        * WebProcess/Battery/WebBatteryManager.h:
        (WebBatteryManager):
        * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
        (WebKit::WebIconDatabaseProxy::WebIconDatabaseProxy):
        (WebKit):
        * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
        (WebIconDatabaseProxy):
        * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
        (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
        * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
        (WebNetworkInfoManager):
        * WebProcess/Notifications/WebNotificationManager.cpp:
        (WebKit::WebNotificationManager::WebNotificationManager):
        * WebProcess/Notifications/WebNotificationManager.h:
        (WebNotificationManager):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveMessage):
        * WebProcess/soup/WebSoupRequestManager.cpp:
        (WebKit::WebSoupRequestManager::WebSoupRequestManager):
        * WebProcess/soup/WebSoupRequestManager.h:
        (WebSoupRequestManager):

2012-10-23  Anders Carlsson  <andersca@apple.com>

        encode should take an ArgumentEncoder reference
        https://bugs.webkit.org/show_bug.cgi?id=100183

        Reviewed by Jessie Berlin.

        * Platform/CoreIPC/ArgumentCoder.h:
        (CoreIPC::ArgumentCoder::encode):
        * Platform/CoreIPC/Arguments.h:
        (CoreIPC::Arguments0::encode):
        (CoreIPC::Arguments1::encode):
        (CoreIPC::Arguments2::encode):
        (CoreIPC::Arguments3::encode):
        (CoreIPC::Arguments4::encode):
        (CoreIPC::Arguments5::encode):
        (CoreIPC::Arguments6::encode):
        (CoreIPC::Arguments7::encode):
        (CoreIPC::Arguments8::encode):
        (CoreIPC::Arguments10::encode):
        * Platform/CoreIPC/Attachment.cpp:
        (CoreIPC::Attachment::encode):
        * Platform/CoreIPC/Attachment.h:
        (Attachment):
        * Platform/CoreIPC/DataReference.cpp:
        (CoreIPC::DataReference::encode):
        * Platform/CoreIPC/DataReference.h:
        (DataReference):
        * Platform/CoreIPC/StringReference.cpp:
        (CoreIPC::StringReference::encode):
        * Platform/CoreIPC/StringReference.h:
        (StringReference):
        * Platform/CoreIPC/mac/MachPort.h:
        (CoreIPC::MachPort::encode):
        * Platform/SharedMemory.h:
        (Handle):
        * Platform/mac/SharedMemoryMac.cpp:
        (WebKit::SharedMemory::Handle::encode):
        * PluginProcess/PluginCreationParameters.cpp:
        (WebKit::PluginCreationParameters::encode):
        * PluginProcess/PluginCreationParameters.h:
        (PluginCreationParameters):
        * Shared/DictionaryPopupInfo.cpp:
        (WebKit::DictionaryPopupInfo::encode):
        * Shared/DictionaryPopupInfo.h:
        (DictionaryPopupInfo):
        * Shared/EditorState.cpp:
        (WebKit::EditorState::encode):
        * Shared/EditorState.h:
        (EditorState):
        * Shared/FontInfo.cpp:
        (WebKit::FontInfo::encode):
        * Shared/FontInfo.h:
        (FontInfo):
        * Shared/LayerTreeContext.h:
        (LayerTreeContext):
        * Shared/Network/NetworkProcessCreationParameters.cpp:
        (WebKit::NetworkProcessCreationParameters::encode):
        * Shared/Network/NetworkProcessCreationParameters.h:
        (NetworkProcessCreationParameters):
        * Shared/OriginAndDatabases.cpp:
        (WebKit::OriginAndDatabases::encode):
        * Shared/OriginAndDatabases.h:
        (OriginAndDatabases):
        * Shared/PlatformPopupMenuData.cpp:
        (WebKit::PlatformPopupMenuData::encode):
        * Shared/PlatformPopupMenuData.h:
        (PlatformPopupMenuData):
        * Shared/Plugins/NPIdentifierData.cpp:
        (WebKit::NPIdentifierData::encode):
        * Shared/Plugins/NPIdentifierData.h:
        (NPIdentifierData):
        * Shared/Plugins/NPVariantData.cpp:
        (WebKit::NPVariantData::encode):
        * Shared/Plugins/NPVariantData.h:
        (NPVariantData):
        * Shared/Plugins/PluginProcessCreationParameters.cpp:
        (WebKit::PluginProcessCreationParameters::encode):
        * Shared/Plugins/PluginProcessCreationParameters.h:
        (PluginProcessCreationParameters):
        * Shared/PrintInfo.cpp:
        (WebKit::PrintInfo::encode):
        * Shared/PrintInfo.h:
        (PrintInfo):
        * Shared/SandboxExtension.h:
        (Handle):
        (HandleArray):
        * Shared/SecurityOriginData.cpp:
        (WebKit::SecurityOriginData::encode):
        * Shared/SecurityOriginData.h:
        (SecurityOriginData):
        * Shared/SessionState.cpp:
        (WebKit::SessionState::encode):
        * Shared/SessionState.h:
        (SessionState):
        * Shared/ShareableBitmap.cpp:
        (WebKit::ShareableBitmap::Handle::encode):
        * Shared/ShareableBitmap.h:
        (Handle):
        * Shared/SharedWorkerProcessCreationParameters.cpp:
        (WebKit::SharedWorkerProcessCreationParameters::encode):
        * Shared/SharedWorkerProcessCreationParameters.h:
        (SharedWorkerProcessCreationParameters):
        * Shared/StatisticsData.cpp:
        (WebKit::StatisticsData::encode):
        * Shared/StatisticsData.h:
        (StatisticsData):
        * Shared/StringPairVector.h:
        (WebKit::StringPairVector::encode):
        * Shared/UpdateInfo.cpp:
        (WebKit::UpdateInfo::encode):
        * Shared/UpdateInfo.h:
        (UpdateInfo):
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode):
        * Shared/WebContextMenuItemData.cpp:
        (WebKit::WebContextMenuItemData::encode):
        * Shared/WebContextMenuItemData.h:
        (WebContextMenuItemData):
        * Shared/WebEvent.cpp:
        (WebKit::WebEvent::encode):
        * Shared/WebEvent.h:
        (WebEvent):
        (WebMouseEvent):
        (WebWheelEvent):
        (WebKeyboardEvent):
        (WebGestureEvent):
        (WebPlatformTouchPoint):
        (WebTouchEvent):
        * Shared/WebGeolocationPosition.cpp:
        (WebKit::WebGeolocationPosition::Data::encode):
        * Shared/WebGeolocationPosition.h:
        (Data):
        * Shared/WebGestureEvent.cpp:
        (WebKit::WebGestureEvent::encode):
        * Shared/WebHitTestResult.cpp:
        (WebKit::WebHitTestResult::Data::encode):
        * Shared/WebHitTestResult.h:
        (Data):
        * Shared/WebKeyboardEvent.cpp:
        (WebKit::WebKeyboardEvent::encode):
        * Shared/WebMouseEvent.cpp:
        (WebKit::WebMouseEvent::encode):
        * Shared/WebNavigationDataStore.h:
        (WebKit::WebNavigationDataStore::encode):
        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode):
        * Shared/WebPageCreationParameters.h:
        (WebPageCreationParameters):
        * Shared/WebPageGroupData.cpp:
        (WebKit::WebPageGroupData::encode):
        * Shared/WebPageGroupData.h:
        (WebPageGroupData):
        * Shared/WebPopupItem.cpp:
        (WebKit::WebPopupItem::encode):
        * Shared/WebPopupItem.h:
        * Shared/WebPreferencesStore.cpp:
        (WebKit::WebPreferencesStore::encode):
        * Shared/WebPreferencesStore.h:
        (WebPreferencesStore):
        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):
        * Shared/WebWheelEvent.cpp:
        (WebKit::WebWheelEvent::encode):
        * Shared/mac/AttributedString.h:
        (AttributedString):
        * Shared/mac/AttributedString.mm:
        (WebKit::AttributedString::encode):
        * Shared/mac/ColorSpaceData.h:
        (ColorSpaceData):
        * Shared/mac/ColorSpaceData.mm:
        (WebKit::ColorSpaceData::encode):
        * Shared/mac/LayerTreeContextMac.mm:
        (WebKit::LayerTreeContext::encode):
        * Shared/mac/PlatformCertificateInfo.h:
        (PlatformCertificateInfo):
        * Shared/mac/PlatformCertificateInfo.mm:
        (WebKit::PlatformCertificateInfo::encode):
        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::Handle::encode):
        (WebKit::SandboxExtension::HandleArray::encode):
        * Shared/mac/SecItemRequestData.cpp:
        (WebKit::SecItemRequestData::encode):
        * Shared/mac/SecItemRequestData.h:
        * Shared/mac/SecItemResponseData.cpp:
        (WebKit::SecItemResponseData::encode):
        * Shared/mac/SecItemResponseData.h:
        (SecItemResponseData):
        * Shared/mac/SecKeychainItemRequestData.cpp:
        (WebKit::SecKeychainItemRequestData::encode):
        * Shared/mac/SecKeychainItemRequestData.h:
        * Shared/mac/SecKeychainItemResponseData.cpp:
        (WebKit::SecKeychainItemResponseData::encode):
        * Shared/mac/SecKeychainItemResponseData.h:
        (SecKeychainItemResponseData):
        * UIProcess/WebContextUserMessageCoders.h:
        (WebKit::WebContextUserMessageEncoder::encode):
        * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
        (WebKit::InjectedBundleUserMessageEncoder::encode):
        * WebProcess/Plugins/Plugin.cpp:
        (WebKit::Plugin::Parameters::encode):
        * WebProcess/Plugins/Plugin.h:
        (Parameters):

2012-10-24  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Move the QQuickWebViewExperimental pointer to QQuickWebViewPrivate
        https://bugs.webkit.org/show_bug.cgi?id=100253

        Reviewed by Kenneth Rohde Christiansen.

        We'll need to avoid placing data in QQuickWebView to preserve
        its binary compatibility once it's public.
        Also make the QQuickWebViewExperimental constructor private.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::QQuickWebViewPrivate):
        (QQuickWebViewExperimental::QQuickWebViewExperimental):
        (QQuickWebView::QQuickWebView):
        (QQuickWebView::experimental):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):

2012-10-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Ewk_Settings refactoring
        https://bugs.webkit.org/show_bug.cgi?id=100233

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Settings private implementation is now C++ class which allows direct internal
        access to WebKit::WebPreferences.

        * UIProcess/API/efl/EwkViewImpl.cpp:
        (EwkViewImpl::EwkViewImpl):
        * UIProcess/API/efl/ewk_settings.cpp:
        (Ewk_Settings::preferences):
        (ewk_settings_fullscreen_enabled_set):
        (ewk_settings_fullscreen_enabled_get):
        (ewk_settings_javascript_enabled_set):
        (ewk_settings_javascript_enabled_get):
        (ewk_settings_loads_images_automatically_set):
        (ewk_settings_loads_images_automatically_get):
        (ewk_settings_developer_extras_enabled_set):
        (ewk_settings_developer_extras_enabled_get):
        (ewk_settings_file_access_from_file_urls_allowed_set):
        (ewk_settings_file_access_from_file_urls_allowed_get):
        (ewk_settings_frame_flattening_enabled_set):
        (ewk_settings_frame_flattening_enabled_get):
        (ewk_settings_dns_prefetching_enabled_set):
        (ewk_settings_dns_prefetching_enabled_get):
        * UIProcess/API/efl/ewk_settings_private.h:
        (WebKit):
        (Ewk_Settings):
        (Ewk_Settings::Ewk_Settings):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_initialize):

2012-10-24  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][AC] Fix build break when AC is enabled
        https://bugs.webkit.org/show_bug.cgi?id=100245

        Reviewed by Kenneth Rohde Christiansen.

        Fix build break after r132337.

        * UIProcess/API/efl/EwkViewImpl.h:
        * UIProcess/API/efl/ewk_view.cpp:

2012-10-24  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL] run-webkit-tests writes garbage on stderr when running on Xvfb
        https://bugs.webkit.org/show_bug.cgi?id=100243

        Reviewed by Kenneth Rohde Christiansen.

        These errors generate noise on the reports and in some cases, like when
        running perf tests, makes the test fail. By using Xext, we can add a
        dummy handler to ignore these errors.

        * PlatformEfl.cmake:
        * WebProcess/efl/WebProcessMainEfl.cpp:
        (dummyExtensionErrorHandler):
        (WebKit::WebProcessMainEfl):

2012-10-24  Eric Carlson  <eric.carlson@apple.com>

        Allow ports to override text track rendering style
        https://bugs.webkit.org/show_bug.cgi?id=97800
        <rdar://problem/12044964>

        Reviewed by Maciej Stachowiak.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface): Initialize new WKSI function pointers.

2012-10-24  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] Expose useful WebCore::Settings
        https://bugs.webkit.org/show_bug.cgi?id=100239

        Reviewed by Kenneth Rohde Christiansen.

        Expose the two settings CaretBrowsingEnabled and NotificationsEnabled.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        (QWebPreferences::caretBrowsingEnabled):
        (QWebPreferences::setCaretBrowsingEnabled):
        (QWebPreferences::notificationsEnabled):
        (QWebPreferences::setNotificationsEnabled):
        * UIProcess/API/qt/qwebpreferences_p.h:
        * UIProcess/API/qt/qwebpreferences_p_p.h:

2012-10-24  Zeno Albisser  <zeno@webkit.org>

        Implement GraphicsSurface for Windows.
        https://bugs.webkit.org/show_bug.cgi?id=98147

        Add encode and decode implementation for GraphicsSurfaceToken on Windows.

        Reviewed by Kenneth Rohde Christiansen.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-10-24  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][WK2] ASSERTION FAILED: edje(): could not paint native HTML part due to missing theme
        https://bugs.webkit.org/show_bug.cgi?id=100227

        Reviewed by Kenneth Rohde Christiansen.

        Browser crashes on loading any page due to missing theme after
        the web process has crashed and recovered.

        This patch reset the theme when the web process is recovered to
        avoid a crash.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::didRelaunchProcess):

2012-10-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r132333.
        http://trac.webkit.org/changeset/132333
        https://bugs.webkit.org/show_bug.cgi?id=100234

        Crashes many tests on the EFL-WK2 bot. (Requested by rakuco on
        #webkit).

        * Target.pri:
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::updateTextCheckerState):

2012-10-24  Christophe Dumez  <christophe.dumez@intel.com> and Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Move Ewk_View_Private_Data out of ewk_view.cpp
        https://bugs.webkit.org/show_bug.cgi?id=100228

        Reviewed by Gyuyoung Kim.

        Move Ewk_View_Private_Data out of ewk_view.cpp and
        rename it to EwkViewImpl. This is a first step towards
        getting rid of C'ism in Ewk_View.

        In a future, we will make EwkViewImpl a proper C++
        class and get rid of the private ewk_view C API so
        that WebKit code interacts with EwkViewImpl instead
        of Evas_Object.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EwkViewImpl.cpp: Added.
        (_ewk_view_commit):
        (_ewk_view_preedit_changed):
        (_ewk_view_imf_context_destroy):
        (_ewk_view_imf_context_create):
        (EwkViewImpl::EwkViewImpl):
        (EwkViewImpl::~EwkViewImpl):
        * UIProcess/API/efl/EwkViewImpl.h: Added.
        (WebKit):
        (EwkViewImpl):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_priv_del):
        (_ewk_view_smart_add):
        * UIProcess/API/efl/ewk_view.h:

2012-10-24  Ryuan Choi  <ryuan.choi@gmail.com>

        [EFL][WK2] Crash when passing NULL instead of ewk_view instance
        https://bugs.webkit.org/show_bug.cgi?id=100078

        Reviewed by Gyuyoung Kim.

        Although applications should pass valid ewk_view to call ewk_view_XXX,
        ewk_view_XXX should not be crashed.

        * UIProcess/API/efl/ewk_view.cpp:
        Checked null and early exited from EWK_VIEW_TYPE_CHECK if error occured.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp: Added test case.
        (TEST_F):

2012-10-24  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make find and form clients C++ classes
        https://bugs.webkit.org/show_bug.cgi?id=100199

        Reviewed by Kenneth Rohde Christiansen.

        Make form and find client C++ classes to move away
        from C'ism in WK2 EFL port. The new classes have been
        moved up to UIProcess/efl instead of UIProcess/API/efl
        since it is not part of the public API.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        * UIProcess/efl/FindClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_find_client.cpp.
        (WebKit):
        (WebKit::toFindClientEfl):
        (WebKit::FindClientEfl::didFindString):
        (WebKit::FindClientEfl::didFailToFindString):
        (WebKit::FindClientEfl::FindClientEfl):
        * UIProcess/efl/FindClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_find_client_private.h.
        (WebKit):
        (FindClientEfl):
        (WebKit::FindClientEfl::create):
        * UIProcess/efl/FormClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_form_client.cpp.
        (WebKit):
        (WebKit::toFormClientEfl):
        (WebKit::FormClientEfl::willSubmitForm):
        (WebKit::FormClientEfl::FormClientEfl):
        * UIProcess/efl/FormClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_form_client_private.h.
        (WebKit):
        (FormClientEfl):
        (WebKit::FormClientEfl::create):

2012-10-24  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        [EFL] WebKitTestRunner needs to turn on 'setContinuousSpellCheckingEnabled'
        https://bugs.webkit.org/show_bug.cgi?id=93611

        Reviewed by Hajime Morita.

        When WebKitTestRunner turns on the spelling feature with the resetStateToConsistentValues() method,
        it happens that the WebProcess is still not launched (although it is already created).
        In this case, isValid() method returns false.

        This fix sends a message to the WebProcess messages queue, and the message
        will be handled once the WebProcess is ready.

        * Target.pri:
        Adds missing files to compile spellcheking feature for WebKit2-Qt
        to use WebKit C API from WKTextChecker.h.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::updateTextCheckerState):
        Uses canSendMessage() method instead of isValid() to check whether the message to
        the WebProcess can be sent.

2012-10-24  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Black screen in web inspector window with AC on
        https://bugs.webkit.org/show_bug.cgi?id=100168

        Reviewed by Kenneth Rohde Christiansen.

        When ACCELERATED_COMPOSITING flag is turned on, and using X11,
        pass "opengl_x11" engine name to ecore_evas_new when creating a
        web inspector window. It is guaranteed to be available, because
        we wouldn't be able to create a main window if it wasn't.

        (WebKit::WebInspectorProxy::platformCreateInspectorPage):

2012-10-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make History client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100104

        Reviewed by Kenneth Rohde Christiansen.

        Created ContextHistoryClientEfl class to encapsulate history client code for EFL.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        (ewk_context_history_callbacks_set):
        * UIProcess/API/efl/ewk_context_history_client.cpp: Removed.
        * UIProcess/API/efl/ewk_context_history_client_private.h: Removed.
        * UIProcess/API/efl/ewk_context_private.h:
        (WebKit):
        (Ewk_Context):
        * UIProcess/efl/ContextHistoryClientEfl.cpp: Added.
        (WebKit):
        (WebKit::toContextHistoryClientEfl):
        (WebKit::ContextHistoryClientEfl::didNavigateWithNavigationData):
        (WebKit::ContextHistoryClientEfl::didPerformClientRedirect):
        (WebKit::ContextHistoryClientEfl::didPerformServerRedirect):
        (WebKit::ContextHistoryClientEfl::didUpdateHistoryTitle):
        (WebKit::ContextHistoryClientEfl::populateVisitedLinks):
        (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
        (WebKit::ContextHistoryClientEfl::setCallbacks):
        * UIProcess/efl/ContextHistoryClientEfl.h: Added.
        (WebKit):
        (ContextHistoryClientEfl):
        (WebKit::ContextHistoryClientEfl::create):

2012-10-23  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to get the WebKitWebView associated to a WebKitDownload to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=99836

        Reviewed by Martin Robinson.

        Add webkit_download_get_web_view() to get the WebKitWebView that
        initiated the download and webkit_web_view_download_uri() to start
        a new download associated to a WebKitWebView.

        * UIProcess/API/gtk/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest): Call
        webkitWebViewBaseHandleDownloadRequest().
        * UIProcess/API/gtk/PageClientImpl.h:
        (PageClientImpl): Add handleDownloadRequest().
        * UIProcess/API/gtk/WebKitDownload.cpp:
        (webkitDownloadSetWebView): Set the WebKitWebView associated to
        the download.
        (webkit_download_get_web_view): Public method to get the
        WebKitWebView associated to the download.
        * UIProcess/API/gtk/WebKitDownload.h:
        * UIProcess/API/gtk/WebKitDownloadPrivate.h:
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (webkit_web_context_download_uri): Use the new helper
        webkitWebContextStartDownload().
        (webkitWebContextStartDownload): Helper function to start a new
        download that is also used by WebKitWebView.
        * UIProcess/API/gtk/WebKitWebContextPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewHandleDownloadRequest): Call
        webkitDownloadSetWebView() to associate the download with the
        WebKitWebView.
        (webkitWebViewConstructed): Set a download request handler.
        (webkit_web_view_download_uri): Public method to start a new
        download associated to the web view.
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (webkitWebViewBaseSetDownloadRequestHandler): Set a function
        pointer to be called when a new download is request for the web
        view.
        (webkitWebViewBaseHandleDownloadRequest): Call the download
        request handler if any.
        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/tests/TestDownloads.cpp:
        (testDownloadLocalFile):
        (testDownloadLocalFileError):
        (testDownloadRemoteFile):
        (testDownloadRemoteFileError):
        (testWebViewDownloadURI):
        (testPolicyResponseDownload):
        (beforeAll):
        * UIProcess/PageClient.h:
        (PageClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::receivedPolicyDecision):
        (WebKit):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):

2012-10-23  Dan Bernstein  <mitz@apple.com>

        WebKit2 part of <rdar://problem/2966974> [mac] Kerning and ligatures are not enabled by default
        https://bugs.webkit.org/show_bug.cgi?id=100188

        Reviewed by Sam Weinig.

        * UIProcess/mac/WebContextMac.mm:
        (WebKit::registerUserDefaultsIfNeeded): Added. Registers a value of YES for the
        WebKitKerningAndLigaturesEnabledByDefault user default if it has not been registered yet.
        (WebKit::WebContext::platformInitializeWebProcess): Added a call to
        registerUserDefaultsIfNeeded, and changed to refer to the defaults key by name.

2012-10-23  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Enable threaded/IPC animations
        https://bugs.webkit.org/show_bug.cgi?id=93146

        Unreviewed build fix, some function names changed between review and landing.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::encodeTimingFunction):
        (CoreIPC::decodeTimingFunction):
        (CoreIPC::::encode):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
        (WebCore):

2012-10-23  Sam Weinig  <sam@webkit.org>

        Stop using NSHomeDirectory() to get the home directory, it doesn't always return what we want
        https://bugs.webkit.org/show_bug.cgi?id=100180

        Reviewed by Anders Carlsson.

        NSHomeDirectory() doesn't return the real home directory if the host process
        is App Sandboxed, so drop down and use getpwuid_r instead.

        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::appendReadwriteSandboxDirectory):
        There is no reason anymore to try to create the directory.

        (WebKit::WebProcess::initializeSandbox):
        Switch to getpwuid_r.

2012-10-23  Martin Robinson  <mrobinson@igalia.com>

        [GTK][Soup] Implement the default authentication dialog via WebCoreSupport
        https://bugs.webkit.org/show_bug.cgi?id=99351

        Reviewed by Carlos Garcia Campos.

        Instead of using a custom SoupSessionFeature to show the authentication
        dialog, show it using the corresponding WebCore message.

        * GNUmakefile.list.am: Removed the SoupSessionFeature files.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit): Only use the default dispatchDidReceiveAuthenticationChallenge
        for non-GTK+ ports.
        * WebProcess/WebCoreSupport/gtk/WebFrameLoaderClientGtk.cpp: Added.
        (WebKit::WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): Added
        a GTK+-specific implementation that shows the GtkAuthenticationDialog.
        * WebProcess/gtk/WebAuthDialog.cpp: Removed.
        * WebProcess/gtk/WebAuthDialog.h: Removed.
        * WebProcess/gtk/WebProcessMainGtk.cpp:
        (WebKit::WebProcessMainGtk): Don't install the custom session feature.

2012-10-23  Anders Carlsson  <andersca@apple.com>

        Remove deprecatedSend
        https://bugs.webkit.org/show_bug.cgi?id=100127

        Reviewed by Andreas Kling.

        deprecatedSend is no longer used anywhere, remove it.

        * Platform/CoreIPC/Connection.h:
        (Connection):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):

2012-10-23  Andy Estes  <aestes@apple.com>

        [WebKit2 API] Add properties to get textRects from a WKDOMRange or WKDOMNode
        https://bugs.webkit.org/show_bug.cgi?id=100162

        Reviewed by Sam Weinig.

        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        (WebKit::toNSArray): Added a helper function to convert a Vector of IntRects to an NSArray.
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
        (-[WKDOMNode textRects]):
        * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
        (-[WKDOMRange textRects]):

2012-10-23  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Coordinated Graphics: Enable threaded/IPC animations
        https://bugs.webkit.org/show_bug.cgi?id=93146

        Reviewed by Kenneth Rohde Christiansen.

        Re-enable UI-process animations for Coordinated-Graphics/TextureMapper.
        - Added an argument coder for GraphicsLayerAnimations.
        - Allow LayerTreeCoordinator to manage the animations per layer with the proxy,
          as opposed to applying the animation values in the web process as before.
        - LayerTreeRenderer now calls updateViewport() after painting when an animation is active.

        To overcome the problem we've had in the past with synchronizing UI-side and web-side
        animations, we now lock the animations in the UI process when a frame starts rendering,
        and unlock it when the frame finishes rendering, or if after the layout there is no visible
        changes pending on the screen.

        * Scripts/webkit2/messages.py:
        (headers_for_type):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC):
        (CoreIPC::encodeTimingFunction):
        (CoreIPC::decodeTimingFunction):
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
        (WebCore):
            Added argument coders for GraphicsLayerAnimations.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::setLayerAnimations):
        (WebKit::LayerTreeCoordinatorProxy::setAnimationsLocked):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
            Added an option to sync the layer's animations, and also to lock/unlock animations.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::LayerTreeRenderer):
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
            Sync animations if they're not locked, and call updateViewport() if we have animations.

        (WebKit::LayerTreeRenderer::flushLayerChanges):
        (WebKit::LayerTreeRenderer::setLayerAnimations):
        (WebKit::LayerTreeRenderer::setAnimationsLocked):

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::didChangeAnimations):
        (WebCore::CoordinatedGraphicsLayer::setShouldUpdateVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):
        (WebCore::CoordinatedGraphicsLayer::syncAnimations):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
        (WebCore::CoordinatedGraphicsLayer::addAnimation):
        (WebCore::CoordinatedGraphicsLayer::pauseAnimation):
        (WebCore::CoordinatedGraphicsLayer::removeAnimation):
        (WebCore::CoordinatedGraphicsLayer::animationStartedTimerFired):
        (WebCore):
            Pass the animation info to the UI process instead of applying it in the web process.

        (WebCore::CoordinatedGraphicsLayer::hasPendingVisibleChanges):
            Compute whether a layer tree might have sync issues or flickers if rendered while
            background animations are ongoing.

        (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
        (WebCore::CoordinatedGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
            Don't allow progressive tiling for layers with animations.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (WebCore):
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::lockAnimations):
        (WebKit):
        (WebKit::LayerTreeCoordinator::unlockAnimations):
        (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
        (WebKit::LayerTreeCoordinator::setLayerAnimations):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-10-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt][WK2] Add preference for enabling scroll animators
        https://bugs.webkit.org/show_bug.cgi?id=100124

        Reviewed by Jocelyn Turcotte.

        Expose the ScollAnimatorEnabled setting in QWebPreferences.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        (QWebPreferences::scrollAnimatorEnabled):
        (QWebPreferences::setScrollAnimatorEnabled):
        * UIProcess/API/qt/qwebpreferences_p.h:
        * UIProcess/API/qt/qwebpreferences_p_p.h:

2012-10-23  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] Use the port independent PageViewportController
        https://bugs.webkit.org/show_bug.cgi?id=99850

        Reviewed by Kenneth Rohde Christiansen.

        Take PageViewportController into use, and rely on it to calculate
        scroll position and zoom level.
        With this patch, we can do intra page navigation and use the scrollwheel
        to scroll, when WTF_USE_TILED_BACKING_STORE and all related flags are enabled.

        * CMakeLists.txt:
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::didChangeViewportProperties):
        (WebKit::PageClientImpl::pageDidRequestScroll):
        (WebKit::PageClientImpl::didChangeContentsSize):
        (WebKit):
        (WebKit::PageClientImpl::didRenderFrame):
        (WebKit::PageClientImpl::pageTransitionViewportReady):
        * UIProcess/API/efl/PageClientImpl.h:
        (WebKit):
        (PageClientImpl):
        (WebKit::PageClientImpl::setPageViewportController):
        * UIProcess/API/efl/PageViewportControllerClientEfl.cpp:
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::display):
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit::PageViewportControllerClientEfl::setViewportPosition):
        (WebKit::PageViewportControllerClientEfl::setContentsScale):
        (WebKit::PageViewportControllerClientEfl::didResumeContent):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        (WebKit::PageViewportControllerClientEfl::setController):
        * UIProcess/API/efl/PageViewportControllerClientEfl.h:
        (WebKit::PageViewportControllerClientEfl::scaleFactor):
        (WebKit::PageViewportControllerClientEfl::scrollPosition):
        (PageViewportControllerClientEfl):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (mapToWebContent):
        (_ewk_view_smart_mouse_wheel):
        (_ewk_view_smart_mouse_down):
        (_ewk_view_smart_mouse_up):
        (_ewk_view_smart_mouse_move):
        (_ewk_view_initialize):
        (ewk_view_load_committed):
        (ewk_view_feed_touch_event):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::didRenderFrame):
        * UIProcess/PageClient.h:
        (PageClient):
        * UIProcess/PageViewportController.cpp:
        * UIProcess/PageViewportController.h:
        * UIProcess/WebPageProxy.cpp:
        (WebKit):
        (WebKit::WebPageProxy::pageTransitionViewportReady):
        (WebKit::WebPageProxy::didRenderFrame):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * UIProcess/efl/PageLoadClientEfl.cpp:
        (WebKit):
        (WebKit::PageLoadClientEfl::didCommitLoadForFrame):
        (WebKit::PageLoadClientEfl::PageLoadClientEfl):
        * UIProcess/efl/PageLoadClientEfl.h:
        (PageLoadClientEfl):
        * UIProcess/qt/WebPageProxyQt.cpp:
        (WebKit):
        (WebKit::WebPageProxy::setUserScripts):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::didCompletePageTransition):

2012-10-16  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Add support for resolution media query
        https://bugs.webkit.org/show_bug.cgi?id=99077

        Reviewed by Antti Koivisto.

        * win/WebKit2.def:

            Add exports for the WebCore::Settings setting.

        * Configurations/FeatureDefines.xcconfig:

            Add support for the RESOLUTION_MEDIA_QUERY feature flag.

2012-10-23  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] Port QWebPreferences to C++
        https://bugs.webkit.org/show_bug.cgi?id=100121

        Reviewed by Kenneth Rohde Christiansen.

        Port all the WebPreference calls to using the direct API instead of going through
        the auto-generated C API.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        (QWebPreferencesPrivate::setFontFamily):
        (QWebPreferencesPrivate::fontFamily):
        (QWebPreferencesPrivate::setFontSize):
        (QWebPreferencesPrivate::fontSize):
        (QWebPreferencesPrivate::preferences):
        * UIProcess/API/qt/qwebpreferences_p_p.h:

2012-10-23  Eunmi Lee  <eunmi15.lee@samsung.com>

        [EFL][WK2] Convert WebEvent's timestamp from millisecond to second.
        https://bugs.webkit.org/show_bug.cgi?id=100101

        Reviewed by Kenneth Rohde Christiansen.

        Convert timestamp to second to create WebEvent from Evas event because
        the unit of timestamp from Evas Event is millisecond, but the unit of
        timestamp for WebEvent is second.

        * Shared/efl/WebEventFactory.cpp:
        (WebKit::convertMillisecondToSecond):
        (WebKit):
        (WebKit::WebEventFactory::createWebMouseEvent):
        (WebKit::WebEventFactory::createWebWheelEvent):
        (WebKit::WebEventFactory::createWebKeyboardEvent):

2012-10-23  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make request manager client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100093

        Reviewed by Kenneth Rohde Christiansen.

        Make EFL's request manager client a C++ class and
        move URL scheme handling code to it. The new
        RequestManagerClientEfl is now in UIProcess/efl
        instead of UIProcess/API/efl since it is not
        part of the public API.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        (Ewk_Context::requestManager):
        (ewk_context_url_scheme_register):
        * UIProcess/API/efl/ewk_context_private.h:
        (WebKit):
        (Ewk_Context):
        * UIProcess/efl/RequestManagerClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_context_request_manager_client.cpp.
        (WebKit):
        (Ewk_Url_Scheme_Handler):
        (WebKit::Ewk_Url_Scheme_Handler::Ewk_Url_Scheme_Handler):
        (WebKit::toRequestManagerClientEfl):
        (WebKit::RequestManagerClientEfl::didReceiveURIRequest):
        (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):
        (WebKit::RequestManagerClientEfl::~RequestManagerClientEfl):
        (WebKit::RequestManagerClientEfl::registerURLSchemeHandler):
        * UIProcess/efl/RequestManagerClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_context_request_manager_client_private.h.
        (WebKit):
        (RequestManagerClientEfl):
        (WebKit::RequestManagerClientEfl::create):

2012-10-23  Alexander Shalamov  <alexander.shalamov@intel.com>

        [EFL][WK2] ecore_x should be initialised in WebProcess to avoid re-initialization by PlatformScreenEfl utilities and systemBeep() function
        https://bugs.webkit.org/show_bug.cgi?id=100110

        Reviewed by Kenneth Rohde Christiansen.

        PlatformScreenEfl functions and systemBeep() depend on ecore_x functionality, therefore,
        ecore_x should be initialized when web process starts to avoid re-initialization.

        * WebProcess/efl/WebProcessMainEfl.cpp:
        (WebKit::WebProcessMainEfl): Initialized ecore_x module.

2012-10-23  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Add support for IMF composition
        https://bugs.webkit.org/show_bug.cgi?id=89552

        Reviewed by Gyuyoung Kim.

        Implemented basic IMF support.

        * PlatformEfl.cmake:
        * Shared/NativeWebKeyboardEvent.h:
        (NativeWebKeyboardEvent):
        (WebKit::NativeWebKeyboardEvent::isFiltered):
        Added to determine whether current keyboard event is compositing.
        * Shared/efl/NativeWebKeyboardEventEfl.cpp:
        (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::updateTextInputState):
        Added to change input state.
        * UIProcess/API/efl/PageClientImpl.h:
        (PageClientImpl):
        * UIProcess/API/efl/ewk_main.cpp:
        (ewk_init): Called ecore_imf_init.
        (ewk_shutdown): Called ecore_imf_shutdown.
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (_ewk_view_smart_key_down): Modified to send keyboard event to IMF.
        (_ewk_view_smart_mouse_up): Modified to reset input method context.
        (_ewk_view_preedit_changed): Added to send composition string.
        (_ewk_view_commit): Added to send a message that composition is finished.
        (_ewk_view_imf_context_create): Added to create Ecore_IMF_Context.
        (_ewk_view_imf_context_destroy): Added to destroy Ecore_IMF_Context.
        (ewk_view_text_input_state_update): Added to update input state.
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/PageClient.h: Moved updateTextInputState() to share with EFL port.
        (PageClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::editorStateChanged):
        Added PLATFORM(EFL) to call updateTextInputState()
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        Added HandleInputMethodKeydown message to determine whether keydown is handled.
        * UIProcess/efl/WebPageProxyEfl.cpp:
        (WebKit::WebPageProxy::handleInputMethodKeydown):
        Added to check whether input method handled keydown.
        (WebKit::WebPageProxy::confirmComposition): Added to support composition.
        (WebKit::WebPageProxy::setComposition): Ditto.
        (WebKit::WebPageProxy::cancelComposition): Ditto.
        * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
        (WebKit::WebEditorClient::handleInputMethodKeydown):
        Added to check whether input method handled keydown.
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in: Added messages to support composition.
        * WebProcess/WebPage/efl/WebPageEfl.cpp:
        (WebKit::targetFrameForEditing): Referenced from QT port to get focused frame.
        (WebKit::WebPage::confirmComposition): Added to support composition.
        (WebKit::WebPage::setComposition): Ditto.
        (WebKit::WebPage::cancelComposition): Ditto.

2012-10-23  Jussi Kukkonen  <jussi.kukkonen@intel.com>

        [EFL] Make plugin process debugging easier (PLUGIN_PROCESS_COMMAND_PREFIX)
        https://bugs.webkit.org/show_bug.cgi?id=99297

        Reviewed by Kenneth Rohde Christiansen.

        Add support for PLUGIN_PROCESS_COMMAND_PREFIX environment variable, to allow easier
        plugin debugging with e.g.:
        $ PLUGIN_PROCESS_COMMAND_PREFIX="xterm gdb --args" MiniBrowser

        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
        (WebKit):

2012-10-23  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make Policy client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100089

        Reviewed by Kenneth Rohde Christiansen.

        Make page policy client a C++ class and remove it from API folder.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        * UIProcess/efl/PagePolicyClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_policy_client.cpp.
        (WebKit):
        (WebKit::toPagePolicyClientEfl):
        (WebKit::PagePolicyClientEfl::decidePolicyForNavigationAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForNewWindowAction):
        (WebKit::PagePolicyClientEfl::decidePolicyForResponseCallback):
        (WebKit::PagePolicyClientEfl::PagePolicyClientEfl):
        * UIProcess/efl/PagePolicyClientEfl.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_policy_client_private.h.
        (WebKit):
        (PagePolicyClientEfl):
        (WebKit::PagePolicyClientEfl::create):
        (WebKit::PagePolicyClientEfl::view):

2012-10-23  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Make UI client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100099

        Reviewed by Gyuyoung Kim.

        Made page UI client a C++ class and removed it from API directory.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        * UIProcess/API/efl/ewk_view_ui_client.cpp: Removed.
        * UIProcess/API/efl/ewk_view_ui_client_private.h: Removed.
        * UIProcess/efl/PageUIClientEfl.cpp: Added.
        (WebKit):
        (WebKit::toPageUIClientEfl):
        (WebKit::PageUIClientEfl::closePage):
        (WebKit::PageUIClientEfl::createNewPage):
        (WebKit::PageUIClientEfl::runJavaScriptAlert):
        (WebKit::PageUIClientEfl::runJavaScriptConfirm):
        (WebKit::PageUIClientEfl::runJavaScriptPrompt):
        (WebKit::PageUIClientEfl::showColorPicker):
        (WebKit::PageUIClientEfl::hideColorPicker):
        (WebKit::PageUIClientEfl::exceededDatabaseQuota):
        (WebKit::PageUIClientEfl::focus):
        (WebKit::PageUIClientEfl::unfocus):
        (WebKit::PageUIClientEfl::takeFocus):
        (WebKit::PageUIClientEfl::getWindowFrame):
        (WebKit::PageUIClientEfl::setWindowFrame):
        (WebKit::PageUIClientEfl::PageUIClientEfl):
        * UIProcess/efl/PageUIClientEfl.h: Added.
        (WebKit):
        (PageUIClientEfl):
        (WebKit::PageUIClientEfl::create):

2012-10-23  Andreas Kling  <kling@webkit.org>

        [WK2] REGRESSION(r132169): It broke all plugin related test.
        <http://webkit.org/b/100094>

        Unreviewed test fix, make the CoreIPC encode/decode functions for CString match again.

        * Platform/CoreIPC/ArgumentCoders.cpp:
        (CoreIPC::::encode):

2012-10-23  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make a download client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100005

        Reviewed by Kenneth Rohde Christiansen.

        Make EFL's Download client a C++ class and move
        the id <-> download mapping from Ewk_Context to
        DownloadManagerEfl.

        The Download client was also moved to
        UIProcess/efl/ instead of UIProcess/API/efl/
        since it is not part of the public API.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        (Ewk_Context::downloadManager):
        * UIProcess/API/efl/ewk_context_download_client_private.h: Removed.
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        * UIProcess/API/efl/ewk_download_job_private.h:
        * UIProcess/efl/DownloadManagerEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_context_download_client.cpp.
        (WebKit):
        (WebKit::toDownloadManagerEfl):
        (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
        (WebKit::DownloadManagerEfl::didReceiveResponse):
        (WebKit::DownloadManagerEfl::didCreateDestination):
        (WebKit::DownloadManagerEfl::didReceiveData):
        (WebKit::DownloadManagerEfl::didFail):
        (WebKit::DownloadManagerEfl::didCancel):
        (WebKit::DownloadManagerEfl::didFinish):
        (WebKit::DownloadManagerEfl::DownloadManagerEfl):
        (WebKit::DownloadManagerEfl::registerDownload):
        (WebKit::DownloadManagerEfl::downloadJob):
        (WebKit::DownloadManagerEfl::unregisterDownloadJob):
        * UIProcess/efl/DownloadManagerEfl.h: Added.
        (WebKit):
        (DownloadManagerEfl):
        (WebKit::DownloadManagerEfl::create):

2012-10-23  Andras Becsi  <andras.becsi@digia.com>

        Remove devicePixelRatio from ViewportAttributes
        https://bugs.webkit.org/show_bug.cgi?id=99845

        Reviewed by Adam Barth.

        Update PageViewportController and co. to pass the device pixel ratio
        as an argument to functions that need to adjust the visible viewport size.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):
        (WebKit::PageViewportController::updateMinimumScaleToFit):
        * UIProcess/qt/PageViewportControllerClientQt.cpp:
        (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):

2012-10-23  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Refactor Ewk_Context
        https://bugs.webkit.org/show_bug.cgi?id=99594

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Context is now encapsulated to a C++ class inherited from WTF::RefCounted.
        Also the same instance of Ewk_Context is returned for the same instance of
        WKContext, so memory leak in ewk_view is also fixed.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_context.cpp:
        (contextMap):
        (Ewk_Context::Ewk_Context):
        (Ewk_Context::~Ewk_Context):
        (Ewk_Context::create):
        (Ewk_Context::defaultContext):
        (Ewk_Context::cookieManager):
        (Ewk_Context::faviconDatabase):
        (Ewk_Context::registerURLScheme):
        (Ewk_Context::vibrationProvider):
        (Ewk_Context::addVisitedLink):
        (Ewk_Context::setCacheModel):
        (Ewk_Context::cacheModel):
        (ewk_context_ref):
        (ewk_context_unref):
        (ewk_context_cookie_manager_get):
        (ewk_context_favicon_database_get):
        (Ewk_Context::wkContext):
        (Ewk_Context::addDownloadJob):
        (Ewk_Context::downloadJob):
        (Ewk_Context::removeDownloadJob):
        (Ewk_Context::requestManager):
        (Ewk_Context::urlSchemeRequestReceived):
        (ewk_context_default_get):
        (ewk_context_new):
        (ewk_context_new_with_injected_bundle_path):
        (ewk_context_url_scheme_register):
        (ewk_context_vibration_client_callbacks_set):
        (ewk_context_history_callbacks_set):
        (ewk_context_visited_link_add):
        (ewk_context_cache_model_set):
        (ewk_context_cache_model_get):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (decideDestinationWithSuggestedFilename):
        (didReceiveResponse):
        (didCreateDestination):
        (didReceiveData):
        (didFail):
        (didCancel):
        (didFinish):
        (ewk_context_download_client_attach):
        * UIProcess/API/efl/ewk_context_history_client.cpp:
        (getEwkHistoryClient):
        (didNavigateWithNavigationData):
        (didPerformClientRedirect):
        (didPerformServerRedirect):
        (didUpdateHistoryTitle):
        (populateVisitedLinks):
        (ewk_context_history_client_attach):
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        (Ewk_Context::historyClient):
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest):
        (ewk_context_request_manager_client_attach):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (Ewk_View_Private_Data::Ewk_View_Private_Data):
        (Ewk_View_Private_Data::~Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (_ewk_view_initialize):
        (ewk_view_base_add):
        (ewk_view_add_with_context):
        (ewk_view_context_get):
        (ewk_view_update_icon):

2012-10-23  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make page load client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=100081

        Reviewed by Kenneth Rohde Christiansen.

        Make page load client a C++ class and move it
        up to UIProcess/efl since it is not really part
        of the public API.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        * UIProcess/API/efl/ewk_view_loader_client_private.h: Removed.
        * UIProcess/efl/PageLoadClientEfl.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
        (WebKit):
        (WebKit::toPageLoadClientEfl):
        (WebKit::PageLoadClientEfl::didReceiveTitleForFrame):
        (WebKit::PageLoadClientEfl::didReceiveIntentForFrame):
        (WebKit::PageLoadClientEfl::registerIntentServiceForFrame):
        (WebKit::PageLoadClientEfl::didChangeProgress):
        (WebKit::PageLoadClientEfl::didFinishLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didStartProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didReceiveServerRedirectForProvisionalLoadForFrame):
        (WebKit::PageLoadClientEfl::didFailProvisionalLoadWithErrorForFrame):
        (WebKit::PageLoadClientEfl::didChangeBackForwardList):
        (WebKit::PageLoadClientEfl::didSameDocumentNavigationForFrame):
        (WebKit::PageLoadClientEfl::PageLoadClientEfl):
        * UIProcess/efl/PageLoadClientEfl.h: Added.
        (WebKit):
        (PageLoadClientEfl):
        (WebKit::PageLoadClientEfl::create):
        (WebKit::PageLoadClientEfl::view):

2012-10-22  Anders Carlsson  <andersca@apple.com>

        Handle ArgumentCoder template specializations that take the ArgumentEncoder as a reference
        https://bugs.webkit.org/show_bug.cgi?id=100056

        Reviewed by Andreas Kling.

        Use template magic to make it possible to have ArgumentCoder specializations where the encode
        function takes the ArgumentEncoder object as a reference instead of as a pointer. Also, add an
        operator<< to ArgumentEncoder and change the string related ArgumentCoder specializations over to taking
        the encoder as a reference and using stream operators.

        * Platform/CoreIPC/ArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Platform/CoreIPC/ArgumentCoders.h:
        * Platform/CoreIPC/ArgumentEncoder.h:
        (ArgumentEncoder):
        (UsesDeprecatedEncodeFunction):
        (NoType):
        (CoreIPC::ArgumentEncoder::encode):
        (CoreIPC::ArgumentEncoder::operator<<):

2012-10-22  Anders Carlsson  <andersca@apple.com>

        More Argument coder cleanup
        https://bugs.webkit.org/show_bug.cgi?id=100022

        Reviewed by Andreas Kling.

        Remove the ArgumentDecoder::decode overload that takes a const reference - if the call to decode ends up creating a temporary
        we'll encode into it and then destroy it. Since this decode overload was mostly used with the CoreIPC::Out functions, remove them
        (and CoreIPC::In) as well. Clean up a couple of ArgumentCoders as well.

        * Platform/CoreIPC/ArgumentCoders.h:
        * Platform/CoreIPC/ArgumentDecoder.h:
        * Platform/CoreIPC/Arguments.h:
        * Platform/CoreIPC/Connection.h:
        (Connection):
        * Platform/mac/SharedMemoryMac.cpp:
        (WebKit::SharedMemory::Handle::decode):
        * Shared/PrintInfo.cpp:
        (WebKit::PrintInfo::encode):
        (WebKit::PrintInfo::decode):
        * Shared/WebContextMenuItemData.cpp:
        (WebKit::WebContextMenuItemData::encode):
        (WebKit::WebContextMenuItemData::decode):
        * Shared/WebEvent.cpp:
        (WebKit::WebEvent::encode):
        (WebKit::WebEvent::decode):
        * Shared/WebGeolocationPosition.cpp:
        (WebKit::WebGeolocationPosition::Data::encode):
        (WebKit::WebGeolocationPosition::Data::decode):
        * Shared/WebMouseEvent.cpp:
        (WebKit::WebMouseEvent::encode):
        (WebKit::WebMouseEvent::decode):
        * Shared/WebPopupItem.cpp:
        (WebKit::WebPopupItem::encode):
        (WebKit::WebPopupItem::decode):
        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::decodeMessageBody):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::postMessage):
        (WebKit::InjectedBundle::postSynchronousMessage):
        * WebProcess/WebConnectionToUIProcess.cpp:
        (WebKit::WebConnectionToUIProcess::decodeMessageBody):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::postInjectedBundleMessage):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::postInjectedBundleMessage):

2012-10-22  Anders Carlsson  <andersca@apple.com>

        Remove MessageReceiverMap::deprecatedAddMessageReceiver
        https://bugs.webkit.org/show_bug.cgi?id=100012

        Reviewed by Andreas Kling.

        Get rid of MessageReceiverMap::deprecatedAddMessageReceiver and make callers use addMessageReceiver instead.
        Also, remove the message receiver map inside Connection and add a message receiver map to WebProcess instead.

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::dispatchMessage):
        * Platform/CoreIPC/Connection.h:
        (Connection):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::invalidate):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
        (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
        * UIProcess/WebApplicationCacheManagerProxy.cpp:
        (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
        * UIProcess/WebContext.cpp:
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebCookieManagerProxy.cpp:
        (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
        * UIProcess/WebDatabaseManagerProxy.cpp:
        (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
        * UIProcess/WebGeolocationManagerProxy.cpp:
        (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
        * UIProcess/WebIconDatabase.cpp:
        (WebKit::WebIconDatabase::WebIconDatabase):
        * UIProcess/WebKeyValueStorageManagerProxy.cpp:
        (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
        * UIProcess/WebMediaCacheManagerProxy.cpp:
        (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
        * UIProcess/WebResourceCacheManagerProxy.cpp:
        (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
        * WebProcess/Authentication/AuthenticationManager.cpp:
        (WebKit::AuthenticationManager::AuthenticationManager):
        * WebProcess/Geolocation/WebGeolocationManager.cpp:
        (WebKit::WebGeolocationManager::WebGeolocationManager):
        (WebKit::WebGeolocationManager::registerWebPage):
        * WebProcess/Geolocation/WebGeolocationManager.h:
        (WebGeolocationManager):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::addMessageReceiver):
        (WebKit):
        (WebKit::WebProcess::didReceiveSyncMessage):
        (WebKit::WebProcess::didReceiveMessage):
        * WebProcess/WebProcess.h:
        (WebProcess):

2012-10-22  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [EFL][WK2] ewk_view_color_picker_color_set() is leaking
        https://bugs.webkit.org/show_bug.cgi?id=100007

        Reviewed by Kenneth Rohde Christiansen.

        Fix a leak in ewk_view_color_picker_color_set() by adopting WKStringRef
        returned by WKStringCreateWithUTF8CString().

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_color_picker_color_set):

2012-10-22  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make the resource load client a C++ class
        https://bugs.webkit.org/show_bug.cgi?id=99982

        Reviewed by Kenneth Rohde Christiansen.

        Create a C++ class for the resource load client and
        move the id <-> resource mapping from the Ewk_View
        to ResourceLoadClientEfl for better a cleaner
        separation.

        The resource load client code was also moved out of
        UIProcess/API/efl to UIProcess/efl since this is not
        part of the WK2 EFL API.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        (ewk_view_wkpage_get):
        (ewk_view_resource_load_initiated):
        (ewk_view_resource_load_response):
        (ewk_view_resource_load_failed):
        (ewk_view_resource_load_finished):
        (ewk_view_resource_request_sent):
        (ewk_view_load_provisional_started):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp: Removed.
        * UIProcess/API/efl/ewk_view_resource_load_client_private.h: Removed.
        * UIProcess/efl/ResourceLoadClientEfl.cpp: Added.
        (WebKit):
        (WebKit::toResourceLoadClientEfl):
        (WebKit::ResourceLoadClientEfl::didInitiateLoadForResource):
        (WebKit::ResourceLoadClientEfl::didSendRequestForResource):
        (WebKit::ResourceLoadClientEfl::didReceiveResponseForResource):
        (WebKit::ResourceLoadClientEfl::didFinishLoadForResource):
        (WebKit::ResourceLoadClientEfl::didFailLoadForResource):
        (WebKit::ResourceLoadClientEfl::onViewProvisionalLoadStarted):
        (WebKit::ResourceLoadClientEfl::ResourceLoadClientEfl):
        (WebKit::ResourceLoadClientEfl::~ResourceLoadClientEfl):
        * UIProcess/efl/ResourceLoadClientEfl.h: Added.
        (WebKit):
        (ResourceLoadClientEfl):
        (WebKit::ResourceLoadClientEfl::create):

2012-10-22  Anders Carlsson  <andersca@apple.com>

        [WK2] Regression(r131990): plugins/npruntime/remove-property.html started failing
        https://bugs.webkit.org/show_bug.cgi?id=99977

        Reviewed by Alexey Proskuryakov.

        Remove int32_t casts - the ArgumentDecoder::decode overload that takes a const int would cause
        a temporary to be created which the number was then decoded into.

        * Shared/Plugins/NPIdentifierData.cpp:
        (WebKit::NPIdentifierData::encode):
        (WebKit::NPIdentifierData::decode):

2012-10-22  Anders Carlsson  <andersca@apple.com>

        Don't use CStrings for message receiver names and message names
        https://bugs.webkit.org/show_bug.cgi?id=99853

        Reviewed by Andreas Kling.

        Re-land this with a fix to MessageReceiverMap::dispatchSyncMessage to look in the new global message receivers map.

        Introduce StringReference which is similar to DataReference except it holds a pointer to + length of a char *
        and can be created from a string literal. Use this in place of CString in MessageEncoder/MessageDecoder and
        make MessageReceiverMap use a HashMap from StringReferences to MessageReceivers for global message receivers.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::createSyncMessageEncoder):
        (CoreIPC::Connection::dispatchSyncMessage):
        * Platform/CoreIPC/Connection.h:
        (Connection):
        (CoreIPC::Connection::deprecatedSendSync):
        (CoreIPC::Connection::deprecatedSend):
        * Platform/CoreIPC/MessageDecoder.cpp:
        (CoreIPC::MessageDecoder::MessageDecoder):
        * Platform/CoreIPC/MessageDecoder.h:
        (CoreIPC::MessageDecoder::messageReceiverName):
        (CoreIPC::MessageDecoder::messageName):
        (MessageDecoder):
        * Platform/CoreIPC/MessageEncoder.cpp:
        (CoreIPC::MessageEncoder::create):
        (CoreIPC::MessageEncoder::MessageEncoder):
        * Platform/CoreIPC/MessageEncoder.h:
        (CoreIPC):
        (MessageEncoder):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * Platform/CoreIPC/StringReference.cpp: Added.
        (CoreIPC):
        (CoreIPC::StringReference::encode):
        (CoreIPC::StringReference::decode):
        (CoreIPC::StringReference::Hash::hash):
        * Platform/CoreIPC/StringReference.h: Added.
        (CoreIPC):
        (StringReference):
        (CoreIPC::StringReference::StringReference):
        (CoreIPC::StringReference::isEmpty):
        (CoreIPC::StringReference::size):
        (CoreIPC::StringReference::data):
        (CoreIPC::StringReference::operator==):
        (Hash):
        (CoreIPC::StringReference::Hash::equal):
        (WTF):
        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::open):
        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        (forward_declarations_and_headers):
        (generate_messages_header):
        * Scripts/webkit2/messages_unittest.py:
        * Shared/CoreIPCSupport/WebContextMessageKinds.h:
        * Target.pri:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::addMessageReceiver):
        (WebKit):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::deprecatedSend):
        (WebKit::WebProcessProxy::send):
        * WebKit2.xcodeproj/project.pbxproj:
        * win/WebKit2.vcproj:

2012-10-22  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r132072.
        http://trac.webkit.org/changeset/132072
        https://bugs.webkit.org/show_bug.cgi?id=100011

        Made most of the tests crash on the WK2 bot. (Requested by
        rakuco on #webkit).

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context):
        (Ewk_Context::Ewk_Context):
        (ewk_context_ref):
        (ewk_context_unref):
        (ewk_context_cookie_manager_get):
        (ewk_context_favicon_database_get):
        (ewk_context_WKContext_get):
        (ewk_context_new_from_WKContext):
        (ewk_context_download_job_add):
        (ewk_context_download_job_get):
        (ewk_context_download_job_remove):
        (ewk_context_request_manager_get):
        (ewk_context_url_scheme_request_received):
        (ewk_context_default_get):
        (ewk_context_new):
        (ewk_context_new_with_injected_bundle_path):
        (ewk_context_url_scheme_register):
        (ewk_context_vibration_client_callbacks_set):
        (ewk_context_history_callbacks_set):
        (ewk_context_history_client_get):
        (ewk_context_visited_link_add):
        (ewk_context_cache_model_set):
        (ewk_context_cache_model_get):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (decideDestinationWithSuggestedFilename):
        (didReceiveResponse):
        (didCreateDestination):
        (didReceiveData):
        (didFail):
        (didCancel):
        (didFinish):
        (ewk_context_download_client_attach):
        * UIProcess/API/efl/ewk_context_history_client.cpp:
        (getEwkHistoryDelegate):
        (didNavigateWithNavigationData):
        (didPerformClientRedirect):
        (didPerformServerRedirect):
        (didUpdateHistoryTitle):
        (populateVisitedLinks):
        (ewk_context_history_client_attach):
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest):
        (ewk_context_request_manager_client_attach):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (Ewk_View_Private_Data::Ewk_View_Private_Data):
        (Ewk_View_Private_Data::~Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (_ewk_view_initialize):
        (ewk_view_base_add):
        (ewk_view_add_with_context):
        (ewk_view_context_get):
        (ewk_view_update_icon):

2012-10-22  Darin Adler  <darin@apple.com>

        * UIProcess/API/mac/WKView.mm:
        (-[WKView view:stringForToolTip:point:userData:]): Fix build. Forgot to save file
        before committing.

2012-10-22  Darin Adler  <darin@apple.com>

        REGRESSION (r131686): Crash in NSToolTipManager mouseEnteredToolTip
        <rdar://problem/12527528> and https://bugs.webkit.org/show_bug.cgi?id=99792

        Roll out the tool tip part of r131686 since it still seems to be causing trouble.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView view:stringForToolTip:point:userData:]): Added this method back.
        (-[WKView _wk_toolTipChangedFrom:to:]): Use self as owner again, eliminating the
        separate WKToolTipDelegate object.

2012-10-22  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Memory leak in Ewk_Form_Submission_Request::fieldValue()
        https://bugs.webkit.org/show_bug.cgi?id=99993

        Reviewed by Kenneth Rohde Christiansen.

        Adopt the WKStringRef returned by toCopiedAPI() in
        Ewk_Form_Submission_Request::fieldValue() to avoid
        a memory leak.

        * UIProcess/API/efl/ewk_form_submission_request.cpp:
        (Ewk_Form_Submission_Request::fieldValue):

2012-10-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Refactor Ewk_Context
        https://bugs.webkit.org/show_bug.cgi?id=99594

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Context is now encapsulated to a C++ class inherited from WTF::RefCounted.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Context::Ewk_Context):
        (Ewk_Context::~Ewk_Context):
        (Ewk_Context::create):
        (Ewk_Context::defaultContext):
        (Ewk_Context::cookieManager):
        (Ewk_Context::faviconDatabase):
        (Ewk_Context::registerURLScheme):
        (Ewk_Context::vibrationProvider):
        (Ewk_Context::addVisitedLink):
        (Ewk_Context::setCacheModel):
        (Ewk_Context::cacheModel):
        (ewk_context_ref):
        (ewk_context_unref):
        (ewk_context_cookie_manager_get):
        (ewk_context_favicon_database_get):
        (Ewk_Context::wkContext):
        (Ewk_Context::addDownloadJob):
        (Ewk_Context::downloadJob):
        (Ewk_Context::removeDownloadJob):
        (Ewk_Context::requestManager):
        (Ewk_Context::urlSchemeRequestReceived):
        (ewk_context_default_get):
        (ewk_context_new):
        (ewk_context_new_with_injected_bundle_path):
        (ewk_context_url_scheme_register):
        (ewk_context_vibration_client_callbacks_set):
        (ewk_context_history_callbacks_set):
        (ewk_context_visited_link_add):
        (ewk_context_cache_model_set):
        (ewk_context_cache_model_get):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (decideDestinationWithSuggestedFilename):
        (didReceiveResponse):
        (didCreateDestination):
        (didReceiveData):
        (didFail):
        (didCancel):
        (didFinish):
        (ewk_context_download_client_attach):
        * UIProcess/API/efl/ewk_context_history_client.cpp:
        (getEwkHistoryClient):
        (didNavigateWithNavigationData):
        (didPerformClientRedirect):
        (didPerformServerRedirect):
        (didUpdateHistoryTitle):
        (populateVisitedLinks):
        (ewk_context_history_client_attach):
        * UIProcess/API/efl/ewk_context_private.h:
        (Ewk_Context):
        (Ewk_Context::create):
        (Ewk_Context::historyClient):
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest):
        (ewk_context_request_manager_client_attach):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (Ewk_View_Private_Data::Ewk_View_Private_Data):
        (Ewk_View_Private_Data::~Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (_ewk_view_initialize):
        (ewk_view_base_add):
        (ewk_view_add_with_context):
        (ewk_view_context_get):
        (ewk_view_update_icon):

2012-10-22  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Fix build without QtWidgets
        https://bugs.webkit.org/show_bug.cgi?id=99981

        Reviewed by Tor Arne Vestbø.

        Make it possible to compile WebProcess without QtWidgets by instantiating a
        QGuiApplication instead of a QApplication if we're built without widgets.

        * WebProcess.pro:
        * qt/MainQt.cpp:
        (main):

2012-10-22  Ryuan Choi  <ryuan.choi@gmail.com>

        [EFL] pc files should use DATA_INSTALL_DIR for datadir
        https://bugs.webkit.org/show_bug.cgi?id=99961

        Reviewed by Gyuyoung Kim.

        * ewebkit.pc.in: Fixed wrong datadir

2012-10-22  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Fix "ASSERTION FAILED: !document->inPageCache()" when loading a page
        https://bugs.webkit.org/show_bug.cgi?id=98514

        Reviewed by Kenneth Rohde Christiansen.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Use FrameView::fixedVisibleContentRect
        instead of WebFrame::visibleContentBounds as the source to always keep the correct state.

2012-10-22  Pavel Feldman  <pfeldman@chromium.org>

        Web Inspector: merge "docked" state into the "dock side" enum.
        https://bugs.webkit.org/show_bug.cgi?id=99717

        Reviewed by Vsevolod Vlasov.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-10-21  Milian Wolff  <milian.wolff@kdab.com>

        [Qt] QNX build fails when building against Qt without clipboard support
        https://bugs.webkit.org/show_bug.cgi?id=98040

        Reviewed by Simon Hausmann.

        Gracefully handle QT_NO_CLIPBOARD and do not try to access qApp->clipboard()
        in such cases. Instead, return false to indicate global selection is unsupported.

        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        (WebKit::WebEditorClient::supportsGlobalSelection):

2012-10-21  Hyungchan Kim  <hyungchan2.kim@lge.com>

        Add a separate flag for rgb swizzling whether it can be modified or not
        https://bugs.webkit.org/show_bug.cgi?id=98728

        BitmapTexture swizzles the source image if the OpenGL driver
        doesn't support the BGRA extension.
        In case of directly composited images, the source image should not
        be modified.

        http://www.satine.org/research/webkit/snowleopard/snowstack.html

        Reviewed by Noam Rosenthal.

        No new tests as this is only testable on specific hardware and
        currently not avaiable in the bots.

        * platform/graphics/texmap/TextureMapper.h:
        (BitmapTexture):
        * platform/graphics/texmap/TextureMapperBackingStore.cpp:
        (WebCore::TextureMapperTile::updateContents):
        (WebCore::TextureMapperTiledBackingStore::updateContentsFromImageIfNeeded):
        (WebCore::TextureMapperTiledBackingStore::updateContents):
        * platform/graphics/texmap/TextureMapperBackingStore.h:
        (TextureMapperTile):
        (TextureMapperTiledBackingStore):
        (WebCore::TextureMapperTiledBackingStore::updateContents):
        * platform/graphics/texmap/TextureMapperGL.cpp:
        (WebCore::TextureMapperGL::drawRepaintCounter):
        (WebCore::BitmapTextureGL::updateContents):
        * platform/graphics/texmap/TextureMapperGL.h:
        (BitmapTextureGL):
        * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
        (WebCore::BitmapTextureImageBuffer::updateContents):
        * platform/graphics/texmap/TextureMapperImageBuffer.h:
        (BitmapTextureImageBuffer):
        * platform/graphics/texmap/TextureMapperLayer.cpp:
        (WebCore::TextureMapperLayer::updateBackingStore):

2012-10-21  Seokju Kwon  <seokju.kwon@samsung.com>

        [EFL] Fix failure to access the inspector resources
        https://bugs.webkit.org/show_bug.cgi?id=99816

        Reviewed by Gyuyoung Kim.

        access() returns -1, if path has a file protocol like "file://".
        And I have removed it from the first argument of access().
        If not, inspectorBaseURL() or inspectorFilesPath() always returns WEB_INSPECTOR_DIR.
        Then all layout test related to inspector can fail after installing webkit package.

        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::inspectorBaseURL):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Error, Ewk_Resource and Ewk_Popup_Menu_Item members private
        https://bugs.webkit.org/show_bug.cgi?id=99931

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Error, Ewk_Resource and Ewk_Popup_Menu_Item class
        members private.

        * UIProcess/API/efl/ewk_error.cpp:
        (Ewk_Error::Ewk_Error):
        (Ewk_Error::url):
        (Ewk_Error::description):
        (Ewk_Error::domain):
        (Ewk_Error::errorCode):
        (Ewk_Error::isCancellation):
        (ewk_error_type_get):
        (ewk_error_url_get):
        (ewk_error_code_get):
        (ewk_error_description_get):
        (ewk_error_cancellation_get):
        * UIProcess/API/efl/ewk_error_private.h:
        (Ewk_Error):
        * UIProcess/API/efl/ewk_popup_menu_item.cpp:
        (Ewk_Popup_Menu_Item::Ewk_Popup_Menu_Item):
        (Ewk_Popup_Menu_Item::type):
        (Ewk_Popup_Menu_Item::textDirection):
        (Ewk_Popup_Menu_Item::text):
        (Ewk_Popup_Menu_Item::tooltipText):
        (Ewk_Popup_Menu_Item::accessibilityText):
        (Ewk_Popup_Menu_Item::hasTextDirectionOverride):
        (Ewk_Popup_Menu_Item::isEnabled):
        (Ewk_Popup_Menu_Item::isLabel):
        (Ewk_Popup_Menu_Item::isSelected):
        (ewk_popup_menu_item_type_get):
        (ewk_popup_menu_item_text_get):
        (ewk_popup_menu_item_text_direction_get):
        (ewk_popup_menu_item_text_direction_override_get):
        (ewk_popup_menu_item_tooltip_get):
        (ewk_popup_menu_item_accessibility_text_get):
        (ewk_popup_menu_item_enabled_get):
        (ewk_popup_menu_item_is_label_get):
        (ewk_popup_menu_item_selected_get):
        * UIProcess/API/efl/ewk_popup_menu_item_private.h:
        (Ewk_Popup_Menu_Item):
        * UIProcess/API/efl/ewk_resource.cpp:
        (Ewk_Resource::Ewk_Resource):
        (Ewk_Resource::url):
        (Ewk_Resource::isMainResource):
        (ewk_resource_url_get):
        (ewk_resource_main_resource_get):
        * UIProcess/API/efl/ewk_resource_private.h:
        (Ewk_Resource):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Url_Request, Ewk_Url_Response and Ewk_Url_Scheme_Request members private
        https://bugs.webkit.org/show_bug.cgi?id=99936

        Reviewed by Kenneth Rohde Christiansen.

        Make wk_Url_Request, Ewk_Url_Response and Ewk_Url_Scheme_Request
        class members private.

        * UIProcess/API/efl/ewk_context.cpp:
        (ewk_context_url_scheme_request_received):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (Ewk_Download_Job::estimatedProgress):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (Ewk_Url_Request::Ewk_Url_Request):
        (Ewk_Url_Request::url):
        (Ewk_Url_Request::firstParty):
        (Ewk_Url_Request::httpMethod):
        (ewk_url_request_url_get):
        (ewk_request_cookies_first_party_get):
        (ewk_url_request_http_method_get):
        * UIProcess/API/efl/ewk_url_request_private.h:
        (Ewk_Url_Request):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (Ewk_Url_Response::Ewk_Url_Response):
        (Ewk_Url_Response::httpStatusCode):
        (Ewk_Url_Response::url):
        (Ewk_Url_Response::mimeType):
        (Ewk_Url_Response::contentLength):
        (ewk_url_response_url_get):
        (ewk_url_response_status_code_get):
        (ewk_url_response_mime_type_get):
        (ewk_url_response_content_length_get):
        * UIProcess/API/efl/ewk_url_response_private.h:
        (Ewk_Url_Response):
        * UIProcess/API/efl/ewk_url_scheme_request.cpp:
        (Ewk_Url_Scheme_Request::Ewk_Url_Scheme_Request):
        (Ewk_Url_Scheme_Request::id):
        (Ewk_Url_Scheme_Request::url):
        (Ewk_Url_Scheme_Request::scheme):
        (Ewk_Url_Scheme_Request::path):
        (Ewk_Url_Scheme_Request::finish):
        (ewk_url_scheme_request_scheme_get):
        (ewk_url_scheme_request_url_get):
        (ewk_url_scheme_request_path_get):
        (ewk_url_scheme_request_finish):
        * UIProcess/API/efl/ewk_url_scheme_request.h: Fix ewk_url_scheme_request_finish() declaration
        so that the request argument is no longer marked as const and so that the content type is of
        type uint64_t instead of unsigned int.
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        (Ewk_Url_Scheme_Request):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Form_Submission_Request, Ewk_Navigation_Data and Ewk_Navigation_Policy_Decision members private
        https://bugs.webkit.org/show_bug.cgi?id=99934

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Form_Submission_Request, Ewk_Navigation_Data and
        Ewk_Navigation_Policy_Decision class members private.

        * UIProcess/API/efl/ewk_form_submission_request.cpp:
        (Ewk_Form_Submission_Request::Ewk_Form_Submission_Request):
        (Ewk_Form_Submission_Request::~Ewk_Form_Submission_Request):
        (Ewk_Form_Submission_Request::fieldValue):
        (Ewk_Form_Submission_Request::fieldNames):
        (Ewk_Form_Submission_Request::submit):
        (ewk_form_submission_request_field_names_get):
        (ewk_form_submission_request_field_value_get):
        (ewk_form_submission_request_submit):
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        (Ewk_Form_Submission_Request):
        * UIProcess/API/efl/ewk_navigation_data.cpp:
        (Ewk_Navigation_Data::Ewk_Navigation_Data):
        (Ewk_Navigation_Data::originalRequest):
        (Ewk_Navigation_Data::title):
        (Ewk_Navigation_Data::url):
        (ewk_navigation_data_title_get):
        (ewk_navigation_data_original_request_get):
        (ewk_navigation_data_url_get):
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        (Ewk_Navigation_Data):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (Ewk_Navigation_Policy_Decision::Ewk_Navigation_Policy_Decision):
        (Ewk_Navigation_Policy_Decision::~Ewk_Navigation_Policy_Decision):
        (Ewk_Navigation_Policy_Decision::navigationType):
        (Ewk_Navigation_Policy_Decision::mouseButton):
        (Ewk_Navigation_Policy_Decision::modifiers):
        (Ewk_Navigation_Policy_Decision::frameName):
        (Ewk_Navigation_Policy_Decision::request):
        (Ewk_Navigation_Policy_Decision::accept):
        (Ewk_Navigation_Policy_Decision::reject):
        (Ewk_Navigation_Policy_Decision::download):
        (ewk_navigation_policy_navigation_type_get):
        (ewk_navigation_policy_mouse_button_get):
        (ewk_navigation_policy_modifiers_get):
        (ewk_navigation_policy_frame_name_get):
        (ewk_navigation_policy_request_get):
        (ewk_navigation_policy_decision_accept):
        (ewk_navigation_policy_decision_reject):
        (ewk_navigation_policy_decision_download):
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (Ewk_Navigation_Policy_Decision):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Favicon_Database members private
        https://bugs.webkit.org/show_bug.cgi?id=99932

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Favicon_Database class members private.

        * UIProcess/API/efl/ewk_favicon_database.cpp:
        (Ewk_Favicon_Database::Ewk_Favicon_Database):
        (Ewk_Favicon_Database::iconURLForPageURL):
        (Ewk_Favicon_Database::watchChanges):
        (Ewk_Favicon_Database::unwatchChanges):
        (AsyncIconRequestResponse):
        (AsyncIconRequestResponse::AsyncIconRequestResponse):
        (respond_icon_request_idle):
        (Ewk_Favicon_Database::iconForPageURL):
        (Ewk_Favicon_Database::didChangeIconForPageURL):
        (Ewk_Favicon_Database::getIconSurfaceSynchronously):
        (Ewk_Favicon_Database::iconDataReadyForPageURL):
        (ewk_favicon_database_icon_url_get):
        (ewk_favicon_database_async_icon_get):
        (ewk_favicon_database_icon_change_callback_add):
        (ewk_favicon_database_icon_change_callback_del):
        * UIProcess/API/efl/ewk_favicon_database.h:
        * UIProcess/API/efl/ewk_favicon_database_private.h:
        (Ewk_Favicon_Database):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data::~Ewk_View_Private_Data):
        (_ewk_view_initialize):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk back / forward list classes members private and remove private C functions
        https://bugs.webkit.org/show_bug.cgi?id=99929

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Back_Forward_List and Ewk_Back_Forward_List_Item members
        private and remove private C functions.

        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (Ewk_Back_Forward_List::Ewk_Back_Forward_List):
        (Ewk_Back_Forward_List::nextItem):
        (Ewk_Back_Forward_List::previousItem):
        (Ewk_Back_Forward_List::currentItem):
        (Ewk_Back_Forward_List::itemAt):
        (Ewk_Back_Forward_List::size):
        (Ewk_Back_Forward_List::backList):
        (Ewk_Back_Forward_List::forwardList):
        (Ewk_Back_Forward_List::getFromCacheOrCreate):
        (Ewk_Back_Forward_List::createEinaList):
        (Ewk_Back_Forward_List::update):
        (ewk_back_forward_list_current_item_get):
        (ewk_back_forward_list_previous_item_get):
        (ewk_back_forward_list_next_item_get):
        (ewk_back_forward_list_item_at_index_get):
        (ewk_back_forward_list_count):
        (ewk_back_forward_list_n_back_items_copy):
        (ewk_back_forward_list_n_forward_items_copy):
        * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
        (Ewk_Back_Forward_List_Item::Ewk_Back_Forward_List_Item):
        (Ewk_Back_Forward_List_Item::url):
        (Ewk_Back_Forward_List_Item::title):
        (Ewk_Back_Forward_List_Item::originalURL):
        (ewk_back_forward_list_item_url_get):
        (ewk_back_forward_list_item_title_get):
        (ewk_back_forward_list_item_original_url_get):
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        (Ewk_Back_Forward_List_Item):
        * UIProcess/API/efl/ewk_back_forward_list_private.h:
        (Ewk_Back_Forward_List):
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didChangeBackForwardList):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Cookie_Manager members private
        https://bugs.webkit.org/show_bug.cgi?id=99930

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Cookie_Manager class members private.

        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (Ewk_Cookie_Manager::Ewk_Cookie_Manager):
        (Ewk_Cookie_Manager::~Ewk_Cookie_Manager):
        (Ewk_Cookie_Manager::setPersistentStorage):
        (Ewk_Cookie_Manager::setHTTPAcceptPolicy):
        (Ewk_Cookie_Manager::clearHostnameCookies):
        (Ewk_Cookie_Manager::clearAllCookies):
        (Ewk_Cookie_Manager::watchChanges):
        (Ewk_Cookie_Manager::isWatchingForChanges):
        (Ewk_Cookie_Manager::getHostNamesWithCookies):
        (Ewk_Cookie_Manager::getHTTPAcceptPolicy):
        (Ewk_Cookie_Manager::cookiesDidChange):
        (ewk_cookie_manager_persistent_storage_set):
        (ewk_cookie_manager_accept_policy_set):
        (Get_Policy_Async_Data):
        (Get_Policy_Async_Data::Get_Policy_Async_Data):
        (ewk_cookie_manager_async_accept_policy_get):
        (Get_Hostnames_Async_Data):
        (Get_Hostnames_Async_Data::Get_Hostnames_Async_Data):
        (ewk_cookie_manager_async_hostnames_with_cookies_get):
        (ewk_cookie_manager_hostname_cookies_clear):
        (ewk_cookie_manager_cookies_clear):
        (ewk_cookie_manager_changes_watch):
        * UIProcess/API/efl/ewk_cookie_manager_private.h:
        (Ewk_Cookie_Manager):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk intent classes members private
        https://bugs.webkit.org/show_bug.cgi?id=99832

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Intent and Ewk_Intent_Service members
        private and add class methods to get them.

        * UIProcess/API/efl/ewk_intent.cpp:
        (Ewk_Intent::Ewk_Intent):
        (Ewk_Intent::webIntentData):
        (Ewk_Intent::action):
        (Ewk_Intent::type):
        (Ewk_Intent::service):
        (Ewk_Intent::suggestions):
        (Ewk_Intent::extra):
        (Ewk_Intent::extraKeys):
        (ewk_intent_action_get):
        (ewk_intent_type_get):
        (ewk_intent_service_get):
        (ewk_intent_suggestions_get):
        (ewk_intent_extra_get):
        (ewk_intent_extra_names_get):
        * UIProcess/API/efl/ewk_intent_private.h:
        (WebKit):
        (Ewk_Intent):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (Ewk_Intent_Service::Ewk_Intent_Service):
        (Ewk_Intent_Service::action):
        (Ewk_Intent_Service::type):
        (Ewk_Intent_Service::href):
        (Ewk_Intent_Service::title):
        (Ewk_Intent_Service::disposition):
        (ewk_intent_service_action_get):
        (ewk_intent_service_type_get):
        (ewk_intent_service_href_get):
        (ewk_intent_service_title_get):
        (ewk_intent_service_disposition_get):
        * UIProcess/API/efl/ewk_intent_service_private.h:
        (Ewk_Intent_Service):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_deliver):

2012-10-21  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Download_Job members private and remove private C functions
        https://bugs.webkit.org/show_bug.cgi?id=99697

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Download_Job private and replace private C functions
        by class methods. New methods were also added to match the
        public C API.

        * UIProcess/API/efl/ewk_context.cpp:
        (ewk_context_download_job_add):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (decideDestinationWithSuggestedFilename):
        (didReceiveResponse):
        (didCreateDestination):
        (didReceiveData):
        (didFail):
        (didCancel):
        (didFinish):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (Ewk_Download_Job::Ewk_Download_Job):
        (Ewk_Download_Job::id):
        (Ewk_Download_Job::view):
        (ewk_download_job_state_get):
        (Ewk_Download_Job::state):
        (ewk_download_job_request_get):
        (Ewk_Download_Job::request):
        (ewk_download_job_response_get):
        (Ewk_Download_Job::response):
        (ewk_download_job_destination_get):
        (Ewk_Download_Job::destination):
        (ewk_download_job_destination_set):
        (Ewk_Download_Job::setDestination):
        (ewk_download_job_suggested_filename_get):
        (Ewk_Download_Job::suggestedFileName):
        (ewk_download_job_cancel):
        (Ewk_Download_Job::cancel):
        (ewk_download_job_estimated_progress_get):
        (Ewk_Download_Job::estimatedProgress):
        (ewk_download_job_elapsed_time_get):
        (Ewk_Download_Job::elapsedTime):
        (Ewk_Download_Job::setResponse):
        (Ewk_Download_Job::setSuggestedFileName):
        (Ewk_Download_Job::incrementReceivedData):
        (Ewk_Download_Job::setState):
        * UIProcess/API/efl/ewk_download_job.h:
        * UIProcess/API/efl/ewk_download_job_private.h:
        (Ewk_Download_Job):

2012-10-19  Anders Carlsson  <andersca@apple.com>

        Remove ::encode template specializations and just use overloads
        https://bugs.webkit.org/show_bug.cgi?id=99865

        Reviewed by Andreas Kling.

        Get rid of the various encode functions and just use overloading instead.

        * Platform/CoreIPC/ArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Platform/CoreIPC/ArgumentCoders.h:
        * Platform/CoreIPC/ArgumentEncoder.cpp:
        (CoreIPC::ArgumentEncoder::encodeVariableLengthByteArray):
        (CoreIPC::ArgumentEncoder::encode):
        * Platform/CoreIPC/ArgumentEncoder.h:
        (ArgumentEncoder):
        (CoreIPC::ArgumentEncoder::encodeEnum):
        * Platform/CoreIPC/win/ConnectionWin.cpp:
        (CoreIPC::Connection::sendOutgoingMessage):
        * Platform/mac/SharedMemoryMac.cpp:
        (WebKit::SharedMemory::Handle::encode):
        * Platform/win/SharedMemoryWin.cpp:
        (WebKit::SharedMemory::Handle::encode):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Shared/DictionaryPopupInfo.cpp:
        (WebKit::DictionaryPopupInfo::encode):
        * Shared/Plugins/NPIdentifierData.cpp:
        (WebKit::NPIdentifierData::encode):
        (WebKit::NPIdentifierData::decode):
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode):
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):
        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        * Shared/cf/ArgumentCodersCF.cpp:
        (CoreIPC::encode):
        * Shared/mac/ArgumentCodersMac.mm:
        (CoreIPC::encode):
        * Shared/mac/KeychainAttribute.cpp:
        (CoreIPC::encode):
        * Shared/mac/PlatformCertificateInfo.mm:
        (WebKit::PlatformCertificateInfo::encode):
        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::HandleArray::encode):
        * Shared/mac/SecItemRequestData.cpp:
        (WebKit::SecItemRequestData::encode):
        * Shared/mac/SecItemResponseData.cpp:
        (WebKit::SecItemResponseData::encode):
        * Shared/mac/SecKeychainItemRequestData.cpp:
        (WebKit::SecKeychainItemRequestData::encode):
        * Shared/mac/SecKeychainItemResponseData.cpp:
        (WebKit::SecKeychainItemResponseData::encode):
        * Shared/qt/ArgumentCodersQt.cpp:
        (CoreIPC::::encode):
        * Shared/qt/QtNetworkReplyData.cpp:
        (WebKit::QtNetworkReplyData::encode):
        * Shared/soup/PlatformCertificateInfo.cpp:
        (WebKit::PlatformCertificateInfo::encode):
        * Shared/win/LayerTreeContextWin.cpp:
        (WebKit::LayerTreeContext::encode):
        * Shared/win/PlatformCertificateInfo.cpp:
        (WebKit::PlatformCertificateInfo::encode):
        * Shared/win/WindowGeometry.cpp:
        (WebKit::WindowGeometry::encode):
        * WebProcess/WebPage/EncoderAdapter.cpp:
        (WebKit::EncoderAdapter::encodeBool):
        (WebKit::EncoderAdapter::encodeUInt16):
        (WebKit::EncoderAdapter::encodeUInt32):
        (WebKit::EncoderAdapter::encodeUInt64):
        (WebKit::EncoderAdapter::encodeInt32):
        (WebKit::EncoderAdapter::encodeInt64):
        (WebKit::EncoderAdapter::encodeFloat):
        (WebKit::EncoderAdapter::encodeDouble):
        (WebKit::EncoderAdapter::encodeString):

2012-10-20  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix compile warning.

        * UIProcess/API/gtk/tests/GNUmakefile.am: Pass sourcedir to
        glib-compile-resource when generating dependencies too.

2012-10-19  Seokju Kwon  <seokju.kwon@samsung.com>

        [EFL][WK2] Change the title of inspector window when inspected page is changed
        https://bugs.webkit.org/show_bug.cgi?id=99684

        Reviewed by Gyuyoung Kim.

        Implement platformInspectedURLChanged() to change the title of inspector window
        when inspected page is changed.

        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformInspectedURLChanged):

2012-10-19  Dan Bernstein  <mitz@apple.com>

        Add bundle API for hit-testing
        https://bugs.webkit.org/show_bug.cgi?id=99907

        Reviewed by Sam Weinig.

        Test: TestWebKitAPI/Tests/WebKit2/InjectedBundleFrameHitTest.cpp

        * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
        (WKBundleFrameCreateHitTestResult): Added this wrapper.
        * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::hitTest): Added. Hit tests at the given point, ignoring clipping.
        * WebProcess/WebPage/WebFrame.h:
        (WebFrame): Declared hitTest.

2012-10-19  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Add API unit tests for scaling
        https://bugs.webkit.org/show_bug.cgi?id=99451

        Reviewed by Gyuyoung Kim.

        Add API unit test for ewk_view_scale_set()/get() APIs.

        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-19  KyungTae Kim  <ktf.kim@samsung.com>

        [WK2][EFL] Modify ewk_view_scale_set to public API
        https://bugs.webkit.org/show_bug.cgi?id=99902

        Reviewed by Gyuyoung Kim.

        Modify ewk_view_scale_set to public API.

        * UIProcess/API/efl/ewk_view.h:

2012-10-19  Andreas Kling  <kling@webkit.org>

        Race condition in WebProcessProxy::handleGetPlugins().
        <http://webkit.org/b/99903>
        <rdar://problem/12541471>

        Reviewed by Anders Carlsson.

        Scope the Vector<PluginModuleInfo> so that all the destructors are guaranteed
        to have run when sendDidGetPlugins() executes on the main thread.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::handleGetPlugins):

2012-10-19  Brady Eidson  <beidson@apple.com>

        WebProcess should only connect to the NetworkProcess if NetworkProcess is enabled
        https://bugs.webkit.org/show_bug.cgi?id=99885

        Reviewed by Alexey Proskuryakov.

        WebContext should tell each WebProcess it creates whether NetworkProcess use is enabled.

        Add a WebProcess initialization flag for whether or not NetworkProcess use is enabled:
        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):

        Include that info in the initialization parameters:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):

        Store whether or not NetworkProcess use is enabled, and only connect to the NetworkProcess if appropriate:
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::WebProcess):
        (WebKit::WebProcess::initializeWebProcess):
        (WebKit::WebProcess::ensureNetworkProcessConnection):
        * WebProcess/WebProcess.h:

2012-10-19  Brady Eidson  <beidson@apple.com>

        Add infrastructure for NetworkProcess management
        https://bugs.webkit.org/show_bug.cgi?id=99817

        Reviewed by Alexey Proskuryakov.

        Add support for the WebProcess itself requesting a connection to the default NetworkProcess.

        Add proper handling of crashes so any of the Web/Network/UI processes crash the others take appropriate action.

        Project file stuff and general messaging changes:
        * DerivedSources.make:
        * Platform/CoreIPC/MessageID.h:
        * WebKit2.xcodeproj/project.pbxproj:
        * Platform/CoreIPC/HandleMessage.h:
        (CoreIPC):
        (CoreIPC::callMemberFunction): Add some new required templates.

        WebContext now does much less of this stuff:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):
        * UIProcess/WebContext.h:
        (WebContext):

        UIProcess now has a process manager to handle most of this:
        * UIProcess/Network/NetworkProcessManager.cpp:
        (WebKit):
        (WebKit::NetworkProcessManager::shared):
        (WebKit::NetworkProcessManager::NetworkProcessManager):
        (WebKit::NetworkProcessManager::getNetworkProcessConnection):
        (WebKit::NetworkProcessManager::ensureNetworkProcess):
        (WebKit::NetworkProcessManager::removeNetworkProcessProxy):
        * UIProcess/Network/NetworkProcessManager.h:
        (WebKit):
        (NetworkProcessManager):

        Flesh out the NetworkProcessProxy to handle creating these connections between Network and Web Processes:
        * UIProcess/Network/NetworkProcessProxy.cpp:
        (WebKit::NetworkProcessProxy::create):
        (WebKit::NetworkProcessProxy::NetworkProcessProxy):
        (WebKit::NetworkProcessProxy::getNetworkProcessConnection):
        (WebKit):
        (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
        (WebKit::NetworkProcessProxy::didReceiveMessage):
        (WebKit::NetworkProcessProxy::didClose):
        (WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
        (WebKit::NetworkProcessProxy::didFinishLaunching):
        * UIProcess/Network/NetworkProcessProxy.h:
        (WebKit):
        (NetworkProcessProxy):
        * UIProcess/Network/NetworkProcessProxy.messages.in:

        Add a class representing a connection from a NetworkProcess to a particular WebProcess:
        * NetworkProcess/NetworkConnectionToWebProcess.cpp: Added.
        (WebKit):
        (WebKit::NetworkConnectionToWebProcess::create):
        (WebKit::NetworkConnectionToWebProcess::NetworkConnectionToWebProcess):
        (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):
        (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
        (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
        (WebKit::NetworkConnectionToWebProcess::didClose):
        (WebKit::NetworkConnectionToWebProcess::didReceiveInvalidMessage):
        (WebKit::NetworkConnectionToWebProcess::didReceiveNetworkConnectionToWebProcessMessage):
        * NetworkProcess/NetworkConnectionToWebProcess.h:
        (WebKit):
        (NetworkConnectionToWebProcess):
        (WebKit::NetworkConnectionToWebProcess::connection):
        * NetworkProcess/NetworkConnectionToWebProcess.messages.in:

        Add the ability for a NetworkProcess to create a connection for a different process, which is used on behalf of WebProcesses for now:
        * NetworkProcess/NetworkProcess.cpp:
        (WebKit::NetworkProcess::removeNetworkConnectionToWebProcess):
        (WebKit):
        (WebKit::NetworkProcess::didClose):
        (WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
        * NetworkProcess/NetworkProcess.h:
        (WebKit):
        (NetworkProcess):
        * NetworkProcess/NetworkProcess.messages.in:

        Forward on the message that a WebProcess wants a connection to a NetworkProcess:
        * UIProcess/WebProcessProxy.cpp:
        (WebKit):
        (WebKit::WebProcessProxy::getNetworkProcessConnection):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in:

        Add a class representing the WebProcesses connection to the NetworkProcess:
        * WebProcess/Network/NetworkProcessConnection.cpp:
        (WebKit):
        (WebKit::NetworkProcessConnection::NetworkProcessConnection):
        (WebKit::NetworkProcessConnection::~NetworkProcessConnection):
        (WebKit::NetworkProcessConnection::didReceiveMessage):
        (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
        (WebKit::NetworkProcessConnection::didClose):
        (WebKit::NetworkProcessConnection::didReceiveInvalidMessage):
        * WebProcess/Network/NetworkProcessConnection.h:
        (WebKit):
        (NetworkProcessConnection):
        (WebKit::NetworkProcessConnection::create):
        (WebKit::NetworkProcessConnection::connection):

        Have the WebProcess make sure it has a connection to the NetworkProcess, even though it currently does nothing with it:
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::initializeWebProcess):
        (WebKit):
        (WebKit::WebProcess::ensureNetworkProcessConnection):
        (WebKit::WebProcess::networkProcessConnectionClosed):
        (WebKit::WebProcess::networkProcessCrashed):
        * WebProcess/WebProcess.h:
        (WebKit):
        (WebProcess):
        * WebProcess/WebProcess.messages.in:

2012-10-19  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r131931.
        http://trac.webkit.org/changeset/131931
        https://bugs.webkit.org/show_bug.cgi?id=99871

        Broke Safari exensions (Requested by smfr on #webkit).

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::createSyncMessageEncoder):
        (CoreIPC::Connection::dispatchSyncMessage):
        * Platform/CoreIPC/Connection.h:
        (Connection):
        (CoreIPC::Connection::deprecatedSendSync):
        (CoreIPC::Connection::deprecatedSend):
        * Platform/CoreIPC/MessageDecoder.cpp:
        (CoreIPC::MessageDecoder::MessageDecoder):
        * Platform/CoreIPC/MessageDecoder.h:
        (MessageDecoder):
        * Platform/CoreIPC/MessageEncoder.cpp:
        (CoreIPC::MessageEncoder::create):
        (CoreIPC::MessageEncoder::MessageEncoder):
        * Platform/CoreIPC/MessageEncoder.h:
        (MessageEncoder):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * Platform/CoreIPC/StringReference.cpp: Removed.
        * Platform/CoreIPC/StringReference.h: Removed.
        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::open):
        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        (forward_declarations_and_headers):
        (generate_messages_header):
        * Scripts/webkit2/messages_unittest.py:
        * Shared/CoreIPCSupport/WebContextMessageKinds.h:
        * Target.pri:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::deprecatedSend):
        (WebKit::WebProcessProxy::send):
        * WebKit2.xcodeproj/project.pbxproj:
        * win/WebKit2.vcproj:

2012-10-19  Anders Carlsson  <andersca@apple.com>

        Don't use CStrings for message receiver names and message names
        https://bugs.webkit.org/show_bug.cgi?id=99853

        Reviewed by Andreas Kling.

        Introduce StringReference which is similar to DataReference except it holds a pointer to + length of a char *
        and can be created from a string literal. Use this in place of CString in MessageEncoder/MessageDecoder and
        make MessageReceiverMap use a HashMap from StringReferences to MessageReceivers for global message receivers.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::createSyncMessageEncoder):
        (CoreIPC::Connection::dispatchSyncMessage):
        * Platform/CoreIPC/Connection.h:
        (Connection):
        (CoreIPC::Connection::deprecatedSendSync):
        (CoreIPC::Connection::deprecatedSend):
        * Platform/CoreIPC/MessageDecoder.cpp:
        (CoreIPC::MessageDecoder::MessageDecoder):
        * Platform/CoreIPC/MessageDecoder.h:
        (CoreIPC::MessageDecoder::messageReceiverName):
        (CoreIPC::MessageDecoder::messageName):
        (MessageDecoder):
        * Platform/CoreIPC/MessageEncoder.cpp:
        (CoreIPC::MessageEncoder::create):
        (CoreIPC::MessageEncoder::MessageEncoder):
        * Platform/CoreIPC/MessageEncoder.h:
        (CoreIPC):
        (MessageEncoder):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * Platform/CoreIPC/StringReference.cpp: Added.
        (CoreIPC):
        (CoreIPC::StringReference::encode):
        (CoreIPC::StringReference::decode):
        (CoreIPC::StringReference::Hash::hash):
        * Platform/CoreIPC/StringReference.h: Added.
        (CoreIPC):
        (StringReference):
        (CoreIPC::StringReference::StringReference):
        (CoreIPC::StringReference::isEmpty):
        (CoreIPC::StringReference::size):
        (CoreIPC::StringReference::data):
        (CoreIPC::StringReference::operator==):
        (Hash):
        (CoreIPC::StringReference::Hash::equal):
        (WTF):
        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::open):
        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        (forward_declarations_and_headers):
        (generate_messages_header):
        * Scripts/webkit2/messages_unittest.py:
        * Shared/CoreIPCSupport/WebContextMessageKinds.h:
        * Target.pri:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::addMessageReceiver):
        (WebKit):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.h:
        (WebKit::WebProcessProxy::deprecatedSend):
        (WebKit::WebProcessProxy::send):
        * WebKit2.xcodeproj/project.pbxproj:
        * win/WebKit2.vcproj:

2012-10-19  Dongwoo Joshua Im  <dw.im@samsung.com>

        Rename ENABLE_CSS3_TEXT_DECORATION to ENABLE_CSS3_TEXT
        https://bugs.webkit.org/show_bug.cgi?id=99804

        Reviewed by Julien Chaffraix.

        CSS3 text related properties will be implemented under this flag,
        including text decoration, text-align-last, and text-justify.

        * Configurations/FeatureDefines.xcconfig:

2012-10-19  Brady Eidson  <beidson@apple.com>

        REGRESSION (r131686): Crash in NSToolTipManager mouseEnteredToolTip
        <rdar://problem/12527528> and https://bugs.webkit.org/show_bug.cgi?id=99792

        Patch by Darin Adler, reviewed by Brady Eidson.

        We should explicitly remove tooltips when the view moves to a new window.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView viewDidMoveToWindow]):

2012-10-19  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WTR] renderToOffscreenBuffer should not be set if the real render loop is active
        https://bugs.webkit.org/show_bug.cgi?id=99831

        Reviewed by Jocelyn Turcotte.

        Update the comment about renderToOffscreenBuffer to better describe its role.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::setNeedsDisplay):

2012-10-19  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2] Rename EflViewportHandler to PageViewportControllerClientEfl
        https://bugs.webkit.org/show_bug.cgi?id=99101

        Reviewed by Gyuyoung Kim.

        Rename EFlViewportHandler to PageViewportControllerClientEfl.
        Also, make it inherit from PageViewportControllerClient. The actual implementation
        of PageViewportControllerClient for Efl port will come in a separate patch.

        * CMakeLists.txt:
        * PlatformEfl.cmake:
        * UIProcess/API/efl/EflViewportHandler.cpp: Removed.
        * UIProcess/API/efl/EflViewportHandler.h: Removed.
        * UIProcess/API/efl/PageViewportControllerClientEfl.cpp: Copied from Source/WebKit2/UIProcess/API/efl/EflViewportHandler.cpp.
        (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::~PageViewportControllerClientEfl):
        (WebKit::PageViewportControllerClientEfl::drawingArea):
        (WebKit::PageViewportControllerClientEfl::setRendererActive):
        (WebKit::PageViewportControllerClientEfl::display):
        (WebKit::PageViewportControllerClientEfl::updateViewportSize):
        (WebKit::PageViewportControllerClientEfl::setVisibleContentsRect):
        (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
        (WebKit):
        (WebKit::PageViewportControllerClientEfl::setViewportPosition):
        (WebKit::PageViewportControllerClientEfl::setContentsScale):
        (WebKit::PageViewportControllerClientEfl::didResumeContent):
        (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
        (WebKit::PageViewportControllerClientEfl::didChangeViewportAttributes):
        (WebKit::PageViewportControllerClientEfl::setController):
        * UIProcess/API/efl/PageViewportControllerClientEfl.h: Copied from Source/WebKit2/UIProcess/API/efl/EflViewportHandler.h.
        (WebKit::PageViewportControllerClientEfl::create):
        (PageViewportControllerClientEfl):
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data):
        (_ewk_view_initialize):
        (ewk_view_scale_set):
        * UIProcess/PageViewportController.cpp:
        * UIProcess/PageViewportController.h:

2012-10-19  Csaba Osztrogonác  <ossy@webkit.org>

        REGRESSION(r131844): It broke the build on !ENABLE(NETSCAPE_PLUGIN_API) platforms
        https://bugs.webkit.org/show_bug.cgi?id=99820

        Reviewed by Jocelyn Turcotte.

        * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
        (WebKit::ProcessLauncher::launchProcess): Add missing ENABLE(PLUGIN_PROCESS) guard.
        * UIProcess/Plugins/unix/PluginInfoStoreUnix.cpp: The whole file should be ENABLE(NETSCAPE_PLUGIN_API) guarded as the PluginInfoStore class.
        (WebKit::PluginInfoStore::getPluginInfo):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::createPlugin): Eliminate the unused webPage variable (build fail with -Werror) if !(PLATFORM(MAC)||ENABLE(NETSCAPE_PLUGIN_API)).

2012-10-19  Huang Dongsung  <luxtella@company100.net>

        Build fix after r131741 for !ENABLE(CSS_SHADERS) platforms.
        https://bugs.webkit.org/show_bug.cgi?id=99775

        Reviewed by Csaba Osztrogonác.

        A class in WebKit namespace is only used when ENABLE(CSS_SHADERS), so we
        must guard "using namespace WebKit" by ENABLE(CSS_SHADERS). Otherwise,
        it brokes the Qt --minimal build.

        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
        (CoreIPC::::decode):

2012-10-19  Carlos Garcia Campos  <cgarcia@igalia.com>

        REGRESSION (r130640 - r130644): TestCookieManager API test is failing
        https://bugs.webkit.org/show_bug.cgi?id=98738

        Reviewed by Philippe Normand.

        For some reason the order of the domains in the array has changed,
        but it doesn't really matter, what we want to check is that both
        cookies have been accepted and the array contains both domains.

        * UIProcess/API/gtk/tests/TestCookieManager.cpp:
        (testCookieManagerAcceptPolicy): Check that first and third party
        domains are present in the domains array.

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        WebPageProxy::canShowMIMEType() should return false for plugins when they are disabled
        https://bugs.webkit.org/show_bug.cgi?id=99449

        Reviewed by Anders Carlsson.

        * UIProcess/API/gtk/tests/GNUmakefile.am:
        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewCanShowMIMEType): Test that
        webkit_web_view_can_show_mime_type() returns FALSE if plugins are
        disabled.
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::canShowMIMEType): Return false for
        MIME-Type of plugins if they are disabled.

2012-10-18  Brady Eidson  <beidson@apple.com>

        Move ConnectionStack out of WebProcessConnection into its own files.
        https://bugs.webkit.org/show_bug.cgi?id=99813

        Reviewed by Andreas Kling.

        ConnectionStack will need to be used in a few upcoming areas, so it needs to be in its own header and implementation files.

        Project file stuff:
        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * WebKit2.xcodeproj/project.pbxproj:

        Move it from here:
        * PluginProcess/WebProcessConnection.cpp:
        (WebKit::WebProcessConnection::setGlobalException):
        (WebKit::WebProcessConnection::didReceiveMessage):
        (WebKit::WebProcessConnection::didReceiveSyncMessage):

        Into here:
        * Shared/ConnectionStack.cpp: Added.
        (WebKit):
        (WebKit::ConnectionStack::shared):
        * Shared/ConnectionStack.h: Added.
        (CoreIPC):
        (WebKit):
        (ConnectionStack):
        (WebKit::ConnectionStack::current):
        (CurrentConnectionPusher):
        (WebKit::ConnectionStack::CurrentConnectionPusher::CurrentConnectionPusher):
        (WebKit::ConnectionStack::CurrentConnectionPusher::~CurrentConnectionPusher):

2012-10-18  Eunmi Lee  <eunmi15.lee@samsung.com>

        [EFL][WK2] Move ewk_{init,shutdown}() to the main() function of EFL API test.
        https://bugs.webkit.org/show_bug.cgi?id=99681

        Reviewed by Gyuyoung Kim.

        The ewk_{init,shutdown}() is called whenever processing the each test,
        so tests can be failed if EFL libraries APIs are called between
        ewk_shutdown() and next ewk_init().
        The ewk_{init,shutdown}() should be called once per application.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::SetUp):
        (EWK2UnitTest::EWK2UnitTestBase::TearDown):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
        (main):

2012-10-18  Byungwoo Lee  <bw80.lee@samsung.com>

        Fix build warning.
        https://bugs.webkit.org/show_bug.cgi?id=99788

        Reviewed by Kentaro Hara.

        Remove parameter name or use ASSERT_UNUSED macro for removing
        -Wunused-parameter.

        * PluginProcess/unix/PluginProcessMainUnix.cpp:
        (WebKit::PluginProcessMainUnix):
        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):

2012-10-18  Ryuan Choi  <ryuan.choi@gmail.com>

        Attempt to fix the WebKit2/Efl build after r131841.

        Unreviewed build fix.

        Rename addMessageReceiver to deprecatedAddMessageReceiver.

        * UIProcess/WebBatteryManagerProxy.cpp:
        (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
        * UIProcess/WebNetworkInfoManagerProxy.cpp:
        (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
        * UIProcess/WebVibrationProxy.cpp:
        (WebKit::WebVibrationProxy::WebVibrationProxy):
        * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
        (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):

2012-10-18  Benjamin Poulain  <bpoulain@apple.com>

        [WK2] WebKit2 does not build without PLUGIN_PROCESS on Mac
        https://bugs.webkit.org/show_bug.cgi?id=99771

        Reviewed by Anders Carlsson.

        Add ENABLE(PLUGIN_PROCESS), ENABLE(SHARED_WORKER_PROCESS) and ENABLE(NETSCAPE_PLUGIN_API)
        as needed to exclude the code with dependencies on PLUGIN_PROCESS.

        * Platform/CoreIPC/MessageID.h:
        * Shared/SharedWorkerProcessCreationParameters.cpp:
        * Shared/SharedWorkerProcessCreationParameters.h:
        * SharedWorkerProcess/SharedWorkerProcess.cpp:
        * SharedWorkerProcess/SharedWorkerProcess.h:
        * SharedWorkerProcess/SharedWorkerProcess.messages.in:
        * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm:
        * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm:
        * UIProcess/API/C/WKContext.cpp:
        (WKContextSetAdditionalPluginsDirectory):
        (WKContextGetPluginSiteDataManager):
        * UIProcess/API/C/WKPluginSiteDataManager.cpp:
        (WKPluginSiteDataManagerGetTypeID):
        (WKPluginSiteDataManagerGetSitesWithData):
        * UIProcess/Launcher/ProcessLauncher.cpp:
        (WebKit::ProcessLauncher::processTypeAsString):
        (WebKit::ProcessLauncher::getProcessTypeFromString):
        * UIProcess/Launcher/ProcessLauncher.h:
        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
        (WebKit::createProcess):
        * UIProcess/Plugins/PluginInfoStore.cpp:
        * UIProcess/Plugins/PluginInfoStore.h:
        * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
        * UIProcess/Plugins/WebPluginSiteDataManager.h:
        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        (WebKit::PluginInfoStore::getPluginInfo):
        * UIProcess/SharedWorkers/SharedWorkerProcessManager.cpp:
        * UIProcess/SharedWorkers/SharedWorkerProcessManager.h:
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.messages.in:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::shouldTerminate):
        (WebKit::WebContext::disconnectProcess):
        (WebKit):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::canShowMIMEType):
        (WebKit):
        (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in:
        * WebKit2Prefix.h:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::createPlugin):
        (WebKit::WebFrameLoaderClient::recreatePlugin):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
        (WebKit::WebPlatformStrategies::WebPlatformStrategies):
        (WebKit::WebPlatformStrategies::refreshPlugins):
        (WebKit::WebPlatformStrategies::getPluginInfo):
        (WebKit):
        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
        (WebPlatformStrategies):
        (WebKit):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit):
        (WebKit::WebPage::createPlugin):
        (WebKit::canPluginHandleResponse):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebProcess.cpp:
        (WebKit):
        * WebProcess/WebProcess.h:
        (WebProcess):
        * WebProcess/WebProcess.messages.in:

2012-10-18  Laszlo Gombos  <l.gombos@samsung.com>

        [EFL] Buildfix if Netscape plugin support is disabled
        https://bugs.webkit.org/show_bug.cgi?id=99757

        Reviewed by Gyuyoung Kim.

        Guard PluginProcessMainUnix.cpp with ENABLE(PLUGIN_PROCESS).

        * PluginProcess/unix/PluginProcessMainUnix.cpp:

2012-10-18  Anders Carlsson  <andersca@apple.com>

        Deprecate the current version of MessageReceiverMap::addMessageReceiver
        https://bugs.webkit.org/show_bug.cgi?id=99797

        Reviewed by Andreas Kling.

        Rename addMessageReceiver to deprecatedAddMessageReceiver in preparation for adding a new
        version that takes a string instead.

        * Platform/CoreIPC/Connection.h:
        (CoreIPC::Connection::deprecatedAddMessageReceiver):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::deprecatedAddMessageReceiver):
        (CoreIPC::MessageReceiverMap::invalidate):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
        (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
        * UIProcess/WebApplicationCacheManagerProxy.cpp:
        (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::deprecatedAddMessageReceiver):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebCookieManagerProxy.cpp:
        (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
        * UIProcess/WebDatabaseManagerProxy.cpp:
        (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
        * UIProcess/WebGeolocationManagerProxy.cpp:
        (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
        * UIProcess/WebIconDatabase.cpp:
        (WebKit::WebIconDatabase::WebIconDatabase):
        * UIProcess/WebKeyValueStorageManagerProxy.cpp:
        (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
        * UIProcess/WebMediaCacheManagerProxy.cpp:
        (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
        * UIProcess/WebResourceCacheManagerProxy.cpp:
        (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
        * WebProcess/Authentication/AuthenticationManager.cpp:
        (WebKit::AuthenticationManager::AuthenticationManager):
        * WebProcess/Geolocation/WebGeolocationManager.cpp:
        (WebKit::WebGeolocationManager::registerWebPage):

2012-10-18  Chris Fleizach  <cfleizach@apple.com>

        AX: Crashes in WebProcess at com.apple.WebCore: -[AccessibilityObjectWrapper remoteAccessibilityParentObject] + 78
        https://bugs.webkit.org/show_bug.cgi?id=96443

        Reviewed by Beth Dakin.

        It appears that the crash is due to not checking whether the page object is null. 

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::accessibilityRemoteObject):

2012-10-18  Jaehun Lim  <ljaehun.lim@samsung.com>

        Add support for float-valued prefernces
        https://bugs.webkit.org/show_bug.cgi?id=99419

        Reviewed by Anders Carlsson.

        Support float values for preferences in WK2.

        * Shared/WebPreferencesStore.cpp:
        (WebKit::WebPreferencesStore::encode):
        (WebKit::WebPreferencesStore::decode):
        (WebKit):
        (WebKit::defaultValueForKey):
        * Shared/WebPreferencesStore.h:
        (WebKit):
        (WebPreferencesStore):
        * UIProcess/WebPreferences.cpp:
        (WebKit::WebPreferences::updateFloatValueForKey):
        (WebKit):
        * UIProcess/WebPreferences.h:
        (WebPreferences):
        * UIProcess/cf/WebPreferencesCF.cpp:
        (WebKit::WebPreferences::platformUpdateFloatValueForKey):
        (WebKit):
        * UIProcess/efl/WebPreferencesEfl.cpp:
        (WebKit::WebPreferences::platformUpdateFloatValueForKey):
        (WebKit):
        * UIProcess/gtk/WebPreferencesGtk.cpp:
        (WebKit::WebPreferences::platformUpdateFloatValueForKey):
        (WebKit):
        * UIProcess/mac/WebPreferencesMac.mm:
        (WebKit::WebPreferences::platformUpdateFloatValueForKey):
        (WebKit):
        * UIProcess/qt/WebPreferencesQt.cpp:
        (WebKit::WebPreferences::platformUpdateFloatValueForKey):
        (WebKit):

2012-10-18  Anders Carlsson  <andersca@apple.com>

        Replace uses of ArgumentEncoder/ArgumentDecoder with MessageEncoder/MessageDecoder
        https://bugs.webkit.org/show_bug.cgi?id=99746

        Reviewed by Andreas Kling.

        Change all occurrences of ArgumentDecoder* to MessageDecoder& and all occurrences of ArgumentEncoder*
        to ArgumentEncoder& in all the message receivers. This is the second step towards getting rid of MessageID.

2012-10-18  Yael Aharon  <yael.aharon@intel.com>

        PageViewportController::m_rawAttributes.devicePixelRatio is not initialized
        https://bugs.webkit.org/show_bug.cgi?id=99751

        Reviewed by Antonio Gomes.

        PageViewportController::m_rawAttributes.devicePixelRatio needs to be initialized.
        Due to race condition, we could set the viewport attributes before the first layout.
        If that happens, PageViewportController::m_rawAttributes.devicePixelRatio
        is used without being initialized.

        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::PageViewportController):

2012-10-18  Roger Fong  <roger_fong@apple.com>

        Unreviewed. Build fix after r131701 and r131777.

        * win/WebKit2.def:

2012-10-18  Anders Carlsson  <andersca@apple.com>

        Build fix.

        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        (generate_messages_header):
        * Scripts/webkit2/messages_unittest.py:

2012-10-18  Anders Carlsson  <andersca@apple.com>

        Generated messages should have a receiver name and a name
        https://bugs.webkit.org/show_bug.cgi?id=99740

        Reviewed by Andreas Kling.

        As a first step towards getting rid of MessageID, give each generated message a name and receiver name
        and pass them along when sending the messages.

        * Platform/CoreIPC/Connection.h:
        (CoreIPC::Connection::send):
        (CoreIPC::Connection::sendSync):
        * Platform/CoreIPC/MessageSender.h:
        (CoreIPC::MessageSender::send):
        * Scripts/webkit2/messages.py:
        (message_to_struct_declaration):
        (generate_messages_header):
        * Scripts/webkit2/messages_unittest.py:

2012-10-18  Pablo Flouret  <pablof@motorola.com>

        Implement css3-conditional's @supports rule
        https://bugs.webkit.org/show_bug.cgi?id=86146

        Reviewed by Antti Koivisto.

        * Configurations/FeatureDefines.xcconfig:
            Add an ENABLE_CSS3_CONDITIONAL_RULES flag.

2012-10-18  Michael Saboff  <msaboff@apple.com>

        Make conversion between JSStringRef and WKStringRef work without character size conversions
        https://bugs.webkit.org/show_bug.cgi?id=99727

        Reviewed by Anders Carlsson.

        Use the wrapped WTFString object to convert between JSStringRef and WKStringRef.

        * Shared/WebString.h:
        (WebKit::JSStringCreateWithString):
        (WebKit::WebString::create):
        (WebKit::WebString::createJSString):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use using namespace WebKit in private headers in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=99724

        Reviewed by Xan Lopez.

        Move using namespace WebKit from private headers to the cpp file.

        * UIProcess/API/gtk/WebKitBackForwardList.cpp:
        * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
        * UIProcess/API/gtk/WebKitContextMenu.cpp:
        * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
        * UIProcess/API/gtk/WebKitContextMenuItemPrivate.h:
        * UIProcess/API/gtk/WebKitContextMenuPrivate.h:
        * UIProcess/API/gtk/WebKitCookieManager.cpp:
        * UIProcess/API/gtk/WebKitCookieManagerPrivate.h:
        * UIProcess/API/gtk/WebKitDownload.cpp:
        * UIProcess/API/gtk/WebKitDownloadPrivate.h:
        * UIProcess/API/gtk/WebKitFaviconDatabasePrivate.h:
        * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
        * UIProcess/API/gtk/WebKitFileChooserRequestPrivate.h:
        * UIProcess/API/gtk/WebKitFindController.cpp:
        * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
        * UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h:
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp:
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequestPrivate.h:
        * UIProcess/API/gtk/WebKitGeolocationProvider.cpp:
        * UIProcess/API/gtk/WebKitGeolocationProvider.h:
        * UIProcess/API/gtk/WebKitHitTestResult.cpp:
        * UIProcess/API/gtk/WebKitHitTestResultPrivate.h:
        * UIProcess/API/gtk/WebKitJavascriptResult.cpp:
        * UIProcess/API/gtk/WebKitJavascriptResultPrivate.h:
        * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
        * UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitPolicyDecision.cpp:
        * UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
        * UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitSettings.cpp:
        * UIProcess/API/gtk/WebKitSettingsPrivate.h:
        * UIProcess/API/gtk/WebKitURIResponse.cpp:
        * UIProcess/API/gtk/WebKitURIResponsePrivate.h:
        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
        * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        * UIProcess/API/gtk/WebKitWebContextPrivate.h:
        * UIProcess/API/gtk/WebKitWebInspector.cpp:
        * UIProcess/API/gtk/WebKitWebInspectorPrivate.h:
        * UIProcess/API/gtk/WebKitWebResource.cpp:
        * UIProcess/API/gtk/WebKitWebResourcePrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
        * UIProcess/API/gtk/WebKitWebViewPrivate.h:
        * UIProcess/API/gtk/WebKitWindowProperties.cpp:
        * UIProcess/API/gtk/WebKitWindowPropertiesPrivate.h:

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitFileChooserRequest
        https://bugs.webkit.org/show_bug.cgi?id=96774

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
        (_WebKitFileChooserRequestPrivate):
        (webkitFileChooserRequestCreate):
        (webkit_file_chooser_request_get_mime_types):
        (webkit_file_chooser_request_get_mime_types_filter):
        (webkit_file_chooser_request_get_select_multiple):
        (webkit_file_chooser_request_select_files):
        (webkit_file_chooser_request_get_selected_files):
        (webkit_file_chooser_request_cancel):
        * UIProcess/API/gtk/WebKitFileChooserRequestPrivate.h:
        * UIProcess/API/gtk/WebKitUIClient.cpp:
        (runOpenPanel):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitFormSubmissionRequest
        https://bugs.webkit.org/show_bug.cgi?id=96777

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitFormClient.cpp:
        (willSubmitForm):
        * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
        (_WebKitFormSubmissionRequestPrivate):
        (webkitFormSubmissionRequestCreate):
        (webkit_form_submission_request_get_text_fields):
        (webkit_form_submission_request_submit):
        * UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h:

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitSettings
        https://bugs.webkit.org/show_bug.cgi?id=96784

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (_WebKitSettingsPrivate):
        (webkit_settings_class_init):
        (webkit_settings_init):
        (webkitSettingsAttachSettingsToPage):
        (webkit_settings_get_enable_javascript):
        (webkit_settings_set_enable_javascript):
        (webkit_settings_get_auto_load_images):
        (webkit_settings_set_auto_load_images):
        (webkit_settings_get_load_icons_ignoring_image_load_setting):
        (webkit_settings_set_load_icons_ignoring_image_load_setting):
        (webkit_settings_get_enable_offline_web_application_cache):
        (webkit_settings_set_enable_offline_web_application_cache):
        (webkit_settings_get_enable_html5_local_storage):
        (webkit_settings_set_enable_html5_local_storage):
        (webkit_settings_get_enable_html5_database):
        (webkit_settings_set_enable_html5_database):
        (webkit_settings_get_enable_xss_auditor):
        (webkit_settings_set_enable_xss_auditor):
        (webkit_settings_get_enable_frame_flattening):
        (webkit_settings_set_enable_frame_flattening):
        (webkit_settings_get_enable_plugins):
        (webkit_settings_set_enable_plugins):
        (webkit_settings_get_enable_java):
        (webkit_settings_set_enable_java):
        (webkit_settings_get_javascript_can_open_windows_automatically):
        (webkit_settings_set_javascript_can_open_windows_automatically):
        (webkit_settings_get_enable_hyperlink_auditing):
        (webkit_settings_set_enable_hyperlink_auditing):
        (webkit_settings_set_default_font_family):
        (webkit_settings_set_monospace_font_family):
        (webkit_settings_set_serif_font_family):
        (webkit_settings_set_sans_serif_font_family):
        (webkit_settings_set_cursive_font_family):
        (webkit_settings_set_fantasy_font_family):
        (webkit_settings_set_pictograph_font_family):
        (webkit_settings_get_default_font_size):
        (webkit_settings_set_default_font_size):
        (webkit_settings_get_default_monospace_font_size):
        (webkit_settings_set_default_monospace_font_size):
        (webkit_settings_get_minimum_font_size):
        (webkit_settings_set_minimum_font_size):
        (webkit_settings_set_default_charset):
        (webkit_settings_get_enable_private_browsing):
        (webkit_settings_set_enable_private_browsing):
        (webkit_settings_get_enable_developer_extras):
        (webkit_settings_set_enable_developer_extras):
        (webkit_settings_get_enable_resizable_text_areas):
        (webkit_settings_set_enable_resizable_text_areas):
        (webkit_settings_get_enable_tabs_to_links):
        (webkit_settings_set_enable_tabs_to_links):
        (webkit_settings_get_enable_dns_prefetching):
        (webkit_settings_set_enable_dns_prefetching):
        (webkit_settings_get_enable_caret_browsing):
        (webkit_settings_set_enable_caret_browsing):
        (webkit_settings_get_enable_fullscreen):
        (webkit_settings_set_enable_fullscreen):
        (webkit_settings_get_print_backgrounds):
        (webkit_settings_set_print_backgrounds):
        (webkit_settings_get_enable_webaudio):
        (webkit_settings_set_enable_webaudio):
        (webkit_settings_get_enable_webgl):
        (webkit_settings_set_enable_webgl):
        (webkit_settings_get_allow_modal_dialogs):
        (webkit_settings_get_zoom_text_only):
        (webkit_settings_get_javascript_can_access_clipboard):
        (webkit_settings_set_javascript_can_access_clipboard):
        (webkit_settings_get_media_playback_requires_user_gesture):
        (webkit_settings_set_media_playback_requires_user_gesture):
        (webkit_settings_get_media_playback_allows_inline):
        (webkit_settings_set_media_playback_allows_inline):
        (webkit_settings_get_draw_compositing_indicators):
        (webkit_settings_set_draw_compositing_indicators):
        (webkit_settings_get_enable_site_specific_quirks):
        (webkit_settings_set_enable_site_specific_quirks):
        (webkit_settings_get_enable_page_cache):
        (webkit_settings_set_enable_page_cache):
        (webkit_settings_get_enable_smooth_scrolling):
        (webkit_settings_set_enable_smooth_scrolling):
        * UIProcess/API/gtk/WebKitSettingsPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewSetSettings):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix GTK+ debug build.

        * UIProcess/API/gtk/WebKitWebResource.cpp:
        (webkitWebResourceCreate):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitWindowProperties
        https://bugs.webkit.org/show_bug.cgi?id=96785

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewCreateNewPage):
        * UIProcess/API/gtk/WebKitWindowProperties.cpp:
        (webkitWindowPropertiesUpdateFromWebWindowFeatures):
        * UIProcess/API/gtk/WebKitWindowPropertiesPrivate.h:

2012-10-18  Huang Dongsung  <luxtella@company100.net>

        [WK2] Add CustomFilterOperation serialization in ArgumentCoder.
        https://bugs.webkit.org/show_bug.cgi?id=98733

        Reviewed by Noam Rosenthal.

        Add ArgumentCoders for CustomFilterOperation and all dependent classes.
        Coordinated Graphics will use this css shaders serialization when it enables CSS
        Shaders.

        No new tests, code path is not activated yet.

        * CMakeLists.txt:
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp: Added.
        (CoreIPC):
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h: Added.
        (WebCore):
        (CoreIPC):
        * Shared/CoordinatedGraphics/WebCustomFilterProgram.h: Added.
        (WebKit):
        (WebCustomFilterProgram):
            WebCustomFilterProgram is made to serialize the data of a
            StyleCustomFilterProgram to the UI process.
        (WebKit::WebCustomFilterProgram::create):
        (WebKit::WebCustomFilterProgram::WebCustomFilterProgram):
        * Shared/ShareableSurface.cpp:
        * Shared/WebCoreArgumentCoders.cpp:
        * Shared/WebCoreArgumentCoders.h:
        * Target.pri:
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        * WebKit2.pri:
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitWebResource
        https://bugs.webkit.org/show_bug.cgi?id=96783

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitWebResource.cpp:
        (_WebKitWebResourcePrivate):
        (webkitWebResourceCreate):
        (webkitWebResourceGetFrame):
        (ResourceGetDataAsyncData):
        (resourceDataCallback):
        (webkit_web_resource_get_data):
        (webkit_web_resource_get_data_finish):
        * UIProcess/API/gtk/WebKitWebResourcePrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (setCertificateToMainResource):
        (webkitWebViewResourceLoadStarted):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitURIResponse
        https://bugs.webkit.org/show_bug.cgi?id=96782

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitURIResponse.cpp:
        (webkitURIResponseSetCertificateInfo):
        * UIProcess/API/gtk/WebKitURIResponsePrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (setCertificateToMainResource):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in PolicyClient classes
        https://bugs.webkit.org/show_bug.cgi?id=96781

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
        (webkitNavigationPolicyDecisionCreate):
        * UIProcess/API/gtk/WebKitNavigationPolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitPolicyClient.cpp:
        (decidePolicyForNavigationActionCallback):
        (decidePolicyForNewWindowActionCallback):
        (decidePolicyForResponseCallback):
        (attachPolicyClientToView):
        * UIProcess/API/gtk/WebKitPolicyClient.h:
        * UIProcess/API/gtk/WebKitPolicyDecision.cpp:
        (_WebKitPolicyDecisionPrivate):
        (webkitPolicyDecisionFinalize):
        (webkitPolicyDecisionSetListener):
        (webkit_policy_decision_use):
        (webkit_policy_decision_ignore):
        (webkit_policy_decision_download):
        * UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitPrivate.cpp:
        (wkEventMouseButtonToWebKitMouseButton):
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
        (webkitResponsePolicyDecisionCreate):
        * UIProcess/API/gtk/WebKitResponsePolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewConstructed):

2012-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitHitTestResult
        https://bugs.webkit.org/show_bug.cgi?id=96779

        Reviewed by Xan Lopez.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitHitTestResult.cpp:
        (webkitHitTestResultCreate):
        (webkitHitTestResultCompare):
        * UIProcess/API/gtk/WebKitHitTestResultPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewMouseTargetChanged):
        (webkitWebViewPopulateContextMenu):

2012-10-15  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WTR] Do a forced repaint before generating pixel results
        https://bugs.webkit.org/show_bug.cgi?id=98654

        Reviewed by Jocelyn Turcotte.

        Added API to convert a QImage to a WKImage so we can
        pass it to cross-platform code.

        * Shared/API/c/qt/WKImageQt.cpp:
        (WKImageCreateFromQImage):
        * Shared/API/c/qt/WKImageQt.h:

2012-10-18  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        [CMake] Depend on the Python scripts in WebKit2/Scripts/webkit2 when regenerating messages.
        https://bugs.webkit.org/show_bug.cgi?id=99702

        Reviewed by Gyuyoung Kim.

        Be in line with most (or all) the other build systems and
        explicitly depend on all the scripts in
        ${WEBKIT2_DIR}/Scripts/webkit2 for the custom command that
        generates messages.

        This helps fix the build after the recent change to messages.py,
        which did not trigger a regeneration of the required files --
        people were just removing their DerivedSources directory
        altogether.

        * CMakeLists.txt:

2012-10-18  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Fix incorrect test expectations of messages_unittest.py.
        https://bugs.webkit.org/show_bug.cgi?id=99699

        Reviewed by Gyuyoung Kim.

        Fix the expected results of messages_unittest.py.

        The expected result of messages_unittest.py has bugs, and it makes failure on python test.

        * Scripts/webkit2/messages_unittest.py:

2012-10-18  Jussi Kukkonen  <jussi.kukkonen@intel.com>

        Add PluginProcessProxy::platformInitializeLaunchOptions
        https://bugs.webkit.org/show_bug.cgi?id=99583

        Reviewed by Sam Weinig.

        Add a platform specific launch options initializer. This enables
        fixing bug 99297 "[EFL] Make plugin process debugging easier
        (PLUGIN_PROCESS_COMMAND_PREFIX)".

        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::PluginProcessProxy):
        * UIProcess/Plugins/PluginProcessProxy.h:
        (PluginProcessProxy):
        * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
        (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
        (WebKit):
        * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
        (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
        (WebKit):
        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
        (WebKit):

2012-10-18  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Update test expectation for the python message test after r131700
        https://bugs.webkit.org/show_bug.cgi?id=99689

        Reviewed by Gyuyoung Kim.

        Need to update test expectations about including headers and forwarding
        declarations on derived sources for ipc message. (after r131700 : build fix)

        * Scripts/webkit2/messages_unittest.py:

2012-10-18  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Remove '_' prefix from private API structure names
        https://bugs.webkit.org/show_bug.cgi?id=99575

        Reviewed by Gyuyoung Kim.

        Removed underscore prefix from WK2 EFL internal structure names.

        * UIProcess/API/efl/VibrationProvider.cpp:
        (Ewk_Vibration_Client::Ewk_Vibration_Client):
        * UIProcess/API/efl/VibrationProvider.h:
        * UIProcess/API/efl/ewk_back_forward_list.h:
        * UIProcess/API/efl/ewk_back_forward_list_item.h:
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        (Ewk_Back_Forward_List_Item::create):
        (Ewk_Back_Forward_List_Item::Ewk_Back_Forward_List_Item):
        * UIProcess/API/efl/ewk_back_forward_list_private.h:
        (Ewk_Back_Forward_List::create):
        (Ewk_Back_Forward_List::Ewk_Back_Forward_List):
        * UIProcess/API/efl/ewk_context.cpp:
        (Ewk_Url_Scheme_Handler::Ewk_Url_Scheme_Handler):
        (Ewk_Context::Ewk_Context):
        (ewk_context_url_scheme_request_received):
        (ewk_context_url_scheme_register):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_download_client_private.h:
        * UIProcess/API/efl/ewk_context_history_client_private.h:
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_context_request_manager_client_private.h:
        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (Ewk_Cookie_Manager::Ewk_Cookie_Manager):
        (Ewk_Cookie_Manager::~Ewk_Cookie_Manager):
        * UIProcess/API/efl/ewk_cookie_manager.h:
        * UIProcess/API/efl/ewk_cookie_manager_private.h:
        (Ewk_Cookie_Manager::create):
        (Ewk_Cookie_Manager):
        * UIProcess/API/efl/ewk_download_job.h:
        * UIProcess/API/efl/ewk_download_job_private.h:
        (Ewk_Download_Job::create):
        (Ewk_Download_Job::Ewk_Download_Job):
        * UIProcess/API/efl/ewk_error.cpp:
        (Ewk_Error::Ewk_Error):
        * UIProcess/API/efl/ewk_error.h:
        * UIProcess/API/efl/ewk_error_private.h:
        (Ewk_Error::create):
        (Ewk_Error):
        * UIProcess/API/efl/ewk_favicon_database.cpp:
        (Ewk_Favicon_Database::Ewk_Favicon_Database):
        * UIProcess/API/efl/ewk_favicon_database.h:
        * UIProcess/API/efl/ewk_favicon_database_private.h:
        (Ewk_Favicon_Database::create):
        (Ewk_Favicon_Database):
        * UIProcess/API/efl/ewk_form_submission_request.h:
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        (Ewk_Form_Submission_Request::~Ewk_Form_Submission_Request):
        (Ewk_Form_Submission_Request::create):
        (Ewk_Form_Submission_Request::Ewk_Form_Submission_Request):
        * UIProcess/API/efl/ewk_intent.h:
        * UIProcess/API/efl/ewk_intent_private.h:
        (Ewk_Intent::create):
        (Ewk_Intent::Ewk_Intent):
        * UIProcess/API/efl/ewk_intent_service.h:
        * UIProcess/API/efl/ewk_intent_service_private.h:
        (Ewk_Intent_Service::create):
        (Ewk_Intent_Service::Ewk_Intent_Service):
        * UIProcess/API/efl/ewk_navigation_data.h:
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        (Ewk_Navigation_Data::create):
        (Ewk_Navigation_Data::Ewk_Navigation_Data):
        * UIProcess/API/efl/ewk_navigation_policy_decision.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (Ewk_Navigation_Policy_Decision::~Ewk_Navigation_Policy_Decision):
        (Ewk_Navigation_Policy_Decision::create):
        (Ewk_Navigation_Policy_Decision::Ewk_Navigation_Policy_Decision):
        * UIProcess/API/efl/ewk_popup_menu_item.cpp:
        (Ewk_Popup_Menu_Item::Ewk_Popup_Menu_Item):
        * UIProcess/API/efl/ewk_popup_menu_item.h:
        * UIProcess/API/efl/ewk_popup_menu_item_private.h:
        (Ewk_Popup_Menu_Item::create):
        (Ewk_Popup_Menu_Item):
        * UIProcess/API/efl/ewk_resource.h:
        * UIProcess/API/efl/ewk_resource_private.h:
        (Ewk_Resource::create):
        (Ewk_Resource::Ewk_Resource):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/ewk_settings_private.h:
        (Ewk_Settings::Ewk_Settings):
        * UIProcess/API/efl/ewk_text_checker_private.h:
        * UIProcess/API/efl/ewk_touch.h:
        * UIProcess/API/efl/ewk_url_request.h:
        * UIProcess/API/efl/ewk_url_request_private.h:
        (Ewk_Url_Request::create):
        (Ewk_Url_Request::Ewk_Url_Request):
        * UIProcess/API/efl/ewk_url_response.h:
        * UIProcess/API/efl/ewk_url_response_private.h:
        (Ewk_Url_Response::create):
        (Ewk_Url_Response::Ewk_Url_Response):
        * UIProcess/API/efl/ewk_url_scheme_request.h:
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (Ewk_View_Private_Data::Ewk_View_Private_Data):
        (Ewk_View_Private_Data::~Ewk_View_Private_Data):
        (_ewk_view_smart_add):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:

2012-10-18  Ryosuke Niwa  <rniwa@webkit.org>

        Lion build fix after r131686. Add back if-def around #imports.

        * UIProcess/API/mac/WKView.mm:

2012-10-17  Byungwoo Lee  <bw80.lee@samsung.com>

        [WK2] Fix build break
        https://bugs.webkit.org/show_bug.cgi?id=99670

        Reviewed by Anders Carlsson.

        Unreviewed build fix.

        Include MessageEncoder.h instead of forwarding declaration for
        MessageEncoder class.

        * Scripts/webkit2/messages.py:
        (forward_declarations_and_headers):

2012-10-17  Darin Adler  <darin@apple.com>

        Make subclassing of WKView safer by namespacing methods and eliminating its use as an observer and delegate
        https://bugs.webkit.org/show_bug.cgi?id=99251

        Reviewed by Anders Carlsson.

        Apps that subclass WKView should be able to freely choose method names without conflicting with a name
        we chose to use internally in WKView's own implementation. Thus, it's a good idea to add a "_wk_" prefix
        to any method names that are solely for internal WebKit2 use. Exceptions to this are method names that
        are predetermined by AppKit, or names that are part of API or SPI.

        Apps that subclass WKView should be able to add observers or use the WKView as a delegate without
        conflicting with similar use in the WKView implementations. Thus, changed to use separate block-style
        observers for the window notifications and a separate delegate for the tool tip implementation.

        The challenging aspect of this patch was to research which method names were determined by AppKit.
        There's nothing in the WebKit2 source code that necessarily states this explicitly.

        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::createDrawingAreaProxy): Updated for new method name.
        (WebKit::PageClientImpl::scrollView): Ditto.
        (WebKit::PageClientImpl::isViewFocused): Ditto.
        (WebKit::PageClientImpl::colorSpace): Ditto.
        (WebKit::PageClientImpl::processDidCrash): Ditto.
        (WebKit::PageClientImpl::pageClosed): Ditto.
        (WebKit::PageClientImpl::didRelaunchProcess): Ditto.
        (WebKit::PageClientImpl::toolTipChanged): Ditto.
        (WebKit::PageClientImpl::setCursor): Ditto.
        (WebKit::PageClientImpl::interpretKeyEvent): Ditto.
        (WebKit::PageClientImpl::setDragImage): Ditto.
        (WebKit::PageClientImpl::setPromisedData): Ditto.
        (WebKit::PageClientImpl::updateTextInputState): Ditto.
        (WebKit::PageClientImpl::resetTextInputState): Ditto.
        (WebKit::PageClientImpl::convertToDeviceSpace): Ditto.
        (WebKit::PageClientImpl::convertToUserSpace): Ditto.
        (WebKit::PageClientImpl::doneWithKeyEvent): Ditto.
        (WebKit::PageClientImpl::setFindIndicator): Ditto.
        (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived): Ditto.
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode): Ditto.
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode): Ditto.
        (WebKit::PageClientImpl::updateAcceleratedCompositingMode): Ditto.
        (WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged): Ditto.
        (WebKit::PageClientImpl::setPluginComplexTextInputState): Ditto.
        (WebKit::PageClientImpl::didChangeScrollbarsForMainFrame): Ditto.
        (WebKit::PageClientImpl::didCommitLoadForMainFrame): Ditto.
        (WebKit::PageClientImpl::didFinishLoadingDataForCustomRepresentation): Ditto.
        (WebKit::PageClientImpl::customRepresentationZoomFactor): Ditto.
        (WebKit::PageClientImpl::setCustomRepresentationZoomFactor): Ditto.
        (WebKit::PageClientImpl::findStringInCustomRepresentation): Ditto.
        (WebKit::PageClientImpl::countStringMatchesInCustomRepresentation): Ditto.
        (WebKit::PageClientImpl::executeSavedCommandBySelector): Ditto.
        (WebKit::PageClientImpl::showDictationAlternativeUI): Ditto.

        * UIProcess/API/mac/WKView.mm: Simplified imports a bit. No need for conditional imports of basic classes
        like NSTextAlternatives.h and NSAttributedString.h. No need to put internal headers in a separate paragraph.
        Added WKToolTipDelegate class and added _toolTipDelegate and _observers fields to WKViewData.
        (-[WKView becomeFirstResponder]): Updated for new method name.
        (-[WKView resignFirstResponder]): Ditto.
        (-[WKView setFrameSize:]): Ditto.
        (-[WKView _wk_updateWindowAndViewFrames]): Ditto.
        (-[WKView renewGState]): Ditto.
        (-[WKView _wk_setPluginComplexTextInputState:]): Ditto.
        (validateCommandCallback): Ditto.
        (-[WKView displayIfNeeded]): Fixed a comment typo.
        (-[WKView _wk_setMouseDownEvent:]): Updated for new method name.
        (-[WKView mouseDown:]): Ditto.
        (-[WKView mouseUp:]): Ditto.
        (-[WKView acceptsFirstMouse:]): Ditto.
        (-[WKView shouldDelayWindowOrderingForEvent:]): Ditto.
        (-[WKView _wk_handleStyleKeyEquivalent:]): Ditto.
        (-[WKView performKeyEquivalent:]): Ditto.
        (-[WKView _wk_disableComplexTextInputIfNecessary]): Ditto.
        (-[WKView _wk_handlePluginComplexTextInputKeyDown:]): Ditto.
        (-[WKView _wk_tryHandlePluginComplexTextInputKeyDown:]): Ditto.
        (-[WKView keyDown:]): Ditto.
        (-[WKView _wk_executeSavedKeypressCommands]): Ditto.
        (-[WKView _wk_notifyInputContextAboutDiscardedComposition]): Ditto.
        (-[WKView selectedRange]): Ditto.
        (-[WKView hasMarkedText]): Ditto.
        (-[WKView unmarkText]): Ditto.
        (-[WKView setMarkedText:selectedRange:replacementRange:]): Ditto.
        (-[WKView markedRange]): Ditto.
        (-[WKView attributedSubstringForProposedRange:actualRange:]): Ditto.
        (-[WKView characterIndexForPoint:]): Ditto.
        (-[WKView firstRectForCharacterRange:actualRange:]): Ditto.
        (-[WKView _wk_updateWindowVisibility]): Ditto.
        (-[WKView _wk_updateWindowObserversForWindow:]): Replaced the two separate methods
        addWindowObserversForWindow and removeWindowObservers with this single method, since
        the two are only used in tandem. Changed code to use blocks for the observers and to
        keep the observers in an array.
        (-[WKView viewWillMoveToWindow:]): Updated to use _wk_updateWindowObserversForWindow.
        (-[WKView viewDidMoveToWindow]): Updated for new method names.
        (-[WKView _wk_windowScreenDidChange]): Ditto.
        (-[WKView _wk_windowDidBecomeKey:]): Ditto.
        (-[WKView _wk_windowDidChangeScreen:]): Ditto.
        (-[WKView _wk_windowDidResignKey:]): Ditto.
        (-[WKView _wk_windowDidMiniaturize:]): Ditto.
        (-[WKView _wk_windowDidDeminiaturize:]): Ditto.
        (-[WKView _wk_windowDidMove:]): Ditto.
        (-[WKView _wk_windowDidResize:]): Ditto.
        (-[WKView _wk_windowDidOrderOffScreen:]): Ditto.
        (-[WKView _wk_windowDidOrderOnScreen:]): Ditto.
        (-[WKView _wk_windowDidChangeBackingProperties:]): Ditto.
        (-[WKView drawRect:]): Ditto.
        (-[WKView _wk_accessibilityRegisterUIProcessTokens]): Ditto.
        (-[WKView _wk_updateRemoteAccessibilityRegistration:]): Ditto.
        (-[WKView _wk_postFakeMouseMovedEventForFlagsChangedEvent:]): Ditto.
        (-[WKView _wk_intrinsicDeviceScaleFactor]): Ditto.
        (-[WKView _wk_setDrawingAreaSize:]): Ditto.
        (-[WKView _wk_shouldUseTiledDrawingArea]): Ditto.
        (-[WKView _wk_createDrawingAreaProxy]): Ditto.
        (-[WKView _wk_isFocused]): Ditto.
        (-[WKView _wk_processDidCrash]): Ditto.
        (-[WKView _wk_pageClosed]): Ditto.
        (-[WKView _wk_didRelaunchProcess]): Ditto.
        (-[WKView _wk_setCursor:]): Ditto.
        (-[WKView _wk_setUserInterfaceItemState:enabled:state:]): Ditto.
        (-[WKView _wk_tryPostProcessPluginComplexTextInputKeyDown:]): Ditto.
        (-[WKView _wk_doneWithKeyEvent:eventWasHandled:]): Ditto.
        (-[WKView _wk_interpretKeyEvent:savingCommandsTo:]): Ditto.
        (-[WKView _wk_convertToDeviceSpace:]): Ditto.
        (-[WKView _wk_convertToUserSpace:]): Ditto.
        (-[WKView _wk_addTrackingRect:owner:userData:assumeInside:useTrackingNum:]): Ditto.
        (-[WKView _wk_addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]): Ditto.
        (-[WKView _wk_removeTrackingRects:count:]): Ditto.
        (-[WKView _wk_sendToolTipMouseExited]): Ditto.
        (-[WKView _wk_sendToolTipMouseEntered]): Ditto.
        (-[WKView _wk_toolTipChangedFrom:to:]): Changed to use the data object as the tool tip owner so
        the delegate method can be there rather than on WKView.
        (-[WKView _wk_setFindIndicator:fadeOut:animate:]): Updated for new method names.
        (-[WKView _wk_enterAcceleratedCompositingMode:]): Ditto.
        (-[WKView _wk_exitAcceleratedCompositingMode]): Ditto.
        (-[WKView _wk_updateAcceleratedCompositingMode:]): Ditto.
        (-[WKView _wk_setAccessibilityWebProcessToken:]): Ditto.
        (-[WKView _wk_pluginFocusOrWindowFocusChanged:pluginComplexTextInputIdentifier:]): Ditto.
        (-[WKView _wk_setPluginComplexTextInputState:pluginComplexTextInputIdentifier:]): Ditto.
        (-[WKView _wk_setPageHasCustomRepresentation:]): Ditto.
        (-[WKView _wk_didFinishLoadingDataForCustomRepresentationWithSuggestedFilename:dataReference:]): Ditto.
        (-[WKView _wk_customRepresentationZoomFactor]): Ditto.
        (-[WKView _wk_setCustomRepresentationZoomFactor:]): Ditto.
        (-[WKView _wk_findStringInCustomRepresentation:withFindOptions:maxMatchCount:]): Ditto.
        (-[WKView _wk_countStringMatchesInCustomRepresentation:withFindOptions:maxMatchCount:]): Ditto.
        (-[WKView _wk_setDragImage:at:linkDrag:]): Ditto.
        (-[WKView _wk_setPromisedData:withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:forPasteboard:]): Ditto.
        (-[WKView _wk_updateSecureInputState]): Ditto.
        (-[WKView _wk_updateTextInputStateIncludingSecureInputState:]): Ditto.
        (-[WKView _wk_resetTextInputState]): Ditto.
        (-[WKView _wk_didChangeScrollbarsForMainFrame]): Ditto.
        (-[WKView _wk_hasFullScreenWindowController]): Ditto.
        (-[WKView _wk_fullScreenWindowController]): Ditto.
        (-[WKView _wk_closeFullScreenWindowController]): Ditto.
        (-[WKView _wk_executeSavedCommandBySelector:]): Ditto.
        (-[WKView _wk_cacheWindowBottomCornerRect]): Ditto.
        (-[WKView _wk_spellCheckerDocumentTag]): Ditto.
        (-[WKView _wk_handleAcceptedAlternativeText:]): Ditto.
        (-[WKView _wk_setSuppressVisibilityUpdates:]): Ditto.
        (-[WKView _wk_suppressVisibilityUpdates]): Ditto.
        (-[WKView _wk_registerDraggedTypes]): Ditto.
        (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Ditto.
        (-[WKView wantsUpdateLayer]): Ditto.
        (-[WKView enableFrameSizeUpdates]): Ditto.
        (-[WKToolTipDelegate initWithPage:]): Added.
        (-[WKToolTipDelegate view:stringForToolTip:point:userData:]): Added.


        * UIProcess/API/mac/WKViewInternal.h: Changed all internal method names to have a _wk_ prefix.
        * UIProcess/API/mac/WKViewPrivate.h: Expose the _shouldUseTiledDrawingArea method formally as SPI
        since Safari is currently overriding this method.

        * UIProcess/mac/CorrectionPanel.mm:
        (WebKit::CorrectionPanel::recordAutocorrectionResponse): Updated for new method names.
        (WebKit::CorrectionPanel::handleAcceptedReplacement): Ditto.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController enterFullScreen:]): Updated for new method names.
        (-[WKFullScreenWindowController exitFullScreen]): Ditto.
        (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]): Ditto.
        (-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]): Ditto.

        * UIProcess/mac/WebFullScreenManagerProxyMac.mm:
        (WebKit::WebFullScreenManagerProxy::invalidate): Updated for new method names.
        (WebKit::WebFullScreenManagerProxy::close): Ditto.
        (WebKit::WebFullScreenManagerProxy::isFullScreen): Ditto.
        (WebKit::WebFullScreenManagerProxy::enterFullScreen): Ditto.
        (WebKit::WebFullScreenManagerProxy::exitFullScreen): Ditto.
        (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen): Ditto.
        (WebKit::WebFullScreenManagerProxy::beganExitFullScreen): Ditto.

2012-10-15  Anders Carlsson  <andersca@apple.com>

        Add MessageEncoder and MessageDecoder subclasses
        https://bugs.webkit.org/show_bug.cgi?id=99365

        Reviewed by Andreas Kling.

        This is the first step towards cleaning up IPC handling in WebKit2. The idea is that MessageEncoder and MessageDecoder
        will handle all the IPC specific parts of encoding and decoding (such as attachments), whereas the ArgumentEncoder and ArgumentDecoder
        classes are only used for serializing simpler data types.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/ArgumentDecoder.cpp:
        (CoreIPC::ArgumentDecoder::create):
        (CoreIPC::ArgumentDecoder::initialize):
        * Platform/CoreIPC/ArgumentDecoder.h:
        (ArgumentDecoder):
        * Platform/CoreIPC/ArgumentEncoder.cpp:
        (CoreIPC::ArgumentEncoder::create):
        (CoreIPC::ArgumentEncoder::ArgumentEncoder):
        * Platform/CoreIPC/ArgumentEncoder.h:
        (ArgumentEncoder):
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::createSyncMessageEncoder):
        (CoreIPC::Connection::sendMessage):
        (CoreIPC::Connection::sendSyncReply):
        (CoreIPC::Connection::waitForMessage):
        (CoreIPC::Connection::sendSyncMessage):
        (CoreIPC::Connection::waitForSyncReply):
        (CoreIPC::Connection::processIncomingSyncReply):
        (CoreIPC::Connection::processIncomingMessage):
        (CoreIPC::Connection::dispatchSyncMessage):
        (CoreIPC::Connection::dispatchMessage):
        * Platform/CoreIPC/Connection.h:
        (Connection):
        (PendingSyncReply):
        (CoreIPC::Connection::PendingSyncReply::releaseReplyDecoder):
        (CoreIPC::Connection::send):
        (CoreIPC::Connection::sendSync):
        (CoreIPC::Connection::waitForAndDispatchImmediately):
        (CoreIPC::Connection::deprecatedSendSync):
        (CoreIPC::Connection::deprecatedSend):
        * Platform/CoreIPC/MessageDecoder.cpp:
        (CoreIPC::MessageDecoder::create):
        (CoreIPC::MessageDecoder::~MessageDecoder):
        (CoreIPC::MessageDecoder::MessageDecoder):
        * Platform/CoreIPC/MessageDecoder.h:
        (CoreIPC):
        (MessageDecoder):
        * Platform/CoreIPC/MessageEncoder.cpp:
        (CoreIPC):
        (CoreIPC::MessageEncoder::create):
        (CoreIPC::MessageEncoder::MessageEncoder):
        (CoreIPC::MessageEncoder::~MessageEncoder):
        * Platform/CoreIPC/MessageEncoder.h:
        (CoreIPC):
        (MessageEncoder):
        * Platform/CoreIPC/MessageSender.h:
        (CoreIPC::MessageSender::send):
        (CoreIPC::MessageSender::sendMessage):
        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::open):
        (CoreIPC::Connection::sendOutgoingMessage):
        (CoreIPC::createMessageDecoder):
        (CoreIPC::Connection::receiveSourceEventHandler):
        * Platform/CoreIPC/unix/ConnectionUnix.cpp:
        (CoreIPC::Connection::processMessage):
        (CoreIPC::Connection::sendOutgoingMessage):
        * Platform/CoreIPC/win/ConnectionWin.cpp:
        (CoreIPC::Connection::readEventHandler):
        (CoreIPC::Connection::writeEventHandler):
        (CoreIPC::Connection::platformCanSendOutgoingMessages):
        (CoreIPC::Connection::sendOutgoingMessage):
        * Scripts/webkit2/messages.py:
        (generate_message_handler):
        * Scripts/webkit2/messages_unittest.py:
        (MessageEncoder):
        * Shared/WebConnection.cpp:
        (WebKit::WebConnection::postMessage):
        (WebKit::WebConnection::handleMessage):
        * Shared/WebConnection.h:
        (CoreIPC):
        * Target.pri:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):
        (WebKit::WebContext::postMessageToInjectedBundle):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::sendMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        (WebKit::WebProcessProxy::deprecatedSend):
        (WebKit::WebProcessProxy::send):
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebPage/DecoderAdapter.cpp:
        (WebKit::DecoderAdapter::DecoderAdapter):
        (WebKit::DecoderAdapter::decodeBytes):
        (WebKit::DecoderAdapter::decodeBool):
        (WebKit::DecoderAdapter::decodeUInt16):
        (WebKit::DecoderAdapter::decodeUInt32):
        (WebKit::DecoderAdapter::decodeUInt64):
        (WebKit::DecoderAdapter::decodeInt32):
        (WebKit::DecoderAdapter::decodeInt64):
        (WebKit::DecoderAdapter::decodeFloat):
        (WebKit::DecoderAdapter::decodeDouble):
        (WebKit::DecoderAdapter::decodeString):
        * WebProcess/WebPage/DecoderAdapter.h:
        (DecoderAdapter):
        * WebProcess/WebPage/EncoderAdapter.cpp:
        (WebKit::EncoderAdapter::EncoderAdapter):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::postInjectedBundleMessage):
        * win/WebKit2.vcproj:

2012-10-17  Andy Estes  <aestes@apple.com>

        [WebKit2] Add removeChild: to WKDOMNode and make WKDOMText.data read/write
        https://bugs.webkit.org/show_bug.cgi?id=99662

        Reviewed by Sam Weinig.

        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
        (-[WKDOMNode removeChild:]):
        * WebProcess/InjectedBundle/API/mac/WKDOMText.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
        (-[WKDOMText setData:]):

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Memory leak in ewk_download_job_response_set()
        https://bugs.webkit.org/show_bug.cgi?id=99621

        Reviewed by Kenneth Rohde Christiansen.

        No longer call ewk_url_response_ref() on the response
        object in ewk_download_job_response_set() since it will
        be ref'd when assigning to the RefPtr member already.

        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (didReceiveResponse):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (ewk_download_job_response_set):
        * UIProcess/API/efl/ewk_download_job_private.h: Remove several unimplemented functions.

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Compilation warning in Ewk_View when accelerated compositing is disabled
        https://bugs.webkit.org/show_bug.cgi?id=99613

        Reviewed by Kenneth Rohde Christiansen.

        Fix compilation warning in _ewk_view_smart_calculate() when
        the ACCELERATED_COMPOSITING flag is not set.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Use smart pointers inside Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=99611

        Reviewed by Kenneth Rohde Christiansen.

        Use smart pointers instead of raw ones for several
        Ewk_View members to avoid handling memory manually.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (ewk_view_cursor_set):
        (ewk_view_color_picker_dismiss):
        (ewk_view_color_picker_color_set):

2012-10-17  Byungwoo Lee  <bw80.lee@samsung.com>

        Fix build warnings : -Wunused-parameter, -Wunused-variable
        https://bugs.webkit.org/show_bug.cgi?id=99539

        Reviewed by Kentaro Hara.

        Fix build warnings about unused parameter or unused variable when
        WTF_USE_TILED_BACKING_STORE option is enabled.

        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::createLayer):
        * UIProcess/DrawingAreaProxy.cpp:
        (WebKit::DrawingAreaProxy::didReceiveLayerTreeCoordinatorProxyMessage):
        * UIProcess/DrawingAreaProxy.h:
        (WebKit::DrawingAreaProxy::setVisibleContentsRect):
        (WebKit::DrawingAreaProxy::createTileForLayer):
        (WebKit::DrawingAreaProxy::updateTileForLayer):
        (WebKit::DrawingAreaProxy::removeTileForLayer):
        (WebKit::DrawingAreaProxy::update):
        (WebKit::DrawingAreaProxy::didUpdateBackingStoreState):
        (WebKit::DrawingAreaProxy::enterAcceleratedCompositingMode):
        (WebKit::DrawingAreaProxy::exitAcceleratedCompositingMode):
        (WebKit::DrawingAreaProxy::updateAcceleratedCompositingMode):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
        (WebKit::CoordinatedTile::paint):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::scrollNonCompositedContents):
        (WebKit::LayerTreeCoordinator::notifyAnimationStarted):
        * WebProcess/WebPage/LayerTreeHost.h:
        (WebKit::LayerTreeHost::setVisibleContentsRect):
        (WebKit::LayerTreeHost::setVisibleContentsRectForLayer):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitDownload
        https://bugs.webkit.org/show_bug.cgi?id=96773

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitDownload.cpp:
        (_WebKitDownloadPrivate):
        (webkitDownloadCreate):
        (webkit_download_get_request):
        (webkit_download_cancel):
        * UIProcess/API/gtk/WebKitDownloadPrivate.h:
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (webkit_web_context_download_uri):
        (webkitWebContextGetOrCreateDownload):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitCookieManager
        https://bugs.webkit.org/show_bug.cgi?id=96772

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitCookieManager.cpp:
        (_WebKitCookieManagerPrivate):
        (webkitCookieManagerFinalize):
        (webkitCookieManagerCreate):
        (webkit_cookie_manager_set_persistent_storage):
        (webkit_cookie_manager_set_accept_policy):
        (webkit_cookie_manager_get_accept_policy):
        (webkitCookieManagerGetDomainsWithCookiesCallback):
        (webkit_cookie_manager_get_domains_with_cookies):
        (webkit_cookie_manager_delete_cookies_for_domain):
        (webkit_cookie_manager_delete_all_cookies):
        * UIProcess/API/gtk/WebKitCookieManagerPrivate.h:
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (webkit_web_context_get_cookie_manager):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitContextMenu
        https://bugs.webkit.org/show_bug.cgi?id=96770

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitContextMenu.cpp:
        (webkitContextMenuCreate):
        * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
        (webkitContextMenuItemCreate):
        * UIProcess/API/gtk/WebKitContextMenuItemPrivate.h:
        * UIProcess/API/gtk/WebKitContextMenuPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewPopulateContextMenu):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitBackForwardList
        https://bugs.webkit.org/show_bug.cgi?id=96769

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitBackForwardList.cpp:
        (_WebKitBackForwardListPrivate):
        (webkitBackForwardListGetOrCreateItem):
        (webkitBackForwardListCreateList):
        (webkitBackForwardListCreate):
        (webkitBackForwardListChanged):
        (webkit_back_forward_list_get_current_item):
        (webkit_back_forward_list_get_back_item):
        (webkit_back_forward_list_get_forward_item):
        (webkit_back_forward_list_get_nth_item):
        (webkit_back_forward_list_get_length):
        (webkit_back_forward_list_get_back_list):
        (webkit_back_forward_list_get_back_list_with_limit):
        (webkit_back_forward_list_get_forward_list):
        (webkit_back_forward_list_get_forward_list_with_limit):
        * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
        (_WebKitBackForwardListItemPrivate):
        (webkitBackForwardListItemFinalized):
        (webkitBackForwardListItemGetOrCreate):
        (webkitBackForwardListItemGetItem):
        (webkit_back_forward_list_item_get_uri):
        (webkit_back_forward_list_item_get_title):
        (webkit_back_forward_list_item_get_original_uri):
        * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (didChangeBackForwardList):
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewConstructed):
        (webkit_web_view_go_to_back_forward_list_item):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitURISchemeRequest
        https://bugs.webkit.org/show_bug.cgi?id=96787

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
        (didReceiveURIRequest):
        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
        (_WebKitURISchemeRequestPrivate):
        (webkitURISchemeRequestCreate):
        (webkit_uri_scheme_request_get_web_view):
        (webkitURISchemeRequestReadCallback):
        * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make sure the favicon database path is set only once
        https://bugs.webkit.org/show_bug.cgi?id=99597

        Reviewed by Kenneth Rohde Christiansen.

        Make sure the icon database path is set only once by checking
        that the database is not already open before settign the path.
        This avoids printing error message on stderr.

        * UIProcess/API/efl/ewk_context.cpp:
        (ewk_context_favicon_database_get):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitWebInspector
        https://bugs.webkit.org/show_bug.cgi?id=96786

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitWebInspector.cpp:
        (_WebKitWebInspectorPrivate):
        (webkitWebInspectorFinalize):
        (webkitWebInspectorCreate):
        (webkit_web_inspector_get_web_view):
        (webkit_web_inspector_is_attached):
        (webkit_web_inspector_attach):
        (webkit_web_inspector_detach):
        (webkit_web_inspector_show):
        (webkit_web_inspector_close):
        (webkit_web_inspector_get_attached_height):
        * UIProcess/API/gtk/WebKitWebInspectorPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_get_inspector):

2012-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitGeolocation classes
        https://bugs.webkit.org/show_bug.cgi?id=96778

        Reviewed by Gustavo Noronha Silva.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp:
        (_WebKitGeolocationPermissionRequestPrivate):
        (webkitGeolocationPermissionRequestAllow):
        (webkitGeolocationPermissionRequestDeny):
        (webkitGeolocationPermissionRequestFinalize):
        (webkitGeolocationPermissionRequestCreate):
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequestPrivate.h:
        * UIProcess/API/gtk/WebKitGeolocationProvider.cpp:
        (WebKitGeolocationProvider::create):
        (WebKitGeolocationProvider::WebKitGeolocationProvider):
        (WebKitGeolocationProvider::notifyPositionChanged):
        (WebKitGeolocationProvider::notifyErrorOccurred):
        * UIProcess/API/gtk/WebKitGeolocationProvider.h:
        (WebKitGeolocationProvider):
        * UIProcess/API/gtk/WebKitUIClient.cpp:
        (decidePolicyForGeolocationPermissionRequest):
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (createDefaultWebContext):

2012-10-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        [WK2][EFL] Add unit tests for Spelling
        https://bugs.webkit.org/show_bug.cgi?id=95956

        Reviewed by Gyuyoung Kim.

        Add the unit tests which covers API from ewk_text_checker.h
        and text checker settings from ewk_settings.h

        * PlatformEfl.cmake:
        * UIProcess/API/efl/tests/resources/spelling_test.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp: Added.
        (resetCallbacksExecutionStats):
        (onTimeout):
        (onSettingChange):
        (onSpellDocumentTag):
        (onSpellDocumentTagClose):
        (onSpellingCheck):
        (onWordGuesses):
        (onWordLearn):
        (onWordIgnore):
        (TEST_F):

2012-10-17  Mario Sanchez Prada  <msanchez@igalia.com>

        [WK2][GTK] Favicons are incorrectly released before receiving the actual data
        https://bugs.webkit.org/show_bug.cgi?id=99492

        Reviewed by Carlos Garcia Campos.

        Don't release the icon for a page URL in the first stage of the
        asynchronous call webkit_favicon_database_get_favicon() but do it
        later instead, to avoid a race condition with the initial
        synchronization process the first time we request an icon which is
        actually in the icon database, but has not made available yet.

        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (GetFaviconSurfaceAsyncData::~GetFaviconSurfaceAsyncData): Release
        here the icon for the page URL if not a valid icon has been found.
        (GetFaviconSurfaceAsyncData): Add a new boolean parameter to flag
        when a given icon for a page URL should be released.
        (getIconSurfaceSynchronously): Don't release the icon, just return 0.
        (processPendingIconsForPageURL): If a valid icon is got at this
        point, disable the flag shouldReleaseIconForPageURL not to release
        the icon later on.
        (webkit_favicon_database_get_favicon): Make sure we retain the
        icon for a given page URL before trying to retrieve it from the
        IconDatabase, and that we flag it to be released in case not a
        valid icon has been found yet.

2012-10-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>, Michal Roj <m.roj@samsung.com>

        Implementation of spellchecking feature.
        https://bugs.webkit.org/show_bug.cgi?id=91854

        Reviewed by Gyuyoung Kim.

        Add spelling implementation for WebKit2-EFL that is based on Enchant library.

        Additionally the patch provides API to overwrite the default WebKit
        spellchecker implementation as Enchant library doesn't ensure grammar checking.
        Application is able to overwrite it by defining its own implementation and
        setting appropriate callback functions.

        * PlatformEfl.cmake:
        Add enchant-related compiler flags: header paths and the library flag.

        * UIProcess/API/efl/EWebKit2.h:
        Add ewk_text_checker.h to the main WebKit2-EFL's header to be available for applications.

        * UIProcess/API/efl/WebKitTextChecker.cpp: Added.
        Implement the callbacks functions of WKTextChecker.

        (WebKit):
        (WebKit::isContinuousSpellCheckingEnabled):
        (WebKit::setContinuousSpellCheckingEnabled):
        (WebKit::uniqueSpellDocumentTag):
        (WebKit::closeSpellDocumentWithTag):
        (WebKit::checkSpellingOfString):
        (WebKit::guessesForWord):
        (WebKit::learnWord):
        (WebKit::ignoreWord):
        Those functions are directly given as callback functions for WKTextChecker's client.
        They choose between WebKit's spelling implementation and client's ones.

        (WebKit::availableSpellCheckingLanguages):
        (WebKit::updateSpellCheckingLanguages):
        (WebKit::loadedSpellCheckingLanguages):
        They are used by ewk_settings.cpp file and allow to do not
        expose 'textCheckerEnchant'.

        * UIProcess/API/efl/WebKitTextChecker.h: Added.
        Define the functions which choose between WebKit's spelling implementation and
        the client's ones.

        (WebKit):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context::_Ewk_Context):
        Attach the spellchecker feature for the context.

        * UIProcess/API/efl/ewk_text_checker.cpp: Added.
        (ewk_text_checker_callbacks_get):
        An internal function to get the client's callback functions.

        * UIProcess/API/efl/ewk_text_checker.h: Added.
        Define API to set the client's own spelling implementation.

        * UIProcess/API/efl/ewk_text_checker_private.h: Added.
        (_Ewk_Text_Checker):
        Define the struct with the client's callbacks responisble for spelling.

        * UIProcess/API/efl/ewk_settings.cpp:
        (onContinuousSpellCheckingIdler):
        The application is notified about the spelling setting change on idler
        to do not block WebKit.
        The the continuous spell checking may be changed through the context menu option.

        (spellCheckingLanguagesSetUpdate):
        The dictionaries are requested on 'idler' to do not block WebKit.

        (spellCheckingLanguagesSet):
        Set the languages.

        (ewk_settings_continuous_spell_checking_change_cb_set):
        Set the callback function used to notify the client when the spelling
        setting was changed by WebKit.

        (ewk_settings_continuous_spell_checking_enabled_get):
        (ewk_settings_continuous_spell_checking_enabled_set):
        API to set/get the continuous spell checking.

        (ewk_settings_spell_checking_available_languages_get):
        (ewk_settings_spell_checking_languages_set):
        (ewk_settings_spell_checking_languages_get):
        API to get/set languages to use by WebKit implementation based on Enchant library.

        * UIProcess/efl/TextCheckerEfl.cpp:
        (WebKit::TextChecker::state):
        (WebKit::TextChecker::isContinuousSpellCheckingAllowed):
        (WebKit::TextChecker::setContinuousSpellCheckingEnabled):
        (WebKit::TextChecker::setGrammarCheckingEnabled):
        (WebKit::TextChecker::continuousSpellCheckingEnabledStateChanged):
        (WebKit::TextChecker::grammarCheckingEnabledStateChanged):
        (WebKit::TextChecker::uniqueSpellDocumentTag):
        (WebKit::TextChecker::closeSpellDocumentWithTag):
        (WebKit::TextChecker::checkSpellingOfString):
        (WebKit::TextChecker::checkGrammarOfString): Remove WebCore namaspace as it's already defined for the whole file.
        (WebKit::TextChecker::spellingUIIsShowing):
        (WebKit::TextChecker::toggleSpellingUIIsShowing):
        (WebKit::TextChecker::updateSpellingUIWithMisspelledWord):
        (WebKit::TextChecker::updateSpellingUIWithGrammarString):
        (WebKit::TextChecker::getGuessesForWord):
        (WebKit::TextChecker::learnWord):
        (WebKit::TextChecker::ignoreWord):
        Those call WKTextChecker client's methods.

2012-10-17  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Ewk_Url_Scheme_Request has to be refactored
        https://bugs.webkit.org/show_bug.cgi?id=99549

        Reviewed by Kenneth Rohde Christiansen.

        Ewk_Url_Scheme_Requestis inherited from RefCounted, WKEinaSharedString is used,
        removed weird _Ewk_Url_Scheme_Request.

        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest):
        * UIProcess/API/efl/ewk_url_scheme_request.cpp:
        (ewk_url_scheme_request_ref):
        (ewk_url_scheme_request_unref):
        * UIProcess/API/efl/ewk_url_scheme_request.h:
        * UIProcess/API/efl/ewk_url_scheme_request_private.h:
        (Ewk_Url_Scheme_Request):
        (Ewk_Url_Scheme_Request::create):
        (Ewk_Url_Scheme_Request::Ewk_Url_Scheme_Request):

2012-10-17  Mario Sanchez Prada  <msanchez@igalia.com>

        [WK2][GTK] Unneeded GError field in internal structure in WebKitFaviconDatabase.cpp
        https://bugs.webkit.org/show_bug.cgi?id=99564

        Reviewed by Carlos Garcia Campos.

        Removed field 'error' from GetFaviconSurfaceAsyncData and updated
        the code accordingly, by using g_simple_async_result_take_error().

        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (GetFaviconSurfaceAsyncData): Removed unneeded field.
        (processPendingIconsForPageURL): Avoid using g_propagate_error and
        use g_simple_async_result_take_error directly instead.
        (webkit_favicon_database_get_favicon_finish): Remove unneeded code.

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Start using OwnPtr for non-ref counted ewk types
        https://bugs.webkit.org/show_bug.cgi?id=99472

        Reviewed by Kenneth Rohde Christiansen.

        Use OwnPtr internally for non-ref counted Ewk types to avoid
        manual memory handling.

        Private _new() and _free() functions are removed since they
        are not needed now that the classes are defined in the
        private headers instead of the cpp files. The constructor
        for those classes was made private and factory methods were
        added to encourage developers to use smart pointers instead
        of raw ones.

        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (ewk_back_forward_list_changed):
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        * UIProcess/API/efl/ewk_back_forward_list_private.h:
        (_Ewk_Back_Forward_List):
        (_Ewk_Back_Forward_List::create):
        (_Ewk_Back_Forward_List::_Ewk_Back_Forward_List):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (_Ewk_Context::_Ewk_Context):
        (ewk_context_cookie_manager_get):
        (ewk_context_favicon_database_get):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (didFail):
        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (_Ewk_Cookie_Manager::_Ewk_Cookie_Manager):
        (_Ewk_Cookie_Manager::~_Ewk_Cookie_Manager):
        (getAcceptPolicyCallback):
        (getHostnamesWithCookiesCallback):
        (ewk_cookie_manager_changes_watch):
        * UIProcess/API/efl/ewk_cookie_manager_private.h:
        (Cookie_Change_Handler):
        (Cookie_Change_Handler::Cookie_Change_Handler):
        (_Ewk_Cookie_Manager):
        (_Ewk_Cookie_Manager::create):
        * UIProcess/API/efl/ewk_error.cpp:
        (_Ewk_Error::_Ewk_Error):
        (ewk_error_cancellation_get):
        * UIProcess/API/efl/ewk_error_private.h:
        (_Ewk_Error):
        (_Ewk_Error::create):
        * UIProcess/API/efl/ewk_favicon_database.cpp:
        (_Ewk_Favicon_Database::_Ewk_Favicon_Database):
        * UIProcess/API/efl/ewk_favicon_database_private.h:
        (IconChangeCallbackData):
        (IconChangeCallbackData::IconChangeCallbackData):
        (IconRequestCallbackData):
        (IconRequestCallbackData::IconRequestCallbackData):
        (_Ewk_Favicon_Database):
        (_Ewk_Favicon_Database::create):
        * UIProcess/API/efl/ewk_popup_menu_item.cpp:
        (_Ewk_Popup_Menu_Item::_Ewk_Popup_Menu_Item):
        * UIProcess/API/efl/ewk_popup_menu_item_private.h:
        (_Ewk_Popup_Menu_Item):
        (_Ewk_Popup_Menu_Item::create):
        * UIProcess/API/efl/ewk_url_scheme_request.cpp:
        (_Ewk_Url_Scheme_Request::_Ewk_Url_Scheme_Request):
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (_ewk_view_initialize):
        (ewk_view_back_forward_list_get):
        (ewk_view_popup_menu_request):
        (ewk_view_popup_menu_close):
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didFailLoadWithErrorForFrame):
        (didFailProvisionalLoadWithErrorForFrame):
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didFailLoadForResource):

2012-10-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Use WTF RefCounted and RefPtr for Ewk_Resource and Ewk_Form_Submission_Request
        https://bugs.webkit.org/show_bug.cgi?id=99542

        Reviewed by Kenneth Rohde Christiansen.

        Use WTF RefCounted and RefPtr for Ewk_Resource and Ewk_Form_Submission_Request
        to avoid handling raw pointers internally.

        * UIProcess/API/efl/ewk_form_submission_request.cpp:
        (ewk_form_submission_request_ref):
        (ewk_form_submission_request_unref):
        (ewk_form_submission_request_submit):
        * UIProcess/API/efl/ewk_form_submission_request_private.h:
        (_Ewk_Form_Submission_Request):
        (_Ewk_Form_Submission_Request::~_Ewk_Form_Submission_Request):
        (_Ewk_Form_Submission_Request::create):
        (_Ewk_Form_Submission_Request::_Ewk_Form_Submission_Request):
        * UIProcess/API/efl/ewk_resource.cpp:
        (ewk_resource_ref):
        (ewk_resource_unref):
        * UIProcess/API/efl/ewk_resource_private.h:
        (_Ewk_Resource):
        (_Ewk_Resource::create):
        (_Ewk_Resource::_Ewk_Resource):
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (ewk_view_resource_load_initiated):
        (ewk_view_resource_load_response):
        (ewk_view_resource_load_failed):
        (ewk_view_resource_load_finished):
        (ewk_view_resource_request_sent):
        (ewk_view_load_provisional_started):
        * UIProcess/API/efl/ewk_view_form_client.cpp:
        (willSubmitForm):
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didInitiateLoadForResource):

2012-10-16  Dongwoo Joshua Im  <dw.im@samsung.com>

        [mac] Fix build break - processPath should be initialized.
        https://bugs.webkit.org/show_bug.cgi?id=99541

        Unreviewed build fix.

        Initialize processPath as nil.

        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
        (WebKit::createProcess):

2012-10-16  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add factory methods for refcounted Ewk types
        https://bugs.webkit.org/show_bug.cgi?id=99479

        Reviewed by Gyuyoung Kim.

        Add factory methods to refcounted Ewk types that return
        a PassRefPtr for refcounted Ewk types. Their constructors
        were made privates as well, in order to promote the use
        of smart pointers internally.

        Remove _new() functions for refcounted Ewk types as they
        are no longer needed now that the classes are defined
        in the private headers instead of the cpp files.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (addItemToWrapperCache):
        * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
        (ewk_back_forward_list_item_original_url_get):
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        (_Ewk_Back_Forward_List_Item):
        (_Ewk_Back_Forward_List_Item::create):
        (_Ewk_Back_Forward_List_Item::_Ewk_Back_Forward_List_Item):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (didReceiveResponse):
        * UIProcess/API/efl/ewk_context_history_client.cpp:
        (didNavigateWithNavigationData):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (ewk_download_job_request_get):
        (ewk_download_job_state_set):
        * UIProcess/API/efl/ewk_download_job_private.h:
        (_Ewk_Download_Job):
        (_Ewk_Download_Job::create):
        (_Ewk_Download_Job::_Ewk_Download_Job):
        * UIProcess/API/efl/ewk_intent.cpp:
        (ewk_intent_extra_names_get):
        * UIProcess/API/efl/ewk_intent_private.h:
        (_Ewk_Intent):
        (_Ewk_Intent::create):
        (_Ewk_Intent::_Ewk_Intent):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (ewk_intent_service_disposition_get):
        * UIProcess/API/efl/ewk_intent_service_private.h:
        (_Ewk_Intent_Service):
        (_Ewk_Intent_Service::create):
        (_Ewk_Intent_Service::_Ewk_Intent_Service):
        * UIProcess/API/efl/ewk_navigation_data.cpp:
        (ewk_navigation_data_url_get):
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        (_Ewk_Navigation_Data):
        (_Ewk_Navigation_Data::create):
        (_Ewk_Navigation_Data::_Ewk_Navigation_Data):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::create):
        (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (ewk_url_request_http_method_get):
        * UIProcess/API/efl/ewk_url_request_private.h:
        (_Ewk_Url_Request):
        (_Ewk_Url_Request::create):
        (_Ewk_Url_Request::_Ewk_Url_Request):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (ewk_url_response_content_length_get):
        * UIProcess/API/efl/ewk_url_response_private.h:
        (_Ewk_Url_Response):
        (_Ewk_Url_Response::create):
        (_Ewk_Url_Response::_Ewk_Url_Response):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_deliver):
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didReceiveIntentForFrame):
        (registerIntentServiceForFrame):
        * UIProcess/API/efl/ewk_view_policy_client.cpp:
        (decidePolicyForNavigationAction):
        (decidePolicyForNewWindowAction):
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didInitiateLoadForResource):
        (didSendRequestForResource):
        (didReceiveResponseForResource):

2012-10-16  Alexey Proskuryakov  <ap@apple.com>

        <rdar://problem/12462993> Use a sensible fallback for cache directory

        Reviewed by Sam Weinig.

        * UIProcess/WebContext.cpp: (WebKit::WebContext::createNewWebProcess): Cache directory
        should be created if it doesn't exist yet, so use createHandleForReadWriteDirectory.

        * UIProcess/mac/WebContextMac.mm: (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        We don't want caches in home directory, they should go to ~/Library/Caches.

2012-10-16  Andy Estes  <aestes@apple.com>

        [WebKit2] Create Objective-C API for adding and removing user scripts
        https://bugs.webkit.org/show_bug.cgi?id=99528

        Reviewed by Anders Carlsson.

        This patch adds the following API to WKBrowsingContextGroup:

        - (void)addUserScript:(NSString *)source baseURL:(NSURL *)baseURL whitelistedURLPatterns:(NSArray *)whitelist blacklistedURLPatterns:(NSArray *)blacklist injectionTime:(WKUserScriptInjectionTime)injectionTime mainFrameOnly:(BOOL)mainFrameOnly;
        - (void)removeAllUserScripts;

        * UIProcess/API/C/WKPageGroup.cpp:
        (WKPageGroupAddUserScript): Define a C SPI equivalent of addUserScript: that calls existing methods in WebPageGroup.
        (WKPageGroupRemoveAllUserScripts): Ditto for removeAllUserScripts.
        * UIProcess/API/C/WKPageGroup.h: Declare the above-mentioned functions.
        * UIProcess/API/mac/WKBrowsingContextGroup.h: Declare the Objective-C API
        * UIProcess/API/mac/WKBrowsingContextGroup.mm:
        (-[WKBrowsingContextGroup addUserScript:baseURL:whitelist:blacklist:injectionTime:mainFrameOnly:]): Call WKPageGroupAddUserScript.
        (-[WKBrowsingContextGroup removeAllUserScripts]): Call WKPageGroupRemoveAllUserScripts.
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::removeAllUserScripts): This was calling PageGroup::removeUserStyleSheetsFromWorld() by mistake.

2012-10-16  Yael Aharon  <yael.aharon@intel.com>

        [EFL][WK2][AC] Url bar should not be covered by the web view
        https://bugs.webkit.org/show_bug.cgi?id=99485

        Reviewed by Laszlo Gombos.

        When accelerated compositing is enabled, the url bar is covered by the web view.
        This was caused by 2 issues:
        - _ewk_view_smart_calculate was called before the first gl surface was created,
          so an early return caused it to not save the new view position.
        - When painting the view, we need to take into account the position of
          the view within the window, i.e. the url bar.

        * UIProcess/API/efl/EflViewportHandler.cpp:
        (WebKit::EflViewportHandler::display):
        * UIProcess/API/efl/EflViewportHandler.h:
        (EflViewportHandler):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_smart_calculate):
        (ewk_view_display):

2012-10-16  Jian Li  <jianli@chromium.org>

        Rename feature define ENABLE_WIDGET_REGION to ENABLE_DRAGGBALE_REGION
        https://bugs.webkit.org/show_bug.cgi?id=98975

        Reviewed by Adam Barth.

        Renaming is needed to better match with the draggable region code.

        * Configurations/FeatureDefines.xcconfig:

2012-10-16  Tony Chang  <tony@chromium.org>

        Unreviewed, revert previous WebKit2.def change. Exports shouldn't matter.

        * win/WebKit2.def:

2012-10-16  Tony Chang  <tony@chromium.org>

        Unreviewed, try to fix the Apple Win build.

        * win/WebKit2.def:

2012-10-16  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        Implement testRunner.dumpSelectionRect() in WebKitTestRunner
        https://bugs.webkit.org/show_bug.cgi?id=69545

        Reviewed by Simon Fraser.

        * Shared/API/c/WKImage.h: Add another option that controls whether
        the selection rectangle should be painted onto the snapshot.
        * Shared/API/c/WKSharedAPICast.h:
        (WebKit::toSnapshotOptions): Add a case for the new option
        mentioned above.
        * Shared/ImageOptions.h: More plumbing for the option above.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::scaledSnapshotWithOptions): Draw a red rectangle
        around the selection area when
        SnapshotOptionsPaintSelectionRectangle is set.

2012-10-16  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Have intent classes subclass RefCounted
        https://bugs.webkit.org/show_bug.cgi?id=99467

        Reviewed by Kenneth Rohde Christiansen.

        Make Ewk_Intent and Ewk_Intent_Service subclass
        RefCounted so that we can use smart pointers
        internally.

        * UIProcess/API/efl/ewk_intent.cpp:
        (ewk_intent_ref):
        (ewk_intent_unref):
        * UIProcess/API/efl/ewk_intent_private.h:
        (_Ewk_Intent):
        (_Ewk_Intent::_Ewk_Intent):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (ewk_intent_service_ref):
        (ewk_intent_service_unref):
        * UIProcess/API/efl/ewk_intent_service_private.h:
        (_Ewk_Intent_Service):
        (_Ewk_Intent_Service::_Ewk_Intent_Service):
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didReceiveIntentForFrame):
        (registerIntentServiceForFrame):

2012-10-16  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Inherit Ewk_Download_Job, Ewk_Back_Forward_List_Item, Ewk_Url_Response, Ewk_Navigation_Policy_Decision from RefCounted
        https://bugs.webkit.org/show_bug.cgi?id=99455

        Reviewed by Kenneth Rohde Christiansen.

        The API objects mentioned in bug title are inherited from WTF::RefCounted which made it possible
        to use smart pointers with them.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (_Ewk_Back_Forward_List::_Ewk_Back_Forward_List):
        (addItemToWrapperCache):
        (ewk_back_forward_list_changed):
        * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
        (ewk_back_forward_list_item_ref):
        (ewk_back_forward_list_item_unref):
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h:
        (_Ewk_Back_Forward_List_Item):
        (_Ewk_Back_Forward_List_Item::_Ewk_Back_Forward_List_Item):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (_Ewk_Context::~_Ewk_Context):
        (ewk_context_download_job_add):
        (ewk_context_download_job_get):
        (ewk_context_download_job_remove):
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (didReceiveResponse):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (ewk_download_job_ref):
        (ewk_download_job_unref):
        (ewk_download_job_response_get):
        (ewk_download_job_estimated_progress_get):
        * UIProcess/API/efl/ewk_download_job_private.h:
        (_Ewk_Download_Job):
        (_Ewk_Download_Job::_Ewk_Download_Job):
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (ewk_navigation_policy_decision_ref):
        (ewk_navigation_policy_decision_unref):
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h:
        (_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (ewk_url_response_ref):
        (ewk_url_response_unref):
        * UIProcess/API/efl/ewk_url_response_private.h:
        (_Ewk_Url_Response):
        (_Ewk_Url_Response::_Ewk_Url_Response):
        * UIProcess/API/efl/ewk_view_policy_client.cpp:
        (decidePolicyForNavigationAction):
        (decidePolicyForNewWindowAction):
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didSendRequestForResource):
        (didReceiveResponseForResource):

2012-10-16  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [WK2][EFL] Crash in _ewk_view_on_favicon_changed()
        https://bugs.webkit.org/show_bug.cgi?id=99454

        Reviewed by Kenneth Rohde Christiansen.

        Added missing null check to avoid a crash if the current URL of
        view is NULL.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_on_favicon_changed):

2012-10-16  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] Provide WKURL API for resolving the relative URL with the given base URL
        https://bugs.webkit.org/show_bug.cgi?id=99317

        Reviewed by Kenneth Rohde Christiansen.

        Added new constructor function WKURLCreateWithBaseURL for WKURL which
        resolves the relative URL with the given base URL.

        * Shared/API/c/WKURL.cpp:
        (WKURLCreateWithBaseURL):
        * Shared/API/c/WKURL.h:
        * Shared/WebURL.h:
        (WebKit::WebURL::create):
        (WebURL):
        (WebKit::WebURL::WebURL):

2012-10-16  Szilard Ledan  <szledan@inf.u-szeged.hu>

        Separate WebKit2 instances use the same local storage
        https://bugs.webkit.org/show_bug.cgi?id=89666

        Reviewed by Simon Hausmann.

        For multi-threaded (parallel) testing, WTRs must not write into the same directory.
        To avoid that, results need to be stored in the location defined by DUMPRENDERTREE_TEMP
        environment variable that is created by NRWT. To do that, WebContext needed to be
        extended with diskCacheDirectory and cookieStorageDirectory APIs.

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):
        * UIProcess/API/C/WKContext.cpp:
        (WKContextSetDiskCacheDirectory):
        (WKContextSetCookieStorageDirectory):
        * UIProcess/API/C/WKContextPrivate.h:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):
        (WebKit::WebContext::diskCacheDirectory):
        (WebKit):
        (WebKit::WebContext::cookieStorageDirectory):
        * UIProcess/WebContext.h:
        (WebKit::WebContext::setDiskCacheDirectory):
        (WebKit::WebContext::setCookieStorageDirectory):
        (WebContext):
        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        (WebKit):
        (WebKit::WebContext::platformDefaultCookieStorageDirectory):
        * UIProcess/gtk/WebContextGtk.cpp:
        (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        (WebKit):
        (WebKit::WebContext::platformDefaultCookieStorageDirectory):
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess):
        (WebKit):
        (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        (WebKit::WebContext::platformDefaultCookieStorageDirectory):
        * UIProcess/qt/WebContextQt.cpp:
        (WebKit):
        (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        (WebKit::WebContext::applicationCacheDirectory):
        (WebKit::WebContext::platformInitializeWebProcess):
        (WebKit::WebContext::platformDefaultCookieStorageDirectory):
        * UIProcess/win/WebContextWin.cpp:
        (WebKit::WebContext::platformInitializeWebProcess):
        (WebKit::WebContext::platformDefaultDiskCacheDirectory):
        (WebKit):
        (WebKit::WebContext::platformDefaultCookieStorageDirectory):
        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::WebProcess::platformInitializeWebProcess):
        * WebProcess/win/WebProcessWin.cpp:
        (WebKit::WebProcess::platformInitializeWebProcess):

2012-10-16  Jongseok Yang  <js45.yang@samsung.com>

        [EFL][WK2] Fix Cache Model API tests
        https://bugs.webkit.org/show_bug.cgi?id=99427

        Reviewed by Gyuyoung Kim.

        Cache Model API tests caused "Segmentation fault" because the default value 
        for cache model was incorrect.

        Fix the default value for cache model.
        Fix Cache Model API tests.

        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):

2012-10-15  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Regression(r131337): Made 3 Cookie Manager API tests fail
        https://bugs.webkit.org/show_bug.cgi?id=99416

        Reviewed by Gyuyoung Kim.

        After r131337, the favicon database is enabled and it causes new
        requests to "/favicon.ico" on the http server. The http server used
        in the cookie manager test was too strict and was calling FAIL() for
        any unrecognized HTTP request (such as the one to /favicon.ico).
        This patch makes the http server in cookie manager API tests less
        strict.

        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        (serverCallback):

2012-10-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Unreviewed, rolling out r131349.
        http://trac.webkit.org/changeset/131349
        https://bugs.webkit.org/show_bug.cgi?id=97173

        Revert r131349 because API test is broken by this commit.

        * UIProcess/API/efl/ewk_main.cpp:
        (ewk_init):
        (ewk_shutdown):
        * WebProcess/efl/WebProcessMainEfl.cpp:
        (WebKit::WebProcessMainEfl):

2012-10-15  Jongseok Yang  <js45.yang@samsung.com>

        [EFL][WK2] Add APIs for cache model
        https://bugs.webkit.org/show_bug.cgi?id=98889

        Reviewed by Gyuyoung Kim.

        Add ewk_context_cache_model_set(), ewk_context_cache_model_get().

        The cache model means the level for the cache capacity.
        If EWK_CACHE_MODEL_DOCUMENT_BROWSER, the biggest cache capacity will be set.

        * UIProcess/API/efl/ewk_context.cpp:
        (ewk_context_cache_model_set):
        (ewk_context_cache_model_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):

2012-10-15  Byungwoo Lee  <bw80.lee@samsung.com>

        Fix unused parameter build warning.
        https://bugs.webkit.org/show_bug.cgi?id=99400

        Reviewed by Gyuyoung Kim.

        Remove the name of unused parameters to fix the build warning (-Wunused-parameter).

        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::getSharedWorkerProcessConnection):
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::handleEditingCommand):
        (WebKit::NetscapePlugin::isEditingCommandEnabled):

2012-10-15  Dan Bernstein  <mitz@apple.com>

        WebKit2 part of <rdar://problem/12470680> Font’s fast code path doesn’t support kerning and ligatures
        https://bugs.webkit.org/show_bug.cgi?id=99113

        Reviewed by Tim Horton.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface): Added wkCTFontTransformGlyphs.

2012-10-15  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][CAIRO] Use cairo_format_stride_for_width() in ShareableBitmap
        https://bugs.webkit.org/show_bug.cgi?id=99332

        Reviewed by Martin Robinson.

        Cairo implementation of ShareableBitmap is calling
        cairo_image_surface_create_for_data() to create an image surface for
        the provided pixel data. However, it was passing "m_size.width() * 4"
        for the stride argument instead of calling
        cairo_format_stride_for_width().

        The Cairo documentation states:
        "Note that the stride may be larger than width*bytes_per_pixel to
        provide proper alignment for each pixel and row. This alignment is
        required to allow high-performance rendering within cairo. The correct
        way to obtain a legal stride value is to call
        cairo_format_stride_for_width() with the desired format and maximum
        image width value, and then use the resulting stride value to allocate
        the data and to create the image surface."

        This patch calls cairo_format_stride_for_width() is ShareableBitmap
        in order to obtain a legal stride value to make sure we provide proper
        alignment for each pixel and row, and allow high-performance rendering
        within cairo.

        * Shared/ShareableBitmap.h:
        (ShareableBitmap):
        * Shared/cairo/ShareableBitmapCairo.cpp:
        (WebKit):
        (WebKit::ShareableBitmap::numBytesForSize):
        (WebKit::createSurfaceFromData):
        (WebKit::ShareableBitmap::paint):
        (WebKit::ShareableBitmap::createCairoSurface):

2012-10-15  Eunmi Lee  <eunmi15.lee@samsung.com>

        [EFL][WK2] Refactoring initialization and shutdown codes of EFL libraries.
        https://bugs.webkit.org/show_bug.cgi?id=97173

        Reviewed by Gyuyoung Kim.

        Initialize and shutdown the EFL libraries in the ewk_main.cpp for ui
        process and WebProcessMainEfl.cpp for web process.

        * UIProcess/API/efl/ewk_main.cpp:
        (ewk_init):
        (ewk_shutdown):
        * WebProcess/efl/WebProcessMainEfl.cpp:
        (WebKit::WebProcessMainEfl):

2012-10-15  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Provide implementation for PageClientImpl::toolTipChanged()
        https://bugs.webkit.org/show_bug.cgi?id=98589

        Reviewed by Kenneth Rohde Christiansen.

        Implement PageClientImpl::toolTipChanged() to emit signal 'tooltip,text,set' with a tooltip text,
        or 'tooltip,text,unset' if tooltip was unset.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::toolTipChanged):
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_tooltip_text_set):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:

2012-10-15  Roger Fong  <roger_fong@apple.com>

        Unreviewed. Partial build fix for Windows after r131308.

        * WebKit2Prefix.h:
        * WebProcess/WebKitMain.cpp:
        (WebKitMain):

2012-10-15  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r131306 and r131307.
        http://trac.webkit.org/changeset/131306
        http://trac.webkit.org/changeset/131307
        https://bugs.webkit.org/show_bug.cgi?id=99354

        It made layout testing extremely slow again (Requested by
        Ossy_night on #webkit).

        * Shared/API/c/qt/WKImageQt.cpp:
        (WKImageCreateQImage):
        * Shared/API/c/qt/WKImageQt.h:

2012-10-15  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement Favicons API
        https://bugs.webkit.org/show_bug.cgi?id=99087

        Reviewed by Kenneth Rohde Christiansen.

        Add support for favicon API to EFL WK2 port via
        Ewk_Favicon_Database. The API can be used to
        retrieve the favicon URL and data for a given
        page URL.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (_Ewk_Context::_Ewk_Context):
        (_Ewk_Context::~_Ewk_Context):
        (ewk_context_favicon_database_get): Add getter to retrieve the favicon
        database instance from the context.
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_favicon_database.cpp: Added.
        (IconChangeCallbackData):
        (IconChangeCallbackData::IconChangeCallbackData):
        (IconRequestCallbackData):
        (IconRequestCallbackData::IconRequestCallbackData):
        (_Ewk_Favicon_Database):
        (_Ewk_Favicon_Database::_Ewk_Favicon_Database):
        (didChangeIconForPageURL):
        (getIconSurfaceSynchronously):
        (iconDataReadyForPageURL):
        (ewk_favicon_database_new):
        (ewk_favicon_database_free):
        (ewk_favicon_database_icon_url_get):
        (AsyncIconRequestResponse):
        (AsyncIconRequestResponse::AsyncIconRequestResponse):
        (respond_icon_request_idle):
        (ewk_favicon_database_async_icon_get):
        (ewk_favicon_database_icon_change_callback_add):
        (ewk_favicon_database_icon_change_callback_del):
        * UIProcess/API/efl/ewk_favicon_database.h: Added.
        * UIProcess/API/efl/ewk_favicon_database_private.h: Copied from Source/WebKit2/UIProcess/efl/WebContextEfl.cpp.
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (_ewk_view_on_favicon_changed):
        (_ewk_view_initialize):
        (ewk_view_url_update):
        (ewk_view_icon_url_get): Add a getter to the view to retrieve the icon URL for
        the page that is currently shown.
        (ewk_view_update_icon):
        * UIProcess/API/efl/ewk_view.h: Emit a new "icon,changed" signal on the view whenever
        the view's icon has changed.
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/tests/resources/blank.ico: Added.
        * UIProcess/API/efl/tests/test_ewk2_context.cpp: Add unit test for new favicon database getter.
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp: Added unit tests for the new Ewk_Favicon_Database API.
        (serverCallback):
        (onIconChanged):
        (TEST_F):
        (onIconDataReady):
        (IconRequestData):
        (requestFaviconData):
        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::platformDefaultIconDatabasePath): Return a valid default path for the icon database.

2012-10-15  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL] Share resources installed for inspector
        https://bugs.webkit.org/show_bug.cgi?id=98991

        Reviewed by Gyuyoung Kim.

        * PlatformEfl.cmake: Removed build script which install resources to share.
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::inspectorPageURL): Modified not to use makeString.
        (WebKit::WebInspectorProxy::inspectorBaseURL): Changed resource path.

2012-10-13  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Add SharedWorkerProcess
        https://bugs.webkit.org/show_bug.cgi?id=99218

        Reviewed by Sam Weinig.

        Not yet functional, just some boilerplate code.

        * Configurations/SharedWorkerProcess.xcconfig: Added.

        * DerivedSources.make: Generate message dispatch for SharedWorkerProcess and
        SharedWorkerProcessProxy.

        * Platform/CoreIPC/MessageID.h: Added shared worker messages classes.

        * Scripts/webkit2/messages.py: (struct_or_class):
        SharedWorkerProcessCreationParameters is a struct.

        * Shared/SharedWorkerProcessCreationParameters.cpp: Added.
        * SharedWorkerProcess/Info.plist: Added.
        * SharedWorkerProcess/SharedWorkerProcess.cpp: Added.
        * SharedWorkerProcess/SharedWorkerProcess.h: Added.
        * SharedWorkerProcess/SharedWorkerProcess.messages.in: Added.
        * SharedWorkerProcess/SharedWorkerProcessMain.h: Added.
        * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm: Added.
        * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm: Added.
        * SharedWorkerProcess/mac/com.apple.WebKit.SharedWorkerProcess.sb: Added.
        * UIProcess/SharedWorkers/SharedWorkerProcessManager.cpp: Added.
        * UIProcess/SharedWorkers/SharedWorkerProcessManager.h: Added.
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp: Added.
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h: Added.
        * UIProcess/SharedWorkers/SharedWorkerProcessProxy.messages.in: Added.
        * WebKit2.xcodeproj/project.pbxproj:
        Added SharedWorkerProcess boilerplate, modeled after PluginProcess.

        * UIProcess/WebProcessProxy.cpp:
        * UIProcess/WebProcessProxy.h:
        * UIProcess/WebProcessProxy.messages.in:
        Added getSharedWorkerProcessConnection() message.

        * WebProcess/WebKitMain.cpp: (WebKitMain):
        * UIProcess/Launcher/ProcessLauncher.cpp:
        (WebKit::ProcessLauncher::processTypeAsString):
        (WebKit::ProcessLauncher::getProcessTypeFromString):
        * UIProcess/Launcher/ProcessLauncher.h:
        * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::createProcess):
        Added branches for SharedWorkerProcess.

        * Platform/CoreIPC/HandleMessage.h: (CoreIPC::callMemberFunction): Added a version
        for delayed reply messages with two arguments.

2012-10-15  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WTR] Do a forced repaint before generating pixel results
        https://bugs.webkit.org/show_bug.cgi?id=98654

        Reviewed by Jocelyn Turcotte.

        Added API to convert a QImage to a WKImage so we can
        pass it to cross-platform code.

        * Shared/API/c/qt/WKImageQt.cpp:
        (WKImageCreateFromQImage):
        * Shared/API/c/qt/WKImageQt.h:

2012-10-15  Simon Hausmann  <simon.hausmann@digia.com>

        [Qt] Separate Qt WebKit into Qt WebKit and Qt WebKit Widgets
        https://bugs.webkit.org/show_bug.cgi?id=88162

        Reviewed by Kenneth Rohde Christiansen.

        Rename the QtWebKit module to QtWebKitWidgets.

        * PluginProcess.pro:
        * UIProcess/API/qt/tests/inspectorserver/inspectorserver.pro:
        * UIProcess/API/qt/tests/publicapi/publicapi.pro:
        * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/API/qt/tests/qquickwebview/qquickwebview.pro:
        * UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro:
        * UIProcess/API/qt/tests/tests.pri:
        * WebProcess.pro:

2012-10-15  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Encapsulate ref counting for Ewk objects in a parent class
        https://bugs.webkit.org/show_bug.cgi?id=99174

        Reviewed by Kenneth Rohde Christiansen.

        Ewk objects can be inherited from RefCounted class, so that ref counting is encapsulated and RefPtr can be used.
        Applied the new approach for Ewk_Navigation_Data and Ewk_Url_Request objects as an example.
        The requirement of adoption can be satisfied as long as we keep dealing with smart pointers only. 
        In case external client provides an already referenced object as a raw pointer, relaxAdoptionRequirement() can be set
        explicitly in this specific place.

        * UIProcess/API/efl/ewk_context_history_client.cpp:
        (didNavigateWithNavigationData):
        * UIProcess/API/efl/ewk_download_job.cpp:
        (_Ewk_Download_Job):
        (_Ewk_Download_Job::_Ewk_Download_Job):
        (_Ewk_Download_Job::~_Ewk_Download_Job):
        (ewk_download_job_request_get):
        * UIProcess/API/efl/ewk_navigation_data.cpp:
        (ewk_navigation_data_ref):
        (ewk_navigation_data_unref):
        (ewk_navigation_data_original_request_get):
        * UIProcess/API/efl/ewk_navigation_data_private.h:
        (_Ewk_Navigation_Data):
        (_Ewk_Navigation_Data::_Ewk_Navigation_Data):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
        (ewk_navigation_policy_request_get):
        (ewk_navigation_policy_decision_new):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (ewk_url_request_ref):
        (ewk_url_request_unref):
        * UIProcess/API/efl/ewk_url_request_private.h:
        (_Ewk_Url_Request):
        (_Ewk_Url_Request::_Ewk_Url_Request):
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didInitiateLoadForResource):
        (didSendRequestForResource):

2012-10-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>

        [Qt] Regression(r130031) coverRect is used in wrong coordinates.
        https://bugs.webkit.org/show_bug.cgi?id=97777

        Reviewed by Jocelyn Turcotte.

        Convert coverRect from screen coordinates to content coordinates before using it
        outside tiled-backing store.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (WebCore::CoordinatedGraphicsLayer::coverRect):

2012-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix make distcheck.

        * GNUmakefile.am: Add .in files in WebKit2/Shared to EXTRA_DIST.
        * GNUmakefile.list.am: Remove deleted file.

2012-10-14  Anders Carlsson  <andersca@apple.com>

        Fix the world.

        Add back a forgotten !.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::postInjectedBundleMessage):

2012-10-14  Sam Weinig  <sam@webkit.org>

        Stop all the crashing!

        The WebProcessProxy is not the Connection::Client, the WebConnectionToWebProcess is.

        * UIProcess/WebConnectionToWebProcess.h:
        (WebKit::WebConnectionToWebProcess::webProcessProxy):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::fromConnection):

2012-10-14  Anders Carlsson  <andersca@apple.com>

        Re-land of "WebContext should be a MessageReceiver"
        https://bugs.webkit.org/show_bug.cgi?id=98958

        Reviewed by Sam Weinig.

        Make WebContext be a MessageReceiver that lives in its own map. This allows us to get rid of the
        knowsHowToHandleMessage functions on MessageReceiverMap and WebContext.

        * Platform/CoreIPC/Connection.h:
        (CoreIPC::Connection::client):
        (Connection):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC::MessageReceiverMap::invalidate):
        (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::dispatchMessage):
        (WebKit::WebContext::dispatchSyncMessage):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::fromConnection):
        (WebKit):
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):

2012-10-14  Anders Carlsson  <andersca@apple.com>

        WebPage::PostInjectedBundleMessage should be a variadic message
        https://bugs.webkit.org/show_bug.cgi?id=99277

        Reviewed by Sam Weinig.

        Don't use a data reference for messages posted to the injected bundle; they could contain data that requires attachments
        (such as shared memory).

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::postMessageToInjectedBundle):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::postInjectedBundleMessage):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:

2012-10-14  Sam Weinig  <sam@webkit.org>

        Simplify user content in WebKit2 by using WebCore::UserStyleSheet and WebCore::UserScript directly
        https://bugs.webkit.org/show_bug.cgi?id=99276

        Reviewed by Anders Carlsson.

        - Removes UserContentContainer in favor of Vector<UserStyleSheet> and Vector<UserScript> right on WebPageGroupData.
        - Adds support for UserScripts, but does not expose API for it just yet.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * WebKit2.xcodeproj/project.pbxproj:
        * win/WebKit2.vcproj:
        * Shared/UserContentContainer.cpp: Removed.
        * Shared/UserContentContainer.h: Removed.
        Remove UserContentContainer.h/cpp.

        * Shared/API/c/WKBase.h:
        * Shared/API/c/WKSharedAPICast.h:
        (WebKit::toUserScriptInjectionTime):
        (WebKit::toUserContentInjectedFrames):
        * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        Move UserContent enums to WKBase.h so they can be used from both processes, and move the
        casts to WKSharedAPICast.

        * Shared/WebCoreArgumentCoders.cpp:
        * Shared/WebCoreArgumentCoders.h:
        Add coders for UserStyleSheet and UserScript.

        * Shared/WebPageGroupData.cpp:
        (WebKit::WebPageGroupData::encode):
        (WebKit::WebPageGroupData::decode):
        * Shared/WebPageGroupData.h:
        (WebPageGroupData):
        Replace UserContentContainer with Vector<UserStyleSheet> and Vector<UserScript>. Stop using
        CoreIPC::In() and CoreIPC::Out(), and instead just call encode/decode multiple times.

        * UIProcess/API/C/WKPageGroup.cpp:
        (WKPageGroupAddUserStyleSheet):
        Pass the parameters with as little conversion as possible to the C++ to avoid doing too much
        work in the API layer.

        * UIProcess/WebPageGroup.cpp:
        (WebKit::toStringVector):
        (WebKit::WebPageGroup::addUserStyleSheet):
        (WebKit::WebPageGroup::addUserScript):
        (WebKit::WebPageGroup::removeAllUserStyleSheets):
        (WebKit::WebPageGroup::removeAllUserScripts):
        (WebKit::WebPageGroup::removeAllUserContent):
        * UIProcess/WebPageGroup.h:
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::WebPageGroupProxy):
        (WebKit::WebPageGroupProxy::addUserStyleSheet):
        (WebKit::WebPageGroupProxy::addUserScript):
        (WebKit::WebPageGroupProxy::removeAllUserScripts):
        (WebKit::WebPageGroupProxy::removeAllUserContent):
        * WebProcess/WebPage/WebPageGroupProxy.h:
        (WebPageGroupProxy):
        * WebProcess/WebPage/WebPageGroupProxy.messages.in:
        Add support for user scripts and update to use UserScript and UserStyleSheet directly.

2012-10-14  Jon Lee  <jonlee@apple.com>

        Allow notification origin permission request when no js callback is provided
        https://bugs.webkit.org/show_bug.cgi?id=63615
        <rdar://problem/11059590>

        Reviewed by Sam Weinig.

        Null checks already exist for both standard and legacy API callbacks, so no changes are needed here
        like there are in WebKit 1. The checks existed because the callbacks are held in a hash map used to keep
        track of pending requests.

        Also, add a check for a null callback when short circuiting.

        * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
        (WebKit::NotificationPermissionRequestManager::startRequest):

2012-10-14  Anders Carlsson  <andersca@apple.com>

        Move QDataStream functions into HistoryItemQt.cpp
        https://bugs.webkit.org/show_bug.cgi?id=99203

        Reviewed by Andreas Kling.

        Forward declare QTransform.

        * Shared/qt/WebEventFactoryQt.h:

2012-10-12  Anders Carlsson  <andersca@apple.com>

        Explicitly mark messages variadic
        https://bugs.webkit.org/show_bug.cgi?id=99229

        Reviewed by Dan Bernstein.

        Instead of deciding whether messages are variadic based on their type, decide it based on the existence of a 'Variadic' message attribute.

        * Scripts/webkit2/messages.py:
        (messages_to_kind_enum):
        (decode_type):
        (async_case_statement):
        (sync_case_statement):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebProcess.messages.in:

2012-10-14  Sam Weinig  <sam@webkit.org>

        Make UserScript and UserStyleSheet value objects that are copyable
        https://bugs.webkit.org/show_bug.cgi?id=99275

        Reviewed by Tim Horton.

        * Shared/UserContentContainer.cpp:
        (WebKit::toStringVector):
        (WebKit::UserContentContainer::Item::Item):
        (WebKit::UserContentContainer::Item::encode):
        (WebKit::UserContentContainer::Item::decode):
        * Shared/UserContentContainer.h:
        (WebKit::UserContentContainer::Item::whitelist):
        (WebKit::UserContentContainer::Item::blacklist):
        Switch UserContentContainer::Item to store Vector<String> instead of ImmutableArray, easing
        transition to new PageGroup function signatures.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::toStringVector):
        * WebProcess/WebPage/qt/WebPageQt.cpp:
        (WebKit::WebPage::setUserScripts):
        Update for new PageGroup function signatures.

2012-10-14  Tim Horton  <timothy_horton@apple.com>

        [wk2] Implement PDFPlugin
        https://bugs.webkit.org/show_bug.cgi?id=99206

        Unreviewed build fix, hand ivar name to @synthesize since it doesn't match the property name.

        * WebProcess/Plugins/PDF/PDFPlugin.mm:

2012-10-14  Tim Horton  <timothy_horton@apple.com>

        [wk2] Implement PDFPlugin
        https://bugs.webkit.org/show_bug.cgi?id=99206

        Unreviewed, attempt to manipuate SVN to retain the history of SimplePDFPlugin.

        * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Replaced with Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h.
        * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Replaced with Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.mm.

2012-10-14  Tim Horton  <timothy_horton@apple.com>

        [wk2] Implement PDFPlugin
        https://bugs.webkit.org/show_bug.cgi?id=99206

        Reviewed by Dan Bernstein.

        Add PDFPlugin, which uses PDFKit to display PDFs, instead of using PDFKit in the
        UIProcess for full-page PDFs. This new plugin will also be used for inline PDFs
        in place of SimplePDFPlugin (née BuiltInPDFView).

        * Configurations/FeatureDefines.xcconfig: Add ENABLE_PDF_PLUGIN.

        Support three new Plugin methods:
            - handleEditingCommand, which hands editing commands to the Plugin
            - isEditingCommandEnabled, which validates editing commands via the Plugin
            - handlesPageScaleFactor, which asks the plugin whether it wants to
            opt into a mode where the WebPage doesn't scale in the ordinary fashion,
            but instead proxies the Plugin's scale factor, so full-page plugins
            can handle scale factor changes however they need to.

        * PluginProcess/PluginControllerProxy.cpp:
        (WebKit::PluginControllerProxy::handleEditingCommand): Proxy handleEditingCommand to the Plugin.
        (WebKit::PluginControllerProxy::isEditingCommandEnabled): Proxy isEditingCommandEnabled to the Plugin.
        (WebKit::PluginControllerProxy::handlesPageScaleFactor): Proxy handlesPageScaleFactor to the Plugin.
        * PluginProcess/PluginControllerProxy.h:
        (PluginControllerProxy): Add handleEditingCommand, isEditingCommandEnabled, and handlesPageScaleFactor.
        * PluginProcess/PluginControllerProxy.messages.in: Add HandleEditingCommand, IsEditingCommandEnabled, and HandlesPageScaleFactor.
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::handleEditingCommand): NPAPI plugins support no editing commands by default.
        (WebKit::NetscapePlugin::isEditingCommandEnabled): NPAPI plugins enable no editing commands by default.
        (WebKit::NetscapePlugin::handlesPageScaleFactor): NPAPI plugins do not handle page scale factor changes themselves by default.
        * WebProcess/Plugins/Netscape/NetscapePlugin.h: Add handleEditingCommand, isEditingCommandEnabled, and handlesPageScaleFactor.

        Add PDFPluginEnabled preference. If it is not enabled, or the plugin is
        not built, behavior will be the same as before (the UIProcess PDFView will
        handle full-page PDFs, and SimplePDFPlugin will handle inline ones).

        * Shared/WebPreferencesStore.h: Add PDFPluginEnabled preference.
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetPDFPluginEnabled): Setter for PDFPluginEnabled preference.
        (WKPreferencesGetPDFPluginEnabled): Getter for PDFPluginEnabled preference.
        * UIProcess/API/C/WKPreferencesPrivate.h: Expose WKPreferences(Set|Get)PDFPluginEnabled as a private preference.

        Move support for MIME types with custom representations onto WebPage instead of WebProcess.
        This allows us to use preferences to control the use of custom representations (for example,
        it allows us to have a preference to toggle between UIProcess's PDFView and PDFPlugin).

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode): Don't pass mimeTypesWithCustomRepresentation
        into the WebProcess, as we can compute it later.
        (WebKit::WebProcessCreationParameters::decode): Same, on the decode side.
        * Shared/WebProcessCreationParameters.h: Remove mimeTypesWithCustomRepresentation.
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess): Don't add pdfAndPostScriptMIMETypes to mimeTypesWithCustomRepresentation here, as we're now computing it on WebPage instead.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::canPluginHandleResponse): Move to WebPage from WebProcess so we can use WebPage's new notion of mimeTypesWithCustomRepresentation.
        (WebKit::WebPage::shouldUseCustomRepresentationForResponse): Move to WebPage from WebProcess so we can use WebPage's new notion of mimeTypesWithCustomRepresentation.
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::pdfAndPostScriptMIMETypes): Return the set of MIME types used for PDF and PostScript, which are handled with PDFView if PDFPlugin is not available or enabled.
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::initializeWebProcess): Don't keep m_mimeTypesWithCustomRepresentations on WebProcess, it's owned by WebPage now.
        * WebProcess/WebProcess.h: Move canPluginHandleResponse and shouldUseCustomRepresentationForResponse to WebPage.

        Add PDFLayerController to the set of classes returned by PDFKitImports.

        * Shared/mac/PDFKitImports.h: Add pdfLayerControllerClass.
        * Shared/mac/PDFKitImports.mm:
        (WebKit::pdfLayerControllerClass): Find and return the PDFLayerController class.

        Add PDFPlugin, which inherits from SimplePDFPlugin, but uses PDFKit instead
        of CoreGraphics, to provide additional interactive functionality.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::sendDidGetPlugins): Add PDFPlugin to the set of supported plugins.
        * WebKit2.xcodeproj/project.pbxproj: Add PDFPlugin, rename BuiltInPDFView to SimplePDFPlugin.
        * WebProcess/Plugins/PDF/PDFPlugin.h: Added.
        * WebProcess/Plugins/PDF/PDFPlugin.mm: Added.

        PDFPlugin uses layers for scrollbars.

        (-[WKPDFPluginScrollbarLayer initWithPDFPlugin:WebKit::]): Initialize our CALayer subclass,
        storing its parent PDFPlugin so it can delegate drawing there.
        (-[WKPDFPluginScrollbarLayer actionForKey:]): Disable CoreAnimation implicit actions.
        (-[WKPDFPluginScrollbarLayer drawInContext:]): Delegate scrollbar drawing to PDFPlugin.

        Implement the PDFLayerController delegate, eventually forwarding calls back to PDFPlugin.

        (-[WKPDFLayerControllerDelegate initWithPDFPlugin:WebKit::]): Initialize our delegate,
        storing its parent PDFPlugin so it can forward delegate calls there.
        (-[WKPDFLayerControllerDelegate updateScrollPosition:]): Update PDFPlugin's notion of the
        current scroll position, when PDFKit changes the scroll position itself.
        (-[WKPDFLayerControllerDelegate writeItemsToPasteboard:withTypes:]): Write the given
        array of NSData objects to the pasteboard with the given types.

        The following PDFLayerController delegate methods will be implemented in the future.

        (-[WKPDFLayerControllerDelegate showDefinitionForAttributedString:atPoint:]):
        (-[WKPDFLayerControllerDelegate performWebSearch:]):
        (-[WKPDFLayerControllerDelegate openWithPreview]):
        (-[WKPDFLayerControllerDelegate saveToPDF]):

        (WebKit::PDFPlugin::PDFPlugin): Set up the requisite layer hierarchy, and create a PDFLayerController (and its delegate proxy).
        (WebKit::PDFPlugin::updateScrollbars): Update the frame of the layers hosting our scrollbars.
        (WebKit::PDFPlugin::createScrollbar): Create a scrollbar and hosting layer, attaching its layer
        to PDFPlugin's container layer.
        (WebKit::PDFPlugin::destroyScrollbar): Destroy a scrollbar, detaching and destroying its hosting layer in the process.
        (WebKit::PDFPlugin::pdfDocumentDidLoad): Called when the document finishes loading; hand
        the loaded document to PDFKit, update all of our state (cached document size, scrollbars, etc.), and then execute any scripts in the document (to allow for automatic printing).
        (WebKit::PDFPlugin::calculateSizes): Determine the size of the PDF and its pages.
        (WebKit::PDFPlugin::destroy): Tear down the layer hierarchy.
        (WebKit::PDFPlugin::paint): PDFPlugin is layer-based, so we paint nothing into the tiles.
        (WebKit::PDFPlugin::paintControlForLayerInContext): Scrollbar controls are drawn into layers, but their painting is delegated here from WKPDFPluginScrollbarLayer.
        (WebKit::PDFPlugin::snapshot): Perform a paint into a bitmap context.
        (WebKit::PDFPlugin::pluginLayer): Return PDFPlugin's root layer.
        (WebKit::PDFPlugin::geometryDidChange): The size or scale of the plugin changed; update
        PDFLayerController's notion of the size and page scale, and invalidate the scrollbars.

        Mouse and keyboard events are converted back into NSEvents, but with
        locationInWindow actually in terms of the PDFPlugin's layer, not
        the window (since there is no window).

        (WebKit::modifierFlagsFromWebEvent): Construct an AppKit-style modifier bitmask from WebEvent's modifier key getters.
        (WebKit::eventTypeFromWebEvent): Return the NSEventType equivalent to the given WebEvent. Only supports keyboard and mouse events, and only the left and right mouse button.
        (WebKit::PDFPlugin::handleMouseEvent): Construct an NSEvent from the given WebMouseEvent and hand it to PDFLayerController. Mouse coordinates are in terms of m_contentLayer's origin.
        (WebKit::PDFPlugin::handleKeyboardEvent): Construct an NSEvent from the given WebKeyboardEvent and hand it to PDFLayerController. PDFLayerController currently only handles keyDown events.

        (WebKit::PDFPlugin::handleEditingCommand): Handle copy and select-all commands, and forward them to PDFLayerController.
        (WebKit::PDFPlugin::isEditingCommandEnabled): The 'copy' command should be enabled if
        the user has selected a part of the PDF. The 'select all' command should always be enabled.

        (WebKit::PDFPlugin::setScrollOffset): Update both PDFPlugin and PDFLayerController's notion
        of the current scroll position.
        (WebKit::PDFPlugin::invalidateScrollbarRect): Invalidate the whole scrollbar layer.
        (WebKit::PDFPlugin::invalidateScrollCornerRect): Invalidate the whole scroll corner layer.

        Rename BuiltInPDFView to SimplePDFPlugin, to differentiate it from PDFPlugin
        and to better denote its inheritance from Plugin.

        * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Renamed from WebProcess/Plugins/PDF/BuiltInPDFView.h.
        (WebKit::SimplePDFPlugin): Make methods protected so PDFPlugin can override them. Rename m_pluginSize -> m_size, and m_dataBuffer->m_data.
        (WebKit::SimplePDFPlugin::size): Retrieve the size of the plugin.
        (WebKit::SimplePDFPlugin::setSize): Set the size of the plugin.
        (WebKit::SimplePDFPlugin::pdfDocument): Retrieve the currently represented PDF document.
        (WebKit::SimplePDFPlugin::setPDFDocument): Set the currently represented PDF document.
        (WebKit::SimplePDFPlugin::pdfDocumentSize): Retrieve the current size of the PDF.
        (WebKit::SimplePDFPlugin::setPDFDocumentSize): Set the current size of the PDF.
        (WebKit::SimplePDFPlugin::data): Retrieve the accumulated document data.
        * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Renamed from WebProcess/Plugins/PDF/BuiltInPDFView.mm.
        (WebKit::SimplePDFPlugin::computePageBoxes): Copied out of calculateSizes() so PDFPlugin can use it too.
        (WebKit::SimplePDFPlugin::runScriptsInPDFDocument): Factored out of pdfDocumentDidLoad() so PDFPlugin can use it too.
        (WebKit::SimplePDFPlugin::convertFromScrollbarToContainingView): Implement the remaining scrollbar point conversion functions.
        (WebKit::SimplePDFPlugin::convertFromContainingViewToScrollbar): Implement the remaining scrollbar point conversion functions.

        * WebProcess/Plugins/Plugin.h:
        (Plugin): Add handleEditingCommand, isEditingCommandEnabled, and handlesPageScaleFactor.
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::handleEditingCommand): Proxy handleEditingCommand to the PluginProcess.
        (WebKit::PluginProxy::isEditingCommandEnabled): Proxy isEditingCommandEnabled
        to the PluginProcess.
        (WebKit::PluginProxy::handlesPageScaleFactor): Proxy handlesPageScaleFactor
        to the PluginProcess.
        * WebProcess/Plugins/PluginProxy.h: Add handleEditingCommand, isEditingCommandEnabled,
        and handlesPageScaleFactor.
        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::setPageScaleFactor): Set the plugin's current page scale factor. Also,
        update WebPageProxy's notion of the current pageScaleFactor when this is called.
        (WebKit::PluginView::pageScaleFactor): Return the plugin's current page scale factor.
        (WebKit::PluginView::handleEditingCommand): Proxy handleEditingCommand to the plugin.
        (WebKit::PluginView::isEditingCommandEnabled): Proxy isEditingCommandEnabled to the plugin.
        * WebProcess/Plugins/PluginView.h:
        (PluginView): Add handleEditingCommand, isEditingCommandEnabled,
        setPageScaleFactor/pageScaleFactor, and handlesPageScaleFactor. Add m_pageScaleFactor.
        (WebKit::PluginView::handlesPageScaleFactor): Proxy handlesPageScaleFactor to the plugin.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::restoreViewState): Don't update WebPageProxy's notion of the scale factor if it should be the default.
        (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame): Make use of shouldUseCustomRepresentationForResponse on WebPage instead of WebProcess.
        (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage): Make use of shouldUseCustomRepresentationForResponse on WebPage instead of WebProcess.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::createPlugin): Create a PDFPlugin if appropriate (if it is built and the setting is enabled).
        (WebKit::pluginViewForFrame): Return the PluginView for the given frame if its document is a PluginDocument.
        (WebKit::WebPage::executeEditingCommand): Attempt to execute editing commands on the
        currently focused (or main-frame) plugin.
        (WebKit::WebPage::isEditingCommandEnabled): Validate editing commands against the
        currently focused (or main-frame) plugin.
        (WebKit::WebPage::scalePage): If the plugin reports that it handles page scale factor
        itself, hand it the new scale instead of WebCore.
        (WebKit::WebPage::pageScaleFactor): If the plugin reports that it handles page scale
        factor itself, return its notion of the current scale instead of WebCore's.
        (WebKit::WebPage::validateCommand): Validate editing commands against the
        currently focused (or main-frame) plugin.
        (WebKit::WebPage::updatePreferences): Update m_pdfPluginEnabled given the relevant WebPreference.
        * WebProcess/WebPage/WebPage.h:
        (WebKit::WebPage::pdfPluginEnabled): Return whether or not PDFPlugin should be used.
        (WebKit::WebPage::setPDFPluginEnabled): Set whether or not PDFPlugin should be used.

2012-10-13  Sam Weinig  <sam@webkit.org>

        Use class extension rather than a void* member for new Objective-C WebProcessPlugIn SPI
        https://bugs.webkit.org/show_bug.cgi?id=99256

        Reviewed by Dan Bernstein.

        A bit of good old fashion cleanup.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
        Remove the void* member.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
        Move members from the WKWebProcessPlugInControllerData struct to a class extension.

        (didCreatePage):
        (willDestroyPage):
        (-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundleRef:]):
        Directly access the members instead of using properties, now that it is not inconvenient.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
        Remove the void* member.

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
        Move members from the WKWebProcessPlugInBrowserContextControllerData struct to a class extension.
        
        (-[WKWebProcessPlugInBrowserContextController _initWithBundlePageRef:]):
        (-[WKWebProcessPlugInBrowserContextController _bundlePageRef]):
        Remove unnecessary casts..

        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
        Add space before the parenthesis of a category to be consistent.
 
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
        Remove unnecessary forward declare.

2012-10-13  Andy Estes  <aestes@apple.com>

        Add a private header for WKWebProcessPlugInBrowserContextController that defines a property for getting the WKBundlePageRef
        https://bugs.webkit.org/show_bug.cgi?id=99252

        Reviewed by Sam Weinig.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
        (-[WKWebProcessPlugInBrowserContextController _bundlePageRef]):
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h: Added.

2012-10-12  Brady Eidson  <beidson@apple.com>

        Setup basic NetworkProcess messaging and initialization.
        https://bugs.webkit.org/show_bug.cgi?id=99198

        Reviewed by Sam Weinig.

        Project file/build system stuff:
        * DerivedSources.make:
        * WebKit2.xcodeproj/project.pbxproj:
        * Scripts/webkit2/messages.py:
        (struct_or_class):

        Add basic initialization parameters for the NetworkProcess:
        * Shared/Network/NetworkProcessCreationParameters.cpp: 
        (WebKit):
        (WebKit::NetworkProcessCreationParameters::NetworkProcessCreationParameters):
        (WebKit::NetworkProcessCreationParameters::encode):
        (WebKit::NetworkProcessCreationParameters::decode):
        * Shared/Network/NetworkProcessCreationParameters.h:
        (CoreIPC):
        (WebKit):
        (NetworkProcessCreationParameters):

        Use them to message the NetworkProcess what it's application name should be:
        * UIProcess/Network/NetworkProcessProxy.cpp:
        (WebKit::NetworkProcessProxy::didFinishLaunching):
        * UIProcess/Network/NetworkProcessProxy.h:
        (WebKit):
        (NetworkProcessProxy):
        * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
        (WebKit):
        (WebKit::NetworkProcessProxy::platformInitializeNetworkProcess):        

        Add basic message handling and initialization to the NetworkProcess itself:
        * NetworkProcess/NetworkProcess.messages.in: Added.
        * Platform/CoreIPC/MessageID.h:
        * NetworkProcess/NetworkProcess.cpp:
        (WebKit::NetworkProcess::didReceiveMessage):
        (WebKit::NetworkProcess::initializeNetworkProcess):
        (WebKit):
        * NetworkProcess/NetworkProcess.h:
        (WebKit):
        (NetworkProcess):

        Set a reasonable application name to be revealed in UI:
        * NetworkProcess/mac/NetworkProcessMac.mm:
        (WebKit):
        (WebKit::NetworkProcess::platformInitialize):


2012-10-12  Ada Chan  <adachan@apple.com>

        Add WKPage API to get whether the main frame is pinned to the top or bottom edge
        https://bugs.webkit.org/show_bug.cgi?id=99110

        Reviewed by Beth Dakin.

        This is very similar to r79025 where we add support to do this for the left and right sides.

        * UIProcess/API/C/WKPage.cpp:
        (WKPageIsPinnedToTopSide):
        (WKPageIsPinnedToBottomSide):
        * UIProcess/API/C/WKPage.h:
        Add new API calls.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        (WebKit::WebPageProxy::close):
        (WebKit::WebPageProxy::didCommitLoadForFrame):
        (WebKit::WebPageProxy::processDidCrash):
        (WebKit::WebPageProxy::didChangeScrollOffsetPinningForMainFrame):
        * UIProcess/WebPageProxy.h:
        (WebKit::WebPageProxy::isPinnedToTopSide):
        (WebKit::WebPageProxy::isPinnedToBottomSide):
        Declare new data members for keeping track of the pinned states for
        top and bottom sides. Initialize, reset, and update these states
        at appropriate times. Implement getters for these states.

        * UIProcess/WebPageProxy.messages.in:
        Change the DidChangeScrollOffsetPinningForMainFrame message to take
        the pinned states for top and bottom sides.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::didChangeScrollOffsetForMainFrame):
        * WebProcess/WebPage/WebPage.h:
        Cache the pinned states for top and bottom sides. Only notify the
        UI process if the states have changed.

2012-10-12  Anders Carlsson  <andersca@apple.com>

        Stop using deprecatedSend inside ConnectionMac.cpp
        https://bugs.webkit.org/show_bug.cgi?id=99192

        Reviewed by Andreas Kling.

        The messages that we send are so simple that we can just use sendMessage.

        * Platform/CoreIPC/mac/ConnectionMac.cpp:
        (CoreIPC::Connection::open):

2012-10-12  Brady Eidson  <beidson@apple.com>

        Add a basic NetworkProcess.app to the WebKit2 build
        https://bugs.webkit.org/show_bug.cgi?id=98543

        Reviewed by Sam Weinig.

        This change sets up the Mac build to include a NetworkProcess.app.
        It also launches this app when the first WebProcess is created.
        It then quits this app when the UIProcess terminates.

        The app, it does nothing.
                             -McBain

        Pure project file/build system stuff:
        * Configurations/NetworkProcess.xcconfig: Added.
        * WebKit2.xcodeproj/project.pbxproj:
        * WebKit2Prefix.h:

        Basic UIProcess side of things:
        * UIProcess/Network/NetworkProcessProxy.cpp: Added.
        (WebKit):
        (WebKit::NetworkProcessProxy::create):
        (WebKit::NetworkProcessProxy::NetworkProcessProxy):
        (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
        (WebKit::NetworkProcessProxy::didReceiveMessage):
        (WebKit::NetworkProcessProxy::didClose):
        (WebKit::NetworkProcessProxy::didReceiveInvalidMessage):
        (WebKit::NetworkProcessProxy::syncMessageSendTimedOut):
        (WebKit::NetworkProcessProxy::didFinishLaunching):
        * UIProcess/Network/NetworkProcessProxy.h: Added.
        (WebKit):
        (NetworkProcessProxy):

        Basic NetworkProcess side of things:
        * NetworkProcess/Info.plist: Added.
        * NetworkProcess/NetworkProcess.cpp: Added.
        (WebKit):
        (WebKit::NetworkProcess::shared):
        (WebKit::NetworkProcess::NetworkProcess):
        (WebKit::NetworkProcess::~NetworkProcess):
        (WebKit::NetworkProcess::initialize):
        (WebKit::NetworkProcess::shouldTerminate):
        (WebKit::NetworkProcess::didReceiveMessage):
        (WebKit::NetworkProcess::didClose):
        (WebKit::NetworkProcess::didReceiveInvalidMessage):
        (WebKit::NetworkProcess::syncMessageSendTimedOut):
        * NetworkProcess/NetworkProcess.h: Added.
        (WebCore):
        (WebKit):
        (NetworkProcess):

        Add the main method for the NetworkProcess itself:
        * WebProcess/WebKitMain.cpp:
        (WebKitMain):
        * NetworkProcess/NetworkProcessMain.h: Added.
        (WebKit):
        * NetworkProcess/mac/NetworkProcessMainMac.mm: Added.
        (WebKit):
        (WebKit::NetworkProcessMain):

        Teach ProcessLauncher about the new app type:
        * UIProcess/Launcher/ProcessLauncher.cpp:
        (WebKit::ProcessLauncher::processTypeAsString):
        (WebKit::ProcessLauncher::getProcessTypeFromString):
        * UIProcess/Launcher/ProcessLauncher.h:
        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
        (WebKit::createProcess):

        Launch the NetworkProcess when we launch the first WebProcess:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::ensureNetworkProcess):
        * UIProcess/WebContext.h:
        (WebContext):

2012-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r131189.
        http://trac.webkit.org/changeset/131189
        https://bugs.webkit.org/show_bug.cgi?id=99187

        Made inspector http tests crash on WK2. (Requested by rakuco
        on #webkit).

        * PlatformEfl.cmake:
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::inspectorPageURL):
        (WebKit::WebInspectorProxy::inspectorBaseURL):

2012-10-12  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL] Share resources installed for inspector
        https://bugs.webkit.org/show_bug.cgi?id=98991

        Reviewed by Gyuyoung Kim.

        * PlatformEfl.cmake: Removed build script which install resources to share.
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::inspectorPageURL): Modified not to use makeString.
        (WebKit::WebInspectorProxy::inspectorBaseURL): Changed resource path.

2012-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r131160.
        http://trac.webkit.org/changeset/131160
        https://bugs.webkit.org/show_bug.cgi?id=99163

        "It should not be landed without it's follow-up because it
        break pixal and ref tests without it." (Requested by kbalazs
        on #webkit).

        * Shared/API/c/qt/WKImageQt.cpp:
        (WKImageCreateQImage):
        * Shared/API/c/qt/WKImageQt.h:

2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
        https://bugs.webkit.org/show_bug.cgi?id=90142

        Unreviewed buildfix 2.

        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):

2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
        https://bugs.webkit.org/show_bug.cgi?id=90142

        Unreviewed buildfix.

        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::decode):

2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] Serialization of Resource[Request,Response,Error] should be shared across ports
        https://bugs.webkit.org/show_bug.cgi?id=90142

        Reviewed by Simon Hausmann.

        Share common serialization code across Qt and soup ports.
        All of these ports serialize the WebCore representation
        of these types.

        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC::::encode):
        (CoreIPC):
        (CoreIPC::::decode):
        * Shared/WebCoreArgumentCoders.h:
        * Shared/mac/WebCoreArgumentCodersMac.mm:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):
        * Shared/qt/WebCoreArgumentCodersQt.cpp:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):
        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):
        * Shared/win/WebCoreArgumentCodersWin.cpp:
        (CoreIPC::::encodePlatformData):
        (CoreIPC::::decodePlatformData):

2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed, rolling out r130389.
        http://trac.webkit.org/changeset/130389
        https://bugs.webkit.org/show_bug.cgi?id=98048

        It broke chromium

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-10-12  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WTR] Do a forced repaint before generating pixel results
        https://bugs.webkit.org/show_bug.cgi?id=98654

        Reviewed by Jocelyn Turcotte.

        Added API to convert a QImage to a WKImage so we can
        pass it to cross-platform code.

        * Shared/API/c/qt/WKImageQt.cpp:
        (WKImageCreateFromQImage):
        * Shared/API/c/qt/WKImageQt.h:

2012-10-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r131121.
        http://trac.webkit.org/changeset/131121
        https://bugs.webkit.org/show_bug.cgi?id=99144

        It made all tests timeout on all WK2 platform (Requested by
        ossy on #webkit).

        * UIProcess/WebProcessProxy.cpp:
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::postMessage):
        (WebKit::InjectedBundle::postSynchronousMessage):

2012-10-11  Andy Estes  <aestes@apple.com>

        Add some basic methods and properties to the injected bundle Objective-C DOM API
        https://bugs.webkit.org/show_bug.cgi?id=99137

        Reviewed by Sam Weinig.

        Add methods and properties that allow for tree traversal, node creation/insertion,
        attribute modification, text node retrieval, and range creation.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
        (toDocument):
        (-[WKDOMDocument createElement:]):
        (-[WKDOMDocument createTextNode:]):
        (-[WKDOMDocument body]):
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
        (-[WKDOMElement hasAttribute:]):
        (-[WKDOMElement getAttribute:]):
        (-[WKDOMElement setAttribute:value:]):
        (-[WKDOMElement tagName]):
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        (WebKit::WKDOMNodeClass):
        (WebKit::toWebCoreText):
        (WebKit::toWKDOMText):
        (WebKit::toWebCoreRange):
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
        (-[WKDOMNode insertNode:before:]):
        (-[WKDOMNode appendChild:]):
        (-[WKDOMNode parentNode]):
        (-[WKDOMNode firstChild]):
        (-[WKDOMNode nextSibling]):
        * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
        (-[WKDOMRange setStart:offset:]):
        (-[WKDOMRange setEnd:offset:]):
        (-[WKDOMRange collapse:]):
        (-[WKDOMRange selectNode:]):
        (-[WKDOMRange selectNodeContents:]):
        (-[WKDOMRange isCollapsed]):
        * WebProcess/InjectedBundle/API/mac/WKDOMText.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMText.mm: Added.
        (-[WKDOMText data]):

2012-10-11  Brady Eidson  <beidson@apple.com>

        Add a WKContext call to enable the NetworkProcess.
        https://bugs.webkit.org/show_bug.cgi?id=99140

        Reviewed by Sam Weinig.

        Add the SPI:
        * UIProcess/API/C/WKContext.cpp:
        (WKContextSetUsesNetworkProcess):
        * UIProcess/API/C/WKContextPrivate.h:

        Add a member for the flag and the first call site that will be interested in the flag's value:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::setUsesNetworkProcess):
        (WebKit):
        (WebKit::WebContext::createNewWebProcess):
        (WebKit::WebContext::ensureNetworkProcess):
        * UIProcess/WebContext.h:
        (WebContext):

2012-10-11  Andy Estes  <aestes@apple.com>

        Fix the 32-bit Mac build after r131138.

        * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
        (WebKit::InjectedBundle::load):

2012-10-11  Anders Carlsson  <andersca@apple.com>

        Stop using Connection::deprecatedSend in WebConnection
        https://bugs.webkit.org/show_bug.cgi?id=99130

        Reviewed by Sam Weinig.

        Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.

        * DerivedSources.make:
        * DerivedSources.pri:
        * GNUmakefile.list.am:
        Add new files.

        * Platform/CoreIPC/MessageID.h:
        Add WebConnectionMessageClass.

        * Shared/WebConnection.cpp:
        (WebKit::WebConnection::WebConnection):
        Make WebConnection hold on to the CoreIPC::Connection.

        (WebKit::WebConnection::postMessage):
        Ask the subclasses to encode the body data, then send it.

        (WebKit::WebConnection::handleMessage):
        Ask the subclasses to decode the body data, then call didReceiveClient.

        (WebKit::WebConnection::invalidate):
        Null out m_connection.

        * Shared/WebConnection.h:
        (WebKit::WebConnection::connection):

        * Shared/WebConnection.messages.in: Added.

        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
        Pass the connection to the WebConnection initializer.

        (WebKit::WebConnectionToWebProcess::encodeMessageBody):
        (WebKit::WebConnectionToWebProcess::decodeMessageBody):
        Encode and decode the message body.

        (WebKit::WebConnectionToWebProcess::didReceiveMessage):
        Handle WebConnection messages.

        * WebKit2.xcodeproj/project.pbxproj:
        Add new files.

        * WebProcess/WebConnectionToUIProcess.cpp:
        (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
        Pass the connection to the WebConnection initializer.

        (WebKit::WebConnectionToUIProcess::encodeMessageBody):
        (WebKit::WebConnectionToUIProcess::decodeMessageBody):
        Encode and decode the message body.

        (WebKit::WebConnectionToUIProcess::didReceiveMessage):
        Handle WebConnection messages.

        * win/WebKit2.vcproj:
        Add new files.

2012-10-11  Andy Estes  <aestes@apple.com>

        Expose the main frame's document to injected bundles via the Objective-C API
        https://bugs.webkit.org/show_bug.cgi?id=99133

        Patch by Sam Weinig.

        Reviewed by Anders Carlsson.

        Allow a bundle to declare a principle class which will be instantiated
        by WebKit2 and passed an object to which WKBundleClient calls are
        forwarded and which can access the main frame's WKDOMDocument.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm: Instantiate
        the bundle's principle class forward WKBundleClient calls to it.
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
        Add a property called mainFrameDocument which returns a WKDOMDocument.
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
        * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
        (WebKit::InjectedBundle::load): Initialize the shared
        WKWebProcessPlugInController with the bundle's principle class.

2012-10-11  Sam Weinig  <sam@webkit.org>

        Add a helper function for initializing WebKit2 DOM objects
        https://bugs.webkit.org/show_bug.cgi?id=99128

        Reviewed by Anders Carlsson.

        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        (WebKit::WKDOMNodeClass):
        (WebKit::initWithImpl):
        (WebKit::toWKDOMNode):
        (WebKit::toWKDOMRange):
        (WebKit::toWKDOMType):
        Add toWKDOMType which implements the core object initialization and caching.

2012-10-11  Seokju Kwon  <seokju.kwon@samsung.com>

        [EFL][WK2] Add support for Inspector
        https://bugs.webkit.org/show_bug.cgi?id=98639

        Reviewed by Kenneth Rohde Christiansen.

        Support inspector on WebKit2/Efl and add APIs to show and close the inspector.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_inspector_show):
        (ewk_view_inspector_close):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):
        * UIProcess/WebInspectorProxy.h:
        (WebInspectorProxy):
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::resizeInspectorWindow):
        (WebKit):
        (WebKit::destroyInspectorWindow):
        (WebKit::closeInspectorWindow):
        (WebKit::WebInspectorProxy::createInspectorWindow):
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):
        (WebKit::WebInspectorProxy::platformOpen):

2012-10-11  Anders Carlsson  <andersca@apple.com>

        Stop using deprecatedSend and deprecatedSendSync for sending messages to the UI process
        https://bugs.webkit.org/show_bug.cgi?id=99125

        Reviewed by Andreas Kling.

        Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.

        * UIProcess/WebContext.h:
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::postMessage):
        (WebKit):
        (WebKit::WebProcessProxy::postSynchronousMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::postMessage):
        (WebKit::InjectedBundle::postSynchronousMessage):

2012-10-11  Anders Carlsson  <andersca@apple.com>

        Stop using deprecatedSend for WebContext::postMessageToInjectedBundle
        https://bugs.webkit.org/show_bug.cgi?id=99123

        Reviewed by Andreas Kling.

        Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.

        * Platform/CoreIPC/MessageID.h:
        Remove MessageClassInjectedBundle.

        * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h: Removed.
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):
        Stop using deprecatedSend.

        (WebKit::WebContext::postMessageToInjectedBundle):
        Stop using deprecatedSend. Remove now invalid FIXMEs.

        * UIProcess/WebPageProxy.cpp:
        Remove include.

        * WebKit2.xcodeproj/project.pbxproj:
        Remove InjectedBundleMessageKinds.h.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        * WebProcess/InjectedBundle/InjectedBundle.h:
        The injected bundle is no longer in charge of receiving IPC messages.

        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveMessage):
        Stop passing messages to the injected bundle.

        (WebKit::WebProcess::postInjectedBundleMessage):
        Decode the message and pass it to the injected bundle.

        * WebProcess/WebProcess.messages.in:
        Add PostInjectedBundleMessage.

2012-10-11  Anders Carlsson  <andersca@apple.com>

        Stop using deprecatedSend for WebPageProxy::postMessageToInjectedBundle
        https://bugs.webkit.org/show_bug.cgi?id=99120

        Reviewed by Andreas Kling.

        Instead of using deprecatedSend, just encode the data using a separate ArgumentEncoder and pass it along as a DataReference.

        * Shared/CoreIPCSupport/InjectedBundleMessageKinds.h:
        Remove PostMessageToPage.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::postMessageToInjectedBundle):
        Stop using deprecatedSend.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::didReceiveMessage):
        Remove code to handle PostMessageToPage.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::postInjectedBundleMessage):
        Decode the APIObject and send it along to the injected bundle.

        * WebProcess/WebPage/WebPage.messages.in:
        Add PostInjectedBundleMessage message.

2012-10-11  Regina Chung  <heejin.r.chung@samsung.com>

        [EFL][WK2] WebProcess keeps on waiting for UIProcess
        https://bugs.webkit.org/show_bug.cgi?id=97646

        Reviewed by Kenneth Rohde Christiansen.

        Set LayerTreeRenderer to active so UIProcess can send RenderNextFrame message to WebProcess
        after accelerated compositing(AC) mode is entered, so WebProcess can start flushing changes to UIProcess.

        * UIProcess/API/efl/EflViewportHandler.cpp: Added API for setting LayerTreeRenderer's active state.
        (WebKit::EflViewportHandler::setActive):
        (WebKit):
        * UIProcess/API/efl/EflViewportHandler.h:
        (EflViewportHandler):
        * UIProcess/API/efl/ewk_view.cpp: Sets LayerTreeRenderer's active status to true after entering AC mode.
        (ewk_view_accelerated_compositing_mode_enter):

2012-10-10  Brady Eidson  <beidson@apple.com>

        Switch ResourceLoader::resourceData() from SharedBuffer to ResourceBuffer
        https://bugs.webkit.org/show_bug.cgi?id=98976

        Reviewed by Anders Carlsson.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::finishedLoading):
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::source):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::getMainResourceDataOfFrame):

2012-10-11  Sam Weinig  <sam@webkit.org>

        Add missing WK_EXPORT for WKDOMTextIterator.

        Rubber-stamped by Brady Eidson.

        * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h:

2012-10-11  Zeno Albisser  <zeno@webkit.org>

        [Qt] Implement GraphicsSurfaceToken to replace uint64_t as token type.
        https://bugs.webkit.org/show_bug.cgi?id=98501

        Replace the token type for GraphicsSurface with a new class GraphicsSurfaceToken.
        This is necessary in order to implement GraphicsSurface for Windows.
        Depending on the platform a GraphicsSurfaceToken might contain a
        WindowID (Linux/GLX), two IOSurfaceIDs (Mac) or in the future two HANDLEs (Windows).
        The simple uint64_t is not sufficient anymore, since a single HANDLE in windows
        can be 64bit already.

        Reviewed by Noam Rosenthal.

        * Shared/ShareableSurface.cpp:
        (WebKit::ShareableSurface::Handle::encode):
        (WebKit::ShareableSurface::Handle::decode):
        (WebKit::ShareableSurface::create):
        (WebKit::ShareableSurface::createHandle):
        * Shared/ShareableSurface.h:
        (WebKit::ShareableSurface::Handle::graphicsSurfaceToken):
        (Handle):
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC):
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        * Shared/WebCoreArgumentCoders.h:
        (WebCore):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::syncCanvas):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::syncCanvas):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::syncCanvas):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-10-10  Andras Becsi  <andras.becsi@digia.com>

        [Qt][WK2] Avoid unnecessary calls in PageViewportController
        https://bugs.webkit.org/show_bug.cgi?id=98886

        Reviewed by Jocelyn Turcotte.

        Remove leftover and unneeded update guards and visibility update
        notifications to avoid unnecessary update cycles between the
        controller an the client.
        Previously didRenderFrame triggered updates for no reason since
        animations on the page cause a lot of DidRenderFrame messages
        for which the viewport state does not change.

        * UIProcess/PageViewportController.cpp:
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (WebKit::PageViewportController::didRenderFrame):
        * UIProcess/PageViewportController.h:
        (PageViewportController):
        * UIProcess/qt/PageViewportControllerClientQt.cpp:
        (WebKit::PageViewportControllerClientQt::setContentsScale):
        (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes):
        (WebKit::PageViewportControllerClientQt::updateViewportController):
        * UIProcess/qt/PageViewportControllerClientQt.h:
        (PageViewportControllerClientQt):

2012-10-11  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK] It should be possible to disable favicons in WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=98885

        Reviewed by Carlos Garcia Campos.

        Make support for favicons in WebKit2GTK+ disabled by default, and
        allow enabling it even after calling webkit_web_context_get_favicon_database(),
        by decoupling opening the IconDatabase, which will happen when
        setting the path for the database directory, from creating the
        instance of WebKitFaviconDatabase from WebKitWebContext.

        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate): Renamed faviconDatabasePath to
        faviconDatabaseDirectory;
        (ensureFaviconDatabase): Makes sure there's an instance of
        WebKitFaviconDatabase created and associated to the context.
        (webkit_web_context_set_favicon_database_directory): Use the
        default path if NULL is passed, or the specified one, creating the
        database if needed and opening it by setting it's path. If the
        database is already open this method does nothing.
        (webkit_web_context_get_favicon_database_directory): Return the
        path or NULL if webkit_web_context_set_favicon_database_directory
        has not been called yet.
        (webkit_web_context_get_favicon_database): Return the instance of
        WebKitFaviconDatabase, or create it if it doesn't exist yet, but
        never set the path (would cause the icon database to be opened).

        * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
        (testNotInitialized): New test to check that a NOT_INITIALIZED
        error is got when using the database before setting its path.
        (testSetDirectory): Call set_favicon_database_directory() here
        instead of doing it in the constructor of FaviconDatabaseTest.
        (beforeAll): Add testNotInitialized() to the test suite.

2012-10-11  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Revisit setting API names and documentation
        https://bugs.webkit.org/show_bug.cgi?id=98793

        Reviewed by Kenneth Rohde Christiansen.

        Make setting API names to be consistent and revisit the documentation.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_frame_flattening_enabled_set):
        (ewk_settings_frame_flattening_enabled_get):
        (ewk_settings_dns_prefetching_enabled_set):
        (ewk_settings_dns_prefetching_enabled_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-10-10  Jer Noble  <jer.noble@apple.com>

        Disallow full screen mode keyboard access by default.
        https://bugs.webkit.org/show_bug.cgi?id=98971
        <rdar://problem/12474226>

        Reviewed by Sam Weinig.

        Only support full screen if keyboard access is not requested.

        * UIProcess/WebFullScreenManagerProxy.cpp:
        (WebKit::WebFullScreenManagerProxy::supportsFullScreen):

2012-10-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r130972 and r130984.
        http://trac.webkit.org/changeset/130972
        http://trac.webkit.org/changeset/130984
        https://bugs.webkit.org/show_bug.cgi?id=98986

        Huge numbers of WK2 crashes (Requested by smfr on #webkit).

        * Platform/CoreIPC/Connection.h:
        (Connection):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC::MessageReceiverMap::clearAllMessageReceivers):
        (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * UIProcess/WebConnectionToWebProcess.h:
        (WebConnectionToWebProcess):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::knowsHowToHandleMessage):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):

2012-10-10  Sam Weinig  <sam@webkit.org>

        Add more Objective-C WebKit2 DOM API skeletons.
        https://bugs.webkit.org/show_bug.cgi?id=98981

        Reviewed by Anders Carlsson.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
        Update guards to actually do something. __CLANG__ is never defined, but __clang__ is.

        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        - Abstracts DOM object caching into the DOMCache class which can only be used as a singleton.
        - Adds WKDOMRange class extension to allow manipulating its internal pointer for caching purposes.
        - Add WKDOMRange conversion functions.

        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
        Rename _node to _impl for consistency.

        * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
        (-[WKDOMRange _initWithImpl:WebCore::]):
        (-[WKDOMRange initWithDocument:]):
        (-[WKDOMRange dealloc]):
        (-[WKDOMRange startContainer]):
        (-[WKDOMRange startOffset]):
        (-[WKDOMRange endContainer]):
        (-[WKDOMRange endOffset]):
        (-[WKDOMRange text]):
        Added. Only offers base range functionality.

        * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
        (-[WKDOMTextIterator initWithRange:]):
        (-[WKDOMTextIterator advance]):
        (-[WKDOMTextIterator atEnd]):
        (-[WKDOMTextIterator currentRange]):
        (-[WKDOMTextIterator currentTextPointer]):
        (-[WKDOMTextIterator currentTextLength]):
        Added. Almost identical to WebTextIterator API in WebKit.

2012-10-10  Anders Carlsson  <andersca@apple.com>

        Stop crashing left and right.

        * UIProcess/WebConnectionToWebProcess.h:
        (WebKit::WebConnectionToWebProcess::webProcessProxy):
        Add a getter.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::fromConnection):
        The WebProcessProxy is not the Connection::Client, the WebConnectionToWebProcess is.

2012-10-10  Sam Weinig  <sam@webkit.org>

        Fix the GCC Mac build. Why are we still building with GCC again?

        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:

2012-10-10  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add toolbar buttons to MiniBrowser
        https://bugs.webkit.org/show_bug.cgi?id=98883

        Reviewed by Kenneth Rohde Christiansen.

        Add "back,forward,list,changed" signal on the Ewk_View
        to notify the client when the view's back / forward
        list has changed. This is useful for the UI to update
        its back / forward buttons disabled state.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_back_forward_list_changed):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didChangeBackForwardList):
        * UIProcess/API/efl/ewk_view_private.h:

2012-10-10  Jon Lee  <jonlee@apple.com>

        [WK2] Activate plugins when user clicks on snapshot
        https://bugs.webkit.org/show_bug.cgi?id=98328
        <rdar://problem/12426681>

        Reviewed by Brady Eidson.

        Implement the recreation of the plugin.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::recreateAndInitialize): We can run into a situation where the user
        decided to run the plugin before the snapshot was ready to be taken. In this case, the
        plugin member variable is non-null, and the timer is still active. Turn off the timer, and
        destroy that instance of the plugin. We set the plugin to the instance provided in the
        first parameter to this function, and reset the member variables so that the PluginView is
        in a state similar to when it was first created. We also immediately initialize the plugin,
        which may happen synchronously or asynchronously.

        * WebProcess/Plugins/PluginView.h:
        (WebKit::PluginView::initialParameters): Expose the initial parameters. Used to recreate
        the plugin.
        (WebKit::PluginView::pluginElement): Expose the element associated with the widget. Used to
        recreate the plugin.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::recreatePlugin): Create a new Plugin instance using the same
        parameters used to create the plugin for snapshotting. Forward that instance to the widget.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
        (WebFrameLoaderClient): Implement recreatePlugin().

2012-10-10  Sam Weinig  <sam@webkit.org>

        Fix 32-bit build.

        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:

2012-10-10  Anders Carlsson  <andersca@apple.com>

        WebContext should be a MessageReceiver
        https://bugs.webkit.org/show_bug.cgi?id=98958

        Reviewed by Sam Weinig.

        Make WebContext be a MessageReceiver that lives in its own map. This allows us to get rid of the
        knowsHowToHandleMessage functions on MessageReceiverMap and WebContext.

        * Platform/CoreIPC/Connection.h:
        (CoreIPC::Connection::client):
        (Connection):
        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::addMessageReceiver):
        (CoreIPC::MessageReceiverMap::invalidate):
        (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
        (CoreIPC::MessageReceiverMap::dispatchMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        (MessageReceiverMap):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::dispatchMessage):
        (WebKit::WebContext::dispatchSyncMessage):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::fromConnection):
        (WebKit):
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):

2012-10-10  Sam Weinig  <sam@webkit.org>

        Add skeleton of a WebKit2 ObjC DOM SPI (not intended to be the full DOM)
        https://bugs.webkit.org/show_bug.cgi?id=98955

        Reviewed by Anders Carlsson.

        Add a skeleton DOM implementation only exposing Node, Element and Document
        for now. It is currently only available in 64-bit as it relies on the non-fragile
        ABI for now.

        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm: Added.

2012-10-04  Andy Estes  <aestes@apple.com>

        [WebKit2] Create an API for adding and removing user stylesheets from a page group
        https://bugs.webkit.org/show_bug.cgi?id=98432

        Reviewed by Sam Weinig.

        This patch adds the following API to WKBrowsingContextGroup:

        - (void)addUserStyleSheet:(NSString *)source baseURL:(NSURL *)baseURL whitelist:(NSArray *)whitelist blacklist:(NSArray *)blacklist mainFrameOnly:(BOOL)mainFrameOnly;
        - (void)removeAllUserStyleSheets;

        Sheets added via this API are sent to all processes that contain a page
        in the given page group. Sheets are also cached in the UI process in a
        new object called UserContentContainer, which is a property of each
        group's WebPageGroupData and is sent to new web processes during page
        initialization.

        This is less than ideal, since new pages added to a pre-existing
        process / page group combination will send redundant user stylesheet
        strings over the wire. To avoid this we'd have to keep track track of
        the groups that currently exist in each process and only send user
        content during page creation if it is the first time a process has seen
        the page's group. I decided to not add this complexity for the time
        being, but we might need to consider it if we find that the current
        approach impacts performance for clients that heavily utilize user
        content.

        * Shared/API/c/WKArray.cpp:
        (WKArrayCreateAdoptingValues): Add a WKArray creation function that
        adopts the incoming WKTypeRefs rather than refing them.
        * Shared/API/c/WKArray.h:
        * Shared/API/c/WKBase.h: Move WKUserContentInjectedFrames out of
        WKBundlePrivate.h so it can be used in WKPageGroup, too.
        * Shared/API/c/cf/WKURLCF.cpp:
        (WKURLCreateWithCFURL): Return 0 for null CFURLRefs instead of crashing
        inside CFURLGetString().
        * Shared/ImmutableArray.cpp:
        (WebKit::ImmutableArray::ImmutableArray): Add a tag to differentiate
        between the adopting and refing ctors.
        * Shared/ImmutableArray.h:
        (WebKit::ImmutableArray::create): Call the refing ctor.
        (WebKit::ImmutableArray::adopt): Call the adopting ctor.
        * Shared/UserContentContainer.cpp: Added.
        (UserContentItemMessageEncoder): Create a UserMessageEncoder for
        serializing UserContentContainer::Item's APIObjects.
        (WebKit::UserContentItemMessageEncoder::UserContentItemMessageEncoder):
        (WebKit::UserContentItemMessageEncoder::encode):
        (UserContentItemMessageDecoder): Create a UserMessageEncoder for
        deserializing UserContentContainer::Item's APIObjects.
        (WebKit::UserContentItemMessageDecoder::UserContentItemMessageDecoder):
        (WebKit::UserContentItemMessageDecoder::decode):
        (WebKit::UserContentContainer::Item::Item):
        (WebKit::encodeStringArray): Add a helper function for encoding
        ImmutableArrays of WebStrings.
        (WebKit::UserContentContainer::Item::encode): Encode the item's
        properties using UserContentItemMessageEncoder.
        (WebKit::decodeStringArray): Add a helper function for decoding
        ImmutableArrays of WebStrings.
        (WebKit::UserContentContainer::Item::decode): Decode the item's
        properties using UserContentItemMessageDecoder.
        (WebKit::toStringVector): Add a helper function for converting an
        ImmutableArray of WebStrings to a Vector of Strings.
        (WebKit::UserContentContainer::Item::whitelist): Use toStringVector().
        (WebKit::UserContentContainer::Item::blacklist): Ditto.
        (WebKit::UserContentContainer::encode): Encode the Vector of UserContentContainer::Items.
        (WebKit::UserContentContainer::decode): Decode the Vector of UserContentContainer::Items.
        * Shared/UserContentContainer.h: Added.
        * Shared/WebPageGroupData.cpp:
        (WebKit::WebPageGroupData::encode): Include userStyleSheets when encoding.
        (WebKit::WebPageGroupData::decode): Include userStyleSheets when decoding.
        * Shared/WebPageGroupData.h:
        (WebPageGroupData): Add a UserContentContainer called userStyleSheets
        to WebPageGroupData.
        * UIProcess/API/C/WKPageGroup.cpp: Add the C SPI version of the Objective-C API.
        (WKPageGroupAddUserStyleSheet):
        (WKPageGroupRemoveAllUserStyleSheets):
        * UIProcess/API/C/WKPageGroup.h:
        * UIProcess/API/mac/WKBrowsingContextGroup.h: Add the Objective-C API.
        * UIProcess/API/mac/WKBrowsingContextGroup.mm:
        (createWKArray): Add a helper function that converts an NSArray of NSStrings to a WKArray of WKStrings.
        (-[WKBrowsingContextGroup addUserStyleSheet:baseURL:whitelist:blacklist:mainFrameOnly:]):
        Implement the Objective-C API in terms of the C SPI.
        (-[WKBrowsingContextGroup removeAllUserStyleSheets]): Ditto.
        * UIProcess/WebPageGroup.cpp:
        (WebKit::WebPageGroup::addUserStyleSheet): Add the new sheet to the
        group's WebPageGroupData, which ensures that the group's sheets are
        sent to new web processes.
        (WebKit::WebPageGroup::removeAllUserStyleSheets): Ditto for removal.
        * UIProcess/WebPageGroup.h:
        (WebKit::WebPageGroup::sendToAllProcessesInGroup): Add a helper message
        that sends a message to all processes that have a page in the current
        group. This is used to add new user sheets to already-initialized page
        groups in the UI processes.
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Moved
        WKUserContentInjectedFrames from here to WKBase.h.
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::WebPageGroupProxy): Add each sheet in the
        WebPageGroupData to WebCore's page group.
        (WebKit::WebPageGroupProxy::addUserStyleSheet): Add the sheet received
        from the UI process to WebCore's page group.
        (WebKit::WebPageGroupProxy::removeAllUserStyleSheets): Remove all
        sheets from WebCore's page group.
        * WebProcess/WebPage/WebPageGroupProxy.h:
        * WebProcess/WebPage/WebPageGroupProxy.messages.in: Define
        AddUserStyleSheet and RemoveAllUserStyleSheets, two messages sent from
        the UI process to a web process's WebPageGroupProxy.

2012-10-10  Sam Weinig  <sam@webkit.org>

        Make all of the WebContext sub objects MessageReceivers
        https://bugs.webkit.org/show_bug.cgi?id=98661

        Reviewed by Anders Carlsson.

        Start work towards simplified message dispatch.

        * Platform/CoreIPC/MessageReceiverMap.cpp:
        (CoreIPC::MessageReceiverMap::clearAllMessageReceivers):
        (CoreIPC::MessageReceiverMap::knowsHowToHandleMessage):
        (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
        * Platform/CoreIPC/MessageReceiverMap.h:
        Add additional helper methods.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::addMessageReceiver):
        (WebKit::WebContext::knowsHowToHandleMessage):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        Add a MessageReceiverMap that chains to the main on in WebProcessProxy. Simplifies
        didReceiveMessage and didReceiveSyncMessage.

        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        Use the new WebContext methods to simplify dispatch.

        * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
        (WebKit::WebNotificationManagerProxy::WebNotificationManagerProxy):
        * UIProcess/Notifications/WebNotificationManagerProxy.h:
        (WebNotificationManagerProxy):
        * UIProcess/WebApplicationCacheManagerProxy.cpp:
        (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
        * UIProcess/WebApplicationCacheManagerProxy.h:
        (WebApplicationCacheManagerProxy):
        * UIProcess/WebBatteryManagerProxy.cpp:
        (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
        * UIProcess/WebBatteryManagerProxy.h:
        (WebBatteryManagerProxy):
        * UIProcess/WebCookieManagerProxy.cpp:
        (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
        * UIProcess/WebCookieManagerProxy.h:
        (WebCookieManagerProxy):
        * UIProcess/WebDatabaseManagerProxy.cpp:
        (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
        (WebKit::WebDatabaseManagerProxy::didReceiveMessage):
        (WebKit):
        * UIProcess/WebDatabaseManagerProxy.h:
        (WebDatabaseManagerProxy):
        * UIProcess/WebGeolocationManagerProxy.cpp:
        (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
        * UIProcess/WebGeolocationManagerProxy.h:
        (WebGeolocationManagerProxy):
        * UIProcess/WebIconDatabase.cpp:
        (WebKit::WebIconDatabase::WebIconDatabase):
        * UIProcess/WebIconDatabase.h:
        (WebIconDatabase):
        (WebKit::WebIconDatabase::type):
        * UIProcess/WebKeyValueStorageManagerProxy.cpp:
        (WebKit::WebKeyValueStorageManagerProxy::WebKeyValueStorageManagerProxy):
        * UIProcess/WebKeyValueStorageManagerProxy.h:
        (WebKeyValueStorageManagerProxy):
        * UIProcess/WebMediaCacheManagerProxy.cpp:
        (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
        * UIProcess/WebMediaCacheManagerProxy.h:
        (WebMediaCacheManagerProxy):
        * UIProcess/WebNetworkInfoManagerProxy.cpp:
        (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
        (WebKit::WebNetworkInfoManagerProxy::didReceiveSyncMessage):
        * UIProcess/WebNetworkInfoManagerProxy.h:
        (WebNetworkInfoManagerProxy):
        * UIProcess/WebResourceCacheManagerProxy.cpp:
        (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
        (WebKit::WebResourceCacheManagerProxy::didReceiveMessage):
        (WebKit):
        * UIProcess/WebResourceCacheManagerProxy.h:
        (WebResourceCacheManagerProxy):
        * UIProcess/WebVibrationProxy.cpp:
        (WebKit::WebVibrationProxy::WebVibrationProxy):
        * UIProcess/WebVibrationProxy.h:
        (WebVibrationProxy):
        * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
        (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
        (WebKit::WebSoupRequestManagerProxy::didReceiveMessage):
        (WebKit):
        * UIProcess/soup/WebSoupRequestManagerProxy.h:
        (WebSoupRequestManagerProxy):
        * WebProcess/Authentication/AuthenticationManager.h:
        (AuthenticationManager):
        * WebProcess/Geolocation/WebGeolocationManager.h:
        (WebGeolocationManager):
        Make all the WebContext sub-objects MessageReceivers to simplify dispatch.

2012-10-10  Simon Fraser  <simon.fraser@apple.com>

        Add the mangled symbol name for Frame::layerTreeAsText() to the confusingly named
        Windows export file.

        * win/WebKit2.def:

2012-10-10  Simon Fraser  <simon.fraser@apple.com>

        Store a visible rect in GraphicsLayers, and optionally dump it in layerTreeAsText
        https://bugs.webkit.org/show_bug.cgi?id=98839

        Reviewed by Sam Weinig.

        Add a flag to layerTreeAsText() so that tests can optionally include this visible rect in
        layer tree dumps. This output will be platform-specific, so we don't want to do it unconditionally.

        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::layerTreeAsText):

2012-10-10  Shinya Kawanaka  <shinyak@chromium.org>

        Needs internal API to return distributed nodes for InsertionPoint
        https://bugs.webkit.org/show_bug.cgi?id=98868

        Reviewed by Hajime Morita.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-10-10  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt][WK2] REGRESSION(r130879): It made fast/events/touch/* tests crash
        https://bugs.webkit.org/show_bug.cgi?id=98888

        Reviewed by Kenneth Rohde Christiansen.

        Add null-checks in the gesture recognizers to allow them working without a PageViewportController.
        The pinch and pan gesture recognizers aren't used in that case yet, but they could eventually
        be used to send pinch and pan gesture events to the web process. They are currently kept active
        because we need the tap gesture recognizer and its logic is bound to those other recognizers.

        * UIProcess/qt/QtPanGestureRecognizer.cpp:
        (WebKit::QtPanGestureRecognizer::update):
        (WebKit::QtPanGestureRecognizer::finish):
        (WebKit::QtPanGestureRecognizer::cancel):
        * UIProcess/qt/QtPinchGestureRecognizer.cpp:
        (WebKit::QtPinchGestureRecognizer::update):
        (WebKit::QtPinchGestureRecognizer::finish):
        (WebKit::QtPinchGestureRecognizer::cancel):

2012-10-10  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitWebView/history-cache asserts in debug bot
        https://bugs.webkit.org/show_bug.cgi?id=98731

        Reviewed by Martin Robinson.

        The problem is in the test itself that is using
        SingleResourceLoadTest class to load a multiresource document.

        * UIProcess/API/gtk/tests/TestResources.cpp:
        (testWebViewResourcesHistoryCache): Load only single resource
        documents and check also that the main resource given is the
        expected one.
        (serverCallback): Add another single resource document.

2012-10-10  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][SOUP] ResourceError.isCancellation() is not carried over IPC
        https://bugs.webkit.org/show_bug.cgi?id=98882

        Reviewed by Kenneth Rohde Christiansen.

        Properly serialize / deserialize ResourceError.isCancellation
        boolean so that it can be used in UIProcess.

        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-10-10  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Add APIs to get/set the DNS prefetching
        https://bugs.webkit.org/show_bug.cgi?id=98790

        Reviewed by Laszlo Gombos.

        Add setting APIs for DNS prefetching and a unit test.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_DNS_prefetching_enabled_set):
        (ewk_settings_DNS_prefetching_enabled_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-10-09  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt][WK2] REGRESSION(r130629): It made touchadjustment/focusout-on-touch.html fai1
        https://bugs.webkit.org/show_bug.cgi?id=98642

        Reviewed by Kenneth Rohde Christiansen.

        There was an early return that would prevent gesture recognition if no PageViewportController
        has been set on QtWebPageEventHandler. The gesture recognizer are also used to send
        GestureEvents to WebCore which this layout test is using.

        Make sure that the gesture recognition is done even when no PageViewportController is present.

        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::handleInputEvent):
        (WebKit::QtWebPageEventHandler::doneWithTouchEvent):

2012-10-10  Zeno Albisser  <zeno@webkit.org>

        [Qt] ProcessLauncherQt should use QStringLiteral for serviceName.
        https://bugs.webkit.org/show_bug.cgi?id=98398

        QString(const char*) is deprecated, we should use QStringLiteral instead.

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
        (WebKit::ProcessLauncher::launchProcess):

2012-10-10  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Add History callbacks API
        https://bugs.webkit.org/show_bug.cgi?id=98594

        Reviewed by Kenneth Rohde Christiansen.

        Added History callbacks API to Ewk Context. Added unit tests.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (_Ewk_Context::_Ewk_Context):
        (ewk_context_history_callbacks_set): New public function which lets the client to set History callbacks.
        (ewk_context_history_client_get):
        (ewk_context_add_visited_link): New public function to mark a URL as visited link.
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_history_client.cpp: Added.
        (getEwkHistoryDelegate):
        (didNavigateWithNavigationData):
        (didPerformClientRedirect):
        (didPerformServerRedirect):
        (didUpdateHistoryTitle):
        (populateVisitedLinks):
        (ewk_context_history_client_attach):
        * UIProcess/API/efl/ewk_context_history_client_private.h: Added.
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_navigation_data.cpp: Added.
        (_Ewk_Navigation_Data):
        (_Ewk_Navigation_Data::_Ewk_Navigation_Data):
        (_Ewk_Navigation_Data::~_Ewk_Navigation_Data):
        (ewk_navigation_data_ref):
        (ewk_navigation_data_unref):
        (ewk_navigation_data_title_get):
        (ewk_navigation_data_original_request_get):
        (ewk_navigation_data_url_get):
        (ewk_navigation_data_new):
        * UIProcess/API/efl/ewk_navigation_data.h: Added.
        * UIProcess/API/efl/ewk_navigation_data_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (addToPageViewMap):
        (removeFromPageViewMap):
        (_ewk_view_smart_del):
        (_ewk_view_initialize):
        (ewk_view_from_page_get):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/tests/test_ewk2_context_history_delegate.cpp: Added.
        (httpServer):
        (navigateWithNavigationData):
        (performClientRedirect):
        (performServerRedirect):
        (updateHistoryTitle):
        (populateVisitedLinks):
        (onLoadFinishedForRedirection):
        (serverCallbackRedirection):
        (TEST_F):

2012-10-09  Byungwoo Lee  <bw80.lee@samsung.com>

        [EFL][WK2] Change parameter and return type of loadUrlSync().
        https://bugs.webkit.org/show_bug.cgi?id=97920

        Reviewed by Gyuyoung Kim.

        loadUrlSync() uses waitUntilLoadFinished() internally, and it has
        a parameter and return value for timeout.
        To set and check timeout, loadUrlSync() should have those.

        A parameter for timeout interval is added to loadUrlSync() and it
        returns the result of waitUntilLoadFinished() for checking timeout.

        And I added codes to check the result of all the LoadUrlSync()
        function calls with ASSERT_TRUE() macro.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        (EWK2UnitTestBase):
        * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_intents.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-09  Byungwoo Lee  <bw80.lee@samsung.com>

        [EFL][WK2] Move timeout callback to the CallbackDataTimer class.
        https://bugs.webkit.org/show_bug.cgi?id=97861

        Reviewed by Gyuyoung Kim.

        Timeout callbacks for waitUntil{LoadFinished,TitleChanged,URIChanged}
        can be moved to the CallbackDataTimer class.

        Moved the callback implementation to the CallbackDataTimer class.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::CallbackDataTimer::CallbackDataTimer):
        (CallbackDataTimer):
        (EWK2UnitTest::CallbackDataTimer::timeOutCallback):
        (EWK2UnitTest::CallbackDataExpectedValue::CallbackDataExpectedValue):
        (EWK2UnitTest::EWK2UnitTestBase::waitUntilLoadFinished):
        (EWK2UnitTest::EWK2UnitTestBase::waitUntilTitleChangedTo):
        (EWK2UnitTest::EWK2UnitTestBase::waitUntilURIChangedTo):

2012-10-09  Jian Li  <jianli@chromium.org>

        Update the CSS property used to support draggable regions.
        https://bugs.webkit.org/show_bug.cgi?id=97156

        Reviewed by Adam Barth.

        The CSS property to support draggable regions, guarded under
        WIDGET_REGION is now disabled from Mac WebKit, in order not to cause
        confusion with DASHBOARD_SUPPORT feature.

        Also update the code to use the new name annotatedRegions to work for
        both features.

        * Configurations/FeatureDefines.xcconfig: Disable WIDGET_REGION feature.
        * WebProcess/WebCoreSupport/WebChromeClient.cpp: Rename dashboardRegions to annotatedRegions.
        (WebKit::WebChromeClient::annotatedRegionsChanged):
        * WebProcess/WebCoreSupport/WebChromeClient.h: Rename dashboardRegions to annotatedRegions.
        (WebChromeClient):

2012-10-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r130811 and r130821.
        http://trac.webkit.org/changeset/130811
        http://trac.webkit.org/changeset/130821
        https://bugs.webkit.org/show_bug.cgi?id=98831

        Broke date-suggestion-picker-appearance-with-scroll-bar.html
        (Requested by abarth|gardening on #webkit).

        * Shared/WebRenderObject.cpp:
        (WebKit::WebRenderObject::WebRenderObject):
        * WebProcess/FullScreen/WebFullScreenManager.cpp:
        (WebKit::screenRectOfContents):

2012-10-09  Jon Lee  <jonlee@apple.com>

        [WK2] Have plugins render offscreen to capture snapshot
        https://bugs.webkit.org/show_bug.cgi?id=98326
        <rdar://problem/12426658>

        Reviewed by Simon Fraser.

        Keep the plugin rendering without compositing to easily grab the snapshot.

        PluginView now has two variables referring to snapshots, but are unrelated. The timer
        is used to capture a snapshot that acts as a poster for a plugin. The ShareableBitmap
        variable m_snapshot is used whenever the plugin paints in software, to avoid side effects
        should the plugin run JS during painting.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit): Add a named constant for the time delay before a snapshot is taken.
        (WebKit::PluginView::PluginView): Initialize a 3-second timer to get the snapshot.
        (WebKit::PluginView::~PluginView): Refactor part of the destructor code out into
        destroyPluginAndReset() for reuse.
        (WebKit::PluginView::destroyPluginAndReset): Contains part of the destructor code.
        In addition to destroying the plugin, the destructor cancels pending loads and streams.
        (WebKit::PluginView::didInitializePlugin): If the plugin is in a state where it needs
        to generate or display a poster, don't setup the compositing layer and start the timer.
        (WebKit::PluginView::paint): Avoid painting if the plugin is not running.
        (WebKit::PluginView::invalidateRect): Avoid painting if the plugin is not running.
        (WebKit::PluginView::isAcceleratedCompositingEnabled): Don't enable accelerated compositing
        until the plugin is running.
        (WebKit::PluginView::pluginSnapshotTimerFired): When the timer fires, get a snapshot, generate
        an Image that WebCore can render, and destroy the plugin.

        Rename m_snapshot to m_transientPaintingSnapshot.
        * WebProcess/Plugins/PluginView.h:
        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::paint):
        (WebKit::PluginView::notifyWidget):
        (WebKit::PluginView::pluginSnapshotTimerFired):

2012-10-09  Rik Cabanier  <cabanier@adobe.com>

        Add missing compile flag for compositing
        https://bugs.webkit.org/show_bug.cgi?id=98681

        Reviewed by Dirk Schulze.

        This flag is needed in case there is a difference in API
        when compositing is enabled

        * Configurations/FeatureDefines.xcconfig:

2012-10-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r130680.
        http://trac.webkit.org/changeset/130680
        https://bugs.webkit.org/show_bug.cgi?id=98720

        this patch has a typo so was ineffective (Requested by
        cabanier on #webkit).

        * Configurations/FeatureDefines.xcconfig:

2012-10-09  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>

        [EFL][WK2] Inform the PageProxy about visibility changes when the view is shown/hidden.
        https://bugs.webkit.org/show_bug.cgi?id=98757

        Reviewed by Kenneth Rohde Christiansen.

        SVN r130720 exposed a bug in our code: the PageProxy is not
        notified when one calls evas_object_show() or evas_object_hide()
        on the view, so the visibility it has when the WebPageProxy is
        constructed remained set forever.

        This made the ewk_context_vibration_client_callbacks_set unit test
        start running forever, because WebPageProxy's constructor now sets
        the page's visibility to hidden by the default for us, since it is
        called from within ewk_view_smart_add() and before
        evas_object_show().

        We now listen to the EVAS_CALLBACK_SHOW and EVAS_CALLBACK_HIDE
        callbacks and update the WebPageProxy accordingly. Note that we
        could not do this from the smart_show and smart_hide functions we
        already had, since they are called before the object's actual
        visibility is updated.

        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_on_show):
        (_ewk_view_on_hide):
        (_ewk_view_smart_add):

2012-10-09  Simon Pena  <spena@igalia.com>

        [GTK] Add support for running JavaScript from GResources
        https://bugs.webkit.org/show_bug.cgi?id=98488

        Reviewed by Carlos Garcia Campos.

        GResources allow embedding certain resources, frequently used, in a "bundle"
        which can be kept separated or stored in the binary. This patch adds
        support for running JavaScript from GResources.

        For this, methods run_javascript_from_gresource and
        run_javascript_from_gresource_finish are added, which load the resource
        asynchronously and, when it is ready, run the JavaScript.

        * UIProcess/API/gtk/WebKitWebView.cpp: Include the new methods.
        (resourcesStreamReadCallback):
        (webkit_web_view_run_javascript_from_gresource):
        (webkit_web_view_run_javascript_from_gresource_finish):
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Include the new
        methods in the documentation.
        * UIProcess/API/gtk/tests/GNUmakefile.am: Add the test resources to the
        build infrastructure.
        * UIProcess/API/gtk/tests/TestMain.cpp: Register the resources in the tests,
        so that they can be accessed in all of them.
        (register_gresource):
        (main):
        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Test the
        run_javascript_from_gresource method.
        (testWebViewRunJavaScript):
        * UIProcess/API/gtk/tests/WebViewTest.cpp: Add a method for testing the
        new run_javascript_from_gresource method.
        (runJavaScriptFromGResourceReadyCallback):
        (WebViewTest::runJavaScriptFromGResourceAndWaitUntilFinished):
        * UIProcess/API/gtk/tests/WebViewTest.h:
        * UIProcess/API/gtk/tests/resources/webkit2gtk-tests.gresource.xml: Added.
        Resource bundle containing the resources.
        * UIProcess/API/gtk/tests/resources/webkit2gtk-tests.test.js: Added.
        Example JavaScript file to test the GResources support.


2012-10-08  Kiran Muppala  <cmuppala@apple.com>

        Throttle DOM timers on hidden pages.
        https://bugs.webkit.org/show_bug.cgi?id=98474

        Reviewed by Maciej Stachowiak.

        Add HIDDEN_PAGE_DOM_TIMER_THROTTLING feature define.  Use existing code of
        PAGE_VISIBILITY_API to detect changes to page visibility state.

        * Configurations/FeatureDefines.xcconfig:
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):
        Check visibility state on construction.
        (WebKit::WebPageProxy::initializeWebPage):
        Send initial visibility state message if HIDDEN_PAGE_DOM_TIMER_THROTTLING
        is enabled or if PAGE_VISIBILITY_API is enabled.
        (WebKit::WebPageProxy::viewStateDidChange):
        When PAGE_VISIBILITY_API is not enabled, compare new visibility against
        WebPageProxy::m_isVisible, to minimize number of messages sent.
        Remove unnecessary second call to PageClient::isViewVisible for updating
        visibility state.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setPageVisibilityState):
        WebKitTestRunner uses this method to implement testRunner.setPageVisibility(),
        hence enable it for testing hidden page timer throttling as well.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit):
        (WebKit::WebPage::setVisibilityState):
        Ensure Page::setVisibilityState is called either if PAGE_VISIBILITY_API is
        enabled or if HIDDEN_PAGE_DOM_TIMER_THROTTLING is enabled.

        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:

2012-10-08  Simon Fraser  <simon.fraser@apple.com>

        Try to fix Windows build by exporting Frame::layerTreeAsText().

        * win/WebKit2.def:

2012-10-08  Rik Cabanier  <cabanier@adobe.com>

        Add missing compile flag for compositing
        https://bugs.webkit.org/show_bug.cgi?id=98681

        Reviewed by Dirk Schulze.

        This flag is needed in case there is a difference in API
        when compositing is enabled

        * Configurations/FeatureDefines.xcconfig:

2012-10-08  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] EWK2UnitTestBase.ewk_cookie_manager_accept_policy unit test is failing
        https://bugs.webkit.org/show_bug.cgi?id=98663

        Reviewed by Laszlo Gombos.

        EWK2UnitTestBase.ewk_cookie_manager_accept_policy unit test was
        failing because the elements of a list were checked in a given
        order but the list was not sorted beforehand.

        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        (sortHostNames):
        (TEST_F):

2012-10-08  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Avoid useless converting to WKPage
        https://bugs.webkit.org/show_bug.cgi?id=98516

        Reviewed by Eric Seidel.

        Use priv->pageProxy->findString() and priv->pageProxy->hideFindUI()
        to avoid useless converting to WK.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_text_find):
        (ewk_view_text_find_highlight_clear):

2012-10-08  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [WK2][WTR] WebKitTestRunner needs testRunner.dispatchPendingLoadRequests
        https://bugs.webkit.org/show_bug.cgi?id=98638

        Reviewed by Eric Seidel.

        Add implementation for testRunner.dispatchPendingLoadRequests in
        WebKitTestRunner.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleDispatchPendingLoadRequests):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::dispatchPendingLoadRequests):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add a setting to enable/disable smooth scrolling to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=98646

        Reviewed by Xan Lopez.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (webKitSettingsSetProperty): Implement setter for new property.
        (webKitSettingsGetProperty): Implement getter for new property.
        (webkit_settings_class_init): Add new property
        enable-smooth-scrolling.
        (webkit_settings_get_enable_smooth_scrolling):
        (webkit_settings_set_enable_smooth_scrolling):
        * UIProcess/API/gtk/WebKitSettings.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
        (testWebKitSettings): Test smooth scrolling setting API.

2012-10-08  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Use URL instead of URI in the API
        https://bugs.webkit.org/show_bug.cgi?id=98643

        Reviewed by Kenneth Rohde Christiansen.

        Use URL instead of URI in WebKit2 EFL API. This change
        was discussed on the mailing list and aims at making
        the API more consistent.

        * UIProcess/API/efl/ewk_back_forward_list_item.cpp:
        (_Ewk_Back_Forward_List_Item):
        (ewk_back_forward_list_item_url_get):
        (ewk_back_forward_list_item_original_url_get):
        * UIProcess/API/efl/ewk_back_forward_list_item.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (ewk_context_url_scheme_register):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (decideDestinationWithSuggestedFilename):
        * UIProcess/API/efl/ewk_download_job.h:
        * UIProcess/API/efl/ewk_resource_private.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (ewk_view_url_update):
        (ewk_view_url_set):
        (ewk_view_url_get):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_load_finished):
        (ewk_view_load_provisional_redirect):
        (ewk_view_load_provisional_started):
        (ewk_view_html_string_load):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didSameDocumentNavigationForFrame):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
        (EWK2UnitTest::onURLChanged):
        (EWK2UnitTest::timeOutWhileWaitingUntilURLChangedTo):
        (EWK2UnitTest::EWK2UnitTestBase::waitUntilURLChangedTo):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        (EWK2UnitTestBase):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
        (EWK2UnitTestServer::EWK2UnitTestServer):
        (EWK2UnitTestServer::~EWK2UnitTestServer):
        (EWK2UnitTestServer::getURLForPath):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.h:
        (EWK2UnitTestServer):
        * UIProcess/API/efl/tests/resources/redirect_url_to_default.html: Renamed from Source/WebKit2/UIProcess/API/efl/tests/resources/redirect_uri_to_default.html.
        * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
        (checkItem):
        (urlFromTitle):
        * UIProcess/API/efl/tests/test_ewk2_context.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-08  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] r122720 causes performance regression with DirectFB on ARMv7
        https://bugs.webkit.org/show_bug.cgi?id=97548

        Reviewed by Jocelyn Turcotte.

        Revert the rest of r122720. This change modifies the NativeImagePtr from QImage* to QPixmap*.

        Covered by existing tests.

        * Shared/qt/ShareableBitmapQt.cpp:
        (WebKit::ShareableBitmap::createImage):
        * UIProcess/qt/QtWebIconDatabaseClient.cpp:
        (WebKit::QtWebIconDatabaseClient::iconImageForPageURL):
        * WebProcess/WebCoreSupport/qt/WebDragClientQt.cpp:
        (WebKit::convertQPixmapToShareableBitmap):
        (WebKit::WebDragClient::startDrag):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::adoptImageBackingStore):

2012-10-08  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        Unreviewed build fix after r130630

        Explicit convertion is required from QSizeF to FloatSize.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::updateViewportSize):

2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Fix the mouse hover events transformation when devicePixelRatio != 1
        https://bugs.webkit.org/show_bug.cgi?id=98429

        Reviewed by Kenneth Rohde Christiansen.

        This prevents the events from being transformed two or three times.
        This is only noticeable in desktop mode.

        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::handleHoverLeaveEvent):
        (WebKit::QtWebPageEventHandler::handleHoverMoveEvent):

2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Apply QQuickWebViewExperimental::devicePixelRatio to the desktop mode as well
        https://bugs.webkit.org/show_bug.cgi?id=98428

        Reviewed by Kenneth Rohde Christiansen.

        This is handled by the PageViewportController when in flickable mode.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::updateViewportSize):

2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Prevent the PageViewportController from affecting the viewport in desktop mode
        https://bugs.webkit.org/show_bug.cgi?id=98427

        Reviewed by Kenneth Rohde Christiansen.

        QQuickFlickable isn't tightly bound to it anymore, we can avoid creating it
        completely in this case.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate::onComponentComplete):
        (QQuickWebViewPrivate::viewportController):
        (QQuickWebViewPrivate):
        (QQuickWebViewFlickablePrivate::viewportController):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit::QtPageClient::didRenderFrame):
        (WebKit::QtPageClient::didChangeContentsSize):
        (WebKit::QtPageClient::pageTransitionViewportReady):
        * UIProcess/qt/QtWebPageLoadClient.cpp:
        (WebKit::QtWebPageLoadClient::didCommitLoad):

2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Fix a QSocketNotifier warning at startup
        https://bugs.webkit.org/show_bug.cgi?id=98411

        Reviewed by Simon Hausmann.

        The actual warning:
        QSocketNotifier: socket notifiers cannot be enabled from another thread

        The problem was that QSocketNotifier::setEnabled was called on the main thread
        after moveToThread was called. This hasn't had any effect since Connection
        would dispatch a readyReadHandler call right after which would then call
        setEnabled again from the correct thread from ~SocketNotifierResourceGuard.

        Replace the call with a queued invoke to shut the warning.

        * Platform/qt/WorkQueueQt.cpp:
        (WorkQueue::registerSocketEventHandler):

2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitWebView/populate-menu asserts in debug bots
        https://bugs.webkit.org/show_bug.cgi?id=98507

        Reviewed by Martin Robinson.

        Make sure we retain the page URL before asking for the icon.

        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (getIconSurfaceSynchronously): Retain the page URL before asking
        for the icon, and release it if we fail to get an icon.
        (processPendingIconsForPageURL): Renamed to make it clear it
        receives a Sring and not a char* and moved
        getIconSurfaceSynchronously() call out of the loop to call it only
        once even if there are multiple requests pending.
        (iconDataReadyForPageURLCallback): Do not retain the page URL
        here.

2012-10-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use the C API internally in WebKitWebContext
        https://bugs.webkit.org/show_bug.cgi?id=96768

        Reviewed by Martin Robinson.

        Using the C++ classes directly instead of the C API wrappers we
        avoid a lot of toImpl/toAPI casts, string conversions and
        allocations. The code is also a lot simpler and easier to read.

        * UIProcess/API/gtk/WebKitDownloadClient.cpp:
        (didStart):
        (didReceiveResponse):
        (didReceiveData):
        (decideDestinationWithSuggestedFilename):
        (didCreateDestination):
        (didFail):
        (didCancel):
        (didFinish):
        (attachDownloadClientToContext):
        * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
        (attachRequestManagerClientToContext):
        * UIProcess/API/gtk/WebKitSecurityManager.cpp:
        (registerSecurityPolicyForURIScheme):
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate):
        (createDefaultWebContext):
        (webkit_web_context_set_cache_model):
        (webkit_web_context_get_cache_model):
        (webkit_web_context_clear_cache):
        (webkit_web_context_download_uri):
        (webkit_web_context_get_cookie_manager):
        (webkit_web_context_get_favicon_database_directory):
        (webkit_web_context_get_favicon_database):
        (webkit_web_context_set_additional_plugins_directory):
        (webkitWebContextGetPluginThread):
        (webkit_web_context_register_uri_scheme):
        (webkitWebContextGetOrCreateDownload):
        (webkitWebContextRemoveDownload):
        (webkitWebContextGetContext):
        (webkitWebContextGetRequestManager):
        * UIProcess/API/gtk/WebKitWebContextPrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewConstructed):

2012-10-07  Kangil Han  <kangil.han@samsung.com>

        [EFL][WK2] Fix unused parameter compile warning.
        https://bugs.webkit.org/show_bug.cgi?id=98610

        Reviewed by Laszlo Gombos.

        Fixed unused parameter compile warning by removing initiatingPageRef parameter name.

        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest):

2012-10-07  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        Rename first/second to key/value in HashMap iterators
        https://bugs.webkit.org/show_bug.cgi?id=82784

        Reviewed by Eric Seidel.

        * Platform/CoreIPC/ArgumentCoders.h:
        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::SyncMessageState::getOrCreate):
        (CoreIPC::Connection::waitForMessage):
        (CoreIPC::Connection::processIncomingMessage):
        * Platform/gtk/WorkQueueGtk.cpp:
        (WorkQueue::registerEventSourceHandler):
        (WorkQueue::unregisterEventSourceHandler):
        * Platform/mac/WorkQueueMac.cpp:
        (WorkQueue::unregisterMachPortEventHandler):
        * Shared/Plugins/NPRemoteObjectMap.cpp:
        (WebKit::NPRemoteObjectMap::pluginDestroyed):
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode):
        * Shared/WebPreferencesStore.cpp:
        (WebKit::valueForKey):
        (WebKit::WebPreferencesStore::getBoolValueForKey):
        * Shared/mac/WebCoreArgumentCodersMac.mm:
        (CoreIPC::::decode):
        * Shared/qt/ArgumentCodersQt.cpp:
        (CoreIPC::::decode):
        * Shared/soup/WebCoreArgumentCodersSoup.cpp:
        (CoreIPC::::decode):
        * UIProcess/API/efl/ewk_back_forward_list.cpp:
        (_Ewk_Back_Forward_List::~_Ewk_Back_Forward_List):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context::~_Ewk_Context):
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_priv_loading_resources_clear):
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_get_subresources):
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (webkitWebViewBaseContainerForall):
        * UIProcess/API/mac/WKPrintingView.mm:
        (-[WKPrintingView _expectedPreviewCallbackForRect:]):
        (pageDidDrawToPDF):
        (-[WKPrintingView _drawPreview:]):
        * UIProcess/API/mac/WKView.mm:
        (commandNameForSelector):
        (-[WKView validateUserInterfaceItem:]):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
        (WebKit::CoordinatedBackingStore::updateTile):
        (WebKit::CoordinatedBackingStore::texture):
        (WebKit::CoordinatedBackingStore::paintToTextureMapper):
        (WebKit::CoordinatedBackingStore::commitTileOperations):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::adjustPositionForFixedLayers):
        (WebKit::LayerTreeRenderer::syncCanvas):
        (WebKit::LayerTreeRenderer::setLayerChildren):
        (WebKit::LayerTreeRenderer::setLayerFilters):
        (WebKit::LayerTreeRenderer::setLayerState):
        (WebKit::LayerTreeRenderer::assignImageToLayer):
        * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
        (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests):
        * UIProcess/InspectorServer/WebInspectorServer.cpp:
        (WebKit::WebInspectorServer::~WebInspectorServer):
        (WebKit::WebInspectorServer::registerPage):
        * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
        (WebKit::WebSocketServerConnection::sendHTTPResponseHeader):
        * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
        (WebKit::WebInspectorServer::buildPageList):
        * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
        (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests):
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
        * UIProcess/WebContext.cpp:
        (WebKit::createDictionaryFromHashMap):
        * UIProcess/WebIconDatabase.cpp:
        (WebKit::WebIconDatabase::didFinishURLImport):
        * UIProcess/WebIntentData.cpp:
        (WebKit::WebIntentData::extras):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::checkURLReceivedFromWebProcess):
        (WebKit::WebProcessProxy::addBackForwardItem):
        (WebKit::WebProcessProxy::frameCountInPage):
        * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
        (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
        (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
        * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
        (WebKit::InjectedBundleNodeHandle::getOrCreate):
        * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
        (WebKit::InjectedBundleRangeHandle::getOrCreate):
        * WebProcess/InjectedBundle/InjectedBundleIntent.cpp:
        (WebKit::InjectedBundleIntent::extras):
        * WebProcess/Notifications/WebNotificationManager.cpp:
        (WebKit::WebNotificationManager::policyForOrigin):
        (WebKit::WebNotificationManager::show):
        (WebKit::WebNotificationManager::clearNotifications):
        (WebKit::WebNotificationManager::removeNotificationFromContextMap):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::invalidate):
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::destroyStream):
        (WebKit::NetscapePlugin::frameDidFinishLoading):
        (WebKit::NetscapePlugin::frameDidFail):
        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::buildHTTPHeaders):
        (WebKit::PluginView::~PluginView):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::layerByID):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
        (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
        * WebProcess/WebPage/WebBackForwardListProxy.cpp:
        (WebKit::WebBackForwardListProxy::removeItem):
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::commandNameForSelectorName):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::visitedLinkStateChanged):
        (WebKit::WebProcess::allVisitedLinkStateChanged):
        (WebKit::WebProcess::focusedWebPage):
        (WebKit::WebProcess::createWebPage):
        (WebKit::WebProcess::webPageGroup):
        (WebKit::fromCountedSetToHashMap):
        (WebKit::WebProcess::setTextCheckerState):

2012-10-07  Dan Bernstein  <mitz@apple.com>

        Web process XPC services don't have correct version information in their Info.plist files
        https://bugs.webkit.org/show_bug.cgi?id=98619

        Reviewed by Anders Carlsson.

        * WebProcessService/Info.plist: Added CFBundleGetInfoString, and changed
        CFBundleShortVersionString and CFBundleVersion to report the source version.
        * WebProcessServiceForWebKitDevelopment/Info.plist: Ditto.

2012-10-06  Dan Bernstein  <mitz@apple.com>

        WebKit2 part of <rdar://problem/12446507> [mac] WebKit clients cannot change the behavior of text-rendering: auto
        https://bugs.webkit.org/show_bug.cgi?id=98601

        Reviewed by Darin Adler.

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::WebProcessCreationParameters): Added initializer for
        to shouldEnableKerningAndLigaturesByDefault. The initial value is false.
        (WebKit::WebProcessCreationParameters::encode): Added encoding of
        shouldEnableKerningAndLigaturesByDefault.
        (WebKit::WebProcessCreationParameters::decode): Added decoding of
        shouldEnableKerningAndLigaturesByDefault.
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters): Added shouldEnableKerningAndLigaturesByDefault boolean
        member variable.
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess): Changed to set
        shouldEnableKerningAndLigaturesByDefault in the process creation parameters according to
        the value of the WebKitKerningAndLigaturesEnabledByDefault user defaults key.
        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::WebProcess::platformInitializeWebProcess): Added a call to
        Font::setDefaultTypesettingFeatures() to enable kerning and ligatures if requested in the
        process creation parameters.

2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [WK2][WTR] WebKitTestRunner needs testRunner.setSerializeHTTPLoads
        https://bugs.webkit.org/show_bug.cgi?id=98524

        Reviewed by Alexey Proskuryakov.

        Add implementation for testRunner.setSerializeHTTPLoads in
        WebKitTestRunner.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetSerialLoadingEnabled):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setSerialLoadingEnabled):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-10-05  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r130556 and r130564.
        http://trac.webkit.org/changeset/130556
        http://trac.webkit.org/changeset/130564
        https://bugs.webkit.org/show_bug.cgi?id=98572

        The patch wasn't reviewed by a reviewer and it is breaking
        Chromium Windows (Requested by jchaffraix on #webkit).

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface):

2012-10-05  Sam Weinig  <sam@webkit.org>

        Set the current working directory to TMPDIR when entering the sandbox in the plug-in process.
        Based on a patch by Ivan Krstić.

        Reviewed by Anders Carlsson.

        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
        (enterSandbox):

2012-10-05  Tim Horton  <timothy_horton@apple.com>

        [cg] GraphicsContextCG should ask CG whether the shadow offset workaround is required
        https://bugs.webkit.org/show_bug.cgi?id=98565
        <rdar://problem/12436468>

        Reviewed by Simon Fraser.

        Add wkCGContextDrawsWithCorrectShadowOffsets.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface):

2012-10-04  Eric Carlson  <eric.carlson@apple.com>

        Allow ports to override text track rendering style
        https://bugs.webkit.org/show_bug.cgi?id=97800
        <rdar://problem/12044964>

        Reviewed by Silvia Pfeiffer.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface): Initialize new WKSI function pointers.

2012-10-05  José Dapena Paz  <jdapena@igalia.com>

        [GTK] Add support for creating EGL contexts
        https://bugs.webkit.org/show_bug.cgi?id=77921

        Reviewed by Martin Robinson.

        This patch adds support for EGL, using OpenGL and OpenGL ES 2. Both
        options are set up on compile time, with the configure options
        --enable-egl and --enable-gles2.

        The implementation only adds support for EGL on top of X11, to
        isolate the changes to the minimum. More changes should come
        later to enable EGL for other targets (as Wayland).

        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

2012-10-04  Jon Lee  <jonlee@apple.com>

        Add a setting to enable plugin snapshotting
        https://bugs.webkit.org/show_bug.cgi?id=98319
        <rdar://problem/12426480>

        Reviewed by Brady Eidson.

        Expose plugInSnapshottingEnabled preference to WebKit clients.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetPlugInSnapshottingEnabled):
        (WKPreferencesGetPlugInSnapshottingEnabled):
        * UIProcess/API/C/WKPreferences.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences): Update preference based on store.

2012-10-05  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] Plugins are completely broken with a custom device pixel ratio
        https://bugs.webkit.org/show_bug.cgi?id=98518

        Reviewed by Kenneth Rohde Christiansen.

        Implement painting with scale factor in ShareableBitmap.
        The backing store of the plugin are still overscaled in MiniBrowser
        with this patch but this is only the effect of the fake device scale
        factor defined in qml (1.5). We should probably remove it on desktop.

        * Shared/qt/ShareableBitmapQt.cpp:
        (WebKit::ShareableBitmap::paint):

2012-10-05  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Unskip fullscreen unit tests for EwkView
        https://bugs.webkit.org/show_bug.cgi?id=98509

        Reviewed by Kenneth Rohde Christiansen.

        Update 2 fullscreen unit tests for EwkView so that
        they don't require a call to ecore_evas_fullscreen_set()
        to succeed. ecore_evas_fullscreen_set() does not
        seem to work in Xvfb and causes the tests to hang.
        With this update, we can now run those tests again.

        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitPrintOperation/print-errors gives runtime critical warnings
        https://bugs.webkit.org/show_bug.cgi?id=98497

        Reviewed by Martin Robinson.

        The problem is that GTK+ tries to write in the IO channel that has
        already been closed.

        * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
        (WebKit::WebPrintOperationGtk::print): Finish the surface when
        printing fails because printing data is invalid.

2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitWebResource/response fails
        https://bugs.webkit.org/show_bug.cgi?id=98511

        Reviewed by Martin Robinson.

        Do not consider the favicon as a resource for the web resources
        unit tests.

        * UIProcess/API/gtk/tests/TestResources.cpp:

2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>

        REGRESSION (r129989 - r130019): [WK2] TestResources test is failing
        https://bugs.webkit.org/show_bug.cgi?id=98342

        Reviewed by Martin Robinson.

        Return 404 error in unit tests using a HTTP server for paths not
        handled by the test. This way all tests should return now a 404
        for /favicon.ico.

        * UIProcess/API/gtk/tests/TestBackForwardList.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestCookieManager.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestLoaderClient.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestResources.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestSSL.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestWebKitPolicyClient.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
        (serverCallback):
        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (serverCallback):

2012-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>

        [WK2][SOUP] Assertion hit in WebKit::DownloadManager::downloadFinished() when download fails
        https://bugs.webkit.org/show_bug.cgi?id=97565

        Reviewed by Gustavo Noronha Silva.

        Make sure to notify the downlaod client that the response has been
        received when the newly created download has already been added to
        the DownloadManager downloads map.

        * WebProcess/Downloads/soup/DownloadSoup.cpp:
        (WebKit::DownloadClient::DownloadClient): Initialize
        m_handleResponseLaterID.
        (WebKit::DownloadClient::~DownloadClient): Remove the source for
        the delayed response notification if it hasn't been triggered.
        (WebKit::DownloadClient::didReceiveData): If response hasn't been
        handled yet, remove the source for the delayed response
        notification and handle the resource before start writing the data
        received to the output stream.
        (WebKit::DownloadClient::handleResponse): Call
        didReceiveResponse() with the delayed response.
        (WebKit::DownloadClient::handleResponseLaterCallback): Call
        handleResponse().
        (WebKit::DownloadClient::handleResponseLater): Schedule an idle
        callback to handle the response later, to make sure the download
        has been added to the downloads map.
        (WebKit::Download::startWithHandle): Call handleResponseLater()
        with the given response to handle the response when the download
        has been added to the downloads map.

2012-10-05  Jongseok Yang  <js45.yang@samsung.com>

        [EFL][WK2] Remove "web" word from ewk_web_error APIs
        https://bugs.webkit.org/show_bug.cgi?id=97886

        Reviewed by Gyuyoung Kim.

        Remove "web" word from ewk_web_error APIs.
        "web" word was redundant because "ewk" means "EFL WebKit" and WK APIs for error does not have "web" word.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context_download_client.cpp:
        (didFail):
        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (getAcceptPolicyCallback):
        (getHostnamesWithCookiesCallback):
        * UIProcess/API/efl/ewk_cookie_manager.h:
        * UIProcess/API/efl/ewk_download_job_private.h:
        * UIProcess/API/efl/ewk_error.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error.cpp.
        (_Ewk_Error):
        (_Ewk_Error::_Ewk_Error):
        (_Ewk_Error::~_Ewk_Error):
        (ewk_error_free):
        (ewk_error_type_get):
        (ewk_error_url_get):
        (ewk_error_code_get):
        (ewk_error_description_get):
        (ewk_error_cancellation_get):
        (ewk_error_new):
        * UIProcess/API/efl/ewk_error.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error.h.
        * UIProcess/API/efl/ewk_error_private.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_error_private.h.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_resource_load_failed):
        (ewk_view_download_job_failed):
        (ewk_view_load_error):
        (ewk_view_load_provisional_failed):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didFailLoadWithErrorForFrame):
        (didFailProvisionalLoadWithErrorForFrame):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didFailLoadForResource):
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
        (getAcceptPolicyCallback):
        (getHostnamesWithCookiesCallback):
        * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
        (on_download_failed):

2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [WK2][GTK] WebPageAccessibilityObject leaking
        https://bugs.webkit.org/show_bug.cgi?id=98502

        Reviewed by Carlos Garcia Campos.

        Use GRefPtr on the accessibility object to fix the leak.

        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
        (WebKit::WebPage::platformInitialize):
        (WebKit::WebPage::updateAccessibilityTree):

2012-10-05  Jinwoo Song  <jinwoo7.song@samsung.com>

        [EFL][WK2] Add API to count the matching text
        https://bugs.webkit.org/show_bug.cgi?id=97873

        Reviewed by Gyuyoung Kim.

        Add an API, ewk_view_text_matches_count(), to count the matched text in the document.
        This API does not highlight the matched text in the document unlike ewk_view_text_find().

        ewk_view_text_find() finds the matching text and but also update the UI view,
        but some applications may not want to affect the view, and just want to know the count.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_text_matches_count):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-10-05  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>

        [WK2][GTK][EFL] standard_output returned by g_spawn_sync must be freed
        https://bugs.webkit.org/show_bug.cgi?id=98384

        Reviewed by Gyuyoung Kim.

        Free the standard_output returned by g_spawn_sync() to avoid
        a memory leak.

        * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
        (WebKit::PluginProcessProxy::scanPlugin):

2012-10-05  Jongseok Yang  <js45.yang@samsung.com>

        [EFL][WK2] Remove "web" word from ewk_resource APIs
        https://bugs.webkit.org/show_bug.cgi?id=97887

        Reviewed by Gyuyoung Kim.

        Remove "web" word from ewk_web_resource APIs.
        "web" word was redundant because "ewk" means "EFL WebKit" and enough to understand the meaning with ewk_resource_XXX.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_resource.cpp: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource.cpp.
        (_Ewk_Resource):
        (_Ewk_Resource::_Ewk_Resource):
        (_Ewk_Resource::~_Ewk_Resource):
        (ewk_resource_ref):
        (ewk_resource_unref):
        (ewk_resource_url_get):
        (ewk_resource_new):
        (ewk_resource_main_resource_get):
        * UIProcess/API/efl/ewk_resource.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource.h.
        * UIProcess/API/efl/ewk_resource_private.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_web_resource_private.h.
        * UIProcess/API/efl/ewk_view.cpp:
        (_ewk_view_priv_loading_resources_clear):
        (ewk_view_resource_load_initiated):
        (ewk_view_resource_load_response):
        (ewk_view_resource_load_failed):
        (ewk_view_resource_load_finished):
        (ewk_view_resource_request_sent):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didInitiateLoadForResource):

2012-10-04  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] ewk_web_error_free is not a public API
        https://bugs.webkit.org/show_bug.cgi?id=98482

        Reviewed by Gyuyoung Kim.

        Because Ewk_Web_Error is just passed as a parameter of callback function
        and maintained internally, ewk_web_error_free should not be a public API.

        This patch moves ewk_web_error_free from public header to private header.

        * UIProcess/API/efl/ewk_context_download_client.cpp:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        * UIProcess/API/efl/ewk_web_error.cpp:
        * UIProcess/API/efl/ewk_web_error.h:
        * UIProcess/API/efl/ewk_web_error_private.h:

2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement window frame callbacks in UIClient
        https://bugs.webkit.org/show_bug.cgi?id=98280

        Reviewed by Kenneth Rohde Christiansen.

        Implement callbacks to set and query window geometry
        in EwkView's UIClient.

        * UIProcess/API/efl/ewk_view_ui_client.cpp:
        (getWindowFrame):
        (setWindowFrame):
        (ewk_view_ui_client_attach):
        * UIProcess/API/efl/tests/resources/window_move_resize.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (windowMoveResizeTimedOut):
        (TEST_F): Add corresponding unit test.

2012-10-04  Rik Cabanier  <cabanier@adobe.com>

        Turn Compositing on by default in WebKit build
        https://bugs.webkit.org/show_bug.cgi?id=98315

        Reviewed by Simon Fraser.

        enable -webkit-blend-mode on trunk.

        * Configurations/FeatureDefines.xcconfig:

2012-10-04  Simon Fraser  <simon.fraser@apple.com>

        Fix the Qt build by removing an errant paste at the top of the file.

        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

2012-10-04  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Add APIs to get/set the frame flattening.
        https://bugs.webkit.org/show_bug.cgi?id=95982

        Reviewed by Gyuyoung Kim.

        Added new APIs and test case to support frame flattening.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_enable_frame_flattening_set):
        (ewk_settings_enable_frame_flattening_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/resources/frame_flattening_test.html: Added.
        * UIProcess/API/efl/tests/resources/frame_flattening_test_subframe.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F):

2012-10-04  Simon Fraser  <simon.fraser@apple.com>

        TiledCoreAnimationDrawingArea.mm should not include RenderLayerCompositor.h
        https://bugs.webkit.org/show_bug.cgi?id=98471

        Reviewed by Dean Jackson.

        Remove #import of <WebCore/RenderLayerCompositor.h> from this file.
        It is not required.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

2012-10-04  Simon Fraser  <simon.fraser@apple.com>

        Final part of "sync" to "flush" renaming
        https://bugs.webkit.org/show_bug.cgi?id=98430

        Reviewed by Tim Horton.

        Change method names on GraphicsLayer and GraphicsLayerClient that
        refer to "sync" to use the term "flush" instead, to be consistent
        with the rest of the code.

        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::paintToCurrentGLContext):
        (WebKit::LayerTreeRenderer::flushLayerChanges):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (WebKit::LayerTreeRenderer::notifyFlushRequired):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::didChangeLayerState):
        (WebCore::CoordinatedGraphicsLayer::didChangeAnimatedProperties):
        (WebCore::CoordinatedGraphicsLayer::didChangeChildren):
        (WebCore::CoordinatedGraphicsLayer::didChangeFilters):
        (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
        (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingState):
        (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
        (WebKit::LayerTreeCoordinator::notifyFlushRequired):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
        (WebKit::LayerTreeHostCA::notifyFlushRequired):
        (WebKit::LayerTreeHostCA::flushPendingLayerChanges):
        * WebProcess/WebPage/ca/LayerTreeHostCA.h:
        (LayerTreeHostCA):
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
        (WebKit::LayerTreeHostGtk::notifyFlushRequired):
        (WebKit::LayerTreeHostGtk::flushPendingLayerChanges):
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
        (LayerTreeHostGtk):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
        (TiledCoreAnimationDrawingArea):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::notifyFlushRequired):
        (WebKit::TiledCoreAnimationDrawingArea::flushLayers):

2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement PageClientImpl::isViewVisible()
        https://bugs.webkit.org/show_bug.cgi?id=98249

        Reviewed by Kenneth Rohde Christiansen.

        Implement PageClientImpl::isViewVisible() for EFL port
        by calling evas_object_visible_get() on the view.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::isViewVisible):

2012-10-04  Alexey Proskuryakov  <ap@apple.com>

        Improve initial empty process tracking
        https://bugs.webkit.org/show_bug.cgi?id=98458

        Reviewed by Sam Weinig.

        * UIProcess/WebContext.cpp: (WebKit::WebContext::disconnectProcess):
        Unset m_haveInitialEmptyProcess if we no longer do.

2012-10-03  Benjamin Poulain  <bpoulain@apple.com>

        [WK2] Support all attributes of GeolocationPosition
        https://bugs.webkit.org/show_bug.cgi?id=98212

        Reviewed by Sam Weinig.

        Add complete support for GeolocationPosition.

        * Shared/WebGeolocationPosition.cpp:
        (WebKit::WebGeolocationPosition::WebGeolocationPosition):
        (WebKit::WebGeolocationPosition::Data::encode):
        (WebKit::WebGeolocationPosition::Data::decode):
        * Shared/WebGeolocationPosition.h:
        (Data):
        (WebKit::WebGeolocationPosition::create):
        (WebKit::WebGeolocationPosition::canProvideAltitude):
        (WebKit::WebGeolocationPosition::altitude):
        (WebGeolocationPosition):
        (WebKit::WebGeolocationPosition::canProvideAltitudeAccuracy):
        (WebKit::WebGeolocationPosition::altitudeAccuracy):
        (WebKit::WebGeolocationPosition::canProvideHeading):
        (WebKit::WebGeolocationPosition::heading):
        (WebKit::WebGeolocationPosition::canProvideSpeed):
        (WebKit::WebGeolocationPosition::speed):
        WebGeolocationPosition mirror the attributes of WebCore::GeolocationPosition.

        * UIProcess/API/C/WKGeolocationPosition.cpp:
        (WKGeolocationPositionCreate):
        (WKGeolocationPositionCreate_b):
        Add a new API exposing all the arguments.

        * UIProcess/API/C/WKGeolocationPosition.h:
        * WebProcess/Geolocation/WebGeolocationManager.cpp:
        (WebKit::WebGeolocationManager::didChangePosition):

2012-10-04  Simon Fraser  <simon.fraser@apple.com>

        Standardize on "flush" terminology for compositing layer flushing/syncing
        https://bugs.webkit.org/show_bug.cgi?id=98321

        Reviewed by Simon Fraser.

        Rename compositing-related methods that refer to "syncing" to instead
        refer to "flushing".

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::scheduleCompositingLayerFlush):
        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebChromeClient):
        * WebProcess/WebPage/DrawingArea.h:
        (DrawingArea):
        * WebProcess/WebPage/DrawingAreaImpl.cpp:
        (WebKit::DrawingAreaImpl::scheduleCompositingLayerFlush):
        * WebProcess/WebPage/DrawingAreaImpl.h:
        (DrawingAreaImpl):
        * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
        (WebKit::LayerTreeHostCA::flushPendingLayerChanges):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
        (TiledCoreAnimationDrawingArea):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::scheduleCompositingLayerFlush):
        (WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):
        (WebKit::TiledCoreAnimationDrawingArea::didUninstallPageOverlay):
        (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayNeedsDisplay):
        (WebKit::TiledCoreAnimationDrawingArea::flushLayers):

2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add setting to allow file access from file:// URLs
        https://bugs.webkit.org/show_bug.cgi?id=98121

        Reviewed by Laszlo Gombos.

        Add Ewk setting to set / query permission to access
        files from file:// URLs.

        * UIProcess/API/efl/ewk_settings.cpp:
        (ewk_settings_file_access_from_file_urls_allowed_set):
        (ewk_settings_file_access_from_file_urls_allowed_get):
        * UIProcess/API/efl/ewk_settings.h:
        * UIProcess/API/efl/tests/resources/local_file_access.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
        (TEST_F): Add unit tests for new ewk setting.

2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Run unit tests with Xvfb
        https://bugs.webkit.org/show_bug.cgi?id=98389

        Reviewed by Laszlo Gombos.

        * UIProcess/API/efl/ewk_main.cpp:
        (ewk_init): Call ecore_evas_shutdown() instead of
        edje_shutdown() when ecore_x_init() fails.
        (ewk_shutdown): Remove extra call to edje_shutdown().
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F): Temporarily disable fullscreen unit tests
        until we get them working with Xvfb.

2012-10-04  Balazs Kelemen  <kbalazs@webkit.org>

        Don't allow compositing to be disabled in forced compositing mode
        https://bugs.webkit.org/show_bug.cgi?id=98048

        Reviewed by Jocelyn Turcotte.

        Export Settings::setAcceleratedCompositingEnabled because it has been deinlined.

        * win/WebKit2.def:
        * win/WebKit2CFLite.def:

2012-10-04  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>

        [Qt] Fix the tst_QQuickWebView::scrollRequest auto test
        https://bugs.webkit.org/show_bug.cgi?id=98045

        Reviewed by Simon Hausmann.

        Relying on QQuickWebViewPrivate::setNeedsDisplay can cause a false positive
        emission of the loadVisuallyCommitted signal since this method is also
        called when a layer is deleted or when the root layer changes.

        Move the signal emission to QQuickWebViewPrivate::didRenderFrame which
        is called only after a DidRenderFrame message has been received from the
        web process.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::setNeedsDisplay):
        (QQuickWebViewPrivate::didRenderFrame):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit::QtPageClient::didRenderFrame):

2012-10-04  Christophe Dumez  <christophe.dumez@intel.com>

        Regression(r130363): Broke unit tests
        https://bugs.webkit.org/show_bug.cgi?id=98341

        Reviewed by Gyuyoung Kim.

        Fix WebKit2 EFL to use X11 as well.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::SetUp):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
        (EWK2UnitTest::EWK2UnitTestEnvironment::EWK2UnitTestEnvironment):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
        (EWK2UnitTestEnvironment):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp:
        (main):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (checkFullScreenProperty):

2012-10-03  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Enable use of X11 in DumpRenderTree / WebKitTestRunner
        https://bugs.webkit.org/show_bug.cgi?id=98231

        Reviewed by Gyuyoung Kim.

        Initialize ecore_x library in ewk_main instead of
        WebKitTestRunner since WebKit is using ecore_x
        not WebKitTestRunner itself.

        * UIProcess/API/efl/ewk_main.cpp:
        (ewk_init):
        (ewk_shutdown):

2012-10-03  Kangil Han  <kangil.han@samsung.com>

        Fix unused parameter compile warnings.
        https://bugs.webkit.org/show_bug.cgi?id=98243

        Reviewed by Alexey Proskuryakov.

        Fixed unused parameter compile warnings by removing parameter names, adding UNUSED_PARAM usage and commenting out.

        * PluginProcess/WebProcessConnection.cpp:
        (WebKit::WebProcessConnection::createPluginInternal):
        * PluginProcess/unix/PluginProcessUnix.cpp:
        (WebKit::PluginProcess::platformInitialize):
        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::getOwnPropertyNames):
        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        (WebKit::NPN_RequestRead):
        (WebKit::NPN_NewStream):
        (WebKit::NPN_Write):
        (WebKit::NPN_MemFlush):
        (WebKit::NPN_ReloadPlugins):
        (WebKit::NPN_GetJavaPeer):
        (WebKit::NPN_InvalidateRegion):
        (WebKit::NPN_ForceRedraw):
        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::contentsScaleFactorChanged):
        * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
        (WebKit::NetscapePlugin::platformPostInitializeWindowed):
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::contentsScaleFactorChanged):

2012-10-03  Anders Carlsson  <andersca@apple.com>

        Plugins are killed after 45 seconds if showing keychain "Allow/Deny" dialog
        https://bugs.webkit.org/show_bug.cgi?id=85138
        <rdar://problem/11406430>

        Reviewed by Andreas Kling.

        Remove the watchdog that would kill a plug-in if we've been waiting for a sync reply from it for more than 45 seconds.
        It's unlikely that someone is going to wait 45 seconds for Safari to recover from a plug-in hang, and the timeout is
        causing problems with plug-ins (see the bugzilla bug for more information).

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::Connection):
        (CoreIPC::Connection::waitForSyncReply):
        * Platform/CoreIPC/Connection.h:
        (Client):
        (Connection):
        * PluginProcess/PluginProcess.cpp:
        * PluginProcess/PluginProcess.h:
        (PluginProcess):
        * PluginProcess/WebProcessConnection.cpp:
        * PluginProcess/WebProcessConnection.h:
        (WebProcessConnection):
        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):
        * UIProcess/Plugins/PluginProcessManager.cpp:
        * UIProcess/Plugins/PluginProcessManager.h:
        (PluginProcessManager):
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        * UIProcess/Plugins/PluginProcessProxy.h:
        (PluginProcessProxy):
        * UIProcess/WebConnectionToWebProcess.cpp:
        * UIProcess/WebConnectionToWebProcess.h:
        (WebConnectionToWebProcess):
        * UIProcess/WebProcessProxy.cpp:
        * UIProcess/WebProcessProxy.h:
        (WebProcessProxy):
        * UIProcess/WebProcessProxy.messages.in:
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess):
        * WebProcess/Plugins/PluginProcessConnection.cpp:
        (WebKit::PluginProcessConnection::PluginProcessConnection):
        * WebProcess/Plugins/PluginProcessConnection.h:
        (PluginProcessConnection):
        * WebProcess/WebConnectionToUIProcess.cpp:
        * WebProcess/WebConnectionToUIProcess.h:
        (WebConnectionToUIProcess):
        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::runJavaScriptAlert):
        (WebKit::WebChromeClient::runJavaScriptConfirm):
        (WebKit::WebChromeClient::runJavaScriptPrompt):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::WebProcess):
        (WebKit::WebProcess::initializeWebProcess):
        * WebProcess/WebProcess.h:
        (WebProcess):

2012-10-03  Hugo Parente Lima  <hugo.lima@openbossa.org>

        [WK2] PageViewportController.cpp is supposed to be a generic WebKit2 file but only works with Qt port.
        https://bugs.webkit.org/show_bug.cgi?id=98186

        Reviewed by Noam Rosenthal.

        Remove the dependece of WebCore::FloatSize to QSize implicit conversion.

        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPagePrivate::updateSize):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::updateViewportSize):
        (QQuickWebViewFlickablePrivate::updateViewportSize):
        * UIProcess/PageViewportController.cpp:
        (WebKit::PageViewportController::didRenderFrame):
        (WebKit::PageViewportController::pageDidRequestScroll):
        (WebKit::PageViewportController::syncVisibleContents):
        (WebKit::PageViewportController::viewportSizeInContentsCoordinates):
        (WebKit):
        * UIProcess/PageViewportController.h:
        (PageViewportController):

2012-10-03  Anders Carlsson  <andersca@apple.com>

        Try to fix the Qt WebKit2 failures.

        * WebProcess/WebPage/DrawingAreaImpl.cpp:
        (WebKit::DrawingAreaImpl::DrawingAreaImpl):
        Always force compositing if USE(COORDINATED_GRAPHICS) is true.

2012-10-03  Anders Carlsson  <andersca@apple.com>

        Use the XPC service by default on newer systems
        https://bugs.webkit.org/show_bug.cgi?id=98297
        <rdar://problem/12424641>

        Reviewed by Sam Weinig.

        * UIProcess/mac/WebProcessProxyMac.mm:
        (WebKit::shouldUseXPC):
        Return false for older systems.

        (WebKit::WebProcessProxy::platformConnect):
        Call shouldUseXPC().

2012-10-02  Andy Estes  <aestes@apple.com>

        [WebKit2] Add the ability to send messages to the WebPageGroupProxy
        https://bugs.webkit.org/show_bug.cgi?id=98233

        Reviewed by Anders Carlsson.

        Add a WebPageGroupProxy.messages.in, implement a stub message receiver
        in WebPageGroupProxy, and teach WebProcess how to route messages to the
        appropriate WebPageGroupProxy.

        * CMakeLists.txt: Tell a build system about added files.
        * DerivedSources.make: Ditto.
        * DerivedSources.pri: Ditto.
        * GNUmakefile.list.am: Ditto.
        * WebKit2.xcodeproj/project.pbxproj: Ditto.
        * win/WebKit2.vcproj: Ditto.
        * Platform/CoreIPC/MessageID.h: Add MessageClassWebPageGroupProxy.
        * WebProcess/WebPage/WebPageGroupProxy.cpp:
        (WebKit::WebPageGroupProxy::didReceiveMessage): Stub out the method
        that will receive messages.
        (WebKit::WebPageGroupProxy::didReceiveWebPageGroupProxyMessage): Stub
        out a method that will exist in WebPageGroupProxyMessageReceiver.cpp
        once WebPageGroupProxy.messages.in contains messages.
        * WebProcess/WebPage/WebPageGroupProxy.h:
        * WebProcess/WebPage/WebPageGroupProxy.messages.in: Added.
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveMessage): Route messages to the
        WebPageGroupProxy matching destinationID if the message is of class
        MessageClassWebPageGroupProxy.

2012-10-02  Anders Carlsson  <andersca@apple.com>

        Change most GraphicsLayer::create calls to use the version that takes a GraphicsLayerFactory
        https://bugs.webkit.org/show_bug.cgi?id=98217

        Reviewed by Andreas Kling.

        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::createPageOverlayLayer):
        * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
        (WebKit::LayerTreeHostCA::initialize):
        (WebKit::LayerTreeHostCA::createPageOverlayLayer):
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
        (WebKit::LayerTreeHostGtk::initialize):
        (WebKit::LayerTreeHostGtk::createPageOverlayLayer):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):

2012-10-03  Alberto Garcia  <agarcia@igalia.com>

        [GTK] [WK2] Unused variable in webkitWebViewLoadChanged
        https://bugs.webkit.org/show_bug.cgi?id=98271

        Reviewed by Martin Robinson.

        Use the priv variable to directly access private attributes
        instead of dereferencing webView->priv all the time.
        Fixes -Wunused-variable.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewLoadChanged):

2012-10-03  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement focus/unfocus in UIClient
        https://bugs.webkit.org/show_bug.cgi?id=98253

        Reviewed by Gyuyoung Kim.

        Implement focus-related functionality in
        WebKitEFL's UIClient.

        * UIProcess/API/efl/ewk_view_ui_client.cpp:
        (focus):
        (unfocus):
        (takeFocus):
        (ewk_view_ui_client_attach):

2012-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] WebKitWebView doesn't emit notify:favicon when it changes in some cases in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=98153

        Reviewed by Martin Robinson.

        The main problem is that it relies on icon-ready signal to be
        emitted by the favicon database, but that signal is only emitted
        when the icon is loaded from the network or imported from the
        database, but not when the icon is already in memory. The way to
        detect if a web page doesn't have a favicon or it's unknown it's
        also incorrectly done and the wrong error is returned for pages
        not having a favicon.

        * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
        (GetFaviconSurfaceAsyncData): Add a GError field.
        (getIconSurfaceSynchronously): Add a GError parameter and fill it
        accordingly. Use imageForPageURL() instead of
        nativeImageForPageURL() because the latter always returns NULL for
        empty images, so it's not possible to know whether it's an empty
        image or not. If the image is empty is because the web page is
        known by the database and it doesn't have a favicon.
        (processPendingIconsForURI): Pass the data error to
        getIconSurfaceSynchronously(). Don't set the icon if the request
        has been cancelled.
        (webkitFaviconDatabaseGetFavicon): Pass NULL as error to
        getIconSurfaceSynchronously().
        (setErrorForAsyncResult): Fill also error for
        WEBKIT_FAVICON_DATABASE_ERROR_FAVICON_UNKNOWN.
        (webkit_favicon_database_get_favicon): If we get NULL as icon in
        the first place, check the error code returned by
        getIconSurfaceSynchronously() and return early if the page doesn't
        have a favicon. Remove the cancelled signal to avoid race
        conditions.
        (webkit_favicon_database_get_favicon_finish): Errors are processed
        before now, so simply propagate the error if any or return the
        favicon.
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (_WebKitWebViewPrivate): Keep a reference of the favicon.
        (webkitWebViewCancelFaviconRequest): Cancel any async operation to
        get the favicon.
        (webkitWebViewUpdateFavicon): Check if favicon has changed and
        save it emitting also notify::favicon signal.
        (iconReadyCallback): Only update the favicon if we don't have one
        already.
        (webkitWebViewFinalize): Call webkitWebViewCancelFaviconRequest().
        (getFaviconReadyCallback): Update the favicon.
        (webkitWebViewRequestFavicon): Request a new favicon.
        (webkitWebViewLoadChanged): Try to get the favicon when the load
        has been committed and the URI is the final one.
        (webkit_web_view_get_favicon): Return the cached favicon.
        * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
        (serverCallback):
        (testSetDirectory):
        (testGetFavicon):
        (testWebViewFavicon):

2012-10-02  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to get the web view that initiated a custom URI request to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=97895

        Reviewed by Martin Robinson.

        The message DidReceiveURIRequest is now sent to the page that
        initiated the request that forwards the mesassage to the
        WebSoupRequestManagerProxy.

        * UIProcess/API/C/soup/WKSoupRequestManager.h: Update
        didReceiveURIRequest callback to receive the initiating page ID.
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp:
        (didReceiveURIRequest): Update the callback API change.
        * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
        (didReceiveURIRequest): Pass the initiating page to the
        WebKitURISchemeRequest constructor.
        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
        (_WebKitURISchemeRequestPrivate): Keep a reference to the
        WebPageProxy that initiatesd the request.
        (webkitURISchemeRequestCreate): Save the initiating page.
        (webkit_uri_scheme_request_get_web_view): Return the view widget
        of the initiating WebPageProxy.
        * UIProcess/API/gtk/WebKitURISchemeRequest.h:
        * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::didReceiveURIRequest): Forward the request
        to the soup request manager proxy.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Add didReceiveURIRequest().
        * UIProcess/WebPageProxy.messages.in: Add DidReceiveURIRequest
        message.
        * UIProcess/soup/WebSoupRequestManagerClient.cpp:
        (WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
        Pass the inititing page to the client callback.
        * UIProcess/soup/WebSoupRequestManagerClient.h:
        (WebSoupRequestManagerClient):
        * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
        (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequest): Pass
        the inititing page to the client.
        * UIProcess/soup/WebSoupRequestManagerProxy.h:
        (WebSoupRequestManagerProxy):
        * UIProcess/soup/WebSoupRequestManagerProxy.messages.in: Remove
        DidReceiveURIRequest message.
        * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
        (WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
        Save the pageID of the WebFrame.
        (WebKit::WebFrameNetworkingContext::initiatingPageID): Return the
        inititing page ID.
        * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
        * WebProcess/soup/WebSoupRequestManager.cpp:
        (WebKit::WebSoupRequestManager::send): Send DidReceiveURIRequest
        message to the WebPage that initiated the request.

2012-10-02  Zan Dobersek  <zandobersek@gmail.com>

        Unreviewed build fix for the GTK port after r130207.
        Use proper file separators for new entries.

        * GNUmakefile.list.am:

2012-10-02  Joone Hur  <joone.hur@intel.com>

        Unreviewed, GTK+,Efl debug build fix after r130225.

        This patch allows to include the static xErrorString variable when LOG_DISABLED is 0.

        * PluginProcess/unix/PluginProcessMainUnix.cpp:
        (WebKit):

2012-10-02  Sam Weinig  <sam@webkit.org>

        Fix a typo and add some \n's to make Mark happy.

        Rubber-stamped by Mark "logging must be fast" Rowe.

        * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
        (WebKit::InjectedBundle::load):

2012-10-02  Sam Weinig  <sam@webkit.org>

        Add Objective-C API for the InjectedBundle
        https://bugs.webkit.org/show_bug.cgi?id=98222

        Reviewed by Anders Carlsson.

        Add skeleton of the Objective-C API for the InjectedBundle.

        * WebKit2.xcodeproj/project.pbxproj:
        Add new API files.

        * WebProcess/InjectedBundle/API/mac: Added.
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h: Added.
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm: Added.
        (-[WKWebProcessPlugIn _initWithPrincipalClassInstance:injectedBundle:]):
        Initialization method for the WKWebProcessPlugIn object. This object will act as the WKBundleRef
        object does in the C-SPI.
        (+[WKWebProcessPlugIn _shared]):
        Access the shared instance.
        * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h: Added.

        * WebProcess/InjectedBundle/InjectedBundle.h:
        Store an NSBundle rather than a CFBundleRef as the platform bundle.

        * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp: Removed.
        * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm: Copied from Source/WebKit2/WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp.
        (WebKit::InjectedBundle::load):
        If a principal class is provided and no WKBundleInitialize function is present in the bundle, use the principal class
        as the initialization point. The principal class must conform to the WKWebProcessPlugIn protocol and if a
        webProcessPlugInInitialize: method is present, it is called. 

2012-10-02  Dan Bernstein  <mitz@apple.com>

        Fixed a crash when the localization option is not passed to the web process.

        Reviewed by Sam Weinig.

        * PluginProcess/mac/PluginProcessMainMac.mm:
        (WebKit::PluginProcessMain): Changed to not call WKSetDefaultLocalization
        with the empty string.
        * WebProcess/mac/WebProcessMainMac.mm:
        (WebKit::WebProcessMain): Ditto.

== Rolled over to ChangeLog-2012-10-02 ==
