2012-08-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [EFL][WK2] Add back forward list API
        https://bugs.webkit.org/show_bug.cgi?id=92345

        Reviewed by Kenneth Rohde Christiansen.

        Added new Back Forward list API to EFL WK2. Ewk_Back_Forward_List and
        Ewk_Back_Forward_List_Item structures were added. The new API is
        mostly the same as one from UIProcess/API/C/{ WKBackForwardList.h, WKBackForwardListItem.h }.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_back_forward_list.cpp: Added.
        (_Ewk_Back_Forward_List):
        (_Ewk_Back_Forward_List::_Ewk_Back_Forward_List):
        (getOrCreateItem):
        (webkit_back_forward_list_current_item_get):
        (webkit_back_forward_list_back_item_get):
        (webkit_back_forward_list_forward_item_get):
        (webkit_back_forward_list_item_at_index_get):
        (webkit_back_forward_list_length_get):
        (ewk_back_forward_list_changed):
        (ewk_back_forward_list_new):
        (ewk_back_forward_list_free):
        * UIProcess/API/efl/ewk_back_forward_list.h: Added.
        * UIProcess/API/efl/ewk_back_forward_list_item.cpp: Added.
        (getItemProperty):
        (_Ewk_Back_Forward_List_Item):
        (_Ewk_Back_Forward_List_Item::_Ewk_Back_Forward_List_Item):
        (_Ewk_Back_Forward_List_Item::~_Ewk_Back_Forward_List_Item):
        (ewk_back_forward_list_item_ref):
        (ewk_back_forward_list_item_unref):
        (ewk_back_forward_list_item_uri_get):
        (ewk_back_forward_list_item_title_get):
        (ewk_back_forward_list_item_original_uri_get):
        (ewk_back_forward_list_item_new):
        * UIProcess/API/efl/ewk_back_forward_list_item.h: Added.
        * UIProcess/API/efl/ewk_back_forward_list_item_private.h: Added.
        * UIProcess/API/efl/ewk_back_forward_list_private.h: Added.
        * 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_back_forward_list_get): New function to get back-forward list.
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didChangeBackForwardList): The callback added to update back-forward list items cache.
        (ewk_view_loader_client_attach):

2012-08-07  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        CUSTOM_SCHEME_HANDLER flag should depend on REGISTER_PROTOCOL_HANDLER
        https://bugs.webkit.org/show_bug.cgi?id=93081

        Reviewed by Adam Barth.

        CUSTOM_SCHEME_HANDLER #if guards are enclosed in the REGISTER_PROTOCOL_HANDLER guards.

        * WebProcess/WebCoreSupport/WebRegisterProtocolHandlerClient.h:
        (WebRegisterProtocolHandlerClient):

2012-08-07  Hyerim Bae  <hyerim.bae@samsung.com>

        [EFL][WK2] Add ewk_view_find_client.h / cpp for wrapping WKPageSetPageFindClient.
        https://bugs.webkit.org/show_bug.cgi?id=90927

        Reviewed by Kentaro Hara.

        Add ewk_view_find_client.h / files for wrapping WKPageSetPageFindClient,
        add didFindString callback member of WKPageSetPageFindClient.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_text_found):
        (ewk_view_text_find):
        (ewk_view_text_find_highlight_clear):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_find_client.cpp: Added.
        (toEwkView):
        (didFindString):
        (ewk_view_find_client_attach):
        * UIProcess/API/efl/ewk_view_find_client_private.h: Added.
        * UIProcess/API/efl/ewk_view_private.h:

2012-08-06  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r124816.
        http://trac.webkit.org/changeset/124816
        https://bugs.webkit.org/show_bug.cgi?id=93311

        made some tests crash (Requested by noamr on #webkit).

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

2012-08-06  No'am Rosenthal  <noam.rosenthal@nokia.com>

        GraphicsLayerAnimation shouldn't use HashMap<String>
        https://bugs.webkit.org/show_bug.cgi?id=93284

        Reviewed by Kenneth Rohde Christiansen.

        Apply the changes to GraphicsLayerAnimation API.

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

2012-08-03  Brady Eidson  <beidson@apple.com>

        Out-of-process plug-ins should support asynchronous initialization
        <rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

        Reviewed by Anders Carlsson.

        If a plug-in has been deemed capable of asynchronous initialization when run out of process...
        ...then do that!

        Add flags to communicate that this plugin create is meant to create a plug-in already requested asynchronously and
        to include whether or not the initialize call should include an artificial delay (for testing):
        * PluginProcess/PluginCreationParameters.cpp:
        (WebKit::PluginCreationParameters::PluginCreationParameters):
        (WebKit::PluginCreationParameters::encode):
        (WebKit::PluginCreationParameters::decode):
        * PluginProcess/PluginCreationParameters.h:
        (PluginCreationParameters):

        Add a flag for the UI Process to tell the PluginProcess that it supports asynchronous initialization:
        * Shared/Plugins/PluginProcessCreationParameters.cpp:
        (WebKit::PluginProcessCreationParameters::PluginProcessCreationParameters):
        (WebKit::PluginProcessCreationParameters::encode):
        (WebKit::PluginProcessCreationParameters::decode):
        * Shared/Plugins/PluginProcessCreationParameters.h:
        (PluginProcessCreationParameters):

        Allow the UI Process to pass along whether the plug-on supports asynchronous initialization:
        * UIProcess/Plugins/PluginProcessProxy.cpp:
        (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
        (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
        * UIProcess/Plugins/PluginProcessProxy.h:
        (PluginProcessProxy):
        * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
        (WebKit::PluginProcessProxy::platformInitializePluginProcess):
        * UIProcess/WebProcessProxy.messages.in:

        Allow the Plugin Process to pass whether or not it supports asynchronous initialization, originally determined
        in the UI Process, along to the WebProcess:
        * PluginProcess/PluginProcess.cpp:
        (WebKit::PluginProcess::PluginProcess):
        (WebKit::PluginProcess::initializePluginProcess):
        (WebKit::PluginProcess::createWebProcessConnection):
        * PluginProcess/PluginProcess.h:
        (PluginProcess):
        * UIProcess/Plugins/PluginProcessProxy.messages.in:

        Add a flag so PluginProcessConnections remember whether or not they support asynchronous initialization:
        * WebProcess/Plugins/PluginProcessConnection.cpp:
        (WebKit::PluginProcessConnection::PluginProcessConnection):
        (WebKit::PluginProcessConnection::setSupportsAsynchronousPluginInitialization):
        (WebKit):
        * WebProcess/Plugins/PluginProcessConnection.h:
        (WebKit::PluginProcessConnection::create):
        (WebKit::PluginProcessConnection::supportsAsynchronousPluginInitialization):
        (PluginProcessConnection):

        Create PluginProcessConnections with the flag passed down from the PluginProcess about whether or not they
        support asynchronous initialization:
        * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
        (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):

        Responding to messages from the WebProcess, most of the heavy decision making in asynchronous initialization is here:
        * PluginProcess/WebProcessConnection.cpp:
        (WebKit::asynchronousInstanceIDsToIgnore): A set of instance IDs to *not* create asynchronously later because we know
          we no longer need to.
        (WebKit):
        (WebKit::WebProcessConnection::didReceiveMessage):
        (WebKit::WebProcessConnection::destroyPlugin): If the plug-in doesn't exist but is awaiting asynchronous creation, flag 
          this instance ID in the "asynchronous ignore set".
        (WebKit::WebProcessConnection::createPluginInternal): Renamed from createPlugin, actually does the plug-in creation.
        (WebKit::WebProcessConnection::createPlugin): Adds the instance ID to the "asynchronous ignore set" then calls createPluginInternal.
        (WebKit::WebProcessConnection::createPluginAsynchronously): If the instance ID is in the "asynchronous ignore set", remove it from the
          set and do nothing else. Otherwise, perform the initialization and then send the asynchronous result back to the WebProcess.
        * PluginProcess/WebProcessConnection.h:
        (WebProcessConnection):
        * PluginProcess/WebProcessConnection.messages.in:

        Add helpers for asynchronous initialization that all plug-in types must implement:
        * WebProcess/Plugins/Plugin.h:
        (Plugin):

        Add helpers for asynchronous initialization that plug-in controllers can override:
        * WebProcess/Plugins/PluginController.h:
        (PluginController):
        (WebKit::PluginController::asynchronousPluginInitializationEnabled):
        (WebKit::PluginController::asynchronousPluginInitializationEnabledForAllPlugins):
        (WebKit::PluginController::artificialPluginInitializationDelayEnabled):

        Give PluginProxys the ability to initialize either asynchronously or synchronously, and also the ability to synchronously
        wait for previously asynchronous initialization (in case their PluginScriptObject is required):
        * WebProcess/Plugins/PluginProxy.cpp:
        (WebKit::PluginProxy::PluginProxy):
        (WebKit::PluginProxy::initialize): Store the plugin creation parameters as a member, and decide whether to try synchronous
          or asynchronous initialization.
        (WebKit):
        (WebKit::PluginProxy::canInitializeAsynchronously): Answer based on preferences and what the PluginProcessConnection says
          that it supports.
        (WebKit::PluginProxy::waitForAsynchronousInitialization): Synchronously wait on initialization when asynchronous initialization
          was previously requested.
        (WebKit::PluginProxy::initializeSynchronously):
        (WebKit::PluginProxy::didCreatePlugin): Double-check that we're still expecting asynchronous initialization, then call
          through to didCreatePluginInternal.
        (WebKit::PluginProxy::didCreatePluginInternal): Handle completion of initialization (both synchronously and asynchronously)
        (WebKit::PluginProxy::didFailToCreatePlugin): Double-check that we're still expecting asynchronous initialization, then call
          through to didFailToCreatePluginInternal.
        (WebKit::PluginProxy::didFailToCreatePluginInternal): Handle failure to initialize (both synchronously and asynchronously)
        (WebKit::PluginProxy::destroy):
        * WebProcess/Plugins/PluginProxy.h:
        (WebKit):
        (WebKit::PluginProxy::isInitializingAsynchronously):
        (PluginProxy):
        * WebProcess/Plugins/PluginProxy.messages.in:

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::PluginView):
        (WebKit::PluginView::~PluginView): Always destroy the plug-in even if it hasn't been initialized yet, as it might be initializing
          right now.
        (WebKit::PluginView::initializePlugin): Don't handle the result of initialization immediately. Break that out in to two
          methods that will be called later.
        (WebKit):
        (WebKit::PluginView::didFailToInitializePlugin):
        (WebKit::PluginView::didInitializePlugin):
        (WebKit::PluginView::scriptObject): If we truly need the script object, then wait for a synchronous initialization of the plug-in.
        (WebKit::PluginView::asynchronousPluginInitializationEnabled):
        (WebKit::PluginView::asynchronousPluginInitializationEnabledForAllPlugins):
        (WebKit::PluginView::artificialPluginInitializationDelayEnabled):
        * WebProcess/Plugins/PluginView.h:
        (PluginView):

        These methods shouldn't be called in the PluginProcess, only in the WebProcess:
        * PluginProcess/PluginControllerProxy.cpp:
        (WebKit::PluginControllerProxy::didInitializePlugin):
        (WebKit):
        (WebKit::PluginControllerProxy::didFailToInitializePlugin):
        * PluginProcess/PluginControllerProxy.h:
        (PluginControllerProxy):

        NetscapePlugin is for in-process plug-ins:
        * WebProcess/Plugins/Netscape/NetscapePlugin.h:
        (NetscapePlugin):
        (WebKit::NetscapePlugin::waitForAsynchronousInitialization):
        (WebKit::NetscapePlugin::isInitializingAsynchronously):

        Built-in PDFView is currently only in-process:
        * WebProcess/Plugins/PDF/BuiltInPDFView.h:
        (BuiltInPDFView):
        (WebKit::BuiltInPDFView::waitForAsynchronousInitialization):
        (WebKit::BuiltInPDFView::isInitializingAsynchronously):

2012-08-06  Luciano Wolf  <luciano.wolf@openbossa.org>

        [Qt] Default sizes for input-text and text-area are different when running DRT/WTR
        https://bugs.webkit.org/show_bug.cgi?id=91990

        Reviewed by Kenneth Rohde Christiansen.

        WTR wasn't using the proper font types provided by testfonts directory.
        The same approach as DRT was applied and now it takes info from QFont to
        update the store variable.

        * UIProcess/qt/WebPreferencesQt.cpp:
        (WebKit::setStringValueIfInUserDefaults):
        (WebKit):
        (WebKit::WebPreferences::platformInitializeStore):

2012-08-06  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] Use GraphicsLayerAnimation in LayerTreeCoordinator
        https://bugs.webkit.org/show_bug.cgi?id=93147

        Reviewed by Kenneth Rohde Christiansen

        Allow controlling animations outside of WebCore. This is an intermediate step before moving
        to threaded animations.

        CoordinatedGraphicsLayer maintains the GraphicsLayerAnimation structures, and applies the
        animation interpolation at the right time, before syncing the rest of the layer info and
        the visible contents rect.

        This also allows sending shorter IPC messages for animated opacity/transform changes,
        without the rest of the layer info.

        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::setLayerAnimatedOpacity):
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::setLayerAnimatedTransform):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
        (WebKit::LayerTreeRenderer::setAnimatedOpacity):
        (WebKit):
        (WebKit::LayerTreeRenderer::setAnimatedTransform):
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
        (LayerTreeRenderer):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
        (WebCore::CoordinatedGraphicsLayer::didChangeAnimatedProperties):
        (WebCore):
        (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
        (WebCore::CoordinatedGraphicsLayer::syncLayerState):
        (WebCore::CoordinatedGraphicsLayer::syncAnimatedProperties):
        (WebCore::CoordinatedGraphicsLayer::syncCompositingStateForThisLayerOnly):
        (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
            account for the animated transform in the visible rect.

        (WebCore::CoordinatedGraphicsLayer::addAnimation):
        (WebCore::CoordinatedGraphicsLayer::pauseAnimation):
        (WebCore::CoordinatedGraphicsLayer::removeAnimation):
        (WebCore::CoordinatedGraphicsLayer::animationStartedTimerFired):
        (WebCore::CoordinatedGraphicsLayer::setAnimatedTransform):
        (WebCore::CoordinatedGraphicsLayer::setAnimatedOpacity):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
        (CoordinatedGraphicsLayerClient):
        (CoordinatedGraphicsLayer):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
        (WebKit):
        (WebKit::LayerTreeCoordinator::setLayerAnimatedOpacity):
        (WebKit::LayerTreeCoordinator::setLayerAnimatedTransform):
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-08-06  Anders Carlsson  <andersca@apple.com>

        If the Apple Java plug-in is blocked and no runtime is installed, don't load it
        https://bugs.webkit.org/show_bug.cgi?id=93289
        <rdar://problem/11730092>

        Reviewed by Dan Bernstein.

        If the Apple Java plug-in is blocked, but there's no Java runtime installed (or the Java plug-in is disabled),
        don't even include it in the plug-in info store.

        * UIProcess/Plugins/PluginInfoStore.cpp:
        (WebKit::PluginInfoStore::shouldBlockPlugin):
        Since this is static now, it shouldn't be const.

        * UIProcess/Plugins/PluginInfoStore.h:
        (PluginInfoStore):
        shouldBlockPlugin can be static.

        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        (WebKit::PluginInfoStore::shouldUsePlugin):
        Return false if the Apple Java plug-in is blocked but Java isn't installed or enabled.

        (WebKit::PluginInfoStore::shouldBlockPlugin):
        Since this is static now, it shouldn't be const.

2012-08-06  Mario Sanchez Prada  <msanchez@igalia.com>

        [WK2][GTK] Improvements for the new spell-checking API
        https://bugs.webkit.org/show_bug.cgi?id=93262

        Reviewed by Carlos Garcia Campos.

        Improve the way the new spell-checking API is implemented, by
        using better internal representations for data, documenting better
        the new functions and using better unit tests.

        * UIProcess/API/gtk/WebKitTextChecker.cpp:
        (WebKitTextChecker::getSpellCheckingLanguages): Just return the
        value previously cached when calling to the setter function.
        (WebKitTextChecker::setSpellCheckingLanguages): Update the text
        checker in WebCore and cache the value returned from it.
        * UIProcess/API/gtk/WebKitTextChecker.h:
        (WebKitTextChecker): Use a CString instead of an String to cache
        the list of spell checking languages. Update getter and setter.
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate): No need to cache the spell checking
        languages here anymore.
        (webkit_web_context_get_spell_checking_languages): Improve
        both implementation and documentation to be more consistent.
        (webkit_web_context_set_spell_checking_languages): Make
        'languages' a mandatory (non-NULL) parameter. Update documentation.
        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (testWebContextSpellChecker): Test even more situations.

2012-08-06  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] Remove workarounds from input event handling
        https://bugs.webkit.org/show_bug.cgi?id=93125

        Reviewed by Jocelyn Turcotte.

        Since input event propagation in Qt5 has been fixed we can remove
        the workarounds introduced to prevent the QML WebView from receiving
        input events targeting a child dialog.
        To do this the childMouseEventFilter function has to be changed to
        force touch and mouse events through the default propagation path.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::QQuickWebViewPrivate):
        (QQuickWebViewLegacyPrivate::initialize):
        (QQuickWebView::childMouseEventFilter):
        (QQuickWebView::touchEvent):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        (QQuickWebViewLegacyPrivate):
        * UIProcess/qt/QtDialogRunner.cpp:
        (WebKit::QtDialogRunner::run):
        * UIProcess/qt/WebColorChooserProxyQt.cpp:
        (WebKit::WebColorChooserProxyQt::createItem):
        (WebKit::WebColorChooserProxyQt::endChooser):
        * UIProcess/qt/WebPopupMenuProxyQt.cpp:
        (WebKit::WebPopupMenuProxyQt::showPopupMenu):
        (WebKit::WebPopupMenuProxyQt::hidePopupMenu):

2012-08-06  Mario Sanchez Prada  <msanchez@igalia.com>

        [WK2][GTK] Implement a new spell checker API for WebKit2GTK+
        https://bugs.webkit.org/show_bug.cgi?id=90268

        Reviewed by Martin Robinson.

        Add a simple spell checking API to WK2, allowing to enable/disable
        this feature and to define a list of languages associated to it.

        * GNUmakefile.am: Add flags to handle the SPELLCHECK feature.
        * GNUmakefile.list.am: Added new files

        Added new internal class that will act both as the implementation
        of TextCheckerClient and as the object WebKitWebContext will
        depend on to implement the newly added API.

        * UIProcess/API/gtk/WebKitTextChecker.cpp: Added.
        (toTextChecker):
        (continuousSpellCheckingEnabledCallback):
        (setContinuousSpellCheckingEnabledCallback):
        (checkSpellingOfStringCallback):
        (guessesForWordCallback):
        (learnWordCallback):
        (ignoreWordCallback):
        (WebKitTextChecker::~WebKitTextChecker):
        (WebKitTextChecker::create):
        (WebKitTextChecker::WebKitTextChecker):
        (WebKitTextChecker::checkSpellingOfString):
        (WebKitTextChecker::getGuessesForWord):
        (WebKitTextChecker::learnWord):
        (WebKitTextChecker::ignoreWord):
        (WebKitTextChecker::setSpellCheckingEnabled):
        (WebKitTextChecker::setSpellCheckingLanguages):
        * UIProcess/API/gtk/WebKitTextChecker.h: Added.
        (WebKitTextChecker):
        (WebKitTextChecker::isSpellCheckingEnabled):
        (WebKitTextChecker::getSpellCheckingLanguages):

        Added WKTextChecker to WebKitPrivate.h, needed in WebKitTextChecker.

        * UIProcess/API/gtk/WebKitPrivate.h:

        Add new API to WebKitWebContext to allow enabling/disabling this
        spell checking feature, and to set/get the list of languages used
        to decide which dictionaries will be consulted.

        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate):
        (createDefaultWebContext):
        (webkit_web_context_get_spell_checking_enabled): New API.
        (webkit_web_context_set_spell_checking_enabled): Ditto.
        (webkit_web_context_get_spell_checking_languages): Ditto.
        (webkit_web_context_set_spell_checking_languages): Ditto.
        * UIProcess/API/gtk/WebKitWebContext.h:

        New tests for checking the new API added to WebKitWebContext.

        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (testWebContextSpellChecker):
        (beforeAll):

        Update documentation with new sections and symbols.

        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:

2012-08-05  Benjamin Poulain  <bpoulain@apple.com>

        Assert in checkValidity() in hashtable.h from WebGeolocationManager::didFailToDeterminePosition() when fetching http://html5demos.com/geo
        https://bugs.webkit.org/show_bug.cgi?id=80386

        Reviewed by Alexey Proskuryakov.

        WebKit2's WebGeolocationManager was delivering events without accounting that each event
        can modify the list of page that need delivery.
        Any page can remove itself by invoking clearWatch() from the callback function. A page can also cause another
        page to be removed.

        This patch solves the issue by taking a copy of the list of page before delivery. Each page is
        referenced as it can be deleted during the delivery.

        Unfortunately, this cannot be tested due to missing features of WebKitTestRunner.

        * WebProcess/Geolocation/WebGeolocationManager.cpp:
        (WebKit::WebGeolocationManager::didChangePosition):
        (WebKit::WebGeolocationManager::didFailToDeterminePosition):

2012-08-04  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] UI_SIDE_COMPOSITING code has confusing names
        https://bugs.webkit.org/show_bug.cgi?id=93164

        Reviewed by Kenneth Rohde Christiansen.

        Renamed and consolidated code guarded under UI_SIDE_COMPOSITING, now under
        USE(COORDINATED_GRAPHICS) guard and CoordinatedGraphics folders.

        * CMakeLists.txt:
        * DerivedSources.pri:
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC):
        * Shared/WebCoreArgumentCoders.h:
        * Shared/WebLayerTreeInfo.cpp:
        * Shared/WebLayerTreeInfo.h:
        * Target.pri:
        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPage::updatePaintNode):
        * UIProcess/API/qt/raw/qrawwebview.cpp:
        (QRawWebView::paint):
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/texmap/LayerBackingStore.cpp.
        * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/texmap/LayerBackingStore.h.
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.cpp.
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.h.
        * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in: Renamed from Source/WebKit2/UIProcess/LayerTreeCoordinatorProxy.messages.in.
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp: Renamed from Source/WebKit2/UIProcess/WebLayerTreeRenderer.cpp.
        * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h: Renamed from Source/WebKit2/UIProcess/WebLayerTreeRenderer.h.
        * UIProcess/DrawingAreaProxy.cpp:
        (WebKit):
        * UIProcess/DrawingAreaProxy.h:
        (DrawingAreaProxy):
        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
        (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
        (WebKit):
        * UIProcess/DrawingAreaProxyImpl.h:
        (DrawingAreaProxyImpl):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::didReceiveMessage):
        * UIProcess/qt/QtWebPageSGNode.cpp:
        (WebKit::ContentsSGNode::ContentsSGNode):
        (WebKit::ContentsSGNode::layerTreeRenderer):
        (ContentsSGNode):
        (WebKit::QtWebPageSGNode::setRenderer):
        * UIProcess/qt/QtWebPageSGNode.h:
        (WebKit):
        (QtWebPageSGNode):
        * WebKit2.pri:
        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::scheduleAnimation):
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp.
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h.
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/TiledBackingStoreRemoteTile.cpp.
        * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h: Renamed from Source/WebKit2/WebProcess/WebPage/TiledBackingStoreRemoteTile.h.
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp.
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h.
        * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.messages.in.
        * WebProcess/WebPage/DrawingArea.h:
        (DrawingArea):
        * WebProcess/WebPage/DrawingAreaImpl.cpp:
        (WebKit):
        * WebProcess/WebPage/DrawingAreaImpl.h:
        (DrawingAreaImpl):
        * WebProcess/WebPage/LayerTreeHost.h:
        (LayerTreeHost):
        * WebProcess/WebPage/UpdateAtlas.cpp:
        * WebProcess/WebPage/UpdateAtlas.h:
        * WebProcess/qt/WebProcessMainQt.cpp:
        (WebKit::WebProcessMainQt):

2012-08-04  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Move WebIntentData from Shared to UIProcess
        https://bugs.webkit.org/show_bug.cgi?id=93175

        Reviewed by Kenneth Rohde Christiansen.

        Move WebIntentData from Shared to UIProcess to
        prepare for MessagePorts support in WK2.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/WebIntentData.cpp: Renamed from Source/WebKit2/Shared/WebIntentData.cpp.
        (WebKit):
        (WebKit::WebIntentData::WebIntentData):
        (WebKit::WebIntentData::data):
        (WebKit::WebIntentData::suggestions):
        (WebKit::WebIntentData::extra):
        (WebKit::WebIntentData::extras):
        * UIProcess/WebIntentData.h: Renamed from Source/WebKit2/Shared/WebIntentData.h.
        (WebKit):
        (WebIntentData):
        (WebKit::WebIntentData::create):
        (WebKit::WebIntentData::~WebIntentData):
        (WebKit::WebIntentData::action):
        (WebKit::WebIntentData::payloadType):
        (WebKit::WebIntentData::service):
        (WebKit::WebIntentData::store):
        (WebKit::WebIntentData::type):

2012-08-03  Anders Carlsson  <andersca@apple.com>

        Nothing happens when clicking on the unavailable plug-in button for a blocked plug-in
        https://bugs.webkit.org/show_bug.cgi?id=93161

        Reviewed by John Sullivan.

        Be more robust against values being added to the RenderEmbeddedObject::PluginUnavailabilityReason
        enumeration, and use a switch statement instead of blindly casting the type value to a WKPluginUnavailabilityReason.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::unavailablePluginButtonClicked):

2012-08-03  Brady Eidson  <beidson@apple.com>

        Small part of "Out-of-process plug-ins should support asynchronous initialization."
        <rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

        Unreviewed (build fix).

        * Shared/WebPreferencesStore.h:
        (WebKit): Include this file which has the declaration of the new pref.

2012-08-03  Brady Eidson  <beidson@apple.com>

        Small part of "Out-of-process plug-ins should support asynchronous initialization."
        <rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

        Reviewed by Anders Carlsson.

        -Add API-level preferences for forcing asynchronous initialization of all plug-ins (for testing).
        -Make sure "overridePreference" is hooked up properly for all needed preferences.

        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetAsynchronousPluginInitializationEnabledForAllPlugins):
        (WKPreferencesGetAsynchronousPluginInitializationEnabledForAllPlugins):
        * UIProcess/API/C/WKPreferencesPrivate.h:

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::updatePreferences):
        * WebProcess/WebPage/WebPage.h:
        (WebKit::WebPage::setAsynchronousPluginInitializationEnabled):
        (WebKit::WebPage::asynchronousPluginInitializationEnabledForAllPlugins):
        (WebKit::WebPage::setAsynchronousPluginInitializationEnabledForAllPlugins):
        (WebKit::WebPage::setArtificialPluginInitializationDelayEnabled):
        (WebPage):

2012-08-02  Jeffrey Pfau  <jpfau@apple.com>

        Add API for enabling blanket third-party data blocking
        https://bugs.webkit.org/show_bug.cgi?id=93022

        Reviewed by Anders Carlsson.

        Added API for enabling third-party storage blocking.

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

2012-08-03  Hugo Parente Lima  <hugo.lima@openbossa.org>

        [Qt][WK2] There's no way to test the gesture tap on WTR
        https://bugs.webkit.org/show_bug.cgi?id=92895

        Reviewed by Kenneth Rohde Christiansen.

        Add an instance of QtViewportHandler to QQuickWebViewPrivate, so it's
        now available on mobile and desktop modes, as a side effect gesture tap
        events can now be created and sent to WebCore.

        This is needed to test tap gestures and to get tap gestures working
        when you have a WebView (in desktop mode) on notebooks equipped with
        touch screens.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::onComponentComplete):
        (QQuickWebViewFlickablePrivate::onComponentComplete): Implementation
        moved to QQuickWebViewPrivate::onComponentComplete.
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        (QQuickWebViewFlickablePrivate):

2012-08-02  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Move some WebContext messages to WebProcessProxy
        https://bugs.webkit.org/show_bug.cgi?id=93046

        Reviewed by Anders Carlsson.

        * UIProcess/WebContext.cpp: (WebKit::WebContext::didReceiveSyncMessage): Unrelated
        fix - use actual process argument instead of second-guessing where the message came
        from.

        * UIProcess/WebContext.h: (WebKit::WebContext::historyClient): Expose history client,
        since WebProcessProxy now needs it.

        * UIProcess/WebContext.messages.in:
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didNavigateWithNavigationData):
        (WebKit::WebProcessProxy::didPerformClientRedirect):
        (WebKit::WebProcessProxy::didPerformServerRedirect):
        (WebKit::WebProcessProxy::didUpdateHistoryTitle):
        * UIProcess/WebProcessProxy.h:
        * UIProcess/WebProcessProxy.messages.in:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::updateGlobalHistory):
        (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
        (WebKit::WebFrameLoaderClient::setTitle):
        Move the messages.

2012-08-03  Balazs Kelemen  <kbalazs@webkit.org>

        Unreviewed, rolling out r124603.
        http://trac.webkit.org/changeset/124603
        https://bugs.webkit.org/show_bug.cgi?id=93077

        Made a few tests crash under
        LayerTreeCoordinator::flushPendingLayerChanges

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::forceRepaint):
        (WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-08-03  Mario Sanchez Prada  <msanchez@igalia.com>

        Unreviewed build fix for GTK after r124479.

        * UIProcess/WebInspectorProxy.cpp:
        (WebKit): Moved static const definitions from header file.
        * UIProcess/WebInspectorProxy.h:
        (WebInspectorProxy): Don't give values to static const members
        here.

2012-08-03  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] LayerTreeCoordinator can disallow tile updates in forceRepaint
        https://bugs.webkit.org/show_bug.cgi?id=93077

        Reviewed by Jocelyn Turcotte.

        Force tile updates when doing a forced repaint.

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::forceRepaint):
        (WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-08-02  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Inspector should set a default attached height before being attached
        https://bugs.webkit.org/show_bug.cgi?id=90767

        Reviewed by Xan Lopez.

        We are currently using the minimum attached height in
        WebKitWebViewBase as the default height for the inspector when
        attached. It would be easier for WebKitWebViewBase and embedders
        implementing attach() if the inspector already had an attached
        height set when it's being attached.

        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (webkitWebViewBaseContainerAdd): Don't initialize
        inspectorViewHeight.
        (webkitWebViewBaseSetInspectorViewHeight): Allow to set the
        inspector view height before having an inpector view, but only
        queue a resize when the view already has an inspector view.
        * UIProcess/API/gtk/tests/TestInspector.cpp:
        (testInspectorDefault):
        (testInspectorManualAttachDetach):
        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
        (WebKit::WebInspectorProxy::platformAttach): Set the default
        attached height before attach the inspector view.

2012-08-02  Dinu Jacob  <dinu.jacob@nokia.com>

        WebKitTestRunner needs layoutTestController.setUserStyleSheetEnabled
        https://bugs.webkit.org/show_bug.cgi?id=42679

        Reviewed by Eric Seidel.

        Added WKBundleSetUserStyleSheetLocation API.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetUserStyleSheetLocation): Added.
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetUserStyleSheetLocation.
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setUserStyleSheetLocation): Added. Sets the user style sheet location
        for all pages in the page group.
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-08-02  Lauro Neto  <lauro.neto@openbossa.org>

        [Qt] Fix axis locking when panning on N9
        https://bugs.webkit.org/show_bug.cgi?id=92394

        Reviewed by Simon Hausmann.

        Make the QQuickWebView axis locker calculate the
        time between events using QInputEvent.timestamp, which
        is set from the native event when available.

        Also use touchPoint.pos() instead of screenPos() to
        correct the axis detection when running on N9, which
        has a native landscape display and the applications usually
        run in portrait mode.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::FlickableAxisLocker::FlickableAxisLocker):
        (QQuickWebViewPrivate::FlickableAxisLocker::touchVelocity):
        (QQuickWebViewPrivate::FlickableAxisLocker::update):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (FlickableAxisLocker):

2012-08-02  Hyerim Bae  <hyerim.bae@samsung.com>

        [EFL][WK2]Add ewk_view_ui_client.
        https://bugs.webkit.org/show_bug.cgi?id=89864

        Reviewed by Kentaro Hara.

        Add ewk_view_ui_client.h / cpp files for wrapping WKPageSetPageUIClient,
        add close, createNewPage callback member to WKPageSetPageUIClient.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_page_close):
        (ewk_view_page_create):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_ui_client.cpp: Added.
        (toEwkView):
        (closePage):
        (createNewPage):
        (ewk_view_ui_client_attach):
        * UIProcess/API/efl/ewk_view_ui_client_private.h: Added.

2012-08-02  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] No main resource in WebView on load committed when page has been loaded from history cache
        https://bugs.webkit.org/show_bug.cgi?id=91482

        Reviewed by Martin Robinson.

        We assume that on load committed, we already have a main resource
        in the web view, and it has already received a response. This is
        not true for pages loaded from the history cache, so when going
        back/forward, we don't have a main resource when the
        load-committed signal is emitted. We must ensure that the loading
        process documented in the API is the same for pages loaded from
        the history cache too.

        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (didCommitLoadForFrame): Call webkitWebViewLoadChanged() and let
        the web view handle the certificate.
        * UIProcess/API/gtk/WebKitWebResource.cpp:
        (webkitWebResourceGetFrame): Helper private function to easily get
        the WKFrame associated with a WebResource.
        * UIProcess/API/gtk/WebKitWebResourcePrivate.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewDisconnectMainResourceResponseChangedSignalHandler):
        Disconnect the notify::response signal of the main resource.
        (webkitWebViewFinalize): Call
        webkitWebViewDisconnectMainResourceResponseChangedSignalHandler().
        (setCertificateToMainResource): Set the TLS certificate on the
        response of the main resource.
        (webkitWebViewEmitLoadChanged): Helper function to emit
        load-chancged signal.
        (webkitWebViewEmitDelayedLoadEvents): If we were waiting for the
        main resource, emit the signals that were delayed.
        (webkitWebViewLoadChanged): Do not emit committed or finished if
        we are still waiting for the main resource. Set the TLS
        certificate if we already have a main resource or wait until we
        have the main resource with a response.
        (mainResourceResponseChangedCallback): Emitted when the main
        resource received the response. Set the certificate on the
        response and emit load signals delayed.
        (waitForMainResourceResponseIfWaitingForResource): If we are
        waiting for the main resource, connect to the notify::response
        signal of the WebResource to make sure it has a response already
        when load signal delayed are emitted.
        (webkitWebViewResourceLoadStarted): Call
        waitForMainResourceResponseIfWaitingForResource().
        * UIProcess/API/gtk/tests/LoadTrackingTest.cpp:
        (loadChangedCallback):
        (LoadTrackingTest::goBack):
        (LoadTrackingTest::goForward):
        * UIProcess/API/gtk/tests/LoadTrackingTest.h:
        (LoadTrackingTest):
        * UIProcess/API/gtk/tests/TestLoaderClient.cpp:
        (testWebViewHistoryLoad):
        (serverCallback):
        (beforeAll):

2012-08-02  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] Click, mouse and links rely on touch mocking.
        https://bugs.webkit.org/show_bug.cgi?id=83091

        Reviewed by Simon Hausmann.

        Send the incoming mouse events directly to the gesture recognizers to make
        the WebView behave consistent with other Flickables.
        This patch unifies the code paths for input events and makes it possible
        to enable mouse events on the flickable web view again, thus makes the
        mobile-version of QQuickWebView usable on desktop.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::handleMouseEvent):
        (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
        (QQuickWebViewFlickablePrivate::handleMouseEvent):
        (QQuickWebView::mousePressEvent):
        (QQuickWebView::mouseMoveEvent):
        (QQuickWebView::mouseReleaseEvent):
        (QQuickWebView::mouseDoubleClickEvent):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/qt/QtPanGestureRecognizer.cpp:
        (WebKit::QtPanGestureRecognizer::update):
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
        (WebKit::QtWebPageEventHandler::handleInputEvent):
        (WebKit):
        (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
        * UIProcess/qt/QtWebPageEventHandler.h:
        (QtWebPageEventHandler):

2012-08-01  Brady Eidson  <beidson@apple.com>

        Small part of "Out-of-process plug-ins should support asynchronous initialization."
        <rdar://problem/10598594> and https://bugs.webkit.org/show_bug.cgi?id=92919

        Reviewed by Anders Carlsson.

        Add API-level preferences for:
        - Is asynchronous plug-in initialization enabled.
        - Is an artificial initialization delay (for testing purposes) enabled.

        * Shared/WebPreferencesStore.h:
        (WebKit):

        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetAsynchronousPluginInitializationEnabled):
        (WKPreferencesGetAsynchronousPluginInitializationEnabled):
        (WKPreferencesSetArtificialPluginInitializationDelayEnabled):
        (WKPreferencesGetArtificialPluginInitializationDelayEnabled):
        * UIProcess/API/C/WKPreferencesPrivate.h:

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::updatePreferences):
        * WebProcess/WebPage/WebPage.h:
        (WebKit::WebPage::asynchronousPluginInitializationEnabled):
        (WebKit::WebPage::artificialPluginInitializationDelayEnabled):
        (WebPage):

2012-08-01  Jian Li  <jianli@chromium.org>

        Add new CSS property "-webkit-widget-region" to expose dashboard region support for other port
        https://bugs.webkit.org/show_bug.cgi?id=90298

        Reviewed by Adam Barth.

        * Configurations/FeatureDefines.xcconfig: Add ENABLE_WIDGET_REGION define.

2012-08-01  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>

        [Qt][WK2] Race condition between first layout and viewport attributes initialization
        https://bugs.webkit.org/show_bug.cgi?id=92902

        Reviewed by Noam Rosenthal.

        Initializing m_rawAttributes from QtViewportHandler to avoid calculation of random
        scale factors on the first layout is triggered.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::QtViewportHandler):

2012-08-01  Zeno Albisser  <zeno@webkit.org>

        [Qt]REGRESSION(r123786): It made 3 fast/animation tests fail.
        https://bugs.webkit.org/show_bug.cgi?id=92490

        Make sure that scripted animations are also serviced when
        forceRepaint is being executed. As this is what is being used for
        running layout tests.
        Move servicing of scripted animations and layoutIfNeeded call
        into a separate function syncDisplayState.
        This function can then be called from forceRepaint as well as from
        performScheduledLayerFlush.

        Reviewed by Noam Rosenthal.

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::forceRepaint):
        (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
        (WebKit):
        (WebKit::LayerTreeCoordinator::syncDisplayState):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-08-01  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix GTK+ build with recent version of GTK+.

        Use g_threads_enter/leave instead of the wrapper macros. This
        gives a compile warning because they are now deprecated but at
        least it builds.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewRunAsModal): Fix enter/leave order.
        * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
        (WebKit::WebPopupMenuProxyGtk::showPopupMenu):

2012-07-31  Anders Carlsson  <andersca@apple.com>

        Prefer the Oracle Java plug-in over the Apple Java plug-in
        https://bugs.webkit.org/show_bug.cgi?id=92780

        Reviewed by Oliver Hunt.

        * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
        (WebKit::findPluginWithBundleIdentifier):
        Add a new helper for finding a plug-in with the given bundle identifier.

        (WebKit::checkForPreferredPlugin):
        Helper function for making sure that an old plug-in is never loaded if a new plug-in is found, and that the old plug-in
        is removed from the list of loaded plug-ins if the new plug-in is found.

        (WebKit::PluginInfoStore::shouldUsePlugin):
        Prefer the Oracle Java plug-in over the Apple Java plug-in.

2012-07-31  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Use an actual WebProcessProxy when decoding messages
        https://bugs.webkit.org/show_bug.cgi?id=92788

        Reviewed by Anders Carlsson.

        WebContextUserMessageDecoder gets process proxy from a WebContext object, but we
        know which process a message came from, and can just use that.

        * UIProcess/WebContextUserMessageCoders.h:
        (WebKit::WebContextUserMessageDecoder::WebContextUserMessageDecoder):
        (WebKit::WebContextUserMessageDecoder::decode):
        This is the focal point of this patch - decoder no longer needs to call m_context->process().

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        These methods now take a WebProcessProxy pointer instead of IPC::Connection,
        so that they can call the updated coder.
        A number of other didReceiveMessage can be modified to take WebProcessProxy later
        if needed (it's a richer interface than IPC::Connection), although not all messages
        come from WebProcesses.

        * UIProcess/WebConnectionToWebProcess.cpp:
        (WebKit::WebConnectionToWebProcess::didReceiveMessage):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::willGoToBackForwardListItem):
        (WebKit::WebPageProxy::registerIntentServiceForFrame):
        (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
        (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
        (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
        (WebKit::WebPageProxy::didCommitLoadForFrame):
        (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
        (WebKit::WebPageProxy::didFinishLoadForFrame):
        (WebKit::WebPageProxy::didFailLoadForFrame):
        (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
        (WebKit::WebPageProxy::didReceiveTitleForFrame):
        (WebKit::WebPageProxy::didFirstLayoutForFrame):
        (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
        (WebKit::WebPageProxy::didNewFirstVisuallyNonEmptyLayout):
        (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
        (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
        (WebKit::WebPageProxy::didRunInsecureContentForFrame):
        (WebKit::WebPageProxy::didDetectXSSForFrame):
        (WebKit::WebPageProxy::didReceiveIntentForFrame):
        (WebKit::WebPageProxy::decidePolicyForNavigationAction):
        (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
        (WebKit::WebPageProxy::decidePolicyForResponse):
        (WebKit::WebPageProxy::unableToImplementPolicy):
        (WebKit::WebPageProxy::willSubmitForm):
        (WebKit::WebPageProxy::mouseDidMoveOverElement):
        (WebKit::WebPageProxy::internalShowContextMenu):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        Updated arguments accordingly.

2012-07-31  Andras Becsi  <andras.becsi@nokia.com>

        [WK2] Visible content rect update with null trajectory vector does not reach the backing store
        https://bugs.webkit.org/show_bug.cgi?id=92750

        Reviewed by Jocelyn Turcotte.

        Make sure that notifications with a null trajectory vector reach the backing store
        since a null vector means that all tiles around the viewport were requested.

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::setVisibleContentsRect):

2012-07-31  Marcelo Lira  <marcelo.lira@openbossa.org>

        [Qt] Input method update should also include hints
        https://bugs.webkit.org/show_bug.cgi?id=92744

        Reviewed by Simon Hausmann.

        The QInputMethod is told to query for input method hints when updated.

        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::updateTextInputState):

2012-07-31  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>

        add Farstream flags/deps to WebKit, for WebRTC
        https://bugs.webkit.org/show_bug.cgi?id=87524

        Reviewed by Philippe Normand.

        Since Farstream will be used as the backend for GTK's WebRTC, this
        patch adds it as a dependency to the build system.

        * GNUmakefile.am:

2012-07-30  Huang Dongsung  <luxtella@company100.net>

        [Texmap] Remove the backing store after 'style.visibility' for an element sets 'hidden'.
        https://bugs.webkit.org/show_bug.cgi?id=92492

        Reviewed by Noam Rosenthal.

        Texmap handles visibility:hidden in this patch, so WebGraphicsLayer
        sends the LayerTreeCoordinatorProxyMessages with additional infomation
        to UIProcess.

        * Shared/WebLayerTreeInfo.h:
        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::setLayerState):
        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp:
        (WebCore::WebGraphicsLayer::setContentsVisible):
        (WebCore):
        (WebCore::WebGraphicsLayer::syncLayerState):
        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h:
        (WebGraphicsLayer):

2012-07-30  Sam Weinig  <sam@webkit.org>

        Add a proper umbrella header for the public WebKit2 API headers
        https://bugs.webkit.org/show_bug.cgi?id=92708
        <rdar://problem/11970825>

        Reviewed by Dan Bernstein.

        Create a new umbrella WebKit2.h and add the currently public (as decided by their 
        status in Xcode) Objective-C headers.

        * UIProcess/API/mac/WebKit2.h: Added.
        * WebKit2.xcodeproj/project.pbxproj:
        While we are here, make WebKit2_C.h a private header.

2012-07-30  Sam Weinig  <sam@webkit.org>

        Rename WebKit2.h to WebKit2_C.h
        https://bugs.webkit.org/show_bug.cgi?id=92704

        Reviewed by Dan Bernstein.

        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/C/WebKit2_C.h: Renamed from Source/WebKit2/UIProcess/API/C/WebKit2.h.
        * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
        * UIProcess/API/gtk/WebKitPolicyDecisionPrivate.h:
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitSettingsPrivate.h:
        * UIProcess/API/gtk/WebKitWebViewPrivate.h:
        * WebKit2.xcodeproj/project.pbxproj:
        * win/WebKit2.vcproj:
        * win/WebKit2Generated.make:
        Update for changed header file name.

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

        Add ability to load from a string to the ObjC WK API
        https://bugs.webkit.org/show_bug.cgi?id=92590

        Reviewed by Dan Bernstein.

        This adds an often used method to the new Objective-C API and will
        be helpful for writing API tests.

        * UIProcess/API/mac/WKBrowsingContextController.h:
        * UIProcess/API/mac/WKBrowsingContextController.mm:
        (-[WKBrowsingContextController loadHTMLString:baseURL:]):
        Implement via calling down to WKPageLoadHTMLString.

2012-07-30  Rafael Brandao  <rafael.lobo@openbossa.org>

        [WK2] Kill the concept of secondary shared process
        https://bugs.webkit.org/show_bug.cgi?id=92676

        Reviewed by Alexey Proskuryakov.

        Build fix after r124092.

        * UIProcess/qt/QtWebContext.cpp: Build fix for Qt. In exchange of the
        method removed, I've used WebContext::create(String()).

2012-07-30  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Kill the concept of secondary shared process
        https://bugs.webkit.org/show_bug.cgi?id=92676

        Reviewed by Sam Weinig.

        * UIProcess/API/C/WKContext.cpp:
        * UIProcess/API/C/WKContext.h:
        * UIProcess/WebContext.cpp:
        * UIProcess/WebContext.h:
        Deleted shared process related code. We don't need to build the singleton into
        the cross-platform C API, platform-specific API wrappers are perfectly capable
        of doing that.

        * UIProcess/API/efl/ewk_context.cpp: (createDefaultEwkContext):
        * UIProcess/API/gtk/WebKitWebContext.cpp: (createDefaultWebContext):
        Use WKContextCreate() when creating default context.

2012-07-30  Claudio Saavedra  <csaavedra@igalia.com>

        [GTK] critical warning: gdk_window_get_cursor() called on a NULL window
        https://bugs.webkit.org/show_bug.cgi?id=92651

        Reviewed by Martin Robinson.

        PageClientImpl::setCursor() might get called before the
        window is realized, so safeguard against it.

        * UIProcess/API/gtk/PageClientImpl.cpp:
        (WebKit::PageClientImpl::setCursor): early return if the window is
        not realized.

2012-07-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r123983.
        http://trac.webkit.org/changeset/123983
        https://bugs.webkit.org/show_bug.cgi?id=92663

        EFL build is broken when unit tests are enabled (Requested by
        paroga on #webkit).

        * CMakeLists.txt:
        * PlatformEfl.cmake:

2012-07-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r123966 and r123967.
        http://trac.webkit.org/changeset/123966
        http://trac.webkit.org/changeset/123967
        https://bugs.webkit.org/show_bug.cgi?id=92656

        This patch is causing assertion failures on the debug bot
        (also rolling out a dependent patch) (Requested by mrobinson
        on #webkit).

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitTextChecker.cpp: Removed.
        * UIProcess/API/gtk/WebKitTextChecker.h: Removed.
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate):
        (createDefaultWebContext):
        * UIProcess/API/gtk/WebKitWebContext.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (beforeAll):

2012-07-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Resource agent's reference to cached resources should be weak.
        https://bugs.webkit.org/show_bug.cgi?id=92108

        Reviewed by Pavel Feldman.

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

2012-07-30  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r124000.
        http://trac.webkit.org/changeset/124000
        https://bugs.webkit.org/show_bug.cgi?id=92632

        seems to have broken chromium Range_InstanceSizeUnknown unit
        test across many platforms (Requested by tomhudson on
        #webkit).

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

2012-07-27  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        [Qt] Remove accurateVisibleContentsPosition and use a FloatRect for visibleContentsRect instead
        https://bugs.webkit.org/show_bug.cgi?id=92536

        Reviewed by Noam Rosenthal.

        AccurateVisibleContentsPosition carries the same information as visibleContentsRect.location() and
        is needed for fixed layer position updates.
        This patch instead uses a FloatRect for the visible contents rect from the web view down to the
        LayerCoordinatorProxy, and converts it to an IntRect at this moment, before sending it to the
        web process.
        This also moves the check to prevent sending the same rect to the moment of the conversion
        in LayerTreeCoordinatorProxy to fix a bug where the fixed layer deltas wouldn't be updated
        unless the integer part of position components changed.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::updateViewportSize):
        * UIProcess/DrawingAreaProxy.h:
        (WebKit::DrawingAreaProxy::setVisibleContentsRect):
        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
        * UIProcess/DrawingAreaProxyImpl.h:
        (DrawingAreaProxyImpl):
        * UIProcess/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::LayerTreeCoordinatorProxy):
        (WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
        * UIProcess/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):
        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):
        (WebKit::WebLayerTreeRenderer::setVisibleContentsRect):
        (WebKit::WebLayerTreeRenderer::adjustPositionForFixedLayers):
        * UIProcess/WebLayerTreeRenderer.h:
        (WebLayerTreeRenderer):
        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::visibleContentsRect):
        (WebKit::QtViewportHandler::informVisibleContentChange):
        * UIProcess/qt/QtViewportHandler.h:
        (QtViewportHandler):

2012-07-27  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        [Qt] Fix issues remaining with fixed positioned layers
        https://bugs.webkit.org/show_bug.cgi?id=92528

        Reviewed by Noam Rosenthal.

        This partially fixes jittering of fixed layers when zoomed in and the
        blurriness of rendered tiles of the non-composited contents layer.

        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::boundedScrollPosition):
        (WebKit::WebLayerTreeRenderer::paintToCurrentGLContext):
        Remove the adjustment on the root layer. This cancels setPixelAligned and causes the blurriness.
        (WebKit::WebLayerTreeRenderer::adjustPositionForFixedLayers):
        Use m_accurateVisibleContentsPosition to calculate the delta.
        (WebKit::WebLayerTreeRenderer::didChangeScrollPosition):

2012-07-29  Vsevolod Vlasov  <vsevik@chromium.org>

        Web Inspector: Resource agent's reference to cached resources should be weak.
        https://bugs.webkit.org/show_bug.cgi?id=92108

        Reviewed by Pavel Feldman.

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

2012-07-29  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][EFL] TILED_BACKING_STORE support on Efl WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=91582

        Reviewed by Noam Rosenthal.

        This patch is a subset of Efl's UI_SIDE_COMPOSITING implementation.
        Add a dummy function for fixing building error when enabling TILED_BACKING_STORE.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit):
        (WebKit::PageClientImpl::pageDidRequestScroll):
        * UIProcess/API/efl/PageClientImpl.h:
        (PageClientImpl):
        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::contentsSizeChanged):

2012-07-29  Patrick Gansterer  <paroga@webkit.org>

        [CMake] Use WEBKIT_CREATE_FORWARDING_HEADERS to generate WK2 forwarding headers
        https://bugs.webkit.org/show_bug.cgi?id=83579

        Reviewed by Daniel Bates.

        Using a list of directories in combination with the WEBKIT_CREATE_FORWARDING_HEADERS
        macro allows us to share the common generation of forwarding headers across ports.

        * CMakeLists.txt:
        * PlatformEfl.cmake:

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

        Stop copying unnecessary files in WebKit2 build
        https://bugs.webkit.org/show_bug.cgi?id=92587

        Reviewed by Dan Bernstein.

        * WebKit2.xcodeproj/project.pbxproj:
        We were accidentally copying ColorSpaceData.h and EventDispatcher.messages.in into the
        build products. Stop this.

2012-07-28  Ryuan Choi  <ryuan.choi@samsung.com>

        [WK2][EFL] Add ewk_view_scale_{get|set} to EwkView.
        https://bugs.webkit.org/show_bug.cgi?id=92446

        Reviewed by Kenneth Rohde Christiansen.

        Add methods to Ewk_View to get or set the scale factor of page.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_scale_set):
        (ewk_view_scale_get):
        * UIProcess/API/efl/ewk_view.h:

2012-07-28  Mario Sanchez Prada  <msanchez@igalia.com>

        [WK2][GTK] Implement a new spell checker API for WebKit2GTK+
        https://bugs.webkit.org/show_bug.cgi?id=90268

        Reviewed by Martin Robinson.

        Add a simple spell checking API to WK2, allowing to enable/disable
        this feature and to define a list of languages associated to it.

        * GNUmakefile.am: Add flags to handle the SPELLCHECK feature.
        * GNUmakefile.list.am: Added new files

        Added new internal class that will act both as the implementation
        of TextCheckerClient and as the object WebKitWebContext will
        depend on to implement the newly added API.

        * UIProcess/API/gtk/WebKitTextChecker.cpp: Added.
        (toTextChecker):
        (continuousSpellCheckingEnabledCallback):
        (setContinuousSpellCheckingEnabledCallback):
        (checkSpellingOfStringCallback):
        (guessesForWordCallback):
        (learnWordCallback):
        (ignoreWordCallback):
        (WebKitTextChecker::~WebKitTextChecker):
        (WebKitTextChecker::create):
        (WebKitTextChecker::WebKitTextChecker):
        (WebKitTextChecker::checkSpellingOfString):
        (WebKitTextChecker::getGuessesForWord):
        (WebKitTextChecker::learnWord):
        (WebKitTextChecker::ignoreWord):
        (WebKitTextChecker::setSpellCheckingEnabled):
        (WebKitTextChecker::setSpellCheckingLanguages):
        * UIProcess/API/gtk/WebKitTextChecker.h: Added.
        (WebKitTextChecker):
        (WebKitTextChecker::isSpellCheckingEnabled):
        (WebKitTextChecker::getSpellCheckingLanguages):

        Added WKTextChecker to WebKitPrivate.h, needed in WebKitTextChecker.

        * UIProcess/API/gtk/WebKitPrivate.h:

        Add new API to WebKitWebContext to allow enabling/disabling this
        spell checking feature, and to set/get the list of languages used
        to decide which dictionaries will be consulted.

        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate):
        (createDefaultWebContext):
        (webkit_web_context_get_spell_checking_enabled): New API.
        (webkit_web_context_set_spell_checking_enabled): Ditto.
        (webkit_web_context_get_spell_checking_languages): Ditto.
        (webkit_web_context_set_spell_checking_languages): Ditto.
        * UIProcess/API/gtk/WebKitWebContext.h:

        New tests for checking the new API added to WebKitWebContext.

        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (testWebContextSpellChecker):
        (beforeAll):

        Update documentation with new sections and symbols.

        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Assertion hit in ewk_cookie_manager.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92544

        Reviewed by Kenneth Rohde Christiansen.

        Removed wrong assertion in ewk_cookie_manager.cpp
        and replace it by an if check. The assertion was
        sometimes hit by our unit tests.

        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        (cookiesDidChange):

2012-07-27  Anders Carlsson  <andersca@apple.com>

        Don't use an NSUserDefault for disabling the web process sandbox
        https://bugs.webkit.org/show_bug.cgi?id=92542
        <rdar://problem/11976060>

        Reviewed by Mark Rowe.

        The user default was really helpful during WebKit2 bringup, but we no longer need to pay the IPC cost of initializing NSUserDefaults at startup,
        so get rid of the preference and use a good old #ifdef instead.

        * WebProcess/mac/WebProcessMac.mm:
        (WebKit::initializeSandbox):

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][WTR] LayoutTestController.deliverWebIntent() needs to be implemented
        https://bugs.webkit.org/show_bug.cgi?id=92228

        Reviewed by Anders Carlsson.

        Add C API to create a WKIntentData and to deliver
        it to a frame. This is needed by WebKitTestRunner
        to implement LayoutTestController.deliverWebIntent().

        * UIProcess/API/C/WKIntentData.cpp:
        (WKIntentDataCreate):
        * UIProcess/API/C/WKIntentData.h:
        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
        (WKBundlePageDeliverIntentToFrame):
        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/WebPage/WebPage.h:
        (WebPage): Make deliverIntentToFrame() public so that it can
        be used by WKBundlePage.

2012-07-27  Anders Carlsson  <andersca@apple.com>

        Show the unavailable plug-in indicator for Java applets as well
        https://bugs.webkit.org/show_bug.cgi?id=92521

        Reviewed by Sam Weinig.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::unavailablePluginButtonClicked):
        This can now be called on applet elements as well.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
        Get the MIME type from the applet element.

2012-07-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [WK2] Fix build warning in WebEventConversion.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92517

        Reviewed by Darin Adler.

        There is a build warning related to comparison between signed and unsigned integer expressions.

        * Shared/WebEventConversion.cpp:
        (WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):

2012-07-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [WK2] Fix build warning in WebEventConversion.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92517

        Reviewed by Darin Adler.

        There is a build warning related to comparison between signed and unsigned integer expressions.

        * Shared/WebEventConversion.cpp:
        (WebKit::WebKit2PlatformTouchEvent::WebKit2PlatformTouchEvent):

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add download client for Ewk_Context
        https://bugs.webkit.org/show_bug.cgi?id=91345

        Reviewed by Kenneth Rohde Christiansen.

        Add download client for Ewk_Context so that
        information about downloads can be reported
        to the client application via Ewk_View signals.

        The client application needs to listen for
        "download,request" signal on the view and set
        the download path for the download in the
        callback in order to accept it. If the signal
        is ignored or if the download path is not set
        the download will fail.

        A new Ewk_Download_Job type is introduced to provide
        information relative to a download to the client
        and to allow the client to interact with it (e.g.
        set its download path, cancel it, ...).

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::handleDownloadRequest):
        (WebKit):
        * UIProcess/API/efl/PageClientImpl.h:
        (PageClientImpl):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (_Ewk_Context::_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: Added.
        (toEwkContext):
        (decideDestinationWithSuggestedFilename):
        (didReceiveResponse):
        (didCreateDestination):
        (didReceiveData):
        (didFail):
        (didCancel):
        (didFinish):
        (ewk_context_download_client_attach):
        * UIProcess/API/efl/ewk_context_download_client_private.h: Added.
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_download_job.cpp: Added.
        (_Ewk_Download_Job):
        (_Ewk_Download_Job::_Ewk_Download_Job):
        (_Ewk_Download_Job::~_Ewk_Download_Job):
        (ewk_download_job_ref):
        (ewk_download_job_unref):
        (ewk_download_job_id_get):
        (ewk_download_job_view_get):
        (ewk_download_job_state_get):
        (ewk_download_job_request_get):
        (ewk_download_job_response_get):
        (ewk_download_job_destination_get):
        (ewk_download_job_destination_set):
        (ewk_download_job_suggested_filename_get):
        (ewk_download_job_cancel):
        (ewk_download_job_estimated_progress_get):
        (ewk_download_job_elapsed_time_get):
        (ewk_download_job_response_set):
        (ewk_download_job_suggested_filename_set):
        (ewk_download_job_received_data):
        (ewk_download_job_state_set):
        (ewk_download_job_new):
        * UIProcess/API/efl/ewk_download_job.h: Added.
        * UIProcess/API/efl/ewk_download_job_private.h: Added.
        (WebKit):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (ewk_url_response_content_length_get): Add a function to
        retrieve the content length of a URL response.
        * UIProcess/API/efl/ewk_url_response.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_download_job_cancelled):
        (ewk_view_download_job_requested):
        (ewk_view_download_job_failed):
        (ewk_view_download_job_finished):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/tests/resources/test.pdf: Added.
        * UIProcess/API/efl/tests/test_ewk2_download_job.cpp: Added. This tests
        the download functionality.
        (DownloadTestData):
        (fileExists):
        (serverCallback):
        (on_download_requested):
        (on_download_cancelled):
        (on_download_failed):
        (on_download_finished):
        (TEST_F):
        * UIProcess/PageClient.h:
        (PageClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::receivedPolicyDecision):
        (WebKit):
        (WebKit::WebPageProxy::handleDownloadRequest):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):

2012-07-27  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][EFL] Add an ACCELERATED_COMPOSITING implementation for Efl WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=91581

        Reviewed by Noam Rosenthal.

        This patch is a subset of Efl's UI_SIDE_COMPOSITING implementation.
        When enter accelerated compositing mode, create evas_gl, evas_gl_context, and evas_gl_surface.

        * PlatformEfl.cmake:
        * Shared/LayerTreeContext.h:
        (LayerTreeContext):
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::viewSize):
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
        (ewk_view_size_get):
        (ewk_view_create_gl_surface):
        (ewk_view_enter_accelerated_compositing_mode):
        (ewk_view_exit_accelerated_compositing_mode):
        (_ewk_view_smart_calculate):
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add API to Ewk_Cookie_Manager to watch for cookie changes
        https://bugs.webkit.org/show_bug.cgi?id=92484

        Reviewed by Kenneth Rohde Christiansen.

        Add API tp Ewk_Cookie_Manager so that the client can watch
        for cookie changes.

        * UIProcess/API/efl/ewk_cookie_manager.cpp:
        * UIProcess/API/efl/ewk_cookie_manager.h:
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp: Add unit tests
        for cookie changes watching.

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Stop using C API to interact with the page in Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=92463

        Reviewed by Simon Hausmann.

        Stop using C API to interact with the PageProxy in Ewk_View
        and use the PageProxy object directly. This avoids useless
        converting to WK type using toAPI() all the time.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_uri_update):
        (ewk_view_uri_set):
        (ewk_view_reload):
        (ewk_view_reload_bypass_cache):
        (ewk_view_stop):
        (ewk_view_load_progress_get):
        (ewk_view_device_pixel_ratio_set):
        (ewk_view_theme_get):
        (ewk_view_cursor_set):
        (ewk_view_back):
        (ewk_view_forward):
        (ewk_view_intent_deliver):
        (ewk_view_back_possible):
        (ewk_view_forward_possible):
        (ewk_view_setting_encoding_custom_get):
        (ewk_view_setting_encoding_custom_set):

2012-07-27  Dominik Röttsches  <dominik.rottsches@intel.com>

        [Cairo] Add complex font drawing using HarfbuzzNG
        https://bugs.webkit.org/show_bug.cgi?id=91864

        Reviewed by Simon Hausmann and Martin Robinson.

        Adding includes for harfbuzz folders.

        * CMakeLists.txt:

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add more Ewk_View unit tests
        https://bugs.webkit.org/show_bug.cgi?id=92407

        Reviewed by Kenneth Rohde Christiansen.

        Add more unit tests for WebKit2 Ewk_View API.
        In particular, navigation, HTML loading and
        device pixel ratio functions are now tested.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::SetUp): Call ewk_init() instead
        of duplicating initialization code.
        (EWK2UnitTest::EWK2UnitTestBase::TearDown): call ewk_shutdown().
        (TitleChangedData):
        (EWK2UnitTest):
        (EWK2UnitTest::onTitleChanged):
        (EWK2UnitTest::EWK2UnitTestBase::waitUntilTitleChangedTo): Add convenience
        method to wait until the view main frame title changes to a given value.
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        (EWK2UnitTestBase):
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):
        (serverCallbackNavigation):

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

        [EFL][WK2] Keyboard events miss key location data.
        https://bugs.webkit.org/show_bug.cgi?id=92235

        Reviewed by Simon Hausmann.

        EFL WK2 did not initialize WebKeyboardEvent::m_isKeypad field.
        This caused failure of fast/events/keydown-numpad-keys.html test.

        * Shared/efl/WebEventFactory.cpp: WebKeyboardEvent::m_isKeypad is initialized.
        (WebKit::WebEventFactory::createWebKeyboardEvent):

2012-07-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL] Fix wrong return value in EWK_VIEW_XXX macro.
        https://bugs.webkit.org/show_bug.cgi?id=92466

        Reviewed by Simon Hausmann.

        There are wrong return values in EWK_VIEW_XXX macros. The wrong return values
        should be fixed. In addition, API description is also modified according to returned
        value change.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_uri_set):
        (ewk_view_load_progress_get):
        (ewk_view_device_pixel_ratio_get):
        * UIProcess/API/efl/ewk_view.h:

2012-07-27  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add unit tests for Ewk_View form client
        https://bugs.webkit.org/show_bug.cgi?id=92468

        Reviewed by Simon Hausmann.

        Add unit test for form client functionality in
        Ewk_View.

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

2012-07-26  Zeno Albisser  <zeno@webkit.org>

        Unreviewed Qt buildfix after r123786.

        Qt-minimal builds with ENABLE_REQUEST_ANIMATION_FRAME=0.
        Therefore adding #ifdefs to allow for that configuration.

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):

2012-07-26  Zeno Albisser  <zeno@webkit.org>

        [Qt] requestAnimationFrame should only trigger when a new frame can be displayed.
        https://bugs.webkit.org/show_bug.cgi?id=88638

        Disable REQUEST_ANIMATION_FRAME_TIMER for the Qt port and tie
        the servicing of scripted animations to layer syncing for WK2.
        For WK1 we rely on the RefreshAnimation that is based on QAbstractAnimation.

        Reviewed by Jocelyn Turcotte.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit):
        (WebKit::WebChromeClient::scheduleAnimation):
        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebChromeClient):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
        (WebKit::LayerTreeCoordinator::scheduleAnimation):
        (WebKit):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h:
        (LayerTreeCoordinator):
        * WebProcess/WebPage/LayerTreeHost.h:
        (LayerTreeHost):

2012-07-26  Jer Noble  <jer.noble@apple.com>

        Add a ChromeClient method to send diagnostic logging messages from WebCore to the client.
        https://bugs.webkit.org/show_bug.cgi?id=92340

        Reviewed by Anders Carlsson.

        Pipe the ChromeClient logDiagnosticMessage() function through WebKit2 to a new bundle class
        InjectedBundlePageDiagnosticLoggingClient, to be implemented by the client.

        * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
        (WKBundlePageSetDiagnosticLoggingClient): Added.
        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp: Added.
        (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):
        * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h: Added.
        (InjectedBundlePageDiagnosticLoggingClient):
        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::logDiagnosticMessage):
        * WebProcess/WebCoreSupport/WebChromeClient.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::initializeInjectedBundleDiagnosticLoggingClient):
        * WebProcess/WebPage/WebPage.h:
        (WebKit::WebPage::injectedBundleDiagnosticLoggingClient):

        Add a convenience class to retrieve the diagnostic message keys:
        * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp: Added.
        (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):
        * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h: Added.
        (InjectedBundlePageDiagnosticLoggingClient):

        Add the InjectedBundlePageDiagnosticLoggingClient.cpp,h files.
        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * win/WebKit2.vcproj:
        * WebKit2.xcodeproj/project.pbxproj: 

2012-07-25  Jer Noble  <jer.noble@apple.com>

        Add setting to enable and disable diagnostic logging.
        https://bugs.webkit.org/show_bug.cgi?id=92337

        Reviewed by Anders Carlsson.

        Add a WebKit2 WKPreferences API to set set the WebCore diagnosticLoggingEnabled setting.

        * Shared/WebPreferencesStore.h:
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetDiagnosticLoggingEnabled):
        (WKPreferencesGetDiagnosticLoggingEnabled):
        * UIProcess/API/C/WKPreferencesPrivate.h:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences): Ensure this preference is propagated to Settings
            whenever the preferences change.

2012-07-26  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL][WK2] Regression(r123731): Linking errors due to efreet functions
        https://bugs.webkit.org/show_bug.cgi?id=92378

        Unreviewed build fix.

        The library list created by PlatformEfl.cmake was being erased by a
        SET called after including the platform specific file. Luckily the
        dependencies were fulfilled by other targets until efreet was add.

        * CMakeLists.txt:

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

        [EFL][WK2] Compilation warning in EWK2UnitTestServer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92387

        Reviewed by Kenneth Rohde Christiansen.

        Fix compilation warning in EWK2UnitTestServer.cpp.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
        (EWK2UnitTestServer::EWK2UnitTestServer):

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

        [EFL][WK2] Implement Network Information provider
        https://bugs.webkit.org/show_bug.cgi?id=92343

        Reviewed by Kenneth Rohde Christiansen.

        Add Network Information provider for WebKit2 EFL
        by using NetworkInfoProviderEfl class from
        WebCore.

        * CMakeLists.txt:
        * PlatformEfl.cmake:
        * UIProcess/API/efl/NetworkInfoProvider.cpp: Added.
        (toNetworkInfoProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (getBandwidthCallback):
        (isMeteredCallback):
        (NetworkInfoProvider::create):
        (NetworkInfoProvider::NetworkInfoProvider):
        (NetworkInfoProvider::~NetworkInfoProvider):
        (NetworkInfoProvider::bandwidth):
        (NetworkInfoProvider::metered):
        (NetworkInfoProvider::startUpdating):
        (NetworkInfoProvider::stopUpdating):
        * UIProcess/API/efl/NetworkInfoProvider.h: Added.
        (NetworkInfoProvider):

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

        [EFL][WK2] Compilation warning in EWK2UnitTestServer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92387

        Reviewed by Kenneth Rohde Christiansen.

        Fix compilation warning in EWK2UnitTestServer.cpp.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
        (EWK2UnitTestServer::EWK2UnitTestServer):

2012-07-26  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL][WK2] Regression(r123731): Linking errors due to efreet functions
        https://bugs.webkit.org/show_bug.cgi?id=92378

        Unreviewed build fix.

        The library list created by PlatformEfl.cmake was being erased by a
        SET called after including the platform specific file. Luckily the
        dependencies were fulfilled by other targets until efreet was add.

        * CMakeLists.txt:

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

        [EFL][WK2] Compilation warning in EWK2UnitTestServer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92387

        Reviewed by Kenneth Rohde Christiansen.

        Fix compilation warning in EWK2UnitTestServer.cpp.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
        (EWK2UnitTestServer::EWK2UnitTestServer):

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

        [EFL][WK2] Implement Network Information provider
        https://bugs.webkit.org/show_bug.cgi?id=92343

        Reviewed by Kenneth Rohde Christiansen.

        Add Network Information provider for WebKit2 EFL
        by using NetworkInfoProviderEfl class from
        WebCore.

        * CMakeLists.txt:
        * PlatformEfl.cmake:
        * UIProcess/API/efl/NetworkInfoProvider.cpp: Added.
        (toNetworkInfoProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (getBandwidthCallback):
        (isMeteredCallback):
        (NetworkInfoProvider::create):
        (NetworkInfoProvider::NetworkInfoProvider):
        (NetworkInfoProvider::~NetworkInfoProvider):
        (NetworkInfoProvider::bandwidth):
        (NetworkInfoProvider::metered):
        (NetworkInfoProvider::startUpdating):
        (NetworkInfoProvider::stopUpdating):
        * UIProcess/API/efl/NetworkInfoProvider.h: Added.
        (NetworkInfoProvider):

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

        [EFL][WK2] Compilation warning in EWK2UnitTestServer.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92387

        Reviewed by Kenneth Rohde Christiansen.

        Fix compilation warning in EWK2UnitTestServer.cpp.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp:
        (EWK2UnitTestServer::EWK2UnitTestServer):

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

        [EFL][WK2] Add unit tests for Ewk_Context
        https://bugs.webkit.org/show_bug.cgi?id=92005

        Reviewed by Antonio Gomes.

        Add unit tests for WebKit2 Ewk_Context.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_url_scheme_request.cpp:
        (ewk_url_scheme_request_finish):
        * UIProcess/API/efl/ewk_url_scheme_request.h: Mark content_data
        argument as const.
        * UIProcess/API/efl/tests/test_ewk2_context.cpp: Added.
        (TEST_F):
        (schemeRequestCallback):

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

        [EFL][WK2] Add form client for Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=92358

        Reviewed by Kenneth Rohde Christiansen.

        Implement a form client for EFL port in order to
        send a "form,request,new" signal on the Ewk_View
        whenever a form will be submitted.

        The Ewk_Form_Submission_Request type is
        introduced to provide the client with information
        about the form (e.g. text fields contained in the
        form) and to submit it.

        This is typically used to store login information
        that can be used later to pre-fill the form.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_form_submission_request.cpp: Added.
        (_Ewk_Form_Submission_Request):
        (_Ewk_Form_Submission_Request::_Ewk_Form_Submission_Request):
        (_Ewk_Form_Submission_Request::~_Ewk_Form_Submission_Request):
        (ewk_form_submission_request_ref):
        (ewk_form_submission_request_unref):
        (ewk_form_submission_request_field_names_get):
        (ewk_form_submission_request_field_value_get):
        (ewk_form_submission_request_submit):
        (ewk_form_submission_request_new):
        * UIProcess/API/efl/ewk_form_submission_request.h: Added.
        * UIProcess/API/efl/ewk_form_submission_request_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_form_submission_request_new):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_form_client.cpp: Added.
        (willSubmitForm):
        (ewk_view_form_client_attach):
        * UIProcess/API/efl/ewk_view_form_client_private.h: Added.
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-26  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>

        [WK2] WebPage::handleEditingKeyboardEvent does not check whether the node allows editing.
        https://bugs.webkit.org/show_bug.cgi?id=92364

        Reviewed by Kenneth Rohde Christiansen.

        Added a check whether the input node allows editing. If editing is not allowed
        text input event will not be emitted.

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

2012-07-26  Zoltan Nyul  <zoltan.nyul@intel.com>

        [EFL] EFL port should use XDG paths
        https://bugs.webkit.org/show_bug.cgi?id=91719

        Reviewed by Kenneth Rohde Christiansen.

        Setting xdg paths for application cache, web-database and local-storage.

        * PlatformEfl.cmake:
        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::applicationCacheDirectory):
        (WebKit::WebContext::platformDefaultDatabaseDirectory):
        (WebKit::WebContext::platformDefaultLocalStorageDirectory):

2012-07-26  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL] [WK2] Memory leak in ewk_view_resource_load_client.cpp
        https://bugs.webkit.org/show_bug.cgi?id=92099

        Reviewed by Kentaro Hara.

        Fix a memory leak by clearing the loadingResources HashMap on exit.

        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (_ewk_view_priv_loading_resources_clear):
        (ewk_view_load_provisional_started):

2012-07-26  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [DRT] LTC:: pageNumberForElementById() could be moved to Internals
        https://bugs.webkit.org/show_bug.cgi?id=92091

        Reviewed by Kentaro Hara.

        Missing a symbol filter for Mac win port.

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

2012-07-25  Seokju Kwon  <seokju.kwon@samsung.com>

        [EFL][WK2] Implement the inspector for WebKitTestRunner
        https://bugs.webkit.org/show_bug.cgi?id=92213

        Reviewed by Ryosuke Niwa.

        Partial Implementation of WebInspectorProxyEfl for WebkitTestRunner.
        And Web Inspector resources installation.

        * PlatformEfl.cmake:
        * UIProcess/WebInspectorProxy.cpp:
        (WebKit::WebInspectorProxy::WebInspectorProxy):
        * UIProcess/WebInspectorProxy.h:
        (WebInspectorProxy):
        * UIProcess/efl/WebInspectorProxyEfl.cpp:
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):
        (WebKit::WebInspectorProxy::platformDidClose):
        (WebKit::WebInspectorProxy::inspectorPageURL):
        (WebKit::WebInspectorProxy::inspectorBaseURL):

2012-07-25  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        Create a specialized struct for use in HashMap iterators
        https://bugs.webkit.org/show_bug.cgi?id=92137

        Reviewed by Ryosuke Niwa.

        * Platform/CoreIPC/ArgumentCoders.h: Add encode/decode for KeyValuePair.

2012-07-25  Anders Carlsson  <andersca@apple.com>

        Crash when calling PluginView::pluginFocusOrWindowFocusChanged when the web page is null
        https://bugs.webkit.org/show_bug.cgi?id=92289
        <rdar://problem/11785352>

        Reviewed by Andreas Kling.

        Plug-in views that outlive their containing web page for various reasons (such as being protected from
        destruction) need to null check the web page.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::pluginFocusOrWindowFocusChanged):
        (WebKit::PluginView::setComplexTextInputState):

2012-07-25  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][WTR] LayoutTestController.sendWebIntentResponse() needs to be implemented
        https://bugs.webkit.org/show_bug.cgi?id=92227

        Reviewed by Kenneth Rohde Christiansen.

        Add new InjectedBundleIntentRequest class to wrap WebCore's
        IntentRequest and use it in InjectedBundle's
        didReceiveIntentForFrame callback. The WebKitTestRunner needs
        to be able to reply to a Web intent request in order to
        implement LayoutTestController.sendWebIntentResponse(). As
        a consequence, passing a WebIntentData type in not enough.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Shared/API/c/WKBase.h:
        * Shared/APIObject.h:
        * Shared/IntentData.cpp:
        (WebKit::IntentData::IntentData):
        (WebKit):
        * Shared/IntentData.h:
        (WebCore):
        (WebKit::IntentData::IntentData):
        (IntentData):
        * Target.pri:
        * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
        (WebKit):
        * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp: Copied from Source/WebKit2/Shared/IntentData.cpp.
        (WKBundleIntentRequestGetTypeID):
        (WKBundleIntentRequestCopyIntent):
        (WKBundleIntentRequestPostResult):
        (WKBundleIntentRequestPostFailure):
        * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h: Copied from Source/WebKit2/Shared/IntentData.h.
        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp: Copied from Source/WebKit2/Shared/IntentData.cpp.
        (WebKit):
        (WebKit::InjectedBundleIntentRequest::create):
        (WebKit::InjectedBundleIntentRequest::InjectedBundleIntentRequest):
        (WebKit::InjectedBundleIntentRequest::postResult):
        (WebKit::InjectedBundleIntentRequest::postFailure):
        (WebKit::InjectedBundleIntentRequest::intent):
        * WebProcess/InjectedBundle/InjectedBundleIntentRequest.h: Copied from Source/WebKit2/Shared/IntentData.h.
        (WebCore):
        (WebKit):
        (InjectedBundleIntentRequest):
        (WebKit::InjectedBundleIntentRequest::type):
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
        (WebKit::InjectedBundlePageLoaderClient::didReceiveIntentForFrame):
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
        (WebKit):
        (InjectedBundlePageLoaderClient):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):

2012-07-25  Anders Carlsson  <andersca@apple.com>

        Crash when a web page is closed with outstanding scrolling thread barriers
        https://bugs.webkit.org/show_bug.cgi?id=92280
        <rdar://problem/11630200>

        Reviewed by Andreas Kling.

        There was a check in forceRepaintAsync to handle the drawing area going away before the block had
        been invoked,  but this check needs to be done earlier (as the FIXME suggested).
        Move this check to dispatchAfterEnsuringUpdatedScrollPosition instead.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):
        (WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):

2012-07-25  Alexey Proskuryakov  <ap@apple.com>

        Chinese IM receives incorrect/duplicated key events in text fields in webpages in Safari.
        https://bugs.webkit.org/show_bug.cgi?id=89048
        <rdar://problem/11786384>

        Reviewed by Andreas Kling.

        Cannot test text input from UI process side.

        Stop relying on IPC to handle key events in order. There are too many complications
        where out of order delivery is performed. Instead, queue the events at UI process
        side.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::handleKeyboardEvent):
        (WebKit::WebPageProxy::didReceiveEvent):

2012-07-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL] Use eina_stringshare_add instead of strdup.
        https://bugs.webkit.org/show_bug.cgi?id=92072

        Reviewed by Kentaro Hara.

        Eina of EFL libraries supports a string functionality that replaces strdup. So, EFL port needs
        to replace strdup with eina_stringshare_add function.

        * UIProcess/API/efl/ewk_intent.cpp:
        (ewk_intent_suggestions_get):
        (ewk_intent_extra_get):
        * UIProcess/API/efl/ewk_intent.h:

2012-07-25  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Add ewk_view_cursor_set to change cursor.
        https://bugs.webkit.org/show_bug.cgi?id=89140

        Reviewed by Hajime Morita.

        Implement ewk_view_cursor_set to support cursor changes.

        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit::PageClientImpl::setCursor): Called ewk_view_cursor_set.
        * 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_new): Check whether ecore_x can be used.
        (_ewk_view_smart_add):
        Change order of initialization to use base structure in _ewk_view_priv_new.
        (ewk_view_cursor_set): Added to set cursor.
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-25  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Update uri when the active URI is changed while loading.
        https://bugs.webkit.org/show_bug.cgi?id=92001

        Reviewed by Hajime Morita.

        For now, ewk_view_uri_get just return the last uri of setter.
        This patch updates the uri of ewk_view when it is changed while loading.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_uri_update):
        Added to check whether current active URI has changed and send uri,changed
        signal if it has changed.
        (ewk_view_uri_set):
        Called ewk_view_uri_update to make sure the active uri is updated when the
        load operation is started.
        (ewk_view_reload): Ditto.
        (ewk_view_reload_bypass_cache): Ditto.
        (ewk_view_load_finished): Ditto.
        (ewk_view_load_provisional_redirect): Ditto.
        (ewk_view_load_provisional_started): Ditto.
        (ewk_view_html_string_load): Ditto.
        * UIProcess/API/efl/ewk_view.h: Updated comment for uri,changed signal.
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: 
        (EWK2UnitTest::EWK2UnitTestEnvironment::urlForResource):
        Added to get url of custom resource for test.
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
        * UIProcess/API/efl/tests/resources/redirect_uri_to_default.html:
        Added to test ewk_view_uri_get when the page is redirected.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp: Ditto.
        (onLoadFinishedForRedirection):
        (TEST_F): Added new test case whether ewk_view_uri_get returns correct uri when
        the page is redirected.

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

        [EFL][WK2] Add ewk_main.{cpp,h} to EFL WK2
        https://bugs.webkit.org/show_bug.cgi?id=92101

        Reviewed by Kenneth Rohde Christiansen.

        Added a centralized place for general initialization in UI process for EFL WK2.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_main.cpp: Added.
        (ewk_init): General initialization.
        (ewk_shutdown): General freeing. 
        (_ewk_init_body): An aux function.
        * UIProcess/API/efl/ewk_main.h: Added.

2012-07-24  Jae Hyun Park  <jae.park@company100.net>

        WKContextGetGlobalStatistics() assigns wrong value to wkFrameCount in WKContextStatistics
        https://bugs.webkit.org/show_bug.cgi?id=92173

        Reviewed by John Sullivan.

        In WKContextGetGlobalStatistics(), wkViewCount in WebContext::Statistics
        is assigned to wkFrameCount in WKContextStatistics.
        wkFrameCount in WebContext:Statistics should be assigned to wkFrameCount in WKContextStatistics.

        * UIProcess/API/C/WKContext.cpp:
        (WKContextGetGlobalStatistics):

2012-07-24  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL][WK2] Add unit tests for custom text encoding setting
        https://bugs.webkit.org/show_bug.cgi?id=91983

        Reviewed by Dirk Pranke.

        Add unit tests for get and set custom text encoding methods. Also, fix
        a style nit for r123177.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_setting_encoding_custom_set): Fix a style nit - add newline
        before return.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp:
        (TEST_F):

2012-07-24  Ryosuke Niwa  <rniwa@webkit.org>

        WinCairo build fix attempt.

        * win/WebKit2CFLite.def:

2012-07-24  Ryosuke Niwa  <rniwa@webkit.org>

        Windows build fix attempt.

        * win/WebKit2.def:

2012-07-24  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        [Qt] Make sure that an AC sync is triggered when the canvas contents is updated.
        https://bugs.webkit.org/show_bug.cgi?id=92128

        Reviewed by Kenneth Rohde Christiansen.

        This would cause missed frames when animating an accelerated 2D canvas without
        touching the document.

        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp:
        (WebCore::WebGraphicsLayer::setContentsNeedsDisplay):

2012-07-24  Alexey Proskuryakov  <ap@apple.com>

        [Mac WK2] Improve text input logging
        https://bugs.webkit.org/show_bug.cgi?id=92147

        Reviewed by Andreas Kling.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView insertText:replacementRange:]):
        (-[WKView keyUp:]):
        (-[WKView keyDown:]):
        (-[WKView flagsChanged:]):
        (-[WKView _executeSavedKeypressCommands]):
        (-[WKView _notifyInputContextAboutDiscardedComposition]):
        (-[WKView _interpretKeyEvent:savingCommandsTo:WebCore::]):
        (-[WKView _updateSecureInputState]):

2012-07-24  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Provide more useful output when an injected bundle cannot be loaded
        https://bugs.webkit.org/show_bug.cgi?id=92136

        Reviewed by Kenneth Rohde Christiansen.

        Call eina_error_get() in case an injected bundle cannot be
        loaded in order to print more information about the error.

        * WebProcess/InjectedBundle/efl/InjectedBundleEfl.cpp:
        (WebKit::InjectedBundle::load):

2012-07-24  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL][WK2] Add vibration client
        https://bugs.webkit.org/show_bug.cgi?id=91371

        Reviewed by Antonio Gomes.

        Implement Vibration provider for WebKit2 EFL and add an API to set
        vibration client callbacks by application to handle the tactile
        feedback in the application when the page content ask for vibration.

        * CMakeLists.txt: Add WebCore/Modules/vibration to include path.
        * PlatformEfl.cmake: Add VibrationProvider.cpp file to the build
        system.
        * UIProcess/API/efl/VibrationProvider.cpp: Added.
        (_Ewk_Vibration_Client): Structure contains the vibration client
        callbacks.
        (_Ewk_Vibration_Client::_Ewk_Vibration_Client):
        (toVibrationProvider): Helper function to cast the clientinfo to
        VibrationProvider.
        (vibrateCallback):
        (cancelVibrationCallback):
        (VibrationProvider::create):
        (VibrationProvider::VibrationProvider):
        (VibrationProvider::~VibrationProvider):
        (VibrationProvider::vibrate):
        (VibrationProvider::cancelVibration):
        (VibrationProvider::setVibrationClientCallbacks):
        * UIProcess/API/efl/VibrationProvider.h: Added.
        (VibrationProvider):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context):
        (createDefaultEwkContext):
        (ewk_context_vibration_client_callbacks_set): API to set vibration
        client callbacks.
        * UIProcess/API/efl/ewk_context.h:

2012-07-24  Simon Hausmann  <simon.hausmann@nokia.com>

        [Qt] Fix compilation after QtQuick API changes
        https://bugs.webkit.org/show_bug.cgi?id=91822

        Reviewed by Kenneth Rohde Christiansen.

        QQuickCanvas is now QQuickWindow, QQuickItem::canvas() is window() and rootItem()
        is contentItem(). Also QQuickWindow::grabFrameBuffer() is now grabWindow().

        * UIProcess/API/qt/qquickwebpage.cpp:
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::updateIcon):
        * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
        (tst_QQuickWebView::multipleWebViews):
        (tst_QQuickWebView::basicRenderingSanity):
        (tst_QQuickWebView::transparentWebViews):
        * UIProcess/API/qt/tests/testwindow.h:
        (TestWindow::TestWindow):
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit::QtPageClient::isViewVisible):
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::startDrag):

2012-07-24  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] Add quirks for running the web process in a profiler shell, like valgrind
        https://bugs.webkit.org/show_bug.cgi?id=87672

        Reviewed by Jocelyn Turcotte.

        If environment variables QT_WEBKIT_WEB_PROCESS_COMMAND_PREFIX
        and/or QT_WEBKIT_PLUGIN_PROCESS_COMMAND_PREFIX are set, use their
        values as the prefix of the command when launching the child process.
        Example usage:
            export QT_WEB_PROCESS_COMMAND_PREFIX="valgrind --smc-check=all"
            ./MiniBrowser http://somepage.html
            ./WebKitTestRunner --no-timeout-at-all some_layouttest.html

        * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
        (WebKit::ProcessLauncher::launchProcess):

2012-07-23  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>

        [Qt] Fix compilation against namespaced Qt

        Reviewed by Simon Hausmann.

        * Platform/CoreIPC/Connection.h:
        * Platform/PlatformProcessIdentifier.h:
        * Platform/WorkQueue.h:
        * Shared/qt/QtNetworkRequestData.h:
        * Shared/qt/WebEventFactoryQt.h:
        * UIProcess/API/C/qt/WKNativeEvent.h:
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qwebnavigationhistory_p.h:
        * UIProcess/API/qt/raw/qrawwebview_p.h:
        * UIProcess/DrawingAreaProxy.h:
        * UIProcess/Launcher/ThreadLauncher.h:
        * UIProcess/LayerTreeCoordinatorProxy.h:
        * UIProcess/qt/QtViewportHandler.h:
        * UIProcess/qt/QtWebPageSGNode.h:
        * UIProcess/qt/WebColorChooserProxyQt.h:
        * UIProcess/qt/WebGeolocationProviderQt.h:
        * UIProcess/qt/WebPopupMenuProxyQt.h:
        * WebProcess/WebProcess.h:

2012-07-24  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Remove unneeded WebURLRequestEfl and WebURLResponseEfl
        https://bugs.webkit.org/show_bug.cgi?id=92087

        Reviewed by Kenneth Rohde Christiansen.

        Remove WebURLRequestEfl and WebURLResponseEfl classes
        and their corresponding C APIs since we don't need / use
        them.

        * Shared/API/c/efl/WKURLRequestEfl.cpp: Removed.
        * Shared/API/c/efl/WKURLRequestEfl.h: Removed.
        * Shared/API/c/efl/WKURLResponseEfl.cpp: Removed.
        * Shared/API/c/efl/WKURLResponseEfl.h: Removed.
        * Shared/efl/WebURLRequestEfl.cpp: Removed.
        * Shared/efl/WebURLRequestEfl.h: Removed.
        * Shared/efl/WebURLResponseEfl.cpp: Removed.
        * Shared/efl/WebURLResponseEfl.h: Removed.
        * UIProcess/API/efl/ewk_url_request.cpp:

2012-07-24  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Enable touch slider when touch events are enabled
        https://bugs.webkit.org/show_bug.cgi?id=91013

        Reviewed by Kenneth Rohde Christiansen.

        TOUCH_SLIDER guards are used in WebCore, so we should really
        be setting the corresponding ENABLE define in features.prf.

        * Target.pri:

2012-07-24  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Fix possible crash in didSendRequestForResource
        https://bugs.webkit.org/show_bug.cgi?id=92077

        Reviewed by Kenneth Rohde Christiansen.

        Add NULL check for wkRedirectResponse in
        didSendRequestForResource() before using it. The
        argument may be NULL if there was no redirection.

        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (didSendRequestForResource):

2012-07-24  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL][GTK] Share WebCoreArgumentCoders for soup-related types
        https://bugs.webkit.org/show_bug.cgi?id=92073

        Reviewed by Kenneth Rohde Christiansen.

        Move WebCoreArgumentCoders for soup-related types such as
        ResourceRequest, ResourceResponse and ResourceError from
        port specific file to Shared/soup/WebCoreArgumentCodersSoup.cpp.
        This way, the different ports using libsoup can share
        code and avoid duplication.

        * GNUmakefile.list.am:
        * PlatformEfl.cmake:
        * Shared/efl/WebCoreArgumentCodersEfl.cpp: Removed.
        * Shared/soup/WebCoreArgumentCodersSoup.cpp: Renamed from Source/WebKit2/Shared/gtk/WebCoreArgumentCodersGtk.cpp.
        (CoreIPC):
        (CoreIPC::::encode):
        (CoreIPC::::decode):

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

        Unreviewed, rolling out r123184, r123195, and r123197.
        http://trac.webkit.org/changeset/123184
        http://trac.webkit.org/changeset/123195
        http://trac.webkit.org/changeset/123197
        https://bugs.webkit.org/show_bug.cgi?id=92049

        pagecycler regression (Requested by morrita on #webkit).

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

2012-07-23  Simon Fraser  <simon.fraser@apple.com>

        Part 2 of: Implement sticky positioning
        https://bugs.webkit.org/show_bug.cgi?id=90046

        Reviewed by Ojan Vafai.

        Turn on ENABLE_CSS_STICKY_POSITION.

        * Configurations/FeatureDefines.xcconfig:

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

        [WK2] WebKitTestRunner needs to print information about Web intents
        https://bugs.webkit.org/show_bug.cgi?id=90873

        Reviewed by Anders Carlsson.

        Add Bundle API for Web Intents. This is needed by the WebKitTestRunner
        to print information about the new intent requests and the intent
        service registrations.

        * CMakeLists.txt: Move WebIntentData and WebIntentServiceInfo from
        UIProcess/ to Shared/.
        * GNUmakefile.list.am: Move WebIntentData and WebIntentServiceInfo from
        UIProcess/ to Shared/.
        * Shared/APIClientTraits.h:
        * Shared/WebIntentData.cpp: Renamed from Source/WebKit2/UIProcess/WebIntentData.cpp.
        (WebKit):
        (WebKit::WebIntentData::WebIntentData):
        (WebKit::WebIntentData::data):
        (WebKit::WebIntentData::suggestions):
        (WebKit::WebIntentData::extra):
        (WebKit::WebIntentData::extras):
        * Shared/WebIntentData.h: Renamed from Source/WebKit2/UIProcess/WebIntentData.h.
        (WebKit):
        (WebIntentData):
        (WebKit::WebIntentData::create):
        (WebKit::WebIntentData::~WebIntentData):
        (WebKit::WebIntentData::action):
        (WebKit::WebIntentData::payloadType):
        (WebKit::WebIntentData::service):
        (WebKit::WebIntentData::store):
        (WebKit::WebIntentData::type):
        * Shared/WebIntentServiceInfo.cpp: Renamed from Source/WebKit2/UIProcess/WebIntentServiceInfo.cpp.
        (WebKit):
        (WebKit::WebIntentServiceInfo::WebIntentServiceInfo):
        * Shared/WebIntentServiceInfo.h: Renamed from Source/WebKit2/UIProcess/WebIntentServiceInfo.h.
        (WebKit):
        (WebIntentServiceInfo):
        (WebKit::WebIntentServiceInfo::create):
        (WebKit::WebIntentServiceInfo::~WebIntentServiceInfo):
        (WebKit::WebIntentServiceInfo::action):
        (WebKit::WebIntentServiceInfo::payloadType):
        (WebKit::WebIntentServiceInfo::href):
        (WebKit::WebIntentServiceInfo::title):
        (WebKit::WebIntentServiceInfo::disposition):
        (WebKit::WebIntentServiceInfo::type):
        * Target.pri: Move WebIntentData and WebIntentServiceInfo from
        UIProcess/ to Shared/.
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didReceiveIntentForFrame):
        (registerIntentServiceForFrame):
        * UIProcess/WebLoaderClient.cpp:
        (WebKit::WebLoaderClient::didReceiveIntentForFrame):
        (WebKit::WebLoaderClient::registerIntentServiceForFrame):
        * UIProcess/WebLoaderClient.h:
        (WebLoaderClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::registerIntentServiceForFrame):
        (WebKit::WebPageProxy::didReceiveIntentForFrame):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
        (WebKit):
        (WebKit::InjectedBundlePageLoaderClient::didReceiveIntentForFrame):
        (WebKit::InjectedBundlePageLoaderClient::registerIntentServiceForFrame):
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
        (WebKit):
        (InjectedBundlePageLoaderClient):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):
        (WebKit::WebFrameLoaderClient::registerIntentService):
        * WebProcess/qt/QtBuiltinBundlePage.cpp:
        (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):

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

        [EFL][WK2] Add unit tests for Ewk_Cookie_Manager
        https://bugs.webkit.org/show_bug.cgi?id=91639

        Reviewed by Antonio Gomes.

        Add unit tests for Ewk_Cookie_Manager.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_cookie_manager.h: Fix "accept policy" documentation
        to indicate that only cookies set by the main document are accepted by default.
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.cpp: Added.
        (EWK2UnitTestServer::EWK2UnitTestServer): Add HTTP server similar to the one
        used by GTK port unit tests.
        (EWK2UnitTestServer::~EWK2UnitTestServer):
        (EWK2UnitTestServer::run):
        (EWK2UnitTestServer::getURIForPath):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestServer.h: Added.
        (EWK2UnitTestServer):
        (EWK2UnitTestServer::baseURI):
        * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp: Added.
        (serverCallback):
        (getAcceptPolicyCallback):
        (getAcceptPolicy):
        (getHostnamesWithCookiesCallback):
        (getHostnamesWithCookies):
        (freeHostNames):
        (countHostnamesWithCookies):
        (TEST_F):
        (cleanUpCookieFiles):

2012-07-23  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Enable touch slider when touch events are enabled
        https://bugs.webkit.org/show_bug.cgi?id=91013

        Reviewed by Antonio Gomes.

        Take advantage of the logic introduced in r122286.

        * Target.pri:

2012-07-23  Pierre Rossi  <pierre.rossi@gmail.com>

        Unify numTouchEventHandlersChanged and needTouchEvents in the chrome client
        https://bugs.webkit.org/show_bug.cgi?id=91006

        Reviewed by Ryosuke Niwa.

        Remove numTouchEventHandlersChanged stub.

        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebChromeClient):

2012-07-23  Simon Fraser  <simon.fraser@apple.com>

        Part 1 of: Implement sticky positioning
        https://bugs.webkit.org/show_bug.cgi?id=90046

        Reviewed by Ojan Vafai.

        Add ENABLE_CSS_STICKY_POSITION, defaulting to off initially.
        
        Sort the ENABLE_CSS lines in the file. Make sure all the flags
        are in FEATURE_DEFINES.

        * Configurations/FeatureDefines.xcconfig:

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

        [EFL][WK2] Add request manager client
        https://bugs.webkit.org/show_bug.cgi?id=91193

        Reviewed by Kenneth Rohde Christiansen.

        Add a URL request manager client and attach it
        to the Ewk_Context.

        The client application can now register a URL scheme
        via the Ewk_Context API and provide a callback handler
        that will get called whenever a URL request with this
        scheme is made.

        A new Ewk_Url_Scheme_Request type is introduced to
        provide information about the request to the client
        and to allow the client to finish it by setting its
        contents.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Url_Scheme_Handler):
        (_Ewk_Url_Scheme_Handler::_Ewk_Url_Scheme_Handler):
        (_Ewk_Context):
        (_Ewk_Context::_Ewk_Context):
        (ewk_context_request_manager_get):
        (ewk_context_url_scheme_request_received):
        (createDefaultEwkContext):
        (ewk_context_uri_scheme_register):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_context_private.h:
        * UIProcess/API/efl/ewk_context_request_manager_client.cpp: Added.
        (toEwkContext):
        (didReceiveURIRequest):
        (ewk_context_request_manager_client_attach):
        * UIProcess/API/efl/ewk_context_request_manager_client_private.h: Added.
        * UIProcess/API/efl/ewk_url_scheme_request.cpp: Added.
        (_Ewk_Url_Scheme_Request):
        (_Ewk_Url_Scheme_Request::_Ewk_Url_Scheme_Request):
        (_Ewk_Url_Scheme_Request::~_Ewk_Url_Scheme_Request):
        (ewk_url_scheme_request_ref):
        (ewk_url_scheme_request_unref):
        (ewk_url_scheme_request_scheme_get):
        (ewk_url_scheme_request_url_get):
        (ewk_url_scheme_request_path_get):
        (ewk_url_scheme_request_id_get):
        (ewk_url_scheme_request_finish):
        (ewk_url_scheme_request_new):
        * UIProcess/API/efl/ewk_url_scheme_request.h: Added.
        * UIProcess/API/efl/ewk_url_scheme_request_private.h: Added.

2012-07-23  KwangYong Choi  <ky0.choi@samsung.com>

        [EFL][WK2] ProcessExecutablePath is required
        https://bugs.webkit.org/show_bug.cgi?id=89719

        Reviewed by Kenneth Rohde Christiansen.

        Added executablePathOfWebProcess and executablePathOfPluginProcess.
        It's used for getting the location of WebProcess and PluginProcess.

        * PlatformEfl.cmake: Added LIBEXECDIR definition
        * Shared/efl/ProcessExecutablePathEfl.cpp: Added.
        (WebKit):
        (WebKit::findWebKitProcess):
        (WebKit::executablePathOfWebProcess): Get the absolute path of WebProcess
        (WebKit::executablePathOfPluginProcess): Get the absolute path of PluginProcess
        * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
        (WebKit::ProcessLauncher::launchProcess): Modified to use above routines

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

        WebKit2 needs layoutTestController.setAlwaysAcceptCookies
        https://bugs.webkit.org/show_bug.cgi?id=42778

        Reviewed by Kenneth Rohde Christiansen.

        Add setAlwaysAcceptCookies() method to InjectedBundle
        so that we can use it in LayoutTestController.
        The method uses WebCookieManager::setHTTPCookieAcceptPolicy()
        internally.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetAlwaysAcceptCookies):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setAlwaysAcceptCookies):
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-07-23  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [WK2] SQL Database cannot be disabled at build time
        https://bugs.webkit.org/show_bug.cgi?id=91837

        Reviewed by Kenneth Rohde Christiansen.

        WebKit2 had no #ifdefs for SQL Database. This patch adds these
        statments and it can now be disabled at build time.

        * Shared/OriginAndDatabases.cpp:
        * Shared/OriginAndDatabases.h:
        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC):
        * UIProcess/API/C/WKContext.cpp:
        (WKContextGetDatabaseManager):
        * UIProcess/API/C/WKDatabaseManager.cpp:
        (WKDatabaseManagerGetTypeID):
        (WKDatabaseManagerGetOriginKey):
        (WKDatabaseManagerGetOriginQuotaKey):
        (WKDatabaseManagerGetOriginUsageKey):
        (WKDatabaseManagerGetDatabaseDetailsKey):
        (WKDatabaseManagerGetDatabaseDetailsNameKey):
        (WKDatabaseManagerGetDatabaseDetailsDisplayNameKey):
        (WKDatabaseManagerGetDatabaseDetailsExpectedUsageKey):
        (WKDatabaseManagerGetDatabaseDetailsCurrentUsageKey):
        (WKDatabaseManagerSetClient):
        (WKDatabaseManagerGetDatabasesByOrigin):
        (callGetDatabasesByOriginBlockAndDispose):
        (WKDatabaseManagerGetDatabasesByOrigin_b):
        (WKDatabaseManagerGetDatabaseOrigins):
        (callGetDatabaseOriginsBlockBlockAndDispose):
        (WKDatabaseManagerGetDatabaseOrigins_b):
        (WKDatabaseManagerDeleteDatabasesWithNameForOrigin):
        (WKDatabaseManagerDeleteDatabasesForOrigin):
        (WKDatabaseManagerDeleteAllDatabases):
        (WKDatabaseManagerSetQuotaForOrigin):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::shouldTerminate):
        (WebKit::WebContext::disconnectProcess):
        (WebKit::WebContext::didReceiveMessage):
        * UIProcess/WebContext.h:
        (WebContext):
        * UIProcess/WebDatabaseManagerProxy.cpp:
        * UIProcess/WebDatabaseManagerProxy.h:
        * UIProcess/WebDatabaseManagerProxy.messages.in:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::clearAllDatabases):
        (WebKit::InjectedBundle::setDatabaseQuota):
        * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
        * WebProcess/WebCoreSupport/WebDatabaseManager.h:
        * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::didReceiveMessage):

2012-07-23  Kent Tamura  <tkent@chromium.org>

        Rename ENABLE_METER_TAG and ENABLE_PROGRESS_TAG to ENABLE_METER_ELEMENT and ENABLE_PROGRESS_ELEMENT respectively
        https://bugs.webkit.org/show_bug.cgi?id=91941

        Reviewed by Kentaro Hara.

        A flag name for an elmement should be ENABLE_*_ELEMENT.

        * Configurations/FeatureDefines.xcconfig:

2012-07-22  Kent Tamura  <tkent@chromium.org>

        Rename ENABLE_DETAILS to ENABLE_DETAILS_ELEMENT
        https://bugs.webkit.org/show_bug.cgi?id=91928

        Reviewed by Kentaro Hara.

        A flag name for an elmement should be ENABLE_*_ELEMENT.

        * Configurations/FeatureDefines.xcconfig:

2012-07-20  Kent Tamura  <tkent@chromium.org>

        Rename ENABLE_DATALIST to ENABLE_DATALIST_ELEMENT
        https://bugs.webkit.org/show_bug.cgi?id=91846

        Reviewed by Kentaro Hara.

        A flag name for an elmement should be ENABLE_*_ELEMENT.

        * Configurations/FeatureDefines.xcconfig:

2012-07-20  Rafael Brandao  <rafael.lobo@openbossa.org>

        QtNetworkAccessManager should not rely on signal sslErrors when QT_NO_SSL is defined
        https://bugs.webkit.org/show_bug.cgi?id=91866

        Reviewed by Noam Rosenthal.

        * WebProcess/qt/QtNetworkAccessManager.cpp:
        (WebKit::QtNetworkAccessManager::QtNetworkAccessManager): QNAM's signal is only defined when
        that flag is undefined. Removed the connection when we have the flag set.
        (WebKit::QtNetworkAccessManager::onSslErrors): When the flag is set, this slot becomes unused.

2012-07-20  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Proxy configuration should honor the no_proxy environment variable
        https://bugs.webkit.org/show_bug.cgi?id=91747

        Reviewed by Kenneth Rohde Christiansen.

        Use the new custom proxy resolver from WebCore in
        WebKit2-EFL so that it is possible for the client
        to set proxy exceptions via the "no_proxy"
        environment variable.

        By default, the proxy set in the "http_proxy"
        environment variable will not be used for requests
        to localhost or 127.0.0.1.

        * WebProcess/efl/WebProcessMainEfl.cpp:
        (WebKit::WebProcessMainEfl):

2012-06-01  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][WK2] Add support for multi-select list
        https://bugs.webkit.org/show_bug.cgi?id=85527

        Reviewed by Kenneth Rohde Christiansen.

        Added support for multi-select list:
        - Added multi-selection flag to PlatformPopupMenuData to indicate whether to accept multiple selections or not.
        - Added selected state to WebPopupItem.
        - Modified WebPopupMenuQt to support multiple selections.

        * Shared/PlatformPopupMenuData.cpp:
        (WebKit::PlatformPopupMenuData::PlatformPopupMenuData):
        (WebKit::PlatformPopupMenuData::encode):
        (WebKit::PlatformPopupMenuData::decode):
        * Shared/PlatformPopupMenuData.h:
        (PlatformPopupMenuData):
        * Shared/WebPopupItem.cpp:
        (WebKit::WebPopupItem::WebPopupItem):
        (WebKit::WebPopupItem::encode):
        (WebKit::WebPopupItem::decode):
        * Shared/WebPopupItem.h:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_multiSelect.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/multiselect.html: Added.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPopupMenuProxy.h:
        (Client):
        * UIProcess/qt/WebPageProxyQt.cpp:
        (WebKit::WebPageProxy::changeSelectedIndex):
        (WebKit):
        (WebKit::WebPageProxy::closePopupMenu):
        * UIProcess/qt/WebPopupMenuProxyQt.cpp:
        (WebKit::PopupMenuItemModel::multiple):
        (PopupMenuItemModel):
        (WebKit::PopupMenuItemModel::Item::Item):
        (ItemSelectorContextObject):
        (WebKit::ItemSelectorContextObject::allowMultiSelect):
        (WebKit::ItemSelectorContextObject::reject):
        (WebKit::ItemSelectorContextObject::dismiss):
        (WebKit::ItemSelectorContextObject::ItemSelectorContextObject):
        (WebKit):
        (WebKit::ItemSelectorContextObject::onIndexUpdate):
        (WebKit::ItemSelectorContextObject::accept):
        (WebKit::PopupMenuItemModel::PopupMenuItemModel):
        (WebKit::PopupMenuItemModel::select):
        (WebKit::PopupMenuItemModel::toggleItem):
        (WebKit::PopupMenuItemModel::buildItems):
        (WebKit::WebPopupMenuProxyQt::showPopupMenu):
        (WebKit::WebPopupMenuProxyQt::hidePopupMenu):
        (WebKit::WebPopupMenuProxyQt::selectIndex):
        (WebKit::WebPopupMenuProxyQt::createItem):
        * UIProcess/qt/WebPopupMenuProxyQt.h:
        (WebPopupMenuProxyQt):
        * WebProcess/WebCoreSupport/WebPopupMenu.cpp:
        (WebKit::WebPopupMenu::didChangeSelectedIndex):
        (WebKit::WebPopupMenu::populateItems):
        * WebProcess/WebCoreSupport/WebPopupMenu.h:
        (WebPopupMenu):
        * WebProcess/WebCoreSupport/qt/WebPopupMenuQt.cpp:
        (WebKit::WebPopupMenu::setUpPlatformData):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::didChangeSelectedIndexForActivePopupMenu):
        (WebKit):
        (WebKit::WebPage::changeSelectedIndex):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/qt/WebPageQt.cpp:
        (WebKit::WebPage::selectedIndex):
        (WebKit):
        (WebKit::WebPage::hidePopupMenu):

2012-07-20  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Unreviewed, rolling out r123085.
        http://trac.webkit.org/changeset/123085
        https://bugs.webkit.org/show_bug.cgi?id=91719

        r123085 causes crashes on EFL layout test bot.

        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::applicationCacheDirectory):

2012-07-20  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Use "load,finished" signal in EWK2UnitTestBase::loadUrlSync() instead of "load,progress"
        https://bugs.webkit.org/show_bug.cgi?id=91721

        Reviewed by Kenneth Rohde Christiansen.

        The purpose of EWK2UnitTestBase::loadUrlSync() is to load
        a URL in the view and wait synchronously for the load to finish.
        The current implementation uses the "load,progress" signal to
        detect when the load is finished, which is inefficient because
        it gets emitted several times.

        It is better to wait for the "load,finished" signal which gets
        emitted only once when the load is complete.

        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::onLoadFinished):
        (EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
        (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
        (EWK2UnitTestBase):

2012-07-19  MORITA Hajime  <morrita@google.com>

        [Refactoring] Replace Node's Document pointer with a TreeScope pointer
        https://bugs.webkit.org/show_bug.cgi?id=59816

        Reviewed by Ryosuke Niwa.

        * win/WebKit2.def: Added newly exported symbols.
        * win/WebKit2CFLite.def: Ditto.

2012-07-19  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL] [WK2] Add methods to get/set a custom text encoding
        https://bugs.webkit.org/show_bug.cgi?id=90604

        Reviewed by Kenneth Rohde Christiansen.

        Add methods to get/set custom character encoding.

        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (ewk_view_setting_encoding_custom_get):
        (ewk_view_setting_encoding_custom_set):
        * UIProcess/API/efl/ewk_view.h:

2012-07-19  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Unreviewed. Fix build break because of changing parameter type of
        vibration virtual function on EFL port.

        * WebProcess/WebCoreSupport/WebVibrationClient.cpp:
        (WebKit::WebVibrationClient::vibrate):
        * WebProcess/WebCoreSupport/WebVibrationClient.h:
        (WebVibrationClient):

2012-07-19  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [WK2] Add Vibration API integration to WebContext and WebPage
        https://bugs.webkit.org/show_bug.cgi?id=91081

        Reviewed by Anders Carlsson.

        Integrate Vibration API to WebPage, WebContext and properly route
        messages to the WebVibrationProxy.

        * UIProcess/API/C/WKContext.cpp:
        (WKContextGetVibration):
        * UIProcess/API/C/WKContext.h:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::disconnectProcess):
        (WebKit::WebContext::didReceiveMessage):
        * UIProcess/WebContext.h:
        (WebKit):
        (WebContext):
        (WebKit::WebContext::vibrationProxy):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):

2012-07-19  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] Enable CSS shaders in Qt (software mode)
        https://bugs.webkit.org/show_bug.cgi?id=85140

        Reviewed by Simon Hausmann.

        Add CSSCustomFilterEnabled to QWebPreferences. It's disabled by default.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        * UIProcess/API/qt/qwebpreferences_p_p.h:

2012-07-19  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] Enable CSS shaders in Qt (software mode)
        https://bugs.webkit.org/show_bug.cgi?id=85140

        Reviewed by Simon Hausmann.

        Add CSSCustomFilterEnabled to QWebPreferences. It's disabled by default.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        * UIProcess/API/qt/qwebpreferences_p_p.h:

2012-07-19  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt][WK2] Map the elementRect exposed in QML to the view for popup menu
        https://bugs.webkit.org/show_bug.cgi?id=91645

        Reviewed by Simon Hausmann.

        This way the geometry of the QML item is still sensible even if we panned
        and zoomed.

        * UIProcess/qt/WebPopupMenuProxyQt.cpp:
        (ItemSelectorContextObject):
        (WebKit::ItemSelectorContextObject::elementRect):
        (WebKit::ItemSelectorContextObject::ItemSelectorContextObject):
        (WebKit::WebPopupMenuProxyQt::showPopupMenu):

2012-07-19  Zoltan Nyul  <zoltan.nyul@intel.com>

        [EFL][WK2] Using different cache directory for each WTR process
        https://bugs.webkit.org/show_bug.cgi?id=91719

        Reviewed by Kenneth Rohde Christiansen.

        Make sure we return a valid application cache directory in
        WebContextEfl.

        * UIProcess/efl/WebContextEfl.cpp:
        (WebKit::WebContext::applicationCacheDirectory):

2012-07-18  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] EFL should use DownloadSoup instead of defining DownloadEfl
        https://bugs.webkit.org/show_bug.cgi?id=91602

        Reviewed by Kenneth Rohde Christiansen.

        Reuse WebProcess/Downloads/soup/DownloadSoup.cpp in EFL port
        instead of redefining our own DownloadEfl.cpp. The EFL port
        is also using libsoup so it is best to avoid code duplication.

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * PlatformEfl.cmake:
        * WebProcess/Downloads/Download.h:
        (WebKit):
        (Download):
        * WebProcess/Downloads/efl/DownloadEfl.cpp: Removed.
        * WebProcess/Downloads/efl/DownloadSoupErrorsEfl.cpp: Added.
        (WebKit):
        (WebKit::platformDownloadNetworkError):
        (WebKit::platformDownloadDestinationError):
        * WebProcess/Downloads/efl/FileDownloaderEfl.cpp: Removed.
        * WebProcess/Downloads/efl/FileDownloaderEfl.h: Removed.
        * WebProcess/Downloads/gtk/DownloadSoupErrorsGtk.cpp: Added.
        (WebKit):
        (WebKit::platformDownloadNetworkError):
        (WebKit::platformDownloadDestinationError):
        * WebProcess/Downloads/soup/DownloadSoup.cpp: Make the code
        compile for other ports than GTK.
        (WebKit::DownloadClient::didReceiveResponse):
        (WebKit::DownloadClient::didReceiveData):
        (WebKit::DownloadClient::didFail):
        (WebKit::Download::continueWithoutCredential):
        (WebKit):
        (WebKit::Download::useCredential):
        (WebKit::Download::cancelAuthenticationChallenge):
        * WebProcess/Downloads/soup/DownloadSoupErrors.h: Added.
        (WebKit):

2012-07-18  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add C API for Network Information API
        https://bugs.webkit.org/show_bug.cgi?id=90762

        Reviewed by Kenneth Rohde Christiansen.

        Add C API for WKNetworkInfo and WKNetworkInfoManager
        so that they can be used by the client.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/C/WKContext.cpp:
        (WKContextGetNetworkInfoManager):
        * UIProcess/API/C/WKContext.h:
        * UIProcess/API/C/WKNetworkInfo.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKNetworkInfoManager.cpp.
        (WKNetworkInfoGetTypeID):
        (WKNetworkInfoCreate):
        * UIProcess/API/C/WKNetworkInfo.h: Copied from Source/WebKit2/UIProcess/API/C/WKNetworkInfoManager.cpp.
        * UIProcess/API/C/WKNetworkInfoManager.cpp:
        (WKNetworkInfoManagerSetProvider):
        (WKNetworkInfoManagerProviderDidChangeNetworkInformation):
        * UIProcess/API/C/WKNetworkInfoManager.h:

2012-07-18  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] ewk_cookie_manager_persistent_storage_set is not exported
        https://bugs.webkit.org/show_bug.cgi?id=91647

        Reviewed by Gustavo Noronha Silva.

        Properly export ewk_cookie_manager_persistent_storage_set in
        ewk_cookie_manager.h by using EAPI.

        * UIProcess/API/efl/ewk_cookie_manager.h:

2012-07-18  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Add central error management to EFL port
        https://bugs.webkit.org/show_bug.cgi?id=91598

        Reviewed by Kenneth Rohde Christiansen.

        Make use of ErrorsEfl header from WebCore in
        WebKit2, for Ewk_Web_Error and WebErrorsEfl.

        * UIProcess/API/efl/ewk_web_error.cpp:
        (ewk_web_error_type_get):
        * UIProcess/API/efl/ewk_web_error.h:
        * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
        (WebKit::cancelledError):
        (WebKit::blockedError):
        (WebKit::cannotShowURLError):
        (WebKit::interruptedForPolicyChangeError):
        (WebKit::cannotShowMIMETypeError):
        (WebKit::fileDoesNotExistError):
        (WebKit::pluginWillHandleLoadError):

2012-07-18  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL] Set a theme for EFL WebKit2 unit test fixture
        https://bugs.webkit.org/show_bug.cgi?id=91618

        Reviewed by Kenneth Rohde Christiansen.

        The test fixture should load the theme generated by the build
        instead of trying to load the system theme.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
        (EWK2UnitTest::EWK2UnitTestBase::SetUp):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
        (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
        (EWK2UnitTest):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
        (EWK2UnitTestEnvironment):

2012-07-18  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] QQuickWebView shouldn't recieve mouse events while dialogs are active
        https://bugs.webkit.org/show_bug.cgi?id=91634

        Reviewed by Alexis Menard.

        One side-effect of reimplementing childMouseEventFilter() in r122438 is that it can end up
        bypassing the mouseArea mechanism used in QML dialogs and still forward some mouse events
        over to the web process. We can rely on the same m_dialogActive mechanism already used for
        touch events in there as well.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebView::childMouseEventFilter): ignore events and return early if a dialog is active.

2012-07-18  Pierre Rossi  <pierre.rossi@gmail.com>

        [Qt] Build fix for ENABLE_TOUCH_EVENTS=0

        Rubber-stamped by No'am Rosenthal.

        Add the appropriate ENABLE(TOUCH_EVENTS) where they're needed.

        * UIProcess/API/qt/raw/qrawwebview.cpp:
        * UIProcess/API/qt/raw/qrawwebview_p.h: include Platform.h so we can use the ENABLE macro.
        * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp: Also add the missing QFile include.
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::deactivateTapHighlight):

2012-07-18  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add Ewk class for cookie manager
        https://bugs.webkit.org/show_bug.cgi?id=91053

        Reviewed by Gustavo Noronha Silva.

        Add new Ewk_Cookie_Manager class to allow the client
        to set/get the cookie acceptance policy, support
        persistent cookie storage and clear cookies.

        The Ewk_Cookie_Manager instance can be retrieved
        from the Ewk_Context API.

        * 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_cookie_manager_get):
        * UIProcess/API/efl/ewk_context.h:
        * UIProcess/API/efl/ewk_cookie_manager.cpp: Added.
        (_Ewk_Cookie_Manager):
        (_Ewk_Cookie_Manager::_Ewk_Cookie_Manager):
        (ewk_cookie_manager_persistent_storage_set):
        (ewk_cookie_manager_accept_policy_set):
        (Get_Policy_Async_Data):
        (getAcceptPolicyCallback):
        (ewk_cookie_manager_async_accept_policy_get):
        (Get_Hostnames_Async_Data):
        (getHostnamesWithCookiesCallback):
        (ewk_cookie_manager_async_hostnames_with_cookies_get):
        (ewk_cookie_manager_hostname_cookies_clear):
        (ewk_cookie_manager_cookies_clear):
        (ewk_cookie_manager_free):
        (ewk_cookie_manager_new):
        * UIProcess/API/efl/ewk_cookie_manager.h: Added.
        * UIProcess/API/efl/ewk_cookie_manager_private.h: Added.

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

        [GTK] Add WebKitWebView::submit-form signal to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=91605

        Reviewed by Gustavo Noronha Silva.

        The signal is emitted when a form is about to submitted, with a
        form submission request that can be used to get the text fields
        and to continue the form submission wheh done.

        * GNUmakefile.list.am: Add new files to compilation.
        * UIProcess/API/gtk/WebKitFormClient.cpp: Added.
        (willSubmitForm): Create a WebKitFormSubmissionRequest and call
        webkitWebViewSubmitFormRequest() with the request.
        (attachFormClientToView): Add impementation for willSubmitForm
        callback.
        * UIProcess/API/gtk/WebKitFormClient.h: Added.
        * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp: Added.
        (webkit_form_submission_request_init):
        (webkitFormSubmissionRequestFinalize):
        (webkit_form_submission_request_class_init):
        (webkitFormSubmissionRequestCreate): Create a new
        WebKitFormSubmissionRequest for the given values dictionary and
        submission listener.
        (webkit_form_submission_request_get_text_fields): Create a
        GHashTable with the text fields values and return it.
        (webkit_form_submission_request_submit): Continue the form
        submission.
        * UIProcess/API/gtk/WebKitFormSubmissionRequest.h: Added.
        * UIProcess/API/gtk/WebKitFormSubmissionRequestPrivate.h: Added.
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewConstructed): Attach web view to form client.
        (webkit_web_view_class_init): Add WebKitWebView::submit-form
        signal.
        (webkitWebViewSubmitFormRequest): Emit WebKitWebView::submit-form
        signal.
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/WebKitWebViewPrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for
        WebKitFormSubmissionRequest.
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewSubmitForm):
        (beforeAll):
        * UIProcess/API/gtk/webkit2.h: Include
        WebKitFormSubmissionRequest.h.

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

        [GTK] No main resource in WebView when page has been loaded from history cache
        https://bugs.webkit.org/show_bug.cgi?id=91478

        Reviewed by Gustavo Noronha Silva.

        We are assuming that a resource loaded for the main frame that is
        provisionally loading is the main resource of the web view. However
        that's not true for pages loaded from history cache, so when you
        go back/forward webkit_web_view_get_main_resource() always returns
        NULL. We can assume that the first resource loaded for the main
        frame is the main resource of the web view when
        pageIsProvisionallyLoading is false.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewResourceLoadStarted): Make sure we always have a
        main resource for the web view.
        * UIProcess/API/gtk/tests/TestResources.cpp:
        (testWebViewResourcesHistoryCache): Test we always have a main
        resource even after going back/forward.
        (beforeAll): Add new test case.

2012-07-18  Seokju Kwon  <seokju.kwon@samsung.com>

        [EFL] Rename WebInspectorEfl.cpp as WebInspectorProxyEfl.cpp
        https://bugs.webkit.org/show_bug.cgi?id=91585

        Reviewed by Andreas Kling.

        Rename WebInspectorEfl.cpp as WebInspectorProxyEfl.cpp
        since it implements the platform specific methods of WebInspectorProxy.

        * PlatformEfl.cmake:
        * UIProcess/efl/WebInspectorProxyEfl.cpp: Renamed from Source/WebKit2/UIProcess/efl/WebInspectorEfl.cpp.
        (WebKit):
        (WebKit::WebInspectorProxy::platformCreateInspectorPage):
        (WebKit::WebInspectorProxy::platformOpen):
        (WebKit::WebInspectorProxy::platformDidClose):
        (WebKit::WebInspectorProxy::platformBringToFront):
        (WebKit::WebInspectorProxy::platformIsFront):
        (WebKit::WebInspectorProxy::platformInspectedURLChanged):
        (WebKit::WebInspectorProxy::inspectorPageURL):
        (WebKit::WebInspectorProxy::inspectorBaseURL):
        (WebKit::WebInspectorProxy::platformInspectedWindowHeight):
        (WebKit::WebInspectorProxy::platformAttach):
        (WebKit::WebInspectorProxy::platformDetach):
        (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight):

2012-07-18  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Modify the using of the QImage::Format enum to the appropriate functions from NativeImageQt
        https://bugs.webkit.org/show_bug.cgi?id=91600

        Reviewed by Andreas Kling.

        Use NativeImageQt::defaultFormatForAlphaEnabledImages() and NativeImageQt::defaultFormatForOpaqueImages()
        instead of the direct imagetypes at the appropriate places.

        * Shared/qt/ShareableBitmapQt.cpp:
        (WebKit::ShareableBitmap::createQImage):

2012-07-18  Zeno Albisser  <zeno@webkit.org>

        [Qt][WK2] Caching of ShareableSurfaces breaks tiling.
        https://bugs.webkit.org/show_bug.cgi?id=91609

        A ShareableSurface should only be cached,
        when it is GraphicsSurface based.

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/LayerTreeCoordinatorProxy.cpp:
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        * UIProcess/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):

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

        [GTK] Fix a crash due to an invalid assert
        https://bugs.webkit.org/show_bug.cgi?id=91614

        Reviewed by Xan Lopez.

        In webkitWebViewBaseContainerAdd() there's
        ASSERT(priv->inspectorView); that should be the opposite, since we
        shoulnd't have an inspector view when the inspector view is added.

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

2012-07-18  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [CMake] Make gtest a shared library
        https://bugs.webkit.org/show_bug.cgi?id=90973

        Reviewed by Daniel Bates.

        No need to link with gtest dependencies now since it is a shared library.

        * PlatformEfl.cmake:

2012-07-18  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][EFL] Add a common code using Color instead of QColor
        https://bugs.webkit.org/show_bug.cgi?id=91580

        Reviewed by Simon Hausmann.

        This patch is a subset of Efl's UI_SIDE_COMPOSITING implementation.
        drawBorder's argument is QColor. So add a common code using Color to be used by Efl.

        * UIProcess/texmap/LayerBackingStore.cpp:
        (WebKit::LayerBackingStore::paintToTextureMapper):

2012-07-17  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] Replace 0 by NULL in public headers documentation
        https://bugs.webkit.org/show_bug.cgi?id=91470

        Reviewed by Dirk Pranke.

        Use NULL instead of 0 for pointer types in public
        C headers.

        * UIProcess/API/efl/ewk_intent.h:
        * UIProcess/API/efl/ewk_intent_service.h:
        * UIProcess/API/efl/ewk_url_request.h:
        * UIProcess/API/efl/ewk_url_response.h:
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_web_resource.h:

2012-07-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Don't use deprecated soup API in WebKit2APITests/TestResources
        https://bugs.webkit.org/show_bug.cgi?id=91496

        Reviewed by Martin Robinson.

        soup_message_headers_get() is deprecated, use
        soup_message_headers_get_one() instead.

        * UIProcess/API/gtk/tests/TestResources.cpp:
        (serverCallback):

2012-07-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Fix a typo in WebKit2APITests/TestResources
        https://bugs.webkit.org/show_bug.cgi?id=91495

        Reviewed by Xan Lopez.

        * UIProcess/API/gtk/tests/TestResources.cpp:
        (testWebResourceLoading):
        (testWebResourceResponse):
        (testWebResourceMimeType):
        (testWebResourceActiveURI):

2012-07-17  Vivek Galatage  <vivekgalatage@gmail.com>

        Web Inspector: refactor InspectorController::connectFrontend() to accept InspectorFrontendChannel.
        https://bugs.webkit.org/show_bug.cgi?id=91196

        Reviewed by Pavel Feldman.

        Refactoring InspectorClients. InspectorClient::openInspectorFrontend
        now returning the InspectorFrontendChannel.

        * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
        (WebKit::WebInspectorClient::openInspectorFrontend):
        * WebProcess/WebCoreSupport/WebInspectorClient.h:
        (WebInspectorClient):

2012-07-17  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Paste primary selection when middle clicking in X11 WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=91411

        Reviewed by Xan Lopez.

        Handle middle click events to paste primary selection as expected
        in any X11 application.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::handleMouseEvent): Call handleMousePressedEvent() for GTK+
        platform.
        * WebProcess/WebPage/WebPage.h:
        (WebPage): Add handleMousePressedEvent() for GTK+ platform.
        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
        (WebKit::WebPage::handleMousePressedEvent): Handle middle click
        events to paste primary selection like we do in WebKit1.

2012-07-17  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL] Move codes related to theme setting from Widget to RenderTheme
        https://bugs.webkit.org/show_bug.cgi?id=89842

        Reviewed by Kenneth Rohde Christiansen.

        * CMakeLists.txt: Added html/shadow to WebKit_INCLUDE_DIRECTORIES.
        * WebProcess/WebPage/efl/WebPageEfl.cpp:
        (WebKit::WebPage::setThemePath): Called RenderThemeEfl::setThemePath instead of setting theme in FrameView.

2012-07-17  David Barr  <davidbarr@chromium.org>

        Introduce ENABLE_CSS_IMAGE_ORIENTATION compile flag
        https://bugs.webkit.org/show_bug.cgi?id=89055

        Reviewed by Kent Tamura.

        The css3-images module is at candidate recommendation.
        http://www.w3.org/TR/2012/CR-css3-images-20120417/#the-image-orientation

        Add a configuration option for CSS image-orientation support, disabling it by default.

        * Configurations/FeatureDefines.xcconfig:

2012-07-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Add RegisterProtocolHandlerClient to the Modules/protocolhandler
        https://bugs.webkit.org/show_bug.cgi?id=90940

        Reviewed by Hajime Morita.

        As a step to let protocol handler be moved to the modules, RegisterProtocolHandlerClient needs
        to be added to the Modules/protocolhandler. Because ChromeClient has some virtual functions for
        protocol handlers, virtual functions should be moved to RegisterProtocolHandlerClient.

        In order to support this, WebRegisterProtocolHandlerClient class is added. However, this is not implemented yet.
        In addition, existing virtual functions in WebChromeClient are moved to WebRegisterProtocolHandlerClient.

        * WebProcess/WebCoreSupport/WebChromeClient.h:
        * WebProcess/WebCoreSupport/WebRegisterProtocolHandlerClient.h: Added.
        (WebKit):
        (WebRegisterProtoclHandlerClient):
        (WebKit::WebRegisterProtoclHandlerClient::isProtocolHandlerRegistered):
        (WebKit::WebRegisterProtoclHandlerClient::unregisterProtocolHandler):

2012-07-16  Pete Williamson  <petewil@google.com>

        Export the iconURL list to make it available to the Internals class for testing
        https://bugs.webkit.org/show_bug.cgi?id=88665

        Reviewed by Kent Tamura.

        * win/WebKit2.def: export the DocumentL::iconURLs function

2012-07-16  Hajime Morrita  <morrita@chromium.org>

        WebCore needs WEBCORE_TESTING macro to mark methods being exported for testing.
        https://bugs.webkit.org/show_bug.cgi?id=90764

        Reviewed by Adam Barth.

        Removed symbols which are now covered by WEBCORE_TESTING.

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

2012-07-16  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement decidePolicyForResponse in policy client
        https://bugs.webkit.org/show_bug.cgi?id=91401

        Reviewed by Kenneth Rohde Christiansen.

        Provide implementation for decidePolicyForResponse callback
        in WebKit2 EFL's policy client.

        * UIProcess/API/efl/ewk_view_policy_client.cpp:
        (decidePolicyForResponseCallback):
        (ewk_view_policy_client_attach):

2012-07-16  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Add APIs to support theme.
        https://bugs.webkit.org/show_bug.cgi?id=90107

        Reviewed by Hajime Morita.

        RenderThemeEfl uses edj file to render native theme of form elements.
        This patch provides default theme and a way to change edj theme file for
        WebKit2/Efl.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (ewk_view_base_add):
        (ewk_view_theme_set):
        (ewk_view_theme_get):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/efl/WebPageProxyEfl.cpp:
        (WebKit::WebPageProxy::setThemePath):
        * WebProcess/WebPage/WebPage.h:
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/efl/WebPageEfl.cpp:
        (WebKit::WebPage::setThemePath):

2012-07-16  Kihong Kwon  <kihong.kwon@samsung.com>

        Remove setController from BatteryClient
        https://bugs.webkit.org/show_bug.cgi?id=90944

        Reviewed by Adam Barth.

        Remove WebBatteryClient::setController function.

        * WebProcess/WebCoreSupport/WebBatteryClient.cpp:
        * WebProcess/WebCoreSupport/WebBatteryClient.h:
        (WebBatteryClient):

2012-07-16  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make Ewk_Navigation_Policy_Decision ref counted
        https://bugs.webkit.org/show_bug.cgi?id=91343

        Reviewed by Antonio Gomes.

        Make Ewk_Navigation_Policy_Decision ref counted so that the
        client can make navigation policy decisions asynchronously
        by ref'ing the Ewk_Navigation_Policy_Decision object passed
        with the "policy,*" signals.

        * 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_decision_ref):
        (ewk_navigation_policy_decision_unref):
        * UIProcess/API/efl/ewk_navigation_policy_decision.h:
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_policy_client.cpp:
        (decidePolicyForNavigationAction):
        (decidePolicyForNewWindowAction):

2012-07-16  Zoltan Horvath  <zoltan@webkit.org>

        [Qt] Change NativeImagePtr from QPixmap* to QImage*
        https://bugs.webkit.org/show_bug.cgi?id=88785

        Reviewed by Simon Hausmann.

        Since we use raster engine there is no difference between QPixmap and QImage, so we are going
        to use QImage everywhere where it is possible. This refactoring contains the change of the
        NativeImagePtr typedef from QPixmap* to QImage* and covers the related modifications.

        Part of the change is similar to Viatcheslav Ostapenko's internal work.

        Covered by existing tests.

        * Shared/qt/ShareableBitmapQt.cpp:
        (WebKit::ShareableBitmap::createImage):
        * UIProcess/qt/QtWebIconDatabaseClient.cpp:
        (WebKit::QtWebIconDatabaseClient::iconImageForPageURL):
        * WebProcess/WebCoreSupport/qt/WebDragClientQt.cpp:
        (WebKit::convertQImageToShareableBitmap):
        (WebKit::WebDragClient::startDrag):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::adoptImageBackingStore):

2012-07-16  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix make distcheck.

        * UIProcess/API/gtk/tests/GNUmakefile.am: Add test resources to
        EXTRA_DIST.

2012-07-15  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Define destructors for Ewk structures
        https://bugs.webkit.org/show_bug.cgi?id=91338

        Reviewed by Kentaro Hara.

        Add destructors to Ewk structures and move
        memory freeing code from *_free() or *_unref()
        functions to the destructors.

        * UIProcess/API/efl/ewk_intent.cpp:
        (_Ewk_Intent::_Ewk_Intent):
        (_Ewk_Intent):
        (_Ewk_Intent::~_Ewk_Intent):
        (ewk_intent_unref):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (_Ewk_Intent_Service):
        (_Ewk_Intent_Service::~_Ewk_Intent_Service):
        (ewk_intent_service_unref):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::~_Ewk_Navigation_Policy_Decision):
        (ewk_navigation_policy_decision_free):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (_Ewk_Url_Request):
        (_Ewk_Url_Request::~_Ewk_Url_Request):
        (ewk_url_request_unref):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (_Ewk_Url_Response):
        (_Ewk_Url_Response::~_Ewk_Url_Response):
        (ewk_url_response_unref):
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::~_Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        * UIProcess/API/efl/ewk_web_error.cpp:
        (_Ewk_Web_Error):
        (_Ewk_Web_Error::~_Ewk_Web_Error):
        (ewk_web_error_free):
        * UIProcess/API/efl/ewk_web_resource.cpp:
        (_Ewk_Web_Resource):
        (_Ewk_Web_Resource::~_Ewk_Web_Resource):
        (ewk_web_resource_unref):

2012-07-14  Eric Carlson  <eric.carlson@apple.com>

        Enable AVCF hardware video decoding
        https://bugs.webkit.org/show_bug.cgi?id=90015
        <rdar://problem/10770317>

        Reviewed by Anders Carlsson.

        * DerivedSources.make: Define HAVE_AVCF if necessary.

        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit):
        (WebKit::WebChromeClient::graphicsDeviceAdapter): New, return the layer tree host's
            graphics adapter.
        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebChromeClient):
        * WebProcess/WebPage/LayerTreeHost.h:
        (WebCore):
        (LayerTreeHost):
        (WebKit::LayerTreeHost::graphicsDeviceAdapter): New, default implementation.

        * WebProcess/WebPage/ca/win/LayerTreeHostCAWin.h:
        (LayerTreeHostCAWin):

2012-07-13  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [CMake] Proper handling of ENABLE_API_TESTS build option
        https://bugs.webkit.org/show_bug.cgi?id=91221

        Reviewed by Rob Buis.

        Build unit tests only if ENABLE_API_TESTS is set.

        * PlatformEfl.cmake:

2012-07-13  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Make new public Ewk headers as installable
        https://bugs.webkit.org/show_bug.cgi?id=91232

        Reviewed by Antonio Gomes.

        Make new public Ewk headers installable.

        * PlatformEfl.cmake:

2012-07-13  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Implement disk cache in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=90797

        Reviewed by Xan Lopez.

        * WebProcess/gtk/WebProcessGtk.cpp:
        (WebKit::getCacheDiskFreeSize): Use an ASSERT instead of an early
        return since the cache feature is now always added to the session.
        (WebKit::WebProcess::platformSetCacheModel): Get the cache from
        the session and set the maximum cache size as computed by
        calculateCacheSizes().
        (WebKit::WebProcess::platformClearResourceCaches): Call
        soup_cache_clear().
        (WebKit::WebProcess::platformTerminate): Make sure all pending
        data is saved to the disk before the web process finishes.
        * WebProcess/gtk/WebProcessMainGtk.cpp:
        (WebKit::WebProcessMainGtk): Create a SoupCache feature and add it
        to the default SoupSession.

2012-07-13  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Fix disk cache size computation in WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=91226

        Reviewed by Xan Lopez.

        We are passing the free disk space value in bytes to
        calculateCacheSizes() which expects values in MB.

        * WebProcess/gtk/WebProcessGtk.cpp:
        (WebKit::WebProcess::platformSetCacheModel):

2012-07-13  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] WebKit2 crash when going back/forward
        https://bugs.webkit.org/show_bug.cgi?id=91220

        Reviewed by Xan Lopez.

        For some reason when a page is loaded from the backforward list,
        when the didCommitLoadForFrame callback is called for the main
        frame, the callback didInitiateLoadForResource hasn't been called
        yet, so we don't even have a main resource at that point. We were
        assuming we always had a main resource with a response. For now we
        just check whether we have a resource before trying to set the
        certificate to fix the crash, but we need to figue out why this is
        happening an how to properly fix it.

        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (didCommitLoadForFrame): Check whether we have a main resource
        before setting the certificate.

2012-07-13  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Use eina stringsharing for Ewk_Web_Resource's url
        https://bugs.webkit.org/show_bug.cgi?id=91200

        Reviewed by Kenneth Rohde Christiansen.

        Use eina stringsharing for Ewk_Web_Resource's url
        for consistency.

        * UIProcess/API/efl/ewk_web_resource.cpp:
        (_Ewk_Web_Resource):
        (_Ewk_Web_Resource::_Ewk_Web_Resource):
        (ewk_web_resource_unref):
        (ewk_web_resource_url_get):
        * UIProcess/API/efl/ewk_web_resource.h:

2012-07-13  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] WebKitWebView::mouse-target-changed is not emitted when moved to/from edtiable content
        https://bugs.webkit.org/show_bug.cgi?id=91216

        Reviewed by Xan Lopez.

        The problem is that the function to check whether two hit test
        results are equal doesn't check the editable flag.

        * UIProcess/API/gtk/WebKitHitTestResult.cpp:
        (webkitHitTestResultCompare): Check also the editable flag.

2012-07-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL] Add *explicit* keyword to constructor which has a parameter
        https://bugs.webkit.org/show_bug.cgi?id=91207

        Reviewed by Zoltan Herczeg.

        Add *explicit* keyword to contructor which has a parameter in order to avoid implicit type conversion.

        * WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h:
        (WebFrameNetworkingContext::WebFrameNetworkingContext):

2012-07-13  Zeno Albisser  <zeno@webkit.org>

        [Qt][WK2] Implement GraphicsSurface for Linux/GLX.
        https://bugs.webkit.org/show_bug.cgi?id=90881

        Add a GLX based GraphicsSurface implementation for Linux.

        Reviewed by Noam Rosenthal.

        * Shared/ShareableSurface.cpp:
        (WebKit::ShareableSurface::create):
            Only create a GraphicsSurface from a ShareableSurface::Handle
            in case the Handle contains a valid GraphicsSurface token.
            Otherwise fall back to creating a ShareableBitmap.
        * UIProcess/LayerTreeCoordinatorProxy.cpp:
        (WebKit::createLayerTileUniqueKey):
            Create a unique key for a surface based on tileID and layerID.
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
            Even when GraphicsSurface is enabled, not all ShareableSurfaces
            will necessarily be backed by a GraphicsSurface. In case of
            a ShareableSurface being backed by a ShareableBitmap instead,
            the GraphicsSurface token will always be null.
            So instead of using the GraphicsSurface token as a key for
            storing surfaces in a map, we create a unique key from
            layerID and tileID.
        * UIProcess/LayerTreeCoordinatorProxy.h:
        (LayerTreeCoordinatorProxy):

2012-07-12  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to get HTTPS status to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=91100

        Reviewed by Martin Robinson.

        Add webkit_uri_response_get_https_status() to return
        GTlsCertificate and GTlsCertificateFlags with information about
        the SSL certificate and the possible errors with the certificate.

        * GNUmakefile.list.am: Add new files to compilation.
        * PlatformEfl.cmake: Ditto.
        * Shared/efl/PlatformCertificateInfo.h: Removed.
        * Shared/soup/PlatformCertificateInfo.cpp: Added.
        (WebKit::PlatformCertificateInfo::PlatformCertificateInfo):
        (WebKit::PlatformCertificateInfo::~PlatformCertificateInfo):
        (WebKit::PlatformCertificateInfo::encode): Encode the
        GTlsCertificate and GTlsCertificateFlags.
        (WebKit::PlatformCertificateInfo::decode): Decode
        PlatformCertificateInfo into a GTlsCertificate and GTlsCertificateFlags.
        * Shared/soup/PlatformCertificateInfo.h: Renamed from Source/WebKit2/Shared/gtk/PlatformCertificateInfo.h.
        (WebKit::PlatformCertificateInfo::certificate): Return the certificate.
        (WebKit::PlatformCertificateInfo::tlsErrors): Return the TLS errors
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (didCommitLoadForFrame): Set the certificate of the current frame
        to the response of the main resource.
        * UIProcess/API/gtk/WebKitURIResponse.cpp:
        (webkit_uri_response_get_https_status): Return GTlsCertificate and
        GTlsCertificateFlags.
        (webkitURIResponseSetCertificateInfo): Update the internal
        ResourceResponse with the GTlsCertificate and GTlsCertificateFlags
        of the given PlatformCertificateInfo.
        * UIProcess/API/gtk/WebKitURIResponse.h:
        * UIProcess/API/gtk/WebKitURIResponsePrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
        * UIProcess/API/gtk/tests/GNUmakefile.am:
        * UIProcess/API/gtk/tests/TestMain.h:
        (Test::getResourcesDir): Helper function to get the resources
        directory of the WebKit2 API tests.
        * UIProcess/API/gtk/tests/TestSSL.cpp: Added.
        (testSSL):
        (serverCallback):
        (beforeAll):
        (afterAll):
        * UIProcess/API/gtk/tests/WebKitTestServer.cpp:
        (WebKitTestServer::WebKitTestServer): Add support por SSL test
        servers.
        * UIProcess/API/gtk/tests/WebKitTestServer.h:
        (WebKitTestServer): Add ssl parameter to create a HTTPS server.
        * UIProcess/API/gtk/tests/resources/test-cert.pem: Added.
        * UIProcess/API/gtk/tests/resources/test-key.pem: Added.

2012-07-12  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Facilitate debugging of the Web Process
        https://bugs.webkit.org/show_bug.cgi?id=90768

        Reviewed by Kenneth Rohde Christiansen.

        The EFL port now checks if the WEB_PROCESS_CMD_PREFIX
        environment variable is set and uses it as prefix
        when spawning the Web process if it is. This is used
        for debugging purposes with prefixes such as:
        "xterm -title renderer -e gdb --args".

        * UIProcess/Launcher/ProcessLauncher.h:
        (LaunchOptions):
        * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
        (WebKit::ProcessLauncher::launchProcess):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::connect):

2012-07-12  Timothy Hatcher  <timothy@apple.com>

        Make the "Inspect Element" context menu item appear in nightly builds again.

        https://webkit.org/b/89323

        Reviewed by Anders Carlsson.

        * Shared/API/c/WKContextMenuItem.cpp:
        (compatibleContextMenuItemTag): Added. Checks for the specific version of Safari 6 that needs the
        tag fixed up to match values it expects.
        (WKContextMenuItemGetTag): On Mac platforms call compatibleContextMenuItemTag to fix up the tag
        before returning it.
        * Shared/API/c/WKContextMenuItemTypes.h: Fix the order of the WKContextMenuItemTag enum
        to be binary compatible with older versions of WebKit2.

2012-07-12  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [EFL] Port the test framework to WebKit 2
        https://bugs.webkit.org/show_bug.cgi?id=90606

        Reviewed by Kenneth Rohde Christiansen.

        This port of EFL's WebKit 1 test framework uses a more gtest-ish
        way of writing tests and it is based on a test fixture that loads a
        page synchronously as convenience (if needed). This base fixture can be
        easily extended by just inheriting from it.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: Added.
        (EWK2UnitTest):
        (EWK2UnitTest::onLoadProgress):
        (EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
        (EWK2UnitTest::EWK2UnitTestBase::SetUp):
        (EWK2UnitTest::EWK2UnitTestBase::TearDown):
        (EWK2UnitTest::EWK2UnitTestBase::loadUrlSync):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h: Added.
        (EWK2UnitTest):
        (EWK2UnitTestBase):
        (EWK2UnitTest::EWK2UnitTestBase::setLoadProgress):
        (EWK2UnitTest::EWK2UnitTestBase::webView):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: Added.
        (EWK2UnitTest):
        (EWK2UnitTest::EWK2UnitTestEnvironment::EWK2UnitTestEnvironment):
        (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTestPageUrl):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h: Added.
        (EWK2UnitTest):
        (EWK2UnitTestEnvironment):
        (EWK2UnitTest::EWK2UnitTestEnvironment::useX11Window):
        (EWK2UnitTest::EWK2UnitTestEnvironment::defaultWidth):
        (EWK2UnitTest::EWK2UnitTestEnvironment::defaultHeight):
        * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestMain.cpp: Added.
        (parseArguments):
        (main):
        * UIProcess/API/efl/tests/resources/default_test_page.html: Added.
        * UIProcess/API/efl/tests/test_ewk2_view.cpp: Added.
        (TEST_F):

2012-07-12  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add missing Network Information API integration to WebContext and WebPage
        https://bugs.webkit.org/show_bug.cgi?id=90781

        Reviewed by Anders Carlsson.

        Integrate Network Information API to WebPage, WebContext and
        properly route messages to the WebNetworkInfoManagerProxy.
        Without this, the Network Information tests are crashing for
        WebKit2.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::disconnectProcess):
        (WebKit::WebContext::didReceiveMessage):
        (WebKit::WebContext::didReceiveSyncMessage):
        * UIProcess/WebContext.h:
        (WebKit):
        (WebContext):
        (WebKit::WebContext::networkInfoManagerProxy):
        * UIProcess/WebNetworkInfoManagerProxy.cpp:
        (WebKit::WebNetworkInfoManagerProxy::didReceiveSyncMessage):
        (WebKit):
        * UIProcess/WebNetworkInfoManagerProxy.h:
        (WebNetworkInfoManagerProxy):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        (WebKit::WebProcessProxy::didReceiveSyncMessage):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):

2012-07-12  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Move TextureMapperAnimation and texmap/LayerTransform to platform/graphics
        https://bugs.webkit.org/show_bug.cgi?id=91111

        Reviewed by Kenneth Rohde Christiansen.

        Include the new filenames.

        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h:
        (WebGraphicsLayer):

2012-07-12  Adenilson Cavalcanti  <cavalcantii@gmail.com>

        [Qt][WK2] Implement web notifications support
        https://bugs.webkit.org/show_bug.cgi?id=80702

        Reviewed by Noam Rosenthal.

        Adding a new type of permission request for Desktop Notifications (plus required code
        to register the handle for this requests).

        * UIProcess/API/qt/qwebpermissionrequest.cpp:
        (QWebPermissionRequestPrivate::QWebPermissionRequestPrivate):
        (QWebPermissionRequestPrivate):
        (QWebPermissionRequest::create):
        (QWebPermissionRequest::QWebPermissionRequest):
        (QWebPermissionRequest::setAllow):
        * UIProcess/API/qt/qwebpermissionrequest_p.h:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_notification.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/notification.html: Added.
        * UIProcess/qt/QtWebPageUIClient.cpp:
        (WebKit::QtWebPageUIClient::QtWebPageUIClient):
        (WebKit::QtWebPageUIClient::policyForNotificationPermissionRequest):
        (WebKit):
        * UIProcess/qt/QtWebPageUIClient.h:

2012-07-12  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL][WK2] Browser crashes running BatteryStatus tests.
        https://bugs.webkit.org/show_bug.cgi?id=91065

        Reviewed by Kentaro Hara.

        clientInfo was incorrectly casted to BatteryProviderEfl in helper
        function. This patch fixes the issue.

        * UIProcess/API/efl/BatteryProvider.cpp:
        (toBatteryProvider):

2012-07-12  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] [WK2] regression(r122411) Crashes in Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=91068

        Reviewed by Kentaro Hara.

        Avoid using calloc() to allocate memory for structures
        and use new operator instead. calloc() causes unwanted
        behavior when allocing a structure which contains
        non-pointer types (e.g. a HashMap) and leads to
        crashes.

        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context::_Ewk_Context):
        * UIProcess/API/efl/ewk_intent.cpp:
        (_Ewk_Intent):
        (_Ewk_Intent::_Ewk_Intent):
        (ewk_intent_unref):
        (ewk_intent_new):
        * UIProcess/API/efl/ewk_intent_service.cpp:
        (_Ewk_Intent_Service):
        (_Ewk_Intent_Service::_Ewk_Intent_Service):
        (ewk_intent_service_unref):
        (ewk_intent_service_new):
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
        (_Ewk_Navigation_Policy_Decision):
        (_Ewk_Navigation_Policy_Decision::_Ewk_Navigation_Policy_Decision):
        (ewk_navigation_policy_decision_free):
        (ewk_navigation_policy_decision_new):
        * UIProcess/API/efl/ewk_url_request.cpp:
        (_Ewk_Url_Request):
        (_Ewk_Url_Request::_Ewk_Url_Request):
        (ewk_url_request_unref):
        (ewk_url_request_new):
        * UIProcess/API/efl/ewk_url_response.cpp:
        (_Ewk_Url_Response):
        (_Ewk_Url_Response::_Ewk_Url_Response):
        (ewk_url_response_unref):
        (ewk_url_response_new):
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_Ewk_View_Private_Data::_Ewk_View_Private_Data):
        (_ewk_view_priv_new):
        (_ewk_view_priv_del):
        * UIProcess/API/efl/ewk_web_error.cpp:
        (_Ewk_Web_Error):
        (_Ewk_Web_Error::_Ewk_Web_Error):
        (ewk_web_error_free):
        (ewk_web_error_new):
        * UIProcess/API/efl/ewk_web_resource.cpp:
        (_Ewk_Web_Resource):
        (_Ewk_Web_Resource::_Ewk_Web_Resource):
        (ewk_web_resource_unref):
        (ewk_web_resource_new):

2012-07-11  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] ASSERT: "!m_viewportItem->isMoving()" in QtViewportHandler::flickMoveEnded()
        https://bugs.webkit.org/show_bug.cgi?id=90875

        Reviewed by Kenneth Rohde Christiansen.

        Since MultiPointTouchArea and PinchArea use the childMouseEventFilter
        method to filter touch events and because Flickable filters child mouse
        events the canvas calls this function before propagating the touch event
        to the WebView. Since Flickable does not accept touch events the canvas
        tries to propagate a synthesized mouse event through the base class
        childMouseEventFilter function which is accepted by Flickable and
        interferes with the input events we send to Flicakble hence messes up
        the internal state of the WebView.
        This patch reimplements the virtual childMouseEventFilter method so that all
        the mouse and touch events can be processed by WebKit before they arrive to
        Flickable.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebView::childMouseEventFilter):
        * UIProcess/API/qt/qquickwebview_p.h:

2012-07-12  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix GTK+ debug build after r122425.

        * WebProcess/Cookies/soup/WebKitSoupCookieJarSqlite.cpp:
        (webkitSoupCookieJarSqliteNew):

2012-07-12  Sergio Villar Senin  <svillar@igalia.com>

        [WK2] Performance issue in FindController::findString
        https://bugs.webkit.org/show_bug.cgi?id=78132

        Reviewed by Anders Carlsson.

        FindController should not unmark all text matches by default. It
        will be done only if the string is not found or if
        markAllTextMatches() is called. This will allow clients to look
        for the next/previous without having to unmark() + mark() all the
        text matches for every single search operation.

        * UIProcess/API/gtk/WebKitFindController.cpp:
        (webKitFindControllerPerform):
        (webkit_find_controller_search_next):
        (webkit_find_controller_search_previous):
        * WebProcess/WebPage/FindController.cpp:
        (WebKit::FindController::updateFindUIAfterPageScroll):
        (WebKit::FindController::findString):

2012-07-12  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Add policy client to Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=90953

        Reviewed by Kenneth Rohde Christiansen.

        Emit new "policy,decision,navigation" and "policy,decision,new,window"
        on the Ewk_View when policy decisions should be taken by the client.

        A new Ewk_Navigation_Policy_Decision type is introduced to provide
        information about the navigation request and make a decision.
        By default, the navigation request is accepted.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_navigation_policy_decision.cpp: Added.
        (_Ewk_Navigation_Policy_Decision):
        (ewk_navigation_policy_decision_free):
        (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):
        (ewk_navigation_policy_decision_new):
        * UIProcess/API/efl/ewk_navigation_policy_decision.h: Added.
        * UIProcess/API/efl/ewk_navigation_policy_decision_private.h: Added.
        * UIProcess/API/efl/ewk_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_navigation_policy_decision):
        (ewk_view_new_window_policy_decision):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_policy_client.cpp: Added.
        (toEwkView):
        (decidePolicyForNavigationAction):
        (decidePolicyForNewWindowAction):
        (ewk_view_policy_client_attach):
        * UIProcess/API/efl/ewk_view_policy_client_private.h: Added.
        * UIProcess/API/efl/ewk_view_private.h:

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

        [GTK] Add webkit_cookie_manager_set_persistent_storage() to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=83016

        Reviewed by Martin Robinson.

        Add a custom implementation of SoupCookieJarSqlite based on
        libsoup code but using WebCore SQLite classes. SoupCookieJarSqlite
        is part of libsoup-gnome, it's not a lot of code and it doesn't
        change often, so it's better to simply have our own implementation
        instead of making this important feature depend on an optional
        dependency. There are plans to move the implementation to libsoup,
        if that eventually happens we will remove our code to use libsoup
        directly.

        * GNUmakefile.am: Add new dirs to include path.
        * GNUmakefile.list.am: Add new files to compilation.
        * PlatformEfl.cmake: Ditto.
        * Shared/soup/SoupCookiePersistentStorageType.h: Added.
        * UIProcess/API/gtk/WebKitCookieManager.cpp:
        (webkit_cookie_manager_set_persistent_storage): Set a persistent
        storage for cookies.
        * UIProcess/API/gtk/WebKitCookieManager.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols
        * UIProcess/API/gtk/tests/TestCookieManager.cpp:
        (testCookieManagerPersistentStorage):
        (serverCallback):
        (beforeAll):
        (afterAll):
        * UIProcess/WebCookieManagerProxy.h:
        (WebCookieManagerProxy): Add setCookiePersistentStorage() method
        when using soup.
        * UIProcess/soup/WebCookieManagerProxySoup.cpp: Added.
        (WebKit::WebCookieManagerProxy::setCookiePersistentStorage): Send
        SetCookiePersistentStorage message to the web process.
        * WebProcess/Cookies/WebCookieManager.h:
        (WebCookieManager): Add setCookiePersistentStorage() method when
        using soup.
        * WebProcess/Cookies/WebCookieManager.messages.in: Add
        SetCookiePersistentStorage message when using soup.
        * WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:
        (WebKit::WebCookieManager::setCookiePersistentStorage): Create a
        new cookie jar for the given filename and storage type and add it
        to the soup session.
        * WebProcess/Cookies/soup/WebKitSoupCookieJarSqlite.cpp: Added.
        (webkitSoupCookieJarSqliteOpenDatabase): Open SQLite database.
        (webkitSoupCookieJarSqliteCreateTable): Create moz_cookies if it
        doesn't exist.
        (webkitSoupCookieJarSqliteLoad): Load the initial set of cookies
        from the database.
        (webkitSoupCookieJarSqliteInsertCookie): Insert a new cookie into
        the database.
        (webkitSoupCookieJarSqliteDeleteCookie): Delete an exising cookie
        from the database.
        (webkitSoupCookieJarSqliteChanged): Insert/delete cookies
        depending on the change.
        (webkitSoupCookieJarSqliteFinalize):
        (webkit_soup_cookie_jar_sqlite_init):
        (webkit_soup_cookie_jar_sqlite_class_init):
        (webkitSoupCookieJarSqliteNew):
        * WebProcess/Cookies/soup/WebKitSoupCookieJarSqlite.h: Added.

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

        [WK2][EFL] Ewk_View should provide more resource loading notifications
        https://bugs.webkit.org/show_bug.cgi?id=90601

        Reviewed by Antonio Gomes.

        Add new "resource,request,sent", "resource,request,response",
        "resource,request,failed" and "resource,request,finished" to
        Ewk_View in order to notify the clients of the main resource
        load state changes.

        Introduce new Ewk_Url_Response type that is used to provide
        information to the clients regarding the resource load
        responses that are received.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_url_response.cpp: Added.
        (_Ewk_Url_Response):
        (ewk_url_response_ref):
        (ewk_url_response_unref):
        (ewk_url_response_url_get):
        (ewk_url_response_status_code_get):
        (ewk_url_response_mime_type_get):
        (ewk_url_response_new):
        * UIProcess/API/efl/ewk_url_response.h: Added.
        * UIProcess/API/efl/ewk_url_response_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (_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.h:
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp:
        (toEwkView):
        (didInitiateLoadForResource):
        (didSendRequestForResource):
        (didReceiveResponseForResource):
        (didFinishLoadForResource):
        (didFailLoadForResource):
        (ewk_view_resource_load_client_attach):

2012-07-11  Mark Rowe  <mrowe@apple.com>

        Fix a logic error in the #if so that the correct code is compiled on Snow Leopard.

        I introduced this in r122403 when I inverted the sense of the #if.

        * UIProcess/mac/WKFullScreenWindowController.mm:

2012-07-11  Mark Rowe  <mrowe@apple.com>

        <http://webkit.org/b/91024> Build against the latest SDK when targeting older OS X versions.

        Reviewed by Dan Bernstein.

        The deployment target is already set to the version that we're targeting, and it's that setting
        which determines which functionality from the SDK is available to us.

        * Configurations/Base.xcconfig:

2012-07-11  Mark Rowe  <mrowe@apple.com>

        <http://webkit.org/b/91022> WebFullScreenController and WKFullScreenWindowController shouldn't add unprefixed methods to AppKit classes

        Reviewed by Dan Bernstein.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (convertRectToScreen): Add a static helper method that calls through to -[NSWindow convertRectToScreen:] on OS versions where it exists
        but otherwise provides a compatibility implementation of it.
        (-[WKFullScreenWindowController enterFullScreen:]): Call our new helper.

2012-07-11  Mark Rowe  <mrowe@apple.com>

        <http://webkit.org/b/91015> Remove BUILDING_ON / TARGETING macros in favor of system availability macros

        This removal was handled by a script that translates the relevant macros in to the equivalent checks
        using the system availability macros.

        Reviewed by Filip Pizlo.

        * Shared/DictionaryPopupInfo.cpp:
        * Shared/DictionaryPopupInfo.h:
        * Shared/mac/PasteboardTypes.mm:
        * Shared/mac/WebEventFactory.mm:
        * UIProcess/API/mac/PDFViewController.mm:
        * UIProcess/API/mac/PageClientImpl.mm:
        * UIProcess/API/mac/WKView.mm:
        * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.h:
        * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
        * UIProcess/Launcher/mac/EnvironmentVariables.cpp:
        * UIProcess/Launcher/mac/EnvironmentVariables.h:
        * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
        * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
        * UIProcess/WebPageProxy.cpp:
        * UIProcess/WebPageProxy.h:
        * UIProcess/WebPageProxy.messages.in:
        * UIProcess/mac/TextCheckerMac.mm:
        * UIProcess/mac/WKFullScreenWindowController.mm:
        * UIProcess/mac/WebContextMac.mm:
        * UIProcess/mac/WebPageProxyMac.mm:
        * WebKit2Prefix.h:
        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        * WebProcess/WebCoreSupport/WebEditorClient.h:
        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        * WebProcess/WebPage/WebPage.cpp:
        * WebProcess/WebPage/WebPage.h:
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/mac/WebPageMac.mm:
        * WebProcess/com.apple.WebProcess.sb.in:
        * WebProcess/mac/KeychainItemShimMethods.mm:
        * WebProcess/mac/SecItemShimMethods.mm:
        * WebProcess/mac/WebProcessMac.mm:
        * WebProcess/mac/WebProcessMainMac.mm:
        * WebProcess/mac/WebProcessShim.mm:

2012-07-11  Simon Fraser  <simon.fraser@apple.com>

        pagesPerView param is misnamed for WKPageSetPageLength()
        https://bugs.webkit.org/show_bug.cgi?id=91033

        Rubber-stamped by Dan Bernstein.

        The name of the second parameter to WKPageSetPageLength(),
        'pagesPerView', was confusing; it's a page size (normally width)
        in pixels.

        * UIProcess/API/C/WKPagePrivate.h:

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

        Add -Wtautological-compare and -Wsign-compare warning flags
        https://bugs.webkit.org/show_bug.cgi?id=90994

        Reviewed by Mark Rowe.

        * Configurations/Base.xcconfig:

2012-07-11  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt][WK2] Test actual rendering results in API tests
        https://bugs.webkit.org/show_bug.cgi?id=80609

        Reviewed by Alexis Menard.

        Added a very basic test to tst_QQuickWebView to make sure rendering actually occurs.

        * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
        (tst_QQuickWebView):
        (tst_QQuickWebView::basicRenderingSanity):

2012-07-11  Mark Rowe  <mrowe@apple.com>

        Add a Mountain Lion version of libWebKitSystemInterface.a.

        Reviewed by John Sullivan.

        * Configurations/DebugRelease.xcconfig: Look for the library under its expected name.

2012-07-11  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] QRawWebView should notify when rendering is done, so that pixel results can be grabbed at the appropriate moment.
        https://bugs.webkit.org/show_bug.cgi?id=90641

        Reviewed by Jocelyn Turcotte.

        Implement LayerTreeCoordinator::forceRepaint with logic equivalent to the one in
        LayerTreeHostCA. If we flush the layers synchronously when forceRepaint is called,when
        WKPageForceRepaint returns we are guaranteed to have an up-to-date image, as the visible
        tiles are also synchronously updated.

        * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
        (WebView::WebView):
        (WebView::viewNeedsDisplay):
        (WebView::frameLoaded):
        (WebView):
        (WebView::onRepaintDone):
        (WebView::finishForceRepaint):
        (WebView::finishFirstLayoutForFrame):
        (tst_qrawwebview::doNoBackground1):
        (tst_qrawwebview::doNoBackground2):
        (tst_qrawwebview::doNoBackground3):
        (tst_qrawwebview::run):
            The test for QRawWebView has been updated to use the WebKit2 ForcePaint API prior to
            generating the pixel results. This has exposed a timing bug in the test - setting the
            transparentBackground property of a page has to be done before it's created. This has
            been fixed in the test.

        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp:
        (WebKit::LayerTreeCoordinator::forceRepaint):
        (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
        (WebKit):

2012-07-11  MORITA Hajime  <morrita@google.com>

        WebCoreSupport needs objects each of which follows major WebCore objects
        https://bugs.webkit.org/show_bug.cgi?id=88499

        Reviewed by Alexey Proskuryakov.

        Added exporting symbols.

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

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

        Unreviewed, rolling out r122318.
        http://trac.webkit.org/changeset/122318
        https://bugs.webkit.org/show_bug.cgi?id=90961

        It made 11 fast/events/touch fail (Requested by bbandix on
        #webkit).

        * UIProcess/API/qt/qquickwebview.cpp:
        * UIProcess/API/qt/qquickwebview_p.h:

2012-07-11  Keunsoon Lee  <keunsoon.lee@samsung.com>

        [EFL][Wk2] WebErrorsEfl.cpp needs to return non-empty errors
        https://bugs.webkit.org/show_bug.cgi?id=90688

        Reviewed by Hajime Morita.

        Return meaningful error for each case.

        * WebProcess/WebCoreSupport/efl/WebErrorsEfl.cpp:
        (WebKit::cancelledError): create ResourceError for "request canceled".
        (WebKit::blockedError): create ResourceError for "request blocked".
        (WebKit::cannotShowURLError): create ResourceError for "cannot show url".
        (WebKit::interruptedForPolicyChangeError): create ResourceError for "Frame load interrupted by policy change".
        (WebKit::cannotShowMIMETypeError): create ResourceError for "Cannot show mimetype".
        (WebKit::fileDoesNotExistError): create ResourceError for "File does not exist".
        (WebKit::pluginWillHandleLoadError): create ResourceError for "Plugin will handle load".

2012-07-11  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] Fix wheel scrolling for simple pages
        https://bugs.webkit.org/show_bug.cgi?id=90793

        Reviewed by Kenneth Rohde Christiansen.

        Call WebPage::setFixedLayoutSize in setResizesToContentsUsingLayoutSize
        instead of setting the view size manually and scheduling a relayout.
        Since setFixedLayoutSize forces a relayout it also updates the scrollbars
        after the visible rect is available.
        This fixes scrolling with wheel events for a QML WebView loading a simple
        local page which previously ended up in a state where scrolling was disabled
        because the scrollbar update happened before the correct visible rect size was
        available.

        Add a QML test and infrastructure to QWebKitTest to cover this case.

        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::wheelEvent):
        * UIProcess/API/qt/qwebkittest_p.h:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_wheelEventHandling.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/test4.html: Added.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::setResizesToContentsUsingLayoutSize):

2012-07-11  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] ASSERT: "!m_viewportItem->isMoving()" in QtViewportHandler::flickMoveEnded()
        https://bugs.webkit.org/show_bug.cgi?id=90875

        Reviewed by Kenneth Rohde Christiansen.

        Since MultiPointTouchArea and PinchArea use the childMouseEventFilter
        method to filter touch events too, and because Flickable filters child
        mouse events the canvas calls this function before propagating the touch
        event to the WebView. Since Flickable does not accept touch events the
        canvas tries to propagate a synthesized mouse event through the base
        class childMouseEventFilter function which is accepted by Flickable and
        interferes with the input events we send to Flicakble hence messes up
        the internal state of the WebView.
        This patch reimplements the virtual childMouseEventFilter method so that all
        the mouse and touch events can be processed by WebKit before they arrive to
        Flickable.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebView::childMouseEventFilter):
        * UIProcess/API/qt/qquickwebview_p.h:

2012-07-10  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Add Battery Status Provider
        https://bugs.webkit.org/show_bug.cgi?id=90543

        Reviewed by Kenneth Rohde Christiansen.

        Define a battery status provider for WebKit2 EFL which
        relies on WebCore::BatteryProviderEfl.

        * CMakeLists.txt: Add WebCore/Modules/battery to include
        paths.
        * PlatformEfl.cmake: Add BatteryProvider class to CMake.
        * UIProcess/API/efl/BatteryProvider.cpp: Added.
        (toBatteryProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (BatteryProvider::~BatteryProvider):
        (BatteryProvider::create):
        (BatteryProvider::BatteryProvider):
        (BatteryProvider::startUpdating):
        (BatteryProvider::stopUpdating):
        (BatteryProvider::didChangeBatteryStatus):
        * UIProcess/API/efl/BatteryProvider.h: Added.
        (BatteryProvider):
        * UIProcess/API/efl/ewk_context.cpp:
        (_Ewk_Context): Add BatteryProvider to Ewk_Context.
        (createDefaultEwkContext):
        (ewk_context_default_get):

2012-07-10  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt] Enable antialiasing for TextureMapper
        https://bugs.webkit.org/show_bug.cgi?id=90915

        Reviewed by Martin Robinson.

        Enable the new antialiasing functionality for WebLayerTreeRendering.
        This will make one-tile layers antialiased when using UI_SIDE_COMPOSITING.

        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::ensureRootLayer):

2012-07-10  Adam Barth  <abarth@webkit.org>

        WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed
        https://bugs.webkit.org/show_bug.cgi?id=90910

        Reviewed by Eric Seidel.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/C/WKPreferences.cpp:
        (WKPreferencesSetHixie76WebSocketProtocolEnabled):
        (WKPreferencesGetHixie76WebSocketProtocolEnabled):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::updatePreferences):

2012-07-10  Helder Correia  <helder.correia@nokia.com>

        [Qt] Repaint counter for accelerated compositing
        https://bugs.webkit.org/show_bug.cgi?id=90116

        Reviewed by Noam Rosenthal.

        No new tests, just introducing a debug feature.

        For this feature to be enabled, the environment variable
        QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS must be set to 1. Once enabled,
        both repaint counters and tile borders will be painted.

        Important notes:
        - Only WebKit2 is targetted for now.
        - There is no integration with Preferences. That aproach was
        taken initially but revealed complex and overkill for such a
        debugging-only functionality. Thus, to disable it simply restart with
        the environment variable unset or set to some other value.

        A Qt-specific drawRepaintCounter() function was added to
        TextureMapperGL. A QImage is used as scratch buffer to paint borders and
        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
        now has a repaint counter which gets incremented in
        LayerBackingStore::updateTile().

        * UIProcess/texmap/LayerBackingStore.cpp:
        (WebKit::LayerBackingStore::updateTile):
        (WebKit):
        (WebKit::shouldShowTileDebugVisuals):
        (WebKit::LayerBackingStore::paintToTextureMapper):
        * UIProcess/texmap/LayerBackingStore.h:
        (WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
        (LayerBackingStoreTile):
        (WebKit::LayerBackingStoreTile::incrementRepaintCount):
        (WebKit::LayerBackingStoreTile::repaintCount):

2012-07-10  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [WK2] Add Vibration API support for WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=90058

        Reviewed by Anders Carlsson.

        Add support for Vibration API to WebKit2.

        * CMakeLists.txt:
        * DerivedSources.pri:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/MessageID.h:
        * Shared/API/c/WKBase.h:
        * Shared/APIObject.h:
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKVibration.cpp: Added.
        (WKVibrationGetTypeID):
        (WKVibrationSetProvider):
        * UIProcess/API/C/WKVibration.h: Added.
        * UIProcess/WebVibrationProvider.cpp: Added.
        (WebKit):
        (WebKit::WebVibrationProvider::vibrate):
        (WebKit::WebVibrationProvider::cancelVibration):
        * UIProcess/WebVibrationProvider.h: Added.
        (WebKit):
        (WebVibrationProvider):
        * UIProcess/WebVibrationProxy.cpp: Added.
        (WebKit):
        (WebKit::WebVibrationProxy::create):
        (WebKit::WebVibrationProxy::WebVibrationProxy):
        (WebKit::WebVibrationProxy::~WebVibrationProxy):
        (WebKit::WebVibrationProxy::invalidate):
        (WebKit::WebVibrationProxy::initializeProvider):
        (WebKit::WebVibrationProxy::didReceiveMessage):
        (WebKit::WebVibrationProxy::vibrate):
        (WebKit::WebVibrationProxy::cancelVibration):
        * UIProcess/WebVibrationProxy.h: Added.
        (CoreIPC):
        (WebKit):
        (WebVibrationProxy):
        (WebKit::WebVibrationProxy::clearContext):
        (WebKit::WebVibrationProxy::type):
        * UIProcess/WebVibrationProxy.messages.in: Added.
        * WebProcess/WebCoreSupport/WebVibrationClient.cpp: Added.
        (WebKit):
        (WebKit::WebVibrationClient::vibrate):
        (WebKit::WebVibrationClient::cancelVibration):
        (WebKit::WebVibrationClient::vibrationDestroyed):
        * WebProcess/WebCoreSupport/WebVibrationClient.h: Added.
        (WebKit):
        (WebVibrationClient):
        (WebKit::WebVibrationClient::WebVibrationClient):
        (WebKit::WebVibrationClient::~WebVibrationClient):

2012-07-10  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to clear the cache to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=90856

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (webkit_web_context_clear_cache): Call
        WKResourceCacheManagerClearCacheForAllOrigins() to clear all
        resources currently cached.
        * UIProcess/API/gtk/WebKitWebContext.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.

2012-07-10  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r122178.
        http://trac.webkit.org/changeset/122178
        https://bugs.webkit.org/show_bug.cgi?id=90857

        browser tests, PrerenderBrowserTest.PrerenderFavicon and other
        tests, started to fail (Requested by hayato on #webkit).

        * win/WebKit2.def:

2012-07-09  Matt Falkenhagen  <falken@chromium.org>

        Add ENABLE_DIALOG_ELEMENT and skeleton files
        https://bugs.webkit.org/show_bug.cgi?id=90521

        Reviewed by Kent Tamura.

        * Configurations/FeatureDefines.xcconfig:

2012-07-09  Pete Williamson  <petewil@google.com>

        Export the iconURL list to make it available to the Internals class for testing
        https://bugs.webkit.org/show_bug.cgi?id=88665

        Reviewed by Kent Tamura.

        * win/WebKit2.def: export the DocumentL::iconURLs function

2012-07-09  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add missing Battery Status API integration to WebContext and WebPage
        https://bugs.webkit.org/show_bug.cgi?id=90784

        Reviewed by Anders Carlsson.

        Integrate Battery Status API to WebPage, WebContext and
        properly route messages to the WebBatteryManagerProxy.
        Without this, the Battery Status tests are crashing for
        WebKit2.

        * UIProcess/API/C/WKContext.cpp:
        (WKContextGetBatteryManager):
        * UIProcess/API/C/WKContext.h:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        (WebKit::WebContext::~WebContext):
        (WebKit::WebContext::disconnectProcess):
        (WebKit::WebContext::didReceiveMessage):
        * UIProcess/WebContext.h:
        (WebKit):
        (WebContext):
        (WebKit::WebContext::batteryManagerProxy):
        * UIProcess/WebProcessProxy.cpp:
        (WebKit::WebProcessProxy::didReceiveMessage):
        * WebProcess/WebCoreSupport/WebBatteryClient.cpp:
        (WebKit::WebBatteryClient::setController):
        (WebKit):
        * WebProcess/WebCoreSupport/WebBatteryClient.h:
        (WebBatteryClient):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):

2012-07-09  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL] [WK2] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
        https://bugs.webkit.org/show_bug.cgi?id=90464

        Reviewed by Daniel Bates.

        HashMap has the property that 0 is the empty value for integer
        keys, so do not use 0 as a key in the HashMap.

        * Platform/efl/WorkQueueEfl.cpp:
        (WorkQueue::dispatchAfterDelay):

2012-07-09  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add a setting to enable/disable page cache to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=90773

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (webKitSettingsSetProperty):
        (webKitSettingsGetProperty):
        (webkit_settings_class_init):
        (webkit_settings_get_enable_page_cache):
        (webkit_settings_set_enable_page_cache):
        * UIProcess/API/gtk/WebKitSettings.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
        * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
        (testWebKitSettings):

2012-07-09  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r122107.
        http://trac.webkit.org/changeset/122107
        https://bugs.webkit.org/show_bug.cgi?id=90794

        Build failure on Mac debug bots (Requested by falken_ on
        #webkit).

        * Configurations/FeatureDefines.xcconfig:

2012-07-09  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Fix inspector detach when inspector was attached by the client
        https://bugs.webkit.org/show_bug.cgi?id=90763

        Reviewed by Martin Robinson.

        When the inspector is detached, we are unconditionally removing it
        from the inspected view, but if the inspector was attached by the
        client, the parent might be another widget.

        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
        (WebKit::WebInspectorProxy::platformDetach): Remove the inspector
        view from its parent widget.

2012-07-09  Matt Falkenhagen  <falken@chromium.org>

        Add ENABLE_DIALOG_ELEMENT and skeleton files
        https://bugs.webkit.org/show_bug.cgi?id=90521

        Reviewed by Kent Tamura.

        * Configurations/FeatureDefines.xcconfig:

2012-07-09  Dan Bernstein  <mitz@apple.com>

        Fix the Mac build when codesign_allocate is not installed at /usr/bin.

        * PluginProcess/mac/add-entitlements.sh: Let codesign(1) know where the codesign_allocate
        tool is by setting the CODESIGN_ALLOCATE environment variable to its path as obtained with
        xcrun.

2012-07-06  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add support for Network Information API
        https://bugs.webkit.org/show_bug.cgi?id=89870

        Reviewed by Anders Carlsson.

        Add Network Information API support for WebKit2.

        * CMakeLists.txt:
        * DerivedSources.pri:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/MessageID.h:
        * Shared/API/c/WKBase.h:
        * Shared/APIObject.h:
        * Shared/WebNetworkInfo.cpp: Added.
        (WebKit):
        (WebKit::WebNetworkInfo::WebNetworkInfo):
        (WebKit::WebNetworkInfo::~WebNetworkInfo):
        (WebKit::WebNetworkInfo::Data::encode):
        (WebKit::WebNetworkInfo::Data::decode):
        * Shared/WebNetworkInfo.h: Added.
        (WebKit):
        (WebNetworkInfo):
        (Data):
        (WebKit::WebNetworkInfo::create):
        (WebKit::WebNetworkInfo::bandwidth):
        (WebKit::WebNetworkInfo::metered):
        (WebKit::WebNetworkInfo::data):
        (WebKit::WebNetworkInfo::type):
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKNetworkInfoManager.cpp: Added.
        (WKNetworkInfoManagerGetTypeID):
        * UIProcess/API/C/WKNetworkInfoManager.h: Added.
        * UIProcess/WebNetworkInfoManagerProxy.cpp: Added.
        (WebKit):
        (WebKit::WebNetworkInfoManagerProxy::create):
        (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
        (WebKit::WebNetworkInfoManagerProxy::~WebNetworkInfoManagerProxy):
        (WebKit::WebNetworkInfoManagerProxy::invalidate):
        (WebKit::WebNetworkInfoManagerProxy::initializeProvider):
        (WebKit::WebNetworkInfoManagerProxy::providerDidChangeNetworkInformation):
        (WebKit::WebNetworkInfoManagerProxy::didReceiveMessage):
        (WebKit::WebNetworkInfoManagerProxy::startUpdating):
        (WebKit::WebNetworkInfoManagerProxy::stopUpdating):
        (WebKit::WebNetworkInfoManagerProxy::getBandwidth):
        (WebKit::WebNetworkInfoManagerProxy::isMetered):
        * UIProcess/WebNetworkInfoManagerProxy.h: Added.
        (CoreIPC):
        (WebKit):
        (WebNetworkInfoManagerProxy):
        (WebKit::WebNetworkInfoManagerProxy::clearContext):
        (WebKit::WebNetworkInfoManagerProxy::type):
        * UIProcess/WebNetworkInfoManagerProxy.messages.in: Added.
        * UIProcess/WebNetworkInfoProvider.cpp: Added.
        (WebKit):
        (WebKit::WebNetworkInfoProvider::startUpdating):
        (WebKit::WebNetworkInfoProvider::stopUpdating):
        (WebKit::WebNetworkInfoProvider::bandwidth):
        (WebKit::WebNetworkInfoProvider::metered):
        * UIProcess/WebNetworkInfoProvider.h: Added.
        (WebKit):
        (WebNetworkInfoProvider):
        * WebKit2.pri:
        * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp: Added.
        (WebKit):
        (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
        (WebKit::WebNetworkInfoManager::~WebNetworkInfoManager):
        (WebKit::WebNetworkInfoManager::didReceiveMessage):
        (WebKit::WebNetworkInfoManager::registerWebPage):
        (WebKit::WebNetworkInfoManager::unregisterWebPage):
        (WebKit::WebNetworkInfoManager::bandwidth):
        (WebKit::WebNetworkInfoManager::metered):
        (WebKit::WebNetworkInfoManager::didChangeNetworkInformation):
        * WebProcess/NetworkInfo/WebNetworkInfoManager.h: Added.
        (CoreIPC):
        (WebKit):
        (WebNetworkInfoManager):
        * WebProcess/NetworkInfo/WebNetworkInfoManager.messages.in: Added.
        * WebProcess/WebCoreSupport/WebNetworkInfoClient.cpp: Added.
        (WebKit):
        (WebKit::WebNetworkInfoClient::~WebNetworkInfoClient):
        (WebKit::WebNetworkInfoClient::bandwidth):
        (WebKit::WebNetworkInfoClient::metered):
        (WebKit::WebNetworkInfoClient::startUpdating):
        (WebKit::WebNetworkInfoClient::stopUpdating):
        * WebProcess/WebCoreSupport/WebNetworkInfoClient.h: Added.
        (WebKit):
        (WebNetworkInfoClient):
        (WebKit::WebNetworkInfoClient::WebNetworkInfoClient):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::WebProcess):
        (WebKit::WebProcess::didReceiveMessage):
        * WebProcess/WebProcess.h:
        (WebProcess):
        (WebKit::WebProcess::networkInfoManager):

2012-07-06  Jessie Berlin  <jberlin@apple.com>

        WKContext should ask for its injected bundle initialization user data when it needs it so the
        client doesn't have to keep it up to date.
        https://bugs.webkit.org/show_bug.cgi?id=90627

        Reviewed by Anders Carlsson.

        Add a getInjectedBundleInitializationUserData callback to WKContextInjectedBundleClient.

        * Shared/APIClientTraits.cpp:
        Allow the WKContextInjectedBundleClient API to be versioned.
        * Shared/APIClientTraits.h:

        * UIProcess/API/C/WKContext.h:
        Add the callback and bump the version of WKContextInjectedBundleClient.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::ensureWebProcess):
        Prefer any user data returned when the callback is invoked over that set with
        WKContextSetInitializationUserDataForInjectedBundle.

        * UIProcess/WebContextInjectedBundleClient.cpp:
        (WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):
        Invoke the callback if the client has registered for it.
        * UIProcess/WebContextInjectedBundleClient.h:

2012-07-06  Jessie Berlin  <jberlin@apple.com>

        WebContext::injectedBundleInitializationUserData() is unused, should be removed
        https://bugs.webkit.org/show_bug.cgi?id=90486

        Reviewed by Anders Carlsson.

        * UIProcess/WebContext.h:
        Remove it.

2012-07-06  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add site specific quirks setting to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=90663

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (webKitSettingsSetProperty):
        (webKitSettingsGetProperty):
        (webkit_settings_class_init):
        (webkit_settings_get_enable_site_specific_quirks):
        (webkit_settings_set_enable_site_specific_quirks):
        * UIProcess/API/gtk/WebKitSettings.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
        * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
        (testWebKitSettings):

2012-07-06  Dominik Röttsches  <dominik.rottsches@intel.com>

        ProcessLauncher's WorkQueue's name is too long on Windows
        https://bugs.webkit.org/show_bug.cgi?id=44041

        Reviewed by Andreas Kling.

        Shorten thread name for process launcher so that we can silence the warning
        for thread names getting truncated under VisualStudio -
        see createThread() in  Threading.cpp.

        * UIProcess/Launcher/ProcessLauncher.cpp:
        (WebKit::processLauncherWorkQueue):

2012-07-06  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL] WebKit-EFL headers do not build with gcc < 4.6
        https://bugs.webkit.org/show_bug.cgi?id=90681

        Unreviewed EFL build fix.

        Remove several forward declarations from ewk_view
        header to avoid typedef redefinitions which are
        illegal in C.

        * UIProcess/API/efl/ewk_view.h:

2012-07-06  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Buildfix for newer Qt5
        https://bugs.webkit.org/show_bug.cgi?id=90519

        Reviewed by Tor Arne Vestbø.

        * UIProcess/API/qt/qwebkittest.cpp: Include qpa/qwindowsysteminterface.h instead of deprecated qwindowsysteminterface_qpa.h.

2012-07-06  Oswald Buddenhagen  <oswald.buddenhagen@nokia.com>

        [Qt] Adjust to changed generation of master include file

        The responsiblity for creating the master include was moved out of syncqt.
        @ignore_for_master_contents still stays, as syncqt (ab-)uses this for
        determining whether a header is private.

        https://bugs.webkit.org/show_bug.cgi?id=90461

        Reviewed by Tor Arne Vestbø.

        * UIProcess/API/qt/tests/bytearraytestdata.h:
        * UIProcess/API/qt/tests/testwindow.h:

2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Ewk_View needs to report load status changes
        https://bugs.webkit.org/show_bug.cgi?id=90566

        Reviewed by Kenneth Rohde Christiansen.

        Add new "load,finished", "load,provisional,failed",
        "load,provisional,redirect" and "load,provisional,started"
        signals on the Ewk_View to notify the client of different
        load state changes.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_load_finished):
        (ewk_view_load_provisional_failed):
        (ewk_view_load_provisional_redirect):
        (ewk_view_load_provisional_started):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didFinishLoadForFrame):
        (didFailLoadWithErrorForFrame):
        (didStartProvisionalLoadForFrame):
        (didReceiveServerRedirectForProvisionalLoadForFrame):
        (didFailProvisionalLoadWithErrorForFrame):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-05  Luiz Agostini  <luiz.agostini@nokia.com>

        [Qt] Transform should be applied to the clip rect in QRawWebView::paint
        https://bugs.webkit.org/show_bug.cgi?id=90652

        Reviewed by Kenneth Rohde Christiansen.

        Applying the transformation matrix to the clip rect in QRawWebView::paint.

        * UIProcess/API/qt/raw/qrawwebview.cpp:
        (QRawWebView::paint):

2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Ewk_View should provide API to set/get device pixel ratio
        https://bugs.webkit.org/show_bug.cgi?id=90590

        Reviewed by Kenneth Rohde Christiansen.

        Add API to Ewk_View so retrieve and set the device
        pixel ratio.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_device_pixel_ratio_set):
        (ewk_view_device_pixel_ratio_get):
        * UIProcess/API/efl/ewk_view.h:

2012-07-05  Anders Carlsson  <andersca@apple.com>

        Type-ahead doesn't work in options inside optgroups
        https://bugs.webkit.org/show_bug.cgi?id=90647
        <rdar://problem/5604894>

        Reviewed by Dan Bernstein.

        Set the title of the menu item to a string that doesn't contain any leading or trailing whitespace.

        * UIProcess/mac/WebPopupMenuProxyMac.mm:
        (WebKit::WebPopupMenuProxyMac::populate):

2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add C API for Battery Status API
        https://bugs.webkit.org/show_bug.cgi?id=90545

        Reviewed by Anders Carlsson.

        Add C API for WKBatteryManager and WKBatteryStatus
        so that clients can support the Battery Status API
        in WebKit2.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/C/WKBatteryManager.cpp:
        (WKBatteryManagerProviderDidChangeBatteryStatus):
        (WKBatteryManagerProviderUpdateBatteryStatus):
        * UIProcess/API/C/WKBatteryStatus.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.
        (WKBatteryStatusGetTypeID):
        (WKBatteryStatusCreate):
        * UIProcess/API/C/WKBatteryStatus.h: Copied from Source/WebKit2/UIProcess/API/C/WKBatteryManager.cpp.

2012-07-05  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r121899.
        http://trac.webkit.org/changeset/121899
        https://bugs.webkit.org/show_bug.cgi?id=90623

        Unauthorized WK2 API breakage (Requested by andersca on
        #webkit).

        * Shared/API/c/WKSharedAPICast.h:
        (WebKit::toCopiedURLAPI):

2012-07-05  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] WTR crashes if a URL is passed as a parameter
        https://bugs.webkit.org/show_bug.cgi?id=88093

        Reviewed by Zoltan Herczeg.

        * Shared/API/c/WKSharedAPICast.h:
        (WebKit::toCopiedURLAPI):
        Don't special case null string. It's handled
        fine by WebURL and passing 0 is not suitable
        to the API.

2012-07-05  Dongwoo Im  <dw.im@samsung.com>

        [EFL] Enable the CUSTOM_SCHEME_HANDLER feature as default.
        https://bugs.webkit.org/show_bug.cgi?id=88608

        Reviewed by Hajime Morita.

        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebKit::WebChromeClient::isProtocolHandlerRegistered): Add a stub function.
        (WebKit::WebChromeClient::unregisterProtocolHandler): Add a stub function.
        (WebChromeClient):

2012-07-05  Ryuan Choi  <ryuan.choi@samsung.com>

        [Wk2][EFL] EFL needs a WebKitTestRunner
        https://bugs.webkit.org/show_bug.cgi?id=87659

        Reviewed by Kenneth Rohde Christiansen.

        * PlatformEfl.cmake: Added WKImageCairo.cpp in source list.

2012-07-05  Hyerim Bae  <hyerim.bae@samsung.com>

        [EFL][WK2] Add ewk_view_reload_bypass_cache API.
        https://bugs.webkit.org/show_bug.cgi?id=89413

        Reviewed by Kenneth Rohde Christiansen.

        Add API, which is for reloading documents without cache.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_reload_bypass_cache):
        * UIProcess/API/efl/ewk_view.h:

2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Ewk_View needs API to load HTML data
        https://bugs.webkit.org/show_bug.cgi?id=90540

        Reviewed by Kenneth Rohde Christiansen.

        Add method to Ewk_View to load provided HTML data.
        This is used for e.g. when an URL cannot be reached
        and we need to display an error page.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_html_load):
        * UIProcess/API/efl/ewk_view.h:

2012-07-05  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Ewk_View needs to report new resource requests
        https://bugs.webkit.org/show_bug.cgi?id=90577

        Reviewed by Kenneth Rohde Christiansen.

        Add new "resource,request,new" signal to Ewk_View to
        notify clients of the resource requests being initiated.
        New Ewk_Url_Request and Ewk_Web_Resource types are
        introduced in order to provide the clients with the
        needed information regarding the resource requests.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_url_request.cpp: Added.
        (_Ewk_Url_Request):
        (ewk_url_request_ref):
        (ewk_url_request_unref):
        (ewk_url_request_url_get):
        (ewk_request_first_party_get):
        (ewk_url_request_http_method_get):
        (ewk_url_request_new):
        * UIProcess/API/efl/ewk_url_request.h: Added.
        * UIProcess/API/efl/ewk_url_request_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_base_add):
        (ewk_view_resource_load_initiated):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_view_resource_load_client.cpp: Added.
        (didInitiateLoadForResource):
        (ewk_view_resource_load_client_attach):
        * UIProcess/API/efl/ewk_view_resource_load_client_private.h: Added.
        * UIProcess/API/efl/ewk_web_resource.cpp: Added.
        (_Ewk_Web_Resource):
        (ewk_web_resource_ref):
        (ewk_web_resource_unref):
        (ewk_web_resource_uri_get):
        (ewk_web_resource_new):
        (ewk_web_resource_main_get):
        * UIProcess/API/efl/ewk_web_resource.h: Added.
        * UIProcess/API/efl/ewk_web_resource_private.h: Added.

2012-07-04  John Mellor  <johnme@chromium.org>

        Text Autosizing: Add compile flag and runtime setting
        https://bugs.webkit.org/show_bug.cgi?id=87394

        This patch renames Font Boosting to Text Autosizing.

        Reviewed by Adam Barth.

        * Configurations/FeatureDefines.xcconfig:

2012-07-04  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Ewk_View should report load errors
        https://bugs.webkit.org/show_bug.cgi?id=90479

        Reviewed by Kenneth Rohde Christiansen.

        The Ewk_View now emits a "load,error" signal when the
        main frame fails loading. Information about the error
        is provided via the new Ewk_Web_Error type.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_load_error):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didFailLoadWithErrorForFrame):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_private.h:
        * UIProcess/API/efl/ewk_web_error.cpp: Added.
        (_Ewk_Web_Error):
        (ewk_web_error_free):
        (ewk_web_error_domain_get):
        (ewk_web_error_url_get):
        (ewk_web_error_code_get):
        (ewk_web_error_description_get):
        (ewk_web_error_cancellation_get):
        (ewk_web_error_new):
        * UIProcess/API/efl/ewk_web_error.h: Added.
        * UIProcess/API/efl/ewk_web_error_private.h: Added.

2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Ewk_View should report the load progress
        https://bugs.webkit.org/show_bug.cgi?id=90457

        Reviewed by Kenneth Rohde Christiansen.

        The Ewk_View now reports the estimated load progress
        of the page via the new "load,progress".
        A method is also added to Ewk_View in order to
        retrieve the current load progress.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_load_progress_get):
        (ewk_view_load_progress_changed):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didChangeProgress):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add support for Battery Status API
        https://bugs.webkit.org/show_bug.cgi?id=89558

        Reviewed by Anders Carlsson.

        Add support for Battery Status API to WebKit2.

        * CMakeLists.txt:
        * DerivedSources.pri:
        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/MessageID.h:
        * Shared/API/c/WKBase.h:
        * Shared/APIObject.h:
        * Shared/WebBatteryStatus.cpp: Added.
        (WebKit):
        (WebKit::WebBatteryStatus::WebBatteryStatus):
        (WebKit::WebBatteryStatus::~WebBatteryStatus):
        (WebKit::WebBatteryStatus::Data::encode):
        (WebKit::WebBatteryStatus::Data::decode):
        * Shared/WebBatteryStatus.h: Added.
        (WebKit):
        (WebBatteryStatus):
        (Data):
        (WebKit::WebBatteryStatus::create):
        (WebKit::WebBatteryStatus::isCharging):
        (WebKit::WebBatteryStatus::chargingTime):
        (WebKit::WebBatteryStatus::dischargingTime):
        (WebKit::WebBatteryStatus::level):
        (WebKit::WebBatteryStatus::data):
        (WebKit::WebBatteryStatus::type):
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKBatteryManager.cpp: Added.
        (WKBatteryManagerGetTypeID):
        * UIProcess/API/C/WKBatteryManager.h: Added.
        * UIProcess/WebBatteryManagerProxy.cpp: Added.
        (WebKit):
        (WebKit::WebBatteryManagerProxy::create):
        (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
        (WebKit::WebBatteryManagerProxy::~WebBatteryManagerProxy):
        (WebKit::WebBatteryManagerProxy::invalidate):
        (WebKit::WebBatteryManagerProxy::initializeProvider):
        (WebKit::WebBatteryManagerProxy::didReceiveMessage):
        (WebKit::WebBatteryManagerProxy::startUpdating):
        (WebKit::WebBatteryManagerProxy::stopUpdating):
        (WebKit::WebBatteryManagerProxy::providerDidChangeBatteryStatus):
        (WebKit::WebBatteryManagerProxy::providerUpdateBatteryStatus):
        * UIProcess/WebBatteryManagerProxy.h: Added.
        (CoreIPC):
        (WebKit):
        (WebBatteryManagerProxy):
        (WebKit::WebBatteryManagerProxy::clearContext):
        (WebKit::WebBatteryManagerProxy::type):
        * UIProcess/WebBatteryManagerProxy.messages.in: Added.
        * UIProcess/WebBatteryProvider.cpp: Added.
        (WebKit):
        (WebKit::WebBatteryProvider::startUpdating):
        (WebKit::WebBatteryProvider::stopUpdating):
        * UIProcess/WebBatteryProvider.h: Added.
        (WebKit):
        (WebBatteryProvider):
        * WebKit2.pri:
        * WebProcess/Battery/WebBatteryManager.cpp: Added.
        (WebKit):
        (WebKit::WebBatteryManager::WebBatteryManager):
        (WebKit::WebBatteryManager::~WebBatteryManager):
        (WebKit::WebBatteryManager::didReceiveMessage):
        (WebKit::WebBatteryManager::registerWebPage):
        (WebKit::WebBatteryManager::unregisterWebPage):
        (WebKit::WebBatteryManager::didChangeBatteryStatus):
        (WebKit::WebBatteryManager::updateBatteryStatus):
        * WebProcess/Battery/WebBatteryManager.h: Added.
        (CoreIPC):
        (WebKit):
        (WebBatteryManager):
        * WebProcess/Battery/WebBatteryManager.messages.in: Added.
        * WebProcess/WebCoreSupport/WebBatteryClient.cpp: Added.
        (WebKit):
        (WebKit::WebBatteryClient::startUpdating):
        (WebKit::WebBatteryClient::stopUpdating):
        (WebKit::WebBatteryClient::batteryControllerDestroyed):
        * WebProcess/WebCoreSupport/WebBatteryClient.h: Added.
        (WebKit):
        (WebBatteryClient):
        (WebKit::WebBatteryClient::WebBatteryClient):
        (WebKit::WebBatteryClient::~WebBatteryClient):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::WebProcess):
        (WebKit::WebProcess::didReceiveMessage):
        * WebProcess/WebProcess.h:
        (WebProcess):
        (WebKit::WebProcess::batteryManager):

2012-07-03  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Make use of .qmake.cache for caching features

        Instead of loading() features from the files that need them (and re-running
        a bunch of checks), we now run feature detection as part of configure.pro,
        and have build-webkit write the computed feature-defines and CONFIG to
        .qmake.cache, which is then loaded by qmake _before_ even defaults_pre
        when building WebKit.pro.

        At some point we'll be able to selectivly prevent running of config tests
        in configure.pro, which means we don't need a separate code-path for
        the build-webkit --help case.

        We should also move the code in build-webkit that now uses .webkit.config
        to detect clean builds, to use .qmake.cache, since we now store the same
        thing there.

        Original patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com>

        Reviewed by Tor Arne Vestbø.

        * DerivedSources.pri:
        * Target.pri:

2012-07-03  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r121766.
        http://trac.webkit.org/changeset/121766
        https://bugs.webkit.org/show_bug.cgi?id=90465

        It caused flakey build errors on the bots (Requested by Ossy
        on #webkit).

        * DerivedSources.pri:
        * Target.pri:

2012-07-03  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add WebKitWebView::context-menu-dismissed signal to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=90386

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_class_init): Add context-menu-dismissed signal.
        (contextMenuDismissed): Emit context-menu-dismissed signal.
        (webkitWebViewPopulateContextMenu): Connect to deactivate signal
        of the GtkMenu and emit WebKitWebView::context-menu-dismissed when
        the gtk menu is deactivated.
        * UIProcess/API/gtk/WebKitWebView.h:
        (_WebKitWebViewClass): Add virtual methos for
        context-menu-dismissed signal.
        * UIProcess/API/gtk/tests/TestContextMenu.cpp:
        (testContextMenuDismissed):
        (beforeAll):
        * UIProcess/gtk/WebContextMenuProxyGtk.h:
        (WebKit::WebContextMenuProxyGtk::gtkMenu): Get the GtkMenu built
        for the context menu proxy.

2012-07-03  Piotr Roguski  <p.roguski@samsung.com>

        [EFL][WK2] Added missing WebPageProxy::ViewIsFocused flag to WebPageProxy::viewStateDidChange()
        call in _ewk_view_smart_focus_out() function.
        https://bugs.webkit.org/show_bug.cgi?id=89877

        Reviewed by Andreas Kling.

        Although name of the flag suggest it should be used only on focus in,
        omitting it in case of focus out will prevent WebPageProxy::viewStateDidChange()
        from sending Messages::WebPage::SetFocused(false).

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

2012-07-03  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>

        [Qt][WK2] API tests randomly asserts in QQuickWebPage::setContentsScale(qreal)
        https://bugs.webkit.org/show_bug.cgi?id=88679

        Reviewed by Csaba Osztrogonác.

        Viewport parameters cannot be calculated while viewport is not visible and 
        viewport size is 0, so let's delay calculation of viewport parameters until view 
        becomes visible.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::pageContentsSizeChanged):

2012-07-03  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Make use of .qmake.cache for caching features

        Instead of loading() features from the files that need them (and re-running
        a bunch of checks), we now run feature detection as part of configure.pro,
        and have build-webkit write the computed feature-defines and CONFIG to
        .qmake.cache, which is then loaded by qmake _before_ even defaults_pre
        when building WebKit.pro.

        At some point we'll be able to selectivly prevent running of config tests
        in configure.pro, which means we don't need a separate code-path for
        the build-webkit --help case.

        We should also move the code in build-webkit that now uses .webkit.config
        to detect clean builds, to use .qmake.cache, since we now store the same
        thing there.

        Original patch by Oswald Buddenhagen <oswald.buddenhagen@nokia.com>

        Reviewed by Tor Arne Vestbø.

        * DerivedSources.pri:
        * Target.pri:

2012-07-03  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt] When calling accept() on the FilePickerContextObject with an empty list, early return and call reject().
        https://bugs.webkit.org/show_bug.cgi?id=89755

        Reviewed by Simon Hausmann.

        When calling accept with an empty list of files we can just bailout
        and call reject(). Any other processing is pointless.

       * UIProcess/API/qt/tests/qmltests/WebView/tst_singleFileUpload.qml:
       * UIProcess/qt/QtDialogRunner.cpp:
        (WebKit::FilePickerContextObject::accept):

2012-07-03  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] fast/viewport/viewport-91.html still fails after r121555 and r121661
        https://bugs.webkit.org/show_bug.cgi?id=90376

        Reviewed by Csaba Osztrogonác.

        layoutTestController.dumpConfigurationForViewport still need
        to use the constant target DPI of 160.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::viewportConfigurationAsText):

2012-07-03  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add API to deliver a Web Intent to a frame
        https://bugs.webkit.org/show_bug.cgi?id=90067

        Reviewed by Kenneth Rohde Christiansen.

        Add ewk_view_intent_deliver() method on the Ewk_View
        to deliver a Web Intent to the view's main frame.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_deliver):
        * UIProcess/API/efl/ewk_view.h:

2012-07-02  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add API to inspect a Web Intent service
        https://bugs.webkit.org/show_bug.cgi?id=90066

        Reviewed by Kenneth Rohde Christiansen.

        Add EFL API to inspect a Web Intent Service and emit
        a signal on the view when a new intent service
        registers.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_intent_service.cpp: Added.
        (_Ewk_Intent_Service):
        (ewk_intent_service_ref):
        (ewk_intent_service_unref):
        (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):
        (ewk_intent_service_new):
        * UIProcess/API/efl/ewk_intent_service.h: Added.
        * UIProcess/API/efl/ewk_intent_service_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_service_register):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (registerIntentServiceForFrame):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_private.h:

2012-07-02  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Free Ewk_Intent calloc'd memory with free() instead of delete
        https://bugs.webkit.org/show_bug.cgi?id=90433

        Reviewed by Kenneth Rohde Christiansen.

        Free calloc'd memory with free() instead of delete in Ewk_Intent.
        Add blank lines before return statements for consistency.

        * UIProcess/API/efl/ewk_intent.cpp:
        (ewk_intent_unref):
        (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):
        (ewk_intent_new):

2012-07-02  Martin Robinson  <mrobinson@igalia.com>

        [TextureMapper] The TextureMapper should support edge-distance anti-antialiasing
        https://bugs.webkit.org/show_bug.cgi?id=90308

        Reviewed by Noam Rosenthal.

        * UIProcess/texmap/LayerBackingStore.cpp:
        (WebKit::LayerBackingStore::paintToTextureMapper): Update the method to call paint with
        the new argument.

2012-07-02  Benjamin Poulain  <bpoulain@apple.com>

        Do not do any logging initialization when logging is disabled
        https://bugs.webkit.org/show_bug.cgi?id=90228

        Reviewed by Simon Fraser.

        * Platform/Logging.cpp:
        * Platform/Logging.h:
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::WebContext):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::WebProcess):

2012-07-02  No'am Rosenthal  <noam.rosenthal@nokia.com>

        [Qt][WK2] New API tests introduced in r121620 fail
        https://bugs.webkit.org/show_bug.cgi?id=90372

        Reviewed by Luiz Agostini.

        Updated the pixel comparison to produce more predictable results.

        * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp:
        (compareImages):

2012-07-02  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt] Fix WebProcess crash on Mac when accessing a site with video tag.
        https://bugs.webkit.org/show_bug.cgi?id=90384

        Reviewed by Jocelyn Turcotte.

        We need to initialize the private symbols used by MediaPlayerPrivateQTKit
        otherwise they will be null and it will lead to a crash. We copy WebSystemInterface
        files for WK2 just like the Mac port as WK2 may have different needs than WK1 layer (we
        may add or remove symbols in here). It doesn't fix the video rendering yet but it's
        first step.

        * Target.pri:
        * WebProcess/WebCoreSupport/qt/WebSystemInterface.h: Added.
        * WebProcess/WebCoreSupport/qt/WebSystemInterface.mm: Added.
        (InitWebCoreSystemInterfaceForWK2):
        * WebProcess/qt/WebProcessMainQt.cpp:
        (WebKit::WebProcessMainQt):

2012-07-02  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [EFL] [WK2] Remove content sniffer and decoder initialization from WebProcess
        https://bugs.webkit.org/show_bug.cgi?id=90275

        Reviewed by Martin Robinson.

        Do not initialize content sniffer and decoder in the WebProcess
        because the initialization is now done in WebCore.

        * WebProcess/efl/WebProcessMainEfl.cpp:
        (WebKit::WebProcessMainEfl):

2012-07-02  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r120329, r121113, and r121138.
        http://trac.webkit.org/changeset/120329
        http://trac.webkit.org/changeset/121113
        http://trac.webkit.org/changeset/121138
        https://bugs.webkit.org/show_bug.cgi?id=90368

        Introduced noticeable keyboard-related spins due to
        synchronous IPC. (Requested by kling on #webkit).

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::handleKeyboardEvent):
        (WebKit::WebPageProxy::didReceiveEvent):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::keyEvent):

2012-07-01  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add API to inspect a Web Intent
        https://bugs.webkit.org/show_bug.cgi?id=89749

        Reviewed by Kenneth Rohde Christiansen.

        Add EFL API to inspect a Web Intent and emit a signal
        on the view when a new intent request is made.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/EWebKit2.h:
        * UIProcess/API/efl/ewk_intent.cpp: Added.
        (_Ewk_Intent):
        (ewk_intent_ref):
        (ewk_intent_unref):
        (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):
        (ewk_intent_new):
        * UIProcess/API/efl/ewk_intent.h: Added.
        * UIProcess/API/efl/ewk_intent_private.h: Copied from Source/WebKit2/UIProcess/API/efl/ewk_view_loader_client.cpp.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_intent_request_new):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp:
        (didReceiveIntentForFrame):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_private.h:

2012-06-29  Luiz Agostini  <luiz.agostini@nokia.com>

        [Qt][WK2] Private non-QtQuick API
        https://bugs.webkit.org/show_bug.cgi?id=84532

        Reviewed by Noam Rosenthal.

        Adding new private non-QtQuick API. This new C++ API makes it possible
        to have control over the lower levels of WebKit without going via QML.

        This is a first version of the API, enough to show pages on the screen.
        Many features are not implemented.

        * Target.pri:
        * UIProcess/API/qt/raw/qrawwebview.cpp: Added.
        * UIProcess/API/qt/raw/qrawwebview_p.h: Added.
        * UIProcess/API/qt/raw/qrawwebview_p_p.h: Added.

        The tests for the new API are pixel tests. They use QRawWebView to load
        html files and generate images, and them compare those images to the ones
        in UIProcess/API/qt/tests/html/resources.

        * UIProcess/API/qt/tests/html/bluesquare.html: Added.
        * UIProcess/API/qt/tests/html/redsquare.html: Added.
        * UIProcess/API/qt/tests/html/resources/qwkview_noBackground1.png: Added.
        * UIProcess/API/qt/tests/html/resources/qwkview_noBackground3.png: Added.
        * UIProcess/API/qt/tests/html/resources/qwkview_paint.png: Added.
        * UIProcess/API/qt/tests/qrawwebview/qrawwebview.pro: Added.
        * UIProcess/API/qt/tests/qrawwebview/tst_qrawwebview.cpp: Added.

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

        [WK2] Move intent delivery code from the frame to the page
        https://bugs.webkit.org/show_bug.cgi?id=89974

        Reviewed by Anders Carlsson.

        Move the intent delivery code from the frame to the page
        and add the corresponding C API for WKPage.

        * UIProcess/API/C/WKPage.cpp:
        (WKPageDeliverIntentToFrame):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/WebFrameProxy.cpp:
        (WebKit::WebFrameProxy::stopLoading):
        * UIProcess/WebFrameProxy.h:
        (WebKit):
        * UIProcess/WebPageProxy.cpp:
        (WebKit):
        (WebKit::WebPageProxy::deliverIntentToFrame):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):

2012-06-29  Dan Bernstein  <mitz@apple.com>

        Can’t get basic element info from a WKRenderObject
        https://bugs.webkit.org/show_bug.cgi?id=90301

        Reviewed by Anders Carlsson.

        Moved the element info (tag name, id and class names) from WebRenderLayer to WebRenderObject,
        and gave WebRenderLayer a reference to a (shallow) WebRenderObject. Added WKRenderObject API
        for getting element info, while leaving the WKRenderLayer API in place for now for Safari.

        * Shared/API/c/WKRenderLayer.cpp:
        (WKRenderLayerGetRenderer): Added this wrapper.
        (WKRenderLayerCopyRendererName): Changed to get the name from the renderer.
        (WKRenderLayerCopyElementTagName): Changed to go through the renderer.
        (WKRenderLayerCopyElementID): Ditto.
        (WKRenderLayerGetElementClassNames): Ditto.
        * Shared/API/c/WKRenderLayer.h: Added declaration of WKRenderLayerGetRenderer() and comments
        about removing older API.
        * Shared/API/c/WKRenderObject.cpp:
        (WKRenderObjectCopyElementTagName): Added this wrapper.
        (WKRenderObjectCopyElementID): Ditto.
        (WKRenderObjectGetElementClassNames): Ditto.
        * Shared/API/c/WKRenderObject.h:
        * Shared/UserMessageCoders.h:
        (WebKit::UserMessageEncoder::baseEncode): Removed the element info from the encoding of
        WebRenderLayer, and added the renderer. Added the element info to the encoding of
        WebRenderObject.
        (WebKit::UserMessageDecoder::baseDecode): Updated to match the encoding changes.
        * Shared/WebRenderLayer.cpp:
        (WebKit::WebRenderLayer::WebRenderLayer): Changed to initialize the m_renderer member
        variable with a WebRenderObject for the layer’s renderer, and removed the initialization of
        the element-related member variables that were removed.
        * Shared/WebRenderLayer.h:
        (WebKit::WebRenderLayer::create): Changed to take a renderer instead of renderer and element
        info.
        (WebKit::WebRenderLayer::renderer): Added this getter.
        (WebKit::WebRenderLayer::WebRenderLayer): Changed to take a renderer instead of renderer and
        element info.
        * Shared/WebRenderObject.cpp:
        (WebKit::WebRenderObject::create): Changed to pass true for the shouldIncludeDescendants
        parameter.
        (WebKit::WebRenderObject::WebRenderObject): Added a shouldIncludeDescdendants boolean
        parameter. When it is false, the m_children array remains null. Added initialization of
        member variables with the element’s tag name, id and class list.
        * Shared/WebRenderObject.h:
        (WebKit::WebRenderObject::create): Added an overload that takes a RenderObject and creates
        a shallow WebRenderObject.
        (WebRenderObject): Changed to take element tag name, id and class list.
        (WebKit::WebRenderObject::elementTagName): Added this getter.
        (WebKit::WebRenderObject::elementID): Ditto.
        (WebKit::WebRenderObject::elementClassNames): Ditto.
        (WebKit::WebRenderObject::WebRenderObject): 

2012-06-29  Tony Chang  <tony@chromium.org>

        Unreviewed, rolling out r121572.
        http://trac.webkit.org/changeset/121572
        https://bugs.webkit.org/show_bug.cgi?id=90249

        Breaks Mac build since it depends on r121547, which was rolled
        out

        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        (WebKit::NPN_GetValue):
        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
        * WebProcess/WebCoreSupport/WebEditorClient.h:

2012-06-29  Eric Seidel  <eric@webkit.org>

        Remove BUILDING_ON_LEOPARD now that no ports build on Leopard
        https://bugs.webkit.org/show_bug.cgi?id=90249

        Reviewed by Ryosuke Niwa.

        * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
        (WebKit::NPN_GetValue):
        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
        * WebProcess/WebCoreSupport/WebEditorClient.h:

2012-06-29  Konrad Piascik  <kpiascik@rim.com>

        Don't hardcode target dpi of 160 (it should be 96 on desktop)
        https://bugs.webkit.org/show_bug.cgi?id=88114

        Reviewed by Adam Barth.

        Updated the call to computeViewportAttributes.

        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):
        (WebKit::WebPage::viewportConfigurationAsText):

2012-06-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r121529.
        http://trac.webkit.org/changeset/121529
        https://bugs.webkit.org/show_bug.cgi?id=90260

        Failed to compile on Chromium WebKitMacBuilder (Requested by
        keishi on #webkit).

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
        (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface):

2012-06-29  Eric Seidel  <eric@webkit.org>

        Remove more BUILDING_ON_LEOPARD branches now that no port builds on Leopard
        https://bugs.webkit.org/show_bug.cgi?id=90252

        Reviewed by Ryosuke Niwa.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
        (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:WebCore::finalFrame:WebCore::]):
        * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm:
        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface):

2012-06-28  MORITA Hajime  <morrita@google.com>

        [Refactoring] NodeRenderingContext ctor could be built on top of the ComposedShadowTreeWalker
        https://bugs.webkit.org/show_bug.cgi?id=89732

        Reviewed by Dimitri Glazkov.

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

2012-06-28  John Sullivan  <sullivan@apple.com>

        <https://bugs.webkit.org/show_bug.cgi?id=90216>
        <rdar://problem/11766518>
        Undo handling in WebKit2 is not robust against some page-closing code paths

        Reviewed by Enrica Casucci.

        * UIProcess/API/mac/PageClientImpl.h:
        Declared public function viewWillMoveToAnotherWindow().
        
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::viewWillMoveToAnotherWindow):
        New function, calls clearAllEditCommands() to remove any Undo actions from the stack.
        This guarantees that no Undo actions will be abandoned when the PageClientImpl is dealloc'ed.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView viewWillMoveToWindow:]):
        Now informs PageClientImpl via new function PageClientImpl::viewWillMoveToAnotherWindow().

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

        [WK2] Add C API to inspect a Web Intent service
        https://bugs.webkit.org/show_bug.cgi?id=89276

        Reviewed by Anders Carlsson.

        Add C API for Web intent service so that it can be queried
        on client side.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/C/WKIntentServiceInfo.cpp: Added.
        (WKIntentServiceInfoGetTypeID):
        (WKIntentServiceInfoCopyAction):
        (WKIntentServiceInfoCopyType):
        (WKIntentServiceInfoCopyHref):
        (WKIntentServiceInfoCopyTitle):
        (WKIntentServiceInfoCopyDisposition):
        * UIProcess/API/C/WKIntentServiceInfo.h: Added.

2012-06-28  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt] KURL assert at fast/loader/opaque-base-url.html
        https://bugs.webkit.org/show_bug.cgi?id=89468

        Reviewed by Simon Hausmann.

        Don't use the KURL(ParsedURLStringTag, const String&) constructor.
        We cannot be sure that the url in encode was valid and even if it
        was the message could have been corrupted.
        * Shared/qt/WebCoreArgumentCodersQt.cpp:
        (CoreIPC::::encode):
        (CoreIPC::::decode):

2012-06-27  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix the build without TEXTURE_MAPPER_GL.

        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
        (WebKit::WebPage::platformInitialize):

2012-06-25  Mark Hahnenberg  <mhahnenberg@apple.com>

        JSLock should be per-JSGlobalData
        https://bugs.webkit.org/show_bug.cgi?id=89123

        Reviewed by Geoffrey Garen.

        Changed all sites that used JSLock to instead use the new JSLockHolder
        and pass in the correct JS context that the code is about to interact with that 
        needs protection. Also added a couple JSLocks to places that didn't already 
        have it that needed it.

        * Shared/mac/WebMemorySampler.mac.mm:
        (WebKit::WebMemorySampler::sampleWebKit):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::javaScriptObjectsCount):
        (WebKit::InjectedBundle::reportException):
        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::callMethod):
        (WebKit::JSNPObject::callObject):
        (WebKit::JSNPObject::callConstructor):
        (WebKit::JSNPObject::put):
        (WebKit::JSNPObject::deleteProperty):
        (WebKit::JSNPObject::getOwnPropertyNames):
        (WebKit::JSNPObject::propertyGetter):
        * WebProcess/Plugins/Netscape/NPJSObject.cpp:
        (WebKit::NPJSObject::hasMethod):
        (WebKit::NPJSObject::invoke):
        (WebKit::NPJSObject::invokeDefault):
        (WebKit::NPJSObject::hasProperty):
        (WebKit::NPJSObject::getProperty):
        (WebKit::NPJSObject::setProperty):
        (WebKit::NPJSObject::removeProperty):
        (WebKit::NPJSObject::enumerate):
        (WebKit::NPJSObject::construct):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
        (WebKit::NPRuntimeObjectMap::evaluate):
        (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::jsWrapperForWorld):
        (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::runJavaScriptInMainFrame):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::getWebCoreStatistics):

2012-06-27  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        REGRESSION(r121135): It made qmltests::WebViewColorChooser::test_accept() fail
        https://bugs.webkit.org/show_bug.cgi?id=89871

        Reviewed by Simon Hausmann.

        Added proper event synchronization to the test case.

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

2012-06-27  Brady Eidson  <beidson@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=87513
        WebBackForwardList needs an overhaul to consistently and clearly handle error conditions.

        Reviewed by Darin Adler.

        - We think a null entry might somehow be getting in the list so we now try to prevent that.
        - We think a null entry might somehow be in the list so we now null check when indexing into m_entries.
        - A lot of index math - especially tracking "no current index" - was implicit or wrong.
        - Operating on a WebBackForwardList whose page has been closed is now an explicit no-op.
        - The session state data reading and writing code was fragile and needed an overhaul.
        - This includes adding a new V1 format of the session data that is easier to validate when reading back in.

        * UIProcess/WebBackForwardList.cpp:
        (WebKit::WebBackForwardList::~WebBackForwardList):
        (WebKit::WebBackForwardList::pageClosed):
        (WebKit::WebBackForwardList::addItem):
        (WebKit::WebBackForwardList::goToItem):
        (WebKit::WebBackForwardList::backListCount):
        (WebKit::WebBackForwardList::forwardListCount):
        (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
        (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
        (WebKit::WebBackForwardList::clear):

        * UIProcess/WebBackForwardList.h:
        (WebBackForwardList):

        * UIProcess/cf/WebBackForwardListCF.cpp:
        (WebKit::createEmptySessionHistoryDictionary):
        (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
        (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):
        (WebKit::WebBackForwardList::restoreFromV0CFDictionaryRepresentation):
        (WebKit::WebBackForwardList::restoreFromV1CFDictionaryRepresentation):
        (WebKit::extractBackForwardListEntriesFromArray):

2012-06-27  Zan Dobersek  <zandobersek@gmail.com>

        [Gtk] Add support for the Gamepad API
        https://bugs.webkit.org/show_bug.cgi?id=87503

        Reviewed by Carlos Garcia Campos.

        Add the Gamepad feature dependencies libraries to the LIBADD
        list for the libwebkitgtk2 library.

        * GNUmakefile.am:

2012-06-26  Simon Hausmann  <simon.hausmann@nokia.com>

        [Qt] Avoid use of deprecated Qt API

        Reviewed by Tor Arne Vestbø.

        QGuiApplication::inputPanel() has been deprecated in favour of
        inputMethod().

        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
        (WebKit::QtWebPageEventHandler::~QtWebPageEventHandler):
        (WebKit::setInputPanelVisible):
        (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
        (WebKit::QtWebPageEventHandler::updateTextInputState):

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

        [WK2][GTK] Uninitialized variable in TextCheckerGtk.cpp
        https://bugs.webkit.org/show_bug.cgi?id=89948

        Reviewed by Martin Robinson.

        Properly initialize didInitializeState in
        TextChecker::state().

        * UIProcess/gtk/TextCheckerGtk.cpp:
        (WebKit::TextChecker::state):

2012-06-25  Simon Hausmann  <simon.hausmann@nokia.com>

        [Qt] Make it possible to build WebKit without QtWidgets
        https://bugs.webkit.org/show_bug.cgi?id=78109

        Reviewed by Tor Arne Vestbø.

        * WebKit2.pri: Add missing WK2 specific dependencies.
        * qt/MainQt.cpp: Do the QStyle initialization hook only if we are
        compiling with QtWidgets support.
        (WebKit):
        (main):

2012-06-25  Raphael Kubo da Costa  <rakuco@webkit.org>

        [EFL][WK2] Include unistd.h in PlatformProcessIdentifier.h.
        https://bugs.webkit.org/show_bug.cgi?id=89804

        Reviewed by Hajime Morita.

        The pid_t typedef ends up coming from stdlib.h (indirectly via WTF
        includes) on Mac and Linux, even though that is not mandated by
        POSIX and breaks other platforms (such as FreeBSD). Fix that by
        explicitly including unistd.h, which is where the typedef is
        supposed to come from.

        * Platform/PlatformProcessIdentifier.h:

2012-06-25  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][Qt][EFL] Extract common code from LayerTreeHostQt
        https://bugs.webkit.org/show_bug.cgi?id=89837

        Reviewed by Noam Rosenthal.

        Extract common code from LayerTreeHostQt to be used by both Qt and Efl.
        I renamed LayerTreeHost to LayerTreeCoordinator, and these are moved under WebProcess/WebPage/LayerTreeCoordinator.
        I Modified LayerTreeHostProxy to LayerTreeCoordinatorProxy too, Because LayerTreeHostProxy and LayerTreeHost were pair.
        Also WebGraphicsLayer moved under that directory.

        * CMakeLists.txt:
        * DerivedSources.pri:
        * GNUmakefile.list.am:
        * Platform/CoreIPC/MessageID.h:
        * Target.pri:
        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPagePrivate::paint):
        (QQuickWebPage::updatePaintNode):
        (QQuickWebPagePrivate::updateSize):
        * UIProcess/DrawingAreaProxy.cpp:
        (WebKit::DrawingAreaProxy::didReceiveLayerTreeCoordinatorProxyMessage):
        * UIProcess/DrawingAreaProxy.h:
        (WebKit):
        (WebKit::DrawingAreaProxy::layerTreeCoordinatorProxy):
        (DrawingAreaProxy):
        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
        (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
        (WebKit::DrawingAreaProxyImpl::didReceiveLayerTreeCoordinatorProxyMessage):
        (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
        * UIProcess/DrawingAreaProxyImpl.h:
        (WebKit):
        (DrawingAreaProxyImpl):
        * UIProcess/LayerTreeCoordinatorProxy.cpp: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.cpp.
        (WebKit):
        (WebKit::LayerTreeCoordinatorProxy::LayerTreeCoordinatorProxy):
        (WebKit::LayerTreeCoordinatorProxy::~LayerTreeCoordinatorProxy):
        (WebKit::LayerTreeCoordinatorProxy::updateViewport):
        (WebKit::LayerTreeCoordinatorProxy::dispatchUpdate):
        (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
        (WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
        (WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
        (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerState):
        (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerChildren):
        (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerFilters):
        (WebKit::LayerTreeCoordinatorProxy::didRenderFrame):
        (WebKit::LayerTreeCoordinatorProxy::createDirectlyCompositedImage):
        (WebKit::LayerTreeCoordinatorProxy::destroyDirectlyCompositedImage):
        (WebKit::LayerTreeCoordinatorProxy::setContentsSize):
        (WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
        (WebKit::LayerTreeCoordinatorProxy::renderNextFrame):
        (WebKit::LayerTreeCoordinatorProxy::didChangeScrollPosition):
        (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
        (WebKit::LayerTreeCoordinatorProxy::purgeBackingStores):
        * UIProcess/LayerTreeCoordinatorProxy.h: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.h.
        (WebKit):
        (LayerTreeCoordinatorProxy):
        (WebKit::LayerTreeCoordinatorProxy::layerTreeRenderer):
        * UIProcess/LayerTreeCoordinatorProxy.messages.in: Renamed from Source/WebKit2/UIProcess/LayerTreeHostProxy.messages.in.
        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):
        (WebKit::WebLayerTreeRenderer::updateViewport):
        (WebKit::WebLayerTreeRenderer::renderNextFrame):
        (WebKit::WebLayerTreeRenderer::purgeBackingStores):
        (WebKit::WebLayerTreeRenderer::detach):
        * UIProcess/WebLayerTreeRenderer.h:
        (WebKit):
        (WebLayerTreeRenderer):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::didReceiveMessage):
        * WebKit2.pri:
        * WebProcess/WebPage/DrawingArea.h:
        (DrawingArea):
        * WebProcess/WebPage/DrawingAreaImpl.cpp:
        (WebKit::DrawingAreaImpl::didReceiveLayerTreeCoordinatorMessage):
        * WebProcess/WebPage/DrawingAreaImpl.h:
        (DrawingAreaImpl):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.cpp.
        (WebKit):
        (WebKit::LayerTreeCoordinator::create):
        (WebKit::LayerTreeCoordinator::~LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::setLayerFlushSchedulingEnabled):
        (WebKit::LayerTreeCoordinator::scheduleLayerFlush):
        (WebKit::LayerTreeCoordinator::cancelPendingLayerFlush):
        (WebKit::LayerTreeCoordinator::setShouldNotifyAfterNextScheduledLayerFlush):
        (WebKit::LayerTreeCoordinator::setRootCompositingLayer):
        (WebKit::LayerTreeCoordinator::invalidate):
        (WebKit::LayerTreeCoordinator::setNonCompositedContentsNeedDisplay):
        (WebKit::LayerTreeCoordinator::scrollNonCompositedContents):
        (WebKit::LayerTreeCoordinator::forceRepaint):
        (WebKit::LayerTreeCoordinator::sizeDidChange):
        (WebKit::LayerTreeCoordinator::didInstallPageOverlay):
        (WebKit::LayerTreeCoordinator::didUninstallPageOverlay):
        (WebKit::LayerTreeCoordinator::setPageOverlayNeedsDisplay):
        (WebKit::LayerTreeCoordinator::setPageOverlayOpacity):
        (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
        (WebKit::LayerTreeCoordinator::syncLayerState):
        (WebKit::LayerTreeCoordinator::syncLayerChildren):
        (WebKit::LayerTreeCoordinator::syncCanvas):
        (WebKit::LayerTreeCoordinator::syncLayerFilters):
        (WebKit::LayerTreeCoordinator::attachLayer):
        (WebKit::LayerTreeCoordinator::detachLayer):
        (WebKit::updateOffsetFromViewportForSelf):
        (WebKit::updateOffsetFromViewportForLayer):
        (WebKit::LayerTreeCoordinator::syncFixedLayers):
        (WebKit::LayerTreeCoordinator::performScheduledLayerFlush):
        (WebKit::LayerTreeCoordinator::layerFlushTimerFired):
        (WebKit::LayerTreeCoordinator::createPageOverlayLayer):
        (WebKit::LayerTreeCoordinator::destroyPageOverlayLayer):
        (WebKit::LayerTreeCoordinator::adoptImageBackingStore):
        (WebKit::LayerTreeCoordinator::releaseImageBackingStore):
        (WebKit::LayerTreeCoordinator::notifyAnimationStarted):
        (WebKit::LayerTreeCoordinator::notifySyncRequired):
        (WebKit::LayerTreeCoordinator::paintContents):
        (WebKit::LayerTreeCoordinator::showDebugBorders):
        (WebKit::LayerTreeCoordinator::showRepaintCounter):
        (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
        (WebKit::LayerTreeCoordinator::createTile):
        (WebKit::LayerTreeCoordinator::updateTile):
        (WebKit::LayerTreeCoordinator::removeTile):
        (WebKit::LayerTreeCoordinator::visibleContentsRect):
        (WebKit::LayerTreeCoordinator::setVisibleContentsRect):
        (WebKit::LayerTreeCoordinator::renderNextFrame):
        (WebKit::LayerTreeCoordinator::layerTreeTileUpdatesAllowed):
        (WebKit::LayerTreeCoordinator::purgeBackingStores):
        (WebKit::LayerTreeCoordinator::beginContentUpdate):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.h: Renamed from Source/WebKit2/WebProcess/WebPage/qt/LayerTreeHostQt.h.
        (WebKit):
        (LayerTreeCoordinator):
        (WebKit::LayerTreeCoordinator::layerTreeContext):
        (WebKit::LayerTreeCoordinator::pageOverlayShouldApplyFadeWhenPainting):
        (WebKit::LayerTreeCoordinator::pauseRendering):
        (WebKit::LayerTreeCoordinator::resumeRendering):
        (WebKit::LayerTreeCoordinator::deviceScaleFactorDidChange):
        * WebProcess/WebPage/LayerTreeCoordinator/LayerTreeCoordinator.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.messages.in.
        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.cpp: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.cpp.
        (WebCore):
        (WebCore::layerByIDMap):
        (WebCore::WebGraphicsLayer::layerByID):
        (WebCore::toWebLayerID):
        (WebCore::WebGraphicsLayer::didChangeLayerState):
        (WebCore::WebGraphicsLayer::didChangeChildren):
        (WebCore::WebGraphicsLayer::didChangeFilters):
        (WebCore::WebGraphicsLayer::setShouldUpdateVisibleRect):
        (WebCore::WebGraphicsLayer::didChangeGeometry):
        (WebCore::WebGraphicsLayer::WebGraphicsLayer):
        (WebCore::WebGraphicsLayer::~WebGraphicsLayer):
        (WebCore::WebGraphicsLayer::willBeDestroyed):
        (WebCore::WebGraphicsLayer::setChildren):
        (WebCore::WebGraphicsLayer::addChild):
        (WebCore::WebGraphicsLayer::addChildAtIndex):
        (WebCore::WebGraphicsLayer::addChildAbove):
        (WebCore::WebGraphicsLayer::addChildBelow):
        (WebCore::WebGraphicsLayer::replaceChild):
        (WebCore::WebGraphicsLayer::removeFromParent):
        (WebCore::WebGraphicsLayer::setPosition):
        (WebCore::WebGraphicsLayer::setAnchorPoint):
        (WebCore::WebGraphicsLayer::setSize):
        (WebCore::WebGraphicsLayer::setTransform):
        (WebCore::WebGraphicsLayer::setChildrenTransform):
        (WebCore::WebGraphicsLayer::setPreserves3D):
        (WebCore::WebGraphicsLayer::setMasksToBounds):
        (WebCore::WebGraphicsLayer::setDrawsContent):
        (WebCore::WebGraphicsLayer::setContentsOpaque):
        (WebCore::WebGraphicsLayer::setBackfaceVisibility):
        (WebCore::WebGraphicsLayer::setOpacity):
        (WebCore::WebGraphicsLayer::setContentsRect):
        (WebCore::WebGraphicsLayer::setContentsNeedsDisplay):
        (WebCore::WebGraphicsLayer::setContentsToCanvas):
        (WebCore::WebGraphicsLayer::setFilters):
        (WebCore::WebGraphicsLayer::setContentsToImage):
        (WebCore::WebGraphicsLayer::setMaskLayer):
        (WebCore::WebGraphicsLayer::setReplicatedByLayer):
        (WebCore::WebGraphicsLayer::setNeedsDisplay):
        (WebCore::WebGraphicsLayer::setNeedsDisplayInRect):
        (WebCore::WebGraphicsLayer::id):
        (WebCore::WebGraphicsLayer::syncCompositingState):
        (WebCore::toWebGraphicsLayer):
        (WebCore::WebGraphicsLayer::syncChildren):
        (WebCore::WebGraphicsLayer::syncFilters):
        (WebCore::WebGraphicsLayer::syncLayerState):
        (WebCore::WebGraphicsLayer::syncCanvas):
        (WebCore::WebGraphicsLayer::ensureImageBackingStore):
        (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
        (WebCore::WebGraphicsLayer::tiledBackingStorePaintBegin):
        (WebCore::WebGraphicsLayer::setRootLayer):
        (WebCore::WebGraphicsLayer::setVisibleContentRectTrajectoryVector):
        (WebCore::WebGraphicsLayer::setContentsScale):
        (WebCore::WebGraphicsLayer::effectiveContentsScale):
        (WebCore::WebGraphicsLayer::adjustContentsScale):
        (WebCore::WebGraphicsLayer::createBackingStore):
        (WebCore::WebGraphicsLayer::tiledBackingStorePaint):
        (WebCore::WebGraphicsLayer::tiledBackingStorePaintEnd):
        (WebCore::WebGraphicsLayer::tiledBackingStoreUpdatesAllowed):
        (WebCore::WebGraphicsLayer::tiledBackingStoreContentsRect):
        (WebCore::WebGraphicsLayer::shouldUseTiledBackingStore):
        (WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
        (WebCore::WebGraphicsLayer::tiledBackingStoreBackgroundColor):
        (WebCore::WebGraphicsLayer::beginContentUpdate):
        (WebCore::WebGraphicsLayer::createTile):
        (WebCore::WebGraphicsLayer::updateTile):
        (WebCore::WebGraphicsLayer::removeTile):
        (WebCore::WebGraphicsLayer::updateContentBuffers):
        (WebCore::WebGraphicsLayer::purgeBackingStores):
        (WebCore::WebGraphicsLayer::setWebGraphicsLayerClient):
        (WebCore::WebGraphicsLayer::adjustVisibleRect):
        (WebCore::WebGraphicsLayer::computeTransformedVisibleRect):
        (WebCore::createWebGraphicsLayer):
        (WebCore::WebGraphicsLayer::initFactory):
        (WebCore::WebGraphicsLayer::selfOrAncestorHaveNonAffineTransforms):
        * WebProcess/WebPage/LayerTreeCoordinator/WebGraphicsLayer.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebGraphicsLayer.h.
        (WebCore):
        (WebKit):
        (WebGraphicsLayerClient):
        (WebGraphicsLayer):
        (WebCore::WebGraphicsLayer::image):
        (WebCore::WebGraphicsLayer::fixedToViewport):
        (WebCore::WebGraphicsLayer::setFixedToViewport):
        (WebCore::WebGraphicsLayer::maskTarget):
        (WebCore::WebGraphicsLayer::setMaskTarget):
        * WebProcess/WebPage/LayerTreeHost.cpp:
        (WebKit::LayerTreeHost::create):
        * WebProcess/WebPage/LayerTreeHost.h:
        (LayerTreeHost):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::didReceiveMessage):

2012-06-25  Anders Carlsson  <andersca@apple.com>

        [Lion WK2] fast/loader/reload-zero-byte-plugin.html hits assert
        https://bugs.webkit.org/show_bug.cgi?id=89611
        <rdar://problem/11714023>

        Reviewed by Sam Weinig.

        Make sure to send the response along to the plug-in in the case where the stream was empty.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::finishedLoading):

2012-06-25  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][Qt][EFL] Move LayerBackingStore into common directory
        https://bugs.webkit.org/show_bug.cgi?id=89838

        Reviewed by Noam Rosenthal.

        Move LayerBackingStore into 'Source/WebKit2/UIProcess/texmap' to be used by both Qt and Efl.

        * Target.pri:
        * UIProcess/texmap/LayerBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.cpp.
        (WebKit):
        (WebKit::LayerBackingStoreTile::swapBuffers):
        (WebKit::LayerBackingStoreTile::setBackBuffer):
        (WebKit::LayerBackingStore::createTile):
        (WebKit::LayerBackingStore::removeTile):
        (WebKit::LayerBackingStore::updateTile):
        (WebKit::LayerBackingStore::texture):
        (WebKit::LayerBackingStore::paintToTextureMapper):
        (WebKit::LayerBackingStore::commitTileOperations):
        * UIProcess/texmap/LayerBackingStore.h: Renamed from Source/WebKit2/UIProcess/qt/LayerBackingStore.h.
        (WebKit):
        (LayerBackingStoreTile):
        (WebKit::LayerBackingStoreTile::LayerBackingStoreTile):
        (WebKit::LayerBackingStoreTile::scale):
        (LayerBackingStore):
        (WebKit::LayerBackingStore::create):
        (WebKit::LayerBackingStore::LayerBackingStore):

2012-06-25  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Test /webkit2/WebKitWebView/permission-requests fails due to a runtime warning
        https://bugs.webkit.org/show_bug.cgi?id=89858

        Reviewed by Xan Lopez.

        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewPermissionRequests): Make runtime warnings non-fatal
        for test /webkit2/WebKitWebView/permission-requests.

2012-06-25  Huang Dongsung  <luxtella@company100.net>

        [GTK] Remove unused code in LayerTreeHostGtk.
        https://bugs.webkit.org/show_bug.cgi?id=89854

        LayerTreeHostGtk::deviceScaleFactor() is unused and LayerTreeHost does not have
        virtual float deviceScaleFactor() const;

        Reviewed by Martin Robinson.

        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
        (LayerTreeHostGtk):

2012-06-24  Andreas Kling  <kling@webkit.org>

        REGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveEvent messages.
        <rdar://problem/11686974>
        <http://webkit.org/b/89659>

        Unreviewed tests assertion fix, handleKeyboardEvent() should call didReceiveKeyEvent()
        rather than didReceiveEvent().

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::handleKeyboardEvent):
        (WebKit::WebPageProxy::didReceiveKeyEvent):

2012-06-24  YoungTaeck Song  <youngtaeck.song@samsung.com>

        [WK2][Qt][EFL] Modify Qt specific code to common code
        https://bugs.webkit.org/show_bug.cgi?id=89839

        Reviewed by Noam Rosenthal.

        Modify paintToGraphicsContext’s first argument QPainter to PlatformGraphicsContext to be used by both Qt and Efl.

        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::paintToGraphicsContext):

2012-06-24  Simon Fraser  <simon.fraser@apple.com>

        Rename isPositioned to isOutOfFlowPositioned for clarity
        https://bugs.webkit.org/show_bug.cgi?id=89836

        Reviewed by Antti Koivisto.
        
        RenderObject and RenderStyle had an isPositioned() method that was
        confusing, because it excluded relative positioning. Rename to 
        isOutOfFlowPositioned(), which makes it clearer that it only applies
        to absolute and fixed positioning.

        Simple rename; no behavior change.

        * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
        (WebKit::updateOffsetFromViewportForSelf):

2012-06-24  Andreas Kling  <kling@webkit.org>

        REGRESSION(r120329): Intermittent WebProcess shutdowns due to out-of-line DidReceiveEvent messages.
        <rdar://problem/11686974>
        <http://webkit.org/b/89659>

        Reviewed by Sam Weinig.

        Instead of sending DidReceiveEvent for key events as DispatchMessageEvenWhenWaitingForSyncReply,
        use proper synchronous messages. This makes the WebProcess block while the UIProcess handles
        the event but prevents a weird race condition where DidReceiveEvent gets dispatched just before
        a synchronous DecidePolicyForNavigationAction and something happens below DidReceiveEvent that
        invalidates the frame ID passed to DecidePolicyForNavigationAction.

        This is a speculative fire-fighting fix.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::didReceiveKeyEvent):
        (WebKit::WebPageProxy::didReceiveEvent):
        * UIProcess/WebPageProxy.h:
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::keyEvent):

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

        Unreviewed, rolling out r121058.
        http://trac.webkit.org/changeset/121058
        https://bugs.webkit.org/show_bug.cgi?id=89809

        Patch causes plugins tests to crash in GTK debug builds
        (Requested by zdobersek on #webkit).

        * Shared/mac/WebMemorySampler.mac.mm:
        (WebKit::WebMemorySampler::sampleWebKit):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::javaScriptObjectsCount):
        (WebKit::InjectedBundle::reportException):
        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::callMethod):
        (WebKit::JSNPObject::callObject):
        (WebKit::JSNPObject::callConstructor):
        (WebKit::JSNPObject::put):
        (WebKit::JSNPObject::deleteProperty):
        (WebKit::JSNPObject::getOwnPropertyNames):
        (WebKit::JSNPObject::propertyGetter):
        * WebProcess/Plugins/Netscape/NPJSObject.cpp:
        (WebKit::NPJSObject::hasMethod):
        (WebKit::NPJSObject::invoke):
        (WebKit::NPJSObject::invokeDefault):
        (WebKit::NPJSObject::hasProperty):
        (WebKit::NPJSObject::getProperty):
        (WebKit::NPJSObject::setProperty):
        (WebKit::NPJSObject::removeProperty):
        (WebKit::NPJSObject::enumerate):
        (WebKit::NPJSObject::construct):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
        (WebKit::NPRuntimeObjectMap::evaluate):
        (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::jsWrapperForWorld):
        (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::runJavaScriptInMainFrame):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::getWebCoreStatistics):

2012-06-23  Zan Dobersek  <zandobersek@gmail.com>

        Unreviewed build fix for GTK's WebKit2 build after r121093.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewPopulateContextMenu):

2012-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix several GTK+ unit tests.

        GTK+ unit tests using WebViewTest::wait() started to fail due to a
        bug introduced in r121093.

        * UIProcess/API/gtk/tests/WebViewTest.cpp:
        (WebViewTest::wait): Use this instead of m_mainLoop as user data
        for the idle callback.

2012-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add ContextMenu API to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=81011

        Reviewed by Martin Robinson.

        Add WebKitWebView::context-menu signal and WebKitContextMenu and
        WebKitContextMenuItem objects to customize the default menu or
        buils new menus.

        * GNUmakefile.list.am: Add new files to destination.
        * UIProcess/API/gtk/WebKitContextMenu.cpp: Added.
        (webkitContextMenuFinalize):
        (webkit_context_menu_init):
        (webkit_context_menu_class_init):
        (webkitContextMenuPopulate): Populate the given vector of
        ContextMenuItems with the WebKitContextMenu items releasing the
        items added to the vector.
        (webkitContextMenuCreate): Create a new WebKitContextMenu for the
        given WKArrayRef of WKContextMenuItemRef.
        (webkitContextMenuSetParentItem): Set the parent menu item of the
        menu. Used when a menu is added as a submenu of a menu item.
        (webkitContextMenuGetParentItem): Return the parent menu item of
        the menu.
        (webkit_context_menu_new): Create a new WebKitContextMenu.
        (webkit_context_menu_new_with_items): Create a new
        WebKitContextMenu using the given list of WebKitContextMenuItem.
        (webkit_context_menu_prepend): Add item at the beginning.
        (webkit_context_menu_append): Add item at the end.
        (webkit_context_menu_insert): Insert item at a random position.
        (webkit_context_menu_move_item): Move an existing item to a new
        position.
        (webkit_context_menu_get_items): Get the list of items.
        (webkit_context_menu_get_n_items): Get the number of items.
        (webkit_context_menu_first): Get the first item.
        (webkit_context_menu_last): Get the last item.
        (webkit_context_menu_get_item_at_position): Get the item at the
        given position.
        (webkit_context_menu_remove): Remove the given item.
        (webkit_context_menu_remove_all): Remove all items.
        * UIProcess/API/gtk/WebKitContextMenu.h: Added.
        * UIProcess/API/gtk/WebKitContextMenuActions.cpp: Added.
        (webkitContextMenuActionIsCheckable): Check if the given stock
        action is a toggle action.
        (webkitContextMenuActionGetActionTag): Get the WebCore
        ContextMenuAction corresponding to the given stock action.
        (webkitContextMenuActionGetForContextMenuItem): Get the stock
        action corresponding to the given WebCore ContextMenuAction.
        (webkitContextMenuActionGetLabel): Get the label string of the
        given stock action.
        * UIProcess/API/gtk/WebKitContextMenuActions.h: Added.
        * UIProcess/API/gtk/WebKitContextMenuActionsPrivate.h: Added.
        * UIProcess/API/gtk/WebKitContextMenuItem.cpp: Added.
        (webkitContextMenuItemFinalize):
        (webkit_context_menu_item_init):
        (webkit_context_menu_item_class_init):
        (checkAndWarnIfMenuHasParentItem): Check whether the given menu
        is already inside another menu showing a warning in such case.
        (webkitContextMenuItemSetSubMenu): Set the submenu of a menu item,
        checking that the menu is not part of another menu and setting the
        item as the parent of the submenu.
        (webkitContextMenuItemCreate): Create a new WebKitContextMenuItem
        for the given WKContextMenuItemRef.
        (webkitContextMenuItemCreateForGtkItem): Create a new
        WebKitContextMenuItem using the given GtkMenuItem.
        (webkitContextMenuItemSetSubMenuFromGtkMenu): Set the given
        GtkMenu as submenu of the item. This is used only to add Input
        Methods submenu that is created by GTK.
        (webkitContextMenuItemRelease): Release the WebCore
        ContextMenuItem associated to the item.
        (webkit_context_menu_item_new): Create a new WebKitContextMenuItem
        for the given GtkAction.
        (webkit_context_menu_item_new_from_stock_action): Create a new
        WebKitContextMenuItem for a stock action.
        (webkit_context_menu_item_new_from_stock_action_with_label):
        Create a new WebKitContextMenuItem for a stock action using a
        custom label.
        (webkit_context_menu_item_new_with_submenu): Create a new
        WebKitContextMenuItem with a submenu.
        (webkit_context_menu_item_new_separator): Create a new separator
        menu item.
        (webkit_context_menu_item_get_action): Get the GtkAction of the item.
        (webkit_context_menu_item_get_stock_action): Get the stock action
        of the item.
        (webkit_context_menu_item_is_separator): Whether item is a separator.
        (webkit_context_menu_item_set_submenu): Set or replace the
        submenu of the item.
        (webkit_context_menu_item_get_submenu): Get the submenu of the item.
        * UIProcess/API/gtk/WebKitContextMenuItem.h: Added.
        * UIProcess/API/gtk/WebKitContextMenuItemPrivate.h: Added.
        * UIProcess/API/gtk/WebKitContextMenuPrivate.h: Added.
        * UIProcess/API/gtk/WebKitDefines.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_class_init): Add WebKitWebView::context-menu signal.
        (getUnicodeMenuItemPosition): Helper function that returns the
        position of the unicode menu item in the proposed context menu.
        (webkitWebViewCreateAndAppendInputMethodsMenuItem): Use
        WebKitContextMenu API to add the input methods submenu to the
        default context menu.
        (webkitWebViewPopulateContextMenu): Create a WebKitContextMenu for
        the default context menu and emit WebKitWebView::context-menu
        signal. Then populate the context menu proxy with the resulting
        WebKitContextMenu.
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (webkitWebViewBaseButtonPressEvent): In case of right click save
        the event to be used by context menu signal.
        (webkitWebViewBaseTakeContextMenuEvent): Return and release the
        saved button event.
        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add sections for
        WebKitContextMenu and WebKitContextMenuItem.
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/docs/webkit2gtk.types: Add
        webkit_context_menu_get_type and webkit_context_menu_item_get_type.
        * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test for context menu.
        * UIProcess/API/gtk/tests/TestContextMenu.cpp: Added.
        (testContextMenuDefaultMenu):
        (testContextMenuPopulateMenu):
        (testContextMenuCustomMenu):
        (testContextMenuDisableMenu):
        (testContextMenuSubMenu):
        (beforeAll):
        (afterAll):
        * UIProcess/API/gtk/tests/TestMain.h:
        (Test::addLogFatalFlag): Add a log level flag to the mask of flags
        causing the program to abort.
        (Test::removeLogFatalFlag): Remove a log level flag to the mask of
        flags causing the program to abort.
        * UIProcess/API/gtk/tests/WebViewTest.cpp:
        (WebViewTest::quitMainLoop): Finish the main loop.
        (WebViewTest::quitMainLoopAfterProcessingPendingEvents): Finish
        the main loop when all pending events have been processed.
        (quitMainLoopIdleCallback):
        (WebViewTest::wait):
        * UIProcess/API/gtk/tests/WebViewTest.h:
        * UIProcess/API/gtk/webkit2.h: Include WebKitContextMenu.h,
        WebKitContextMenuItem.h and WebKitContextMenuActions.h.
        * UIProcess/API/gtk/webkit2marshal.list:
        * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
        (WebKit::WebContextMenuProxyGtk::showContextMenu): Attach the
        popup menu to the view widget before showing it.

2012-06-22  Alexandru Chiculita  <achicu@adobe.com>

        [CSS Shaders] Re-enable the CSS Shaders compile time flag on Safari Mac
        https://bugs.webkit.org/show_bug.cgi?id=89781

        Reviewed by Dean Jackson.

        Added ENABLE_CSS_SHADERS flag as enabled by default on Safari for Mac.

        * Configurations/FeatureDefines.xcconfig:

2012-06-22  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Support keyboard event
        https://bugs.webkit.org/show_bug.cgi?id=89268

        Reviewed by Chang Shu.

        * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
        (WebKit::WebEditorClient::handleKeyboardEvent): Implemented default behavior.
        * WebProcess/WebPage/efl/WebPageEfl.cpp:
        (WebKit::WebPage::interpretKeyEvent): Implemented like WebKit1/Efl did.

2012-06-20  Mark Hahnenberg  <mhahnenberg@apple.com>

        JSLock should be per-JSGlobalData
        https://bugs.webkit.org/show_bug.cgi?id=89123

        Reviewed by Gavin Barraclough.

        Changed all sites that used JSLock to instead use the new JSLockHolder
        and pass in the correct JS context that the code is about to interact with that 
        needs protection.

        * Shared/mac/WebMemorySampler.mac.mm:
        (WebKit::WebMemorySampler::sampleWebKit):
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::javaScriptObjectsCount):
        (WebKit::InjectedBundle::reportException):
        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::callMethod):
        (WebKit::JSNPObject::callObject):
        (WebKit::JSNPObject::callConstructor):
        (WebKit::JSNPObject::put):
        (WebKit::JSNPObject::deleteProperty):
        (WebKit::JSNPObject::getOwnPropertyNames):
        (WebKit::JSNPObject::propertyGetter):
        * WebProcess/Plugins/Netscape/NPJSObject.cpp:
        (WebKit::NPJSObject::hasMethod):
        (WebKit::NPJSObject::invoke):
        (WebKit::NPJSObject::invokeDefault):
        (WebKit::NPJSObject::hasProperty):
        (WebKit::NPJSObject::getProperty):
        (WebKit::NPJSObject::setProperty):
        (WebKit::NPJSObject::removeProperty):
        (WebKit::NPJSObject::enumerate):
        (WebKit::NPJSObject::construct):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
        (WebKit::NPRuntimeObjectMap::evaluate):
        (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit::WebFrame::jsWrapperForWorld):
        (WebKit::WebFrame::computedStyleIncludingVisitedInfo):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::runJavaScriptInMainFrame):
        * WebProcess/WebProcess.cpp:
        (WebKit::WebProcess::getWebCoreStatistics):

2012-06-22  Jocelyn Turcotte  <turcotte.j@gmail.com>

        [Qt] Fix the remote inspector loading problems on Mac
        https://bugs.webkit.org/show_bug.cgi?id=89747

        Reviewed by Simon Hausmann.

        Reverse the creation order of the inter-dependent WebSocketServerConnection
        and SocketStreamHandle to make sure that the later has a client properly
        set on construction.

        This is to work around the assert on m_state in SocketStreamHandle::setClient.

        * UIProcess/InspectorServer/WebSocketServer.cpp:
        (WebKit::WebSocketServer::didAcceptConnection):
        * UIProcess/InspectorServer/WebSocketServer.h:
        (WebKit::WebSocketServer::client):
        (WebSocketServer):
        * UIProcess/InspectorServer/WebSocketServerConnection.cpp:
        (WebKit::WebSocketServerConnection::WebSocketServerConnection):
        (WebKit::WebSocketServerConnection::setSocketHandle):
        (WebKit):
        * UIProcess/InspectorServer/WebSocketServerConnection.h:
        (WebSocketServerConnection):
        * UIProcess/InspectorServer/qt/WebSocketServerQt.cpp:
        (WebKit::QtTcpServerHandler::handleNewConnection):

2012-06-22  Sergio Villar Senin  <svillar@igalia.com>

        [WK2] FindController::hideFindUI should unmark highlighted text matches
        https://bugs.webkit.org/show_bug.cgi?id=77747

        Reviewed by Carlos Garcia Campos.

        Unmark all text matches whenever FindController::hideFindUI is
        called to allow callers using the ShowHighlight find option to
        remove highlighting.

        This patch enables a unit test for the WebKitFindController
        previously guarded by a #if(0) after r109222.

        * UIProcess/API/gtk/tests/TestWebKitFindController.cpp:
        (testFindControllerHide):
        * WebProcess/WebPage/FindController.cpp:
        (WebKit::FindController::hideFindUI):

2012-06-21  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add C API to inspect a Web Intent
        https://bugs.webkit.org/show_bug.cgi?id=89275

        Reviewed by Anders Carlsson.

        Add C API for Web Intent so that it can be queried
        on client side.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/C/WKIntentData.cpp: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
        (WKIntentDataGetTypeID):
        (WKIntentDataCopyAction):
        (WKIntentDataCopyType):
        (WKIntentDataCopyService):
        (WKIntentDataCopySuggestions):
        (WKIntentDataCopyExtra):
        (WKIntentDataCopyExtras):
        * UIProcess/API/C/WKIntentData.h: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
        * UIProcess/WebIntentData.cpp:
        (WebKit::WebIntentData::suggestions):
        (WebKit):
        (WebKit::WebIntentData::extra):
        (WebKit::WebIntentData::extras):
        * UIProcess/WebIntentData.h:
        (WebIntentData):

2012-06-21  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Properly encode/decode service in IntentData
        https://bugs.webkit.org/show_bug.cgi?id=89460

        Reviewed by Gustavo Noronha Silva.

        Update IntentData::encode() and IntentData::decode()
        so that the "service" member is properly encoded
        and decoded.

        * Shared/IntentData.cpp:
        (WebKit::IntentData::encode):
        (WebKit::IntentData::decode):

2012-06-21  Ryuan Choi  <ryuan.choi@gmail.com>

        [EFL][WK2] Make WebKit2/Efl headers and resources installable.
        https://bugs.webkit.org/show_bug.cgi?id=88207

        Reviewed by Chang Shu.

        * CMakeLists.txt: Install WebProcess.
        * PlatformEfl.cmake: Generate ewebkit2.pc and install it.
        * efl/ewebkit2.pc.in: Added.

2012-06-21  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL[WK2] Add WKViewEfl and WebKit2 API Object to represent Evas_Object.
        https://bugs.webkit.org/show_bug.cgi?id=88935

        Reviewed by Chang Shu.

        Add WKViewEfl to support WTR/Efl.

        * PlatformEfl.cmake:
        * Shared/API/c/WKBase.h:
        * Shared/API/c/efl/WKBaseEfl.h: Added.
        * UIProcess/API/C/WKAPICast.h:
        * UIProcess/API/C/efl/WKAPICastEfl.h: Added.
        (WebKit):
        * UIProcess/API/C/efl/WKView.cpp: Added.
        (WKViewCreate):
        (WKViewGetPage):
        * UIProcess/API/C/efl/WKView.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_page_get):
        * UIProcess/API/efl/ewk_view_private.h:

2012-06-21  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [Qt] API tests for ColorChooser
        https://bugs.webkit.org/show_bug.cgi?id=88101

        Reviewed by Kenneth Rohde Christiansen.

        The test uses the value sanitization to detect if the feature is
        enabled or disabled and will just pass when disabled.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_colorChooser.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/colorChooser.html: Added.

2012-06-21  Thiago Marcos P. Santos  <thiago.santos@intel.com>

        [WK2][Qt] Color chooser API missing
        https://bugs.webkit.org/show_bug.cgi?id=87749

        Reviewed by Kenneth Rohde Christiansen.

        Added public experimental API for ColorChooser. This will
        allow the browser to define a custom dialog for selecting
        color when a input field of type "color" get focus.

        The current implementation gives a model to the QML Component
        that has methods for canceling a request, selecting a color
        and fetching what is the current value of the HTML input.

        * Target.pri:
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::QQuickWebViewPrivate):
        (QQuickWebViewExperimental::colorChooser):
        (QQuickWebViewExperimental::setColorChooser):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit::QtPageClient::createColorChooserProxy):
        * UIProcess/qt/WebColorChooserProxyQt.cpp: Added.
        (WebKit):
        (ColorChooserContextObject):
        (WebKit::ColorChooserContextObject::ColorChooserContextObject):
        (WebKit::ColorChooserContextObject::currentColor):
        (WebKit::ColorChooserContextObject::accept):
        (WebKit::ColorChooserContextObject::reject):
        (WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
        (WebKit::WebColorChooserProxyQt::~WebColorChooserProxyQt):
        (WebKit::WebColorChooserProxyQt::createItem):
        (WebKit::WebColorChooserProxyQt::createContext):
        (WebKit::WebColorChooserProxyQt::setSelectedColor):
        (WebKit::WebColorChooserProxyQt::notifyColorSelected):
        (WebKit::WebColorChooserProxyQt::endChooser):
        * UIProcess/qt/WebColorChooserProxyQt.h: Added.
        (WebCore):
        (WebKit):
        (WebColorChooserProxyQt):
        (WebKit::WebColorChooserProxyQt::create):

2012-06-21  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK] Add support for window.showModalDialog in WebKit2GTK+
        https://bugs.webkit.org/show_bug.cgi?id=79500

        Reviewed by Carlos Garcia Campos.

        Implement runModal in WebKitUIClient to make the WebKitWebView
        emit a 'run-as-modal' signal when requested, creating a new
        mainloop there to block user interaction with the original window
        while the modal dialog is showing.

        * UIProcess/API/gtk/WebKitUIClient.cpp:
        (runModal): Call to the new webkitWebViewRunAsModalPage function.
        (attachUIClientToView): Add runModal.
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (_WebKitWebViewPrivate): Add an atribute for a new main loop.
        (webkitWebViewFinalize): Make sure the main loop for main dialogs,
        if any, is stopped if it was still running.
        (webkit_web_view_class_init): Declare new signal 'run-as-modal'.
        (webkitWebViewRunAsModal): Emit the 'run-as-modal' signal and, if
        handled, create and run a new main loop.
        * UIProcess/API/gtk/WebKitWebView.h:
        (_WebKitWebViewClass): New handler for the 'run-as-modal' signal.
        * UIProcess/API/gtk/WebKitWebViewPrivate.h: Add webkitWebViewRunAsModalPage.

        Allow setting and getting the value of WebPage's canRunModal
        attribute in the WebProcess from the UIProcess after the creation
        of a WebPage, to allow using it from WebKitWebView to allow the
        client application to decide whether to allow create modal
        dialogs, which would result in launching an additional nested
        event loop in the web process, after creating the dialog.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy): Initialize the new
        m_canRunModal attribute, to cache the current status of the
        WebPage in the WebProcess.
        (WebKit::WebPageProxy::initializeUIClient): Call the new function
        setCanRunModal, instead of manually sending the SetCanRunModal message.
        (WebKit::WebPageProxy::creationParameters): Use m_canRunModal
        instead of m_uiClient.canRunModal when preparing the parameters.
        (WebKit::WebPageProxy::setCanRunModal): New public function, it
        sets the value of m_canRunModal and sends a message to the Web
        process for updating the WebPage, whenever possible.
        (WebKit::WebPageProxy::canRunModal): New public function, returns
        the value of the m_canRunModal attribute.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy): Added new public functions and private attribute.

        New property in WebKitSettings to be able to decide whether it is
        allowed to create and run new child webviews as modal dialogs.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (_WebKitSettingsPrivate): New attribute allowModalDialogs.
        (webKitSettingsSetProperty): Handle the new property.
        (webKitSettingsGetProperty): Ditto.
        (webkit_settings_class_init): Install the new property.
        (webkitSettingsAttachSettingsToPage): Make sure the WebPage is
        initialized with the value of the new property.
        (webkit_settings_set_allow_modal_dialogs): New setter.
        (webkit_settings_get_allow_modal_dialogs): New getter.
        * UIProcess/API/gtk/WebKitSettings.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new accessors.

        Connect to the 'notify::allow-modal-dialogs' signal from
        WebKitSettings to ensure that canRunModal property of the WebPage
        is kept up to date. Ensure that signal handlers for monitoring
        settings are disconnected when the webview is finalized.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewSetSettings): Connect to the new signal
        'notify::allow-modal-dialogs', from WebKitSettings.
        (allowModalDialogsChanged): Callback to update WebPage's
        canRunModal property when updated through WebKitSettings.
        (webkitWebViewDisconnectSettingsSignalHandlers): Disconnect signal
        handlers for monitoring WebKitSettings properties.
        (webkitWebViewFinalize): Ensure signal handlers are disconnected.
        (webkit_web_view_set_settings): Ditto.
        * UIProcess/API/gtk/WebKitWebView.h:

        Add new unit tests to check the 'run-as-modal' signal is emitted
        only when the new property in WebKitSettings is set to TRUE.

        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewAllowModalDialogs): New unit test to check that modal
        dialogs are properly created from JavaScript when allowed.
        (testWebViewDisallowModalDialogs): New unit test to check that
        it's not possible to create modal dialogs when not allowed.
        (beforeAll): Add the new unit test.

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

        [WK2] Color chooser API missing
        https://bugs.webkit.org/show_bug.cgi?id=87495

        Reviewed by Andreas Kling.

        Added ColorChooser API to WebKit2. This API allows the
        embedder to define a custom color picker for <input type="color">.

        Only one ColorChooser can be active for a page at a time. Although
        the implementation doesn't not assume a modal dialog, no other
        color chooser will be created until the active one is closed.

        Also added stubs for all platforms, so it wont break the build when
        enabling color chooser, even though they don't have the backend
        implemented yet.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Target.pri:
        * UIProcess/API/efl/PageClientImpl.cpp:
        (WebKit):
        (WebKit::PageClientImpl::createColorChooserProxy):
        * UIProcess/API/efl/PageClientImpl.h:
        (PageClientImpl):
        * UIProcess/API/gtk/PageClientImpl.cpp:
        (WebKit):
        (WebKit::PageClientImpl::createColorChooserProxy):
        * UIProcess/API/gtk/PageClientImpl.h:
        (PageClientImpl):
        * UIProcess/API/mac/PageClientImpl.h:
        (PageClientImpl):
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit):
        (WebKit::PageClientImpl::createColorChooserProxy):
        * UIProcess/PageClient.h:
        (WebKit):
        (PageClient):
        * UIProcess/WebColorChooserProxy.h: Added.
        (WebCore):
        (WebKit):
        (WebColorChooserProxy):
        (Client):
        (WebKit::WebColorChooserProxy::Client::~Client):
        (WebKit::WebColorChooserProxy::~WebColorChooserProxy):
        (WebKit::WebColorChooserProxy::invalidate):
        (WebKit::WebColorChooserProxy::WebColorChooserProxy):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::close):
        (WebKit):
        (WebKit::WebPageProxy::showColorChooser):
        (WebKit::WebPageProxy::setColorChooserColor):
        (WebKit::WebPageProxy::endColorChooser):
        (WebKit::WebPageProxy::didChooseColor):
        (WebKit::WebPageProxy::didEndColorChooser):
        (WebKit::WebPageProxy::processDidCrash):
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * UIProcess/qt/QtPageClient.cpp:
        (WebKit):
        (WebKit::QtPageClient::createColorChooserProxy):
        * UIProcess/qt/QtPageClient.h:
        (QtPageClient):
        * UIProcess/win/WebView.cpp:
        (WebKit):
        (WebKit::WebView::createColorChooserProxy):
        * UIProcess/win/WebView.h:
        (WebView):
        * WebKit2.xcodeproj/project.pbxproj:
        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
        (WebKit::WebChromeClient::createColorChooser):
        * WebProcess/WebCoreSupport/WebColorChooser.cpp: Added.
        (WebKit):
        (WebKit::WebColorChooser::WebColorChooser):
        (WebKit::WebColorChooser::~WebColorChooser):
        (WebKit::WebColorChooser::didChooseColor):
        (WebKit::WebColorChooser::didEndChooser):
        (WebKit::WebColorChooser::disconnectFromPage):
        (WebKit::WebColorChooser::setSelectedColor):
        (WebKit::WebColorChooser::endChooser):
        * WebProcess/WebCoreSupport/WebColorChooser.h: Added.
        (WebCore):
        (WebKit):
        (WebColorChooser):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        (WebKit::WebPage::close):
        (WebKit):
        (WebKit::WebPage::setActiveColorChooser):
        (WebKit::WebPage::didEndColorChooser):
        (WebKit::WebPage::didChooseColor):
        * WebProcess/WebPage/WebPage.h:
        (WebKit):
        (WebPage):
        (WebKit::WebPage::activeColorChooser):
        * WebProcess/WebPage/WebPage.messages.in:
        * win/WebKit2.vcproj:

2012-06-20  Brady Eidson  <beidson@apple.com>

        <rdar://problem/11653784> and https://bugs.webkit.org/show_bug.cgi?id=89590
        showModalDialog message handling is flaky in WebKit2

        Because RunLoop::performWork() swaps the function queue to a temporary Vector before calling
        the functions an inner run-loop - such as we see with running a modal dialog - does not have
        a change to handle any of the functions that were queued after the WebPageProxy::RunModal message.

        By servicing the functions in the queue one at a time we can give the RunLoop a chance to pick up
        where it left off if RunLoop::performWork is re-entered.

        To guarantee RunLoop::performWork is re-entered to handle those functions we also need to signal
        its source before entering the modal run loop so our RunLoop is woken up.

        Reviewed by Darin Adler.

        * Platform/CoreIPC/Connection.cpp:
        (CoreIPC::Connection::wakeUpRunLoop): Added so the WebPageProxy can signal the runloop to be woken up
          before it enters the modal dialog run loop.
        * Platform/CoreIPC/Connection.h:

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::runModal): Call wakeUpRunLoop() before entering the modal dialog run loop.

2012-06-20  Julien Chaffraix  <jchaffraix@webkit.org>

        Use IntSize in RenderLayer to represent scroll offsets
        https://bugs.webkit.org/show_bug.cgi?id=89154

        Reviewed by Eric Seidel.

        * WebProcess/WebPage/win/WebPageWin.cpp:
        (WebKit::WebPage::gestureDidScroll):
        Updated to pass an IntSize to scrollByRecursively.

2012-06-20  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Implement Web Intent delivery
        https://bugs.webkit.org/show_bug.cgi?id=88989

        Reviewed by Anders Carlsson.

        Add a deliverIntent() method to the WebFrame so that
        Web intents can be delivered once matched to a
        specific service.

        * UIProcess/WebFrameProxy.cpp:
        (WebKit):
        (WebKit::WebFrameProxy::deliverIntent):
        * UIProcess/WebFrameProxy.h:
        (WebKit):
        (WebFrameProxy):
        * UIProcess/WebIntentData.h:
        (WebKit::WebIntentData::store):
        * WebProcess/WebPage/WebFrame.cpp:
        (WebKit):
        (WebKit::WebFrame::deliverIntent):
        * WebProcess/WebPage/WebFrame.h:
        (WebKit):
        (WebFrame):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit):
        (WebKit::WebPage::deliverIntentToFrame):
        * WebProcess/WebPage/WebPage.h:
        (WebKit):
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:

2012-06-20  Alexis Menard  <alexis.menard@openbossa.org>

        REGRESSION (120705) : LayerTreeHostQt asserts in debug.
        https://bugs.webkit.org/show_bug.cgi?id=89487

        Reviewed by Noam Rosenthal.

        We try to call createHandle twice on the same handle when the
        first matching atlas is full. This patch solved the problem by
        moving the createHandle call inside UpdateAtlas and call createHandle
        only when the atlas is not full. We can also remove the surface()
        getter as it is not used anymore.

        * WebProcess/WebPage/UpdateAtlas.cpp:
        (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
        * WebProcess/WebPage/UpdateAtlas.h:
        (UpdateAtlas):
        * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
        (WebKit::LayerTreeHostQt::beginContentUpdate):

2012-06-19  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][Regression] Build break after r120786
        https://bugs.webkit.org/show_bug.cgi?id=89549

        Unreviewed build fix for Efl port.

        * CMakeLists.txt: Added disassembler in includes.

2012-06-19  Dan Bernstein  <mitz@apple.com>

        WebKit2 part of: Paginated display API doesn’t allow setting the page progression direction
        https://bugs.webkit.org/show_bug.cgi?id=89394

        Reviewed by Darin Adler.

        * UIProcess/API/C/WKPage.cpp:
        (WKPageSetPaginationMode): Changed to map new WKPaginationMode values to new
        Pagination::Mode values.
        (WKPageGetPaginationMode): Similarly, in the opposite direction.
        * UIProcess/API/C/WKPagePrivate.h: Replaced WKPaginationMode values with ones that specify
        an axis and a direction along that axis.
        * UIProcess/API/mac/WKBrowsingContextController.mm:
        (-[WKBrowsingContextController setPaginationMode:]): Changed to handle new values.
        (-[WKBrowsingContextController paginationMode]): Ditto.
        * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h: Replaced
        WKBrowsingContextPaginationMode values with ones that specify an axis and a direction along
        that axis.

2012-06-19  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt] Create an extra atlas when there is no available buffer space.
        https://bugs.webkit.org/show_bug.cgi?id=89012

        Reviewed by Noam Rosenthal.

        In case of the desktop mode when we scroll the view all the tiles
        are updated. It can happen that there no available buffer space for
        the currently used atlas(especially when scrolling fast). In that case 
        we can create a new one. One future improvement could be to make a timer and 
        delete this extra atlas when it is not used.

        * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
        (WebKit::beginContentUpdateInAtlas):
        (WebKit::LayerTreeHostQt::beginContentUpdate):
        * WebProcess/WebPage/qt/LayerTreeHostQt.h:
        (LayerTreeHostQt):

2012-06-19  Csaba Osztrogonác  <ossy@webkit.org>

        [Qt] Buildfix for newer Qt5, use QPointer instead of the deprecated QWeakPointer.
        https://bugs.webkit.org/show_bug.cgi?id=89449

        Reviewed by Simon Hausmann.

        * UIProcess/API/qt/qquicknetworkreply_p.h:

2012-06-19  Mike West  <mkwst@chromium.org>

        Introduce ENABLE_CSP_NEXT configuration flag.
        https://bugs.webkit.org/show_bug.cgi?id=89300

        Reviewed by Adam Barth.

        The 1.0 draft of the Content Security Policy spec is just about to
        move to Last Call. We'll hide work on the upcoming 1.1 spec behind
        this ENABLE flag, disabled by default.

        Spec: https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html

        * Configurations/FeatureDefines.xcconfig:

2012-06-19  Mike West  <mkwst@chromium.org>

        Add a scheme registry for bypassing Content Security Policy.
        https://bugs.webkit.org/show_bug.cgi?id=89373

        Reviewed by Adam Barth.

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

2012-06-16  Adam Barth  <abarth@webkit.org>

        Settings::devicePixelRatio doesn't do anything and is confusing
        https://bugs.webkit.org/show_bug.cgi?id=89272

        Reviewed by James Robinson.

        * Shared/WebPreferencesStore.h:
        (WebKit):
            - Remove boilerplate code for the setting.
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewExperimental::devicePixelRatio):
        (QQuickWebViewExperimental::setDevicePixelRatio):
            - Change these functions to get and set the real device scale factor.
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):
            - Use the real device scale factor for the viewport calculation.
        (WebKit::WebPage::updatePreferences):
            - Remove boilerplate code for the setting.

2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add support for explicit intents
        https://bugs.webkit.org/show_bug.cgi?id=89206

        Reviewed by Kenneth Rohde Christiansen.

        Expose the service URL of a Web Intent. This URL
        is set for explicit intents.

        * Shared/IntentData.h:
        (IntentData):
        * UIProcess/WebIntentData.h:
        (WebKit::WebIntentData::service):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):

2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Add title support to Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=89095

        Reviewed by Kenneth Rohde Christiansen.

        Add a method to get the title of the main frame in
        an Ewk_View. A "title,changed" signal is now emitted
        on the view to notify clients that the main frame
        title was changed.

        * PlatformEfl.cmake:
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (ewk_view_base_add):
        (ewk_view_title_get):
        (ewk_view_title_changed):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_loader_client.cpp: Added.
        (didReceiveTitleForFrame):
        (ewk_view_loader_client_attach):
        * UIProcess/API/efl/ewk_view_loader_client_private.h: Added.
        * UIProcess/API/efl/ewk_view_private.h:

2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2][EFL] Implement navigation back/forward in Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=89173

        Reviewed by Kenneth Rohde Christiansen.

        Add API for Ewk_View to ask the main frame to navigate backwards
        or forwards in history. Also add API to query if such navigation
        is possible.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_back):
        (ewk_view_forward):
        (ewk_view_back_possible):
        (ewk_view_forward_possible):
        * UIProcess/API/efl/ewk_view.h:

2012-06-15  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] Implement reload / stop in Ewk_View
        https://bugs.webkit.org/show_bug.cgi?id=89168

        Reviewed by Kenneth Rohde Christiansen.

        Add API on the Ewk_View to reload the main frame
        and to stop the current load.

        * UIProcess/API/efl/ewk_view.cpp:
        (ewk_view_reload):
        (ewk_view_stop):
        * UIProcess/API/efl/ewk_view.h:

2012-06-14  Kent Tamura  <tkent@chromium.org>

        Validate form state strings in FormController::setStateForNewFormElements()
        https://bugs.webkit.org/show_bug.cgi?id=88768

        Reviewed by Hajime Morita.

        * win/WebKit2.def: Expose some symbols used by Internals.cpp.
        * win/WebKit2CFLite.def: ditto.

2012-06-14  Tim Horton  <timothy_horton@apple.com>

        DrawingArea: Painting is being resumed while the view is not visible
        https://bugs.webkit.org/show_bug.cgi?id=88940
        <rdar://problem/11652545>

        Reviewed by Dean Jackson.

        Using requestAnimationFrame and the fullscreen API on a DrawingArea-backed window would cause
        rAF to permanently suspend animations after entering full-screen mode, because of the following:

        0. JavaScript causes fullscreen transition to start.
        1. Painting (and rAF) are suspended.
        2. The page changes size.
            a. DrawingAreaProxyImpl::sizeDidChange() calls DrawingAreaImpl::updateBackingStoreState, which calls DrawingAreaImpl::resumePainting.
            b. DrawingAreaImpl::resumePainting resumes painting, but does *not* resume rAF, because windowIsVisible is (legitimately) false.
        3. The view becomes visible, windowIsVisible is updated to true.
        4. visibilityDidChange() calls resumePainting again, but this time it early exits because painting is not suspended.

        Notice that because of the early exit in 4, rAF is never resumed.

        To solve this and prevent any further bugs caused by these unnecessary calls to resume/suspendPainting,
        temporarily stop sending SuspendPainting/ResumePainting messages from DrawingAreaProxyImpl::visibilityDidChange
        during the window animations that occur while entering and exiting full-screen.

        * UIProcess/API/mac/WKViewInternal.h:
        * UIProcess/API/mac/WKView.mm:
        (-[WKView setAutomaticallySuspendAndResumePainting:]):
        (-[WKView automaticallySuspendAndResumePainting]):
        * UIProcess/DrawingAreaProxyImpl.cpp:
        (WebKit::DrawingAreaProxyImpl::visibilityDidChange):
        * UIProcess/WebPageProxy.h:
        (WebKit::WebPageProxy::setShouldSuspendAndResumePainting):
        (WebKit::WebPageProxy::shouldSuspendAndResumePainting):
        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController enterFullScreen:]):
        (-[WKFullScreenWindowController _startEnterFullScreenAnimationWithDuration:]):

2012-06-14  Jia Pu  <jpu@apple.com>

        Mark text with text alternative with blue underline.
        https://bugs.webkit.org/show_bug.cgi?id=83047

        Reviewed by Enrica Casucci.

        Changes in WebKit2 include implementation of new functions declared in AlternativeTextClient,
        and logic for calling Editor::insertDictatedText() instead of Editor::insertText() when there's
        alternatives attached to the input string.

        * Shared/API/c/WKContextMenuItemTypes.h:
        * Shared/API/c/WKSharedAPICast.h:
        * Shared/WebCoreArgumentCoders.cpp:
        * Shared/WebCoreArgumentCoders.h:
        * UIProcess/API/mac/PageClientImpl.h:
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::PageClientImpl):
        (WebKit::PageClientImpl::pageClosed):
        (WebKit::PageClientImpl::addDictationAlternatives):
        (WebKit::PageClientImpl::removeDictationAlternatives):
        (WebKit::PageClientImpl::showDictationAlternativeUI):
        (WebKit::PageClientImpl::dictationAlternatives):
        (WebKit::PageClientImpl::dismissDictationAlternativeUI):
        * UIProcess/API/mac/WKView.mm:
        (-[WKView insertText:replacementRange:]):
        (-[WKView validAttributesForMarkedText]):
        (-[WKView handleAcceptedAlternativeText:]):
        * UIProcess/API/mac/WKViewInternal.h:
        * UIProcess/PageClient.h:
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::showDictationAlternativeUI):
        (WebKit::WebPageProxy::dismissDictationAlternativeUI):
        (WebKit::WebPageProxy::removeDictationAlternatives):
        (WebKit::WebPageProxy::dictationAlternatives):
        * UIProcess/WebPageProxy.h:
        * UIProcess/WebPageProxy.messages.in:
        * UIProcess/mac/CorrectionPanel.mm:
        (correctionIndicatorType):
        (WebKit::CorrectionPanel::handleAcceptedReplacement):
        * UIProcess/mac/WebPageProxyMac.mm:
        (WebKit::WebPageProxy::insertDictatedText):
        * WebProcess/WebCoreSupport/WebAlternativeTextClient.h:
        (WebAlternativeTextClient):
        * WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp:
        (WebKit::WebAlternativeTextClient::showCorrectionAlternative):
        (WebKit::WebAlternativeTextClient::dismissAlternative):
        (WebKit::WebAlternativeTextClient::dismissAlternativeSoon):
        (WebKit::WebAlternativeTextClient::recordAutocorrectionResponse):
        (WebKit::WebAlternativeTextClient::removeDictationAlternatives):
        (WebKit::WebAlternativeTextClient::showDictationAlternativeUI):
        (WebKit::WebAlternativeTextClient::dismissDictationAlternativeUI):
        (WebKit::WebAlternativeTextClient::dictationAlternatives):
        * WebProcess/WebPage/WebPage.h:
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/mac/WebPageMac.mm:
        (WebKit::WebPage::insertDictatedText):

2012-06-13  Andreas Kling  <kling@webkit.org>

        Chinese IM receives incorrect/duplicated key events in text fields in webpages in Safari.
        <http://webkit.org/b/89048>
        <rdar://problem/11449702>

        Reviewed by Darin Adler.

        Send the DidReceiveEvent message with the DispatchMessageEvenWhenWaitingForSyncReply flag
        for keyboard events. This ensures that it always arrives before the corresponding synchronous
        InterpretQueuedKeyEvent message.

        The problem was that we relied on DidReceiveEvent / InterpretQueuedKeyEvent always arriving in
        the same order they were sent. This was not always true, since DidReceiveEvent (async) would
        get deferred during an unrelated waitForSyncReply() whereas InterpretQueuedKeyEvent (sync)
        gets dispatched right away.

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

2012-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add input methods submenu item to the default context menu for editable content
        https://bugs.webkit.org/show_bug.cgi?id=80600

        Reviewed by Martin Robinson.

        * GNUmakefile.am: Add new files to compilation.
        * UIProcess/API/gtk/WebKitContextMenuClient.cpp: Added.
        (getContextMenuFromProposedMenu): Call webkitWebViewContextMenu().
        (attachContextMenuClientToView): Add implementation for
        getContextMenuFromProposedMenu callback.
        * UIProcess/API/gtk/WebKitContextMenuClient.h: Added.
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewConstructed): Attach context menu client to view.
        (webkitWebViewCreateAndAppendDefaultMenuItems): Helper function to
        add default context menu items to the new context menu items vector.
        (webkitWebViewShouldShowInputMethodsMenu): Helper function to
        check whether to show the input methods submenu according to the
        gtk-show-input-method-menu GTK+ setting.
        (webkitWebViewCreateAndAppendInputMethodsMenuItem): Helper
        function to add input methods submenu to the new context menu
        items vector.
        (webkitWebViewContextMenu): Create a new context menu items vector
        containing default items and input methods submenu in case of
        editable content. The active content menu is populated using that
        new vector.
        * UIProcess/API/gtk/WebKitWebViewBase.cpp:
        (webkitWebViewBaseSetActiveContextMenu): Set the active context menu.
        (webkitWebViewBaseGetActiveContextMenu): Get the active context menu.
        * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
        * UIProcess/API/gtk/WebKitWebViewPrivate.h:
        * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
        (WebKit::WebContextMenuProxyGtk::append): Helper method to add a
        new item to the context menu.
        (WebKit::WebContextMenuProxyGtk::populate): Add items to the
        context menu.
        (WebKit::WebContextMenuProxyGtk::showContextMenu): Populate the
        menu with the given items and popup the menu if it's not empty.
        (WebKit::WebContextMenuProxyGtk::hideContextMenu): Get the GtkMenu
        from the WebCore ContextMenu to popdown it.
        (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk): Call
        webkitWebViewBaseSetActiveContextMenu() to set the menu as the current
        active one for the view.
        (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Call
        webkitWebViewBaseSetActiveContextMenu() with NULL to reset the
        current active context of the view. GtkMenu is destroyed by
        WebCore ContextMenu in its destructor.
        * UIProcess/gtk/WebContextMenuProxyGtk.h:

2012-06-14  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add implementation for registerIntentService in WebFrameLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=88399

        Reviewed by Kenneth Rohde Christiansen.

        Add implementation for registerIntentService() in
        WebFrameLoaderClient.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Shared/API/c/WKBase.h:
        * Shared/APIClientTraits.h:
        * Shared/APIObject.h:
        * Shared/IntentServiceInfo.cpp: Added.
        (WebKit):
        (WebKit::IntentServiceInfo::encode):
        (WebKit::IntentServiceInfo::decode):
        * Shared/IntentServiceInfo.h: Added.
        (CoreIPC):
        (WebKit):
        (IntentServiceInfo):
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (attachLoaderClientToView):
        * UIProcess/WebIntentServiceInfo.cpp: Added.
        (WebKit):
        (WebKit::WebIntentServiceInfo::WebIntentServiceInfo):
        * UIProcess/WebIntentServiceInfo.h: Added.
        (WebKit):
        (WebIntentServiceInfo):
        (WebKit::WebIntentServiceInfo::create):
        (WebKit::WebIntentServiceInfo::~WebIntentServiceInfo):
        (WebKit::WebIntentServiceInfo::action):
        (WebKit::WebIntentServiceInfo::payloadType):
        (WebKit::WebIntentServiceInfo::href):
        (WebKit::WebIntentServiceInfo::title):
        (WebKit::WebIntentServiceInfo::disposition):
        (WebKit::WebIntentServiceInfo::type):
        * UIProcess/WebLoaderClient.cpp:
        (WebKit):
        (WebKit::WebLoaderClient::registerIntentServiceForFrame):
        * UIProcess/WebLoaderClient.h:
        (WebKit):
        (WebLoaderClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit):
        (WebKit::WebPageProxy::registerIntentServiceForFrame):
        * UIProcess/WebPageProxy.h:
        (WebKit):
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit):
        (WebKit::WebFrameLoaderClient::registerIntentService):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
        (WebFrameLoaderClient):

2012-06-14  Carlos Garcia Campos  <cgarcia@igalia.com>

        [WK2] Add WKHitTestResultIsContentEditable()
        https://bugs.webkit.org/show_bug.cgi?id=80597

        Reviewed by Martin Robinson.

        * Shared/WebHitTestResult.cpp:
        (WebKit::WebHitTestResult::Data::encode): Encode isContentEditable.
        (WebKit::WebHitTestResult::Data::decode): Decode isContentEditable.
        * Shared/WebHitTestResult.h:
        (Data): Add isContentEditable.
        (WebKit::WebHitTestResult::Data::Data): Initialize
        isContentEditable.
        (WebKit::WebHitTestResult::isContentEditable): Returns whether
        hit test result target is editable content.
        * UIProcess/API/C/WKHitTestResult.cpp:
        (WKHitTestResultIsContentEditable): C API to get whether hit test
        result target is editable content.
        * UIProcess/API/C/WKHitTestResult.h:
        * UIProcess/API/gtk/WebKitHitTestResult.cpp:
        (webkitHitTestResultCreate): Add
        WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE flags to the context if
        hit test result target is editable content.
        (webkit_hit_test_result_context_is_editable): Returns TRUE if
        WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE flags is present in
        context.
        * UIProcess/API/gtk/WebKitHitTestResult.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewMouseTarget): Add tests for
        WEBKIT_HIT_TEST_RESULT_CONTEXT_EDITABLE.

2012-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        [WK2] Fix client interface size for WKPageLoaderClient.
        https://bugs.webkit.org/show_bug.cgi?id=88764

        Reviewed by Anders Carlsson.

        Fixes offset of WKPageLoaderClient for version 0 by adding didDetectXSSForFrame.
        The offset should be off the first new callback that was added in the new version.

        * Shared/APIClientTraits.cpp:
        (WebKit):

2012-06-13  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add implementation for dispatchIntent in WebFrameLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=88340

        Reviewed by Kenneth Rohde Christiansen.

        Add implementation for dispatchIntent() in WebFrameLoaderClient.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Shared/API/c/WKBase.h:
        * Shared/APIClientTraits.h:
        * Shared/APIObject.h:
        * Shared/IntentData.cpp: Added.
        (WebKit):
        (WebKit::IntentData::encode):
        (WebKit::IntentData::decode):
        * Shared/IntentData.h: Added.
        (CoreIPC):
        (WebKit):
        (IntentData):
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (attachLoaderClientToView):
        * UIProcess/WebIntentData.cpp: Added.
        (WebKit):
        (WebKit::WebIntentData::WebIntentData):
        (WebKit::WebIntentData::data):
        * UIProcess/WebIntentData.h: Added.
        (WebKit):
        (WebIntentData):
        (WebKit::WebIntentData::create):
        (WebKit::WebIntentData::~WebIntentData):
        (WebKit::WebIntentData::action):
        (WebKit::WebIntentData::payloadType):
        (WebKit::WebIntentData::extras):
        (WebKit::WebIntentData::suggestions):
        (WebKit::WebIntentData::type):
        * UIProcess/WebLoaderClient.cpp:
        (WebKit):
        (WebKit::WebLoaderClient::didReceiveIntentForFrame):
        * UIProcess/WebLoaderClient.h:
        (WebKit):
        (WebLoaderClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit):
        (WebKit::WebPageProxy::didReceiveIntentForFrame):
        * UIProcess/WebPageProxy.h:
        (WebKit):
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):

2012-06-13  Tim Horton  <timothy_horton@apple.com>

        Rename _swapView:with: to _replaceView:with:
        https://bugs.webkit.org/show_bug.cgi?id=89037

        Reviewed by Darin Adler.
        
        _swapView:with: is a misnomer - after calling it, the first view is no longer
        contained within the view hierarchy. "Replace" is a more accurate term.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController enterFullScreen:]):
        (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
        (-[WKFullScreenWindowController _replaceView:with:]):

2012-06-13  Martin Robinson  <mrobinson@igalia.com>

        [GTK] Add an accelerated compositing implementation for WebKit2
        https://bugs.webkit.org/show_bug.cgi?id=86037

        Reviewed by Alejandro G. Castro.

        Add an implementation of LayerTreeHost for GTK+ that uses TextureMapperGL.
        Later this implementation will fall back to using the ImageBuffer TextureMapper.

        * GNUmakefile.am: Add new files to the compilation.
        * Shared/LayerTreeContext.h:
        (LayerTreeContext): The GTK+ version of the LayerTreeContext just holds window handle.
        * Shared/gtk/LayerTreeContextGtk.cpp: Copied from Source/WebKit2/WebProcess/WebPage/LayerTreeHost.cpp.
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.h: Added.
        * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: Added.
        Add this LayerTreeHost implementation that just creates a GL context from the widget X11 window ID.
        Later implementations might find a more cross-platform solution.
        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
        (WebKit::WebPage::platformInitialize): Initialize the native window handle to be zero.
        (WebKit::WebPage::widgetMapped): When mapping the widget, try to get the native window
        handle and send it to the WebProcess.

2012-06-13  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] ASSERT(m_rawAttributes.initialScale > 0) in QtViewportHandler::initialRect()
        https://bugs.webkit.org/show_bug.cgi?id=89026

        Reviewed by Csaba Osztrogonác.

        Only act on viewport attribute changes if the layout size is valid.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::setInitialScaleIfNeeded):
        (WebKit::QtViewportHandler::viewportAttributesChanged):

2012-06-13  Brent Fulgham  <bfulgham@webkit.org>

        [WinCairo] Build fix after Windows export definition file change.

        * win/WebKit2CFLite.def: Add missing symbol exports.

2012-06-13  Allan Sandfeld Jensen  <allan.jensen@nokia.com>

        [Qt] Fixed visible content rect lost during page-load
        https://bugs.webkit.org/show_bug.cgi?id=88991

        Reviewed by Kenneth Rohde Christiansen.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

2012-06-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r120209.
        http://trac.webkit.org/changeset/120209
        https://bugs.webkit.org/show_bug.cgi?id=89007

        Broke the WebKit2 mac build. (Requested by andersca on
        #webkit).

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Shared/API/c/WKBase.h:
        * Shared/APIClientTraits.h:
        * Shared/APIObject.h:
        * Shared/IntentData.cpp: Removed.
        * Shared/IntentData.h: Removed.
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (attachLoaderClientToView):
        * UIProcess/WebIntentData.cpp: Removed.
        * UIProcess/WebIntentData.h: Removed.
        * UIProcess/WebLoaderClient.cpp:
        * UIProcess/WebLoaderClient.h:
        (WebKit):
        (WebLoaderClient):
        * UIProcess/WebPageProxy.cpp:
        * UIProcess/WebPageProxy.h:
        (WebKit):
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):

2012-06-13  Alexis Menard  <alexis.menard@openbossa.org>

        Web Inspector: add a way to get the remote inspector url for a given page.
        https://bugs.webkit.org/show_bug.cgi?id=88902

        Reviewed by Jocelyn Turcotte.

        Expose the remote inspector url for a given page in the API. If you want
        to create a web view and load directly the inspector for the page you want to inspect,
        it helps to get the url as it is impossible to figure it out from the API layer.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewExperimental::remoteInspectorUrl):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/InspectorServer/WebInspectorServer.cpp:
        (WebKit):
        (WebKit::WebInspectorServer::inspectorUrlForPageID):
        * UIProcess/InspectorServer/WebInspectorServer.h:
        (WebInspectorServer):
        * UIProcess/InspectorServer/WebSocketServer.cpp:
        (WebKit::WebSocketServer::WebSocketServer):
        (WebKit::WebSocketServer::listen):
        (WebKit::WebSocketServer::close):
        * UIProcess/InspectorServer/WebSocketServer.h:
        (WebKit::WebSocketServer::bindAddress):
        (WebKit::WebSocketServer::port):
        (WebKit::WebSocketServer::serverState):
        (WebSocketServer):
        * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
        (WebKit::remoteInspectorPagePath):
        (WebKit):
        (WebKit::WebInspectorServer::inspectorUrlForPageID):
        (WebKit::WebInspectorServer::buildPageList):
        * UIProcess/WebInspectorProxy.h:
        (WebKit::WebInspectorProxy::remoteInspectionPageID):

2012-06-13  Christophe Dumez  <christophe.dumez@intel.com>

        [WK2] Add implementation for dispatchIntent in WebFrameLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=88340

        Reviewed by Kenneth Rohde Christiansen.

        Add implementation for dispatchIntent() in WebFrameLoaderClient.

        * CMakeLists.txt:
        * GNUmakefile.list.am:
        * Shared/API/c/WKBase.h:
        * Shared/APIClientTraits.h:
        * Shared/APIObject.h:
        * Shared/IntentData.cpp: Added.
        (WebKit):
        (WebKit::IntentData::encode):
        (WebKit::IntentData::decode):
        * Shared/IntentData.h: Added.
        (CoreIPC):
        (WebKit):
        (IntentData):
        * Target.pri:
        * UIProcess/API/C/WKAPICast.h:
        (WebKit):
        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (attachLoaderClientToView):
        * UIProcess/WebIntentData.cpp: Added.
        (WebKit):
        (WebKit::WebIntentData::WebIntentData):
        (WebKit::WebIntentData::data):
        * UIProcess/WebIntentData.h: Added.
        (WebKit):
        (WebIntentData):
        (WebKit::WebIntentData::create):
        (WebKit::WebIntentData::~WebIntentData):
        (WebKit::WebIntentData::action):
        (WebKit::WebIntentData::payloadType):
        (WebKit::WebIntentData::extras):
        (WebKit::WebIntentData::suggestions):
        (WebKit::WebIntentData::type):
        * UIProcess/WebLoaderClient.cpp:
        (WebKit):
        (WebKit::WebLoaderClient::didReceiveIntentForFrame):
        * UIProcess/WebLoaderClient.h:
        (WebKit):
        (WebLoaderClient):
        * UIProcess/WebPageProxy.cpp:
        (WebKit):
        (WebKit::WebPageProxy::didReceiveIntentForFrame):
        * UIProcess/WebPageProxy.h:
        (WebKit):
        (WebPageProxy):
        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::dispatchIntent):

2012-06-13  Balazs Kelemen  <kbalazs@webkit.org>

        [Qt][WK2] Scanning plugins blocks the UI for a long time
        https://bugs.webkit.org/show_bug.cgi?id=88535

        Reviewed by Simon Hausmann.

        Implement a persistent cache for the meta data of plugins.
        This way the UI process will not block for too long when
        it's time to scan the plugins (except the first time).
        The cache is a json file stored in a standard hidden cache
        directory.

        * Shared/qt/QtDefaultDataLocation.cpp: Added.
        (WebKit):
        (WebKit::defaultDataLocation):
        * Shared/qt/QtDefaultDataLocation.h: Added.
        (WebKit):
        Added a common helper for the path we use to
        put stuff into.

        * Target.pri:
        * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
        (WebKit::cacheFile):
        (WebKit):
        (WebKit::readMetaDataFromCacheFile):
        (WebKit::writeToCacheFile):
        (WebKit::appendToCacheFile):
        (WebKit::tryReadPluginMetaDataFromCacheFile):
        (WebKit::PluginProcessProxy::scanPlugin):
        * UIProcess/qt/WebContextQt.cpp:

2012-06-13  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Do not set contents pos to the current position
        https://bugs.webkit.org/show_bug.cgi?id=88990

        Reviewed by Laszlo Gombos.

        This is basically an optimization but it also solves flickering
        in some cases.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebView::setContentPos):

2012-06-12  MORITA Hajime  <morrita@google.com>

        Shadow Pseudo ID should be able to nest to point nested shadow DOM.
        https://bugs.webkit.org/show_bug.cgi?id=62218

        Reviewed by Dimitri Glazkov.

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

2012-06-12  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Unreviewed build fix.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::initialRect):

2012-06-11  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        Using extrernal ICU library on case unsensitive drives will not work
        https://bugs.webkit.org/show_bug.cgi?id=70913

        Reviewed by Csaba Osztrogonác.

        * WebProcess/WebPage/UpdateAtlas.cpp:

2012-06-12  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Do not move/scale content while the user is interacting with it
        https://bugs.webkit.org/show_bug.cgi?id=88872

        Reviewed by Simon Hausmann.

        Don't try moving content into valid bounds when the content
        size changes and the user is interacting with the content.

        Only apply the viewport initial scale after user interaction
        has ended.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (WebKit::QtViewportHandler::setInitialScaleIfNeeded):
        (WebKit::QtViewportHandler::viewportAttributesChanged):
        (WebKit::QtViewportHandler::pageContentsSizeChanged):
        (WebKit::QtViewportHandler::initialRect):
        (WebKit):
        * UIProcess/qt/QtViewportHandler.h:
        (QtViewportHandler):

2012-06-11  Kaustubh Atrawalkar  <kaustubh@motorola.com>

        [DRT] LTC:: counterValueForElementById() could be moved to Internals.
        https://bugs.webkit.org/show_bug.cgi?id=84406

        Reviewed by Hajime Morita.

        Exporting Internals::counterValueForElement symbols for the win build.

        * win/WebKit2.def:

2012-06-11  Ryuan Choi  <ryuan.choi@samsung.com>

        [CMAKE][WK2] Make WebProcess target name more clear.
        https://bugs.webkit.org/show_bug.cgi?id=88767

        Reviewed by Ryosuke Niwa.

        * CMakeLists.txt: Change WebProcess_NAME to WebProcess_EXECUTABLE_NAME.

2012-06-11  Alexis Menard  <alexis.menard@openbossa.org>

        [CSS3 Backgrounds and Borders] Protect box-decoration-break behind a feature flag.
        https://bugs.webkit.org/show_bug.cgi?id=88804

        Reviewed by Tony Chang.

        Protect box-decoration-break behind a feature flag enabled by default.

        * Configurations/FeatureDefines.xcconfig:

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

        [CMAKE][EFL] Remove duplicated executable output path
        https://bugs.webkit.org/show_bug.cgi?id=88765

        Reviewed by Daniel Bates.

        CMake files for EFL port have redefined executable output path. However, EFL port doesn't
        need to define again because it is already defined in top-level CMake file.

        * CMakeLists.txt:

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

        Pass the right color space over to the web process so we can set it on our CA context
        https://bugs.webkit.org/show_bug.cgi?id=88819
        <rdar://problem/11629050>

        Reviewed by John Sullivan.

        * Platform/mac/LayerHostingContext.h:
        (LayerHostingContext):
        * Platform/mac/LayerHostingContext.mm:
        (WebKit::LayerHostingContext::createForPort):
        (WebKit::LayerHostingContext::createForWindowServer):
        Use a single constructor and explicitly set up the parameters of the constructed object.

        (WebKit::LayerHostingContext::setColorSpace):
        (WebKit::LayerHostingContext::colorSpace):
        Add getter and setter.

        * Scripts/webkit2/messages.py:
        (struct_or_class):
        WebKit::ColorSpaceData is a struct.

        * Shared/WebPageCreationParameters.cpp:
        Encode and decode the color space parameter.

        * Shared/WebPageCreationParameters.h:
        Add the color space.

        * Shared/mac/ColorSpaceData.h: Added.
        * Shared/mac/ColorSpaceData.mm: Added.
        Add a new class that represents a color space that can be sent over the wire.

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

        * UIProcess/API/mac/WKView.mm:
        (-[WKView _windowDidChangeBackingProperties:]):
        Fix whitespace.

        (-[WKView viewDidChangeBackingProperties]):
        Check if our new color space is different from the current one and null the current one out if that is the case,
        it will be reinitialized by the next call to -[WKView _colorSpace].
        
        (-[WKView _colorSpace:]):
        Compute the color space. If we're not in a window we'll get the main screen's color space.

        * UIProcess/DrawingAreaProxy.h:
        (WebKit::DrawingAreaProxy::colorSpaceDidChange):
        Add empty stub.

        * UIProcess/PageClient.h:
        Add colorSpace getter.

        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::creationParameters):
        Initialize the color space.

        * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
        * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
        (WebKit::TiledCoreAnimationDrawingAreaProxy::colorSpaceDidChange):
        Send the new color space over to the web process.

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

        * WebKit2.xcodeproj/project.pbxproj:
        Add ColorSpaceData.h and ColorSpaceData.mm.

        * WebProcess/WebPage/DrawingArea.h:
        * WebProcess/WebPage/DrawingArea.messages.in:
        Add SetColorSpace message.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
        Set the color space from the creation parameters.

        (WebKit::TiledCoreAnimationDrawingArea::setColorSpace):
        Set the color space on the layer hosting context.

        (WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):
        Make sure we apply the color space from the previous layer hosting context if one exists.

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

        Crash when a plug-in tries to use the NPRuntime API with JavaScript disabled
        https://bugs.webkit.org/show_bug.cgi?id=88797
        <rdar://problem/11574844>

        Reviewed by Brady Eidson.

        * PluginProcess/PluginControllerProxy.cpp:
        (WebKit::PluginControllerProxy::initialize):
        Handle the windowNPObjectID being 0.

        (WebKit::PluginControllerProxy::windowScriptNPObject):
        Handle m_windownPObject being null.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::windowScriptNPObject):
        Return null if JavaScript is disabled.

        (WebKit::PluginView::pluginElementNPObject):
        Ditto.

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

        Add QML api for setting device width and height
        https://bugs.webkit.org/show_bug.cgi?id=88777

        Reviewed by Simon Hausmann.

        Add the new API and set the default values to 0 (unset). The
        current values were introduced by Qt and only Qt depends on them.

        * Shared/WebPreferencesStore.h:
        (WebKit):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewExperimental::deviceWidth):
        (QQuickWebViewExperimental::setDeviceWidth):
        (QQuickWebViewExperimental::deviceHeight):
        (QQuickWebViewExperimental::setDeviceHeight):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::viewportItemSizeChanged):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::sendViewportAttributesChanged):

2012-06-11  Michael Brüning  <michael.bruning@nokia.com>

        [Qt][WK2] Compute and set cache capacities using the current CacheModel
        https://bugs.webkit.org/show_bug.cgi?id=73918

        Reviewed by Kenneth Rohde Christiansen.

        Added implementation of cache model for Qt WK 2 port including supporting
        functionality such as WebProcess creation parameters and default values
        for disk cache directories.

        * Shared/WebProcessCreationParameters.cpp:
        (WebKit::WebProcessCreationParameters::encode):
        (WebKit::WebProcessCreationParameters::decode):
        * Shared/WebProcessCreationParameters.h:
        (WebProcessCreationParameters):
        * UIProcess/qt/WebContextQt.cpp:
        (WebKit::defaultDiskCacheDirectory):
        (WebKit):
        (WebKit::WebContext::platformInitializeWebProcess):
        * WebProcess/qt/WebProcessQt.cpp:
        (WebKit::physicalMemorySizeInBytes):
        (WebKit::WebProcess::platformSetCacheModel):
        (WebKit::WebProcess::platformInitializeWebProcess):

2012-06-10  Darin Adler  <darin@apple.com>

        Remove unneeded callRemovedLastRef function from TreeShared refactoring
        https://bugs.webkit.org/show_bug.cgi?id=88653

        Reviewed by Sam Weinig.

        * win/WebKit2.def: Export removedLastRef instead of callRemovedLastRef.
        * win/WebKit2CFLite.def: Ditto.

2012-06-10  Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Add and refactor ewk API in order to support MiniBrowser without WK API.
        https://bugs.webkit.org/show_bug.cgi?id=84124

        Reviewed by Chang Shu.

        Modify ewk_view and add ewk_context to provide a platform-depedent WebKit2
        API.
        This patch provides the minimum to support MiniBrowser.

        * PlatformEfl.cmake: add ewk_context.cpp.
        * UIProcess/API/efl/EWebKit2.h: Added.
        * UIProcess/API/efl/ewk_context.cpp: Added.
        (_Ewk_Context):
        (createDefaultWebContext):
        (ewk_context_WKContext_get):
        (ewk_context_default_get):
        * UIProcess/API/efl/ewk_context.h: Added.
        * UIProcess/API/efl/ewk_context_private.h: Added.
        * UIProcess/API/efl/ewk_view.cpp:
        (_Ewk_View_Private_Data):
        (_ewk_view_priv_del):
        (ewk_view_base_add):
        (ewk_view_add_with_context):
        (ewk_view_add):
        (ewk_view_uri_set):
        (ewk_view_uri_get):
        * UIProcess/API/efl/ewk_view.h:
        * UIProcess/API/efl/ewk_view_private.h:

2012-06-09  Sukolsak Sakshuwong  <sukolsak@google.com>

        Add UNDO_MANAGER flag
        https://bugs.webkit.org/show_bug.cgi?id=87908

        Reviewed by Tony Chang.

        * Configurations/FeatureDefines.xcconfig:

2012-06-08  Brent Fulgham  <bfulgham@webkit.org>
        [WinCairo] Build fix after Windows export definition file change.

        * win/WebKit2CFLite.def: This file needs to be kept in sync with
        WebKit2.def (aside from the WebKitInterface exports.)

2012-06-08  Viatcheslav Ostapenko  <ostapenko.viatcheslav@nokia.com>

        [Qt] [WK2] API tests randomly assert in WebLayerTreeRenderer::assignImageToLayer
        https://bugs.webkit.org/show_bug.cgi?id=88667

        Reviewed by Noam Rosenthal.

        Move deactivation of WebLayerTreeRenderer from LayerTreeHostProxy::purgeBackingStores 
        to WebLayerTreeRenderer::purgeGLResources. LayerTreeHostProxy::purgeBackingStores is 
        invoked on main thread after going through call gate and it is too late to deactivate
        renderer here, because some update messages are able to go through. 
        WebLayerTreeRenderer::purgeGLResources is called directly from render node deallocation
        and it is right place to deactivate renderer.

        * UIProcess/LayerTreeHostProxy.cpp:
        (WebKit::LayerTreeHostProxy::purgeBackingStores):
        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::purgeGLResources):

2012-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to get the library version to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=88426

        Reviewed by Martin Robinson.

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * UIProcess/API/gtk/WebKitVersion.cpp: Added.
        (webkit_get_major_version):
        (webkit_get_minor_version):
        (webkit_get_micro_version):
        * UIProcess/API/gtk/WebKitVersion.h.in: Added.
        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new symbols.
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new section
        for WebKitVersion.
        * UIProcess/API/gtk/tests/GNUmakefile.am:
        * UIProcess/API/gtk/tests/TestWebKitVersion.cpp: Added.
        (testWebKitVersion):
        (testWebKitCheckVersion):
        (beforeAll):
        (afterAll):
        * UIProcess/API/gtk/webkit2.h: Include WebKitVersion.h.

2012-06-08  Dan Bernstein  <mitz@apple.com>

        Tried to fix the Snow Leopard build after r119806.

        * WebKit2Prefix.h:

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

        [WebKit2] Move Mac-specific bits from config.h to WebKit2Prefix.h
        https://bugs.webkit.org/show_bug.cgi?id=88625

        Reviewed by Dan Bernstein.

        Since the Mac supports prefix headers, there is no point in having
        Mac-specific code in WebKit2's config.h. Move it to WebKit2Prefix.h.

        * WebKit2Prefix.h:
        * config.h:

2012-06-07  Kentaro Hara  <haraken@chromium.org>

        Reduce Node object size from 72 byte to 64 byte
        https://bugs.webkit.org/show_bug.cgi?id=88528

        Reviewed by Ryosuke Niwa.

        Added a symbol for callRemovedLastRef().

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

2012-06-07  Andy Estes  <aestes@apple.com>

        [WebKit2] Explicitly include CoreFoundation.h in config.h
        https://bugs.webkit.org/show_bug.cgi?id=88619

        Reviewed by Dan Bernstein.

        WebKit2 relies (probably unintentionally) on CoreFoundation.h being
        included by CoreGraphics.h (via CGSession.h), but some versions of
        CoreGraphics headers don't include CoreFoundation.h. WebKit2 should
        include it explicitly in config.h.

        * config.h: Import CoreFoundation.h.

2012-06-07  Andy Estes  <aestes@apple.com>

        [WebKit2] Only include Cocoa.h on platforms that use AppKit
        https://bugs.webkit.org/show_bug.cgi?id=88517

        Reviewed by Sam Weinig.

        * WebKit2Prefix.h: Include Platform.h to get USE() macros. GTK needs to
        include autotoolsconfig.h before including Platform.h, so do that first
        if building on GTK. Then, if compiling an Objective-C file, it's safe
        to include Foundation.h, but not necessarily Cocoa.h; only include the
        latter if USE(APPKIT) is true.
        * config.h: There's no need to import Cocoa.h since this is already
        imported in the prefix header.

2012-06-07  Anders Carlsson  <andersca@apple.com>

        Search highlight does not scroll with the content of the page, and find overlay doesn't work, on large-enough window
        https://bugs.webkit.org/show_bug.cgi?id=88577
        <rdar://problem/11430118>

        Reviewed by John Sullivan.

        Prevent the page overlay layer from falling into tiled mode.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):

2012-06-07  Alexander Færøy  <ahf@0x90.dk>

        Add QML API tests for Device Pixel Ratio
        https://bugs.webkit.org/show_bug.cgi?id=88531

        Reviewed by Kenneth Rohde Christiansen.

        This patch adds an initial test case for the QML device pixel ratio
        API. The test currently fails and is therefore marked as being
        expected to fail. This will be fixed in a separated patch.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_devicePixelRatio.qml: Added.

2012-06-07  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] WebKit2-EFL does not link in debug mode
        https://bugs.webkit.org/show_bug.cgi?id=88518

        Unreviewed. Fix WebKit2-EFL linking error in debug mode.

        * CMakeLists.txt:

2012-06-07  Simon Pena  <spena@igalia.com>

        [GTK] Fix broken build due to missing <SECTION> in GTK-DOC
        https://bugs.webkit.org/show_bug.cgi?id=88525

        Unreviewed gardening. Added missing <SECTION> tag.

        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:

2012-06-07  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add API to register custom URI schemes to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=84133

        Reviewed by Martin Robinson.

        * GNUmakefile.list.am: Add new files to compilation.
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitRequestManagerClient.cpp: Added.
        (didReceiveURIRequest): Callback emitted by the C API when a
        request for a custom URI scheme has been received. Call
        webkitWebContextReceivedURIRequest() to handle the request.
        (didFailToLoadURIRequest): Callback emitted by the C API when a
        request for a custom URI scheme failed to load. Call
        webkitWebContextDidFailToLoadURIRequest() to noitfy the web
        context.
        (attachRequestManagerClientToContext): Initialize the
        WKSoupRequestManagerClient.
        * UIProcess/API/gtk/WebKitRequestManagerClient.h: Added.
        * UIProcess/API/gtk/WebKitURISchemeRequest.cpp: Added.
        (webkit_uri_scheme_request_init):
        (webkitURISchemeRequestFinalize):
        (webkit_uri_scheme_request_class_init):
        (webkitURISchemeRequestCreate): Create a new
        WebKitURISchemeRequest for the given URI and request identifier.
        (webkitURISchemeRequestGetID): Return the request identifier.
        (webkitURISchemeRequestCancel): Cancel the request operation.
        (webkit_uri_scheme_request_get_scheme): Return the scheme of the
        request.
        (webkit_uri_scheme_request_get_uri): Return the full URI of the
        request.
        (webkit_uri_scheme_request_get_path): Return the path of the URI.
        (webkitURISchemeRequestReadCallback): Read callback emitted when
        reading the contents of the input stream.
        (webkit_uri_scheme_request_finish): Finish the request by reading
        the contents of the input stream and sending the data to the
        WebProcess.
        * UIProcess/API/gtk/WebKitURISchemeRequest.h: Added.
        * UIProcess/API/gtk/WebKitURISchemeRequestPrivate.h: Added.
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (WebKitURISchemeHandler::WebKitURISchemeHandler): Helper struct to
        save callback and user data of registered URI schemes.
        (createDefaultWebContext): Initialize the SoupRequestManager.
        (webkit_web_context_register_uri_scheme): Public API to register a
        custom URI scheme providing a callback that will be called to
        handle requests for that URI scheme.
        (webkitWebContextGetRequestManager): Helper private method to
        return the SoupRequestManager.
        (webkitWebContextReceivedURIRequest): Get the
        WebKitURISchemeHandler for the given request identifier and call
        the callback. Save the request in the request map.
        (webkitWebContextDidFailToLoadURIRequest): Cancel the ongoing
        request.
        (webkitWebContextDidFinishURIRequest): Remove the request from the
        map.
        * UIProcess/API/gtk/WebKitWebContext.h:
        * UIProcess/API/gtk/WebKitWebContextPrivate.h:
        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add
        WebKitURISchemeRequest section.
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/docs/webkit2gtk.types: Add
        webkit_uri_scheme_request_get_type.
        * UIProcess/API/gtk/tests/TestWebKitWebContext.cpp:
        (testWebContextURIScheme):
        (beforeAll):
        * UIProcess/API/gtk/webkit2.h: Include WebKitURISchemeRequest.h.

2012-06-07  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] setPageItemRectVisible() is not guarded by ViewportUpdateDeferrer at scaleAnimationValueChanged()
        https://bugs.webkit.org/show_bug.cgi?id=87954

        Reviewed by Kenneth Rohde Christiansen.

        Resetting the end value, the easing curve or the duration of the scale animation triggers
        a recalculation of the animation interval. This might change the current value of the
        animated property.
        Since guarding of setPageItemRectVisible() relies on animation state change we have to
        make sure we only act on animation value changes if the animation is in active state.

        * UIProcess/qt/QtViewportHandler.cpp:
        (WebKit::QtViewportHandler::QtViewportHandler):
        (WebKit::QtViewportHandler::animatePageItemRectVisible):
        (WebKit::QtViewportHandler::scaleAnimationValueChanged):

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

        [SOUP] WebSoupRequestManager should handle loading errors and zero-length replies
        https://bugs.webkit.org/show_bug.cgi?id=88087

        Reviewed by Martin Robinson.

        * UIProcess/API/C/soup/WKSoupRequestManager.h:
        * UIProcess/soup/WebSoupRequestManagerClient.cpp:
        (WebKit::WebSoupRequestManagerClient::didFailToLoadURIRequest):
        Call didFailToLoadURIRequest in the client if present.
        * UIProcess/soup/WebSoupRequestManagerClient.h:
        * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
        (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
        Initialize m_loadFailed.
        (WebKit::WebSoupRequestManagerProxy::didReceiveURIRequestData):
        Don't send more data to the web process if the resource failed to
        load.
        (WebKit::WebSoupRequestManagerProxy::didFailToLoadURIRequest): Set
        m_loadFailed and notifiy the client calling didFailToLoadURIRequest.
        * UIProcess/soup/WebSoupRequestManagerProxy.h:
        * UIProcess/soup/WebSoupRequestManagerProxy.messages.in: Add
        DidFailToLoadURIRequest message.
        * WebProcess/soup/WebKitSoupRequestGeneric.cpp:
        (webkitSoupRequestGenericSendAsync): Pass the cancellable to the
        WebSoupRequestManager.
        * WebProcess/soup/WebSoupRequestManager.cpp:
        (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData): Helper
        struct to save requests.
        (WebSoupRequestAsyncData): Add a weak pointer to invalidate the
        request when it's destroyed before the operation has finished.
        (WebKit::WebSoupRequestAsyncData::~WebSoupRequestAsyncData):
        Remove the weak pointer.
        (WebKit::WebSoupRequestAsyncData::requestFailed): Return whther
        the request failed.
        (WebKit::WebSoupRequestAsyncData::releaseResult): Return the
        result and clear the pointer.
        (WebKit::WebSoupRequestManager::didHandleURIRequest): Create and
        empty memory stream for zero-length replies instead of creating an
        error.
        (WebKit::WebSoupRequestManager::didReceiveURIRequestData): If the
        request failed and more data expected from the UI process, send a
        message to the UI process to notify that the resource load failed.
        (WebKit::WebSoupRequestManager::send): Save request information in
        the request map.
        * WebProcess/soup/WebSoupRequestManager.h:

2012-06-06  Andy Estes  <aestes@apple.com>

        Wrap uppercaseWord, lowercaseWord, and capitalizeWord with USE(APPKIT)
        https://bugs.webkit.org/show_bug.cgi?id=88504

        Reviewed by Dan Bernstein.

        uppercaseWord, lowercaseWord, and capitalizeWord are methods declared
        by NSResponder that subclasses are expected to implement. WebKit should
        only support these implementations on platforms that use AppKit.

        * UIProcess/WebPageProxy.h:
        * WebProcess/WebCoreSupport/WebEditorClient.h:
        * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
        * WebProcess/WebPage/WebPage.cpp:
        * WebProcess/WebPage/WebPage.h:
        * WebProcess/WebPage/WebPage.messages.in:

2012-06-06  chandra Shekar Vallala  <chandra.vallala@motorola.com>

        [WK2-Gtk]Compilation errors with flag CONTEXT_MENUS=0
        https://bugs.webkit.org/show_bug.cgi?id=87842

        Reviewed by Martin Robinson.

        Fix for compilation errors while building webkit2-gtk with CONTEXT_MENUS=0

        * UIProcess/gtk/WebContextMenuProxyGtk.cpp: Added code under CONTEXT_MENUS CC
        * UIProcess/gtk/WebContextMenuProxyGtk.h: Ditto
        * WebProcess/WebCoreSupport/gtk/WebContextMenuClientGtk.cpp: Ditto

2012-06-06  Michael Brüning  <michael.bruning@nokia.com>

        [Qt][WK2] Add preferredMinimumContentsWidth to the viewport info in MiniBrowser.
        https://bugs.webkit.org/show_bug.cgi?id=88327

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewExperimental::setPreferredMinimumContentsWidth):
        * UIProcess/API/qt/qquickwebview_p.h:

2012-06-06  Tim Horton  <timothy_horton@apple.com>

        WebPage::windowIsVisible is incorrect during resumePainting
        https://bugs.webkit.org/show_bug.cgi?id=88374
        <rdar://problem/11587039>

        Reviewed by Simon Fraser.

        Currently, when changing window visibility, WKView calls viewStateDidChange(ViewIsVisible)
        and then _updateWindowVisibility. This means that during viewStateDidChange, the WebPage's
        windowIsVisible state is incorrect.

        viewStateDidChange(ViewIsVisible) can end up in (one of the DrawingArea implementations)::resumePainting(),
        which uses windowIsVisible to determine whether or not to unpause requestAnimationFrame.

        This results in a state where, with some configurations, doing the following:

            1. requestAnimationFrame()
            2. requestFullScreen()
            3. requestAnimationFrame()
            4. cancelFullScreen()
            5. requestAnimationFrame()

        Will cause the second and third rAF calls to have no effect. Even after cancelFullScreen() is called,
        the fact that we have had unpaired suspend/resumeScriptedAnimations will cause the suspend count
        on the ScriptedAnimationController to never return to zero, which will cause us to never
        recover rAF functionality.

        The fix is very simple: we should _updateWindowVisibility *before* viewStateDidChange, so that it is
        always correct for any code called underneath that method.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView viewDidMoveToWindow]):
        (-[WKView _windowDidOrderOffScreen:]):
        (-[WKView _windowDidOrderOnScreen:]):

2012-06-05  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][WK2] Use Component.onCompleted in API tests for single and multi file upload tests.
        https://bugs.webkit.org/show_bug.cgi?id=88247

        Reviewed by Kenneth Rohde Christiansen.

        With r116936, Component.onCompleted can be used for callback instead of the
        1s timer in single and multi file upload tests.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_multiFileUpload.qml:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_singleFileUpload.qml:

2012-06-04  Stephanie Lewis  <slewis@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=88370
        Memory sampler should trigger low memory signal

        Reviewed by Geoff Garen.

        Send low memory signal when running the memory sampler.  We'd
        like to test memory that cannot be freed.

        * Shared/WebMemorySampler.cpp:
        (WebKit::WebMemorySampler::sampleTimerFired):
        * Shared/WebMemorySampler.h:
        (WebMemorySampler):
        * Shared/mac/WebMemorySampler.mac.mm:
        (WebKit):
        (WebKit::WebMemorySampler::sendMemoryPressureEvent):

2012-06-05  Brady Eidson  <beidson@apple.com>

        <rdar://problem/11575898> and https://bugs.webkit.org/show_bug.cgi?id=88372
        REGRESSION(110494): Can no longer drag-and-drop links into FileMaker Pro 12

        - Before r110494 we used to write the NSStringPboardType to the pasteboard.
          After r110494 we write NSURLPboardType instead.
          That's basically a no-op, but the NSStringPboardType needs to be restored.
        - Before r110494 we wrote the link destination URL to the pasteboard.
          After r110494 we write the image src URL if the link is an image.
          We need to revert to writing the link URL.

        Fortunately these changes can be accomplished with a 2-line fix.

        Reviewed by Enrica Casucci.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView _setPromisedData:WebCore::withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:WebCore::forPasteboard:]):
        n

2012-06-05  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Implement log channel initialization for WebKit2

        Reviewed by Alexis Menard.

        * Platform/Logging.cpp:
        (WebKit):
        * Platform/Logging.h:
        (WebKit):
        * Platform/qt/LoggingQt.cpp: Copied from Source/WebKit2/Platform/gtk/LoggingGtk.cpp
        (WebKit):
        (WebKit::initializeLogChannel):
        * Target.pri:

2012-06-05  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>

        WebLayerTreeRenderer behaves wrongly when no contentsScale is set.
        https://bugs.webkit.org/show_bug.cgi?id=88357

        Reviewed by Alexis Menard.

        The contentsScale needs to get a default value in case no
        value is explicitely set yet.
        This fixes the blank-until-resize problem when running MiniBrowser
        in --desktop mode.

        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::WebLayerTreeRenderer):

2012-06-05  Alexis Menard  <alexis.menard@openbossa.org>

        [Qt] Don't propagate viewport size changes if the viewport is empty.
        https://bugs.webkit.org/show_bug.cgi?id=88336

        Reviewed by Tor Arne Vestbø.

        Qt Quick sequentially set the x, y, width, height of the view. We really want to
        start propagating further when the size of the viewport becomes valid, i.e. both
        height and width are defined. In any case lower level classes are discarding an empty
        size such as WebPage::sendViewportAttributesChanged() so it was pointless to send the size
        through the IPC bus for nothing.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::updateViewportSize):

2012-06-05  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add webkit_download_get_received_data_length to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=88323

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitDownload.cpp:
        (webkit_download_get_received_data_length):
        * UIProcess/API/gtk/WebKitDownload.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
        * UIProcess/API/gtk/tests/TestDownloads.cpp:

2012-06-05  Dongwoo Im  <dw.im@samsung.com>

        Add 'isProtocolHandlerRegistered' and 'unregisterProtocolHandler'.
        https://bugs.webkit.org/show_bug.cgi?id=73176

        Reviewed by Adam Barth.

        Two more APIs are added in Custom Scheme Handler specification.
        http://dev.w3.org/html5/spec/Overview.html#custom-handlers
        One is 'isProtocolHandlerRegistered' to query whether the specific URL
        is registered or not.
        The other is 'unregisterProtocolHandler' to remove the registered URL.

        * Configurations/FeatureDefines.xcconfig: Add a macro 'ENABLE_CUSTOM_SCHEME_HANDLER'.

2012-06-05  Christophe Dumez  <christophe.dumez@intel.com>

        [EFL][WK2] WebKit2-EFL does not link with gold linker
        https://bugs.webkit.org/show_bug.cgi?id=88295

        Unreviewed. Fix linking when using gold linker.

        * PlatformEfl.cmake:

2012-06-05  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK][WK2] Implement API for Geolocation permission requests in the GTK port
        https://bugs.webkit.org/show_bug.cgi?id=83879

        Reviewed by Carlos Garcia Campos.

        Added a new kind of permission request for supporting the
        Geolocation API in WebKit2GTK+.

        New WebKitGeolocationPermissionRequest class, implementing the
        WebKitPermissionRequest interface, to enabling client applications
        to allow or deny geolocation permission requests.

        * GNUmakefile.list.am: Added new files.
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.cpp: Added.
        (_WebKitGeolocationPermissionRequestPrivate):
        (webkitGeolocationPermissionRequestAllow):
        (webkitGeolocationPermissionRequestDeny):
        (webkit_permission_request_interface_init):
        (webkit_geolocation_permission_request_init):
        (webkitGeolocationPermissionRequestFinalize):
        (webkit_geolocation_permission_request_class_init):
        (webkitGeolocationPermissionRequestCreate):
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequest.h: Added.
        (_WebKitGeolocationPermissionRequest):
        (_WebKitGeolocationPermissionRequestClass):
        * UIProcess/API/gtk/WebKitGeolocationPermissionRequestPrivate.h: Added.

        Include WKGeolocationPermissionRequest.h in WebKitPrivate.h, so we
        can use it from the new WebKitGeolocationPermissionRequest class.

        * UIProcess/API/gtk/WebKitPrivate.h: Added new include.

        Implement geolocation permission requests in the UI client.

        * UIProcess/API/gtk/WebKitUIClient.cpp:
        (decidePolicyForGeolocationPermissionRequest): Create a new
        instance of the WebKitGeolocationPermissionRequest class and call
        to webkitWebViewMakePermissionRequest().
        (attachUIClientToView): Provide an implementation function for
        decidePolicyForGeolocationPermissionRequest.
        * UIProcess/API/gtk/WebKitWebView.h: Add new element to
        WebKitPermissionRequestType enumeration for geolocation requests.
        * UIProcess/API/gtk/webkit2.h: Added header file for
        WebKitGeolocationPermissionRequest

        New unit tests to test allowing and denying permission requests.

        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewPermissionRequests): New test that loads a simple HTML
        with JavaScript code requesting the current location.
        (beforeAll): Added new test.

        Updated documentation files.

        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:

2012-06-04  Sadrul Habib Chowdhury  <sadrul@chromium.org>

        [chromium] Fix software rendering for device-scale-factor > 1
        https://bugs.webkit.org/show_bug.cgi?id=88136

        Reviewed by Darin Fisher.

        Export WebCore::Page::setDeviceScaleFactor and WebCore::Settings::setDefaultDeviceScaleFactor.

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

2012-06-04  Andy Estes  <aestes@apple.com>

        Use ENABLE() and USE() macros in a few more places
        https://bugs.webkit.org/show_bug.cgi?id=88245

        Reviewed by Anders Carlsson.

        * UIProcess/API/C/WKPluginSiteDataManager.cpp: Only include npapi.h if
        Netscape plug-in API is enabled.
        * UIProcess/mac/CorrectionPanel.h: Wrap with USE(AUTOCORRECTION_PANEL)
        * WebProcess/Authentication/AuthenticationManager.cpp: Use the stub
        version of tryUsePlatformCertificateInfoForChallenge if
        Security.framework isn't available.
        * WebProcess/WebProcess.messages.in: Only generate two messages if
        Security.framework is available.
        * WebProcess/mac/KeychainItemShimMethods.mm: Wrap with
        USE(SECURITY_FRAMEWORK).

2012-06-04  Andy Estes  <aestes@apple.com>

        Add stub WebKit2 implementations of PLUGIN_PROXY_FOR_VIDEO methods declared in FrameLoaderClient
        https://bugs.webkit.org/show_bug.cgi?id=88244

        Reviewed by Anders Carlsson.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::createMediaPlayerProxyPlugin): Add a stub implementation.
        (WebKit::WebFrameLoaderClient::hideMediaPlayerProxyPlugin): Ditto.
        (WebKit::WebFrameLoaderClient::showMediaPlayerProxyPlugin): Ditto.
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

2012-06-04  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK][WK2] Implement geolocation provider for the GTK port
        https://bugs.webkit.org/show_bug.cgi?id=83877

        Reviewed by Carlos Garcia Campos.

        Add a new client-based geolocation provider for WebKit2GTK+, relying the
        new Geoclue-based geolocation provider available in WebCore.

        * GNUmakefile.am:
        * GNUmakefile.list.am:
        * UIProcess/API/gtk/WebKitGeolocationProvider.cpp: Added.
        (toGeolocationProvider):
        (startUpdatingCallback):
        (stopUpdatingCallback):
        (WebKitGeolocationProvider::~WebKitGeolocationProvider):
        (WebKitGeolocationProvider::create):
        (WebKitGeolocationProvider::WebKitGeolocationProvider):
        (WebKitGeolocationProvider::startUpdating):
        (WebKitGeolocationProvider::stopUpdating):
        (WebKitGeolocationProvider::notifyPositionChanged):
        (WebKitGeolocationProvider::notifyErrorOccurred):
        * UIProcess/API/gtk/WebKitGeolocationProvider.h: Added.
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitWebContext.cpp:
        (_WebKitWebContextPrivate):
        (createDefaultWebContext):

2012-06-04  Zalan Bujtas  <zbujtas@gmail.com>

        [Qt][WK2] Rename QtViewportInteractionEngine to QtViewportHandler.
        https://bugs.webkit.org/show_bug.cgi?id=88226

        Reviewed by Kenneth Rohde Christiansen.

        * Target.pri:
        * UIProcess/API/qt/qquickwebpage_p_p.h:
        (WebKit):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::~QQuickWebViewFlickablePrivate):
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
        (QQuickWebViewFlickablePrivate::updateViewportSize):
        (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
        (QQuickWebViewFlickablePrivate::didChangeContentsSize):
        * UIProcess/API/qt/qquickwebview_p.h:
        (WebKit):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (WebKit):
        (QQuickWebViewPrivate::viewportHandler):
        (QQuickWebViewFlickablePrivate::viewportHandler):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::contentsScale):
        (QWebKitTest::devicePixelRatio):
        (QWebKitTest::initialScale):
        (QWebKitTest::minimumScale):
        (QWebKitTest::maximumScale):
        (QWebKitTest::isScalable):
        (QWebKitTest::layoutSize):
        * UIProcess/qt/QtGestureRecognizer.cpp:
        (WebKit::QtGestureRecognizer::viewportHandler):
        * UIProcess/qt/QtGestureRecognizer.h:
        (WebKit):
        * 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):
        * UIProcess/qt/QtViewportHandler.cpp: Copied from Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.cpp.
        (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (ViewportUpdateDeferrer):
        (WebKit::QtViewportHandler::suspendPageContent):
        (WebKit::QtViewportHandler::resumePageContent):
        (WebKit::QtViewportHandler::cssScaleFromItem):
        (WebKit::QtViewportHandler::itemScaleFromCSS):
        (WebKit::QtViewportHandler::itemCoordFromCSS):
        (WebKit::QtViewportHandler::itemRectFromCSS):
        (WebKit::QtViewportHandler::QtViewportHandler):
        (WebKit::QtViewportHandler::~QtViewportHandler):
        (WebKit::QtViewportHandler::innerBoundedCSSScale):
        (WebKit::QtViewportHandler::outerBoundedCSSScale):
        (WebKit::QtViewportHandler::viewportAttributesChanged):
        (WebKit::QtViewportHandler::pageContentsSizeChanged):
        (WebKit::QtViewportHandler::setPageItemRectVisible):
        (WebKit::QtViewportHandler::animatePageItemRectVisible):
        (WebKit::QtViewportHandler::flickMoveStarted):
        (WebKit::QtViewportHandler::flickMoveEnded):
        (WebKit::QtViewportHandler::pageItemPositionChanged):
        (WebKit::QtViewportHandler::pageContentPositionRequested):
        (WebKit::QtViewportHandler::scaleAnimationStateChanged):
        (WebKit::QtViewportHandler::scaleAnimationValueChanged):
        (WebKit::QtViewportHandler::touchBegin):
        (WebKit::QtViewportHandler::touchEnd):
        (WebKit::QtViewportHandler::computePosRangeForPageItemAtScale):
        (WebKit::QtViewportHandler::focusEditableArea):
        (WebKit::QtViewportHandler::zoomToAreaGestureEnded):
        (WebKit::QtViewportHandler::nearestValidBounds):
        (WebKit::QtViewportHandler::setCSSScale):
        (WebKit::QtViewportHandler::currentCSSScale):
        (WebKit::QtViewportHandler::scrollAnimationActive):
        (WebKit::QtViewportHandler::panGestureActive):
        (WebKit::QtViewportHandler::panGestureStarted):
        (WebKit::QtViewportHandler::panGestureRequestUpdate):
        (WebKit::QtViewportHandler::panGestureEnded):
        (WebKit::QtViewportHandler::panGestureCancelled):
        (WebKit::QtViewportHandler::scaleAnimationActive):
        (WebKit::QtViewportHandler::cancelScrollAnimation):
        (WebKit::QtViewportHandler::interruptScaleAnimation):
        (WebKit::QtViewportHandler::pinchGestureActive):
        (WebKit::QtViewportHandler::pinchGestureStarted):
        (WebKit::QtViewportHandler::pinchGestureRequestUpdate):
        (WebKit::QtViewportHandler::pinchGestureEnded):
        (WebKit::QtViewportHandler::pinchGestureCancelled):
        (WebKit::QtViewportHandler::visibleContentsRect):
        (WebKit::QtViewportHandler::informVisibleContentChange):
        (WebKit::QtViewportHandler::viewportItemSizeChanged):
        (WebKit::QtViewportHandler::scaleContent):
        * UIProcess/qt/QtViewportHandler.h: Copied from Source/WebKit2/UIProcess/qt/QtViewportInteractionEngine.h.
        (QtViewportHandler):
        * UIProcess/qt/QtViewportInteractionEngine.cpp: Removed.
        * UIProcess/qt/QtViewportInteractionEngine.h: Removed.
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
        (WebKit::QtWebPageEventHandler::setViewportHandler):
        (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
        (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
        (WebKit::QtWebPageEventHandler::didFindZoomableArea):
        * UIProcess/qt/QtWebPageEventHandler.h:
        (WebKit):
        (QtWebPageEventHandler):
        (WebKit::QtWebPageEventHandler::viewportHandler):

2012-06-04  David Kilzer  <ddkilzer@apple.com>

        BUILD FIX: FeatureDefines.xcconfig should match across projects

        * Configurations/FeatureDefines.xcconfig:
        - Add missing ENABLE_LEGACY_CSS_VENDOR_PREFIXES.

2012-06-04  Allan Sandfeld Jensen  <allan.jensen@nokia.com>

        [Qt] Tap-to-zoom overshoot animation.
        https://bugs.webkit.org/show_bug.cgi?id=87108

        Reviewed by Tor Arne Vestbø.

        Reverts the change in animation, so the default is more "neutral".
        This should be made configurable later.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::animatePageItemRectVisible):

2012-06-04  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] Refactor the tap gesture recognizer
        https://bugs.webkit.org/show_bug.cgi?id=88096

        Reviewed by Simon Hausmann.

        Refactor the tap gesture recognizer so that its internal state machine is
        self contained and independent of input event types.
        Also change the internal API for tap highlighting to make the code easier
        to understand on the caller side.

        This patch makes the tap gesture recognizer more robust, consistent with
        other gesture recognizers and fixes some issues related to highlighting
        and link activation with respect to native touch events.

        * UIProcess/qt/QtTapGestureRecognizer.cpp:
        (WebKit::QtTapGestureRecognizer::QtTapGestureRecognizer):
        (WebKit::QtTapGestureRecognizer::withinDistance):
        (WebKit::QtTapGestureRecognizer::update):
        (WebKit::QtTapGestureRecognizer::finish):
        (WebKit::QtTapGestureRecognizer::cancel):
        (WebKit::QtTapGestureRecognizer::highlightTimeout):
        (WebKit::QtTapGestureRecognizer::singleTapTimeout):
        (WebKit::QtTapGestureRecognizer::tapAndHoldTimeout):
        (WebKit::QtTapGestureRecognizer::reset):
        * UIProcess/qt/QtTapGestureRecognizer.h:
        (QtTapGestureRecognizer):
        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::QtWebPageEventHandler):
        (WebKit::QtWebPageEventHandler::activateTapHighlight):
        (WebKit::QtWebPageEventHandler::deactivateTapHighlight):
        (WebKit):
        (WebKit::QtWebPageEventHandler::handleSingleTapEvent):
        (WebKit::QtWebPageEventHandler::handleDoubleTapEvent):
        (WebKit::QtWebPageEventHandler::doneWithTouchEvent):
        * UIProcess/qt/QtWebPageEventHandler.h:
        (QtWebPageEventHandler):

2012-06-02  Geoffrey Garen  <ggaren@apple.com>

        Try to fix the Windows build.

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

2012-06-02  Andy Estes  <aestes@apple.com>

        [WebKit2] Use USE(), ENABLE(), and HAVE() macros in more places
        https://bugs.webkit.org/show_bug.cgi?id=88182

        Reviewed by Sam Weinig.

        Use USE(APPKIT):
        * Shared/mac/NativeWebKeyboardEventMac.mm:
        * Shared/mac/NativeWebMouseEventMac.mm:
        * Shared/mac/NativeWebWheelEventMac.mm:
        * Shared/mac/WebEventFactory.h:
        * UIProcess/API/mac/WKTextInputWindowController.h:
        * UIProcess/API/mac/WKTextInputWindowController.mm:
        * UIProcess/PageClient.h:
        * UIProcess/WebPageProxy.h:

        Use ENABLE(NETSCAPE_PLUGIN_API):
        * UIProcess/API/C/WKPluginSiteDataManager.cpp:
        (WKPluginSiteDataManagerClearSiteData):
        (WKPluginSiteDataManagerClearAllSiteData):

        Use USE(AUTOCORRECTION_PANEL):
        * UIProcess/API/mac/PageClientImpl.h:
        * UIProcess/API/mac/PageClientImpl.mm:
        (WebKit::PageClientImpl::showCorrectionPanel):
        (WebKit::PageClientImpl::dismissCorrectionPanel):
        (WebKit::PageClientImpl::dismissCorrectionPanelSoon):
        * UIProcess/mac/CorrectionPanel.mm:

        Use HAVE(HOSTED_CORE_ANIMATION):
        * UIProcess/mac/WebContextMac.mm:

        Put ENABLE(FULLSCREEN_API) in the right place:
        * UIProcess/mac/WebFullScreenManagerProxyMac.mm:

        Remove unnecessary use of USE(APPKIT):
        * UIProcess/mac/WebPageProxyMac.mm:

        Use USE(SECURITY_FRAMEWORK):
        * WebProcess/Authentication/mac/AuthenticationManager.mac.mm:

        Use ENABLE(CONTEXT_MENUS):
        * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

        Use USE(SECURITY_FRAMEWORK):
        * WebProcess/WebProcess.h:

        Remove unnecessary use of USE(SECURITY_FRAMEWORK):
        * WebProcess/mac/WebProcessMac.mm:

2012-06-02  Andy Estes  <aestes@apple.com>

        Remove a duplicate INIT() from WebSystemInterface.mm
        https://bugs.webkit.org/show_bug.cgi?id=88181

        Reviewed by Anders Carlsson.

        * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
        (InitWebCoreSystemInterface):

2012-06-02  Andy Estes  <aestes@apple.com>

        Remove unnecessary import of <Cocoa/Cocoa.h>
        https://bugs.webkit.org/show_bug.cgi?id=88180

        Reviewed by Sam Weinig.

        * UIProcess/mac/WKFullKeyboardAccessWatcher.h:

2012-06-02  Andy Estes  <aestes@apple.com>

        Ensure cpu_type_t is defined by including <mach/machine.h>
        https://bugs.webkit.org/show_bug.cgi?id=88178

        Reviewed by Anders Carlsson.

        * Shared/Plugins/PluginModuleInfo.h:

2012-06-02  Sam Weinig  <sam@webkit.org>

        InjectedBundles' sandbox extensions don't do what we think they do
        https://bugs.webkit.org/show_bug.cgi?id=88177

        Reviewed by Anders Carlsson.

        This cannot be tested with our current infrastructure (or any modifications of the
        infrastructure I can think of) since it relies on the bundle being put outside
        the build directory where WebKit is put.

        * WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:
        (WebKit::InjectedBundle::load):
        Use SandboxExtension::consumePermanently() rather than consume(), otherwise,
        nulling out the SandboxExtension a few lines later invalidates the extension
        we just consumed.

2012-06-02  Dan Bernstein  <mitz@apple.com>

        Reverted the last change.

        * WebKit2.xcodeproj/project.pbxproj:

2012-06-02  Dan Bernstein  <mitz@apple.com>

        Stop treating two Python scripts as private headers.

        * WebKit2.xcodeproj/project.pbxproj: Removed model.py and parser.py from the Copy Headers
        build phase.

2012-06-02  Zeno Albisser  <zeno@webkit.org>

        Fix and enable WebGL for WebKit2 on Qt.
        https://bugs.webkit.org/show_bug.cgi?id=86214

        Added glue code to make use of GraphicsSurface
        as a backend for the webgl-canvas in case of WK2.

        Reviewed by Noam Rosenthal.

        * UIProcess/API/qt/qwebpreferences.cpp:
        (QWebPreferencesPrivate::testAttribute):
        (QWebPreferencesPrivate::setAttribute):
        (QWebPreferences::webGLEnabled):
        (QWebPreferences::setWebGLEnabled):
        * UIProcess/API/qt/qwebpreferences_p.h:
        * UIProcess/API/qt/qwebpreferences_p_p.h:
        Added WebGLEnabled enum to allow enabling/disabling of
        WebGL using QWebPreferences.

        * UIProcess/LayerTreeHostProxy.cpp:
        (WebKit::LayerTreeHostProxy::syncCanvas):
        Dispatch syncCanvas calls to the apropriate
        WebLayerTreeRenderer.

        * UIProcess/LayerTreeHostProxy.h:
        (LayerTreeHostProxy):
        * UIProcess/LayerTreeHostProxy.messages.in:
        * UIProcess/WebLayerTreeRenderer.h:
        (WebLayerTreeRenderer):
        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::syncCanvas):
        (WebKit::WebLayerTreeRenderer::deleteLayer):
        (WebKit::WebLayerTreeRenderer::purgeGLResources):
        Create a TextureMapperSurfaceBackingStore for the canvas
        if necessary and pass or update the graphicsSurfaceToken
        for to be used with the backing store.

        * WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
        (WebCore::WebGraphicsLayer::WebGraphicsLayer):
        (WebCore):
        (WebCore::WebGraphicsLayer::setContentsToCanvas):
        (WebCore::WebGraphicsLayer::syncCanvas):
        Copy the multisample framebuffer contents onto the GraphicsSurface.
        Notify the UIProcess of the availability of a new texture.
        (WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
        Sync the canvas as well.

        * WebProcess/WebCoreSupport/WebGraphicsLayer.h:
        Added a pure virtual function syncCanvas.
        This is guarded by PLATFORM(QT).
        (WebGraphicsLayerClient):
        (WebGraphicsLayer):

        * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
        (WebKit::LayerTreeHostQt::syncLayerChildren):
        (WebKit):
        (WebKit::LayerTreeHostQt::syncCanvas):
        * WebProcess/WebPage/qt/LayerTreeHostQt.h:
        (LayerTreeHostQt):

2012-06-01  Brady Eidson  <beidson@apple.com>

        <rdar://problem/11335622> and https://bugs.webkit.org/show_bug.cgi?id=88119
        REGRESSION (r99448) Zero-sized plug-ins no longer get an NPP_SetWindow call
        
        Followup to r119260

        Rubber-stamped by Anders Carlsson. 

        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::callSetWindow): Set the m_hasCalledSetWindow here...
        (WebKit::NetscapePlugin::geometryDidChange): ...instead of here.

2012-06-01  Brady Eidson  <beidson@apple.com>

        <rdar://problem/11335622> and https://bugs.webkit.org/show_bug.cgi?id=88119
        REGRESSION (r99448) Zero-sized plug-ins no longer get an NPP_SetWindow call

        Reviewed by Oliver Hunt.

        Add a flag to NetscapePlugin to track whether or not NPP_SetWindow has ever been called.
        Check this flag in geometryDidChange to make sure every plug-in gets the call at least once.

        "Everybody gets one.  Tell him, Peter."
        "Apparently everybody gets one."
        "Bingo."

        * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
        (WebKit::NetscapePlugin::NetscapePlugin):
        (WebKit::NetscapePlugin::geometryDidChange):
        * WebProcess/Plugins/Netscape/NetscapePlugin.h:
        (NetscapePlugin):

2012-06-01  Dinu Jacob  <dinu.jacob@nokia.com>

        [WK2] WebLayerTreeRenderer::setContentsSize called synchronously
        https://bugs.webkit.org/show_bug.cgi?id=88091

        Reviewed by Noam Rosenthal.

        Do not call WebLayerTreeRenderer::setContentsSize synchronously
        from LayerTreeHostProxy.
 
        * UIProcess/LayerTreeHostProxy.cpp:
        (WebKit::LayerTreeHostProxy::setContentsSize):

2012-06-01  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][WK2] Set QWebKitTest::isScalable default as false
        https://bugs.webkit.org/show_bug.cgi?id=88095

        Reviewed by Tor Arne Vestbø.

        Set QWebKitTest::isScalable default as false

        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::isScalable):

2012-06-01  Allan Sandfeld Jensen  <allan.jensen@nokia.com>

        [Qt] Remove QtViewportInteractionEngine::pageItemSizeChanged.
        https://bugs.webkit.org/show_bug.cgi?id=88082

        Reviewed by Kenneth Rohde Christiansen.

        The function was causing flickering, and after testing it was verified
        that it was no longer needed either.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-06-01  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][WK2] Contents not rendered in MiniBrowser for some pages
        https://bugs.webkit.org/show_bug.cgi?id=87922

        Reviewed by Kenneth Rohde Christiansen.

        Set drawing area visible contents rect if new visible contents rect is different from
        the previous one.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::informVisibleContentChange):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-06-01  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Move suspension to QtViewportInteractionEngine
        https://bugs.webkit.org/show_bug.cgi?id=88078

        Reviewed by Simon Hausmann.

        Next step is to take care of visibility changes.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (WebKit::QtViewportInteractionEngine::suspendPageContent):
        (WebKit):
        (WebKit::QtViewportInteractionEngine::resumePageContent):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-06-01  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][W2] Qml Error in ViewportInfoItem.qml in MiniBrowser
        https://bugs.webkit.org/show_bug.cgi?id=87999

        Reviewed by Kenneth Rohde Christiansen.

        Return default viewport attributes rather than invalid QVariant.

        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::contentsScale):
        (QWebKitTest::devicePixelRatio):
        (QWebKitTest::initialScale):
        (QWebKitTest::minimumScale):
        (QWebKitTest::maximumScale):
        (QWebKitTest::isScalable):
        (QWebKitTest::layoutSize):

2012-05-31  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Clean up our viewport handling mess
        https://bugs.webkit.org/show_bug.cgi?id=87977

        Reviewed by Simon Hausmann.

        Consolidated functionality from QQuickWebViewPrivate* into
        ViewportInteractionEngine that belongs there, in preparation for
        renaming ViewportInteractionEngine in the future.

        Remove unneeded methods and move others to private.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
        (QQuickWebViewFlickablePrivate::updateViewportSize):
        (QQuickWebViewFlickablePrivate::_q_resume):
        (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
        (WebKit::QtViewportInteractionEngine::viewportAttributesChanged):
        (WebKit::QtViewportInteractionEngine::pageContentsSizeChanged):
        (WebKit::QtViewportInteractionEngine::pageItemPositionChanged):
        (WebKit::QtViewportInteractionEngine::pageContentPositionRequested):
        (WebKit::QtViewportInteractionEngine::visibleContentsRect):
        (WebKit):
        (WebKit::QtViewportInteractionEngine::informVisibleContentChange):
        (WebKit::QtViewportInteractionEngine::viewportItemSizeChanged):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (WebKit):
        (QtViewportInteractionEngine):

2012-05-31  Hajime Morrita  <morrita@chromium.org>

        REGRESSION(r117572): editing/spelling/spellcheck-async-remove-frame.html crashes on Mac
        https://bugs.webkit.org/show_bug.cgi?id=86859

        Reviewed by Ryosuke Niwa.

        * WebProcess/WebCoreSupport/WebEditorClient.cpp:
        (WebKit::WebEditorClient::requestCheckingOfString):
        * WebProcess/WebCoreSupport/WebEditorClient.h:

2012-05-31  Andy Estes  <aestes@apple.com>

        [WebKit2] Remove nested #if conditions from messages.in files
        https://bugs.webkit.org/show_bug.cgi?id=88039

        Reviewed by Filip Pizlo.

        The code generator that processes messages.in files can't handle nested
        #if conditions. Sadly I added said conditions in r117700 but failed to
        verify the generated result. Un-nest the conditions I added.

        * UIProcess/WebPageProxy.messages.in:
        * WebProcess/WebPage/WebPage.messages.in:

2012-05-31  Andy Estes  <aestes@apple.com>

        Disentangle code that relies on USE(AUTOMATIC_TEXT_REPLACEMENT) from that which merely relies on PLATFORM(MAC)
        https://bugs.webkit.org/show_bug.cgi?id=87933

        Reviewed by Dan Bernstein.

        * WebProcess/WebCoreSupport/WebEditorClient.h:
        * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:

2012-05-31  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add webkit_download_get_request to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=87957

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitDownload.cpp:
        (webkit_download_get_request): Return the WebKitURIRequest
        representing the request that originated the download.
        * UIProcess/API/gtk/WebKitDownload.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
        * UIProcess/API/gtk/tests/TestDownloads.cpp:
        (testDownloadLocalFile):
        (testDownloadRemoteFile):

2012-05-31  Carlos Garcia Campos  <cgarcia@igalia.com>

        [SOUP] WebProcess crashes when a download is started from an existing ResourceHandle
        https://bugs.webkit.org/show_bug.cgi?id=87953

        Reviewed by Martin Robinson.

        The output stream to write the downloaded data is created in the
        didReceiveResponse callback of the download client. When a
        download is created for an existing ResourceHandle (this happens
        for example when policy decision is download), the response has
        already been received. In this case we should make sure that the
        download client is notified about the response, so that when data
        actually arrives the output stream has already been created.

        * WebProcess/Downloads/soup/DownloadSoup.cpp:
        (WebKit::Download::startWithHandle):

2012-05-31  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Fix webkit_web_view_can_execute_editing_command() API doc
        https://bugs.webkit.org/show_bug.cgi?id=87930

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitWebView.cpp:

2012-05-31  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Simplify QT_VERSION_CHECKS for Qt5 by introducing HAVE(QT5)
        https://bugs.webkit.org/show_bug.cgi?id=87955

        Reviewed by Simon Hausmann.

        * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:

2012-05-31  Zalan Bujtas  <zbujtas@gmail.com>

        [Qt][WK2] Add missing ViewportUpdateDeferrer guarding to setPageItemRectVisible() calls.
        https://bugs.webkit.org/show_bug.cgi?id=87936

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::viewportAttributesChanged):
        (WebKit::QtViewportInteractionEngine::pageContentsSizeChanged):

2012-05-31  Keunsoon Lee  <keunsoon.lee@samsung.com>

        [EFL][WK2] Add WKURLRequestEfl and WKURLResponseEfl
        https://bugs.webkit.org/show_bug.cgi?id=70231

        Reviewed by Chang Shu.

        These codes can be used for WKPageDecidePolicyForResponseCallback on page policy callbacks.
        The callback conveys WKURLResponseRef and WKURLRequestRef as parameter.

        By the way, EFL browser needs content type from response to decide correct policy.
        Another information, cookie, is necessary with similar reason.
        But, there is no way to obtain such information on WebKit2 main stream, except for WKURLRequestCopyURL().

        So, EFL port created those files to extract necessary information from WKURLResponseRef and WKURLRequestRef,
        and not to desturb WebKit2 main stream. 

        * Shared/API/c/efl/WKURLRequestEfl.cpp: Added.
        (WKURLRequestEflCopyCookies): extracting cookie information from WKURLRequestRef.
        * Shared/API/c/efl/WKURLRequestEfl.h: Added.
        * Shared/API/c/efl/WKURLResponseEfl.cpp: Added.
        (WKURLResponseEflCopyContentType): extracting content type (i.e. MIME type) from WKURLResponseRef.
        * Shared/API/c/efl/WKURLResponseEfl.h: Added.
        * Shared/efl/WebCoreArgumentCodersEfl.cpp: Added.
        (CoreIPC):
        (CoreIPC::::encode):
        (CoreIPC::::decode):
        * Shared/efl/WebURLRequestEfl.cpp: Added.
        (WebKit):
        (WebKit::WebURLRequestEfl::WebURLRequestEfl):
        (WebKit::WebURLRequestEfl::cookies): obtaining cookie information from ResourceRequest.
        * Shared/efl/WebURLRequestEfl.h: Added.
        (WebKit):
        (WebURLRequestEfl):
        (WebKit::WebURLRequestEfl::create):
        * Shared/efl/WebURLResponseEfl.cpp: Added.
        (WebKit):
        (WebKit::WebURLResponseEfl::WebURLResponseEfl):
        (WebKit::WebURLResponseEfl::contentType): obtaining content type (i.e. MIME type) from ResourceResponse.
        * Shared/efl/WebURLResponseEfl.h: Added.
        (WebKit):
        (WebURLResponseEfl):
        (WebKit::WebURLResponseEfl::create):

2012-05-31  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        [EFL][WK2] Rename ewk_private.h to ewk_view_private.h
        https://bugs.webkit.org/show_bug.cgi?id=87923

        Reviewed by Kenneth Rohde Christiansen.

        EFL WK1 decided to divide up ewk_private.h into each file's XXX_private.h file in order to maintain
        internal functions more easily. EFL WK2 needs to adjust this as well.

        * UIProcess/API/efl/PageClientImpl.cpp:
        * UIProcess/API/efl/ewk_view_private.h: Renamed from Source/WebKit2/UIProcess/API/efl/ewk_private.h.
        (WebCore):
        * UIProcess/cairo/BackingStoreCairo.cpp:

2012-05-31  Andy Estes  <aestes@apple.com>

        Move the specification of framework and library linking out of WebKit2.xcodeproj and into WebKit2.xcconfig
        https://bugs.webkit.org/show_bug.cgi?id=87932

        Reviewed by Dan Bernstein.

        Doing this makes it easier to vary linking based on SDK or other factors.

        * Configurations/WebKit2.xcconfig: Create FRAMEWORK_AND_LIBRARY_LDFLAGS,
        which specifies the same list of frameworks and libraries that were
        previously in WebKit2's 'Link Binary With Libraries' build phase, and
        append it to $(OTHER_LDFLAGS).
        * WebKit2.xcodeproj/project.pbxproj: Remove all frameworks and
        libraries from the 'Link Binary With Libraries' build phase.

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

        [GTK] [WK2] Memory leak in webkitWebViewBaseStartDrag
        https://bugs.webkit.org/show_bug.cgi?id=87756

        Reviewed by Carlos Garcia Campos.

        Fixed memory leaks in drag and drop by using adoptRef instead
        of just getting new references.

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

2012-05-30  Luiz Agostini  <luiz.agostini@nokia.com>

        [Qt] handled touchmove events should not cancel tap gesture recognition
        https://bugs.webkit.org/show_bug.cgi?id=87808

        Reviewed by Kenneth Rohde Christiansen.

        Tap gesture recognition should not be canceled if a touchmove event is handled
        by the web process.

        * UIProcess/qt/QtWebPageEventHandler.cpp:
        (WebKit::QtWebPageEventHandler::doneWithTouchEvent):

2012-05-30  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK][WK2] Errors in documentation about  webkit_web_view_run_javascript()
        https://bugs.webkit.org/show_bug.cgi?id=87866

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitWebView.cpp: Fix errors.

2012-05-30  Andy Estes  <aestes@apple.com>

        WebProcessMainMac.mm doesn't need to import WKView.h.

        Rubber-stamped by Anders Carlsson. 

        * WebProcess/mac/WebProcessMainMac.mm:

2012-05-30  Marcelo Lira  <marcelo.lira@openbossa.org>

        WebKit2: Implement layoutTestController.setPluginsEnabled() in WebKitTestRunner.
        https://bugs.webkit.org/show_bug.cgi?id=58593

        Adds the ability to change the pluginsEnabled flag in WebCore::Settings
        to WebKitTestRunner's LayoutTestController. The flag is modified via the
        public C API of the WebProcess.

        Reviewed by Darin Adler.

        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
        (WKBundleSetPluginsEnabled):
        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::setPluginsEnabled): Calls the setPluginsEnabled
        method for the WebCore::Settings of each WebCore::Page in the current
        page group.
        (WebKit):
        * WebProcess/InjectedBundle/InjectedBundle.h:
        (InjectedBundle):

2012-05-30  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        HashTable.h has using directives for std::pair and std::make_pair
        https://bugs.webkit.org/show_bug.cgi?id=29919

        Reviewed by Darin Adler.

        Change code to use std::pair and std::make_pair.

        * UIProcess/Launcher/mac/DynamicLinkerEnvironmentExtractor.mm:
        (WebKit::DynamicLinkerEnvironmentExtractor::processEnvironmentVariable):
        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::postMessageToInjectedBundle):

2012-05-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        Unreviewed: Fix wrongly typed Qt slot.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):

2012-05-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Move ViewportAttribute related methods to the interaction engine.
        https://bugs.webkit.org/show_bug.cgi?id=87855

        Reviewed by Simon Hausmann.

        Move the logic of didChange{ViewportProperties|ContentsSize} to the
        interaction engine and update our testing object.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewLegacyPrivate::QQuickWebViewLegacyPrivate):
        (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
        (QQuickWebViewFlickablePrivate::didChangeContentsSize):
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::contentsScale):
        (QWebKitTest::devicePixelRatio):
        (QWebKitTest::initialScale):
        (QWebKitTest::minimumScale):
        (QWebKitTest::maximumScale):
        (QWebKitTest::isScalable):
        (QWebKitTest::layoutSize):
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::viewportAttributesChanged):
        (WebKit):
        (WebKit::QtViewportInteractionEngine::pageContentsSizeChanged):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-05-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Do renames in ViewportInteractionEngine as agreed upon
        https://bugs.webkit.org/show_bug.cgi?id=87845

        Reviewed by Simon Hausmann.

        Mostly moving methods around and renaming them to be more
        consistent and avoid terminology clashes.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::didChangeViewportProperties):
        (QQuickWebViewFlickablePrivate::pageDidRequestScroll):
        (QQuickWebViewFlickablePrivate::didChangeContentsSize):
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::boundPosition):
        (WebKit):
        (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
        (WebKit::QtViewportInteractionEngine::setPageItemRectVisible):
        (WebKit::QtViewportInteractionEngine::animatePageItemRectVisible):
        (WebKit::QtViewportInteractionEngine::flickMoveStarted):
        (WebKit::QtViewportInteractionEngine::flickMoveEnded):
        (WebKit::QtViewportInteractionEngine::pageItemPositionChanged):
        (WebKit::QtViewportInteractionEngine::pageContentPositionRequest):
        (WebKit::QtViewportInteractionEngine::scaleAnimationValueChanged):
        (WebKit::QtViewportInteractionEngine::computePosRangeForPageItemAtScale):
        (WebKit::QtViewportInteractionEngine::focusEditableArea):
        (WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
        (WebKit::QtViewportInteractionEngine::nearestValidBounds):
        (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
        (WebKit::QtViewportInteractionEngine::pinchGestureEnded):
        (WebKit::QtViewportInteractionEngine::pageItemSizeChanged):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (WebKit::QtViewportInteractionEngine::setDevicePixelRatio):
        (QtViewportInteractionEngine):

2012-05-30  Mariusz Grzegorczyk  <mariusz.g@samsung.com>, Ryuan Choi  <ryuan.choi@samsung.com>

        [EFL][WK2] Fix WebKit2-EFL build
        https://bugs.webkit.org/show_bug.cgi?id=83693

        Reviewed by Carlos Garcia Campos.

        * CMakeLists.txt: Move IDL generator codes to generate port specific *.messages.in.
        * PlatformEfl.cmake: Add soup related files after r115411 and includes to fix build break.
        * UIProcess/API/efl/PageClientImpl.cpp: Fix build break with ENABLE_TOUCH_EVENTS.
        (WebKit):
        (WebKit::PageClientImpl::doneWithTouchEvent):
        * UIProcess/API/efl/PageClientImpl.h:
        (PageClientImpl):
        * WebProcess/WebCoreSupport/WebChromeClient.cpp: Fix build break with ENABLE_INPUT_TYPE_COLOR and ENABLE_REGISTER_PROTOCOL_HANDLER.
        (WebKit):
        (WebKit::WebChromeClient::createColorChooser):
        * WebProcess/WebCoreSupport/WebChromeClient.h:
        (WebChromeClient):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Fix build break with ENABLE_WEB_INTENTS
        (WebKit):
        (WebKit::WebFrameLoaderClient::dispatchIntent):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
        (WebCore):
        (WebFrameLoaderClient):
        * WebProcess/WebProcess.cpp: Guard PLATFORM_STRATEGIES codes.
        (WebKit::WebProcess::didGetPlugins):
        * WebProcess/soup/WebSoupRequestManager.cpp: Try to share with EFL port.
        (WebKit::WebSoupRequestManager::didHandleURIRequest):

2012-05-30  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Variable renaming as preparation of further refactoring.

        Rubberstamped by Simon Hausmann.

        Change m_viewport to m_viewportItem and m_content to m_pageItem.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
        (WebKit::QtViewportInteractionEngine::setItemRectVisible):
        (WebKit::QtViewportInteractionEngine::animateItemRectVisible):
        (WebKit::QtViewportInteractionEngine::flickableMoveStarted):
        (WebKit::QtViewportInteractionEngine::flickableMoveEnded):
        (WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
        (WebKit::QtViewportInteractionEngine::scaleAnimationStateChanged):
        (WebKit::QtViewportInteractionEngine::pagePositionRequest):
        (WebKit::QtViewportInteractionEngine::computePosRangeForItemAtScale):
        (WebKit::QtViewportInteractionEngine::focusEditableArea):
        (WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
        (WebKit::QtViewportInteractionEngine::nearestValidBounds):
        (WebKit::QtViewportInteractionEngine::reset):
        (WebKit::QtViewportInteractionEngine::setCSSScale):
        (WebKit::QtViewportInteractionEngine::currentCSSScale):
        (WebKit::QtViewportInteractionEngine::scrollAnimationActive):
        (WebKit::QtViewportInteractionEngine::panGestureActive):
        (WebKit::QtViewportInteractionEngine::panGestureStarted):
        (WebKit::QtViewportInteractionEngine::panGestureRequestUpdate):
        (WebKit::QtViewportInteractionEngine::panGestureEnded):
        (WebKit::QtViewportInteractionEngine::panGestureCancelled):
        (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
        (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
        (WebKit::QtViewportInteractionEngine::pinchGestureRequestUpdate):
        (WebKit::QtViewportInteractionEngine::scaleContent):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-05-30  Zalan Bujtas  <zbujtas@gmail.com>

        [Qt][WK2] Do not use anonymous variables for ViewportUpdateDeferrer.
        https://bugs.webkit.org/show_bug.cgi?id=87831

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::pagePositionRequest):
        (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):
        (WebKit::QtViewportInteractionEngine::itemSizeChanged):

2012-05-30  Carlos Garcia Campos  <cgarcia@igalia.com>

        Unreviewed. Fix WebKit2GTK+ API tests in the bots.

        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewCanShowMIMEType): Remove the check for multimedia and
        plugins MIME types since they depend on the configuration and they
        are not available in the bots.

2012-05-29  Jer Noble  <jer.noble@apple.com>

        Noticeable delay taking an HTML5 trailer fullscreen.
        https://bugs.webkit.org/show_bug.cgi?id=87794

        Reviewed by Darin Adler.

        Work around a not-entirely understood delay when using the results of a CGWindowListCreateImage()
        call as the contents of a placeholder view.  The backing of the resulting CGImageRef resides on
        the WindowServer, and drawing that image requires synchronous calls to the WindowServer process.
        By copying the image data, up front, into our own process, we can avoid those synchronous calls
        later and avoid the delay-causing drawing behavior.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (CGImageDeepCopy): Added a helper function which copies the image data into a new CGImage.
        (-[WKFullScreenWindowController enterFullScreen:]): Use the above.

2012-05-29  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>

        [GTK] [WK2] Reproducible crash in performDragControllerAction
        https://bugs.webkit.org/show_bug.cgi?id=87744

        Reviewed by Martin Robinson.

        Fix a crash by using deref() instead of delete to dereference and
        release the platformData of DragData.

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

2012-05-29  Simon Pena  <spena@igalia.com>

        [GTK] Missing field initializers for WKPageLoaderClient and WKPageUIClient
        https://bugs.webkit.org/show_bug.cgi?id=87745

        Reviewed by Carlos Garcia Campos.

        Add missing initializers for WKPageLoaderClient and
        WKPageUIClient, for callbacks WKPagePluginDidFailCallback and
        WKPageUnavailablePluginButtonClickedCallback, introduced in
        revision r116716.

        * UIProcess/API/gtk/WebKitLoaderClient.cpp:
        (attachLoaderClientToView): Initialize WKPagePluginDidFailCallback
        * UIProcess/API/gtk/WebKitUIClient.cpp:
        (attachUIClientToView): Initialize callback
        WKPageUnavailablePluginButtonClickedCallback

2012-05-29  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Policy decision headers are not included in the main webkit2.h header
        https://bugs.webkit.org/show_bug.cgi?id=87753

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/webkit2.h: Include
        WebKitNavigationPolicyDecision.h and WebKitResponsePolicyDecision.h.

2012-05-29  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add webkit_web_view_can_show_mime_type() to WebKit2 GTK+ API
        https://bugs.webkit.org/show_bug.cgi?id=85998

        Reviewed by Martin Robinson.

        And use it in the default handler of WebKitWebView::decide-policy
        signal to decide whether to use or ignore a response policy
        decision depending on whether the mime type of the response can be
        displayed in the WebView or not.

        * UIProcess/API/gtk/WebKitURIResponse.cpp:
        (webkitURIResponseGetProperty): Add getter for mime-type property.
        (webkit_uri_response_class_init): Add mime-type property.
        (webkit_uri_response_get_mime_type): Return the mime type of the
        response.
        * UIProcess/API/gtk/WebKitURIResponse.h:
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewDecidePolicy): In case of response policy decisions,
        use the URI response to decide what to do: download if the
        response is an attachment, use if the mime type is supported by
        the web view or ignore otherwise.
        (webkit_web_view_can_show_mime_type): Returns whether the given
        mime type can be displayed in the WebView or not.
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
        * UIProcess/API/gtk/tests/TestResources.cpp:
        (testWebResourceResponse):
        (testWebResourceMimeType):
        (serverCallback):
        (beforeAll):
        * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
        (testWebViewCanShowMIMEType):
        (beforeAll):

2012-05-29  David Barr  <davidbarr@chromium.org>

        Introduce ENABLE_CSS_IMAGE_RESOLUTION compile flag
        https://bugs.webkit.org/show_bug.cgi?id=87685

        Reviewed by Eric Seidel.

        Add a configuration option for CSS image-resolution support, disabling it by default.

        * Configurations/FeatureDefines.xcconfig:

2012-05-29  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt] Move tests from DesktopBehavior which can be made to work
        https://bugs.webkit.org/show_bug.cgi?id=87736

        Rubberstamped by Simon Hausmann.

        Move and modify the following tests to WebView/ and make them
        use touch events.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_itemSelector.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_itemSelector.qml.
        * UIProcess/API/qt/tests/qmltests/WebView/tst_messaging.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_messaging.qml.
        * UIProcess/API/qt/tests/qmltests/WebView/tst_multiFileUpload.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_multiFileUpload.qml.
        * UIProcess/API/qt/tests/qmltests/WebView/tst_singleFileUpload.qml: Renamed from Source/WebKit2/UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_singleFileUpload.qml.

2012-05-29  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Sync up favicon-implementation with WebView url changes in r118158

        https://bugs.webkit.org/show_bug.cgi?id=87133

        We now base64-encode the page url in the image-provider url, so that any
        normalization done by QUrl will not mess up the page-url. The logic of
        creating and parsing the provider-url has been moved into the image
        provider, to keep it in one place.

        We were also releasing icons (even ones we hadn't retained), which we can't
        do since we don't know when the icon url is no longer in use.

        Reviewed-by Simon Hausmann.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::initialize):
        (QQuickWebViewPrivate::loadProgressDidChange):
        (QQuickWebViewPrivate::_q_onUrlChanged):
        (QQuickWebViewPrivate::_q_onIconChangedForPageURL):
        (QQuickWebViewPrivate::updateIcon):
        (QQuickWebView::icon):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/API/qt/qwebiconimageprovider.cpp:
        (QWebIconImageProvider::iconURLForPageURLInContext):
        (QWebIconImageProvider::requestImage):
        * UIProcess/API/qt/qwebiconimageprovider_p.h:
        (WebKit):
        * UIProcess/API/qt/tests/qmltests/WebView/tst_favIconLoad.qml:
        * UIProcess/qt/QtWebIconDatabaseClient.cpp:
        (WebKit::QtWebIconDatabaseClient::didChangeIconForPageURL):
        (WebKit::QtWebIconDatabaseClient::iconForPageURL):
        (WebKit):
        (WebKit::QtWebIconDatabaseClient::iconImageForPageURL):
        * UIProcess/qt/QtWebIconDatabaseClient.h:
        (QtWebIconDatabaseClient):

2012-05-29  Kenneth Rohde Christiansen  <kenneth@webkit.org>

        [Qt][WK2] Fix failing qmltests::FitToView::test_basic()
        https://bugs.webkit.org/show_bug.cgi?id=87236

        Reviewed by Simon Hausmann.

        The fix is a combination of things. First of all some events
        were emitted at the wrong times or when nothing had changed.

        We also initialized the view saying it was suspended which is
        not correct.

        Another bug was that the touch tap, didn't result in marking
        the view as having user interaction. This was recently fixed
        in r118493.

        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPage::setContentsScale):
        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):

            Make sure pageIsSuspended is initialized to false.

        (QQuickWebViewFlickablePrivate::_q_onInformVisibleContentChange):

            Early bail out if there is no change.

            Inform contentScaleCommitted if the scale changed since last time.

        (QQuickWebViewFlickablePrivate::didChangeContentsSize):

            Make sure to commit the right signals, ie. *Changed and not *Committed.

        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qwebkittest.cpp:
        (touchPoint):
        (QWebKitTest::sendTouchEvent):
        (QWebKitTest::touchTap):
        (QWebKitTest::touchDoubleTap):

            Add proper touch emulation for the testing system. Call directly
            to our WebKit API (avoid Qt event loop) to ensure all events gets
            delivered.

        * UIProcess/API/qt/qwebkittest_p.h:
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::setItemRectVisible):

            Assert that a ViewportUpdateDeferrer is always used when calling
            this method.

        (WebKit::QtViewportInteractionEngine::animateItemRectVisible):

            Remove work around now we have the proper fix in place.

        (WebKit::QtViewportInteractionEngine::pagePositionRequest):

            Do not send the informVisibleContentChange manually, use the
            ViewportUpdateDeferrer instead.

        (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):

            Add missing ViewportUpdateDeferrer.

        (WebKit::QtViewportInteractionEngine::pinchGestureStarted):

            No reason to emit informVisibleContentChange before pinch
            start, as it is always done on end (due to the ViewportUpdateDeferrer).

        (WebKit::QtViewportInteractionEngine::itemSizeChanged):

            Add missing ViewportUpdateDeferrer.

2012-05-29  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        [Qt] [WK2] Allow user to inject JS scripts when the page loads
        https://bugs.webkit.org/show_bug.cgi?id=85827

        Reviewed by Simon Hausmann.

        Create a new experimental property to list URLs of JS scripts that should be
        loaded when a page is loaded. These scripts will run in the normal JS environment
        of the page.

        The supported URL schemes are file:/// and qrc:///. The scripts are read from the
        UI process and transfered to the Web process.

        Together with the experimental messaging API this provides a way for the
        application to manipulate the DOM (by injecting a script that does the
        manipulation and communicating with it via postMessage). This covers some of the
        use cases of QWebElement in our WK1 API.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::didRelaunchProcess):
        (readUserScript):
        (QQuickWebViewPrivate::updateUserScripts):
        (QQuickWebViewExperimental::userScripts):
        (QQuickWebViewExperimental::setUserScripts):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_userScripts.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/append-document-title.js: Added.
        * UIProcess/API/qt/tests/qmltests/common/big-user-script.js: Added.
        * UIProcess/API/qt/tests/qmltests/common/change-document-title.js: Added.
        * UIProcess/API/qt/tests/qmltests/resources.qrc: Added.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/qt/WebPageProxyQt.cpp:
        (WebKit::WebPageProxy::setUserScripts):
        (WebKit):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/qt/WebPageQt.cpp:
        (WebKit::WebPage::setUserScripts):
        (WebKit):

2012-05-29  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r118752.
        http://trac.webkit.org/changeset/118752
        https://bugs.webkit.org/show_bug.cgi?id=87731

        incomplete patch (Requested by cmarcelo on #webkit).

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::didRelaunchProcess):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/qt/WebPageProxyQt.cpp:
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/qt/WebPageQt.cpp:

2012-05-21  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>

        [Qt] [WK2] Allow user to inject JS scripts when the page loads
        https://bugs.webkit.org/show_bug.cgi?id=85827

        Reviewed by Simon Hausmann.

        Create a new experimental property to list URLs of JS scripts that should be
        loaded when a page is loaded. These scripts will run in the normal JS environment
        of the page.

        The supported URL schemes are file:/// and qrc:///. The scripts are read from the
        UI process and transfered to the Web process.

        Together with the experimental messaging API this provides a way for the
        application to manipulate the DOM (by injecting a script that does the
        manipulation and communicating with it via postMessage). This covers some of the
        use cases of QWebElement in our WK1 API.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::didRelaunchProcess):
        (readUserScript):
        (QQuickWebViewPrivate::updateUserScripts):
        (QQuickWebViewExperimental::userScripts):
        (QQuickWebViewExperimental::setUserScripts):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate):
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_userScripts.qml: Added.
        * UIProcess/API/qt/tests/qmltests/common/append-document-title.js: Added.
        * UIProcess/API/qt/tests/qmltests/common/big-user-script.js: Added.
        * UIProcess/API/qt/tests/qmltests/common/change-document-title.js: Added.
        * UIProcess/API/qt/tests/qmltests/resources.qrc: Added.
        * UIProcess/WebPageProxy.h:
        (WebPageProxy):
        * UIProcess/qt/WebPageProxyQt.cpp:
        (WebKit::WebPageProxy::setUserScripts):
        (WebKit):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):
        * WebProcess/WebPage/WebPage.messages.in:
        * WebProcess/WebPage/qt/WebPageQt.cpp:
        (WebKit::WebPage::setUserScripts):
        (WebKit):

2012-05-29  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add return value information to WebKitWebView::load-failed signal documentation
        https://bugs.webkit.org/show_bug.cgi?id=87704

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_class_init):

2012-05-29  Carlos Garcia Campos  <cgarcia@igalia.com>

        [GTK] Add WebKitWebInspector.h to the list of WebKit2 GTK public headers
        https://bugs.webkit.org/show_bug.cgi?id=87703

        Reviewed by Martin Robinson.

        * GNUmakefile.list.am: Add WebKitWebInspector.h to webkit2gtk_h_api.

2012-05-25  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>

        WebKitTestRunner needs to support layoutTestController.setJavaScriptProfilingEnabled
        https://bugs.webkit.org/show_bug.cgi?id=42328

        Reviewed by Eric Seidel.

        Removed unneeded setJavaScriptProfilingEnabled function from WTR after its
        move to windows.internals.settings.

        * WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp:
        * WebProcess/InjectedBundle/API/c/WKBundleInspector.h:
        * WebProcess/WebPage/WebInspector.cpp:
        (WebKit::WebInspector::setJavaScriptProfilingEnabled):
        * win/WebKit2.def:

2012-05-28  No'am Rosenthal  <noam.rosenthal@nokia.com>

        Remove unused argument coders for animation
        https://bugs.webkit.org/show_bug.cgi?id=87435

        Reviewed by Sam Weinig.

        Left the used argument coders only, behind a proper USE(UI_SIDE_COMPOSITING) flag.

        * Shared/WebCoreArgumentCoders.cpp:
        (CoreIPC):
        * Shared/WebCoreArgumentCoders.h:

2012-05-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Move allowRoundingHacks to Internals interface
        https://bugs.webkit.org/show_bug.cgi?id=87328

        Reviewed by Hajime Morita.

        * win/WebKit2.def: Add setAllowsRoundingHacks() to symbol filter.

2012-05-26  Geoffrey Garen  <ggaren@apple.com>

        WebKit should be lazy-finalization-safe (esp. the DOM) v2
        https://bugs.webkit.org/show_bug.cgi?id=87581

        Reviewed by Oliver Hunt.

        * WebProcess/Plugins/Netscape/JSNPObject.cpp:
        (WebKit::JSNPObject::destroy):
        (WebKit::JSNPObject::leakNPObject):
        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::finalize): Use static_cast instead of jsCast because
        jsCast does Structure-based validation, and our Structure is not guaranteed
        to be alive when we get finalized.

2012-05-25  Maciej Stachowiak  <mjs@apple.com>

        REGRESSION (r116720): Subframe PDF scrolls extremely slowly
        https://bugs.webkit.org/show_bug.cgi?id=87557
        <rdar://problem/11499408>

        Reviewed by Anders Carlsson.
        
        It's not possible to make an automated test for this.

        * WebProcess/Plugins/PDF/BuiltInPDFView.mm:
        (WebKit::BuiltInPDFView::wantsWheelEvents): Return true instead of false and delete
        misleading comment. While the built-in PDF view would get added to the set of scrollable
        areas anyway, there are some code paths that check wantsWheelEvents explicitly, so it seems
        necessary to reutrn true.

2012-05-25  Brady Eidson  <beidson@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=87418
        WebBackForwardList should separate "has no current index" from the integer value of the current index

        This patch also renames "m_current" to "m_currentIndex" for clarity and symmetry with
        other variable names that reference "index",

        It also removes the m_closed and m_enabled flags which were never actually used.

        Reviewed by Darin Adler.

        * UIProcess/WebBackForwardList.cpp:
        (WebKit::WebBackForwardList::WebBackForwardList):
        (WebKit::WebBackForwardList::addItem):
        (WebKit::WebBackForwardList::goToItem):
        (WebKit::WebBackForwardList::currentItem):
        (WebKit::WebBackForwardList::backItem):
        (WebKit::WebBackForwardList::forwardItem):
        (WebKit::WebBackForwardList::itemAtIndex):
        (WebKit::WebBackForwardList::backListCount):
        (WebKit::WebBackForwardList::forwardListCount):
        (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
        (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
        (WebKit::WebBackForwardList::clear):

        * UIProcess/WebBackForwardList.h:
        (WebKit::WebBackForwardList::currentIndex):
        (WebBackForwardList):

        * UIProcess/cf/WebBackForwardListCF.cpp:
        (WebKit::WebBackForwardList::createCFDictionaryRepresentation):
        (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):

2012-05-25  Beth Dakin  <bdakin@apple.com>

        https://bugs.webkit.org/show_bug.cgi?id=87529
        Background tabs hosted in window server flash before painting 
        when they first become active

        Reviewed by Anders Carlsson.

        Initialize to LayerHostingModeInWindowServer if that is 
        available to avoid having to re-make the context and re-set 
        everything later on.
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::WebPageProxy):

2012-05-25  Mario Sanchez Prada  <msanchez@igalia.com>

        [GTK][WK2] Implement API for generic permission requests
        https://bugs.webkit.org/show_bug.cgi?id=84018

        Reviewed by Martin Robinson.

        Added new 'permission-request' signal to WebKitWebView, to be
        fired when WebKit needs confirmation from the user on whether to
        allow or deny certain operations, such as sharing the user's
        location with web site through the Geolocation API.

        New WebKitPermissionRequest interface, providing allow() and
        deny() operations, to be called over the objects implementing it
        when emitted along with the new 'permission-request' signal.

        * UIProcess/API/gtk/WebKitPermissionRequest.cpp: Added.
        (webkit_permission_request_default_init):
        (webkit_permission_request_allow):
        (webkit_permission_request_deny):
        * UIProcess/API/gtk/WebKitPermissionRequest.h: Added.
        (_WebKitPermissionRequestIface):
        * GNUmakefile.am: Added new files.

        Added the new signal to WebKitWebView, providing a default handler
        that will just deny the request when the signal is not handled.

        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkitWebViewDecidePermissionRequest): Default handler.
        (webkit_web_view_class_init): Declare the new signal and connect
        to the default handler.
        (webkitWebViewMakePermissionRequest): Helper function to create a
        make a new permission request and emit the new signal signal.
        * UIProcess/API/gtk/WebKitWebView.h:
        (_WebKitWebViewClass):
        * UIProcess/API/gtk/WebKitWebViewPrivate.h: Declare the creational
        function webkitWebViewMakePermissionRequest for internal use only.

        Updated documentation files.

        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:

2012-05-25  Grzegorz Czajkowski  <g.czajkowski@samsung.com>

        [WK2] Fix client interface size for WKPageContextMenuClient.
        https://bugs.webkit.org/show_bug.cgi?id=87472

        Reviewed by Carlos Garcia Campos.

        Add correct offset for version 1 and 2 of WKPageContextMenuClient.
        Revision 109750 introduces a new API and increases size of interfaceSizesByVersion
        but the table is not properly initialized for newly introduced version 2.

        * Shared/APIClientTraits.cpp:
        (WebKit):

2012-05-24  Andreas Kling  <kling@webkit.org>

        Mac bots crashing under PluginInfo destructor.
        <http://webkit.org/b/87414>
        <rdar://problem/11527172>

        Reviewed by Darin Adler.

        We can't safely pass WTF::String to another thread without a deref() race,
        so pass the PluginInfo vector by pointer instead of by value.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::sendDidGetPlugins):
        (WebKit::WebContext::handleGetPlugins):
        * UIProcess/WebContext.h:

2012-05-25  Zalan Bujtas  <zbujtas@gmail.com>

        [Qt][WK2] Fix failing qmltests::FitToView::test_basic()
        https://bugs.webkit.org/show_bug.cgi?id=87236

        Reviewed by Kenneth Rohde Christiansen.

        Rename contentViewportChanged to informVisibleContentChange() to
        reflect its functionality better. Centralize m_hadUserInteraction flag
        setting and add assertions on it to ensure that designated
        functions are called only on user interaction.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewFlickablePrivate::onComponentComplete):
        (QQuickWebViewFlickablePrivate::updateViewportSize):
        (QQuickWebViewFlickablePrivate::_q_onInformVisibleContentChange):
        (QQuickWebViewFlickablePrivate::_q_resume):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/qquickwebview_p_p.h:
        (QQuickWebViewPrivate::_q_onInformVisibleContentChange):
        (QQuickWebViewFlickablePrivate):
        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
        (WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
        (WebKit::QtViewportInteractionEngine::pagePositionRequest):
        (WebKit::QtViewportInteractionEngine::touchBegin):
        (WebKit::QtViewportInteractionEngine::focusEditableArea):
        (WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
        (WebKit::QtViewportInteractionEngine::panGestureStarted):
        (WebKit::QtViewportInteractionEngine::pinchGestureStarted):
        * UIProcess/qt/QtViewportInteractionEngine.h:
        (QtViewportInteractionEngine):

2012-05-24  Tim Horton  <timothy_horton@apple.com>

        Add feature defines for web-facing parts of CSS Regions and Exclusions
        https://bugs.webkit.org/show_bug.cgi?id=87442
        <rdar://problem/10887709>

        Reviewed by Dan Bernstein.

        * Configurations/FeatureDefines.xcconfig:

2012-05-24  Geoffrey Garen  <ggaren@apple.com>

        WebKit should be lazy-finalization-safe (esp. the DOM)
        https://bugs.webkit.org/show_bug.cgi?id=87456

        Reviewed by Filip Pizlo.

        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
        (WebKit::NPRuntimeObjectMap::getOrCreateJSObject): Use the new idioms.

        (WebKit::NPRuntimeObjectMap::invalidate): Check for null while iterating,
        since that's possible now.

        (WebKit::NPRuntimeObjectMap::finalize): Use the new idioms.

2012-05-24  Brady Eidson  <beidson@apple.com>

        Fix the build after http://trac.webkit.org/changeset/118441
        Also fix a glaring bug with the new code, will run it by original reviewer retroactively.

        * UIProcess/cf/WebBackForwardListCF.cpp:
        (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Fix up the types of the ? operands
          to appease super-strict compilers. Don't allow negative indexes (besides the -1 "No index" index).

2012-05-24  Brady Eidson  <beidson@apple.com>

        <rdar://problem/10090764> and https://bugs.webkit.org/show_bug.cgi?id=87417
        (Unrepro) Crashes saving session state in WebBackForwardList

        Reviewed by Darin Adler.

        * UIProcess/WebBackForwardList.cpp:
        (WebKit::WebBackForwardList::addItem): Null check the proposed item and also m_page, to make
          sure the page hasn't been closed making this list inactive. Be more aggressive about
          clearing the current entries out if there is no current item index.
        (WebKit::WebBackForwardList::itemAtIndex): Early null return if there is no current index.
        (WebKit::WebBackForwardList::clear): Don't put the current item back in the array if there was
          no current item.

        * UIProcess/cf/WebBackForwardListCF.cpp:
        (WebKit::WebBackForwardList::createCFDictionaryRepresentation): Don't create a meaningless WebURL.
          Don't successfully return a dictionary if any of the entries were null. Be more aggressive about
          validating the current index we plan to return in the dictionary.
        (WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): More aggressively validate the
          current index read from disk. Replace a meaningless sanity check with our typical ASSERT.

2012-05-24  Anders Carlsson  <andersca@apple.com>

        Make sure that the layer hosting mode is up-to-date when reconnecting to a new web process
        https://bugs.webkit.org/show_bug.cgi?id=87421
        <rdar://problem/11510337>

        Reviewed by Beth Dakin.

        Send over the layer hosting mode as part of the web page creation parameters and create the right
        layer hosting context based on the mode.

        * Shared/WebPageCreationParameters.cpp:
        (WebKit::WebPageCreationParameters::encode):
        (WebKit::WebPageCreationParameters::decode):
        * Shared/WebPageCreationParameters.h:
        (WebPageCreationParameters):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::creationParameters):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::WebPage):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
        (TiledCoreAnimationDrawingArea):
        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
        (WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
        (WebKit):
        (WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):

2012-05-24  John Mellor  <johnme@chromium.org>

        Font Boosting: Add compile flag and runtime setting
        https://bugs.webkit.org/show_bug.cgi?id=87394

        Reviewed by Adam Barth.

        Add ENABLE_FONT_BOOSTING.

        * Configurations/FeatureDefines.xcconfig:

2012-05-24  Yael Aharon  <yael.aharon@nokia.com>

        [Qt] Stop using the flag FIXED_POSITION_CREATES_STACKING_CONTEXT
        https://bugs.webkit.org/show_bug.cgi?id=87392

        Reviewed by Antonio Gomes.

        Turn on the setting setFixedPositionCreatesStackingContext.

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

2012-05-24  Alexey Proskuryakov  <ap@apple.com>

        [WK2] Let the client give local files universal access on a case by case basis
        https://bugs.webkit.org/show_bug.cgi?id=87174
        <rdar://problem/11024330>

        Reviewed by Maciej Stachowiak.

        * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
        (WebKit::InjectedBundlePageLoaderClient::shouldForceUniversalAccessFromLocalURL):
        * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::shouldForceUniversalAccessFromLocalURL):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
        * WebProcess/qt/QtBuiltinBundlePage.cpp:
        (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage):
        Added glue code to call bundle client.

2012-05-24  Alexander Færøy  <alexander.faeroy@nokia.com>

        Reorder arguments to compare() in the QML WebView tests
        https://bugs.webkit.org/show_bug.cgi?id=87374

        Reviewed by Simon Hausmann.

        Based on patch by Kenneth Rohde Christiansen.

        The reordering is necessary to get correct information printed when
        the tests fails. Without this, the test suite will display the bogus
        value and not the expected value.

        This patch also removes the delayed windowShown since this is not
        needed anymore, due to us using the touch events instead of mouse
        events.

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

2012-05-24  Allan Sandfeld Jensen  <allan.jensen@nokia.com>

        [Qt] Tiles not painted after wheel or keyboard scroll.
        https://bugs.webkit.org/show_bug.cgi?id=87358

        Reviewed by Kenneth Rohde Christiansen.

        After performing a scroll requested from the WebProcess we also need
        to inform the painting layer of the viewport change.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::pagePositionRequest):

2012-05-24  Andras Becsi  <andras.becsi@nokia.com>

        [Qt][WK2] Fix bounce-back animation on pinch->pan
        https://bugs.webkit.org/show_bug.cgi?id=87266

        Reviewed by Kenneth Rohde Christiansen.

        If ending an out-of-bounds pinch gesture with releasing one finger
        (transition to a pan gesture) the bounce back animation blinks in
        the end position immediately first, then animates the content back
        into bounds.

        QtViewportInteractionEngine::cancelScrollAnimation should return
        early if there is no active kinetic animation.

        * UIProcess/qt/QtViewportInteractionEngine.cpp:
        (WebKit::QtViewportInteractionEngine::cancelScrollAnimation):

2012-05-23  Ojan Vafai  <ojan@chromium.org>

        add back the ability to disable flexbox
        https://bugs.webkit.org/show_bug.cgi?id=87147

        Reviewed by Tony Chang.

        * Configurations/FeatureDefines.xcconfig:

2012-05-23  Jer Noble  <jer.noble@apple.com>

        REGRESSION (117623) - Entering/exiting fullscreen HTML5 videos, there is a quick animated fade
        https://bugs.webkit.org/show_bug.cgi?id=87294

        Reviewed by Darin Adler.

        When setting the sublayers array on the layer hosting view, wrap the call in a CATransaction which disables
        animations.

        * UIProcess/API/mac/WKView.mm:
        (-[WKView _updateAcceleratedCompositingMode:WebKit::]):

2012-05-23  Dinu Jacob  <dinu.jacob@nokia.com>

        [Qt][Wk2] Assertion failure when selecting an option in select list with size attribute greater than one
        https://bugs.webkit.org/show_bug.cgi?id=86974

        Reviewed by Simon Hausmann.

        Select list with size attribute greater than one will not initially have any
        item in selected state (if no option has 'selected' tag), resulting in
        m_selectedModelIndex in WebPopupMenuProxyQt to be invalid. Hence, need to check
        whether the old index is invalid before accessing the item at that index.

        * UIProcess/API/qt/tests/qmltests/DesktopBehavior/tst_itemSelector.qml: Added new test that
          tests selection in a select list with size attribute value of 2.
        * UIProcess/API/qt/tests/qmltests/common/selectwithsize.html: Added.
        * UIProcess/qt/WebPopupMenuProxyQt.cpp:
        (WebKit::PopupMenuItemModel::select): Check whether old index is valid before accessing
          the item at that index.

2012-05-23  Jer Noble  <jer.noble@apple.com>

        REGRESSION (r116188): After exiting full screen, Safari window is frozen, then inline video speeds through frames as it catches up with audio
        https://bugs.webkit.org/show_bug.cgi?id=87206

        Reviewed by Darin Adler.

        When re-enabling the Safari window's autodisplay flag, also force the window to re-display.
        Otherwise, the window will not repaint itself until it is forced to by user interaction.

        * UIProcess/mac/WKFullScreenWindowController.mm:
        (-[WKFullScreenWindowController completeFinishExitFullScreenAnimationAfterRepaint]):

2012-05-23  Martin Robinson  <mrobinson@igalia.com>

        [GTK] [WebKit2] Add an API to enable and disable composited layer indicators
        https://bugs.webkit.org/show_bug.cgi?id=87053

        Reviewed by Carlos Garcia Campos.

        Add a WebKitSetting that allows the client to enable and disable debug
        borders and repaint counters for accelerated content.

        * UIProcess/API/gtk/WebKitSettings.cpp:
        (webKitSettingsSetProperty): Added.
        (webKitSettingsGetProperty): Added.
        (webkit_settings_class_init): Add the new property.
        (webkit_settings_set_draw_compositing_indicators): Added.
        (webkit_settings_get_draw_compositing_indicators): Added.
        * UIProcess/API/gtk/WebKitSettings.h:
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add the new API points to the
        documentation.
        * UIProcess/API/gtk/test/TestWebKitSettings.h: Add a new unit test.

2012-05-23  Michael Brüning  <michael.bruning@nokia.com>

        [Qt][WK2] Small refactoring WebPage::confirmComposition.
        https://bugs.webkit.org/show_bug.cgi?id=87243

        Reviewed by Kenneth Rohde Christiansen.

        Change nested if into an early return to reduce complexity.

        * WebProcess/WebPage/qt/WebPageQt.cpp:
        (WebKit::WebPage::confirmComposition):

2012-05-22  Alexander Færøy  <alexander.faeroy@nokia.com>

        [Qt] Missing tests for the evaluateJavaScript API
        https://bugs.webkit.org/show_bug.cgi?id=86351

        Reviewed by Kenneth Rohde Christiansen.

        * UIProcess/API/qt/tests/qmltests/WebView/tst_evaluateJavaScript.qml:
        * UIProcess/API/qt/tests/qmltests/common/evaluatejavascript.html: Added.

2012-05-23  Allan Sandfeld Jensen  <allan.jensen@nokia.com>

        [Qt] FloatSize Qt Support
        https://bugs.webkit.org/show_bug.cgi?id=87237

        Reviewed by Andreas Kling.

        Basic cleanup possible to new Qt support in FloatSize.

        * UIProcess/API/qt/qquickwebpage.cpp:
        (QQuickWebPagePrivate::updateSize):
        * UIProcess/API/qt/qwebkittest.cpp:
        (QWebKitTest::layoutSize):

2012-04-18  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Make the web view's url property follow the active url

        https://bugs.webkit.org/show_bug.cgi?id=77554

        The url property of the webview now reflects the 'active' url of the
        page, which maps to either the currently loading url, in the case of
        an ongoing load, or the result of a load, even when the load failed.

        In practice this means that setting the url though QML, or navigating
        to a new url in the page by e.g clicking, will both instantly change
        the url-property of the webview to the target url. This differs from
        earlier behavior, where we would update the url when the load
        committed.

        An optional argument is added to loadHtml(), to allow setting
        the unreachable url when providing replacement content for failed
        loads.

        Finally, the location bar in the minibrowser is updated to behave
        a bit more like normal browsers in terms of when the url will change
        and how active focus is handled.

        Reviewed by Simon Hausmann.

        * UIProcess/API/qt/qquickwebview.cpp:
        (QQuickWebViewPrivate::onComponentComplete):
        (QQuickWebView::reload):
        (QQuickWebView::url):
        (QQuickWebView::setUrl):
        (QQuickWebView::loadHtml):
        * UIProcess/API/qt/qquickwebview_p.h:
        * UIProcess/API/qt/tests/qmltests/DesktopBehavior.pro:
        * UIProcess/API/qt/tests/qmltests/WebView.pro:
        * UIProcess/API/qt/tests/qmltests/WebView/tst_loadUrl.qml:
        * UIProcess/API/qt/tests/qmltests/common/link.html: Added.
        * UIProcess/API/qt/tests/qmltests/common/redirect.html: Added.
        * UIProcess/qt/QtWebPageLoadClient.cpp:
        (QtWebPageLoadClient::QtWebPageLoadClient):
        (QtWebPageLoadClient::didStartProvisionalLoadForFrame):
        (QtWebPageLoadClient::didReceiveServerRedirectForProvisionalLoadForFrame):
        (QtWebPageLoadClient::didCommitLoadForFrame):
        (QtWebPageLoadClient::dispatchLoadFailed):
        (QtWebPageLoadClient::didFailProvisionalLoadWithErrorForFrame):
        (QtWebPageLoadClient::didFailLoadWithErrorForFrame):
        * UIProcess/qt/QtWebPageLoadClient.h:
        (QtWebPageLoadClient):

2012-05-23  Simon Hausmann  <simon.hausmann@nokia.com>

        [Qt] Race condition in LayerTreeHost/Proxy can cause blank rendering
        https://bugs.webkit.org/show_bug.cgi?id=87239

        Reviewed by Kenneth Rohde Christiansen.

        On the UI process side the WebLayerTreeRenderer/LayerTreeHostProxy pair is
        created with m_active = false, which makes it ignore any incoming layer updates.
        It remains inactive until the ContentsSGNode is created and setActive(true) is called.

        On the web process side the LayerTreeHost is created with m_waitingForUIProcess = false.

        Those two variables must be in sync, otherwise a race condition can
        happen: The web process sends updates to the ui process before the
        ContentsSGNode is created. This can happen for example when re-using an
        existing WebProcess to create a QQuickWebView and load a page very fast
        from the disk cache. The update arrives on the ui process side, but it
        is discarded because setActive(true) hasn't been called yet. As a
        result any updates that would for example create and populate the tiles
        required for rendering are ignored.

        This patch ensures that the variables are initialized with the same values and that calling
        setActive(true) will trigger the rendering of the next frame.

        * UIProcess/WebLayerTreeRenderer.cpp:
        (WebKit::WebLayerTreeRenderer::setActive):
        * WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
        (WebKit::LayerTreeHostQt::LayerTreeHostQt):

2012-05-23  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>

        [Qt] Make QtWebError return the failing URL as a QString instead of QUrl

        We don't want to use QUrl inside QtWebKit (only in the API layer), due
        to how QUrl normalizes the url.

        Reviewed by Simon Hausmann.

        * UIProcess/qt/QtWebError.cpp:
        (WebKit::QtWebError::url):
        * UIProcess/qt/QtWebError.h:

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

        [GTK] Add inspector API to WebKit2 GTK+
        https://bugs.webkit.org/show_bug.cgi?id=87113

        Reviewed by Martin Robinson.

        * GNUmakefile.list.am: Add new files to compilation.
        * UIProcess/API/C/gtk/WKInspectorClientGtk.cpp: Added.
        (WKInspectorSetInspectorClientGtk):
        * UIProcess/API/C/gtk/WKInspectorClientGtk.h: Added.
        * UIProcess/API/gtk/WebKitPrivate.h:
        * UIProcess/API/gtk/WebKitWebInspector.cpp: Added.
        (webkitWebInspectorFinalize):
        (webkit_web_inspector_init):
        (webkit_web_inspector_class_init):
        (openWindow): Emit WebKitWebInspector::open-window singal.
        (didClose): Emit WebKitWebInspector::closed signal.
        (bringToFront): Emit WebKitWebInspector::bring-to-front singal.
        (inspectedURLChanged): Set the inspected URI and emit
        GObject::notify signal if it changed.
        (attach): Emit WebKitWebInspector::attach signal.
        (detach): Emit WebKitWebInspector::detach signal.
        (didChangeAttachedHeight): Set the attached height and emit
        GObject::notify signal if it changed.
        (webkitWebInspectorCreate): Ceate a new WebKitWebInspector object
        for the given WKInspector. Also initialize and set the inspector
        client.
        (webkit_web_inspector_get_web_view): Return the web view used to
        render the inspector.
        (webkit_web_inspector_get_inspected_uri): Return the URI that is
        being inspected.
        (webkit_web_inspector_is_attached): Whether the inspector view is
        currently attached.
        (webkit_web_inspector_attach): Request to attach the inspector.
        (webkit_web_inspector_detach): Request to detach the inspector.
        (webkit_web_inspector_show): Request to show the inspector.
        (webkit_web_inspector_close): Request to close the inspector.
        (webkit_web_inspector_get_attached_height): Return the height that
        the inspector view should have when attached.
        * UIProcess/API/gtk/WebKitWebInspector.h: Added.
        * UIProcess/API/gtk/WebKitWebInspectorPrivate.h: Added.
        * UIProcess/API/gtk/WebKitWebView.cpp:
        (webkit_web_view_get_inspector): Return the WebKitWebInspector
        associated to the web view.
        * UIProcess/API/gtk/WebKitWebView.h:
        * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section for
        WebKitWebInspector.
        * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ad new symbols.
        * UIProcess/API/gtk/docs/webkit2gtk.types: Add
        webkit_web_inspector_get_type.
        * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test for the
        inspector API.
        * UIProcess/API/gtk/tests/TestInspector.cpp: Added.
        (testInspectorDefault):
        (testInspectorCustom):
        (testInspectorWindowDestroyed):
        (beforeAll):
        (afterAll):
        * UIProcess/API/gtk/tests/WebViewTest.cpp:
        (WebViewTest::showInWindowAndWaitUntilMapped): Add optional
        parameter to create a toplevel or popup window.
        (WebViewTest::resizeView): Helper function to set the widget
        allocation to a given size.
        * UIProcess/API/gtk/tests/WebViewTest.h:
        * UIProcess/API/gtk/webkit2.h: Include WebKitWebInspector.h
        * UIProcess/WebInspectorProxy.h:
        (WebKit::WebInspectorProxy::inspectorView): Return the view used
        to render the inspector.
        * UIProcess/gtk/WebInspectorClientGtk.cpp: Added.
        (WebKit::WebInspectorClientGtk::openWindow):
        (WebKit::WebInspectorClientGtk::didClose):
        (WebKit::WebInspectorClientGtk::bringToFront):
        (WebKit::WebInspectorClientGtk::inspectedURLChanged):
        (WebKit::WebInspectorClientGtk::attach):
        (WebKit::WebInspectorClientGtk::detach):
        (WebKit::WebInspectorClientGtk::didChangeAttachedHeight):
        * UIProcess/gtk/WebInspectorClientGtk.h: Added.
        * UIProcess/gtk/WebInspectorProxyGtk.cpp:
        (WebKit::inspectorViewDestroyed): Close the inspector page when
        the inspector view is destroyed, instead of when the inspector
        window is deleted, because the inspector view can now be inside a
        window created by the user.
        (WebKit::WebInspectorProxy::initializeInspectorClientGtk):
        Initialze the inspector client.
        (WebKit::WebInspectorProxy::platformCreateInspectorPage): Add a
        weak pointer to the inspector view to make sure it's NULL when
        destroyed.
        (WebKit::WebInspectorProxy::createInspectorWindow): Call
        openWindow on the inspector client, and return early if the
        callback was handled.
        (WebKit::WebInspectorProxy::platformOpen): Connect to destroy
        signal of the inspector view to close the page when the view is
        destroyed.
        (WebKit::WebInspectorProxy::platformDidClose): Call didClose on
        the inspector client.
        (WebKit::WebInspectorProxy::platformBringToFront): Call
        bringToFront on the inspector client, and return early if the
        callback was handled.
        (WebKit::WebInspectorProxy::platformInspectedURLChanged): Call
        inspectedURLChanged on the inspector client.
        (WebKit::WebInspectorProxy::platformAttach): Call attach on the
        inspector client and return if the callback was handled.
        (WebKit::WebInspectorProxy::platformDetach): Call detach on the
        inspector client and return if the callback was handled.
        (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): Call
        didChangeAttachedHeight on the inspector client.

2012-05-22  Anders Carlsson  <andersca@apple.com>

        Functions dispatched by dispatchAfterEnsuringUpdatedScrollPosition can be called after drawing area has been destroyed
        https://bugs.webkit.org/show_bug.cgi?id=87173
        <rdar://problem/11474087>

        Reviewed by Beth Dakin.

        Don't try to call forceRepaint if the drawing area has already been destroyed.

        * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
        (WebKit::TiledCoreAnimationDrawingArea::forceRepaintAsync):

2012-05-22  Anders Carlsson  <andersca@apple.com>

        Crash when a plug-in view outlives its containing WebPage
        https://bugs.webkit.org/show_bug.cgi?id=87163
        <rdar://problem/10849258>

        Reviewed by Dan Bernstein.

        In rare cases, when a plug-in is kept alive for some reason it can outlive its WebPage. When that happens,
        the PluginView destructor will try to access the (deleted) web page and we'll crash.

        Fix this by making the WebPage destructor iterate over all the registered plug-ins and null out the m_webPage pointer.
        Don't try to access the WebPage object if it's null.

        Also, remove PLATFORM(MAC) ifdefs around the HashSet of known plug-in views as well as the member functions that access the set;
        we want this to be cross platform now.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::PluginView):
        (WebKit::PluginView::~PluginView):
        (WebKit::PluginView::webPageDestroyed):
        (WebKit):
        * WebProcess/Plugins/PluginView.h:
        (PluginView):
        * WebProcess/WebPage/WebPage.cpp:
        (WebKit::WebPage::~WebPage):
        (WebKit::WebPage::scalePage):
        (WebKit):
        * WebProcess/WebPage/WebPage.h:
        (WebPage):

== Rolled over to ChangeLog-2012-05-22 ==
