2010-12-20 Benjamin Poulain Reviewed by Andreas Kling. [Qt] Improve the readability of FrameLoaderClientQt::createPlugin() https://bugs.webkit.org/show_bug.cgi?id=51330 Redefine the scopes to improve readability. Objects are now created in the scope they are used in. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin): 2010-12-17 Ariya Hidayat Reviewed by Antonio Gomes. [Qt] GraphicsContext should respect QWebView render hints https://bugs.webkit.org/show_bug.cgi?id=51208 Adjust the test since SmoothPixmapTransform is set by default. * tests/qwebview/tst_qwebview.cpp: (tst_QWebView::renderHints): 2010-12-05 Antonio Gomes Reviewed by Ariya Hidayat. [Qt] Fix caret browsing navigation mode https://bugs.webkit.org/show_bug.cgi?id=50536 Caret browsing can consume editing commands even when the start of current selection is not a editable content. r69582 missed this case because caret browsing feature testing is very poor today. This commit reintroduces part of the removed code in r69582 but guarded by a isCaretBrowsingEnabled() check. No regression found. * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::handleKeyboardEvent): 2010-12-17 Yi Shen Reviewed by Kenneth Rohde Christiansen. [Qt] QWebPage sends out a RequestSoftwareInputPanel event incorrectly in particular case https://bugs.webkit.org/show_bug.cgi?id=50419 Add HitTestResult check before firing RequestSoftwareInputPanel event. * Api/qwebpage.cpp: (QWebPagePrivate::mouseReleaseEvent): (QWebPagePrivate::handleSoftwareInputPanel): * Api/qwebpage_p.h: * tests/qwebpage/tst_qwebpage.cpp: (clickOnPage): (tst_QWebPage::inputMethods): 2010-12-17 Eric Seidel Unreviewed, rolling out r74229. http://trac.webkit.org/changeset/74229 https://bugs.webkit.org/show_bug.cgi?id=50536 Broken on Snow Leopard and possibly other platforms * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::handleKeyboardEvent): 2010-12-05 Antonio Gomes Reviewed by Ariya Hidayat. [Qt] Fix caret browsing navigation mode https://bugs.webkit.org/show_bug.cgi?id=50536 Caret browsing can consume editing commands even when the start of current selection is not a editable content. r69582 missed this case because caret browsing feature testing is very poor today. This commit reintroduces part of the removed code in r69582 but guarded by a isCaretBrowsingEnabled() check. No regression found. * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::handleKeyboardEvent): 2010-12-16 Ariya Hidayat Reviewed by Andreas Kling. [Qt] GraphicsContext should respect QWebView render hints https://bugs.webkit.org/show_bug.cgi?id=51208 Add some checks to ensure that GraphicsContext (via QWebFrame) does not clobber the render hints. * Api/qwebview.cpp: (QWebViewPrivate::QWebViewPrivate): * tests/qwebframe/tst_qwebframe.cpp: 2010-12-15 Laszlo Gombos Reviewed by Antonio Gomes. [Qt] Fix tst_QWebPage::geolocationRequestJS() https://bugs.webkit.org/show_bug.cgi?id=46814 Change the test case according to the changes introduced by r72603 and enable the test case. * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::geolocationRequestJS): 2010-12-14 Viatcheslav Ostapenko Reviewed by Laszlo Gombos. [Qt] Flash plugins should be windowless on QGraphicsWebView on Symbian Remove #idef SYMBIAN introduced by r69396. https://bugs.webkit.org/show_bug.cgi?id=50487 * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin): 2010-10-28 MORITA Hajime Reviewed by Ojan Vafai. spellcheck does not check pasted text https://bugs.webkit.org/show_bug.cgi?id=40092 Added a stub implememntation. * WebCoreSupport/EditorClientQt.h: (WebCore::EditorClientQt::requestCheckingOfString): 2010-12-11 Yi Shen Reviewed by Kenneth Rohde Christiansen. [Qt] Memory leaks for QWebPageClient https://bugs.webkit.org/show_bug.cgi?id=50267 Use OwnPtr to solve this memory leak issue. * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::overlay): (QGraphicsWebViewPrivate::QWebViewPrivate::pageClient): (QGraphicsWebViewPrivate::syncLayers): (QGraphicsWebViewPrivate::updateResizesToContentsForPage): (QGraphicsWebViewPrivate::_q_scaleChanged): (QGraphicsWebViewPrivate::detachCurrentPage): * Api/qwebpage_p.h: * Api/qwebview.cpp: (QWebViewPrivate::detachCurrentPage): * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::platformPageClient): * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::setInputMethodState): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::createPlugin): 2010-12-11 Jan Erik Hanssen Reviewed by Andreas Kling. [Qt] QWebFrame does not support QNetworkRequest::CacheLoadControl https://bugs.webkit.org/show_bug.cgi?id=35671 Make QWebFrame respect the QNetworkRequest::CacheLoadControl attribute set on the request, if any. * Api/qwebframe.cpp: (cacheLoadControlToCachePolicy): (QWebFrame::load): * tests/qwebframe/tst_qwebframe.cpp: 2010-10-11 Diego Gonzalez Reviewed by Kenneth Rohde Christiansen. [Qt] Mock DeviceOrientation client for DRT https://bugs.webkit.org/show_bug.cgi?id=47490 * WebCoreSupport/DeviceOrientationClientMockQt.cpp: Added. (WebCore::DeviceOrientationClientMockQt::client): (WebCore::DeviceOrientationClientMockQt::DeviceOrientationClientMockQt): (WebCore::DeviceOrientationClientMockQt::~DeviceOrientationClientMockQt): (WebCore::DeviceOrientationClientMockQt::setController): (WebCore::DeviceOrientationClientMockQt::startUpdating): (WebCore::DeviceOrientationClientMockQt::stopUpdating): (WebCore::DeviceOrientationClientMockQt::lastOrientation): (WebCore::DeviceOrientationClientMockQt::deviceOrientationControllerDestroyed): (WebCore::DeviceOrientationClientMockQt::setOrientation): * WebCoreSupport/DeviceOrientationClientMockQt.h: Added. * WebCoreSupport/DeviceOrientationClientQt.cpp: * WebCoreSupport/DeviceOrientationProviderQt.cpp: (WebCore::DeviceOrientationProviderQt::DeviceOrientationProviderQt): (WebCore::DeviceOrientationProviderQt::~DeviceOrientationProviderQt): (WebCore::DeviceOrientationProviderQt::changeDeviceOrientation): * WebCoreSupport/DeviceOrientationProviderQt.h: * WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::activeMockDeviceOrientationClient): (DumpRenderTreeSupportQt::removeMockDeviceOrientation): (DumpRenderTreeSupportQt::setMockDeviceOrientation): * WebCoreSupport/DumpRenderTreeSupportQt.h: 2010-12-10 Krithigassree Sambamurthy Reviewed by Joseph Pecoraro. Bug 43455 - [Qt]: Implement Application Cache Quotas https://bugs.webkit.org/show_bug.cgi?id=43455 Added new signal to report ApplicationCache Database quota. * Api/qwebpage.cpp: * Api/qwebpage.h: Added new functions to accomodate new appcache layout test origin-quota.html. * Api/qwebsecurityorigin.cpp: (QWebSecurityOrigin::setApplicationCacheQuota): * Api/qwebsecurityorigin.h: * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::reachedApplicationCacheOriginQuota): * WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::clearAllApplicationCaches): * WebCoreSupport/DumpRenderTreeSupportQt.h: 2010-12-10 Jocelyn Turcotte Reviewed by Kenneth Rohde Christiansen. [Qt] Support a QNetworkAccessManager affined to a different thread. https://bugs.webkit.org/show_bug.cgi?id=50080 This patch introduce thread safe proxy classes for QNetworkAccessManager and QNetworkReply. If run in the same thread, these objects will forward the calls with Qt::DirectConnection bindings, while in the other case they will use Qt::QueuedConnection to carry requests accross threads. This patch basically: - Makes sure that all access goes through these objects - Reorders signal connections to make sure we are connected when the signal comes - Makes sure that no QObject in the WebCore thread is a child of the reply which might be in a different thread. - Forward the data directly in QByteArrays in signals instead of collecting the data when the signal is handled. New test: tst_QWebPage::networkAccessManagerOnDifferentThread * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::download): * tests/qwebpage/tst_qwebpage.cpp: (QtNAMThread::QtNAMThread): (QtNAMThread::~QtNAMThread): (QtNAMThread::networkAccessManager): (QtNAMThread::run): (tst_QWebPage::networkAccessManagerOnDifferentThread): 2010-12-09 Sheriff Bot Unreviewed, rolling out r73635. http://trac.webkit.org/changeset/73635 https://bugs.webkit.org/show_bug.cgi?id=50778 'Side-effects on 3 css tests needs closer review' (Requested by mwenge on #webkit). * Api/qwebsettings.cpp: (graphics): * Api/qwebsettings.h: 2010-12-09 Robert Hogan Reviewed by Andreas Kling. [Qt] Search input field doesn't have cancel button Add a cancel button to the search field and make it customizable by the client. For now, use the close dialog button associated with the application's style as the default. https://bugs.webkit.org/show_bug.cgi?id=42887 * Api/qwebsettings.cpp: (graphics): * Api/qwebsettings.h: 2010-12-09 Siddharth Mathur Reviewed by Laszlo Gombos. Use BUILDING_WEBKIT like other ports https://bugs.webkit.org/show_bug.cgi?id=50713 * Api/qwebkitglobal.h: change BUILD_WEBKIT to BUILDING_WEBKIT 2010-12-08 Qi Zhang Reviewed by Kenneth Rohde Christiansen. [Qt] Support OrientationChange event https://bugs.webkit.org/show_bug.cgi?id=50685 Get OrientationChange event from qtmobility then send to webkit. * Api/qwebframe.cpp: (QWebFrame::orientationChanged): (QWebFrame::QWebFrame): * Api/qwebframe.h: * Api/qwebframe_p.h: 2010-12-07 Brian Weinstein Reviewed by John Sullivan. Layering Violation in ContextMenu - member variable of type HitTestResult https://bugs.webkit.org/show_bug.cgi?id=50586 Update users of ContextMenu and ContextMenuController to match where the new functions are located. * Api/qwebpage.cpp: (QWebPagePrivate::createContextMenu): (QWebPage::updatePositionDependentActions): 2010-12-07 Darin Adler Try to fix build. * Api/qwebpage.cpp: (frameLoadRequest): Added missing parentheses. 2010-12-06 Darin Adler Reviewed by Sam Weinig. Pass security origin to make local file decision correctly https://bugs.webkit.org/show_bug.cgi?id=48603 * Api/qwebpage.cpp: (frameLoadRequest): Pass security origin. 2010-12-07 Martin Robinson Unreviewed, rolling out r73392. http://trac.webkit.org/changeset/73392 https://bugs.webkit.org/show_bug.cgi?id=50489 This commit caused crashes on the GTK+ bots * Api/qwebframe.cpp: (QWebFrame::setUrl): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::finishedLoading): 2010-12-06 Nate Chapin Reviewed by Adam Barth. Update calls to DocumentWriter. https://bugs.webkit.org/show_bug.cgi?id=50489 * Api/qwebframe.cpp: (QWebFrame::setUrl): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::finishedLoading): 2010-12-01 Jia Pu Reviewed by Darin Adler. Support multiple correction candidates panel for misspelled word on Mac OS X. https://bugs.webkit.org/show_bug.cgi?id=50137 Adopted new function signature defined in base class. * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::getGuessesForWord): * WebCoreSupport/EditorClientQt.h: 2010-11-30 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Implement layoutTestController.findString https://bugs.webkit.org/show_bug.cgi?id=50236 Add support for the new advanced findString(). * WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::findString): * WebCoreSupport/DumpRenderTreeSupportQt.h: 2010-11-30 Ojan Vafai Revert r72876. It caused a ~30% perf regression in chromium's bloat-http test https://bugs.webkit.org/show_bug.cgi?id=50288 2010-11-29 Adam Barth Reviewed by Darin Adler. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs https://bugs.webkit.org/show_bug.cgi?id=50182 A display-isolated URL can only be displayed (e.g., put in an iframe, hyperlinked to) by documents from that scheme. In a sense, this is a generalization of some of the protections we give file URLs, but instead of lumping them all together into one "local" bucket, this patch creates a separate bucket for each scheme. For a while, I tried using a separate bucket for each origin. That would have played nicely with what Blob URLs are trying to do, but some "chrome" URL pages rely on being able to display other chrome URL pages, even in different origins. For example, the New Tab Page shows thumbnails from the "thumbnail" host. This patch also removes a bunch of unused code. I've also propagated the "deprecated" status of deprecatedCanDisplay to deprecatedShouldTreatURLAsLocal because that method has no other callers and is really asking for uppercase/lowercase bugs. I dream of someday removing these functions. 2010-11-29 Adam Barth Reviewed by Darin Adler. Introduce the notion of a "display-isolated" URL scheme for use by Chrome-internal URLs https://bugs.webkit.org/show_bug.cgi?id=50182 This patch adds a Chromium API for registering schemes as display-isolated. In a subsequent patch, I'll change the "chrome" scheme in Chrome to be display isolated instead of local. That will prevent file URLs from linking to chrome URLs. * Api/qwebsecurityorigin.cpp: (QWebSecurityOrigin::localSchemes): 2010-11-29 Vangelis Kokkevis Reviewed by Simon Fraser. Provide more fine grained control to ports over when to turn on accelerated compositing. https://bugs.webkit.org/show_bug.cgi?id=49998 As part of this change, the old hasAcceleratedCompositing method on the ChromeClient has now been replaced by allowedCompositingTriggers which returns a bitfield of all the features which can trigger the compositor. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::allowedCompositingTriggers): * WebCoreSupport/ChromeClientQt.h: 2010-11-30 Thiago Macieira Reviewed by Andreas Kling. [Qt] QWebFrame::load(QNetworkRequest) should respect the CustomVerbAttribute For CustomOperation requests, pass the CustomVerbAttribute on to the WebCore::ResourceRequest. * Api/qwebframe.cpp: (QWebFrame::load): 2010-11-25 Norbert Leser Reviewed by Laszlo Gombos. Updated Symbian DEF file for ARM target due to API changes via committs r72600-72603 (see bug# 46810) * symbian/eabi/QtWebKitu.def: 2010-11-25 Kenneth Rohde Christiansen Reviewed by Andreas Kling and Simon Hausmann. [Qt] Calculate the -webkit-pixel-radio using the device DPI. http://webkit.org/b/50059 Also, update the documentation on what a DIP is and how to override the device DPI in the case the system reports the wrong one (which unfortunately is common on X11). * Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate): (QWebPage::viewportAttributesForSize): * Api/qwebpage_p.h: * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::scaleFactor): 2010-11-24 Kristian Amlie Reviewed by Andreas Kling. Fixed handling of QInputMethodEvents with nonzero replacementLength. These types of events replace text that is already in the widget, but WebKit did not check for replacementLength at all. https://bugs.webkit.org/show_bug.cgi?id=49787 * Api/qwebpage.cpp: (QWebPagePrivate::inputMethodEvent): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): 2010-11-24 Andras Becsi Reviewed by Kenneth Rohde Christiansen. Make WebKit2 compile with !ENABLE(INSPECTOR). https://bugs.webkit.org/show_bug.cgi?id=49973 * WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::setJavaScriptProfilingEnabled): 2010-11-24 Sheriff Bot Unreviewed, rolling out r72650. http://trac.webkit.org/changeset/72650 https://bugs.webkit.org/show_bug.cgi?id=50010 breaks focus in scenes focus item other than graphicswebiview (Requested by tronical_ on #webkit). * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::QGraphicsWebViewPrivate): (QGraphicsWebView::QGraphicsWebView): (QGraphicsWebView::itemChange): * Api/qgraphicswebview.h: * tests/qgraphicswebview/tst_qgraphicswebview.cpp: 2010-11-24 Jan Erik Hanssen Reviewed by Kenneth Rohde Christiansen. [Qt] Html autofocus not working with QGraphicsWebView https://bugs.webkit.org/show_bug.cgi?id=43169 QGraphicsScene does not propagate Qt::ActivateWindowFocusReason focus events when there are no active items. * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::QGraphicsWebViewPrivate): (QGraphicsWebView::QGraphicsWebView): (QGraphicsWebView::eventFilter): (QGraphicsWebView::itemChange): * Api/qgraphicswebview.h: * tests/qgraphicswebview/tst_qgraphicswebview.cpp: (FocusPage::FocusPage): (FocusPage::event): (FocusPage::gotFocus): (tst_QGraphicsWebView::receivesFocusInOnShow): 2010-11-23 Kenneth Rohde Christiansen Reviewed by Andreas Kling. Adapt to setShouldDelegateScrolling not being a real setting anymore. We now similarily to setUseFixedLayout and setPaintEntireContents set it on the FrameView wen transitioning to a new page. * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::updateResizesToContentsForPage): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2010-11-23 Laszlo Gombos Reviewed by Kenneth Rohde Christiansen. [Qt] Fix compilation with !ENABLE(INSPECTOR) https://bugs.webkit.org/show_bug.cgi?id=49942 Add ENABLE(INSPECTOR) to the Qt specific files following r71981. * WebCoreSupport/InspectorClientQt.cpp: (WebCore::InspectorClientQt::inspectorDestroyed): (WebCore::InspectorClientQt::openInspectorFrontend): (WebCore::InspectorClientQt::sendMessageToFrontend): * WebCoreSupport/InspectorServerQt.cpp: (WebCore::InspectorServerRequestHandlerQt::webSocketReadyRead): 2010-11-23 Simon Hausmann Reviewed by Andreas Kling. [Qt] Restore binary compatibility with the QtWebKit 2.1 branch Re-order the enums by adding new enum entries to the end. * Api/qwebsettings.h: 2010-11-23 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Review the setUserPermission & friends API https://bugs.webkit.org/show_bug.cgi?id=46810 Renamed requestPermissionFromUser to featurePermissionRequested and cancelRequestsForPermission to featurePermissionRequestCanceled. * Api/qwebpage.h: * WebCoreSupport/GeolocationPermissionClientQt.cpp: (WebCore::GeolocationPermissionClientQt::requestGeolocationPermissionForFrame): (WebCore::GeolocationPermissionClientQt::cancelGeolocationPermissionRequestForFrame): * WebCoreSupport/NotificationPresenterClientQt.cpp: (WebCore::NotificationPresenterClientQt::requestPermission): (WebCore::NotificationPresenterClientQt::cancelRequestsForPermission): 2010-11-23 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Review the setUserPermission & friends API https://bugs.webkit.org/show_bug.cgi?id=46810 Rename setUserPermission to setFeaturePermission * Api/qwebpage.cpp: (QWebPage::setFeaturePermission): * Api/qwebpage.h: * tests/qwebpage/tst_qwebpage.cpp: (JSTestPage::requestPermission): 2010-11-23 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Review the setUserPermission & friends API https://bugs.webkit.org/show_bug.cgi?id=46810 Rename PermissionDomain to Feature, NotificationsPermissionDomain to Notifications and GeolocationPermissionDomain to Geolocation. * Api/qwebpage.cpp: (QWebPage::setUserPermission): * Api/qwebpage.h: * WebCoreSupport/GeolocationPermissionClientQt.cpp: (WebCore::GeolocationPermissionClientQt::requestGeolocationPermissionForFrame): (WebCore::GeolocationPermissionClientQt::cancelGeolocationPermissionRequestForFrame): * WebCoreSupport/NotificationPresenterClientQt.cpp: (WebCore::NotificationPresenterClientQt::requestPermission): (WebCore::NotificationPresenterClientQt::cancelRequestsForPermission): * tests/qwebpage/tst_qwebpage.cpp: (JSTestPage::requestPermission): (tst_QWebPage::geolocationRequestJS): 2010-11-23 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Review the setUserPermission & friends API https://bugs.webkit.org/show_bug.cgi?id=46810 Add a ByUser suffix to PermissionGranted/Denied. In the future we can add PermissionGrantedByDefault. * Api/qwebpage.cpp: (QWebPage::setUserPermission): * Api/qwebpage.h: * WebCoreSupport/GeolocationPermissionClientQt.cpp: (WebCore::GeolocationPermissionClientQt::setPermission): * tests/qwebpage/tst_qwebpage.cpp: (JSTestPage::requestPermission): 2010-11-22 Jan Erik Hanssen Reviewed by Kenneth Rohde Christiansen. [Qt] QWebElement::appendInside() doesn't work on head elements https://bugs.webkit.org/show_bug.cgi?id=49166 Make QWebElement::appendInside() call Element::deprecatedCreateContextualFragment(), bypassing the check for the HEAD tag in the HTMLElement implementation of this function. * Api/qwebelement.cpp: (QWebElement::appendInside): * tests/qwebelement/tst_qwebelement.cpp: (tst_QWebElement::addElementToHead): 2010-11-20 Andreas Kling Reviewed by Antonio Gomes. [Qt] Dragging a selection should use a rendering of the selection as "cursor" for the drag https://bugs.webkit.org/show_bug.cgi?id=49870 * WebCoreSupport/DragClientQt.cpp: (WebCore::DragClientQt::startDrag): Pass the DragImage to QDrag::setPixmap() 2010-11-20 Sam Magnuson Reviewed by Andreas Kling. [Qt] crash when attempting to add a JS object https://bugs.webkit.org/show_bug.cgi?id=49287 * Api/qwebframe.cpp: (QWebFrame::addToJavaScriptWindowObject): Test: LayoutTests/fast/frames/sandboxed-iframe-plugins.html 2010-11-20 Sheriff Bot Unreviewed, rolling out r72471. http://trac.webkit.org/changeset/72471 https://bugs.webkit.org/show_bug.cgi?id=49865 broke two IME tests on Qt (Requested by kling on #webkit). * Api/qwebpage.cpp: (QWebPagePrivate::inputMethodEvent): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): 2010-11-19 Kristian Amlie Reviewed by Andreas Kling. Fixed handling of QInputMethodEvents with nonzero replacementLength. These types of events replace text that is already in the widget, but WebKit did not check for replacementLength at all. Also made sure that the preeditString is always respected, even if there is committed text. This is how QLineEdit does it. https://bugs.webkit.org/show_bug.cgi?id=49787 * Api/qwebpage.cpp: (QWebPagePrivate::inputMethodEvent): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): 2010-11-19 Benjamin Poulain Reviewed by Kenneth Rohde Christiansen. [Qt] Transition and animation do not work with QWebView anymore https://bugs.webkit.org/show_bug.cgi?id=49797 Accelerated compositing should not be enabled on QWebView without texture mapper. * WebCoreSupport/PageClientQt.h: (WebCore::PageClientQWidget::allowsAcceleratedCompositing): 2010-11-19 Yi Shen Reviewed by Laszlo Gombos. [Qt] Memory leak in QWebInspector https://bugs.webkit.org/show_bug.cgi?id=49765 Delete QWebInspectorPrivate in ~QWebInspector() * Api/qwebinspector.cpp: (QWebInspector::~QWebInspector): 2010-11-19 Sam Magnuson Reviewed by Andreas Kling. [Qt] Compile with QT_NO_UNDOCOMMAND https://bugs.webkit.org/show_bug.cgi?id=49752 * WebCoreSupport/EditCommandQt.cpp: (EditCommandQt::EditCommandQt): * WebCoreSupport/EditCommandQt.h: 2010-11-19 Yi Shen Reviewed by Andreas Kling. https://bugs.webkit.org/show_bug.cgi?id=49200 [Qt] bugs in Composition mode for QWebPage::inputMethodEvent & inputMethodQuery() Make QWebPage work as following when editor is in composition mode: 1. anchor position and cursor position are the same and always >= 0 2. current selection is always null * Api/qwebpage.cpp: (QWebPagePrivate::inputMethodEvent): (QWebPage::inputMethodQuery): * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::inputMethods): 2010-11-18 Gavin Barraclough Build fix - update error messages folllowing r72360. * tests/qwebframe/tst_qwebframe.cpp: 2010-11-12 Luiz Agostini Reviewed by Andreas Kling. [Qt] Static platform plugin support https://bugs.webkit.org/show_bug.cgi?id=49470 Adding support for statically linked platform plugins. * WebCoreSupport/QtPlatformPlugin.cpp: (WebCore::QtPlatformPlugin::loadStaticallyLinkedPlugin): (WebCore::QtPlatformPlugin::plugin): * WebCoreSupport/QtPlatformPlugin.h: 2010-11-17 Andreas Kling Reviewed by Kenneth Rohde Christiansen. Reuse the size of the actualVisibleContentRect when loading a new page or navigating session history. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2010-11-17 Dimitri Glazkov Reviewed by Darin Adler. Converge means of querying a parent node into one way, which is Node::parentNode. https://bugs.webkit.org/show_bug.cgi?id=49686 * Api/qwebelement.cpp: (QWebElement::prependOutside): Changed to use parentNode. (QWebElement::appendOutside): Ditto. (QWebElement::encloseContentsWith): Ditto. (QWebElement::encloseWith): Ditto. 2010-11-16 Simon Hausmann Reviewed by Andreas Kling. [Qt] Remove synchronous QWebPage::checkPermissions signal https://bugs.webkit.org/show_bug.cgi?id=46810 As decided in the API review, we remove this signal and replace its only use currently with cached credentials. * Api/qwebpage.cpp: (QWebPage::setUserPermission): Pass the WebCore frame instead of the QWebFrame. * Api/qwebpage.h: * WebCoreSupport/NotificationPresenterClientQt.cpp: (WebCore::NotificationPresenterClientQt::checkPermission): Replaced explicit signal emission with hash lookup of previously granted permission (or not). (WebCore::NotificationPresenterClientQt::cancelRequestsForPermission): Remove any previously cached/granted permission for the given script execution context. (WebCore::NotificationPresenterClientQt::allowNotificationForFrame): Do not only serve pending permission requests but before calling the JS callbacks, remember the permission for subsequent synchronous checkPermission() calls. * WebCoreSupport/NotificationPresenterClientQt.h: Add cache for permissions. 2010-11-15 Gavin Barraclough Reviewed by NOBODY build fix. Fix test broken by earlier patch. * tests/qwebframe/tst_qwebframe.cpp: 2010-11-15 Yi Shen Reviewed by Andreas Kling. [Qt] ZoomTextOnly doesn't work https://bugs.webkit.org/show_bug.cgi?id=49568 Check QWebSettings::ZoomTextOnly attribute before applying zoom * Api/qwebframe.cpp: (QWebFrame::textSizeMultiplier): (QWebFrame::setZoomFactor): (QWebFrame::zoomFactor): * Api/qwebframe_p.h: (QWebFramePrivate::QWebFramePrivate): 2010-11-14 Andreas Kling Reviewed by Antonio Gomes. REGRESSION(r71895): API test javaScriptWindowObjectCleared fails https://bugs.webkit.org/show_bug.cgi?id=49466 As of r71895 empty inline scripts are no longer executed and so the javaScriptWindowObjectCleared() signal is no longer triggered by . * tests/qwebframe/tst_qwebframe.cpp: 2010-11-12 Jacob Dinu Reviewed by Andreas Kling. [Qt] Update .def file for Symbian https://bugs.webkit.org/show_bug.cgi?id=49456 Added missing symbols from revisions r69825, r70470, r71806 * symbian/eabi/QtWebKitu.def: 2010-11-12 Benjamin Poulain Reviewed by Andreas Kling. [Qt] Need to implement WebKit::pluginWillHandleLoadError for WebKit2 https://bugs.webkit.org/show_bug.cgi?id=48764 Add the missing error. * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::pluginWillHandleLoadError): 2010-11-11 Yi Shen Reviewed by Andreas Kling. [Qt] QWebScriptWorld::world() may crash https://bugs.webkit.org/show_bug.cgi?id=49342 * Api/qwebscriptworld.cpp: (QWebScriptWorld::world): 2010-11-11 Kenneth Rohde Christiansen Reviewed by Andreas Kling. [Qt] Add an API for overriding the actual visible content rect in WebCore https://bugs.webkit.org/show_bug.cgi?id=49373 * Api/qwebpage.cpp: (QWebPage::setActualVisibleContentRect): * Api/qwebpage.h: 2010-11-11 Andreas Kling Reviewed by Kenneth Rohde Christiansen. FrameView: Don't clip to visibleContentRect in paintEntireContents mode https://bugs.webkit.org/show_bug.cgi?id=49375 Use paintEntireContents in combination with tiling, allowing to actually set visibleContentRect to something different from the actual contents size. * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::updateResizesToContentsForPage): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2010-11-10 Sheriff Bot Unreviewed, rolling out r71733. http://trac.webkit.org/changeset/71733 https://bugs.webkit.org/show_bug.cgi?id=49319 made qt bot crashy and sad (Requested by kling on #webkit). * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::updateResizesToContentsForPage): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2010-11-10 Kenneth Rohde Christiansen Reviewed by Andreas Kling. Use paintEntireContents in combination with tiling, allowing to actually set visibleContentRect to something different from the actual contents size. * Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::updateResizesToContentsForPage): * WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::transitionToCommittedForNewPage): 2010-11-08 Benjamin Poulain Reviewed by Andreas Kling. [Qt] build error in WebKit/qt/Api/qwebpage.cpp in Qt 4.7.0 https://bugs.webkit.org/show_bug.cgi?id=47427 Add a missing guard in order to be able to compile when ENABLE(TOUCH_EVENTS) is not defined. * Api/qwebpage.cpp: (QWebPagePrivate::touchEvent): 2010-11-08 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=48685 Notify UI process about focused frame Added an empty implementation of the new ChromeClient method. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::focusedNodeChanged): Removed unneeded namespace prefix. (WebCore::ChromeClientQt::focusedFrameChanged): * WebCoreSupport/ChromeClientQt.h: 2010-11-08 Noam Rosenthal Reviewed by Kenneth Rohde Christiansen. [Texmap] [Qt] Texture mapper initial implementation https://bugs.webkit.org/show_bug.cgi?id=47070 Reorganized the textureMapper to be a member of QWebFramePrivate, to help with making TextureMapper thread-safe. * Api/qwebframe.cpp: (QWebFramePrivate::renderCompositedLayers): * Api/qwebframe_p.h: * WebCoreSupport/PageClientQt.cpp: (WebCore::PlatformLayerProxyQt::setTextureMapper): (WebCore::PlatformLayerProxyQt::textureMapper): (WebCore::PlatformLayerProxyQWidget::PlatformLayerProxyQWidget): (WebCore::PlatformLayerProxyQGraphicsObject::PlatformLayerProxyQGraphicsObject): 2010-11-07 Adam Barth Reviewed by Eric Seidel. Rename Cache to MemoryCache https://bugs.webkit.org/show_bug.cgi?id=49159 * Api/qwebpage.cpp: * Api/qwebsettings.cpp: 2010-11-07 Chang Shu Reviewed by Antonio Gomes. Add a helper function to avoid duplicated code. https://bugs.webkit.org/show_bug.cgi?id=49085 * WebCoreSupport/EditorClientQt.cpp: (WebCore::EditorClientQt::handleKeyboardEvent): 2010-11-05 Chris Marrin Reviewed by Simon Fraser. Move resumeAnimations/suspendAnimations from Frame to AnimationController. https://bugs.webkit.org/show_bug.cgi?id=49073 * WebCoreSupport/DumpRenderTreeSupportQt.cpp: (DumpRenderTreeSupportQt::suspendAnimations): (DumpRenderTreeSupportQt::resumeAnimations): 2010-11-03 Antonio Gomes , Andre Pedralho Reviewed by Kenneth Rohde Christiansen and Antti Koivisto. [Qt] Making effective use of nodesFromRect. https://bugs.webkit.org/show_bug.cgi?id=44089 Patch adds a helper class (named TouchAdjuster) to improve tap actions on mobile touch devices. TouchAdjuster makes use of the newly added rect based hit test extension through the Document::nodesFromRect method. Given a rectangle as input, nodesFromRect returns a z-index ordered list of nodes whose boundaries intersect the rectangle. Basically the TouchAdjuster class intercepts the QGraphicsSceneMouseEvent passed to both QWebPagePrivate::mouse{Press,Release}Event methods before they are passed down to WebCore. The goal is to infer the target click position. For that, a rectangle is built up using the event position as a center point and expanding it based on the values and directions set in the Platform Plugin QWebTouchModifier::hitTestPadding. TouchAdjuster iterates over the list of nodes returned by nodesFromRect and picks the clickable one that has the largest intersection area with the hit test rectangle. The target position is then the center point of this intersection area. In case of no clickable node intersects the hit test area, the click position is not altered. TouchAdjuster is *only* working for QGraphicsWebView based views. * Api/qwebpage.cpp: (QWebPagePrivate::mousePressEvent): (QWebPagePrivate::mouseReleaseEvent): (QWebPagePrivate::adjustPointForClicking): (QWebPagePrivate::TouchAdjuster::TouchAdjuster): (QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch): (isClickableElement): (hasMouseListener): (isValidFrameOwner): (nodeToElement): * Api/qwebpage_p.h: 2010-10-20 Chang Shu , Antonio Gomes Reviewed by Simon Fraser. [Qt] Makes and