[webkit-changes] [132973] trunk
Title: [132973] trunk Revision 132973 Author allan.jen...@digia.com Date 2012-10-30 18:43:02 -0700 (Tue, 30 Oct 2012) Log Message DOM URL is flaky when workers are used https://bugs.webkit.org/show_bug.cgi?id=99178 Reviewed by Geoffrey Garen. Source/WebCore: Extend JSNoStaticTables to also avoid direct access of static tables in constructor objects. Test: fast/workers/worker-domurl.html * bindings/scripts/CodeGeneratorJS.pm: (constructorHashTableAccessor): (GenerateConstructorDefinition): LayoutTests: Test that the methods of the URL constructor are accesible from both main and worker threads. * fast/workers/resources/worker-domurl.js: Added. (log): (onmessage): * fast/workers/worker-domurl-expected.txt: Added. * fast/workers/worker-domurl.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorJS.pm Added Paths trunk/LayoutTests/fast/workers/resources/worker-domurl.js trunk/LayoutTests/fast/workers/worker-domurl-expected.txt trunk/LayoutTests/fast/workers/worker-domurl.html Diff Modified: trunk/LayoutTests/ChangeLog (132972 => 132973) --- trunk/LayoutTests/ChangeLog 2012-10-31 01:39:45 UTC (rev 132972) +++ trunk/LayoutTests/ChangeLog 2012-10-31 01:43:02 UTC (rev 132973) @@ -1,3 +1,18 @@ +2012-10-30 Allan Sandfeld Jensen + +DOM URL is flaky when workers are used +https://bugs.webkit.org/show_bug.cgi?id=99178 + +Reviewed by Geoffrey Garen. + +Test that the methods of the URL constructor are accesible from both main and worker threads. + +* fast/workers/resources/worker-domurl.js: Added. +(log): +(onmessage): +* fast/workers/worker-domurl-expected.txt: Added. +* fast/workers/worker-domurl.html: Added. + 2012-10-30 Hans Muller [CSS Exclusions] Multiple segment polygon layout does not get all segments Added: trunk/LayoutTests/fast/workers/resources/worker-domurl.js (0 => 132973) --- trunk/LayoutTests/fast/workers/resources/worker-domurl.js (rev 0) +++ trunk/LayoutTests/fast/workers/resources/worker-domurl.js 2012-10-31 01:43:02 UTC (rev 132973) @@ -0,0 +1,19 @@ +function log(message) +{ +postMessage(message); +} + +_onmessage_ = function(event) +{ +if (URL.createObjectURL == undefined) +log('FAIL: URL.createObjectURL undefined'); +else +log('PASS: URL.createObjectURL defined'); + +if (URL.revokeObjectURL == undefined) +log('FAIL: URL.revokeObjectURL undefined'); +else +log('PASS: URL.revokeObjectURL defined'); + +log('DONE'); +} Added: trunk/LayoutTests/fast/workers/worker-domurl-expected.txt (0 => 132973) --- trunk/LayoutTests/fast/workers/worker-domurl-expected.txt (rev 0) +++ trunk/LayoutTests/fast/workers/worker-domurl-expected.txt 2012-10-31 01:43:02 UTC (rev 132973) @@ -0,0 +1,7 @@ +PASS: window.URL.createObjectURL defined +PASS: window.URL.revokeObjectURL defined +PASS: URL.createObjectURL defined +PASS: URL.revokeObjectURL defined +PASS: window.URL.createObjectURL defined +PASS: window.URL.revokeObjectURL defined + Added: trunk/LayoutTests/fast/workers/worker-domurl.html (0 => 132973) --- trunk/LayoutTests/fast/workers/worker-domurl.html (rev 0) +++ trunk/LayoutTests/fast/workers/worker-domurl.html 2012-10-31 01:43:02 UTC (rev 132973) @@ -0,0 +1,46 @@ + + + + + + +function log(message) +{ +document.getElementById('console').appendChild(document.createTextNode(message + "\n")); +} + +function runTest() { +var worker = new Worker('resources/worker-domurl.js'); +worker._onmessage_ = function(event) { +if (event.data == 'DONE') { +testDOMURL(); +if (window.testRunner) +testRunner.notifyDone(); +} else +log(event.data); +} +testDOMURL(); +worker.postMessage(''); +} + +function testDOMURL() +{ +if (window.URL.createObjectURL == undefined) +log('FAIL: window.URL.createObjectURL undefined'); +else +log('PASS: window.URL.createObjectURL defined'); + +if (window.URL.revokeObjectURL == undefined) +log('FAIL: window.URL.revokeObjectURL undefined'); +else +log('PASS: window.URL.revokeObjectURL defined'); +} + +if (window.testRunner) { +testRunner.dumpAsText(); +testRunner.waitUntilDone(); +} +window._onload_ = runTest; + + + Modified: trunk/Source/WebCore/ChangeLog (132972 => 132973) --- trunk/Source/WebCore/ChangeLog 2012-10-31 01:39:45 UTC (rev 132972) +++ trunk/Source/WebCore/ChangeLog 2012-10-31 01:43:02 UTC (rev 132973) @@ -1,3 +1,18 @@ +2012-10-30 Allan Sandfeld Jensen + +DOM URL is flaky when workers are used +https://bugs.webkit.org/show_bug.cgi?id=99178 + +Reviewed by Geoffrey Garen. + +Extend JSNoStaticTables to also avoid direct access of static tables in constructor objects. + +Te
[webkit-changes] [133007] trunk/Source/WebCore
Title: [133007] trunk/Source/WebCore Revision 133007 Author allan.jen...@digia.com Date 2012-10-31 03:59:30 -0700 (Wed, 31 Oct 2012) Log Message Reset binding test result after r132973 https://bugs.webkit.org/show_bug.cgi?id=99178 Unreviewed gardening. * bindings/scripts/test/JS/JSFloat64Array.cpp: (WebCore::getJSFloat64ArrayConstructorTable): (WebCore::JSFloat64ArrayConstructor::getOwnPropertySlot): (WebCore::JSFloat64ArrayConstructor::getOwnPropertyDescriptor): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (133006 => 133007) --- trunk/Source/WebCore/ChangeLog 2012-10-31 09:59:45 UTC (rev 133006) +++ trunk/Source/WebCore/ChangeLog 2012-10-31 10:59:30 UTC (rev 133007) @@ -1,3 +1,15 @@ +2012-10-31 Allan Sandfeld Jensen + +Reset binding test result after r132973 +https://bugs.webkit.org/show_bug.cgi?id=99178 + +Unreviewed gardening. + +* bindings/scripts/test/JS/JSFloat64Array.cpp: +(WebCore::getJSFloat64ArrayConstructorTable): +(WebCore::JSFloat64ArrayConstructor::getOwnPropertySlot): +(WebCore::JSFloat64ArrayConstructor::getOwnPropertyDescriptor): + 2012-10-31 Mike West Script run from an isolated world should bypass a page's CSP. Modified: trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.cpp (133006 => 133007) --- trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.cpp 2012-10-31 09:59:45 UTC (rev 133006) +++ trunk/Source/WebCore/bindings/scripts/test/JS/JSFloat64Array.cpp 2012-10-31 10:59:30 UTC (rev 133007) @@ -53,8 +53,13 @@ }; static const HashTable JSFloat64ArrayConstructorTable = { 1, 0, JSFloat64ArrayConstructorTableValues, 0 }; -const ClassInfo JSFloat64ArrayConstructor::s_info = { "Float64ArrayConstructor", &Base::s_info, &JSFloat64ArrayConstructorTable, 0, CREATE_METHOD_TABLE(JSFloat64ArrayConstructor) }; +static const HashTable* getJSFloat64ArrayConstructorTable(ExecState* exec) +{ +return getHashTableForGlobalData(exec->globalData(), &JSFloat64ArrayConstructorTable); +} +const ClassInfo JSFloat64ArrayConstructor::s_info = { "Float64ArrayConstructor", &Base::s_info, 0, getJSFloat64ArrayConstructorTable, CREATE_METHOD_TABLE(JSFloat64ArrayConstructor) }; + JSFloat64ArrayConstructor::JSFloat64ArrayConstructor(Structure* structure, JSDOMGlobalObject* globalObject) : DOMConstructorObject(structure, globalObject) { @@ -70,12 +75,12 @@ bool JSFloat64ArrayConstructor::getOwnPropertySlot(JSCell* cell, ExecState* exec, PropertyName propertyName, PropertySlot& slot) { -return getStaticValueSlot(exec, &JSFloat64ArrayConstructorTable, jsCast(cell), propertyName, slot); +return getStaticValueSlot(exec, getJSFloat64ArrayConstructorTable(exec), jsCast(cell), propertyName, slot); } bool JSFloat64ArrayConstructor::getOwnPropertyDescriptor(JSObject* object, ExecState* exec, PropertyName propertyName, PropertyDescriptor& descriptor) { -return getStaticValueDescriptor(exec, &JSFloat64ArrayConstructorTable, jsCast(object), propertyName, descriptor); +return getStaticValueDescriptor(exec, getJSFloat64ArrayConstructorTable(exec), jsCast(object), propertyName, descriptor); } EncodedJSValue JSC_HOST_CALL JSFloat64ArrayConstructor::constructJSFloat64Array(ExecState* exec) ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [133763] trunk
Title: [133763] trunk Revision 133763 Author allan.jen...@digia.com Date 2012-11-07 08:12:53 -0800 (Wed, 07 Nov 2012) Log Message [Qt] Open link in this window action https://bugs.webkit.org/show_bug.cgi?id=101226 Reviewed by Simon Hausmann. Source/WebCore: Adds the action to the WebCore context-menu controller. * page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected): (WebCore::ContextMenuController::checkOrEnableIfNeeded): * platform/ContextMenuItem.h: * platform/LocalizedStrings.h: * platform/qt/LocalizedStringsQt.cpp: (WebCore::contextMenuItemTagOpenLinkInThisWindow): Source/WebKit/qt: Adds the action to QtWebKit. * Api/qwebpage.cpp: (webActionForContextMenuAction): (QWebPage::triggerAction): (QWebPage::action): * Api/qwebpage.h: Tools: Populates the context-menu with the new action when the default action is to open in a new window. * QtTestBrowser/webview.cpp: (createContextMenu): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/ContextMenuController.cpp trunk/Source/WebCore/platform/ContextMenuItem.h trunk/Source/WebCore/platform/LocalizedStrings.h trunk/Source/WebCore/platform/qt/LocalizedStringsQt.cpp trunk/Source/WebKit/qt/Api/qwebpage.cpp trunk/Source/WebKit/qt/Api/qwebpage.h trunk/Source/WebKit/qt/ChangeLog trunk/Tools/ChangeLog trunk/Tools/QtTestBrowser/webview.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (133762 => 133763) --- trunk/Source/WebCore/ChangeLog 2012-11-07 16:05:27 UTC (rev 133762) +++ trunk/Source/WebCore/ChangeLog 2012-11-07 16:12:53 UTC (rev 133763) @@ -1,3 +1,20 @@ +2012-11-07 Allan Sandfeld Jensen + +[Qt] Open link in this window action +https://bugs.webkit.org/show_bug.cgi?id=101226 + +Reviewed by Simon Hausmann. + +Adds the action to the WebCore context-menu controller. + +* page/ContextMenuController.cpp: +(WebCore::ContextMenuController::contextMenuItemSelected): +(WebCore::ContextMenuController::checkOrEnableIfNeeded): +* platform/ContextMenuItem.h: +* platform/LocalizedStrings.h: +* platform/qt/LocalizedStringsQt.cpp: +(WebCore::contextMenuItemTagOpenLinkInThisWindow): + 2012-11-07 Andrey Adaikin Web Inspector: [Canvas] closure compiler fixes Modified: trunk/Source/WebCore/page/ContextMenuController.cpp (133762 => 133763) --- trunk/Source/WebCore/page/ContextMenuController.cpp 2012-11-07 16:05:27 UTC (rev 133762) +++ trunk/Source/WebCore/page/ContextMenuController.cpp 2012-11-07 16:12:53 UTC (rev 133763) @@ -368,6 +368,9 @@ else openNewWindow(m_hitTestResult.absoluteLinkURL(), frame); break; +case ContextMenuItemTagOpenLinkInThisWindow: +frame->loader()->loadFrameRequest(FrameLoadRequest(frame->document()->securityOrigin(), ResourceRequest(m_hitTestResult.absoluteLinkURL(), frame->loader()->outgoingReferrer())), false, false, 0, 0, MaybeSendReferrer); +break; case ContextMenuItemTagBold: frame->editor()->command("ToggleBold").execute(); break; @@ -1297,6 +1300,7 @@ #endif case ContextMenuItemTagNoAction: case ContextMenuItemTagOpenLinkInNewWindow: +case ContextMenuItemTagOpenLinkInThisWindow: case ContextMenuItemTagDownloadLinkToDisk: case ContextMenuItemTagCopyLinkToClipboard: case ContextMenuItemTagOpenImageInNewWindow: Modified: trunk/Source/WebCore/platform/ContextMenuItem.h (133762 => 133763) --- trunk/Source/WebCore/platform/ContextMenuItem.h 2012-11-07 16:05:27 UTC (rev 133762) +++ trunk/Source/WebCore/platform/ContextMenuItem.h 2012-11-07 16:12:53 UTC (rev 133763) @@ -164,6 +164,7 @@ ContextMenuItemTagMediaPlayPause, ContextMenuItemTagMediaMute, ContextMenuItemTagDictationAlternative, +ContextMenuItemTagOpenLinkInThisWindow, ContextMenuItemBaseCustomTag = 5000, ContextMenuItemCustomTagNoAction = 5998, ContextMenuItemLastCustomTag = 5999, Modified: trunk/Source/WebCore/platform/LocalizedStrings.h (133762 => 133763) --- trunk/Source/WebCore/platform/LocalizedStrings.h 2012-11-07 16:05:27 UTC (rev 133762) +++ trunk/Source/WebCore/platform/LocalizedStrings.h 2012-11-07 16:12:53 UTC (rev 133763) @@ -49,6 +49,9 @@ #if ENABLE(CONTEXT_MENUS) String contextMenuItemTagOpenLinkInNewWindow(); +#if PLATFORM(QT) +String contextMenuItemTagOpenLinkInThisWindow(); +#endif String contextMenuItemTagDownloadLinkToDisk(); String contextMenuItemTagCopyLinkToClipboard(); String contextMenuItemTagOpenImageInNewWindow(); Modified: trunk/Source/WebCore/platform/qt/LocalizedStringsQt.cpp (133762 => 133763) --- trunk/Source/WebCore/platform/qt/LocalizedStringsQt.cpp 2012-11-07 16:05:27 UTC (rev 133762) +++ trunk/Source/WebCore/platform/qt/LocalizedStringsQt.cpp 2012-11-07 16:12:53 UTC (rev 133763) @@ -88,6 +88,11 @@ return QCoreApplication::translate("QWebPage", "Ope
[webkit-changes] [133899] trunk/Source/WebKit/qt
Title: [133899] trunk/Source/WebKit/qt Revision 133899 Author allan.jen...@digia.com Date 2012-11-08 07:32:38 -0800 (Thu, 08 Nov 2012) Log Message [Qt] API test tst_qwebinspector crashes https://bugs.webkit.org/show_bug.cgi?id=101599 Reviewed by Simon Hausmann. Delete the internal inspector from QWebPage destructor, instead of causing recursions between QWebPagePrivate::setInspector and QWebInspector::setPage. Also separate the three tests in tst_QWebInspector to better tell which one is failing. * Api/qwebpage.cpp: (QWebPagePrivate::~QWebPagePrivate): (QWebPagePrivate::setInspector): * tests/qwebinspector/tst_qwebinspector.cpp: (tst_QWebInspector): (tst_QWebInspector::attachAndDestroyPageFirst): (tst_QWebInspector::attachAndDestroyInspectorFirst): (tst_QWebInspector::attachAndDestroyInternalInspector): Modified Paths trunk/Source/WebKit/qt/Api/qwebpage.cpp trunk/Source/WebKit/qt/ChangeLog trunk/Source/WebKit/qt/tests/qwebinspector/tst_qwebinspector.cpp Diff Modified: trunk/Source/WebKit/qt/Api/qwebpage.cpp (133898 => 133899) --- trunk/Source/WebKit/qt/Api/qwebpage.cpp 2012-11-08 15:25:17 UTC (rev 133898) +++ trunk/Source/WebKit/qt/Api/qwebpage.cpp 2012-11-08 15:32:38 UTC (rev 133899) @@ -378,11 +378,6 @@ QWebPagePrivate::~QWebPagePrivate() { -if (inspector && inspectorIsInternalOnly) { -// Since we have to delete an internal inspector, -// call setInspector(0) directly to prevent potential crashes -setInspector(0); -} #ifndef QT_NO_CONTEXTMENU delete currentContextMenu.data(); #endif @@ -392,8 +387,13 @@ delete settings; delete page; -if (inspector) -inspector->setPage(0); +if (inspector) { +// If the inspector is ours, delete it, otherwise just detach from it. +if (inspectorIsInternalOnly) +delete inspector; +else +inspector->setPage(0); +} #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS) NotificationPresenterClientQt::notificationPresenter()->removeClient(); @@ -1466,13 +1466,6 @@ if (inspector) inspector->d->setFrontend(0); -if (inspectorIsInternalOnly) { -QWebInspector* inspToDelete = inspector; -inspector = 0; -inspectorIsInternalOnly = false; -delete inspToDelete;// Delete after to prevent infinite recursion -} - inspector = insp; // Give inspector frontend web view if previously created Modified: trunk/Source/WebKit/qt/ChangeLog (133898 => 133899) --- trunk/Source/WebKit/qt/ChangeLog 2012-11-08 15:25:17 UTC (rev 133898) +++ trunk/Source/WebKit/qt/ChangeLog 2012-11-08 15:32:38 UTC (rev 133899) @@ -1,5 +1,26 @@ 2012-11-07 Allan Sandfeld Jensen +[Qt] API test tst_qwebinspector crashes +https://bugs.webkit.org/show_bug.cgi?id=101599 + +Reviewed by Simon Hausmann. + +Delete the internal inspector from QWebPage destructor, instead of causing recursions +between QWebPagePrivate::setInspector and QWebInspector::setPage. + +Also separate the three tests in tst_QWebInspector to better tell which one is failing. + +* Api/qwebpage.cpp: +(QWebPagePrivate::~QWebPagePrivate): +(QWebPagePrivate::setInspector): +* tests/qwebinspector/tst_qwebinspector.cpp: +(tst_QWebInspector): +(tst_QWebInspector::attachAndDestroyPageFirst): +(tst_QWebInspector::attachAndDestroyInspectorFirst): +(tst_QWebInspector::attachAndDestroyInternalInspector): + +2012-11-08 Allan Sandfeld Jensen + [Qt] Open link in this window action https://bugs.webkit.org/show_bug.cgi?id=101226 Modified: trunk/Source/WebKit/qt/tests/qwebinspector/tst_qwebinspector.cpp (133898 => 133899) --- trunk/Source/WebKit/qt/tests/qwebinspector/tst_qwebinspector.cpp 2012-11-08 15:25:17 UTC (rev 133898) +++ trunk/Source/WebKit/qt/tests/qwebinspector/tst_qwebinspector.cpp 2012-11-08 15:32:38 UTC (rev 133899) @@ -28,41 +28,48 @@ Q_OBJECT private Q_SLOTS: -void attachAndDestroy(); +void attachAndDestroyPageFirst(); +void attachAndDestroyInspectorFirst(); +void attachAndDestroyInternalInspector(); }; -void tst_QWebInspector::attachAndDestroy() +void tst_QWebInspector::attachAndDestroyPageFirst() { -{ // External inspector + manual destruction of page first -QWebPage* page = new QWebPage(); -page->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true); -QWebInspector* inspector = new QWebInspector(); -inspector->setPage(page); -page->updatePositionDependentActions(QPoint(0, 0)); -page->triggerAction(QWebPage::InspectElement); +// External inspector + manual destruction of page first +QWebPage* page = new QWebPage(); +page->settings()->setAttribute(QWebSettings::DeveloperExtrasEnabled, true); +QWebInspector* inspector = new QWebInspector(); +inspector->setPage(page); +page->upda
[webkit-changes] [134044] trunk/Source/WebCore
Title: [134044] trunk/Source/WebCore Revision 134044 Author allan.jen...@digia.com Date 2012-11-09 03:28:00 -0800 (Fri, 09 Nov 2012) Log Message Regression(r107593) Crash in ContextMenuController::addInspectElementItem() https://bugs.webkit.org/show_bug.cgi?id=101595 Reviewed by Simon Hausmann. If the contextMenu is a null pointer treat it as empty, appendItem will later create it if necessary. * page/ContextMenuController.cpp: (WebCore::ContextMenuController::addInspectElementItem): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/ContextMenuController.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134043 => 134044) --- trunk/Source/WebCore/ChangeLog 2012-11-09 11:25:24 UTC (rev 134043) +++ trunk/Source/WebCore/ChangeLog 2012-11-09 11:28:00 UTC (rev 134044) @@ -1,3 +1,16 @@ +2012-11-09 Allan Sandfeld Jensen + +Regression(r107593) Crash in ContextMenuController::addInspectElementItem() +https://bugs.webkit.org/show_bug.cgi?id=101595 + +Reviewed by Simon Hausmann. + +If the contextMenu is a null pointer treat it as empty, appendItem will later +create it if necessary. + +* page/ContextMenuController.cpp: +(WebCore::ContextMenuController::addInspectElementItem): + 2012-11-09 Christophe Dumez [EFL][WK2] Add support for custom cursors Modified: trunk/Source/WebCore/page/ContextMenuController.cpp (134043 => 134044) --- trunk/Source/WebCore/page/ContextMenuController.cpp 2012-11-09 11:25:24 UTC (rev 134043) +++ trunk/Source/WebCore/page/ContextMenuController.cpp 2012-11-09 11:28:00 UTC (rev 134044) @@ -1099,9 +1099,9 @@ ContextMenuItem InspectElementItem(ActionType, ContextMenuItemTagInspectElement, contextMenuItemTagInspectElement()); #if USE(CROSS_PLATFORM_CONTEXT_MENUS) -if (!m_contextMenu->items().isEmpty()) +if (m_contextMenu && !m_contextMenu->items().isEmpty()) #else -if (m_contextMenu->itemCount()) +if (m_contextMenu && m_contextMenu->itemCount()) #endif appendItem(*separatorItem(), m_contextMenu.get()); appendItem(InspectElementItem, m_contextMenu.get()); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134214] trunk
Title: [134214] trunk Revision 134214 Author allan.jen...@digia.com Date 2012-11-12 05:11:42 -0800 (Mon, 12 Nov 2012) Log Message [Qt] Can not load MHTML documents https://bugs.webkit.org/show_bug.cgi?id=101765 Reviewed by Simon Hausmann. Source/WebCore: Recognize common MHTML extensions so that we can recognize MHTML tests on the file-system. Tested by existing mhtml/ tests. * platform/qt/MIMETypeRegistryQt.cpp: (WebCore): Tools: Enable MHTML feature. * qmake/mkspecs/features/features.pri: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.pri Diff Modified: trunk/Source/WebCore/ChangeLog (134213 => 134214) --- trunk/Source/WebCore/ChangeLog 2012-11-12 12:45:00 UTC (rev 134213) +++ trunk/Source/WebCore/ChangeLog 2012-11-12 13:11:42 UTC (rev 134214) @@ -1,3 +1,17 @@ +2012-11-12 Allan Sandfeld Jensen + +[Qt] Can not load MHTML documents +https://bugs.webkit.org/show_bug.cgi?id=101765 + +Reviewed by Simon Hausmann. + +Recognize common MHTML extensions so that we can recognize MHTML tests on the file-system. + +Tested by existing mhtml/ tests. + +* platform/qt/MIMETypeRegistryQt.cpp: +(WebCore): + 2012-11-12 Andreas Kling Tighten vector in ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray(). Modified: trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp (134213 => 134214) --- trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-12 12:45:00 UTC (rev 134213) +++ trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-12 13:11:42 UTC (rev 134214) @@ -53,6 +53,8 @@ { "mp4", "video/mp4" }, { "m4v", "video/mp4" }, { "m4a", "audio/x-m4a" }, +{ "mht", "multipart/related" }, +{ "mhtml", "multipart/related" }, { "mp3", "audio/mp3" }, { "ogv", "video/ogg" }, { "oga", "audio/ogg" }, Modified: trunk/Tools/ChangeLog (134213 => 134214) --- trunk/Tools/ChangeLog 2012-11-12 12:45:00 UTC (rev 134213) +++ trunk/Tools/ChangeLog 2012-11-12 13:11:42 UTC (rev 134214) @@ -1,3 +1,14 @@ +2012-11-12 Allan Sandfeld Jensen + +[Qt] Can not load MHTML documents +https://bugs.webkit.org/show_bug.cgi?id=101765 + +Reviewed by Simon Hausmann. + +Enable MHTML feature. + +* qmake/mkspecs/features/features.pri: + 2012-11-12 Tommy Widenflycht MediaStream API: Schedule the RTCDataChannel events to be triggered at idle state Modified: trunk/Tools/qmake/mkspecs/features/features.pri (134213 => 134214) --- trunk/Tools/qmake/mkspecs/features/features.pri 2012-11-12 12:45:00 UTC (rev 134213) +++ trunk/Tools/qmake/mkspecs/features/features.pri 2012-11-12 13:11:42 UTC (rev 134214) @@ -77,7 +77,7 @@ ENABLE_MEDIA_STATISTICS=0 \ ENABLE_MEDIA_STREAM=0 \ ENABLE_METER_ELEMENT=1 \ -ENABLE_MHTML=0 \ +ENABLE_MHTML=1 \ ENABLE_MICRODATA=0 \ ENABLE_MUTATION_OBSERVERS=0 \ ENABLE_NAVIGATOR_CONTENT_UTILS=0 \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134243] trunk
Title: [134243] trunk Revision 134243 Author allan.jen...@digia.com Date 2012-11-12 08:13:01 -0800 (Mon, 12 Nov 2012) Log Message [Qt] Support ResourceRequest's setTimeoutInterval https://bugs.webkit.org/show_bug.cgi?id=101731 Reviewed by Simon Hausmann. Source/WebCore: Establish a timeout and return the correct error when it is triggered. Tested by existing http/tests/xmlhttprequest/timeout tests. * platform/network/ResourceRequestBase.cpp: * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::release): (WebCore::QNetworkReplyHandler::finish): (WebCore::QNetworkReplyHandler::timeout): (WebCore::QNetworkReplyHandler::timerEvent): (WebCore::QNetworkReplyHandler::start): * platform/network/qt/QNetworkReplyHandler.h: (QNetworkReplyHandler): Tools: Enable XHR_TIMEOUT now that we support the necessary feature. * qmake/mkspecs/features/features.pri: LayoutTests: Unskip now passing XHR timeout tests. * platform/qt/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/ResourceRequestBase.cpp trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.h trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.pri Diff Modified: trunk/LayoutTests/ChangeLog (134242 => 134243) --- trunk/LayoutTests/ChangeLog 2012-11-12 16:06:49 UTC (rev 134242) +++ trunk/LayoutTests/ChangeLog 2012-11-12 16:13:01 UTC (rev 134243) @@ -1,3 +1,14 @@ +2012-11-12 Allan Sandfeld Jensen + +[Qt] Support ResourceRequest's setTimeoutInterval +https://bugs.webkit.org/show_bug.cgi?id=101731 + +Reviewed by Simon Hausmann. + +Unskip now passing XHR timeout tests. + +* platform/qt/TestExpectations: + 2012-11-12 Vsevolod Vlasov Layout Test inspector/debugger/dynamic-scripts.html is flaky Modified: trunk/LayoutTests/platform/qt/TestExpectations (134242 => 134243) --- trunk/LayoutTests/platform/qt/TestExpectations 2012-11-12 16:06:49 UTC (rev 134242) +++ trunk/LayoutTests/platform/qt/TestExpectations 2012-11-12 16:13:01 UTC (rev 134243) @@ -675,19 +675,6 @@ # https://bugs.webkit.org/show_bug.cgi?id=86606 http/tests/xmlhttprequest/xmlhttprequest-check-get-readystate-for-404-without-body.html -# ResourceRequest needs to support setTimeoutInterval -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-aborted.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-abortedonmain.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-overridesexpires.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-simple.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-synconmain.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-twice.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-worker-aborted.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-worker-overridesexpires.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-worker-simple.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-worker-synconworker.html -webkit.org/b/98397 http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-worker-twice.html - # === # # Failing editing/inserting tests. # # === # Modified: trunk/Source/WebCore/ChangeLog (134242 => 134243) --- trunk/Source/WebCore/ChangeLog 2012-11-12 16:06:49 UTC (rev 134242) +++ trunk/Source/WebCore/ChangeLog 2012-11-12 16:13:01 UTC (rev 134243) @@ -1,3 +1,24 @@ +2012-11-12 Allan Sandfeld Jensen + +[Qt] Support ResourceRequest's setTimeoutInterval +https://bugs.webkit.org/show_bug.cgi?id=101731 + +Reviewed by Simon Hausmann. + +Establish a timeout and return the correct error when it is triggered. + +Tested by existing http/tests/xmlhttprequest/timeout tests. + +* platform/network/ResourceRequestBase.cpp: +* platform/network/qt/QNetworkReplyHandler.cpp: +(WebCore::QNetworkReplyHandler::release): +(WebCore::QNetworkReplyHandler::finish): +(WebCore::QNetworkReplyHandler::timeout): +(WebCore::QNetworkReplyHandler::timerEvent): +(WebCore::QNetworkReplyHandler::start): +* platform/network/qt/QNetworkReplyHandler.h: +(QNetworkReplyHandler): + 2012-11-12 Sheriff Bot Unreviewed, rolling out r134224. Modified: trunk/Source/WebCore/platform/network/ResourceRequestBase.cpp (134242 => 134243) --- trunk/Source/WebCore/platform/network/ResourceReques
[webkit-changes] [134253] trunk/Source/WebCore
Title: [134253] trunk/Source/WebCore Revision 134253 Author allan.jen...@digia.com Date 2012-11-12 10:13:09 -0800 (Mon, 12 Nov 2012) Log Message hitTestResultAtPoint does two hit-tests if called on non main frame https://bugs.webkit.org/show_bug.cgi?id=101915 Reviewed by Antonio Gomes. Always redirect hitTestResultAtPoint to the main-frame. This used to being done on every result that hit anything, which caused running the expensive hit-tests multiple times in almost all cases. * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/EventHandler.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134252 => 134253) --- trunk/Source/WebCore/ChangeLog 2012-11-12 18:06:32 UTC (rev 134252) +++ trunk/Source/WebCore/ChangeLog 2012-11-12 18:13:09 UTC (rev 134253) @@ -1,3 +1,17 @@ +2012-11-12 Allan Sandfeld Jensen + +hitTestResultAtPoint does two hit-tests if called on non main frame +https://bugs.webkit.org/show_bug.cgi?id=101915 + +Reviewed by Antonio Gomes. + +Always redirect hitTestResultAtPoint to the main-frame. This used to being +done on every result that hit anything, which caused running the expensive +hit-tests multiple times in almost all cases. + +* page/EventHandler.cpp: +(WebCore::EventHandler::hitTestResultAtPoint): + 2012-11-12 Kentaro Hara [V8][JSC] ScriptProfileNode::callUID needs not to be [Custom] Modified: trunk/Source/WebCore/page/EventHandler.cpp (134252 => 134253) --- trunk/Source/WebCore/page/EventHandler.cpp 2012-11-12 18:06:32 UTC (rev 134252) +++ trunk/Source/WebCore/page/EventHandler.cpp 2012-11-12 18:13:09 UTC (rev 134253) @@ -1114,9 +1114,23 @@ return page->dragController()->delegateDragSourceAction(view->contentsToRootView(m_mouseDownPos)); } #endif // ENABLE(DRAG_SUPPORT) - + HitTestResult EventHandler::hitTestResultAtPoint(const LayoutPoint& point, bool allowShadowContent, bool ignoreClipping, HitTestScrollbars testScrollbars, HitTestRequest::HitTestRequestType hitType, const LayoutSize& padding) { +// We always send hitTestResultAtPoint to the main frame if we have one, +// otherwise we might hit areas that are obscured by higher frames. +if (Page* page = m_frame->page()) { +Frame* mainFrame = page->mainFrame(); +if (m_frame != mainFrame) { +FrameView* frameView = m_frame->view(); +FrameView* mainView = mainFrame->view(); +if (frameView && mainView) { +IntPoint mainFramePoint = mainView->rootViewToContents(frameView->contentsToRootView(roundedIntPoint(point))); +return mainFrame->eventHandler()->hitTestResultAtPoint(mainFramePoint, allowShadowContent, ignoreClipping, testScrollbars, hitType, padding); +} +} +} + HitTestResult result(point, padding.height(), padding.width(), padding.height(), padding.width()); if (!m_frame->contentRenderer()) @@ -1151,21 +1165,6 @@ result.setScrollbar(eventScrollbar); } } - -// If our HitTestResult is not visible, then we started hit testing too far down the frame chain. -// Another hit test at the main frame level should get us the correct visible result. -Frame* resultFrame = result.innerNonSharedNode() ? result.innerNonSharedNode()->document()->frame() : 0; -if (Page* page = m_frame->page()) { -Frame* mainFrame = page->mainFrame(); -if (m_frame != mainFrame && resultFrame && resultFrame != mainFrame) { -FrameView* resultView = resultFrame->view(); -FrameView* mainView = mainFrame->view(); -if (resultView && mainView) { -IntPoint mainFramePoint = mainView->rootViewToContents(resultView->contentsToRootView(roundedIntPoint(result.point(; -result = mainFrame->eventHandler()->hitTestResultAtPoint(mainFramePoint, allowShadowContent, ignoreClipping, testScrollbars, hitType, padding); -} -} -} if (!allowShadowContent) result.setToNonShadowAncestor(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [134262] trunk/Source/WebCore
Title: [134262] trunk/Source/WebCore Revision 134262 Author allan.jen...@digia.com Date 2012-11-12 11:13:08 -0800 (Mon, 12 Nov 2012) Log Message Move resolving blob references to FormData. https://bugs.webkit.org/show_bug.cgi?id=101754 Reviewed by Simon Hausmann. Resolving Blob-references to a set of just File and Data is done similar by several platforms. This patch adds a generic implementation in FormData and uses that from CFNetwork, Qt and BlackBerry network implementation. * platform/network/FormData.cpp: (WebCore::appendBlobResolved): (WebCore::FormData::resolveBlobReferences): * platform/network/FormData.h: * platform/network/blackberry/ResourceRequestBlackBerry.cpp: (WebCore::ResourceRequest::initializePlatformRequest): * platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::setHTTPBody): * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::FormDataIODevice::prepareFormElements): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/FormData.cpp trunk/Source/WebCore/platform/network/FormData.h trunk/Source/WebCore/platform/network/blackberry/ResourceRequestBlackBerry.cpp trunk/Source/WebCore/platform/network/cf/FormDataStreamCFNet.cpp trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (134261 => 134262) --- trunk/Source/WebCore/ChangeLog 2012-11-12 19:12:12 UTC (rev 134261) +++ trunk/Source/WebCore/ChangeLog 2012-11-12 19:13:08 UTC (rev 134262) @@ -1,3 +1,25 @@ +2012-11-12 Allan Sandfeld Jensen + +Move resolving blob references to FormData. +https://bugs.webkit.org/show_bug.cgi?id=101754 + +Reviewed by Simon Hausmann. + +Resolving Blob-references to a set of just File and Data is done similar by several platforms. +This patch adds a generic implementation in FormData and uses that from CFNetwork, Qt and +BlackBerry network implementation. + +* platform/network/FormData.cpp: +(WebCore::appendBlobResolved): +(WebCore::FormData::resolveBlobReferences): +* platform/network/FormData.h: +* platform/network/blackberry/ResourceRequestBlackBerry.cpp: +(WebCore::ResourceRequest::initializePlatformRequest): +* platform/network/cf/FormDataStreamCFNet.cpp: +(WebCore::setHTTPBody): +* platform/network/qt/QNetworkReplyHandler.cpp: +(WebCore::FormDataIODevice::prepareFormElements): + 2012-11-12 Zeno Albisser GraphicsSurfaceGLX does not handle transparency correctly. Modified: trunk/Source/WebCore/platform/network/FormData.cpp (134261 => 134262) --- trunk/Source/WebCore/platform/network/FormData.cpp 2012-11-12 19:12:12 UTC (rev 134261) +++ trunk/Source/WebCore/platform/network/FormData.cpp 2012-11-12 19:13:08 UTC (rev 134262) @@ -1,6 +1,7 @@ /* * Copyright (C) 2004, 2006, 2008, 2011 Apple Inc. All rights reserved. * Copyright (C) 2009 Google Inc. All rights reserved. + * Copyright (C) 2012 Digia Plc. and/or its subsidiary(-ies) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public @@ -23,6 +24,7 @@ #include "FormData.h" #include "BlobData.h" +#include "BlobRegistryImpl.h" #include "BlobURL.h" #include "Chrome.h" #include "ChromeClient.h" @@ -317,6 +319,64 @@ return Latin1Encoding().decode(reinterpret_cast(bytes.data()), bytes.size()); } +#if ENABLE(BLOB) +static void appendBlobResolved(FormData* formData, const KURL& url) +{ +RefPtr blobData = static_cast(blobRegistry()).getBlobDataFromURL(KURL(ParsedURLString, url)); +if (!blobData) +return; + +BlobDataItemList::const_iterator it = blobData->items().begin(); +const BlobDataItemList::const_iterator itend = blobData->items().end(); +for (; it != itend; ++it) { +const BlobDataItem& blobItem = *it; +if (blobItem.type == BlobDataItem::Data) +formData->appendData(blobItem.data->data() + static_cast(blobItem.offset), static_cast(blobItem.length)); +else if (blobItem.type == BlobDataItem::File) +formData->appendFileRange(blobItem.path, blobItem.offset, blobItem.length, blobItem.expectedModificationTime); +else if (blobItem.type == BlobDataItem::Blob) +appendBlobResolved(formData, blobItem.url); +else +ASSERT_NOT_REACHED(); +} +} + +PassRefPtr FormData::resolveBlobReferences() +{ +// First check if any blobs needs to be resolved, or we can take the fast path. +bool hasBlob = false; +Vector::const_iterator it = elements().begin(); +const Vector::const_iterator itend = elements().end(); +for (; it != itend; ++it) { +if (it->m_type == FormDataElement::encodedBlob) { +hasBlob = true; +break; +} +} + +if (!hasBlob) +return this; + +// Create a copy to append the result into. +RefPtr newFormData = FormData::create();
[webkit-changes] [135272] trunk/Source/WebKit2
Title: [135272] trunk/Source/WebKit2 Revision 135272 Author allan.jen...@digia.com Date 2012-11-20 05:17:48 -0800 (Tue, 20 Nov 2012) Log Message [Qt] Zoom logic confused by page and pinch resize https://bugs.webkit.org/show_bug.cgi?id=102803 Reviewed by Kenneth Rohde Christiansen. Clear the zoom-out stack after page resize, and ensure the zoom logic can still detect zoom-out and zoom-back when the zoom-out stack is empty. * UIProcess/qt/PageViewportControllerClientQt.cpp: (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded): (WebKit::PageViewportControllerClientQt::clearRelativeZoomState): (WebKit::PageViewportControllerClientQt::setContentsScale): (WebKit::PageViewportControllerClientQt::pinchGestureStarted): (WebKit::PageViewportControllerClientQt::didChangeViewportAttributes): * UIProcess/qt/PageViewportControllerClientQt.h: (PageViewportControllerClientQt): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.h Diff Modified: trunk/Source/WebKit2/ChangeLog (135271 => 135272) --- trunk/Source/WebKit2/ChangeLog 2012-11-20 11:36:58 UTC (rev 135271) +++ trunk/Source/WebKit2/ChangeLog 2012-11-20 13:17:48 UTC (rev 135272) @@ -1,3 +1,22 @@ +2012-11-20 Allan Sandfeld Jensen + +[Qt] Zoom logic confused by page and pinch resize +https://bugs.webkit.org/show_bug.cgi?id=102803 + +Reviewed by Kenneth Rohde Christiansen. + +Clear the zoom-out stack after page resize, and ensure the zoom logic can still detect +zoom-out and zoom-back when the zoom-out stack is empty. + +* UIProcess/qt/PageViewportControllerClientQt.cpp: +(WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded): +(WebKit::PageViewportControllerClientQt::clearRelativeZoomState): +(WebKit::PageViewportControllerClientQt::setContentsScale): +(WebKit::PageViewportControllerClientQt::pinchGestureStarted): +(WebKit::PageViewportControllerClientQt::didChangeViewportAttributes): +* UIProcess/qt/PageViewportControllerClientQt.h: +(PageViewportControllerClientQt): + 2012-11-19 KyungTae Kim [WK2] Unused parameters on CoordinatedGraphicsLayer.cpp Modified: trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp (135271 => 135272) --- trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp 2012-11-20 11:36:58 UTC (rev 135271) +++ trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp 2012-11-20 13:17:48 UTC (rev 135272) @@ -243,25 +243,23 @@ enum { ZoomIn, ZoomBack, ZoomOut, NoZoom } zoomAction = ZoomIn; -if (!m_scaleStack.isEmpty()) { -// Zoom back out if attempting to scale to the same current scale, or -// attempting to continue scaling out from the inner most level. -// Use fuzzy compare with a fixed error to be able to deal with largish differences due to pixel rounding. -if (fuzzyCompare(targetScale, currentScale, 0.01)) { -// If moving the viewport would expose more of the targetRect and move at least 40 pixels, update position but do not scale out. -QRectF currentContentRect(m_viewportItem->mapRectToWebContent(viewportRect)); -QRectF targetIntersection = endVisibleContentRect.intersected(targetArea); -if (!currentContentRect.contains(targetIntersection) -&& (qAbs(endVisibleContentRect.top() - currentContentRect.top()) >= 40 -|| qAbs(endVisibleContentRect.left() - currentContentRect.left()) >= 40)) -zoomAction = NoZoom; -else -zoomAction = ZoomBack; -} else if (fuzzyCompare(targetScale, m_zoomOutScale, 0.01)) +// Zoom back out if attempting to scale to the same current scale, or +// attempting to continue scaling out from the inner most level. +// Use fuzzy compare with a fixed error to be able to deal with largish differences due to pixel rounding. +if (!m_scaleStack.isEmpty() && fuzzyCompare(targetScale, currentScale, 0.01)) { +// If moving the viewport would expose more of the targetRect and move at least 40 pixels, update position but do not scale out. +QRectF currentContentRect(m_viewportItem->mapRectToWebContent(viewportRect)); +QRectF targetIntersection = endVisibleContentRect.intersected(targetArea); +if (!currentContentRect.contains(targetIntersection) +&& (qAbs(endVisibleContentRect.top() - currentContentRect.top()) >= 40 +|| qAbs(endVisibleContentRect.left() - currentContentRect.left()) >= 40)) +zoomAction = NoZoom; +else zoomAction = ZoomBack; -else if (targetScale < currentScale) -zoomAction = ZoomOut; -} +} else if (fuzzyCompare(targetScale, m_zoomOutScale, 0.01)) +zoomAction = ZoomBack; +else
[webkit-changes] [135280] trunk/Source/WebKit2
Title: [135280] trunk/Source/WebKit2 Revision 135280 Author allan.jen...@digia.com Date 2012-11-20 08:02:23 -0800 (Tue, 20 Nov 2012) Log Message [Qt] Large areas highlighted on touch https://bugs.webkit.org/show_bug.cgi?id=97216 Reviewed by Simon Hausmann. Restrict highlighting of scripted event-handlers to inline elements only. * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::highlightPotentialActivation): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (135279 => 135280) --- trunk/Source/WebKit2/ChangeLog 2012-11-20 16:02:19 UTC (rev 135279) +++ trunk/Source/WebKit2/ChangeLog 2012-11-20 16:02:23 UTC (rev 135280) @@ -1,5 +1,17 @@ 2012-11-20 Allan Sandfeld Jensen +[Qt] Large areas highlighted on touch +https://bugs.webkit.org/show_bug.cgi?id=97216 + +Reviewed by Simon Hausmann. + +Restrict highlighting of scripted event-handlers to inline elements only. + +* WebProcess/WebPage/WebPage.cpp: +(WebKit::WebPage::highlightPotentialActivation): + +2012-11-20 Allan Sandfeld Jensen + [Qt] Zoom logic confused by page and pinch resize https://bugs.webkit.org/show_bug.cgi?id=102803 Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (135279 => 135280) --- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2012-11-20 16:02:19 UTC (rev 135279) +++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp 2012-11-20 16:02:23 UTC (rev 135280) @@ -1698,17 +1698,21 @@ #endif // Find the node to highlight. This is not the same as the node responding the tap gesture, because many // pages has a global click handler and we do not want to highlight the body. -// Instead find the enclosing link or focusable element, or the last enclosing inline element. for (Node* node = adjustedNode; node; node = node->parentOrHostNode()) { if (node->isDocumentNode() || node->isFrameOwnerElement()) break; -if (node->isMouseFocusable() || node->willRespondToMouseClickEvents()) { + +// We always highlight focusable (form-elements), image links or content-editable elements. +if (node->isMouseFocusable() || node->isLink() || node->isContentEditable()) activationNode = node; -break; +else if (node->willRespondToMouseClickEvents()) { +// Highlight elements with default mouse-click handlers, but highlight only inline elements with +// scripted event-handlers. +if (!node->Node::willRespondToMouseClickEvents() || (node->renderer() && node->renderer()->isInline())) +activationNode = node; } -if (node->renderer() && node->renderer()->isInline()) -activationNode = node; -else if (activationNode) + +if (activationNode) break; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135282] trunk/Source/WebKit2
Title: [135282] trunk/Source/WebKit2 Revision 135282 Author allan.jen...@digia.com Date 2012-11-20 08:10:18 -0800 (Tue, 20 Nov 2012) Log Message [Qt] No test of double-click to zoom out https://bugs.webkit.org/show_bug.cgi?id=102810 Reviewed by Kenneth Rohde Christiansen. Adds tests of zoom-stack behaviour, the ability to restore previous zoom levels. It tests that zoom out always goes to lower zoom levels. * UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml: Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml Diff Modified: trunk/Source/WebKit2/ChangeLog (135281 => 135282) --- trunk/Source/WebKit2/ChangeLog 2012-11-20 16:08:53 UTC (rev 135281) +++ trunk/Source/WebKit2/ChangeLog 2012-11-20 16:10:18 UTC (rev 135282) @@ -1,5 +1,17 @@ 2012-11-20 Allan Sandfeld Jensen +[Qt] No test of double-click to zoom out +https://bugs.webkit.org/show_bug.cgi?id=102810 + +Reviewed by Kenneth Rohde Christiansen. + +Adds tests of zoom-stack behaviour, the ability to restore previous zoom levels. It tests +that zoom out always goes to lower zoom levels. + +* UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml: + +2012-11-20 Allan Sandfeld Jensen + [Qt] Large areas highlighted on touch https://bugs.webkit.org/show_bug.cgi?id=97216 Modified: trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml (135281 => 135282) --- trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml 2012-11-20 16:08:53 UTC (rev 135281) +++ trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml 2012-11-20 16:10:18 UTC (rev 135282) @@ -8,8 +8,8 @@ Item { TestWebView { id: webView -width: 480 -height: 720 +width: 320 +height: 240 property variant result @@ -19,8 +19,11 @@ "" + "" + "-" style='position:absolute; left:20; top:20; width:200; height:200;'>" + +" style='position:absolute; left:20; top:20; width:220; height:80;'>" + "" + +"" + +"" + "" signal resultReceived @@ -49,7 +52,7 @@ scaleSpy.clear() } -function documentSize() { +function windowSize() { resultSpy.clear(); var result; @@ -77,19 +80,139 @@ scaleSpy.wait() } -function test_basic() { +function test_basic_zoomInAndBack() { webView.url = "" verify(webView.waitForViewportReady()) -compare(documentSize(), "480x720") +compare(windowSize(), "320x240") compare(test.contentsScale, 1.0) var rect = elementRect("target"); var newScale = webView.width / (rect.width + 2 * 10) // inflated by 10px -doubleTapAtPoint(rect.left + rect.height / 2, rect.top + rect.width / 2) +doubleTapAtPoint(100, 50) compare(test.contentsScale, newScale) + +doubleTapAtPoint(100, 50) + +compare(test.contentsScale, 1.0) } + +function test_double_zoomInAndBack() { +webView.url = "" +verify(webView.waitForViewportReady()) + +compare(windowSize(), "320x240") +compare(test.contentsScale, 1.0) + +var target = elementRect("target"); +var smalltarget = elementRect("smalltarget"); +var targetScale = webView.width / (target.width + 2 * 10) // inflated by 10px +var smallTargetScale = webView.width / (smalltarget.width + 2 * 10) // inflated by 10px + +doubleTapAtPoint(100, 50) + +compare(test.contentsScale, targetScale) + +doubleTapAtPoint(100, 160) + +compare(test.contentsScale, smallTargetScale) + +// Zoom out by double clicking first the small target and then the large target. +doubleTapAtPoint(100, 120) + +compare(test.contentsScale, targetScale) + +doubleTapAtPoint(100, 50) + +compare(test.contentsScale, 1.0) +} + +function test_double_zoomInAndBack2() { +webView.url = "" +verify(webView.waitForViewportReady()) + +compare(windowSize(), "320x240") +compare(test.contentsScale, 1.0) + +var target = elementRect("target"); +var smalltarget = elementRect("smalltarget"); +var targetScale = webView.width / (target.width + 2 * 10) // inflated by 10px +var smallTargetScale = webView.width / (smalltarget.width + 2 * 10) // inflated by 10px + +doubleTapAtPoint(100, 50) + +compare(test.contentsScale, targetScale) + +doubleTa
[webkit-changes] [135283] trunk/Source/WebKit2
Title: [135283] trunk/Source/WebKit2 Revision 135283 Author allan.jen...@digia.com Date 2012-11-20 08:20:52 -0800 (Tue, 20 Nov 2012) Log Message [Qt] PageViewportControllerClient::didChangeViewportAttributes called twice https://bugs.webkit.org/show_bug.cgi?id=102790 Reviewed by Kenneth Rohde Christiansen. Change updateMinimumScaleToFit to no longer call PageViewportControllerClient::didChangeViewportAttributes, but instead return whether it has changed the minimumScaleToFit. * UIProcess/PageViewportController.cpp: (WebKit::PageViewportController::didChangeContentsSize): (WebKit::PageViewportController::updateMinimumScaleToFit): * UIProcess/PageViewportController.h: (PageViewportController): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/PageViewportController.cpp trunk/Source/WebKit2/UIProcess/PageViewportController.h Diff Modified: trunk/Source/WebKit2/ChangeLog (135282 => 135283) --- trunk/Source/WebKit2/ChangeLog 2012-11-20 16:10:18 UTC (rev 135282) +++ trunk/Source/WebKit2/ChangeLog 2012-11-20 16:20:52 UTC (rev 135283) @@ -1,5 +1,21 @@ 2012-11-20 Allan Sandfeld Jensen +[Qt] PageViewportControllerClient::didChangeViewportAttributes called twice +https://bugs.webkit.org/show_bug.cgi?id=102790 + +Reviewed by Kenneth Rohde Christiansen. + +Change updateMinimumScaleToFit to no longer call PageViewportControllerClient::didChangeViewportAttributes, +but instead return whether it has changed the minimumScaleToFit. + +* UIProcess/PageViewportController.cpp: +(WebKit::PageViewportController::didChangeContentsSize): +(WebKit::PageViewportController::updateMinimumScaleToFit): +* UIProcess/PageViewportController.h: +(PageViewportController): + +2012-11-20 Allan Sandfeld Jensen + [Qt] No test of double-click to zoom out https://bugs.webkit.org/show_bug.cgi?id=102810 Modified: trunk/Source/WebKit2/UIProcess/PageViewportController.cpp (135282 => 135283) --- trunk/Source/WebKit2/UIProcess/PageViewportController.cpp 2012-11-20 16:10:18 UTC (rev 135282) +++ trunk/Source/WebKit2/UIProcess/PageViewportController.cpp 2012-11-20 16:20:52 UTC (rev 135283) @@ -105,7 +105,8 @@ void PageViewportController::didChangeContentsSize(const IntSize& newSize) { m_contentsSize = newSize; -updateMinimumScaleToFit(); +if (updateMinimumScaleToFit()) +m_client->didChangeViewportAttributes(); } void PageViewportController::didRenderFrame(const IntSize& contentsSize, const IntRect& coveredRect) @@ -259,10 +260,10 @@ syncVisibleContents(); } -void PageViewportController::updateMinimumScaleToFit() +bool PageViewportController::updateMinimumScaleToFit() { if (m_viewportSize.isEmpty()) -return; +return false; float minimumScale = WebCore::computeMinimumScaleFactorForContentContained(m_rawAttributes, WebCore::roundedIntSize(m_viewportSize), WebCore::roundedIntSize(m_contentsSize), devicePixelRatio()); @@ -272,8 +273,9 @@ if (!m_hadUserInteraction && !hasSuspendedContent()) applyScaleAfterRenderingContents(toViewportScale(minimumScale)); -m_client->didChangeViewportAttributes(); +return true; } +return false; } } // namespace WebKit Modified: trunk/Source/WebKit2/UIProcess/PageViewportController.h (135282 => 135283) --- trunk/Source/WebKit2/UIProcess/PageViewportController.h 2012-11-20 16:10:18 UTC (rev 135282) +++ trunk/Source/WebKit2/UIProcess/PageViewportController.h 2012-11-20 16:20:52 UTC (rev 135283) @@ -84,7 +84,7 @@ void syncVisibleContents(const WebCore::FloatPoint &trajectoryVector = WebCore::FloatPoint::zero()); void applyScaleAfterRenderingContents(float scale); void applyPositionAfterRenderingContents(const WebCore::FloatPoint& pos); -void updateMinimumScaleToFit(); +bool updateMinimumScaleToFit(); WebCore::FloatSize viewportSizeInContentsCoordinates() const; WebPageProxy* const m_webPageProxy; ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135405] trunk/Source
Title: [135405] trunk/Source Revision 135405 Author allan.jen...@digia.com Date 2012-11-21 07:45:42 -0800 (Wed, 21 Nov 2012) Log Message Source/WebCore: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. Splits the point() method in HitTestResult into two, innerNodeFramePoint and mainFramePoint(). To do this HitTestResult no longer inherits publically from HitTestLocation, which should also help to later separate the two classes completely. Many of the call-sites of hitTestResultAtPoint confuses which coordinates the point is in. These have not have been fixed in this patch, and they should be audited by the individual ports. * WebCore.exp.in: * dom/Document.cpp: (WebCore::Document::nodesFromRect): * page/EventHandler.cpp: (WebCore::EventHandler::eventMayStartDrag): (WebCore::EventHandler::hitTestResultAtPoint): Set and maintain pointInMainFrame on the HitTestResult. * rendering/HitTestResult.cpp: (WebCore::HitTestResult::HitTestResult): Construct pointInMainFrame as a copy of pointInInnerNodeFrame. This is correct for all hit-tests outside of the recursion in EventHandler::hitTestResultAtPoint. (WebCore::HitTestResult::operator=): (WebCore::HitTestResult::innerNodeFrame): (WebCore::HitTestResult::append): * rendering/HitTestResult.h: (WebCore::HitTestLocation::point): (HitTestResult): Inherits protected now from HitTestLocation to avoid exposing the ambiguous point() and roundedPoint() methods. HitTestResult will be split completely from HitTestLocation in a later patch. (WebCore::HitTestResult::isRectBasedTest): (WebCore::HitTestResult::pointInMainFrame): (WebCore::HitTestResult::roundedPointInMainFrame): (WebCore::HitTestResult::setPointInMainFrame): (WebCore::HitTestResult::pointInInnerNodeFrame): (WebCore::HitTestResult::roundedPointInInnerNodeFrame): (WebCore::HitTestResult::localPoint): (WebCore::HitTestResult::setLocalPoint): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::hitTest): Source/WebKit/chromium: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. * src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::mouseDidMoveOverElement): * src/ContextMenuClientImpl.cpp: (WebKit::selectMisspelledWord): (WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): * src/WebFrameImpl.cpp: (WebKit::WebFrameImpl::characterIndexForPoint): Source/WebKit/efl: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. * ewk/ewk_frame.cpp: (ewk_frame_hit_test_new): Source/WebKit/gtk: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. Switched to using point in innerNodeFrame. While the use here seems wrong it has been left functionally unchanged to be fixed by a later patch. * webkit/webkithittestresult.cpp: (WebKit::kit): Source/WebKit/mac: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. Switch to using HitTestResult::innerNodeFrame and HitTestResult::innerNodeFramePoint. * WebCoreSupport/WebContextMenuClient.mm: (WebContextMenuClient::showContextMenu): Source/WebKit/qt: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. * Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): * Api/qwebpage.cpp: (QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch): Source/WebKit/win: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. * WebView.cpp: (WebView::handleContextMenuEvent): Source/WebKit2: Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 Reviewed by Julien Chaffraix. Switch to using HitTestResult::innerNodeFrame and HitTestResult::innerNodeFramePoint. * WebProcess/WebPage/WebContextMenu.cpp: (WebKit::WebContextMenu::show): * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::characterIndexForPoint): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.exp.in trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/page/EventHandler.cpp trunk/Source/WebCore/rendering/HitTestResult.cpp trunk/Source/WebCore/rendering/HitTestResult.h trunk/Source/WebCore/rendering/RenderLayer.cpp trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp trunk/Source/WebKit/chromium/src/ContextMenuClientImpl.cpp trunk/Source/WebKit/chromium/src/WebFrameImpl.cpp trunk/Source/WebKit/efl/ChangeLog trunk/Source/WebKit/efl/ewk/ewk_frame.cpp trunk/Source/WebKit/gtk/ChangeLog trunk/Source/WebKit/gtk/webkit/webkithittestresult.cpp trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/WebCoreSupport/WebContextMenu
[webkit-changes] [135449] trunk/Source/WebKit/qt
Title: [135449] trunk/Source/WebKit/qt Revision 135449 Author allan.jen...@digia.com Date 2012-11-21 16:03:08 -0800 (Wed, 21 Nov 2012) Log Message Position in QWebHitTestResult does not match documentation https://bugs.webkit.org/show_bug.cgi?id=102909 Reviewed by Simon Hausmann. Correct documentation and simplify using the new innerNodeFrame method. * Api/qwebframe.cpp: (QWebHitTestResultPrivate::QWebHitTestResultPrivate): Modified Paths trunk/Source/WebKit/qt/Api/qwebframe.cpp trunk/Source/WebKit/qt/ChangeLog Diff Modified: trunk/Source/WebKit/qt/Api/qwebframe.cpp (135448 => 135449) --- trunk/Source/WebKit/qt/Api/qwebframe.cpp 2012-11-22 00:02:50 UTC (rev 135448) +++ trunk/Source/WebKit/qt/Api/qwebframe.cpp 2012-11-22 00:03:08 UTC (rev 135449) @@ -1598,7 +1598,6 @@ { if (!hitTest.innerNode()) return; -// FIXME: This should probably use roundedPointInMainFrame if it is to match the documentation of QWebHitTestResult. pos = hitTest.roundedPointInInnerNodeFrame(); WebCore::TextDirection dir; title = hitTest.title(dir); @@ -1625,9 +1624,9 @@ isContentSelected = hitTest.isSelected(); isScrollBar = hitTest.scrollbar(); -if (innerNonSharedNode && innerNonSharedNode->document() -&& innerNonSharedNode->document()->frame()) -frame = QWebFramePrivate::kit(innerNonSharedNode->document()->frame()); +WebCore::Frame *innerNodeFrame = hitTest.innerNodeFrame(); +if (innerNodeFrame) +frame = QWebFramePrivate::kit(innerNodeFrame); enclosingBlock = QWebElement(WebCore::enclosingBlock(innerNode.get())); } @@ -1685,7 +1684,9 @@ } /*! -Returns the position where the hit test occured. +Returns the position where the hit test occured in the coordinates of frame containing the element hit. + +\sa frame() */ QPoint QWebHitTestResult::pos() const { @@ -1849,7 +1850,7 @@ } /*! -Returns the frame the hit test was executed in. +Returns the frame of the element hit. */ QWebFrame *QWebHitTestResult::frame() const { Modified: trunk/Source/WebKit/qt/ChangeLog (135448 => 135449) --- trunk/Source/WebKit/qt/ChangeLog 2012-11-22 00:02:50 UTC (rev 135448) +++ trunk/Source/WebKit/qt/ChangeLog 2012-11-22 00:03:08 UTC (rev 135449) @@ -1,5 +1,17 @@ 2012-11-21 Allan Sandfeld Jensen +Position in QWebHitTestResult does not match documentation +https://bugs.webkit.org/show_bug.cgi?id=102909 + +Reviewed by Simon Hausmann. + +Correct documentation and simplify using the new innerNodeFrame method. + +* Api/qwebframe.cpp: +(QWebHitTestResultPrivate::QWebHitTestResultPrivate): + +2012-11-21 Allan Sandfeld Jensen + Disambiguate innerNodeFramePoint and mainFramePoint https://bugs.webkit.org/show_bug.cgi?id=98139 ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135507] trunk/Source/WebCore
Title: [135507] trunk/Source/WebCore Revision 135507 Author allan.jen...@digia.com Date 2012-11-22 05:23:28 -0800 (Thu, 22 Nov 2012) Log Message [Qt] Lookup mimetypes using QMimeDatabase https://bugs.webkit.org/show_bug.cgi?id=102667 Reviewed by Simon Hausmann. The Qt backend of MIMETypeRegistry now looks up using QMimeDatabase. * loader/archive/ArchiveFactory.cpp: (WebCore::archiveMIMETypes): Also map the preferred freedesktop mimetype for MIME archives to MIME archive constructor. * platform/MIMETypeRegistry.cpp: (WebCore::MIMETypeRegistry::getNormalizedMIMEType): * platform/qt/MIMETypeRegistryQt.cpp: (WebCore::MIMETypeRegistry::getMIMETypeForExtension): (WebCore::MIMETypeRegistry::getMIMETypeForPath): (WebCore::MIMETypeRegistry::getNormalizedMIMEType): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/loader/archive/ArchiveFactory.cpp trunk/Source/WebCore/platform/MIMETypeRegistry.cpp trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (135506 => 135507) --- trunk/Source/WebCore/ChangeLog 2012-11-22 13:16:48 UTC (rev 135506) +++ trunk/Source/WebCore/ChangeLog 2012-11-22 13:23:28 UTC (rev 135507) @@ -1,3 +1,22 @@ +2012-11-22 Allan Sandfeld Jensen + +[Qt] Lookup mimetypes using QMimeDatabase +https://bugs.webkit.org/show_bug.cgi?id=102667 + +Reviewed by Simon Hausmann. + +The Qt backend of MIMETypeRegistry now looks up using QMimeDatabase. + +* loader/archive/ArchiveFactory.cpp: +(WebCore::archiveMIMETypes): +Also map the preferred freedesktop mimetype for MIME archives to MIME archive constructor. +* platform/MIMETypeRegistry.cpp: +(WebCore::MIMETypeRegistry::getNormalizedMIMEType): +* platform/qt/MIMETypeRegistryQt.cpp: +(WebCore::MIMETypeRegistry::getMIMETypeForExtension): +(WebCore::MIMETypeRegistry::getMIMETypeForPath): +(WebCore::MIMETypeRegistry::getNormalizedMIMEType): + 2012-11-22 Cosmin Truta Move URL-checking code into Frame Modified: trunk/Source/WebCore/loader/archive/ArchiveFactory.cpp (135506 => 135507) --- trunk/Source/WebCore/loader/archive/ArchiveFactory.cpp 2012-11-22 13:16:48 UTC (rev 135506) +++ trunk/Source/WebCore/loader/archive/ArchiveFactory.cpp 2012-11-22 13:23:28 UTC (rev 135507) @@ -70,6 +70,8 @@ mimeTypes.set("multipart/related", archiveFactoryCreate); #if PLATFORM(GTK) mimeTypes.set("message/rfc822", archiveFactoryCreate); +#elif PLATFORM(QT) +mimeTypes.set("application/x-mimearchive", archiveFactoryCreate); #endif #endif Modified: trunk/Source/WebCore/platform/MIMETypeRegistry.cpp (135506 => 135507) --- trunk/Source/WebCore/platform/MIMETypeRegistry.cpp 2012-11-22 13:16:48 UTC (rev 135506) +++ trunk/Source/WebCore/platform/MIMETypeRegistry.cpp 2012-11-22 13:23:28 UTC (rev 135507) @@ -491,6 +491,7 @@ return findMimeType(commonMediaTypes, sizeof(commonMediaTypes) / sizeof(commonMediaTypes[0]), extension); } +#if !PLATFORM(QT) String MIMETypeRegistry::getMIMETypeForPath(const String& path) { size_t pos = path.reverseFind('.'); @@ -500,8 +501,9 @@ if (result.length()) return result; } -return "application/octet-stream"; +return defaultMIMEType(); } +#endif bool MIMETypeRegistry::isSupportedImageMIMEType(const String& mimeType) { @@ -638,6 +640,13 @@ return defaultMIMEType; } +#if !PLATFORM(QT) && !PLATFORM(BLACKBERRY) +String MIMETypeRegistry::getNormalizedMIMEType(const String& mimeType) +{ +return mimeType; +} +#endif + #if PLATFORM(BLACKBERRY) typedef HashMap MIMETypeAssociationMap; @@ -696,18 +705,16 @@ return *mimeTypeMap; } -#endif String MIMETypeRegistry::getNormalizedMIMEType(const String& mimeType) { -#if PLATFORM(BLACKBERRY) MIMETypeAssociationMap::const_iterator it = mimeTypeAssociationMap().find(mimeType); if (it != mimeTypeAssociationMap().end()) return it->value; -#endif + return mimeType; } +#endif - } // namespace WebCore Modified: trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp (135506 => 135507) --- trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-22 13:16:48 UTC (rev 135506) +++ trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-22 13:23:28 UTC (rev 135507) @@ -29,76 +29,41 @@ #include "config.h" #include "MIMETypeRegistry.h" +#include #include #include namespace WebCore { -struct ExtensionMap { -const char* extension; -const char* mimeType; -}; +String MIMETypeRegistry::getMIMETypeForExtension(const String &ext) +{ +// QMimeDatabase lacks the ability to query by extension alone, so we create a fake filename to lookup. +const QString filename = QStringLiteral("filename.") + QString(ext.lower()); -static const ExtensionMap extensionMap[] = { -{ "bmp", "image/bmp" }, -{ "css", "text/css" }, -{ "gif", "image/gif" }, -{ "html", "
[webkit-changes] [135511] trunk/Source/WebCore
Title: [135511] trunk/Source/WebCore Revision 135511 Author allan.jen...@digia.com Date 2012-11-22 05:50:21 -0800 (Thu, 22 Nov 2012) Log Message [Qt] Correct extensions on preferredFilename https://bugs.webkit.org/show_bug.cgi?id=103054 Reviewed by Simon Hausmann. When guessing a filename we will now ensure it has an extension that is valid for its mimetype. To do this the two missing methods getExtensionsForMIMEType and getPreferredExtensionForMIMEType have been added to the Qt implementation of MIMETypeRegistry. * platform/network/qt/QNetworkReplyHandler.cpp: (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): * platform/qt/MIMETypeRegistryQt.cpp: (WebCore::MIMETypeRegistry::getExtensionsForMIMEType): (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (135510 => 135511) --- trunk/Source/WebCore/ChangeLog 2012-11-22 13:45:59 UTC (rev 135510) +++ trunk/Source/WebCore/ChangeLog 2012-11-22 13:50:21 UTC (rev 135511) @@ -1,3 +1,20 @@ +2012-11-22 Allan Sandfeld Jensen + +[Qt] Correct extensions on preferredFilename +https://bugs.webkit.org/show_bug.cgi?id=103054 + +Reviewed by Simon Hausmann. + +When guessing a filename we will now ensure it has an extension that is valid for its mimetype. +To do this the two missing methods getExtensionsForMIMEType and getPreferredExtensionForMIMEType +have been added to the Qt implementation of MIMETypeRegistry. + +* platform/network/qt/QNetworkReplyHandler.cpp: +(WebCore::QNetworkReplyHandler::sendResponseIfNeeded): +* platform/qt/MIMETypeRegistryQt.cpp: +(WebCore::MIMETypeRegistry::getExtensionsForMIMEType): +(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType): + 2012-11-22 Kent Tamura INPUT_MULTIPLE_FIELDS_UI: Refactoring: Do not call updateInnerTextValue if only read-only sub-fields have values Modified: trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp (135510 => 135511) --- trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp 2012-11-22 13:45:59 UTC (rev 135510) +++ trunk/Source/WebCore/platform/network/qt/QNetworkReplyHandler.cpp 2012-11-22 13:50:21 UTC (rev 135511) @@ -32,6 +32,7 @@ #include #include #include +#include #include #include @@ -581,8 +582,21 @@ if (!suggestedFilename.isEmpty()) response.setSuggestedFilename(suggestedFilename); -else -response.setSuggestedFilename(url.lastPathComponent()); +else { +Vector extensions = MIMETypeRegistry::getExtensionsForMIMEType(mimeType); +if (extensions.isEmpty()) +response.setSuggestedFilename(url.lastPathComponent()); +else { +// If the suffix doesn't match the MIME type, correct the suffix. +QString filename = url.lastPathComponent(); +const String suffix = QMimeDatabase().suffixForFileName(filename); +if (!extensions.contains(suffix)) { +filename.chop(suffix.length()); +filename += MIMETypeRegistry::getPreferredExtensionForMIMEType(mimeType); +} +response.setSuggestedFilename(filename); +} +} response.setHTTPStatusCode(statusCode); response.setHTTPStatusText(m_replyWrapper->reply()->attribute(QNetworkRequest::HttpReasonPhraseAttribute).toByteArray().constData()); Modified: trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp (135510 => 135511) --- trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-22 13:45:59 UTC (rev 135510) +++ trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-22 13:50:21 UTC (rev 135511) @@ -56,6 +56,28 @@ return defaultMIMEType(); } +Vector MIMETypeRegistry::getExtensionsForMIMEType(const String& mimeTypeName) +{ +Vector extensions; +QMimeType mimeType = QMimeDatabase().mimeTypeForName(mimeTypeName); +if (mimeType.isValid() && !mimeType.isDefault()) { +Q_FOREACH(const QString& suffix, mimeType.suffixes()) { +extensions.append(suffix); +} +} + +return extensions; +} + +String MIMETypeRegistry::getPreferredExtensionForMIMEType(const String& mimeTypeName) +{ +QMimeType mimeType = QMimeDatabase().mimeTypeForName(mimeTypeName); +if (mimeType.isValid() && !mimeType.isDefault()) +return mimeType.preferredSuffix(); + +return String(); +} + String MIMETypeRegistry::getNormalizedMIMEType(const String& mimeTypeName) { // This looks up the mime type object by preferred name or alias, and returns the preferred name. ___ webkit-changes mailing list webkit-changes@lists.we
[webkit-changes] [135577] trunk
Title: [135577] trunk Revision 135577 Author allan.jen...@digia.com Date 2012-11-23 02:30:23 -0800 (Fri, 23 Nov 2012) Log Message [Qt] REGRESSION(r135507): It made 13 tests fail https://bugs.webkit.org/show_bug.cgi?id=103069 Reviewed by Simon Hausmann. Source/WebCore: Fix regression in recognizing MHTML on some platforms. * platform/qt/MIMETypeRegistryQt.cpp: (ExtensionMap): (WebCore::MIMETypeRegistry::getMIMETypeForExtension): (WebCore::MIMETypeRegistry::getMIMETypeForPath): LayoutTests: Unskip fixed test and update one benign change. * platform/qt/TestExpectations: * platform/qt/fast/preloader/script-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp Added Paths trunk/LayoutTests/platform/qt/fast/preloader/script-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (135576 => 135577) --- trunk/LayoutTests/ChangeLog 2012-11-23 10:18:12 UTC (rev 135576) +++ trunk/LayoutTests/ChangeLog 2012-11-23 10:30:23 UTC (rev 135577) @@ -1,3 +1,15 @@ +2012-11-23 Allan Sandfeld Jensen + +[Qt] REGRESSION(r135507): It made 13 tests fail +https://bugs.webkit.org/show_bug.cgi?id=103069 + +Reviewed by Simon Hausmann. + +Unskip fixed test and update one benign change. + +* platform/qt/TestExpectations: +* platform/qt/fast/preloader/script-expected.txt: Added. + 2012-11-23 Pierre Rossi [Qt] REGRESSION(r135515): 3 appcache tests still failing Modified: trunk/LayoutTests/platform/qt/TestExpectations (135576 => 135577) --- trunk/LayoutTests/platform/qt/TestExpectations 2012-11-23 10:18:12 UTC (rev 135576) +++ trunk/LayoutTests/platform/qt/TestExpectations 2012-11-23 10:30:23 UTC (rev 135577) @@ -2386,17 +2386,5 @@ # [Qt] REGRESSION(r135507): It made 13 tests fail # https://bugs.webkit.org/show_bug.cgi?id=103069 -fast/preloader/script.html http/tests/navigation/reload-subframe-object.html -mhtml/check_domain.mht -mhtml/multi_frames_binary.mht -mhtml/multi_frames_ie.mht -mhtml/multi_frames_unmht.mht -mhtml/page_with_css_and_js_ie.mht -mhtml/page_with_css_and_js_unmht.mht -mhtml/page_with_image_ie.mht -mhtml/page_with_image_unmht.mht -mhtml/shared_buffer_bug.mht -mhtml/simple_page_ie.mht -mhtml/simple_page_unmht.mht Added: trunk/LayoutTests/platform/qt/fast/preloader/script-expected.txt (0 => 135577) --- trunk/LayoutTests/platform/qt/fast/preloader/script-expected.txt (rev 0) +++ trunk/LayoutTests/platform/qt/fast/preloader/script-expected.txt 2012-11-23 10:30:23 UTC (rev 135577) @@ -0,0 +1,5 @@ +script1.js has MIME type application/_javascript_ +This test requires DumpRenderTree to see the log of what resources are loaded. + +
[webkit-changes] [135584] trunk
Title: [135584] trunk Revision 135584 Author allan.jen...@digia.com Date 2012-11-23 03:27:30 -0800 (Fri, 23 Nov 2012) Log Message [Qt] REGRESSION(r135507): It made 13 tests fail https://bugs.webkit.org/show_bug.cgi?id=103069 Reviewed by Simon Hausmann. Source/WebCore: The subframe loading logic depends on that script extensions are not recognized, so avoid recognizing them in getMIMETypeForExtension which is used for pre-load mimetype detection. * platform/qt/MIMETypeRegistryQt.cpp: (WebCore::MIMETypeRegistry::getMIMETypeForExtension): LayoutTests: Unskip the last of test regressions now passing. * platform/qt/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp Diff Modified: trunk/LayoutTests/ChangeLog (135583 => 135584) --- trunk/LayoutTests/ChangeLog 2012-11-23 11:22:39 UTC (rev 135583) +++ trunk/LayoutTests/ChangeLog 2012-11-23 11:27:30 UTC (rev 135584) @@ -1,3 +1,14 @@ +2012-11-23 Allan Sandfeld Jensen + +[Qt] REGRESSION(r135507): It made 13 tests fail +https://bugs.webkit.org/show_bug.cgi?id=103069 + +Reviewed by Simon Hausmann. + +Unskip the last of test regressions now passing. + +* platform/qt/TestExpectations: + 2012-11-23 Yury Semikhatsky Unreviewed. Updated test expectations. Modified: trunk/LayoutTests/platform/qt/TestExpectations (135583 => 135584) --- trunk/LayoutTests/platform/qt/TestExpectations 2012-11-23 11:22:39 UTC (rev 135583) +++ trunk/LayoutTests/platform/qt/TestExpectations 2012-11-23 11:27:30 UTC (rev 135584) @@ -2383,8 +2383,3 @@ # Fails until we enable the Resource Timing API. webkit.org/b/61138 http/tests/w3c/webperf/submission/resource-timing [ Skip ] - -# [Qt] REGRESSION(r135507): It made 13 tests fail -# https://bugs.webkit.org/show_bug.cgi?id=103069 -http/tests/navigation/reload-subframe-object.html - Modified: trunk/Source/WebCore/ChangeLog (135583 => 135584) --- trunk/Source/WebCore/ChangeLog 2012-11-23 11:22:39 UTC (rev 135583) +++ trunk/Source/WebCore/ChangeLog 2012-11-23 11:27:30 UTC (rev 135584) @@ -1,3 +1,17 @@ +2012-11-23 Allan Sandfeld Jensen + +[Qt] REGRESSION(r135507): It made 13 tests fail +https://bugs.webkit.org/show_bug.cgi?id=103069 + +Reviewed by Simon Hausmann. + +The subframe loading logic depends on that script extensions are not recognized, +so avoid recognizing them in getMIMETypeForExtension which is used for pre-load +mimetype detection. + +* platform/qt/MIMETypeRegistryQt.cpp: +(WebCore::MIMETypeRegistry::getMIMETypeForExtension): + 2012-11-23 Jochen Eisinger REGRESSION (r135455): Compilation without SVG enabled broken Modified: trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp (135583 => 135584) --- trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-23 11:22:39 UTC (rev 135583) +++ trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-11-23 11:27:30 UTC (rev 135584) @@ -57,8 +57,13 @@ const QString filename = QStringLiteral("filename.") + QString(suffix); QMimeType mimeType = QMimeDatabase().mimeTypeForFile(filename, QMimeDatabase::MatchExtension); -if (mimeType.isValid() && !mimeType.isDefault()) +if (mimeType.isValid() && !mimeType.isDefault()) { +// getMIMETypeForExtension is used for preload mimetype check, so image looking files can not be loaded as anything but images. +// Script looking files (.php) are loaded normally and will have their mimetype determined later. +if (mimeType.inherits(QStringLiteral("application/x-executable"))) +return String(); return mimeType.name(); +} const ExtensionMap *e = extensionMap; while (e->extension) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135602] trunk/Source/WebKit/qt
Title: [135602] trunk/Source/WebKit/qt Revision 135602 Author allan.jen...@digia.com Date 2012-11-23 06:05:11 -0800 (Fri, 23 Nov 2012) Log Message tst_qwebpage fails after QMimeDatabase patch https://bugs.webkit.org/show_bug.cgi?id=103125 Reviewed by Simon Hausmann. Replace the static extension->mimetype table with a QMimeDatabase lookup * tests/qwebpage/tst_qwebpage.cpp: (tst_QWebPage::findText): (tst_QWebPage::supportedContentType): Modified Paths trunk/Source/WebKit/qt/ChangeLog trunk/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp Diff Modified: trunk/Source/WebKit/qt/ChangeLog (135601 => 135602) --- trunk/Source/WebKit/qt/ChangeLog 2012-11-23 13:44:29 UTC (rev 135601) +++ trunk/Source/WebKit/qt/ChangeLog 2012-11-23 14:05:11 UTC (rev 135602) @@ -1,3 +1,16 @@ +2012-11-23 Allan Sandfeld Jensen + +tst_qwebpage fails after QMimeDatabase patch +https://bugs.webkit.org/show_bug.cgi?id=103125 + +Reviewed by Simon Hausmann. + +Replace the static extension->mimetype table with a QMimeDatabase lookup + +* tests/qwebpage/tst_qwebpage.cpp: +(tst_QWebPage::findText): +(tst_QWebPage::supportedContentType): + 2012-11-23 Simon Hausmann [Qt] Compiling against QtWebkit API requires QT_DLL to be defined Modified: trunk/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp (135601 => 135602) --- trunk/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp 2012-11-23 13:44:29 UTC (rev 135601) +++ trunk/Source/WebKit/qt/tests/qwebpage/tst_qwebpage.cpp 2012-11-23 14:05:11 UTC (rev 135602) @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -2969,79 +2970,43 @@ } } -struct ImageExtensionMap { -const char* extension; -const char* mimeType; -}; - -static const ImageExtensionMap extensionMap[] = { -{ "bmp", "image/bmp" }, -{ "css", "text/css" }, -{ "gif", "image/gif" }, -{ "html", "text/html" }, -{ "htm", "text/html" }, -{ "ico", "image/x-icon" }, -{ "jpeg", "image/jpeg" }, -{ "jpg", "image/jpeg" }, -{ "js", "application/x-_javascript_" }, -{ "mng", "video/x-mng" }, -{ "pbm", "image/x-portable-bitmap" }, -{ "pgm", "image/x-portable-graymap" }, -{ "pdf", "application/pdf" }, -{ "png", "image/png" }, -{ "ppm", "image/x-portable-pixmap" }, -{ "rss", "application/rss+xml" }, -{ "svg", "image/svg+xml" }, -{ "text", "text/plain" }, -{ "tif", "image/tiff" }, -{ "tiff", "image/tiff" }, -{ "txt", "text/plain" }, -{ "xbm", "image/x-xbitmap" }, -{ "xml", "text/xml" }, -{ "xpm", "image/x-xpm" }, -{ "xsl", "text/xsl" }, -{ "xhtml", "application/xhtml+xml" }, -{ "wml", "text/vnd.wap.wml" }, -{ "wmlc", "application/vnd.wap.wmlc" }, -{ 0, 0 } -}; - static QString getMimeTypeForExtension(const QString &ext) { -const ImageExtensionMap *e = extensionMap; -while (e->extension) { -if (ext.compare(QLatin1String(e->extension), Qt::CaseInsensitive) == 0) -return QLatin1String(e->mimeType); -++e; -} +QMimeType mimeType = QMimeDatabase().mimeTypeForFile(QStringLiteral("filename.") + ext.toLower(), QMimeDatabase::MatchExtension); +if (mimeType.isValid() && !mimeType.isDefault()) +return mimeType.name(); return QString(); } void tst_QWebPage::supportedContentType() { - QStringList contentTypes; +QStringList contentTypes; - // Add supported non image types... - contentTypes << "text/html" << "text/xml" << "text/xsl" << "text/plain" << "text/" -<< "application/xml" << "application/xhtml+xml" << "application/vnd.wap.xhtml+xml" -<< "application/rss+xml" << "application/atom+xml" << "application/json"; +// Add supported non image types... +contentTypes << "text/html" << "text/xml" << "text/xsl" << "text/plain" << "text/" + << "application/xml" << "application/xhtml+xml" << "application/vnd.wap.xhtml+xml" + << "application/rss+xml" << "application/atom+xml" << "application/json"; - // Add supported image types... - Q_FOREACH(const QByteArray& imageType, QImageWriter::supportedImageFormats()) { - const QString mimeType = getMimeTypeForExtension(imageType); - if (!mimeType.isEmpty()) - contentTypes << mimeType; - } +#if ENABLE_MHTML +contentTypes << "application/x-mimearchive"; +#endif - // Get the mime types supported by webkit... - const QStringList supportedContentTypes = m_page->supportedContentTypes(); +// Add supported image types... +Q_FOREACH(const QByteArray& imageType, QImageWriter::supportedImageFormats()) { +const QString mimeType = getMimeTypeForExtension(imageType); +if (!mimeType.isEmpty()) +contentTypes << mimeType; +} - Q_FOREACH(const QString& mimeType, contentTypes) - QVERIFY2(supportedContentTypes.contains(mimeType), QString("'%1' is not a supporte
[webkit-changes] [135710] trunk/Source/WebCore
Title: [135710] trunk/Source/WebCore Revision 135710 Author allan.jen...@digia.com Date 2012-11-26 05:54:02 -0800 (Mon, 26 Nov 2012) Log Message HitTestResult should not be a HitTestLocation https://bugs.webkit.org/show_bug.cgi?id=101590 Reviewed by Sam Weinig. Change HitTestResult from being a HitTestLocation to having a HitTestLocation. A result of a test should not be a special case of the location of the test. No change in functionality. No new tests. * rendering/HitTestResult.cpp: (WebCore::HitTestResult::HitTestResult): (WebCore::HitTestResult::operator=): (WebCore::HitTestResult::isSelected): (WebCore::HitTestResult::spellingToolTip): (WebCore::HitTestResult::replacedString): * rendering/HitTestResult.h: (WebCore::HitTestResult::isRectBasedTest): (WebCore::HitTestResult::pointInInnerNodeFrame): (WebCore::HitTestResult::hitTestLocation): (HitTestResult): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/HitTestResult.cpp trunk/Source/WebCore/rendering/HitTestResult.h Diff Modified: trunk/Source/WebCore/ChangeLog (135709 => 135710) --- trunk/Source/WebCore/ChangeLog 2012-11-26 13:41:20 UTC (rev 135709) +++ trunk/Source/WebCore/ChangeLog 2012-11-26 13:54:02 UTC (rev 135710) @@ -1,3 +1,27 @@ +2012-11-26 Allan Sandfeld Jensen + +HitTestResult should not be a HitTestLocation +https://bugs.webkit.org/show_bug.cgi?id=101590 + +Reviewed by Sam Weinig. + +Change HitTestResult from being a HitTestLocation to having a HitTestLocation. +A result of a test should not be a special case of the location of the test. + +No change in functionality. No new tests. + +* rendering/HitTestResult.cpp: +(WebCore::HitTestResult::HitTestResult): +(WebCore::HitTestResult::operator=): +(WebCore::HitTestResult::isSelected): +(WebCore::HitTestResult::spellingToolTip): +(WebCore::HitTestResult::replacedString): +* rendering/HitTestResult.h: +(WebCore::HitTestResult::isRectBasedTest): +(WebCore::HitTestResult::pointInInnerNodeFrame): +(WebCore::HitTestResult::hitTestLocation): +(HitTestResult): + 2012-11-26 Marja Hölttä Circular reference between Document and MediaQueryMatcher. Modified: trunk/Source/WebCore/rendering/HitTestResult.cpp (135709 => 135710) --- trunk/Source/WebCore/rendering/HitTestResult.cpp 2012-11-26 13:41:20 UTC (rev 135709) +++ trunk/Source/WebCore/rendering/HitTestResult.cpp 2012-11-26 13:54:02 UTC (rev 135710) @@ -192,34 +192,34 @@ return IntRect(actualPoint, actualPadding); } -HitTestResult::HitTestResult() : HitTestLocation() -, m_isOverWidget(false) +HitTestResult::HitTestResult() +: m_isOverWidget(false) { } HitTestResult::HitTestResult(const LayoutPoint& point) -: HitTestLocation(point) +: m_hitTestLocation(point) , m_pointInMainFrame(point) , m_isOverWidget(false) { } HitTestResult::HitTestResult(const LayoutPoint& centerPoint, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding) -: HitTestLocation(centerPoint, topPadding, rightPadding, bottomPadding, leftPadding) +: m_hitTestLocation(centerPoint, topPadding, rightPadding, bottomPadding, leftPadding) , m_pointInMainFrame(centerPoint) , m_isOverWidget(false) { } HitTestResult::HitTestResult(const HitTestLocation& other) -: HitTestLocation(other) -, m_pointInMainFrame(point()) +: m_hitTestLocation(other) +, m_pointInMainFrame(m_hitTestLocation.point()) , m_isOverWidget(false) { } HitTestResult::HitTestResult(const HitTestResult& other) -: HitTestLocation(other) +: m_hitTestLocation(other.m_hitTestLocation) , m_innerNode(other.innerNode()) , m_innerNonSharedNode(other.innerNonSharedNode()) , m_pointInMainFrame(other.m_pointInMainFrame) @@ -238,7 +238,7 @@ HitTestResult& HitTestResult::operator=(const HitTestResult& other) { -HitTestLocation::operator=(other); +m_hitTestLocation = other.m_hitTestLocation; m_innerNode = other.innerNode(); m_innerNonSharedNode = other.innerNonSharedNode(); m_pointInMainFrame = other.m_pointInMainFrame; @@ -315,7 +315,7 @@ if (!frame) return false; -return frame->selection()->contains(point()); +return frame->selection()->contains(m_hitTestLocation.point()); } String HitTestResult::spellingToolTip(TextDirection& dir) const @@ -326,7 +326,7 @@ if (!m_innerNonSharedNode) return String(); -DocumentMarker* marker = m_innerNonSharedNode->document()->markers()->markerContainingPoint(point(), DocumentMarker::Grammar); +DocumentMarker* marker = m_innerNonSharedNode->document()->markers()->markerContainingPoint(m_hitTestLocation.point(), DocumentMarker::Grammar); if (!marker) return String(); @@ -342,7 +342,7 @@ if (!m_innerNonSharedNode) return String(); -Document
[webkit-changes] [135841] trunk
Title: [135841] trunk Revision 135841 Author allan.jen...@digia.com Date 2012-11-27 03:03:23 -0800 (Tue, 27 Nov 2012) Log Message Incorrect rect-based hit-test result when hit-test region includes culled inlines https://bugs.webkit.org/show_bug.cgi?id=88376 Patch by Allan Sandfeld Jensen on 2012-09-17 Reviewed by Dave Hyatt. Source/WebCore: Move the handling of culled inlines from HitTestResult::addNodeToRectBasedTestResult to InlineFlowBox::nodeAtPoint. This makes it possible to fix a number of bugs with how culled inlines were handled. They are now checked after all their children, and may terminate area-based hit-testing if they contain the whole area. Tests: fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html * rendering/HitTestResult.cpp: (WebCore::HitTestLocation::HitTestLocation): (WebCore::HitTestResult::addNodeToRectBasedTestResult): * rendering/HitTestResult.h: (HitTestLocation): * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint): * rendering/RenderInline.cpp: (WebCore::RenderInline::hitTestCulledInline): * rendering/RenderInline.h: (RenderInline): LayoutTests: Renames the existing nodesFromRect-culled-inlines.html test to nodesFromRect-inline-image.html, because it did not test any culled inlines anymore, and replace it with two new tests that does test culled inlines. * fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt: Copied from LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt. * fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html: Added. * fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt: * fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html: * fast/dom/nodesFromRect/nodesFromRect-inline-image-expected.txt: Added. * fast/dom/nodesFromRect/nodesFromRect-inline-image.html: Added. * fast/dom/nodesFromRect/resources/nodesFromRect.js: (checkRect): (nodesFromRectAsString): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html trunk/LayoutTests/fast/dom/nodesFromRect/resources/nodesFromRect.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/HitTestResult.cpp trunk/Source/WebCore/rendering/HitTestResult.h trunk/Source/WebCore/rendering/InlineFlowBox.cpp trunk/Source/WebCore/rendering/RenderInline.cpp trunk/Source/WebCore/rendering/RenderInline.h Added Paths trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-inline-image-expected.txt trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-inline-image.html Diff Modified: trunk/LayoutTests/ChangeLog (135840 => 135841) --- trunk/LayoutTests/ChangeLog 2012-11-27 10:37:03 UTC (rev 135840) +++ trunk/LayoutTests/ChangeLog 2012-11-27 11:03:23 UTC (rev 135841) @@ -1,3 +1,24 @@ +2012-09-17 Allan Sandfeld Jensen + +Incorrect rect-based hit-test result when hit-test region includes culled inlines +https://bugs.webkit.org/show_bug.cgi?id=88376 + +Reviewed by Dave Hyatt. + +Renames the existing nodesFromRect-culled-inlines.html test to nodesFromRect-inline-image.html, +because it did not test any culled inlines anymore, and replace it with two new tests that does +test culled inlines. + +* fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt: Copied from LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt. +* fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html: Added. +* fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt: +* fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html: +* fast/dom/nodesFromRect/nodesFromRect-inline-image-expected.txt: Added. +* fast/dom/nodesFromRect/nodesFromRect-inline-image.html: Added. +* fast/dom/nodesFromRect/resources/nodesFromRect.js: +(checkRect): +(nodesFromRectAsString): + 2012-11-27 Kent Tamura Reduce the number of pixel tests for date/time input types Copied: trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt (from rev 135840, trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt) (0 => 135841) --- trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt 2012-11-27 11:03:23 UTC (rev 135841) @@ -0,0 +1,12 @@ +Document::nodesFromRect : culled inline with line-break - bug 88376 + +On success,
[webkit-changes] [135842] trunk/Source/WebCore
Title: [135842] trunk/Source/WebCore Revision 135842 Author allan.jen...@digia.com Date 2012-11-27 03:15:38 -0800 (Tue, 27 Nov 2012) Log Message [Qt] Implement the mimetype icon methods https://bugs.webkit.org/show_bug.cgi?id=103260 Reviewed by Simon Hausmann. * platform/graphics/Icon.h: (Icon): * platform/graphics/qt/IconQt.cpp: (WebCore::Icon::createIconForFiles): (WebCore::Icon::paint): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/Icon.h trunk/Source/WebCore/platform/graphics/qt/IconQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (135841 => 135842) --- trunk/Source/WebCore/ChangeLog 2012-11-27 11:03:23 UTC (rev 135841) +++ trunk/Source/WebCore/ChangeLog 2012-11-27 11:15:38 UTC (rev 135842) @@ -1,3 +1,16 @@ +2012-11-26 Allan Sandfeld Jensen + +[Qt] Implement the mimetype icon methods +https://bugs.webkit.org/show_bug.cgi?id=103260 + +Reviewed by Simon Hausmann. + +* platform/graphics/Icon.h: +(Icon): +* platform/graphics/qt/IconQt.cpp: +(WebCore::Icon::createIconForFiles): +(WebCore::Icon::paint): + 2012-09-17 Allan Sandfeld Jensen Incorrect rect-based hit-test result when hit-test region includes culled inlines Modified: trunk/Source/WebCore/platform/graphics/Icon.h (135841 => 135842) --- trunk/Source/WebCore/platform/graphics/Icon.h 2012-11-27 11:03:23 UTC (rev 135841) +++ trunk/Source/WebCore/platform/graphics/Icon.h 2012-11-27 11:15:38 UTC (rev 135842) @@ -32,7 +32,7 @@ #elif PLATFORM(WIN) typedef struct HICON__* HICON; #elif PLATFORM(QT) -#include +#include #elif PLATFORM(GTK) typedef struct _GdkPixbuf GdkPixbuf; #elif PLATFORM(EFL) @@ -70,7 +70,7 @@ HICON m_hIcon; #elif PLATFORM(QT) Icon(); -QImage m_image; +QIcon m_icon; #elif PLATFORM(GTK) Icon(); GdkPixbuf* m_icon; Modified: trunk/Source/WebCore/platform/graphics/qt/IconQt.cpp (135841 => 135842) --- trunk/Source/WebCore/platform/graphics/qt/IconQt.cpp 2012-11-27 11:03:23 UTC (rev 135841) +++ trunk/Source/WebCore/platform/graphics/qt/IconQt.cpp 2012-11-27 11:15:38 UTC (rev 135842) @@ -24,6 +24,7 @@ #include "GraphicsContext.h" #include "IntRect.h" #include "NotImplemented.h" +#include #include namespace WebCore { @@ -37,16 +38,49 @@ } // FIXME: Move the code to ChromeClient::iconForFiles(). -PassRefPtr Icon::createIconForFiles(const Vector&) +PassRefPtr Icon::createIconForFiles(const Vector& filenames) { -// FIXME: Should use QMimeType in Qt 5. -notImplemented(); -return 0; +if (filenames.isEmpty()) +return 0; + +QMimeType mimeType = QMimeDatabase().mimeTypeForFile(filenames[0], QMimeDatabase::MatchExtension); + +QString iconName = mimeType.iconName(); +QString genericIconName = mimeType.genericIconName(); + +// We try to match one of three cases: +// 1. All the files have the same type. +// 2. All the files are of the same generic type. +// 3. The files are not even of the same generic type. +const int count = filenames.size(); +for (int i = 1; i < count; ++i) { +mimeType = QMimeDatabase().mimeTypeForFile(filenames[i], QMimeDatabase::MatchExtension); +if (iconName != mimeType.iconName()) +iconName.clear(); +if (genericIconName != mimeType.genericIconName()) { +genericIconName.clear(); +break; +} +} + +// FIXME: By default, only X11 will support themed icons. +RefPtr icon = adoptRef(new Icon); +if (!iconName.isEmpty()) +icon->m_icon = QIcon::fromTheme(iconName, QIcon::fromTheme(genericIconName)); +else if (!genericIconName.isEmpty()) +icon->m_icon = QIcon::fromTheme(genericIconName); + +if (icon->m_icon.isNull()) +return 0; +return icon.release(); } -void Icon::paint(GraphicsContext*, const IntRect&) +void Icon::paint(GraphicsContext* context, const IntRect& rect) { -notImplemented(); +if (m_icon.isNull()) +return; + +m_icon.paint(context->platformContext(), rect); } } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135852] trunk/LayoutTests
Title: [135852] trunk/LayoutTests Revision 135852 Author allan.jen...@digia.com Date 2012-11-27 05:27:52 -0800 (Tue, 27 Nov 2012) Log Message Reduce XHR timeout tests execution time https://bugs.webkit.org/show_bug.cgi?id=102184 Reviewed by Csaba Osztrogonác. Reduce all timeouts by five. * http/tests/resources/load-and-stall.cgi: * http/tests/resources/load-and-stall.php: * http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js: * http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js: (RequestTracker.prototype.startXHR): (RequestTracker.prototype.handleEvent): (AbortedRequest.prototype.getMessage): (AbortedRequest.prototype.handleEvent): (SyncRequestSettingTimeoutAfterOpen.startXHR): (SyncRequestSettingTimeoutBeforeOpen.startXHR): (TestCounter.testComplete): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/http/tests/resources/load-and-stall.cgi trunk/LayoutTests/http/tests/resources/load-and-stall.php trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js Diff Modified: trunk/LayoutTests/ChangeLog (135851 => 135852) --- trunk/LayoutTests/ChangeLog 2012-11-27 13:23:10 UTC (rev 135851) +++ trunk/LayoutTests/ChangeLog 2012-11-27 13:27:52 UTC (rev 135852) @@ -1,3 +1,24 @@ +2012-11-27 Allan Sandfeld Jensen + +Reduce XHR timeout tests execution time +https://bugs.webkit.org/show_bug.cgi?id=102184 + +Reviewed by Csaba Osztrogonác. + +Reduce all timeouts by five. + +* http/tests/resources/load-and-stall.cgi: +* http/tests/resources/load-and-stall.php: +* http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js: +* http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js: +(RequestTracker.prototype.startXHR): +(RequestTracker.prototype.handleEvent): +(AbortedRequest.prototype.getMessage): +(AbortedRequest.prototype.handleEvent): +(SyncRequestSettingTimeoutAfterOpen.startXHR): +(SyncRequestSettingTimeoutBeforeOpen.startXHR): +(TestCounter.testComplete): + 2012-11-27 Mihnea Ovidenie [CSS Regions] Absolutely positioned regions do not expand to fill their container Modified: trunk/LayoutTests/http/tests/resources/load-and-stall.cgi (135851 => 135852) --- trunk/LayoutTests/http/tests/resources/load-and-stall.cgi 2012-11-27 13:23:10 UTC (rev 135851) +++ trunk/LayoutTests/http/tests/resources/load-and-stall.cgi 2012-11-27 13:27:52 UTC (rev 135852) @@ -2,6 +2,7 @@ use CGI; use File::stat; +use Time::HiRes; $query = new CGI; $name = $query->param('name'); @@ -21,7 +22,7 @@ $total += $n; if ($total > $stallAt) { if (defined $stallFor) { -sleep($stallFor) +Time::HiRes::sleep($stallFor) } last; } Modified: trunk/LayoutTests/http/tests/resources/load-and-stall.php (135851 => 135852) --- trunk/LayoutTests/http/tests/resources/load-and-stall.php 2012-11-27 13:23:10 UTC (rev 135851) +++ trunk/LayoutTests/http/tests/resources/load-and-stall.php 2012-11-27 13:27:52 UTC (rev 135852) @@ -27,7 +27,7 @@ flush(); ob_flush(); } -sleep($stallFor); +usleep($stallFor * 100); echo(fread($file, filesize($name) - $stallAt)); } else { echo(fread($file, filesize($name))); Modified: trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js (135851 => 135852) --- trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js 2012-11-27 13:23:10 UTC (rev 135851) +++ trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js 2012-11-27 13:27:52 UTC (rev 135852) @@ -21,7 +21,7 @@ } // Setting up testharness.js -setup({ explicit_done: true, timeout: 3 * 60 * 1000 }); +setup({ explicit_done: true, timeout: 30 * 1000 }); // Abort test execution if an individual test case fails. add_result_callback(function (t) { Modified: trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js (135851 => 135852) --- trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js 2012-11-27 13:23:10 UTC (rev 135851) +++ trunk/LayoutTests/http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js 2012-11-27 13:27:52 UTC (rev 135852) @@ -11,10 +11,17 @@ request handlers. */ +var TIME_NORMAL_LOAD = 1000; +var TIME_LATE_TIMEOUT = 800; +var TIME_XHR_LOAD = 600; +var TIME_REGULAR_TIMEOUT = 400; +var TIME_SYNC_TIMEOUT = 200; +var TIME_DELAY = 200; + /* - * This should point to a resource that responds after a delay of 3 seconds. + * This should point to a resource that responds after a delay of TIME_XHR_LOAD milliseconds. */ -var STALLED_REQUEST_URL = "/resources/load-and-stall.cgi?name=../../../http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js&stallFor=3&stallAt=0&mimeType=text/plain"; +var STALLED_REQUES
[webkit-changes] [135876] trunk/Source/WebCore
Title: [135876] trunk/Source/WebCore Revision 135876 Author allan.jen...@digia.com Date 2012-11-27 10:30:27 -0800 (Tue, 27 Nov 2012) Log Message Unreviewed cleanup. Remove leftover file that was replaced by PlatformScreenQt.cpp 4 years ago. * platform/qt/ScreenQt.cpp: Removed. Modified Paths trunk/Source/WebCore/ChangeLog Removed Paths trunk/Source/WebCore/platform/qt/ScreenQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (135875 => 135876) --- trunk/Source/WebCore/ChangeLog 2012-11-27 18:16:27 UTC (rev 135875) +++ trunk/Source/WebCore/ChangeLog 2012-11-27 18:30:27 UTC (rev 135876) @@ -1,3 +1,11 @@ +2012-11-27 Allan Sandfeld Jensen + +Unreviewed cleanup. + +Remove leftover file that was replaced by PlatformScreenQt.cpp 4 years ago. + +* platform/qt/ScreenQt.cpp: Removed. + 2012-11-27 Istiaque Ahmed freeV8NPObject: Skip trying to remove object from per context data's ObjectMap if the object does not exist in the map. Deleted: trunk/Source/WebCore/platform/qt/ScreenQt.cpp (135875 => 135876) --- trunk/Source/WebCore/platform/qt/ScreenQt.cpp 2012-11-27 18:16:27 UTC (rev 135875) +++ trunk/Source/WebCore/platform/qt/ScreenQt.cpp 2012-11-27 18:30:27 UTC (rev 135876) @@ -1,99 +0,0 @@ -/* - * Copyright (C) 2006 Dirk Mueller - * (C) 2006 Nikolas Zimmermann - * - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - *notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - *notice, this list of conditions and the following disclaimer in the - *documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY - * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include "config.h" -#include "Screen.h" - -#include "FloatRect.h" -#include "Frame.h" -#include "FrameView.h" -#include "IntRect.h" -#include "Page.h" -#include "Widget.h" - -#include -#include - -namespace WebCore { - -static QWidget* qwidgetForPage(const Page* page) -{ -Frame* frame = (page ? page->mainFrame() : 0); -FrameView* frameView = (frame ? frame->view() : 0); - -if (!frameView) -return 0; - -return frameView->qwidget(); -} - -FloatRect screenRect(const Page* page) -{ -QWidget* qw = qwidgetForPage(page); -if (!qw) -return FloatRect(); - -// Taken from KGlobalSettings::desktopGeometry -QDesktopWidget* dw = QApplication::desktop(); -if (!dw) -return FloatRect(); - -return IntRect(dw->screenGeometry(qw)); -} - -int screenDepth(const Page* page) -{ -QWidget* qw = qwidgetForPage(page); -if (!qw) -return 32; - -return qw->depth(); -} - -FloatRect usableScreenRect(const Page* page) -{ -QWidget* qw = qwidgetForPage(page); -if (!qw) -return FloatRect(); - -// Taken from KGlobalSettings::desktopGeometry -QDesktopWidget* dw = QApplication::desktop(); -if (!dw) -return FloatRect(); - -return IntRect(dw->availableGeometry(qw)); -} - -float scaleFactor(const Page*) -{ -return 1.0f; -} - -} - -// vim: ts=4 sw=4 et ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [136002] trunk/Source/WebCore
Title: [136002] trunk/Source/WebCore Revision 136002 Author allan.jen...@digia.com Date 2012-11-28 05:44:46 -0800 (Wed, 28 Nov 2012) Log Message Move childrenAffectedBy bits from RenderStyle to Element https://bugs.webkit.org/show_bug.cgi?id=101448 Unreviewed buildfix. To use renderStyle() on some Macs we need to include NodeRenderStyle.h. * dom/ContainerNode.cpp: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (136001 => 136002) --- trunk/Source/WebCore/ChangeLog 2012-11-28 13:09:40 UTC (rev 136001) +++ trunk/Source/WebCore/ChangeLog 2012-11-28 13:44:46 UTC (rev 136002) @@ -2,6 +2,17 @@ Move childrenAffectedBy bits from RenderStyle to Element https://bugs.webkit.org/show_bug.cgi?id=101448 + +Unreviewed buildfix. + +To use renderStyle() on some Macs we need to include NodeRenderStyle.h. + +* dom/ContainerNode.cpp: + +2012-11-28 Allan Sandfeld Jensen + +Move childrenAffectedBy bits from RenderStyle to Element +https://bugs.webkit.org/show_bug.cgi?id=101448 https://bugs.webkit.org/show_bug.cgi?id=98021 Reviewed by Antti Koivisto. Modified: trunk/Source/WebCore/dom/ContainerNode.cpp (136001 => 136002) --- trunk/Source/WebCore/dom/ContainerNode.cpp 2012-11-28 13:09:40 UTC (rev 136001) +++ trunk/Source/WebCore/dom/ContainerNode.cpp 2012-11-28 13:44:46 UTC (rev 136002) @@ -38,6 +38,7 @@ #include "LoaderStrategy.h" #include "MemoryCache.h" #include "MutationEvent.h" +#include "NodeRenderStyle.h" #include "ResourceLoadScheduler.h" #include "Page.h" #include "PlatformStrategies.h" ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [136129] trunk/Source/WebKit2
Title: [136129] trunk/Source/WebKit2 Revision 136129 Author allan.jen...@digia.com Date 2012-11-29 07:00:49 -0800 (Thu, 29 Nov 2012) Log Message Possible to resize out of bounds https://bugs.webkit.org/show_bug.cgi?id=103521 Reviewed by Jocelyn Turcotte. Enforce the viewportBounds after resize, and ensure a user fitted page remains fit on viewport resize, but not on content growth. * UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml: Added. * UIProcess/PageViewportController.cpp: (WebKit::PageViewportController::didChangeContentsSize): (WebKit::PageViewportController::didChangeViewportAttributes): (WebKit::PageViewportController::updateMinimumScaleToFit): * UIProcess/PageViewportController.h: (PageViewportController): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/PageViewportController.cpp trunk/Source/WebKit2/UIProcess/PageViewportController.h Added Paths trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml Diff Modified: trunk/Source/WebKit2/ChangeLog (136128 => 136129) --- trunk/Source/WebKit2/ChangeLog 2012-11-29 14:57:38 UTC (rev 136128) +++ trunk/Source/WebKit2/ChangeLog 2012-11-29 15:00:49 UTC (rev 136129) @@ -1,3 +1,21 @@ +2012-11-29 Allan Sandfeld Jensen + +Possible to resize out of bounds +https://bugs.webkit.org/show_bug.cgi?id=103521 + +Reviewed by Jocelyn Turcotte. + +Enforce the viewportBounds after resize, and ensure a user fitted page remains +fit on viewport resize, but not on content growth. + +* UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml: Added. +* UIProcess/PageViewportController.cpp: +(WebKit::PageViewportController::didChangeContentsSize): +(WebKit::PageViewportController::didChangeViewportAttributes): +(WebKit::PageViewportController::updateMinimumScaleToFit): +* UIProcess/PageViewportController.h: +(PageViewportController): + 2012-11-29 Michael Brüning [Qt][WK2] Commit the preedit string in the input method when focus is about to be moved. Added: trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml (0 => 136129) --- trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml (rev 0) +++ trunk/Source/WebKit2/UIProcess/API/qt/tests/qmltests/WebView/tst_resize.qml 2012-11-29 15:00:49 UTC (rev 136129) @@ -0,0 +1,175 @@ +import QtQuick 2.0 +import QtTest 1.0 +import QtWebKit 3.0 +import QtWebKit.experimental 1.0 +import Test 1.0 +import "../common" + +Item { +TestWebView { +id: webView +width: 320 +height: 480 + +property variant result + +property variant content: "data:text/html," + +"" + +"" + +"" + +"" + +"" + +"" + +"" + +signal resultReceived +} + +SignalSpy { +id: resultSpy +target: webView +signalName: "resultReceived" +} + +SignalSpy { +id: scaleSpy +target: webView.experimental.test +signalName: "contentsScaleCommitted" +} + +SignalSpy { +id: sizeSpy +target: webView.experimental.test +signalName: "contentsSizeChanged" +} + +TestCase { +name: "Resize" +when: windowShown + +property variant test: webView.experimental.test + +function init() { +resultSpy.clear() +scaleSpy.clear() +viewportSpy.clear() +} + +function run(signalSpy, script) { +signalSpy.clear(); +var result; +webView.experimental.evaluateJavaScript( +script, +function(value) { webView.resultReceived(); result = value }); +signalSpy.wait(); +return result; +} + +function contentsSize() { +return test.contentsSize.width + "x" + test.contentsSize.height; +} + +function elementRect(id) { +return JSON.parse(run(resultSpy, "JSON.stringify(document.getElementById('" + id + "').getBoundingClientRect());")) +} + +function doubleTapAtPoint(x, y) { +scaleSpy.clear() +test.touchDoubleTap(webView, x, y) +scaleSpy.wait() +} + +function resize(w, h) { +sizeSpy.clear() +webView.width = w +sizeSpy.wait() +webView.height = h +sizeSpy.wait() +} + +function test_basic() { +webView.url = "" +verify(webView.waitForViewportReady()) + +compare(contentsSize(), "320x480") +compare(test.contentsScale, 1.0) + +resize(480, 720) +compare(contentsSize(), "480x720") +compare(test.contentsScale, 1.0) + +resize(320, 480) +compare(contentsSize(), "320x480")
[webkit-changes] [136246] trunk/Source/JavaScriptCore
Title: [136246] trunk/Source/_javascript_Core Revision 136246 Author allan.jen...@digia.com Date 2012-11-30 08:59:03 -0800 (Fri, 30 Nov 2012) Log Message Crash in conversion of empty OpaqueJSString to Identifier https://bugs.webkit.org/show_bug.cgi?id=101867 Reviewed by Michael Saboff. The constructor call used for both null and empty OpaqueJSStrings results in an assertion voilation and crash. This patch instead uses the Identifier constructors which are specifically for null and empty Identifier. * API/OpaqueJSString.cpp: (OpaqueJSString::identifier): Modified Paths trunk/Source/_javascript_Core/API/OpaqueJSString.cpp trunk/Source/_javascript_Core/ChangeLog Diff Modified: trunk/Source/_javascript_Core/API/OpaqueJSString.cpp (136245 => 136246) --- trunk/Source/_javascript_Core/API/OpaqueJSString.cpp 2012-11-30 16:24:27 UTC (rev 136245) +++ trunk/Source/_javascript_Core/API/OpaqueJSString.cpp 2012-11-30 16:59:03 UTC (rev 136246) @@ -50,9 +50,12 @@ Identifier OpaqueJSString::identifier(JSGlobalData* globalData) const { -if (!this || !m_string.length()) -return Identifier(globalData, static_cast(0)); +if (!this || m_string.isNull()) +return Identifier(); +if (m_string.isEmpty()) +return Identifier(Identifier::EmptyIdentifier); + if (m_string.is8Bit()) return Identifier(globalData, m_string.characters8(), m_string.length()); Modified: trunk/Source/_javascript_Core/ChangeLog (136245 => 136246) --- trunk/Source/_javascript_Core/ChangeLog 2012-11-30 16:24:27 UTC (rev 136245) +++ trunk/Source/_javascript_Core/ChangeLog 2012-11-30 16:59:03 UTC (rev 136246) @@ -1,3 +1,17 @@ +2012-11-30 Allan Sandfeld Jensen + +Crash in conversion of empty OpaqueJSString to Identifier +https://bugs.webkit.org/show_bug.cgi?id=101867 + +Reviewed by Michael Saboff. + +The constructor call used for both null and empty OpaqueJSStrings results +in an assertion voilation and crash. This patch instead uses the Identifier +constructors which are specifically for null and empty Identifier. + +* API/OpaqueJSString.cpp: +(OpaqueJSString::identifier): + 2012-11-30 Tor Arne Vestbø [Qt] Place the LLIntOffsetsExtractor binaries in debug/release subdirs on Mac ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [136669] trunk/Source/WebCore
Title: [136669] trunk/Source/WebCore Revision 136669 Author allan.jen...@digia.com Date 2012-12-05 04:37:27 -0800 (Wed, 05 Dec 2012) Log Message [Qt] Don't rely on QMimeDatabase for essential MIME types https://bugs.webkit.org/show_bug.cgi?id=103865 Based on patch by Pierre Rossi. Reviewed by Jocelyn Turcotte. Extend the short static list to also include MIME types essential to WebKit, and detect these first before checking the system mimedatabase. * platform/qt/MIMETypeRegistryQt.cpp: (WebCore::MIMETypeRegistry::getMIMETypeForExtension): (WebCore::MIMETypeRegistry::getMIMETypeForPath): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (136668 => 136669) --- trunk/Source/WebCore/ChangeLog 2012-12-05 12:32:00 UTC (rev 136668) +++ trunk/Source/WebCore/ChangeLog 2012-12-05 12:37:27 UTC (rev 136669) @@ -1,3 +1,18 @@ +2012-12-05 Allan Sandfeld Jensen + +[Qt] Don't rely on QMimeDatabase for essential MIME types +https://bugs.webkit.org/show_bug.cgi?id=103865 + +Based on patch by Pierre Rossi. +Reviewed by Jocelyn Turcotte. + +Extend the short static list to also include MIME types essential to WebKit, +and detect these first before checking the system mimedatabase. + +* platform/qt/MIMETypeRegistryQt.cpp: +(WebCore::MIMETypeRegistry::getMIMETypeForExtension): +(WebCore::MIMETypeRegistry::getMIMETypeForPath): + 2012-12-05 Zoltan Herczeg Optimize ColorMatrix filter Modified: trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp (136668 => 136669) --- trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-12-05 12:32:00 UTC (rev 136668) +++ trunk/Source/WebCore/platform/qt/MIMETypeRegistryQt.cpp 2012-12-05 12:37:27 UTC (rev 136669) @@ -41,21 +41,41 @@ const char* mimeType; }; -// This is a short list of extensions not recognized by the freedesktop shared mimetype database 1.0. +// This is a short list of extensions that are either not recognized by the freedesktop shared mimetype database 1.0, +// or too essential for QtWebKit that we can not allow a user configuration to potentially override it. +// Any extension that has to be recognized for the layout-tests to run should be added here. static const ExtensionMap extensionMap[] = { -{ "mht", ".mht", "application/x-mimearchive" }, -{ "mhtml", ".mhtml", "application/x-mimearchive" }, -{ "text", ".text", "text/plain" }, -{ "wmlc", ".wmlc", "application/vnd.wap.wmlc" }, +{ "htm", ".htm", "text/html" }, +{ "html", ".html", "text/html" }, +{ "js", ".js", "application/_javascript_" }, +{ "mht", ".mht", "application/x-mimearchive" }, // Not in shared mimetype database +{ "mhtml", ".mhtml", "application/x-mimearchive" }, // Not in shared mimetype database +{ "svg", ".svg", "image/svg+xml" }, +{ "text", ".text", "text/plain" }, // Not in shared mimetype database +{ "txt", ".txt", "text/plain"}, +{ "wmlc", ".wmlc", "application/vnd.wap.wmlc" }, // Not in shared mimetype database +{ "xht", ".xht", "application/xhtml+xml" }, +{ "xhtml", ".xhtml", "application/xhtml+xml" }, +{ "xsl", ".xsl", "text/xsl" }, { 0, 0, 0 } }; String MIMETypeRegistry::getMIMETypeForExtension(const String &ext) { +String suffix = ext.lower(); +const ExtensionMap *e = extensionMap; +while (e->extension) { +if (suffix == e->extension) +return e->mimeType; +++e; +} + // QMimeDatabase lacks the ability to query by extension alone, so we create a fake filename to lookup. -String suffix = ext.lower(); const QString filename = QStringLiteral("filename.") + QString(suffix); +// FIXME: We should get all the matched mimetypes with mimeTypesForFileName, and prefer one we support. +// But initializeSupportedImageMIMETypes will first have to stop using getMIMETypeForExtension, or we +// would be checking against an uninitialized set of supported mimetypes. QMimeType mimeType = QMimeDatabase().mimeTypeForFile(filename, QMimeDatabase::MatchExtension); if (mimeType.isValid() && !mimeType.isDefault()) { // getMIMETypeForExtension is used for preload mimetype check, so image looking files can not be loaded as anything but images. @@ -65,29 +85,23 @@ return mimeType.name(); } -const ExtensionMap *e = extensionMap; -while (e->extension) { -if (suffix == e->extension) -return e->mimeType; -++e; -} - return String(); } String MIMETypeRegistry::getMIMETypeForPath(const String& path) { -QMimeType type = QMimeDatabase().mimeTypeForFile(path, QMimeDatabase::MatchExtension); -if (type.isValid() && !type.isDefault()) -return type.name(); - const ExtensionMap *e = extensionMap; while (e->extension) { -if (path.endsWith(e->dotExtension)) +
[webkit-changes] [143197] trunk
Title: [143197] trunk Revision 143197 Author allan.jen...@digia.com Date 2013-02-18 05:00:00 -0800 (Mon, 18 Feb 2013) Log Message [Qt][WK2] Support WK2 API tests https://bugs.webkit.org/show_bug.cgi?id=109843 Reviewed by Jocelyn Turcotte. Source/WebKit2: * UIProcess/API/qt/qquickwebview_p.h: (TestWebKitAPI): Tools: * TestWebKitAPI/DerivedSources.pri: Added. * TestWebKitAPI/InjectedBundle.pri: Added. * TestWebKitAPI/PlatformWebView.h: * TestWebKitAPI/TestWebKitAPI.pri: * TestWebKitAPI/TestWebKitAPI.pro: * TestWebKitAPI/Tests/_javascript_Core/_javascript_Core.pro: Added. * TestWebKitAPI/Tests/WTF/WTF.pro: * TestWebKitAPI/Tests/WebKit2/WebKit2.pro: Added. * TestWebKitAPI/qt/PlatformUtilitiesQt.cpp: (TestWebKitAPI::Util::sleep): (TestWebKitAPI::Util::createInjectedBundlePath): (TestWebKitAPI::Util::createURLForResource): (TestWebKitAPI::Util::isKeyDown): (Util): * TestWebKitAPI/qt/PlatformWebViewQt.cpp: Added. (TestWebKitAPI): (WrapperWindow): (TestWebKitAPI::WrapperWindow::WrapperWindow): (TestWebKitAPI::WrapperWindow::handleStatusChanged): (TestWebKitAPI::PlatformWebView::PlatformWebView): (TestWebKitAPI::PlatformWebView::~PlatformWebView): (TestWebKitAPI::PlatformWebView::resizeTo): (TestWebKitAPI::PlatformWebView::page): (TestWebKitAPI::PlatformWebView::focus): (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress): (TestWebKitAPI::PlatformWebView::simulateAltKeyPress): (TestWebKitAPI::PlatformWebView::simulateMouseMove): (TestWebKitAPI::PlatformWebView::simulateRightClick): * TestWebKitAPI/qt/main.cpp: (addQtWebProcessToPath): (main): Modified Paths trunk/Source/WebKit2/ChangeLog trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h trunk/Tools/ChangeLog trunk/Tools/TestWebKitAPI/PlatformWebView.h trunk/Tools/TestWebKitAPI/TestWebKitAPI.pri trunk/Tools/TestWebKitAPI/TestWebKitAPI.pro trunk/Tools/TestWebKitAPI/Tests/WTF/WTF.pro trunk/Tools/TestWebKitAPI/qt/PlatformUtilitiesQt.cpp trunk/Tools/TestWebKitAPI/qt/main.cpp Added Paths trunk/Tools/TestWebKitAPI/DerivedSources.pri trunk/Tools/TestWebKitAPI/InjectedBundle.pri trunk/Tools/TestWebKitAPI/Tests/_javascript_Core/_javascript_Core.pro trunk/Tools/TestWebKitAPI/Tests/WebKit2/WebKit2.pro trunk/Tools/TestWebKitAPI/Tests.pri trunk/Tools/TestWebKitAPI/qt/PlatformWebViewQt.cpp Diff Modified: trunk/Source/WebKit2/ChangeLog (143196 => 143197) --- trunk/Source/WebKit2/ChangeLog 2013-02-18 12:56:15 UTC (rev 143196) +++ trunk/Source/WebKit2/ChangeLog 2013-02-18 13:00:00 UTC (rev 143197) @@ -1,3 +1,13 @@ +2013-02-15 Allan Sandfeld Jensen + +[Qt][WK2] Support WK2 API tests +https://bugs.webkit.org/show_bug.cgi?id=109843 + +Reviewed by Jocelyn Turcotte. + +* UIProcess/API/qt/qquickwebview_p.h: +(TestWebKitAPI): + 2013-02-18 Andras Becsi [Qt][WK2] Changing WebView.contentY and WebView.contentX does not redraw content Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h (143196 => 143197) --- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h 2013-02-18 12:56:15 UTC (rev 143196) +++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p.h 2013-02-18 13:00:00 UTC (rev 143197) @@ -48,6 +48,10 @@ class PlatformWebView; } +namespace TestWebKitAPI { +class PlatformWebView; +} + namespace WebKit { struct QtRefCountedNetworkRequestData; class PageViewportControllerClientQt; @@ -224,6 +228,7 @@ friend class WebKit::QtWebPagePolicyClient; friend class WebKit::QtWebPageUIClient; friend class WTR::PlatformWebView; +friend class TestWebKitAPI::PlatformWebView; friend class QQuickWebViewExperimental; }; Modified: trunk/Tools/ChangeLog (143196 => 143197) --- trunk/Tools/ChangeLog 2013-02-18 12:56:15 UTC (rev 143196) +++ trunk/Tools/ChangeLog 2013-02-18 13:00:00 UTC (rev 143197) @@ -1,3 +1,42 @@ +2013-02-15 Allan Sandfeld Jensen + +[Qt][WK2] Support WK2 API tests +https://bugs.webkit.org/show_bug.cgi?id=109843 + +Reviewed by Jocelyn Turcotte. + +* TestWebKitAPI/DerivedSources.pri: Added. +* TestWebKitAPI/InjectedBundle.pri: Added. +* TestWebKitAPI/PlatformWebView.h: +* TestWebKitAPI/TestWebKitAPI.pri: +* TestWebKitAPI/TestWebKitAPI.pro: +* TestWebKitAPI/Tests/_javascript_Core/_javascript_Core.pro: Added. +* TestWebKitAPI/Tests/WTF/WTF.pro: +* TestWebKitAPI/Tests/WebKit2/WebKit2.pro: Added. +* TestWebKitAPI/qt/PlatformUtilitiesQt.cpp: +(TestWebKitAPI::Util::sleep): +(TestWebKitAPI::Util::createInjectedBundlePath): +(TestWebKitAPI::Util::createURLForResource): +(TestWebKitAPI::Util::isKeyDown): +(Util): +* TestWebKitAPI/qt/PlatformWebViewQt.cpp: Added. +(TestWebKitAPI): +(WrapperWindow): +(TestWebKitAPI::WrapperWindow::WrapperWindow): +(TestWebKitAPI::WrapperWindow::handleStatusChanged): +(TestWebKitAPI::PlatformWebView::PlatformWebView): +(TestWebKitA
[webkit-changes] [143588] trunk/Source/WebKit/qt
Title: [143588] trunk/Source/WebKit/qt Revision 143588 Author allan.jen...@digia.com Date 2013-02-21 04:39:47 -0800 (Thu, 21 Feb 2013) Log Message [Qt] Replace QWebPageAdaptor::TouchAdjuster https://bugs.webkit.org/show_bug.cgi?id=110226 Reviewed by Antonio Gomes. * WebCoreSupport/QWebPageAdapter.cpp: (QWebPageAdapter::adjustPointForClicking): * WebCoreSupport/QWebPageAdapter.h: Modified Paths trunk/Source/WebKit/qt/ChangeLog trunk/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp trunk/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.h Diff Modified: trunk/Source/WebKit/qt/ChangeLog (143587 => 143588) --- trunk/Source/WebKit/qt/ChangeLog 2013-02-21 12:38:50 UTC (rev 143587) +++ trunk/Source/WebKit/qt/ChangeLog 2013-02-21 12:39:47 UTC (rev 143588) @@ -1,3 +1,14 @@ +2013-02-21 Allan Sandfeld Jensen + +[Qt] Replace QWebPageAdaptor::TouchAdjuster +https://bugs.webkit.org/show_bug.cgi?id=110226 + +Reviewed by Antonio Gomes. + +* WebCoreSupport/QWebPageAdapter.cpp: +(QWebPageAdapter::adjustPointForClicking): +* WebCoreSupport/QWebPageAdapter.h: + 2013-02-15 Allan Sandfeld Jensen Simplify hitTestResultAtPoint and nodesFromRect APIs Modified: trunk/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp (143587 => 143588) --- trunk/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2013-02-21 12:38:50 UTC (rev 143587) +++ trunk/Source/WebKit/qt/WebCoreSupport/QWebPageAdapter.cpp 2013-02-21 12:39:47 UTC (rev 143588) @@ -344,6 +344,7 @@ void QWebPageAdapter::adjustPointForClicking(QMouseEvent* ev) { +#if ENABLE(TOUCH_ADJUSTMENT) QtPlatformPlugin platformPlugin; OwnPtr touchModifier = platformPlugin.createTouchModifier(); if (!touchModifier) @@ -359,132 +360,24 @@ if (!topPadding && !rightPadding && !bottomPadding && !leftPadding) return; -Document* startingDocument = page->mainFrame()->document(); -if (!startingDocument) -return; +EventHandler* eventHandler = page->mainFrame()->eventHandler(); +ASSERT(eventHandler); -IntPoint originalPoint(ev->pos()); -TouchAdjuster touchAdjuster(topPadding, rightPadding, bottomPadding, leftPadding); -IntPoint adjustedPoint = touchAdjuster.findCandidatePointForTouch(originalPoint, startingDocument); -if (adjustedPoint == IntPoint::zero()) +IntRect touchRect(ev->pos().x() - leftPadding, ev->pos().y() - topPadding, leftPadding + rightPadding, topPadding + bottomPadding); +IntPoint adjustedPoint; +Node* adjustedNode; +bool foundClickableNode = eventHandler->bestClickableNodeForTouchPoint(touchRect.center(), touchRect.size(), adjustedPoint, adjustedNode); +if (!foundClickableNode) return; + QMouseEvent* ret = new QMouseEvent(ev->type(), QPoint(adjustedPoint), ev->globalPos(), ev->button(), ev->buttons(), ev->modifiers()); delete ev; ev = ret; +#else +Q_UNUSED(ev); +#endif } -static bool hasMouseListener(Element* element) -{ -ASSERT(element); -return element->hasEventListeners(eventNames().clickEvent) -|| element->hasEventListeners(eventNames().mousedownEvent) -|| element->hasEventListeners(eventNames().mouseupEvent); -} - -static bool isClickableElement(Element* element, PassRefPtr prpList) -{ -ASSERT(element); -RefPtr list = prpList; -bool isClickable = hasMouseListener(element); -if (!isClickable && list) { -Element* parent = element->parentElement(); -unsigned count = list->length(); -for (unsigned i = 0; i < count && parent; i++) { -if (list->item(i) != parent) -continue; - -isClickable = hasMouseListener(parent); -if (isClickable) -break; - -parent = parent->parentElement(); -} -} - -ExceptionCode ec = 0; -return isClickable -|| element->webkitMatchesSelector("a,*:link,*:visited,*[role=button],button,input,select,label", ec) -|| CSSComputedStyleDeclaration::create(element)->getPropertyValue(cssPropertyID("cursor")) == "pointer"; -} - -static bool isValidFrameOwner(Element* element) -{ -ASSERT(element); -return element->isFrameOwnerElement() && static_cast(element)->contentFrame(); -} - -QWebPageAdapter::TouchAdjuster::TouchAdjuster(unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding) -: m_topPadding(topPadding) -, m_rightPadding(rightPadding) -, m_bottomPadding(bottomPadding) -, m_leftPadding(leftPadding) -{ -} - -IntPoint QWebPageAdapter::TouchAdjuster::findCandidatePointForTouch(const IntPoint& touchPoint, Document* document) const -{ -if (!document) -return IntPoint(); - -int x = touchPoint.x(); -int y = touchPoint.y(); - -RefPtr intersectedNodes = document->nodesFromRect(x, y, m_topPadding, m_rightPadding, m_bottomPadding, m_leftPadding); -if (!intersectedNodes) -return IntPoint(); - -Eleme
[webkit-changes] [143727] trunk
Title: [143727] trunk Revision 143727 Author allan.jen...@digia.com Date 2013-02-22 06:46:35 -0800 (Fri, 22 Feb 2013) Log Message Allow child-frame content in hit-tests. https://bugs.webkit.org/show_bug.cgi?id=95204 Reviewed by Julien Chaffraix. Source/WebCore: Refactors how EventHandler::hitTestResultAtPoint handles child-frame content, it is now handled by the hit test itself controlled by the AllowChildFrameContent flag in HitTestRequest. This means that area-based hit-tests can now return elements from all the child frames they intersect instead of just the one frame containing the center point. The improved results from area-based hit-tests will among other things also improve touch adjustment near frame boundaries. Tests: fast/dom/nodesFromRect/nodesFromRect-child-frame-content.html * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint): Recursion into child-frames have been moved to RenderFrameBase::nodeAtPoint, so now hitTestResultAtPoint just needs to set AllowChildFrameContent. * page/TouchAdjustment.cpp: (WebCore::TouchAdjustment::parentShadowHostOrOwner): New function to iterate up across frame boundaries. (WebCore::TouchAdjustment::compileSubtargetList): We need to iterate up across frame boundaries to avoid iframes competing with their own content for touch adjustment. * rendering/HitTestRequest.h: (WebCore::HitTestRequest::allowsChildFrameContent): (WebCore::HitTestRequest::isChildFrameHitTest): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::HitTestResult): (WebCore::HitTestResult::operator=): (WebCore::HitTestResult::append): (WebCore::HitTestResult::dictationAlternatives): * rendering/HitTestResult.h: (WebCore::HitTestResult::pointInMainFrame): (WebCore::HitTestResult::pointInInnerNodeFrame): (HitTestResult): m_hitTestLocation is now in main frame coordinates, which make m_pointInMainFrame unnecessary, but requires the introduction of m_pointInInnerFrame, to remember the coordinates of inner-node in its own frame. * rendering/RenderFrameBase.cpp: (WebCore::RenderFrameBase::nodeAtPoint): The recursion into child-frames is now handled here instead of in hitTestResultAtPoint, this allows us to recurse into multiple frames, instead of just one. * rendering/RenderFrameBase.h: (RenderFrameBase): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::hitTest): RenderLayer should not lie about being hit if the request is child-frame request. * testing/Internals.cpp: (WebCore::Internals::nodesFromRect): * testing/Internals.h: (Internals): * testing/Internals.idl: Extended so nodesFromRect with child-frame content can be tested. LayoutTests: A new tests for nodesFromRect that returns result from child frames. * fast/dom/nodesFromRect/nodesFromRect-child-frame-content-expected.txt: Added. * fast/dom/nodesFromRect/nodesFromRect-child-frame-content.html: Added. * fast/dom/nodesFromRect/nodesFromRect-continuation-crash.html: * fast/dom/nodesFromRect/resources/child-frame.html: Added. * fast/dom/nodesFromRect/resources/nodesFromRect.js: (check): (checkShadowContent): (nodesFromRectAsString): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-continuation-crash.html trunk/LayoutTests/fast/dom/nodesFromRect/resources/nodesFromRect.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/EventHandler.cpp trunk/Source/WebCore/page/TouchAdjustment.cpp trunk/Source/WebCore/rendering/HitTestRequest.h trunk/Source/WebCore/rendering/HitTestResult.cpp trunk/Source/WebCore/rendering/HitTestResult.h trunk/Source/WebCore/rendering/RenderFrameBase.cpp trunk/Source/WebCore/rendering/RenderFrameBase.h trunk/Source/WebCore/rendering/RenderLayer.cpp trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Added Paths trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-child-frame-content-expected.txt trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-child-frame-content.html trunk/LayoutTests/fast/dom/nodesFromRect/resources/child-frame.html Diff Modified: trunk/LayoutTests/ChangeLog (143726 => 143727) --- trunk/LayoutTests/ChangeLog 2013-02-22 14:39:42 UTC (rev 143726) +++ trunk/LayoutTests/ChangeLog 2013-02-22 14:46:35 UTC (rev 143727) @@ -1,3 +1,21 @@ +2013-02-22 Allan Sandfeld Jensen + +Allow child-frame content in hit-tests. +https://bugs.webkit.org/show_bug.cgi?id=95204 + +Reviewed by Julien Chaffraix. + +A new tests for nodesFromRect that returns result from child frames. + +* fast/dom/nodesFromRect/nodesFromRect-child-frame-content-expected.txt: Added. +* fast/dom/nodesFromRect/nodesFromRect-child-frame-content.html: Added. +* fast/dom/nodesFromRect/nodesFromRect-continuation-crash.html: +* fast/dom/nodesFromRect/resources/child-frame.html: Added. +* fast/dom/nodesFromRect/resources/nodesFromRect.js: +(check):
[webkit-changes] [143730] trunk/Source/WebCore
Title: [143730] trunk/Source/WebCore Revision 143730 Author allan.jen...@digia.com Date 2013-02-22 08:12:40 -0800 (Fri, 22 Feb 2013) Log Message Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727 https://bugs.webkit.org/show_bug.cgi?id=110609 Reviewed by Antonio Gomes. Point based hit tests should not append but assign HitTestResults. * rendering/RenderFrameBase.cpp: (WebCore::RenderFrameBase::nodeAtPoint): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderFrameBase.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (143729 => 143730) --- trunk/Source/WebCore/ChangeLog 2013-02-22 15:54:12 UTC (rev 143729) +++ trunk/Source/WebCore/ChangeLog 2013-02-22 16:12:40 UTC (rev 143730) @@ -1,3 +1,15 @@ +2013-02-22 Allan Sandfeld Jensen + +Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727 +https://bugs.webkit.org/show_bug.cgi?id=110609 + +Reviewed by Antonio Gomes. + +Point based hit tests should not append but assign HitTestResults. + +* rendering/RenderFrameBase.cpp: +(WebCore::RenderFrameBase::nodeAtPoint): + 2013-02-22 Andrey Lushnikov Web Inspector: show source location after drawer views Modified: trunk/Source/WebCore/rendering/RenderFrameBase.cpp (143729 => 143730) --- trunk/Source/WebCore/rendering/RenderFrameBase.cpp 2013-02-22 15:54:12 UTC (rev 143729) +++ trunk/Source/WebCore/rendering/RenderFrameBase.cpp 2013-02-22 16:12:40 UTC (rev 143730) @@ -121,7 +121,12 @@ HitTestResult childFrameResult(newHitTestLocation); bool isInsideChildFrame = childRoot->hitTest(newHitTestRequest, newHitTestLocation, childFrameResult); -result.append(childFrameResult); + +if (newHitTestLocation.isRectBasedTest()) +result.append(childFrameResult); +else if (isInsideChildFrame) +result = childFrameResult; + if (isInsideChildFrame) return true; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [143744] trunk/Source/WebCore
Title: [143744] trunk/Source/WebCore Revision 143744 Author allan.jen...@digia.com Date 2013-02-22 09:53:07 -0800 (Fri, 22 Feb 2013) Log Message Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727 https://bugs.webkit.org/show_bug.cgi?id=110609 Reviewed by Antonio Gomes. Revert r128869. InnerNode may now again be from a child document, and should be handled and not asserted against. * dom/Document.cpp: (WebCore::Document::updateHoverActiveState): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (143743 => 143744) --- trunk/Source/WebCore/ChangeLog 2013-02-22 17:47:51 UTC (rev 143743) +++ trunk/Source/WebCore/ChangeLog 2013-02-22 17:53:07 UTC (rev 143744) @@ -1,3 +1,16 @@ +2013-02-22 Allan Sandfeld Jensen + +Multiple Layout Test crashes (ASSERT) on chromium linux debug after r143727 +https://bugs.webkit.org/show_bug.cgi?id=110609 + +Reviewed by Antonio Gomes. + +Revert r128869. InnerNode may now again be from a child document, +and should be handled and not asserted against. + +* dom/Document.cpp: +(WebCore::Document::updateHoverActiveState): + 2013-02-22 Andreas Kling Element: Make updateName/updateId/updateLabel private. Modified: trunk/Source/WebCore/dom/Document.cpp (143743 => 143744) --- trunk/Source/WebCore/dom/Document.cpp 2013-02-22 17:47:51 UTC (rev 143743) +++ trunk/Source/WebCore/dom/Document.cpp 2013-02-22 17:53:07 UTC (rev 143744) @@ -5804,7 +5804,8 @@ return; Element* innerElementInDocument = result.innerElement(); -ASSERT(!innerElementInDocument || innerElementInDocument->document() == this); +while (innerNodeInDocument && innerNodeInDocument->document() != this) +innerNodeInDocument = innerNodeInDocument->document()->ownerElement(); Element* oldActiveElement = activeElement(); if (oldActiveElement && !request.active()) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [143747] trunk/Source/WebCore
Title: [143747] trunk/Source/WebCore Revision 143747 Author allan.jen...@digia.com Date 2013-02-22 10:07:36 -0800 (Fri, 22 Feb 2013) Log Message Unreviewed build-fix after r143744. * dom/Document.cpp: (WebCore::Document::updateHoverActiveState): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (143746 => 143747) --- trunk/Source/WebCore/ChangeLog 2013-02-22 18:05:32 UTC (rev 143746) +++ trunk/Source/WebCore/ChangeLog 2013-02-22 18:07:36 UTC (rev 143747) @@ -1,3 +1,10 @@ +2013-02-22 Allan Sandfeld Jensen + +Unreviewed build-fix after r143744. + +* dom/Document.cpp: +(WebCore::Document::updateHoverActiveState): + 2013-02-22 Andrey Adaikin Web Inspector: [Canvas] throttle replayTraceLog messages to backend Modified: trunk/Source/WebCore/dom/Document.cpp (143746 => 143747) --- trunk/Source/WebCore/dom/Document.cpp 2013-02-22 18:05:32 UTC (rev 143746) +++ trunk/Source/WebCore/dom/Document.cpp 2013-02-22 18:07:36 UTC (rev 143747) @@ -5804,8 +5804,8 @@ return; Element* innerElementInDocument = result.innerElement(); -while (innerNodeInDocument && innerNodeInDocument->document() != this) -innerNodeInDocument = innerNodeInDocument->document()->ownerElement(); +while (innerElementInDocument && innerElementInDocument->document() != this) +innerElementInDocument = innerElementInDocument->document()->ownerElement(); Element* oldActiveElement = activeElement(); if (oldActiveElement && !request.active()) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144078] trunk/Source/WebCore
Title: [144078] trunk/Source/WebCore Revision 144078 Author allan.jen...@digia.com Date 2013-02-26 11:00:07 -0800 (Tue, 26 Feb 2013) Log Message [TexMap] Ignore layer repaint request when drawsContent is false https://bugs.webkit.org/show_bug.cgi?id=110888 Reviewed by Noam Rosenthal. As long as drawsContent is false we should ignore requests for repaints. A full repaint will be requested when drawsContent is changed to true. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::setNeedsDisplay): (WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect): (WebCore::GraphicsLayerTextureMapper::setDrawsContent): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144077 => 144078) --- trunk/Source/WebCore/ChangeLog 2013-02-26 18:55:12 UTC (rev 144077) +++ trunk/Source/WebCore/ChangeLog 2013-02-26 19:00:07 UTC (rev 144078) @@ -1,3 +1,18 @@ +2013-02-26 Allan Sandfeld Jensen + +[TexMap] Ignore layer repaint request when drawsContent is false +https://bugs.webkit.org/show_bug.cgi?id=110888 + +Reviewed by Noam Rosenthal. + +As long as drawsContent is false we should ignore requests for repaints. +A full repaint will be requested when drawsContent is changed to true. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay): +(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect): +(WebCore::GraphicsLayerTextureMapper::setDrawsContent): + 2013-02-26 Joshua Bell IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex() Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (144077 => 144078) --- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-26 18:55:12 UTC (rev 144077) +++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-26 19:00:07 UTC (rev 144078) @@ -87,7 +87,7 @@ */ void GraphicsLayerTextureMapper::setNeedsDisplay() { -if (!m_hasOwnBackingStore) +if (!drawsContent() || !m_hasOwnBackingStore) return; m_needsDisplay = true; @@ -107,7 +107,7 @@ */ void GraphicsLayerTextureMapper::setNeedsDisplayInRect(const FloatRect& rect) { -if (!m_hasOwnBackingStore) +if (!drawsContent() || !m_hasOwnBackingStore) return; if (m_needsDisplay) @@ -277,8 +277,8 @@ { if (value == drawsContent()) return; +GraphicsLayer::setDrawsContent(value); notifyChange(DrawsContentChange); -GraphicsLayer::setDrawsContent(value); if (value && m_hasOwnBackingStore) setNeedsDisplay(); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144183] trunk/Source/WebCore
Title: [144183] trunk/Source/WebCore Revision 144183 Author allan.jen...@digia.com Date 2013-02-27 07:27:21 -0800 (Wed, 27 Feb 2013) Log Message [TexMap] Flickering after transitions on Apple HTML5 demo https://bugs.webkit.org/show_bug.cgi?id=102501 Reviewed by Noam Rosenthal. Notify about animation start after the new animation is actually commited. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper): (WebCore::GraphicsLayerTextureMapper::commitLayerChanges): (WebCore::GraphicsLayerTextureMapper::addAnimation): * platform/graphics/texmap/GraphicsLayerTextureMapper.h: (GraphicsLayerTextureMapper): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h Diff Modified: trunk/Source/WebCore/ChangeLog (144182 => 144183) --- trunk/Source/WebCore/ChangeLog 2013-02-27 15:11:54 UTC (rev 144182) +++ trunk/Source/WebCore/ChangeLog 2013-02-27 15:27:21 UTC (rev 144183) @@ -1,3 +1,19 @@ +2013-02-27 Allan Sandfeld Jensen + +[TexMap] Flickering after transitions on Apple HTML5 demo +https://bugs.webkit.org/show_bug.cgi?id=102501 + +Reviewed by Noam Rosenthal. + +Notify about animation start after the new animation is actually commited. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper): +(WebCore::GraphicsLayerTextureMapper::commitLayerChanges): +(WebCore::GraphicsLayerTextureMapper::addAnimation): +* platform/graphics/texmap/GraphicsLayerTextureMapper.h: +(GraphicsLayerTextureMapper): + 2013-02-27 Vivek Galatage Web Inspector: Refactor AuditsPanel with AuditController as newly introduced entity Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (144182 => 144183) --- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-27 15:11:54 UTC (rev 144182) +++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-27 15:27:21 UTC (rev 144183) @@ -56,7 +56,7 @@ , m_fixedToViewport(false) , m_debugBorderWidth(0) , m_contentsLayer(0) -, m_animationStartedTimer(this, &GraphicsLayerTextureMapper::animationStartedTimerFired) +, m_animationStartTime(0) { } @@ -537,6 +537,9 @@ if (m_changeMask & AnimationChange) m_layer->setAnimations(m_animations); +if (m_changeMask & AnimationStarted) +client()->notifyAnimationStarted(this, m_animationStartTime); + if (m_changeMask & FixedToViewporChange) m_layer->setFixedToViewport(fixedToViewport()); @@ -610,9 +613,10 @@ if (valueList.property() == AnimatedPropertyWebkitTransform) listsMatch = validateTransformOperations(valueList, hasBigRotation) >= 0; -m_animations.add(GraphicsLayerAnimation(keyframesName, valueList, boxSize, anim, WTF::currentTime() - timeOffset, listsMatch)); +m_animationStartTime = WTF::currentTime() - timeOffset; +m_animations.add(GraphicsLayerAnimation(keyframesName, valueList, boxSize, anim, m_animationStartTime, listsMatch)); notifyChange(AnimationChange); -m_animationStartedTimer.startOneShot(0); +notifyChange(AnimationStarted); return true; } @@ -633,11 +637,6 @@ m_animations.remove(animationName); } -void GraphicsLayerTextureMapper::animationStartedTimerFired(Timer*) -{ -client()->notifyAnimationStarted(this, /* DOM time */ WTF::currentTime()); -} - #if ENABLE(CSS_FILTERS) bool GraphicsLayerTextureMapper::setFilters(const FilterOperations& filters) { Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h (144182 => 144183) --- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h 2013-02-27 15:11:54 UTC (rev 144182) +++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.h 2013-02-27 15:27:21 UTC (rev 144183) @@ -104,7 +104,6 @@ void updateBackingStoreIfNeeded(); void prepareBackingStoreIfNeeded(); bool shouldHaveBackingStore() const; -void animationStartedTimerFired(Timer*); // This set of flags help us defer which properties of the layer have been // modified by the compositor, so we can know what to look for in the next flush. @@ -143,7 +142,8 @@ DebugVisualsChange =(1L << 24), RepaintCountChange =(1L << 25), -FixedToViewporChange = (1L << 26) +FixedToViewporChange = (1L << 26), +AnimationStarted = (1L << 27) }; void notifyChange(ChangeMask); @@ -164,7 +164,7 @@ TextureMapperPlatformLayer* m_contentsLayer; FloatRect m_needsDisplayRect; GraphicsLayerAnimations m_animations; -Timer m_animationStartedTimer; +double m_an
[webkit-changes] [144191] trunk/Source/WebCore
Title: [144191] trunk/Source/WebCore Revision 144191 Author allan.jen...@digia.com Date 2013-02-27 08:18:14 -0800 (Wed, 27 Feb 2013) Log Message [Qt] Flash objects won't load until scrolling page https://bugs.webkit.org/show_bug.cgi?id=110149 Reviewed by Simon Hausmann. Revert r134222. The issue from bug 101836 is no longer reproducable, and the fix was causing flash objects to not load properly. * plugins/PluginPackage.cpp: (WebCore::PluginPackage::determineQuirks): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/plugins/PluginPackage.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144190 => 144191) --- trunk/Source/WebCore/ChangeLog 2013-02-27 16:16:16 UTC (rev 144190) +++ trunk/Source/WebCore/ChangeLog 2013-02-27 16:18:14 UTC (rev 144191) @@ -1,3 +1,16 @@ +2013-02-27 Allan Sandfeld Jensen + +[Qt] Flash objects won't load until scrolling page +https://bugs.webkit.org/show_bug.cgi?id=110149 + +Reviewed by Simon Hausmann. + +Revert r134222. The issue from bug 101836 is no longer reproducable, +and the fix was causing flash objects to not load properly. + +* plugins/PluginPackage.cpp: +(WebCore::PluginPackage::determineQuirks): + 2013-02-27 No'am Rosenthal [Texmap] TextureMapper is too eager to use intermediate surfaces Modified: trunk/Source/WebCore/plugins/PluginPackage.cpp (144190 => 144191) --- trunk/Source/WebCore/plugins/PluginPackage.cpp 2013-02-27 16:16:16 UTC (rev 144190) +++ trunk/Source/WebCore/plugins/PluginPackage.cpp 2013-02-27 16:18:14 UTC (rev 144191) @@ -206,9 +206,7 @@ } #if PLATFORM(QT) -// Flash will crash on repeated calls to SetWindow in windowed mode. -// Defer the setWindow, so we don't set it to the wrong size too early. -m_quirks.add(PluginQuirkDeferFirstSetWindowCall); +// Flash will crash on repeated calls to SetWindow in windowed mode m_quirks.add(PluginQuirkDontCallSetWindowMoreThanOnce); #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144204] trunk/Source/WebCore
Title: [144204] trunk/Source/WebCore Revision 144204 Author allan.jen...@digia.com Date 2013-02-27 09:42:08 -0800 (Wed, 27 Feb 2013) Log Message [TexMap] REGRESSION(144183): It make negative delay tests fails https://bugs.webkit.org/show_bug.cgi?id=110989 Reviewed by Noam Rosenthal. Do not apply a negative offset to the animation starttime send to the GraphicLayerClient, it needs the actual animation start not a virtual start. * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: (WebCore::GraphicsLayerTextureMapper::addAnimation): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144203 => 144204) --- trunk/Source/WebCore/ChangeLog 2013-02-27 17:35:04 UTC (rev 144203) +++ trunk/Source/WebCore/ChangeLog 2013-02-27 17:42:08 UTC (rev 144204) @@ -1,3 +1,16 @@ +2013-02-27 Allan Sandfeld Jensen + +[TexMap] REGRESSION(144183): It make negative delay tests fails +https://bugs.webkit.org/show_bug.cgi?id=110989 + +Reviewed by Noam Rosenthal. + +Do not apply a negative offset to the animation starttime send to the GraphicLayerClient, +it needs the actual animation start not a virtual start. + +* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp: +(WebCore::GraphicsLayerTextureMapper::addAnimation): + 2013-02-27 Aaron Colwell Fix SourceBufferList so SourceBuffer.append() calls are always rejected after the MediaSource is closed. Modified: trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp (144203 => 144204) --- trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-27 17:35:04 UTC (rev 144203) +++ trunk/Source/WebCore/platform/graphics/texmap/GraphicsLayerTextureMapper.cpp 2013-02-27 17:42:08 UTC (rev 144204) @@ -613,8 +613,13 @@ if (valueList.property() == AnimatedPropertyWebkitTransform) listsMatch = validateTransformOperations(valueList, hasBigRotation) >= 0; -m_animationStartTime = WTF::currentTime() - timeOffset; -m_animations.add(GraphicsLayerAnimation(keyframesName, valueList, boxSize, anim, m_animationStartTime, listsMatch)); +const double currentTime = WTF::currentTime(); +m_animations.add(GraphicsLayerAnimation(keyframesName, valueList, boxSize, anim, currentTime - timeOffset, listsMatch)); +// m_animationStartTime is the time of the first real frame of animation, now or delayed by a negative offset. +if (timeOffset > 0) +m_animationStartTime = currentTime; +else +m_animationStartTime = currentTime - timeOffset; notifyChange(AnimationChange); notifyChange(AnimationStarted); return true; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144208] trunk
Title: [144208] trunk Revision 144208 Author allan.jen...@digia.com Date 2013-02-27 10:18:13 -0800 (Wed, 27 Feb 2013) Log Message Switch QtWebKit to GStreamer 1.0. https://bugs.webkit.org/show_bug.cgi?id=106669. Original patch by Sebastian Dröge. Reviewed by Csaba Osztrogonác. Source/WebCore: * WebCore.pri: Tools: Build with GStreamer 1.0 if available, but support GStreamer 0.10 temporarily to make upgrading easy and the patch suitable for Qt5. * qmake/mkspecs/features/features.prf: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.pri trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.prf Diff Modified: trunk/Source/WebCore/ChangeLog (144207 => 144208) --- trunk/Source/WebCore/ChangeLog 2013-02-27 18:01:48 UTC (rev 144207) +++ trunk/Source/WebCore/ChangeLog 2013-02-27 18:18:13 UTC (rev 144208) @@ -1,3 +1,13 @@ +2013-02-27 Allan Sandfeld Jensen + +Switch QtWebKit to GStreamer 1.0. +https://bugs.webkit.org/show_bug.cgi?id=106669. + +Original patch by Sebastian Dröge. +Reviewed by Csaba Osztrogonác. + +* WebCore.pri: + 2013-02-27 Eli Fidler [BlackBerry] Fix BlackBerry::Platform::String to WTF::String conversion when the string is Latin-1-encoded. Modified: trunk/Source/WebCore/WebCore.pri (144207 => 144208) --- trunk/Source/WebCore/WebCore.pri 2013-02-27 18:01:48 UTC (rev 144207) +++ trunk/Source/WebCore/WebCore.pri 2013-02-27 18:18:13 UTC (rev 144208) @@ -170,7 +170,13 @@ use?(GSTREAMER) { DEFINES += WTF_USE_GLIB=1 -PKGCONFIG += glib-2.0 gio-2.0 gstreamer-0.10 gstreamer-app-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-pbutils-0.10 gstreamer-plugins-base-0.10 gstreamer-video-0.10 +use?(GSTREAMER010) { +PKGCONFIG += glib-2.0 gio-2.0 gstreamer-0.10 gstreamer-app-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-pbutils-0.10 gstreamer-plugins-base-0.10 gstreamer-video-0.10 +} else { +DEFINES += GST_API_VERSION=1.0 +DEFINES += GST_API_VERSION_1 +PKGCONFIG += glib-2.0 gio-2.0 gstreamer-1.0 gstreamer-app-1.0 gstreamer-base-1.0 gstreamer-pbutils-1.0 gstreamer-plugins-base-1.0 gstreamer-video-1.0 gstreamer-audio-1.0 +} } enable?(VIDEO) { @@ -212,7 +218,11 @@ use?(GSTREAMER) { DEFINES += WTF_USE_WEBAUDIO_GSTREAMER=1 INCLUDEPATH += $$SOURCE_DIR/platform/audio/gstreamer -PKGCONFIG += gstreamer-audio-0.10 gstreamer-fft-0.10 +use?(GSTREAMER010) { +PKGCONFIG += gstreamer-audio-0.10 gstreamer-fft-0.10 +} else { +PKGCONFIG += gstreamer-audio-1.0 gstreamer-fft-1.0 +} } } Modified: trunk/Tools/ChangeLog (144207 => 144208) --- trunk/Tools/ChangeLog 2013-02-27 18:01:48 UTC (rev 144207) +++ trunk/Tools/ChangeLog 2013-02-27 18:18:13 UTC (rev 144208) @@ -1,3 +1,16 @@ +2013-02-27 Allan Sandfeld Jensen + +Switch QtWebKit to GStreamer 1.0. +https://bugs.webkit.org/show_bug.cgi?id=106669. + +Original patch by Sebastian Dröge. +Reviewed by Csaba Osztrogonác. + +Build with GStreamer 1.0 if available, but support GStreamer 0.10 +temporarily to make upgrading easy and the patch suitable for Qt5. + +* qmake/mkspecs/features/features.prf: + 2013-02-27 Szilard Ledan Unreviewed. Added myself to committers.py Modified: trunk/Tools/qmake/mkspecs/features/features.prf (144207 => 144208) --- trunk/Tools/qmake/mkspecs/features/features.prf 2013-02-27 18:01:48 UTC (rev 144207) +++ trunk/Tools/qmake/mkspecs/features/features.prf 2013-02-27 18:18:13 UTC (rev 144208) @@ -113,8 +113,10 @@ } } else: linux-* { -!contains(QT_CONFIG, no-pkg-config):packagesExist("glib-2.0 gio-2.0 \'gstreamer-0.10 >= 0.10.30\' \'gstreamer-plugins-base-0.10 >= 0.10.30\'") { +!contains(QT_CONFIG, no-pkg-config):packagesExist("glib-2.0 gio-2.0 gstreamer-1.0 gstreamer-plugins-base-1.0") { WEBKIT_CONFIG += video use_gstreamer +} else:!contains(QT_CONFIG, no-pkg-config):packagesExist("glib-2.0 gio-2.0 \'gstreamer-0.10 >= 0.10.30\' \'gstreamer-plugins-base-0.10 >= 0.10.30\'") { +WEBKIT_CONFIG += video use_gstreamer use_gstreamer010 } else { CONFIGURE_WARNINGS += "Missing GLib/Gio/GStreamer, disabling media element support" } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144290] trunk/Source/WebCore
Title: [144290] trunk/Source/WebCore Revision 144290 Author allan.jen...@digia.com Date 2013-02-28 03:58:37 -0800 (Thu, 28 Feb 2013) Log Message REGRESSION(r144169): It broke clipping https://bugs.webkit.org/show_bug.cgi?id=111065 Reviewed by Noam Rosenthal. The clipstack was not marked dirty when new clips were added leading to clipping never being applied. * platform/graphics/texmap/TextureMapperGL.cpp: (WebCore::TextureMapperGL::ClipStack::push): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144289 => 144290) --- trunk/Source/WebCore/ChangeLog 2013-02-28 11:50:31 UTC (rev 144289) +++ trunk/Source/WebCore/ChangeLog 2013-02-28 11:58:37 UTC (rev 144290) @@ -1,3 +1,16 @@ +2013-02-28 Allan Sandfeld Jensen + +REGRESSION(r144169): It broke clipping +https://bugs.webkit.org/show_bug.cgi?id=111065 + +Reviewed by Noam Rosenthal. + +The clipstack was not marked dirty when new clips were added +leading to clipping never being applied. + +* platform/graphics/texmap/TextureMapperGL.cpp: +(WebCore::TextureMapperGL::ClipStack::push): + 2013-02-28 Tamas Czene OpenCL implementation of FEImage SVG Filter. Modified: trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp (144289 => 144290) --- trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp 2013-02-28 11:50:31 UTC (rev 144289) +++ trunk/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp 2013-02-28 11:58:37 UTC (rev 144290) @@ -185,6 +185,7 @@ void TextureMapperGL::ClipStack::push() { clipStack.append(clipState); +clipStateDirty = true; } void TextureMapperGL::ClipStack::pop() ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144300] trunk
Title: [144300] trunk Revision 144300 Author allan.jen...@digia.com Date 2013-02-28 05:57:42 -0800 (Thu, 28 Feb 2013) Log Message [Qt] Enable CANVAS_PATH flag https://bugs.webkit.org/show_bug.cgi?id=108508 Reviewed by Simon Hausmann. Tools: Also enable CANVAS_PATH flag for Qt. * qmake/mkspecs/features/features.pri: LayoutTests: Unskip CANVAS_PATH tests. * platform/qt/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt/TestExpectations trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.pri Diff Modified: trunk/LayoutTests/ChangeLog (144299 => 144300) --- trunk/LayoutTests/ChangeLog 2013-02-28 13:41:13 UTC (rev 144299) +++ trunk/LayoutTests/ChangeLog 2013-02-28 13:57:42 UTC (rev 144300) @@ -1,3 +1,14 @@ +2013-02-28 Allan Sandfeld Jensen + +[Qt] Enable CANVAS_PATH flag +https://bugs.webkit.org/show_bug.cgi?id=108508 + +Reviewed by Simon Hausmann. + +Unskip CANVAS_PATH tests. + +* platform/qt/TestExpectations: + 2013-02-28 Ádám Kallai [Qt] Unreviewed gardening. Modified: trunk/LayoutTests/platform/qt/TestExpectations (144299 => 144300) --- trunk/LayoutTests/platform/qt/TestExpectations 2013-02-28 13:41:13 UTC (rev 144299) +++ trunk/LayoutTests/platform/qt/TestExpectations 2013-02-28 13:57:42 UTC (rev 144300) @@ -90,11 +90,6 @@ # ENABLE_GAMEPAD not enabled. gamepad/ -# Remove from list after enabling CANVAS_PATH -fast/canvas/canvas-currentPath.html -fast/canvas/canvas-path-constructors.html -fast/canvas/canvas-currentPath-crash.html - # ENABLE(INPUT_SPEECH) is disabled. fast/speech Modified: trunk/Tools/ChangeLog (144299 => 144300) --- trunk/Tools/ChangeLog 2013-02-28 13:41:13 UTC (rev 144299) +++ trunk/Tools/ChangeLog 2013-02-28 13:57:42 UTC (rev 144300) @@ -1,3 +1,14 @@ +2013-02-28 Allan Sandfeld Jensen + +[Qt] Enable CANVAS_PATH flag +https://bugs.webkit.org/show_bug.cgi?id=108508 + +Reviewed by Simon Hausmann. + +Also enable CANVAS_PATH flag for Qt. + +* qmake/mkspecs/features/features.pri: + 2013-02-28 Andras Becsi [Qt][TestWebKitAPI] The activeBuildConfig() function has been replaced with targetSubDir() Modified: trunk/Tools/qmake/mkspecs/features/features.pri (144299 => 144300) --- trunk/Tools/qmake/mkspecs/features/features.pri 2013-02-28 13:41:13 UTC (rev 144299) +++ trunk/Tools/qmake/mkspecs/features/features.pri 2013-02-28 13:57:42 UTC (rev 144300) @@ -17,6 +17,7 @@ ENABLE_ACCELERATED_2D_CANVAS=0 \ ENABLE_BATTERY_STATUS=0 \ ENABLE_BLOB=1 \ +ENABLE_CANVAS_PATH=1 \ ENABLE_CANVAS_PROXY=0 \ ENABLE_CHANNEL_MESSAGING=1 \ ENABLE_CSP_NEXT=0 \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144438] trunk/Tools
Title: [144438] trunk/Tools Revision 144438 Author allan.jen...@digia.com Date 2013-03-01 04:01:57 -0800 (Fri, 01 Mar 2013) Log Message [Qt] Update features.pri with new features https://bugs.webkit.org/show_bug.cgi?id=57 Reviewed by Jocelyn Turcotte. * qmake/mkspecs/features/features.pri: Modified Paths trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.pri Diff Modified: trunk/Tools/ChangeLog (144437 => 144438) --- trunk/Tools/ChangeLog 2013-03-01 11:46:22 UTC (rev 144437) +++ trunk/Tools/ChangeLog 2013-03-01 12:01:57 UTC (rev 144438) @@ -1,3 +1,12 @@ +2013-03-01 Allan Sandfeld Jensen + +[Qt] Update features.pri with new features +https://bugs.webkit.org/show_bug.cgi?id=57 + +Reviewed by Jocelyn Turcotte. + +* qmake/mkspecs/features/features.pri: + 2013-03-01 Jochen Eisinger [chromium] put WebTestProxy::scheduleComposite back in place Modified: trunk/Tools/qmake/mkspecs/features/features.pri (144437 => 144438) --- trunk/Tools/qmake/mkspecs/features/features.pri 2013-03-01 11:46:22 UTC (rev 144437) +++ trunk/Tools/qmake/mkspecs/features/features.pri 2013-03-01 12:01:57 UTC (rev 144438) @@ -95,6 +95,7 @@ ENABLE_PROXIMITY_EVENTS=0 \ ENABLE_QUOTA=0 \ ENABLE_RESOLUTION_MEDIA_QUERY=1 \ +ENABLE_RESOURCE_TIMING=0 \ ENABLE_REQUEST_ANIMATION_FRAME=1 \ ENABLE_SCRIPTED_SPEECH=0 \ ENABLE_SHADOW_DOM=0 \ @@ -105,11 +106,13 @@ ENABLE_SVG=1 \ ENABLE_SVG_DOM_OBJC_BINDINGS=0 \ ENABLE_SVG_FONTS=1 \ +ENABLE_TEMPLATE_ELEMENT=0 \ ENABLE_TEXT_AUTOSIZING=0 \ ENABLE_TEXT_NOTIFICATIONS_ONLY=0 \ ENABLE_TOUCH_ADJUSTMENT=1 \ ENABLE_TOUCH_EVENTS=1 \ ENABLE_TOUCH_ICON_LOADING=0 \ +ENABLE_USER_TIMING=0 \ ENABLE_VIBRATION=0 \ ENABLE_VIDEO=0 \ ENABLE_VIDEO_TRACK=0 \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144441] trunk
Title: [11] trunk Revision 11 Author allan.jen...@digia.com Date 2013-03-01 04:17:20 -0800 (Fri, 01 Mar 2013) Log Message [Qt] Enable LINK_PREFETCH https://bugs.webkit.org/show_bug.cgi?id=58 Reviewed by Simon Hausmann. Tools: * qmake/mkspecs/features/features.pri: LayoutTests: Unskip tests depending on LINK_PREFETCH. * platform/qt/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt/TestExpectations trunk/Tools/ChangeLog trunk/Tools/qmake/mkspecs/features/features.pri Diff Modified: trunk/LayoutTests/ChangeLog (10 => 11) --- trunk/LayoutTests/ChangeLog 2013-03-01 12:05:16 UTC (rev 10) +++ trunk/LayoutTests/ChangeLog 2013-03-01 12:17:20 UTC (rev 11) @@ -1,3 +1,14 @@ +2013-03-01 Allan Sandfeld Jensen + +[Qt] Enable LINK_PREFETCH +https://bugs.webkit.org/show_bug.cgi?id=58 + +Reviewed by Simon Hausmann. + +Unskip tests depending on LINK_PREFETCH. + +* platform/qt/TestExpectations: + 2013-03-01 Vsevolod Vlasov Flaky test: http/tests/inspector/resource-tree/resource-request-content-while-loading.html Modified: trunk/LayoutTests/platform/qt/TestExpectations (10 => 11) --- trunk/LayoutTests/platform/qt/TestExpectations 2013-03-01 12:05:16 UTC (rev 10) +++ trunk/LayoutTests/platform/qt/TestExpectations 2013-03-01 12:17:20 UTC (rev 11) @@ -156,18 +156,6 @@ inspector/profiler/webgl webgl/ -# ENABLE(LINK_PREFETCH) is disabled. -fast/dom/HTMLLinkElement/link-and-subresource-test.html -fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.html -fast/dom/HTMLLinkElement/prefetch.html -fast/dom/HTMLLinkElement/prefetch-beforeload.html -fast/dom/HTMLLinkElement/prefetch-onerror.html -fast/dom/HTMLLinkElement/prefetch-onload.html -fast/dom/HTMLLinkElement/prefetch-too-many-clients.html -fast/dom/HTMLLinkElement/subresource.html -http/tests/misc/link-rel-prefetch-and-subresource.html -http/tests/misc/prefetch-purpose.html - # ENABLE(LINK_PRERENDER) is disabled. fast/dom/HTMLLinkElement/prerender-insert-after-stop.html fast/dom/HTMLLinkElement/prerender-remove-after-stop.html Modified: trunk/Tools/ChangeLog (10 => 11) --- trunk/Tools/ChangeLog 2013-03-01 12:05:16 UTC (rev 10) +++ trunk/Tools/ChangeLog 2013-03-01 12:17:20 UTC (rev 11) @@ -1,5 +1,14 @@ 2013-03-01 Allan Sandfeld Jensen +[Qt] Enable LINK_PREFETCH +https://bugs.webkit.org/show_bug.cgi?id=58 + +Reviewed by Simon Hausmann. + +* qmake/mkspecs/features/features.pri: + +2013-03-01 Allan Sandfeld Jensen + [Qt] Update features.pri with new features https://bugs.webkit.org/show_bug.cgi?id=57 Modified: trunk/Tools/qmake/mkspecs/features/features.pri (10 => 11) --- trunk/Tools/qmake/mkspecs/features/features.pri 2013-03-01 12:05:16 UTC (rev 10) +++ trunk/Tools/qmake/mkspecs/features/features.pri 2013-03-01 12:17:20 UTC (rev 11) @@ -74,7 +74,7 @@ ENABLE_LEGACY_VIEWPORT_ADAPTION=1 \ ENABLE_LEGACY_VENDOR_PREFIXES=1 \ ENABLE_LEGACY_WEB_AUDIO=1 \ -ENABLE_LINK_PREFETCH=0 \ +ENABLE_LINK_PREFETCH=1 \ ENABLE_LINK_PRERENDER=0 \ ENABLE_MATHML=0 \ ENABLE_MEDIA_SOURCE=0 \ ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144627] trunk/Source/WebCore
Title: [144627] trunk/Source/WebCore Revision 144627 Author allan.jen...@digia.com Date 2013-03-04 07:53:02 -0800 (Mon, 04 Mar 2013) Log Message [Qt] REGRESSION(r141240) Crash in PluginPackage::fetchInfo https://bugs.webkit.org/show_bug.cgi?id=111322 Reviewed by Simon Hausmann. Do not try to load blacklisted plugins. * plugins/qt/PluginPackageQt.cpp: (WebCore::PluginPackage::fetchInfo): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/plugins/qt/PluginPackageQt.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144626 => 144627) --- trunk/Source/WebCore/ChangeLog 2013-03-04 15:09:04 UTC (rev 144626) +++ trunk/Source/WebCore/ChangeLog 2013-03-04 15:53:02 UTC (rev 144627) @@ -1,3 +1,15 @@ +2013-03-04 Allan Sandfeld Jensen + +[Qt] REGRESSION(r141240) Crash in PluginPackage::fetchInfo +https://bugs.webkit.org/show_bug.cgi?id=111322 + +Reviewed by Simon Hausmann. + +Do not try to load blacklisted plugins. + +* plugins/qt/PluginPackageQt.cpp: +(WebCore::PluginPackage::fetchInfo): + 2013-03-04 Alexis Menard transition properties can't be found in CSSStyleDeclaration Modified: trunk/Source/WebCore/plugins/qt/PluginPackageQt.cpp (144626 => 144627) --- trunk/Source/WebCore/plugins/qt/PluginPackageQt.cpp 2013-03-04 15:09:04 UTC (rev 144626) +++ trunk/Source/WebCore/plugins/qt/PluginPackageQt.cpp 2013-03-04 15:53:02 UTC (rev 144627) @@ -39,6 +39,8 @@ bool PluginPackage::fetchInfo() { if (!m_module) { +if (isPluginBlacklisted()) +return false; m_module = new QLibrary((QString)m_path); m_module->setLoadHints(QLibrary::ResolveAllSymbolsHint); if (!m_module->load()) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144901] trunk
Title: [144901] trunk Revision 144901 Author allan.jen...@digia.com Date 2013-03-06 01:59:22 -0800 (Wed, 06 Mar 2013) Log Message REGGRESSION (r142112): It made compositing tests fail on EFL, Qt. https://bugs.webkit.org/show_bug.cgi?id=109291 Reviewed by Kenneth Rohde Christiansen. Source/WebCore: Report we support fixed layers. * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h: (WebCore::ScrollingCoordinatorCoordinatedGraphics::supportsFixedPositionLayers): (ScrollingCoordinatorCoordinatedGraphics): LayoutTests: Unskip now passing test, and move baselines specific to having no scrolling-coordinator to WK1. * platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png. * platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt. * platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png. * platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt. * platform/qt-5.0-wk2/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/qt-5.0-wk2/TestExpectations trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.h Added Paths trunk/LayoutTests/platform/qt-5.0-wk1/scrollingcoordinator/ trunk/LayoutTests/platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png trunk/LayoutTests/platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt trunk/LayoutTests/platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png trunk/LayoutTests/platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt Removed Paths trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (144900 => 144901) --- trunk/LayoutTests/ChangeLog 2013-03-06 09:53:13 UTC (rev 144900) +++ trunk/LayoutTests/ChangeLog 2013-03-06 09:59:22 UTC (rev 144901) @@ -1,3 +1,18 @@ +2013-03-06 Allan Sandfeld Jensen + +REGGRESSION (r142112): It made compositing tests fail on EFL, Qt. +https://bugs.webkit.org/show_bug.cgi?id=109291 + +Reviewed by Kenneth Rohde Christiansen. + +Unskip now passing test, and move baselines specific to having no scrolling-coordinator to WK1. + +* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png. +* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt. +* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.png. +* platform/qt-5.0-wk1/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt: Renamed from LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-transformed-iframe-expected.txt. +* platform/qt-5.0-wk2/TestExpectations: + 2013-03-06 Hayato Ito Unreviewed gardening. Deleted: trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.png (Binary files differ) Deleted: trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt (144900 => 144901) --- trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt 2013-03-06 09:53:13 UTC (rev 144900) +++ trunk/LayoutTests/platform/qt/scrollingcoordinator/non-fast-scrollable-region-scaled-iframe-expected.txt 2013-03-06 09:59:22 UTC (rev 144901) @@ -1,12 +0,0 @@ -layer at (0,0) size 785x585 - RenderView at (0,0) size 785x585 -layer at
[webkit-changes] [144913] trunk/Source/WebCore
Title: [144913] trunk/Source/WebCore Revision 144913 Author allan.jen...@digia.com Date 2013-03-06 06:02:13 -0800 (Wed, 06 Mar 2013) Log Message [Qt] Do not disable C++0x https://bugs.webkit.org/show_bug.cgi?id=111559 Reviewed by Kenneth Rohde Christiansen. * WebCore.pri: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.pri Diff Modified: trunk/Source/WebCore/ChangeLog (144912 => 144913) --- trunk/Source/WebCore/ChangeLog 2013-03-06 13:31:17 UTC (rev 144912) +++ trunk/Source/WebCore/ChangeLog 2013-03-06 14:02:13 UTC (rev 144913) @@ -1,3 +1,12 @@ +2013-03-06 Allan Sandfeld Jensen + +[Qt] Do not disable C++0x +https://bugs.webkit.org/show_bug.cgi?id=111559 + +Reviewed by Kenneth Rohde Christiansen. + +* WebCore.pri: + 2013-03-06 Julien Chaffraix Remove the (dead) code for handling shorthands in StyleResolver / StyleBuilder Modified: trunk/Source/WebCore/WebCore.pri (144912 => 144913) --- trunk/Source/WebCore/WebCore.pri 2013-03-06 13:31:17 UTC (rev 144912) +++ trunk/Source/WebCore/WebCore.pri 2013-03-06 14:02:13 UTC (rev 144913) @@ -328,9 +328,6 @@ INCLUDEPATH += $$SOURCE_DIR/platform/graphics/gpu/opencl } -# Disable C++0x mode in WebCore for those who enabled it in their Qt's mkspec -*-g++*:QMAKE_CXXFLAGS -= -std=c++0x -std=gnu++0x - enable_fast_mobile_scrolling: DEFINES += ENABLE_FAST_MOBILE_SCROLLING=1 !production_build:have?(FONTCONFIG): PKGCONFIG += fontconfig ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [144918] trunk/Source/WebKit/qt
Title: [144918] trunk/Source/WebKit/qt Revision 144918 Author allan.jen...@digia.com Date 2013-03-06 06:29:23 -0800 (Wed, 06 Mar 2013) Log Message [Qt] Illegal narrowing in tst_qwebhistory https://bugs.webkit.org/show_bug.cgi?id=111562 Reviewed by Jocelyn Turcotte. The bytearray in tst_QWebHistory::restoreIncompatibleVersion1 has integer values higher than 127 assigned into an array of signed chars. This causes compiler errors in C++11 since it assigns constants (>127) that does not fit the destination (-128 to 127) * tests/qwebhistory/tst_qwebhistory.cpp: (tst_QWebHistory::restoreIncompatibleVersion1): Modified Paths trunk/Source/WebKit/qt/ChangeLog trunk/Source/WebKit/qt/tests/qwebhistory/tst_qwebhistory.cpp Diff Modified: trunk/Source/WebKit/qt/ChangeLog (144917 => 144918) --- trunk/Source/WebKit/qt/ChangeLog 2013-03-06 14:16:30 UTC (rev 144917) +++ trunk/Source/WebKit/qt/ChangeLog 2013-03-06 14:29:23 UTC (rev 144918) @@ -1,3 +1,18 @@ +2013-03-06 Allan Sandfeld Jensen + +[Qt] Illegal narrowing in tst_qwebhistory +https://bugs.webkit.org/show_bug.cgi?id=111562 + +Reviewed by Jocelyn Turcotte. + +The bytearray in tst_QWebHistory::restoreIncompatibleVersion1 has integer +values higher than 127 assigned into an array of signed chars. This causes +compiler errors in C++11 since it assigns constants (>127) that does not +fit the destination (-128 to 127) + +* tests/qwebhistory/tst_qwebhistory.cpp: +(tst_QWebHistory::restoreIncompatibleVersion1): + 2013-03-03 Adam Barth Unreviewed attempted build fix. Adds back some includes removed in Modified: trunk/Source/WebKit/qt/tests/qwebhistory/tst_qwebhistory.cpp (144917 => 144918) --- trunk/Source/WebKit/qt/tests/qwebhistory/tst_qwebhistory.cpp 2013-03-06 14:16:30 UTC (rev 144917) +++ trunk/Source/WebKit/qt/tests/qwebhistory/tst_qwebhistory.cpp 2013-03-06 14:29:23 UTC (rev 144918) @@ -447,7 +447,7 @@ { // Uncomment this code to generate a dump similar to the one below with the current stream version. // dumpCurrentVersion(hist); -static const char version1Dump[] = { +static const unsigned char version1Dump[] = { 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x32, 0x00, 0x71, 0x00, 0x72, 0x00, 0x63, 0x00, 0x3a, 0x00, 0x2f, 0x00, 0x72, 0x00, 0x65, 0x00, 0x73, 0x00, 0x6f, 0x00, 0x75, 0x00, 0x72, 0x00, 0x63, 0x00, 0x65, 0x00, 0x73, 0x00, @@ -514,7 +514,7 @@ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; -QByteArray version1(version1Dump, sizeof(version1Dump)); +QByteArray version1(reinterpret_cast(version1Dump), sizeof(version1Dump)); QDataStream stream(&version1, QIODevice::ReadOnly); // This should fail to load, the history should be cleared and the stream should be broken. ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [145066] trunk/Source/WebCore
Title: [145066] trunk/Source/WebCore Revision 145066 Author allan.jen...@digia.com Date 2013-03-07 05:52:35 -0800 (Thu, 07 Mar 2013) Log Message [Qt] Use Qt5.1 supportedMimeTypes methods. https://bugs.webkit.org/show_bug.cgi?id=85 Reviewed by Jocelyn Turcotte. Uses the supportedMimeTypes() methods from QImageReader and QImageWriter when available. * platform/MIMETypeRegistry.cpp: (WebCore::initializeSupportedImageMIMETypes): (WebCore::initializeSupportedImageMIMETypesForEncoding): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/MIMETypeRegistry.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (145065 => 145066) --- trunk/Source/WebCore/ChangeLog 2013-03-07 13:36:43 UTC (rev 145065) +++ trunk/Source/WebCore/ChangeLog 2013-03-07 13:52:35 UTC (rev 145066) @@ -1,3 +1,16 @@ +2013-03-07 Allan Sandfeld Jensen + +[Qt] Use Qt5.1 supportedMimeTypes methods. +https://bugs.webkit.org/show_bug.cgi?id=85 + +Reviewed by Jocelyn Turcotte. + +Uses the supportedMimeTypes() methods from QImageReader and QImageWriter when available. + +* platform/MIMETypeRegistry.cpp: +(WebCore::initializeSupportedImageMIMETypes): +(WebCore::initializeSupportedImageMIMETypesForEncoding): + 2013-03-07 Ilya Tikhonovsky Web Inspector: Flame Chart. Stick item color to the function. Modified: trunk/Source/WebCore/platform/MIMETypeRegistry.cpp (145065 => 145066) --- trunk/Source/WebCore/platform/MIMETypeRegistry.cpp 2013-03-07 13:36:43 UTC (rev 145065) +++ trunk/Source/WebCore/platform/MIMETypeRegistry.cpp 2013-03-07 13:52:35 UTC (rev 145066) @@ -245,21 +245,29 @@ } #if PLATFORM(QT) +#if QT_VERSION >= QT_VERSION_CHECK(5, 1, 0) +QList mimeTypes = QImageReader::supportedMimeTypes(); +Q_FOREACH(const QByteArray& mimeType, mimeTypes) { +supportedImageMIMETypes->add(mimeType.constData()); +supportedImageResourceMIMETypes->add(mimeType.constData()); +} +#else QList formats = QImageReader::supportedImageFormats(); -for (size_t i = 0; i < static_cast(formats.size()); ++i) { -#if ENABLE(SVG) -// Qt has support for SVG, but we want to use KSVG2 -if (formats.at(i).toLower().startsWith("svg")) -continue; -#endif // ENABLE(SVG) +for (int i = 0; i < formats.size(); ++i) { String mimeType = MIMETypeRegistry::getMIMETypeForExtension(formats.at(i).constData()); if (!mimeType.isEmpty()) { supportedImageMIMETypes->add(mimeType); supportedImageResourceMIMETypes->add(mimeType); } - } +} +#endif // QT_VERSION +#if ENABLE(SVG) +// Do not treat SVG as images directly if WebKit can handle them. +supportedImageMIMETypes->remove("image/svg+xml"); +supportedImageResourceMIMETypes->remove("image/svg+xml"); +#endif #endif // PLATFORM(QT) -#endif +#endif // USE(CG) } static void initializeSupportedImageMIMETypesForEncoding() @@ -284,12 +292,19 @@ supportedImageMIMETypesForEncoding->add("image/gif"); #endif #elif PLATFORM(QT) +#if QT_VERSION >= QT_VERSION_CHECK(5, 1, 0) +QList mimeTypes = QImageWriter::supportedMimeTypes(); +Q_FOREACH(const QByteArray& mimeType, mimeTypes) { +supportedImageMIMETypesForEncoding->add(mimeType.constData()); +} +#else QList formats = QImageWriter::supportedImageFormats(); for (int i = 0; i < formats.size(); ++i) { String mimeType = MIMETypeRegistry::getMIMETypeForExtension(formats.at(i).constData()); if (!mimeType.isEmpty()) supportedImageMIMETypesForEncoding->add(mimeType); } +#endif // QT_VERSION #elif PLATFORM(GTK) supportedImageMIMETypesForEncoding->add("image/png"); supportedImageMIMETypesForEncoding->add("image/jpeg"); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [145098] trunk
Title: [145098] trunk Revision 145098 Author allan.jen...@digia.com Date 2013-03-07 10:35:02 -0800 (Thu, 07 Mar 2013) Log Message REGRESSION(r143727): Clicking / selecting inside an is broken https://bugs.webkit.org/show_bug.cgi?id=111217 Reviewed by Julien Chaffraix. Source/WebCore: Hit-testing into child frames need to happen in RenderPart, otherwise we will miss frame views in and elements. Test: fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html * rendering/RenderFrameBase.cpp: * rendering/RenderFrameBase.h: (RenderFrameBase): * rendering/RenderPart.cpp: (WebCore::RenderPart::nodeAtPoint): * rendering/RenderPart.h: (RenderPart): LayoutTests: Test rect and point based hit-testing inside embed and object child frames. * fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt: Added. * fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html: Added. * fast/dom/nodesFromRect/resources/nodesFromRect.js: (checkPoint): Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/nodesFromRect/resources/nodesFromRect.js trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderFrameBase.cpp trunk/Source/WebCore/rendering/RenderFrameBase.h trunk/Source/WebCore/rendering/RenderPart.cpp trunk/Source/WebCore/rendering/RenderPart.h Added Paths trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html Diff Modified: trunk/LayoutTests/ChangeLog (145097 => 145098) --- trunk/LayoutTests/ChangeLog 2013-03-07 18:25:10 UTC (rev 145097) +++ trunk/LayoutTests/ChangeLog 2013-03-07 18:35:02 UTC (rev 145098) @@ -1,3 +1,17 @@ +2013-03-07 Allan Sandfeld Jensen + +REGRESSION(r143727): Clicking / selecting inside an is broken +https://bugs.webkit.org/show_bug.cgi?id=111217 + +Reviewed by Julien Chaffraix. + +Test rect and point based hit-testing inside embed and object child frames. + +* fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt: Added. +* fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html: Added. +* fast/dom/nodesFromRect/resources/nodesFromRect.js: +(checkPoint): + 2013-03-07 Alexey Proskuryakov FormData should allow setting filename to empty Added: trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt (0 => 145098) --- trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content-expected.txt 2013-03-07 18:35:02 UTC (rev 145098) @@ -0,0 +1,17 @@ + +REGRESSION(r143727): Clicking / selecting inside an embed is broken - bug 111217 + +On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". + + +PASS Correct node found for point +PASS Correct node found for point +PASS Correct node found for point +PASS Correct node found for point +PASS All correct nodes found for rect +PASS All correct nodes found for rect +PASS All correct nodes found for rect +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html (0 => 145098) --- trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html (rev 0) +++ trunk/LayoutTests/fast/dom/nodesFromRect/nodesFromRect-embedded-frame-content.html 2013-03-07 18:35:02 UTC (rev 145098) @@ -0,0 +1,69 @@ + + + +REGRESSION(r143727): Clicking / selecting inside an embed is broken - bug 111217 + +body { margin: 0px; } +#sandbox { +width: 400px; +height: 200px; +} +#sandbox embed { +float: right; +display: block; +box-sizing: border-box; +width: 200px; +height: 200px; +border: none; +} +#sandbox object { +display: block; +box-sizing: border-box; +width: 200px; +height: 200px; +border: none; +} + + + ++