profile/ivi/webkit-efl.git
12 years ago[Qt] Fix the remote inspector loading problems on Mac
commit-queue@webkit.org [Fri, 22 Jun 2012 13:24:31 +0000 (13:24 +0000)]
[Qt] Fix the remote inspector loading problems on Mac
https://bugs.webkit.org/show_bug.cgi?id=89747

Patch by Jocelyn Turcotte <turcotte.j@gmail.com> on 2012-06-22
Reviewed by Simon Hausmann.

Source/WebCore:

Make sure that the state of a SocketStreamHandle is set properly
when created from an existing QTcpSocket.

This fixes the inspectorserver Qt api auto test on Mac.

* platform/network/qt/SocketStreamHandleQt.cpp:
(WebCore::SocketStreamHandle::SocketStreamHandle):

Source/WebKit2:

Reverse the creation order of the inter-dependent WebSocketServerConnection
and SocketStreamHandle to make sure that the later has a client properly
set on construction.

This is to work around the assert on m_state in SocketStreamHandle::setClient.

* UIProcess/InspectorServer/WebSocketServer.cpp:
(WebKit::WebSocketServer::didAcceptConnection):
* UIProcess/InspectorServer/WebSocketServer.h:
(WebKit::WebSocketServer::client):
(WebSocketServer):
* UIProcess/InspectorServer/WebSocketServerConnection.cpp:
(WebKit::WebSocketServerConnection::WebSocketServerConnection):
(WebKit::WebSocketServerConnection::setSocketHandle):
(WebKit):
* UIProcess/InspectorServer/WebSocketServerConnection.h:
(WebSocketServerConnection):
* UIProcess/InspectorServer/qt/WebSocketServerQt.cpp:
(WebKit::QtTcpServerHandler::handleNewConnection):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121020 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoREGRESSION(r117738):[Forms] validationMessage IDL attribute should not have range...
yosin@chromium.org [Fri, 22 Jun 2012 12:54:04 +0000 (12:54 +0000)]
REGRESSION(r117738):[Forms] validationMessage IDL attribute should not have range overflow message if value isn't range overflow
https://bugs.webkit.org/show_bug.cgi?id=89736

Reviewed by Kent Tamura.

Source/WebCore:

Tests: fast/forms/date/input-date-validation-message.html
       fast/forms/number/input-number-validation-message.html
       fast/forms/range/input-range-validation-message.html

This patch changes comparison operator for range overflow message in
InputType::validationMessage().

* html/InputType.cpp:
(WebCore::InputType::validationMessage):

LayoutTests:

Tests for HTMLInputElement.validationMessage attribute.

* fast/forms/date/input-date-validation-message-expected.txt: Added.
* fast/forms/date/input-date-validation-message.html: Added.
* fast/forms/number/input-number-validation-message-expected.txt: Added.
* fast/forms/number/input-number-validation-message.html: Added.
* fast/forms/range/input-range-validation-message-expected.txt: Added.
* fast/forms/range/input-range-validation-message.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121019 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCauses crashes in LLVMPipe
kov@webkit.org [Fri, 22 Jun 2012 12:41:24 +0000 (12:41 +0000)]
Causes crashes in LLVMPipe
https://bugs.webkit.org/show_bug.cgi?id=89358

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-06-18
Reviewed by Martin Robinson.

Change suggested by Dave Airlie and Xan Lopez.

* wtf/Platform.h: disable global fastMalloc for GTK+

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121018 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Add frontend-side Entry object to FileSystemModel
commit-queue@webkit.org [Fri, 22 Jun 2012 12:35:55 +0000 (12:35 +0000)]
Web Inspector: Add frontend-side Entry object to FileSystemModel
https://bugs.webkit.org/show_bug.cgi?id=89739

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-22
Reviewed by Vsevolod Vlasov.

* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel.prototype._fileSystemRootReceived):
(WebInspector.FileSystemModel.prototype.requestDirectoryContent):
(WebInspector.FileSystemModel.prototype._directoryContentReceived):
(WebInspector.FileSystemModel.FileSystem):
(WebInspector.FileSystemModel.Entry):
(WebInspector.FileSystemModel.Entry.prototype.get fileSystemModel):
(WebInspector.FileSystemModel.Entry.prototype.get fileSystem):
(WebInspector.FileSystemModel.Entry.prototype.get url):
(WebInspector.FileSystemModel.Entry.prototype.get name):
(WebInspector.FileSystemModel.Entry.prototype.get isDirectory):
(WebInspector.FileSystemModel.Directory):
(WebInspector.FileSystemModel.Directory.prototype.requestDirectoryContent):
(WebInspector.FileSystemModel.File):
(WebInspector.FileSystemModel.File.prototype.get mimeType):
(WebInspector.FileSystemModel.File.prototype.get resourceType):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121017 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRenamed DeviceOrientation to DeviceOrientationData
commit-queue@webkit.org [Fri, 22 Jun 2012 11:32:42 +0000 (11:32 +0000)]
Renamed DeviceOrientation to DeviceOrientationData
https://bugs.webkit.org/show_bug.cgi?id=88663

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-22
Reviewed by Steve Block.

Source/WebCore:

No new tests because this is simply a name change.

Renamed DeviceOrientation to DeviceOrientationData in order to be consistent with DeviceMotionData.
Updated all files that use DeviceOrientation.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSDeviceOrientationEventCustom.cpp:
(WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
* bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:
(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):
* dom/DOMAllInOne.cpp:
* dom/DeviceOrientationClient.h:
(WebCore):
(DeviceOrientationClient):
* dom/DeviceOrientationController.cpp:
(WebCore::DeviceOrientationController::timerFired):
(WebCore::DeviceOrientationController::didChangeDeviceOrientation):
* dom/DeviceOrientationController.h:
(WebCore):
(DeviceOrientationController):
* dom/DeviceOrientationData.cpp: Renamed from Source/WebCore/dom/DeviceOrientation.cpp.
(WebCore):
(WebCore::DeviceOrientationData::create):
(WebCore::DeviceOrientationData::DeviceOrientationData):
(WebCore::DeviceOrientationData::alpha):
(WebCore::DeviceOrientationData::beta):
(WebCore::DeviceOrientationData::gamma):
(WebCore::DeviceOrientationData::absolute):
(WebCore::DeviceOrientationData::canProvideAlpha):
(WebCore::DeviceOrientationData::canProvideBeta):
(WebCore::DeviceOrientationData::canProvideGamma):
(WebCore::DeviceOrientationData::canProvideAbsolute):
* dom/DeviceOrientationData.h: Renamed from Source/WebCore/dom/DeviceOrientation.h.
(WebCore):
(DeviceOrientationData):
* dom/DeviceOrientationEvent.cpp:
(WebCore::DeviceOrientationEvent::DeviceOrientationEvent):
(WebCore::DeviceOrientationEvent::initDeviceOrientationEvent):
* dom/DeviceOrientationEvent.h:
(WebCore):
(WebCore::DeviceOrientationEvent::create):
(DeviceOrientationEvent):
(WebCore::DeviceOrientationEvent::orientation):
* loader/EmptyClients.h:
(WebCore::EmptyDeviceOrientationClient::lastOrientation):
* platform/mock/DeviceOrientationClientMock.cpp:
(WebCore::DeviceOrientationClientMock::setOrientation):
* platform/mock/DeviceOrientationClientMock.h:
(WebCore::DeviceOrientationClientMock::lastOrientation):
(DeviceOrientationClientMock):
* platform/qt/DeviceOrientationClientQt.cpp:
(DeviceOrientationClientQt):
* platform/qt/DeviceOrientationClientQt.h:
(DeviceOrientationClientQt):
* platform/qt/DeviceOrientationProviderQt.h:
(DeviceOrientationProviderQt):

Source/WebKit/blackberry:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.

* WebCoreSupport/DeviceOrientationClientBlackBerry.h:
(DeviceOrientationClientBlackBerry):

Source/WebKit/chromium:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.

* public/WebDeviceOrientation.h:
(WebDeviceOrientation):
* src/DeviceOrientationClientProxy.cpp:
(WebKit::DeviceOrientationClientProxy::lastOrientation):
* src/DeviceOrientationClientProxy.h:
(DeviceOrientationClientProxy):
* src/WebDeviceOrientation.cpp:
(WebKit::WebDeviceOrientation::WebDeviceOrientation):
(WebKit::WebDeviceOrientation::operator=):
(WebKit::WebDeviceOrientation::operator PassRefPtr<WebCore::DeviceOrientationData>):
* src/WebDeviceOrientationController.cpp:
(WebKit::WebDeviceOrientationController::didChangeDeviceOrientation):

Source/WebKit/efl:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.

* WebCoreSupport/DeviceOrientationClientEfl.h:
(DeviceOrientationClientEfl):

Source/WebKit/gtk:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.

* WebCoreSupport/DeviceOrientationClientGtk.h:
(DeviceOrientationClientGtk):

Source/WebKit/mac:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.
* WebCoreSupport/WebDeviceOrientationClient.h:
(WebDeviceOrientationClient):
* WebCoreSupport/WebDeviceOrientationClient.mm:
(WebDeviceOrientationClient::lastOrientation):
* WebView/WebDeviceOrientation.mm:
* WebView/WebDeviceOrientationInternal.h:

Source/WebKit/qt:

Updated files to use the renamed DeviceOrientationData instead of DeviceOrientation.
This change makes DeviceOrientationData consistent with DeviceMotionData.

* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::setMockDeviceOrientation):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121016 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WK2] FindController::hideFindUI should unmark highlighted text matches
sergio@webkit.org [Fri, 22 Jun 2012 09:54:28 +0000 (09:54 +0000)]
[WK2] FindController::hideFindUI should unmark highlighted text matches
https://bugs.webkit.org/show_bug.cgi?id=77747

Reviewed by Carlos Garcia Campos.

Unmark all text matches whenever FindController::hideFindUI is
called to allow callers using the ShowHighlight find option to
remove highlighting.

This patch enables a unit test for the WebKitFindController
previously guarded by a #if(0) after r109222.

* UIProcess/API/gtk/tests/TestWebKitFindController.cpp:
(testFindControllerHide):
* WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::hideFindUI):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121015 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Support separate script compilation and execution.
vsevik@chromium.org [Fri, 22 Jun 2012 09:39:54 +0000 (09:39 +0000)]
Web Inspector: Support separate script compilation and execution.
https://bugs.webkit.org/show_bug.cgi?id=89646

Reviewed by Pavel Feldman.

Source/WebCore:

Separate script compilation and run commands added to protocol and DebuggerAgent.
Separate script compilation and run implemented in v8 ScriptDebugServer, stubs added for js implementation.

Test: inspector/debugger/debugger-compile-and-run.html

* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::compileScript):
(WebCore):
(WebCore::ScriptDebugServer::clearCompiledScripts):
(WebCore::ScriptDebugServer::runScript):
* bindings/js/ScriptDebugServer.h:
(WebCore::ScriptDebugServer::supportsSeparateScriptCompilationAndExecution):
(ScriptDebugServer):
* bindings/v8/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::compileScript):
(WebCore):
(WebCore::PageScriptDebugServer::clearCompiledScripts):
(WebCore::PageScriptDebugServer::runScript):
* bindings/v8/PageScriptDebugServer.h:
(PageScriptDebugServer):
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::compileScript):
(WebCore):
(WebCore::ScriptDebugServer::clearCompiledScripts):
(WebCore::ScriptDebugServer::runScript):
* bindings/v8/ScriptDebugServer.h:
(WebCore):
(WebCore::ScriptDebugServer::supportsSeparateScriptCompilationAndExecution):
(ScriptDebugServer):
* inspector/Inspector.json:
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::disable):
(WebCore::InspectorDebuggerAgent::supportsSeparateScriptCompilationAndExecution):
(WebCore):
(WebCore::InspectorDebuggerAgent::compileScript):
(WebCore::InspectorDebuggerAgent::runScript):
* inspector/InspectorDebuggerAgent.h:
(InspectorDebuggerAgent):
(WebCore::InspectorDebuggerAgent::injectedScriptManager):
* inspector/PageDebuggerAgent.cpp:
(WebCore::PageDebuggerAgent::injectedScriptForEval):
(WebCore):
* inspector/PageDebuggerAgent.h:
(PageDebuggerAgent):
* inspector/WorkerDebuggerAgent.cpp:
(WebCore::WorkerDebuggerAgent::injectedScriptForEval):
(WebCore):
* inspector/WorkerDebuggerAgent.h:
(WorkerDebuggerAgent):
* inspector/front-end/Settings.js:
* inspector/front-end/inspector.js:
(WebInspector.doLoadedDone):

LayoutTests:

* inspector/debugger/debugger-compile-and-run-expected.txt: Added.
* inspector/debugger/debugger-compile-and-run.html: Added.
* platform/gtk/TestExpectations:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121014 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: InspectorState::updateCookie should not do JSON serialization if unsup...
commit-queue@webkit.org [Fri, 22 Jun 2012 09:14:01 +0000 (09:14 +0000)]
Web Inspector: InspectorState::updateCookie should not do JSON serialization if unsupported
https://bugs.webkit.org/show_bug.cgi?id=89743

Source/WebCore:

Since all InspectorClient's are InspectorStateClient's provide a
virtual accessor that determines whether or not InspectorClient updates
are supported or not.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-06-22
Reviewed by Yury Semikhatsky.

* inspector/InspectorState.cpp:
(WebCore::InspectorState::updateCookie):
Don't serialize and message the client if the client doesn't do anything with it.

* inspector/InspectorStateClient.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::InspectorStateClient::supportsInspectorStateUpdates):
Let the client say whether or not supports updates or not.

Source/WebKit/blackberry:

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-06-22
Reviewed by Yury Semikhatsky.

* WebCoreSupport/InspectorClientBlackBerry.cpp:
(WebCore::InspectorClientBlackBerry::updateInspectorStateCookie):

Source/WebKit/chromium:

The Chromium port does want InspectorState updates.

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-06-22
Reviewed by Yury Semikhatsky.

* src/InspectorClientImpl.h:
(WebKit::InspectorClientImpl::supportsInspectorStateUpdates):
* src/WebDevToolsAgentImpl.h:
(WebKit::WebDevToolsAgentImpl::supportsInspectorStateUpdates):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121013 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUse testRunner instead of layoutTestController in fast/hidpi, history, html, images...
rniwa@webkit.org [Fri, 22 Jun 2012 08:52:23 +0000 (08:52 +0000)]
Use testRunner instead of layoutTestController in fast/hidpi, history, html, images, inline, inline-block, innerHTML, inspector-support, invalid tests
https://bugs.webkit.org/show_bug.cgi?id=89744

Reviewed by Kent Tamura.

* fast/hidpi/broken-image-icon-hidpi.html:
* fast/hidpi/broken-image-with-size-hidpi.html:
* fast/hidpi/clip-text-in-hidpi.html:
* fast/hidpi/device-scale-factor-paint.html:
* fast/hidpi/focus-rings.html:
* fast/hidpi/image-set-as-background.html:
* fast/hidpi/image-set-background-dynamic.html:
* fast/hidpi/image-set-background-repeat-without-size.html:
* fast/hidpi/image-set-background-repeat.html:
* fast/hidpi/image-set-border-image-comparison.html:
* fast/hidpi/image-set-border-image-dynamic.html:
* fast/hidpi/image-set-border-image-simple.html:
* fast/hidpi/image-set-in-content-dynamic.html:
* fast/hidpi/image-set-out-of-order.html:
* fast/hidpi/image-set-simple.html:
* fast/hidpi/image-set-without-specified-width.html:
* fast/hidpi/resize-corner-hidpi.html:
* fast/hidpi/video-controls-in-hidpi.html:
* fast/history/back-forward-reset-after-error-handling.html:
* fast/history/form-submit-in-frame-via-onclick.html:
* fast/history/form-submit-in-frame.html:
* fast/history/forward-during-load.html:
* fast/history/gesture-before-onload-form-submit.html:
* fast/history/gesture-before-onload-location-href.html:
* fast/history/go-back-to-changed-name.html:
* fast/history/history-back-initial-vs-final-url.html:
* fast/history/history-back-twice-with-subframes-assert.html:
* fast/history/history-back-within-subframe-hash.html:
* fast/history/history-back-within-subframe-url.html:
* fast/history/history-length.html:
* fast/history/history-replace-updates-current-item.html:
* fast/history/history-subframe-with-name.html:
* fast/history/history_reload.html:
* fast/history/location-replace-hash.html:
* fast/history/multiple-classes-visited.html:
* fast/history/nested-visited-test.html:
* fast/history/redirect-via-iframe.html:
* fast/history/resources/clicked-link-is-visited-2.html:
* fast/history/resources/history-back-within-subframe-hash-2.html:
* fast/history/resources/history-replace-updates-current-item-done.html:
* fast/history/resources/history_reload_window.html:
* fast/history/resources/redirect-target.html:
* fast/history/same-document-iframes-changing-fragment.html:
* fast/history/same-document-iframes-changing-pushstate.html:
* fast/history/saves-state-after-fragment-nav.html:
* fast/history/saves-state-after-frame-nav.html:
* fast/history/self-is-visited.html:
* fast/history/sibling-visited-test.html:
* fast/history/timed-refresh-in-cached-frame.html:
* fast/history/visited-generated-content-test.html:
* fast/history/visited-link-background-color.html:
* fast/history/window-open.html:
* fast/html/adopt-parent-frame.html:
* fast/html/body-offset-properties.html:
* fast/html/crash-style-first-letter.html:
* fast/html/details-add-summary-1-and-click.html:
* fast/html/details-add-summary-10-and-click.html:
* fast/html/details-add-summary-2-and-click.html:
* fast/html/details-add-summary-3-and-click.html:
* fast/html/details-add-summary-4-and-click.html:
* fast/html/details-add-summary-5-and-click.html:
* fast/html/details-add-summary-6-and-click.html:
* fast/html/details-add-summary-7-and-click.html:
* fast/html/details-add-summary-8-and-click.html:
* fast/html/details-add-summary-9-and-click.html:
* fast/html/details-children-merge-crash.html:
* fast/html/details-element-render-inline-crash.html:
* fast/html/details-mouse-click.html:
* fast/html/details-remove-summary-1-and-click.html:
* fast/html/details-remove-summary-2-and-click.html:
* fast/html/details-remove-summary-3-and-click.html:
* fast/html/details-remove-summary-4-and-click.html:
* fast/html/details-remove-summary-5-and-click.html:
* fast/html/details-remove-summary-6-and-click.html:
* fast/html/details-replace-summary-child.html:
* fast/html/details-replace-text.html:
* fast/html/details-summary-document-child.html:
* fast/html/draggable.html:
* fast/html/empty-fragment-id-goto-top.html:
* fast/html/font-face-empty-should-not-crash.html:
* fast/html/marquee-scrollamount.html:
* fast/html/nav-element.html:
* fast/html/object-image-nested-fallback.html:
* fast/html/pending-stylesheet-crash.html:
* fast/html/process-end-tag-for-inbody-crash.html:
* fast/html/script-allowed-types-languages.html:
* fast/html/select-dropdown-consistent-background-color.html:
* fast/html/set-text-direction.html:
* fast/html/tab-order.html:
* fast/html/tabindex-removal.html:
* fast/html/text-field-input-types.html:
* fast/html/xhtml-serialize.html:
* fast/images/animated-background-image-crash.html:
* fast/images/animated-gif-restored-from-bfcache.html:
* fast/images/bad-png.html:
* fast/images/busted-oval-does-not-render.html:
* fast/images/destroyed-image-load-event.html:
* fast/images/dont-crash-with-null-gif-frames.html:
* fast/images/drag-pdf-as-image.html:
* fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html:
* fast/images/embed-image.html:
* fast/images/exif-orientation-css.html:
* fast/images/exif-orientation.html:
* fast/images/extra-image-in-image-document.html:
* fast/images/gif-loop-count.html:
* fast/images/image-empty-data.html:
* fast/images/image-invalid-data.html:
* fast/images/image-load-event-in-fragment.html:
* fast/images/image-map-multiple-xhtml.xhtml:
* fast/images/image-map-multiple.html:
* fast/images/image-map-zoom.html:
* fast/images/imagemap-scroll.html:
* fast/images/jpeg-with-color-profile.html:
* fast/images/large-size-image-crash.html:
* fast/images/link-body-content-imageDimensionChanged-crash.html:
* fast/images/load-img-with-empty-src.html:
* fast/images/paletted-png-with-color-profile.html:
* fast/images/percent-height-image.html:
* fast/images/png-extra-row-crash.html:
* fast/images/png-suite/test.html:
* fast/images/png-with-color-profile.html:
* fast/images/read-past-end-of-buffer.html:
* fast/images/rgb-jpeg-endian-pixels.html:
* fast/images/rgb-jpeg-with-adobe-marker-only.html:
* fast/images/rgb-png-with-cmyk-color-profile.html:
* fast/images/script-counter-imageDimensionChanged-crash.html:
* fast/images/script-tests/move-image-to-new-document.js:
* fast/images/size-failure.html:
* fast/images/style-access-during-imageChanged-crash.html:
* fast/images/style-access-during-imageChanged-style-freeze.html:
* fast/images/support-broken-image-delegate.html:
* fast/images/text-content-crash-2.html:
* fast/images/text-content-crash.html:
* fast/images/webp-image-decoding.html:
* fast/images/ycbcr-with-cmyk-color-profile.html:
* fast/images/zoomed-img-size.html:
* fast/inline-block/anonymous-block-crash.html:
* fast/inline-block/inline-block-vertical-align-2.html:
* fast/inline-block/relative-positioned-rtl-crash.html:
* fast/inline/boundingBox-with-continuation.html:
* fast/inline/clean-after-removing-temp-boxes.html:
* fast/inline/continuation-positioned-reparenting.html:
* fast/inline/crash-new-continuation-with-outline.html:
* fast/inline/dirtyLinesForInline.html:
* fast/inline/inline-body-crash.html:
* fast/inline/inline-body-with-scrollbar-crash.html:
* fast/inline/inline-box-adjust-position-crash.html:
* fast/inline/inline-box-adjust-position-crash2.html:
* fast/inline/inline-child-height-width-calc-crash.html:
* fast/inline/inline-destroy-dirty-lines-crash.html:
* fast/inline/inline-marquee-crash.html:
* fast/inline/relative-positioned-overflow.html:
* fast/inline/skipped-whitespace-boundingBox.html:
* fast/inline/skipped-whitespace-client-rect.html:
* fast/inline/update-always-create-line-boxes-full-layout-crash.html:
* fast/innerHTML/004-expected.txt:
* fast/innerHTML/004.xhtml:
* fast/innerHTML/005-expected.txt:
* fast/innerHTML/005.html:
* fast/innerHTML/additional-inline-style.html:
* fast/innerHTML/innerHTML-case.html:
* fast/innerHTML/innerHTML-changing-document-properties.xhtml:
* fast/innerHTML/innerHTML-custom-tag.html:
* fast/innerHTML/innerHTML-iframe.html:
* fast/innerHTML/innerHTML-nbsp.xhtml:
* fast/innerHTML/innerHTML-script-tag-crash.xhtml:
* fast/innerHTML/javascript-url.html:
* fast/inspector-support/cssURLQuotes.html:
* fast/inspector-support/style.html:
* fast/inspector-support/uncaught-dom1-exception.html:
* fast/inspector-support/uncaught-dom3-exception.html:
* fast/inspector-support/uncaught-dom8-exception.html:
* fast/invalid/invalidSVGFont.html:
* fast/invalid/nestedh3s-rapidweaver.html:
* fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html:
* platform/gtk/fast/images/exif-orientation-css-expected.txt:
* platform/gtk/fast/images/exif-orientation-expected.txt:
* platform/mac/fast/images/exif-orientation-css-expected.txt:
* platform/mac/fast/images/exif-orientation-expected.txt:
* platform/qt/fast/history/back-to-unreachable-url-then-forward.html:
* platform/qt/fast/history/resources/check-scroll-position.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed gardening. Unskipping test passing after fixing bug 88419.
mario@webkit.org [Fri, 22 Jun 2012 08:09:32 +0000 (08:09 +0000)]
Unreviewed gardening. Unskipping test passing after fixing bug 88419.

* gtk/run-api-tests:
(TestRunner): Unskip WTF.HashMap.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMemory corruption on HashTable.h
mario@webkit.org [Fri, 22 Jun 2012 08:06:08 +0000 (08:06 +0000)]
Memory corruption on HashTable.h
https://bugs.webkit.org/show_bug.cgi?id=88419

Reviewed by Martin Robinson.

Simplify definition of WTF_USE_PTHREADS and HAVE_PTHREAD_RWLOCK
for the GTK platform using OS(LINUX) instead of HAVE(PTHREAD_H).

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Allow DumpRenderTree to dump about:blank
zoltan@webkit.org [Fri, 22 Jun 2012 07:16:53 +0000 (07:16 +0000)]
[Qt] Allow DumpRenderTree to dump about:blank
https://bugs.webkit.org/show_bug.cgi?id=89685

Reviewed by Ryosuke Niwa.

We need to allow DumpRenderTree to dump about:blank page, then it will be consistent with other ports,
additionaly this behavior is required for running WTR performance tests.

* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::processLine):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121009 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUse testRunner instead of layoutTestController in fast/fast-mobile-scrolling, flexbox...
rniwa@webkit.org [Fri, 22 Jun 2012 06:52:33 +0000 (06:52 +0000)]
Use testRunner instead of layoutTestController in fast/fast-mobile-scrolling, flexbox, forms, frames, gradients tests
https://bugs.webkit.org/show_bug.cgi?id=89741

Reviewed by Kent Tamura.

* fast/flexbox/box-ordinal-group.html:
* fast/flexbox/box-size-integer-overflow.html:
* fast/flexbox/crash-button-input-autofocus.html:
* fast/flexbox/crash-button-keygen.html:
* fast/flexbox/crash-button-relayout.html:
* fast/flexbox/crash-flexbox-no-layout-child.html:
* fast/flexbox/horizontal-box-float-crash.html:
* fast/flexbox/inline-children-crash.html:
* fast/flexbox/layoutHorizontalBox-crash.html:
* fast/flexbox/line-clamp-crash.html:
* fast/flexbox/overhanging-floats-not-removed-crash.html:
* fast/flexbox/resources/box-orient-button.js:
* fast/forms/:
* fast/frames/:
* fast/gradients/crash-on-1px-border.html:
* fast/gradients/crash-on-degenerate-gradient.html:
* fast/gradients/crash-on-remove.html:
* fast/gradients/crash-on-tr.html:
* fast/gradients/css3-color-stop-units.html:
* fast/gradients/css3-color-stops.html:
* fast/gradients/css3-linear-angle-gradients.html:
* fast/gradients/css3-linear-right-angle-gradients.html:
* fast/gradients/css3-radial-gradient-crash.html:
* fast/gradients/css3-radial-gradients.html:
* fast/gradients/css3-radial-gradients2.html:
* fast/gradients/css3-radial-gradients3.html:
* fast/gradients/css3-repeating-end-fill.html:
* fast/gradients/css3-repeating-linear-gradients.html:
* fast/gradients/css3-repeating-linear-gradients2.html:
* fast/gradients/css3-repeating-radial-gradients.html:
* fast/gradients/gradient-after-transparent-border.html:
* fast/gradients/gradient-on-pseudoelement-crash.html:
* platform/chromium/fast/forms/search-popup-crasher.html:
* platform/gtk/fast/forms/menulist-typeahead-find.html:
* platform/gtk/fast/frames/scrolling-iframe-out-of-viewport.html:
* platform/mac/fast/forms/attributed-strings.html:
* platform/mac/fast/forms/listbox-scrollbar-hit-test.html:
* platform/mac/fast/forms/script-tests/focus-option-control-on-page.js:
(startTest):
(runKeyPresses):
(notifyDone):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[EFL] Unreviewed gardening, unskip now passing tests.
joone@webkit.org [Fri, 22 Jun 2012 06:44:26 +0000 (06:44 +0000)]
[EFL] Unreviewed gardening, unskip now passing tests.

* platform/efl/Skipped:
* platform/efl/fast/viewport/viewport-126-expected.txt: Added.
* platform/efl/fast/viewport/viewport-127-expected.txt: Added.
* platform/efl/fast/viewport/viewport-65-expected.txt: Added.
* platform/efl/fast/viewport/viewport-82-expected.txt: Added.
* platform/efl/fast/viewport/viewport-84-expected.txt: Added.
* platform/efl/fast/viewport/viewport-87-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agos/layoutTestController/testRunner/ in speech tests
hans@chromium.org [Fri, 22 Jun 2012 06:31:18 +0000 (06:31 +0000)]
s/layoutTestController/testRunner/ in speech tests
https://bugs.webkit.org/show_bug.cgi?id=89654

Reviewed by Ryosuke Niwa.

* fast/speech/bubble-position.html:
* fast/speech/change-focus.html:
* fast/speech/input-onspeechchange-event.html:
* fast/speech/input-ontextinput-event.html:
* fast/speech/input-readonly-and-disabled.html:
* fast/speech/input-text-language-tag.html:
* fast/speech/input-text-speechbutton.html:
* fast/speech/input-text-speechstart.html:
* fast/speech/scripted/speechrecognition-basics.html:
* fast/speech/scripted/speechrecognition-errors.html:
* fast/speech/speech-button-ignore-generated-events.html:
* fast/speech/speech-input-result-list-not-enough-arguments.html:
* fast/speech/speech-input-scripting.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, rolling out r120982.
commit-queue@webkit.org [Fri, 22 Jun 2012 06:11:44 +0000 (06:11 +0000)]
Unreviewed, rolling out r120982.
http://trac.webkit.org/changeset/120982
https://bugs.webkit.org/show_bug.cgi?id=89740

[chromium] ASSERTION FAILED:
m_allocatedTextureIds.contains(textureId) (Requested by ukai
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-21

Source/WebCore:

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererGpuMemoryAllocationChangedCallbackAdapter::onGpuMemoryAllocationChangedOnImpl):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::setVisible):
(WebCore::LayerRendererChromium::swapBuffers):
(WebCore::LayerRendererChromium::getFramebufferPixels):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore):
(LayerRendererChromium):
* platform/graphics/chromium/TextureManager.cpp:
* platform/graphics/chromium/TextureManager.h:
(TextureAllocator):
(TextureManager):
* platform/graphics/chromium/TrackingTextureAllocator.cpp:
(WebCore::TrackingTextureAllocator::createTexture):
(WebCore::TrackingTextureAllocator::deleteTexture):
* platform/graphics/chromium/TrackingTextureAllocator.h:
(TrackingTextureAllocator):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setNeedsForcedCommit):
(WebCore):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::setContentsMemoryAllocationLimitBytes):
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::commitComplete):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::context):
(WebCore::CCLayerTreeHostImpl::setContentsMemoryAllocationLimitBytes):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImplClient):
(WebCore::CCLayerTreeHostImpl::sourceFrameCanBeDrawn):
(WebCore::CCLayerTreeHostImpl::setSourceFrameCanBeDrawn):
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCRenderer.h:
(CCRendererClient):
* platform/graphics/chromium/cc/CCScheduler.cpp:
(WebCore::CCScheduler::beginFrameComplete):
(WebCore::CCScheduler::didSwapBuffersComplete):
(WebCore::CCScheduler::didLoseContext):
(WebCore::CCScheduler::didRecreateContext):
(WebCore::CCScheduler::vsyncTick):
* platform/graphics/chromium/cc/CCScheduler.h:
(CCScheduler):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
* platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::setNeedsForcedCommit):
(WebCore):
(WebCore::CCSingleThreadProxy::stop):
(WebCore::CCSingleThreadProxy::postSetContentsMemoryAllocationLimitBytesToMainThreadOnImplThread):
(WebCore::CCSingleThreadProxy::commitAndComposite):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::setNeedsForcedCommit):
(WebCore):
(WebCore::CCThreadProxy::postSetContentsMemoryAllocationLimitBytesToMainThreadOnImplThread):
(WebCore::CCThreadProxy::scheduledActionBeginFrame):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
(WebCore::CCThreadProxy::setContentsMemoryAllocationLimitBytes):
(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):
(BeginFrameAndCommitState):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::FramePlane::allocateData):
(WebCore::CCVideoLayerImpl::FramePlane::freeData):
(WebCore::CCVideoLayerImpl::allocatePlaneData):
(WebCore::CCVideoLayerImpl::freePlaneData):
(WebCore::CCVideoLayerImpl::freeUnusedPlaneData):
(WebCore::CCVideoLayerImpl::didLoseContext):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(FramePlane):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(CCLayerTreeHostTestVisibilityAndAllocationControlDrawing):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::beginTest):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::didCommitAndDrawFrame):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::didCommit):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::afterTest):
(WTF):
(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
(WTF::CCLayerTreeHostTestManySurfaces::beginTest):
* tests/CCSchedulerStateMachineTest.cpp:
(WebCore::TEST):
* tests/CCTiledLayerTestCommon.h:
(WebKitTests::FakeTextureAllocator::createTexture):
(WebKitTests::FakeTextureAllocator::deleteTexture):
* tests/FakeWebGraphicsContext3D.h:
(WebKit::FakeWebGraphicsContext3D::createTexture):
(FakeWebGraphicsContext3D):
* tests/LayerRendererChromiumTest.cpp:
(TEST_F):
* tests/TiledLayerChromiumTest.cpp:

LayoutTests:

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121005 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake FormControlState capable to store multiple values
tkent@chromium.org [Fri, 22 Jun 2012 05:36:28 +0000 (05:36 +0000)]
Make FormControlState capable to store multiple values
https://bugs.webkit.org/show_bug.cgi?id=89628

Reviewed by Hajime Morita.

Make FormControlState capable to store multiple values in order to
clean FileInputType.cpp up and prepare to fix Bug 89623.

No new tests. This doesn't change web-exposed behavior, and
fast/forms/file/recover-file-input-in-unposted-form.html covers
major part of this change.

* html/FormController.cpp:
(WebCore::FormControlState::serializeTo): Support for two or more values.
(WebCore::FormControlState::deserialize): ditto.
(WebCore::formStateSignature):
Bump up the version because the state format for <input type=file> is changed.
* html/FormController.h:
 - String m_value -> Vector<String> m_values
 - Add some functions.
 - Remove hasValue() and value().
(WebCore::FormControlState::FormControlState): m_value -> m_values.
(WebCore::FormControlState::valueSize): Added.
(WebCore::FormControlState::operator[]): Added.
(FormControlState): Add append() declaration, etc.
(WebCore::FormControlState::operator=): m_value -> m_values
(WebCore::FormControlState::append): Added.

* html/HTMLFormControlElementWithState.cpp:
(WebCore::HTMLFormControlElementWithState::finishParsingChildren):
Use valueSize() instead of hasValue().
* html/HTMLFormControlElementWithState.h:
(HTMLFormControlElementWithState): Update the comment.

* html/FileInputType.cpp:
(WebCore::FileInputType::saveFormControlState):
Use multiple value capability of FormControlState
(WebCore::FileInputType::restoreFormControlState): ditto.

* html/BaseCheckableInputType.cpp:
(WebCore::BaseCheckableInputType::restoreFormControlState): Use [0] instead of value().
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::restoreFormControlState): ditto.
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::restoreFormControlState): ditto.
* html/HiddenInputType.cpp:
(WebCore::HiddenInputType::restoreFormControlState): ditto.
* html/InputType.cpp:
(WebCore::InputType::restoreFormControlState): ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121004 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSource/WebCore: LabelsNodeList isn't updated properly after its owner node is adopted...
rniwa@webkit.org [Fri, 22 Jun 2012 05:33:58 +0000 (05:33 +0000)]
Source/WebCore: LabelsNodeList isn't updated properly after its owner node is adopted into a new document
https://bugs.webkit.org/show_bug.cgi?id=89730

Reviewed by Darin Adler.

When a node is adopted, node lists that are invalidated at document level need to be unregistered
from old document and registered to new document so that DOM mutations in new document will invalidate
caches in the node lists. Done that in NodeListsNodeData::adoptTreeScope, which was extracted from
TreeScopeAdopter::moveTreeToNewScope.

Also renamed DynamicNodeList::node() and m_node to rootNode() and m_ownerNode to better express
their semantics and added ownerNode() to make m_ownerNode private to DynamicNodeList.

Test: fast/forms/label/labels-owner-node-adopted.html

* bindings/js/JSNodeListCustom.cpp:
(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):
* dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::~ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):
(WebCore::ChildNodeList::nodeMatches):
* dom/ClassNodeList.cpp:
(WebCore::ClassNodeList::ClassNodeList):
(WebCore::ClassNodeList::~ClassNodeList):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicNodeList::itemWithName):
* dom/DynamicNodeList.h:
(WebCore::DynamicNodeList::DynamicNodeList):
(WebCore::DynamicNodeList::ownerNode):
(WebCore::DynamicNodeList::rootedAtDocument):
(WebCore::DynamicNodeList::shouldInvalidateOnAttributeChange):
(WebCore::DynamicNodeList::rootNode):
(WebCore::DynamicNodeList::document):
(DynamicNodeList):
* dom/NameNodeList.cpp:
(WebCore::NameNodeList::~NameNodeList):
* dom/NodeRareData.h:
(WebCore::NodeListsNodeData::adoptTreeScope):
(NodeListsNodeData):
* dom/TagNodeList.cpp:
(WebCore::TagNodeList::~TagNodeList):
* dom/TreeScopeAdopter.cpp:
(WebCore::TreeScopeAdopter::moveTreeToNewScope):
* html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::~LabelsNodeList):
(WebCore::LabelsNodeList::nodeMatches):
* html/RadioNodeList.cpp:
(WebCore::RadioNodeList::~RadioNodeList):
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):

LayoutTests: LabelsNostList isn't updated properly after its owner node is adopted into a new document
https://bugs.webkit.org/show_bug.cgi?id=89730

Reviewed by Darin Adler.

* fast/forms/label/labels-owner-node-adopted-expected.txt: Added.
* fast/forms/label/labels-owner-node-adopted.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121003 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Properly display native memory sizes bigger than 2GB
commit-queue@webkit.org [Fri, 22 Jun 2012 04:07:42 +0000 (04:07 +0000)]
Web Inspector: Properly display native memory sizes bigger than 2GB
https://bugs.webkit.org/show_bug.cgi?id=89661

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-06-21
Reviewed by Pavel Feldman.

* inspector/Inspector.json:
* inspector/InspectorMemoryAgent.cpp:
(WebCore::jsHeapInfo):
(WebCore::inspectorData):
(WebCore::renderTreeInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121002 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCrash in RenderBlock::layoutPositionedObjects.
inferno@chromium.org [Fri, 22 Jun 2012 04:01:57 +0000 (04:01 +0000)]
Crash in RenderBlock::layoutPositionedObjects.
https://bugs.webkit.org/show_bug.cgi?id=89599

Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/table/table-split-positioned-object-crash.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::splitBlocks): no longer need to explicitly call
removePositionedObjects, since it is part of moveChildrenTo.
* rendering/RenderBlock.h:
(WebCore::RenderBlock::hasPositionedObjects): helper to tell if we have
positioned objects in our list.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::splitAnonymousBoxesAroundChild): Like r102263, this
condition was wrong and while moving children across completely different
trees, we need fullRemoveInsert as true.
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::moveChildTo): see code comment.
(WebCore::RenderBoxModelObject::moveChildrenTo): see code comment.

LayoutTests:

* fast/table/table-split-positioned-object-crash-expected.txt: Added.
* fast/table/table-split-positioned-object-crash.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121001 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium][Win] Missing trailing newlines in one text test expectation, debug only
tonyg@chromium.org [Fri, 22 Jun 2012 02:55:29 +0000 (02:55 +0000)]
[Chromium][Win] Missing trailing newlines in one text test expectation, debug only
https://bugs.webkit.org/show_bug.cgi?id=89534

Reviewed by Tony Gentilcore.

* fast/canvas/resize-while-save-active-expected.txt:
* fast/canvas/resize-while-save-active.html: Make test deterministic by running script after load and fix line endings.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120999 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd a perf-test for innerHTML setter for a large DOM tree
haraken@chromium.org [Fri, 22 Jun 2012 02:50:52 +0000 (02:50 +0000)]
Add a perf-test for innerHTML setter for a large DOM tree
https://bugs.webkit.org/show_bug.cgi?id=89723

Reviewed by Ryosuke Niwa.

We want a benchmark for innerHTML setter for the following reason:

- innerHTML setter is widely used in the real world.
- I am planning to optimize innerHTML setter in the near future.
- I want to use the innerHTML setter benchmark for the patch of bug 88834.

Performance results in my Linux desktop:

RESULT Parser: innerHTML-setter= 289.782649995 runs/s
median= 290.046269741 runs/s, stdev= 1.06575112224 runs/s, min= 286.831812256 runs/s, max= 291.005291005 runs/s

RESULT Parser: innerHTML-setter= 289.020706132 runs/s
median= 289.093298292 runs/s, stdev= 0.985203313093 runs/s, min= 286.831812256 runs/s, max= 290.620871863 runs/s

RESULT Parser: innerHTML-setter= 288.912051701 runs/s
median= 291.005291005 runs/s, stdev= 3.65241325588 runs/s, min= 283.505154639 runs/s, max= 292.553191489 runs/s

RESULT Parser: innerHTML-setter= 288.644186666 runs/s
median= 288.713910761 runs/s, stdev= 1.31889053717 runs/s, min= 286.085825748 runs/s, max= 290.620871863 runs/s

RESULT Parser: innerHTML-setter= 288.698714577 runs/s
median= 288.713910761 runs/s, stdev= 1.03938198202 runs/s, min= 286.458333333 runs/s, max= 290.237467018 runs/s

* Parser/innerHTML-setter.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120998 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake HTMLDocumentParser::create(DocumentFragment*,Element*, FragmentScriptingPermissi...
kseo@webkit.org [Fri, 22 Jun 2012 02:47:15 +0000 (02:47 +0000)]
Make HTMLDocumentParser::create(DocumentFragment*,Element*, FragmentScriptingPermission) private.
https://bugs.webkit.org/show_bug.cgi?id=89724

Reviewed by Darin Adler.

It is used only by HTMLDocumentParser::parseDocumentFragment. No behavioral changes.

* html/parser/HTMLDocumentParser.h:
(WebCore::HTMLDocumentParser::create):
(HTMLDocumentParser):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120997 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] Initialize compositor's visibility state upon initialization
commit-queue@webkit.org [Fri, 22 Jun 2012 02:39:22 +0000 (02:39 +0000)]
[chromium] Initialize compositor's visibility state upon initialization
https://bugs.webkit.org/show_bug.cgi?id=89712

Patch by James Robinson <jamesr@chromium.org> on 2012-06-21
Reviewed by Adrienne Walker.

A given WebViewImpl's visibility state might change any number of times before compositing is enabled. If the
visibility state is not the default (visible) when the compositor is initialized, we need to let it know the
correct visibility state or it will start ticking uselessly in threaded mode.

Tested manually, there's no way to create a new WebViewImpl in a non-visible state in a WebKit test that I know
of.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120995 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Reset mediaPlaybackRequiresUserGesture WebSettings after each test
abarth@webkit.org [Fri, 22 Jun 2012 02:37:07 +0000 (02:37 +0000)]
[Chromium] Reset mediaPlaybackRequiresUserGesture WebSettings after each test
https://bugs.webkit.org/show_bug.cgi?id=89718

Reviewed by Kent Tamura.

We should reset this WebSetting to its default value so that it behaves
consistently across tests.

* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::reset):
(WebPreferences::applyTo):
* DumpRenderTree/chromium/WebPreferences.h:
(WebPreferences):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120994 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Use the empty plugin support on non-X11 and non-Windows platforms
commit-queue@webkit.org [Fri, 22 Jun 2012 02:05:25 +0000 (02:05 +0000)]
[GTK] Use the empty plugin support on non-X11 and non-Windows platforms
https://bugs.webkit.org/show_bug.cgi?id=89501

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-21
Reviewed by Martin Robinson.

The GTK+ port doesn't currently support NPAPI plugins on platforms other
than X11 or Windows. Using PluginPackageNone and PluginViewNone makes it
easier to build it on other platforms and also allows us to drop some
ifdefs from PluginPackageGtk and PluginViewGtk.

* GNUmakefile.list.am:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120993 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] Add touch-event support for WebPluginContainerImpl
commit-queue@webkit.org [Fri, 22 Jun 2012 02:05:13 +0000 (02:05 +0000)]
[chromium] Add touch-event support for WebPluginContainerImpl
https://bugs.webkit.org/show_bug.cgi?id=89089

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-06-21
Reviewed by Adam Barth.

* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::handleEvent):
* src/WebPluginContainerImpl.h:
(WebCore):
(WebPluginContainerImpl):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120992 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Shadow][Editing] Assertion in VisibleSelection::adjuseSelectionToAvoidCrossingBounda...
shinyak@chromium.org [Fri, 22 Jun 2012 02:02:38 +0000 (02:02 +0000)]
[Shadow][Editing] Assertion in VisibleSelection::adjuseSelectionToAvoidCrossingBoundaries() is triggered.
https://bugs.webkit.org/show_bug.cgi?id=89081

Reviewed by Ryosuke Niwa.

Source/WebCore:

firstEditablePositionAfterPositionInRoot and lastEditablePositionBeforePositionInRoot did not
consider a case that an argument hiehestRoot can be in Shadow DOM. So when adjusting selection to
avoid crossing editing boundaries, VisiblePosition can break shadow boundaries, and it causes
an assertion trigger.

By this patch, firstEditablePositionAfterPositionInRoot and lastEditablePositionBeforePositionInRoot will
adjust position to the tree scope of highestRoot instead of its parent tree scope.

Test: editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html

* editing/htmlediting.cpp:
(WebCore::firstEditablePositionAfterPositionInRoot):
(WebCore::lastEditablePositionBeforePositionInRoot):

LayoutTests:

* editing/shadow/adjusting-editing-boundary-with-table-in-shadow-expected.txt: Added.
* editing/shadow/adjusting-editing-boundary-with-table-in-shadow.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120991 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake GL error messages consistent in LayoutTests
commit-queue@webkit.org [Fri, 22 Jun 2012 01:46:12 +0000 (01:46 +0000)]
Make GL error messages consistent in LayoutTests
https://bugs.webkit.org/show_bug.cgi?id=89689

Patch by Gregg Tavares <gman@google.com> on 2012-06-21
Reviewed by Kenneth Russell.

* fast/canvas/webgl/resources/webgl-test.js:
(shouldGenerateGLError):
(glErrorShouldBe):
* fast/canvas/webgl/webgl-depth-texture-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120990 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoop_resolve_global should not prevent DFG inlining
fpizlo@apple.com [Fri, 22 Jun 2012 01:33:30 +0000 (01:33 +0000)]
op_resolve_global should not prevent DFG inlining
https://bugs.webkit.org/show_bug.cgi?id=89726

Reviewed by Gavin Barraclough.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::shrinkToFit):
* bytecode/GlobalResolveInfo.h:
(JSC::GlobalResolveInfo::GlobalResolveInfo):
(GlobalResolveInfo):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):
* dfg/DFGCapabilities.h:
(JSC::DFG::canInlineOpcode):
* dfg/DFGOperations.cpp:
* dfg/DFGOperations.h:
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120989 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: exception in TimelinePresentationModel when recording timeline
caseq@chromium.org [Fri, 22 Jun 2012 01:30:19 +0000 (01:30 +0000)]
Web Inspector: exception in TimelinePresentationModel when recording timeline
https://bugs.webkit.org/show_bug.cgi?id=89716

Reviewed by Pavel Feldman.

* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline.processRecord):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.prototype.filteredRecords):
(WebInspector.TimelinePresentationModel.prototype.isVisible):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120988 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Blackberry] BlackBerry::Platform::Settings::get() rename to BlackBerry::Platform...
commit-queue@webkit.org [Fri, 22 Jun 2012 01:18:31 +0000 (01:18 +0000)]
[Blackberry] BlackBerry::Platform::Settings::get() rename to BlackBerry::Platform::Settings::instance() to make it consistent with our other singletons
https://bugs.webkit.org/show_bug.cgi?id=89684

Source/WebKit/blackberry:

Patch by Parth Patel <parpatel@rim.com> on 2012-06-21
Reviewed by Yong Li.

Update setting instance access to use instance() instead of get().

* Api/BlackBerryGlobal.cpp:
(BlackBerry::WebKit::globalInitialize):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::shouldSendResizeEvent):
* WebCoreSupport/AboutData.cpp:
(WebCore::configPage):
* WebCoreSupport/CacheClientBlackBerry.cpp:
(WebCore::CacheClientBlackBerry::updateCacheCapacity):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getPaddings):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::isInputModeEnabled):
(BlackBerry::WebKit::InputHandler::setInputModeEnabled):
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::initialize):

Source/WTF:

Patch by Parth Patel <parpatel@rim.com> on 2012-06-21
Reviewed by Yong Li.

Update setting instance access to use instance() instead of get().

* wtf/ThreadingPthreads.cpp:
(WTF::createThreadInternal):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120987 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] Layout Test fast/speech/scripted/speechgrammar-basics.html is flaky
kbr@google.com [Fri, 22 Jun 2012 00:53:48 +0000 (00:53 +0000)]
[chromium] Layout Test fast/speech/scripted/speechgrammar-basics.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=89717

Unreviewed. Added suppression for flaky crash.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120986 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd methods to select between offsets in an editable field.
commit-queue@webkit.org [Fri, 22 Jun 2012 00:49:25 +0000 (00:49 +0000)]
Add methods to select between offsets in an editable field.
https://bugs.webkit.org/show_bug.cgi?id=89098

Patch by Oli Lan <olilan@chromium.org> on 2012-06-21
Reviewed by Ryosuke Niwa.

Reviewed by Ryosuke Niwa.

Source/WebCore:

Adds a new method setSelectionOffsets to Editor. This selects between
the two integer offsets provided in the node currently being edited,
assuming the offsets are given relative to the rootEditableElement.
If no node or field is currently being edited, the method returns false.

Test: a new test has been added to the chromium port's WebViewTest that
calls this via WebViewImpl::setSelectionEditableOffsets.

* editing/Editor.cpp:
(WebCore::Editor::setSelectionOffsets):
(WebCore):
* editing/Editor.h:
(Editor):

Source/WebKit/chromium:

This adds a new method WebViewImpl::setEditableSelectionOffsets, which
can be used to select between two character positions in the node
currently beign edited.

The offsets are assumed to be relative to the rootEditableElement.

This can be used for IME features that require the ability to manipulate
the selection, for example on Android where the method InputConnection#setSelection
is used.

This method calls a new method Editor::setSelectionOffsets.

The method works for inputs/textareas (i.e. text form controls) and
contenteditable nodes, and the new test in WebViewTest tests both these cases.

* public/WebView.h:
(WebView):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setEditableSelectionOffsets):
(WebKit):
* src/WebViewImpl.h:
(WebViewImpl):
* tests/WebViewTest.cpp:
(WebKit::TEST_F):
(WebKit):
* tests/data/content_editable_populated.html: Added.
* tests/data/input_field_populated.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120985 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd support for the grid and inline-grid display types.
jchaffraix@webkit.org [Fri, 22 Jun 2012 00:36:07 +0000 (00:36 +0000)]
Add support for the grid and inline-grid display types.
https://bugs.webkit.org/show_bug.cgi?id=60732

Reviewed by Tony Chang.

Source/WebCore:

Tests: fast/css-grid-layout/containing-block-grids-expected.html
       fast/css-grid-layout/containing-block-grids.html
       fast/css-grid-layout/floating-empty-grids-expected.html
       fast/css-grid-layout/floating-empty-grids.html

Based on an earlier patch by David Hyatt <hyatt@apple.com>.

Added the first renderer for grid elements.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Added RenderGrid files to the build systems.

* rendering/RenderGrid.cpp: Added.
(WebCore::RenderGrid::RenderGrid):
(WebCore::RenderGrid::~RenderGrid):
(WebCore::RenderGrid::layoutBlock):
(WebCore::RenderGrid::renderName):
* rendering/RenderGrid.h: Added.
(RenderGrid):
Skeleton renderer for now.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
Return our new RenderGrid for our 2 new |display| values.

* rendering/style/RenderStyle.h:
Added INLINE_GRID to the inline and replaced types.

LayoutTests:

Based on an earlier patch by David Hyatt <hyatt@apple.com>.

* fast/css-grid-layout/containing-block-grids-expected.html: Added.
* fast/css-grid-layout/containing-block-grids.html: Added.
* fast/css-grid-layout/floating-empty-grids-expected.html: Added.
* fast/css-grid-layout/floating-empty-grids.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120984 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoClang build fix.
rniwa@webkit.org [Thu, 21 Jun 2012 23:55:56 +0000 (23:55 +0000)]
Clang build fix.

* dom/NodeRareData.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120983 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] LayerRendererChromium is not getting visibility messages in single threade...
jamesr@google.com [Thu, 21 Jun 2012 23:52:48 +0000 (23:52 +0000)]
[chromium] LayerRendererChromium is not getting visibility messages in single threaded compositing mode.
https://bugs.webkit.org/show_bug.cgi?id=89045

Reviewed by Adrienne Walker.

Based on patch by Michal Mocny <mmocny@google.com>.

Source/WebCore:

Invariants:

1.) We never commit (paint, animate, any of it) when not visible on the main thread -except- for
compositeAndReadback, regardless of threaded vs non-threaded mode
2.) CCLayerTreeHost::m_contentsTextureManager's memory budget is only set by updateLayers() when we are going to
make a frame and is always set to a non-zero value
3.) Zero-sized allocations from the GPU process are always serviced immediately on the impl thread.  Non-zero
allocations are met in the next frame, whenever we would produce that frame according to our usual frame
scheduling logic.
4.) The impl thread always knows the set of currently-allocated managed texture IDs and can delete them all
whenever it likes without needing the main thread to be responsive.

Details:

There are two main changes - tweaking how the contents texture manager's budget is handled and tweaking frame
scheduling for the !visible case.

The scheduling change is a bit more subtle but it unifies the single and multi threaded paths and is really
important.  Except for compositeAndReadback (which I'll talk about below), we simply won't produce frames when
not visible.  This already happens in the single threaded path thanks to render_widget so the only change is to
the threaded path.  The difficulty here is we might post a beginFrame task from the impl thread and then get a
setVisible(false) call on the main thread before the beginFrame task runs.  Since I'm making the setVisible()
call a blocking call from main thread -> impl thread, when the beginFrame task eventually does run on the main
thread we can know that the impl thread's notion of visibility is in sync with the main threads.  Thus I'm
planning to simply abort the frame before doing any processing on the main thread.  The scheduler will know if
it gets a beginFrameAborted and COMMIT_STATE_IDLE.

compositeAndReadback is special - this call currently does come in when we aren't visible (in single and
threaded mode) and we need to service it.  In particular, we need to send a beginFrame over and have it
not be ignored on the main thread.  For this I'm thinking of having the proxy keep track of whether it's
servicing a compositeAndReadback() and use that bit on the main thread to know to process the beginFrame
normally.  On the impl side, we need a few changes.  First, we have to allocate a default framebuffer
(ensureFramebufferCHROMIUM) even if we've dropped it previously and remember to discard it after the
readPixels().  Second, we have to provide a non-zero contents texture allocation on the beginFrame message, and
again remember to delete the textures after the readPixels().  Third, we have to know that the beginFrame is a
forced frame so when we get the beginFrameComplete we go ahead with the rest of the frame.  For this, I think
I'll have to add ACTION_BEGIN_FORCED_FRAME and a corresponding COMMIT_STATE_FORCED_FRAME_IN_PROGRESS so the
scheduler can keep track of the magicness of this frame, and then add some logic after the readpixels call to
drop resources after the readback.  It's probably a good time to stop swapping on readbacks too....

The contents texture manager's budget is only relevant when we want to make a frame, so it's now passed in on
the updateLayers().  Since we only make frames when we are visible and we never have a zero allocation when
visible (thanks to the frame scheduling changes above), this value is always non-zero.  The other thing the
texture manager needs to know about is if we've killed all of the underlying textures from the impl thread -
this bit is passed in by the proxy before the updateLayers() call.  This means if we're running while visible
and the manager wants to decrease our budget to something other than zero, we'll get a new (non-zero) allocation
on the impl thread, schedule a frame, then when it's time to make the frame pass the new lower limit in to
updateLayers(), then have the contents texture manager evict down to our new limit and make a frame with the new
budget.  When the commit completes we'll get notified on the impl thread of which textures the contents texture
manager decided to evict and issue the deleteTexture() calls on them.

The texture budget we pass in will be based on the most recent non-zero memory allocation we received from the
GPU memory manager, or some default value I'll pull out my ass if we haven't heard anything yet.  On compositor
initialization, we can't afford to wait for a round-trip through the GPU process to get a budget for the first
frame.  I don't think handling a decrease to a non-zero budget on a visible tab needs to be terribly urgent - we
can get to it when we get to making the next frame.  If we wanted to satisfy reduced texture budgets directly
from the impl thread, we could keep a priority-list ordered set of textures once we have priorities and delete
based on that.  Let's worry about that later.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererGpuMemoryAllocationChangedCallbackAdapter::onGpuMemoryAllocationChangedOnImpl):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::setVisible):
(WebCore::LayerRendererChromium::setGpuMemoryAllocation):
(WebCore):
(WebCore::LayerRendererChromium::swapBuffers):
(WebCore::LayerRendererChromium::getFramebufferPixels):
* platform/graphics/chromium/LayerRendererChromium.h:
(WebCore):
(LayerRendererChromium):
* platform/graphics/chromium/TextureManager.cpp:
(WebCore::TextureManager::evictAndRemoveAllDeletedTextures):
(WebCore):
* platform/graphics/chromium/TextureManager.h:
(TextureAllocator):
(TextureManager):
* platform/graphics/chromium/TrackingTextureAllocator.cpp:
(WebCore::TrackingTextureAllocator::createTexture):
(WebCore::TrackingTextureAllocator::deleteTexture):
(WebCore):
(WebCore::TrackingTextureAllocator::deleteAllTextures):
* platform/graphics/chromium/TrackingTextureAllocator.h:
(TrackingTextureAllocator):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::evictAllContentTextures):
(WebCore::CCLayerTreeHost::updateLayers):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::commitComplete):
(WebCore::CCLayerTreeHostImpl::canDraw):
(WebCore::CCLayerTreeHostImpl::context):
(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):
(WebCore):
(WebCore::CCLayerTreeHostImpl::setMemoryAllocationLimitBytes):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImplClient):
(WebCore::CCLayerTreeHostImpl::contentsTexturesWerePurgedSinceLastCommit):
(WebCore::CCLayerTreeHostImpl::memoryAllocationLimitBytes):
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCProxy.h:
(CCProxy):
* platform/graphics/chromium/cc/CCRenderer.h:
(CCRendererClient):
* platform/graphics/chromium/cc/CCScheduler.cpp:
(WebCore::CCScheduler::beginFrameComplete):
(WebCore::CCScheduler::beginFrameAborted):
(WebCore):
(WebCore::CCScheduler::didSwapBuffersComplete):
(WebCore::CCScheduler::didLoseContext):
(WebCore::CCScheduler::didRecreateContext):
(WebCore::CCScheduler::vsyncTick):
* platform/graphics/chromium/cc/CCScheduler.h:
(CCScheduler):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
(WebCore::CCSchedulerStateMachine::beginFrameAborted):
(WebCore):
* platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::setVisible):
(WebCore):
(WebCore::CCSingleThreadProxy::stop):
(WebCore::CCSingleThreadProxy::commitAndComposite):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
(CCSingleThreadProxy):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::compositeAndReadback):
(WebCore::CCThreadProxy::setVisible):
(WebCore):
(WebCore::CCThreadProxy::setVisibleOnImplThread):
(WebCore::CCThreadProxy::scheduledActionBeginFrame):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameAbortedOnImplThread):
(WebCore::CCThreadProxy::scheduledActionDrawAndSwapInternal):
(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(CCThreadProxy):
(BeginFrameAndCommitState):
* platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
(WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::FramePlane::allocateData):
(WebCore::CCVideoLayerImpl::FramePlane::freeData):
(WebCore::CCVideoLayerImpl::allocatePlaneData):
(WebCore::CCVideoLayerImpl::freePlaneData):
(WebCore::CCVideoLayerImpl::freeUnusedPlaneData):
(WebCore::CCVideoLayerImpl::didLoseContext):
* platform/graphics/chromium/cc/CCVideoLayerImpl.h:
(FramePlane):

Source/WebKit/chromium:

Update various test fixtures and tests to cover scheduling, visibility, and resource allocation changes.

* tests/CCLayerTreeHostImplTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(CCLayerTreeHostTestAbortFrameWhenInvisible):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::CCLayerTreeHostTestAbortFrameWhenInvisible):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::beginTest):
(WTF::CCLayerTreeHostTestAbortFrameWhenInvisible::afterTest):
(WTF):
(WTF::TEST_F):
(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusionWithFilters::beginTest):
(WTF::CCLayerTreeHostTestManySurfaces::beginTest):
* tests/CCSchedulerStateMachineTest.cpp:
(WebCore::TEST):
* tests/CCTiledLayerTestCommon.h:
* tests/FakeWebGraphicsContext3D.h:
(WebKit::FakeWebGraphicsContext3D::FakeWebGraphicsContext3D):
(FakeWebGraphicsContext3D):
(WebKit::FakeWebGraphicsContext3D::createTexture):
* tests/LayerRendererChromiumTest.cpp:
(TEST_F):
* tests/TiledLayerChromiumTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120982 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] Layout test failures after fixing GraphicsLayerChromium scale factors
kbr@google.com [Thu, 21 Jun 2012 23:40:29 +0000 (23:40 +0000)]
[chromium] Layout test failures after fixing GraphicsLayerChromium scale factors
https://bugs.webkit.org/show_bug.cgi?id=89702

Unreviewed TestExpectations update to suppress failures.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120981 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoShrink NodeListsNodeData
rniwa@webkit.org [Thu, 21 Jun 2012 23:37:56 +0000 (23:37 +0000)]
Shrink NodeListsNodeData
https://bugs.webkit.org/show_bug.cgi?id=89036

Reviewed by Andreas Kling.

Replaced 6 hash maps of AtomicString, String, and RefPtr<QualifiedName::QualifiedNameImpl> and a raw pointer
by 3 hash maps of std::pair<unsigned short, AtomicString>, std::pair<unsigned short, String>, and QualifiedName,
to halve the NodeListsNodeData's size (Reduced from 7 pointers to 3 pointers). Made those hash maps private and
added addCacheWith* and removeCacheWith* member functions to reduce the code duplication.

Also got rid of removeCached*NodeList member functions from Node and Document now that DynamicSubtreeNodeList can
simply call nodeLists()->removeCacheWith* on m_node.

* dom/ChildNodeList.cpp:
(WebCore::ChildNodeList::ChildNodeList):
* dom/ClassNodeList.cpp:
(WebCore::ClassNodeList::~ClassNodeList):
* dom/Document.cpp:
(WebCore::Document::getItems): Use addCacheWithName.
* dom/Document.h: Got rid of removeCachedMicroDataItemList.
(Document):
* dom/DynamicNodeList.cpp:
(WebCore): Moved the constructor to the header file.
* dom/DynamicNodeList.h: Added NodeListType and InvalidationType to be used in NodeListsNodeData.
(WebCore::DynamicNodeList::DynamicNodeList): Takes the invalidation type.
(WebCore::DynamicNodeList::document): Added.
(WebCore::DynamicNodeList::shouldInvalidateOnAttributeChange): Added.
(WebCore::DynamicNodeList::Caches::Caches): Added shouldInvalidateOnAttributeChange to retain the invalidation type.
(Caches):
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
* dom/MicroDataItemList.cpp:
(WebCore::MicroDataItemList::~MicroDataItemList):
* dom/NameNodeList.cpp:
(WebCore::NameNodeList::NameNodeList):
(WebCore::NameNodeList::~NameNodeList):
(WebCore::NameNodeList::nodeMatches):
* dom/NameNodeList.h:
(WebCore):
(NameNodeList):
(WebCore::NameNodeList::create):
* dom/Node.cpp:
(WebCore::Node::nodeLists): Added so that node lists can directly call removeCacheWith*.
(WebCore::Node::getElementsByTagName):
(WebCore::Node::getElementsByTagNameNS):
(WebCore::Node::getElementsByName):
(WebCore::Node::getElementsByClassName):
(WebCore::Node::radioNodeList):
(WebCore::NodeListsNodeData::invalidateCaches): Merged invalidateCachesThatDependOnAttributes. The function takes
the attribute name to avoid invalidating tag node lists when only attributes are modified. Also, now we have exactly
three hash maps to invalidate: m_atomicNameCaches, m_nameCaches, and m_tagNodeListCacheNS.
(WebCore): NodeListsNodeData::isEmpty is moved to NodeRareData.h.
* dom/Node.h:
(WebCore):
(Node):
* dom/NodeRareData.h:
(NodeListsNodeData):
(WebCore::NodeListsNodeData::addCacheWithAtomicName):
(WebCore::NodeListsNodeData::addCacheWithName):
(WebCore::NodeListsNodeData::addCacheWithQualifiedName):
(WebCore::NodeListsNodeData::removeCacheWithAtomicName):
(WebCore::NodeListsNodeData::removeCacheWithName):
(WebCore::NodeListsNodeData::removeCacheWithQualifiedName):
(WebCore::NodeListsNodeData::isEmpty): Moved from Node.cpp now that this function is much shorter.
(WebCore::NodeListsNodeData::NodeListsNodeData):
(WebCore::NodeListsNodeData::namedNodeListKey): Helper member functions to obtain the key for AtomicString and
String hash maps.
* dom/TagNodeList.cpp:
(WebCore::TagNodeList::TagNodeList):
(WebCore::TagNodeList::~TagNodeList):
(WebCore::HTMLTagNodeList::HTMLTagNodeList): Hard code namespaceURI = starAtom since other values are never used.
(WebCore::HTMLTagNodeList::nodeMatches): Given that, assert m_namespace == starAtom.
* dom/TagNodeList.h:
(WebCore::TagNodeList::create): Add a new version of create that doesn't take namespace (assume starAtom) so that
addCacheWithAtomicName works with this class.
(WebCore::HTMLTagNodeList::create): Removed namespaceURI from the argument list since it's always starAtom.
(HTMLTagNodeList):
* html/LabelableElement.cpp:
(WebCore::LabelableElement::labels):
* html/LabelsNodeList.cpp:
(WebCore::LabelsNodeList::LabelsNodeList): Removed redundant m_forNode (identical to m_node in DynamicNodeList).
(WebCore::LabelsNodeList::~LabelsNodeList):
(WebCore::LabelsNodeList::nodeMatches):
* html/LabelsNodeList.h:
(WebCore::LabelsNodeList::create):
(LabelsNodeList):
* html/RadioNodeList.cpp:
(WebCore::RadioNodeList::RadioNodeList): Removed redundant m_baseElement (identical to m_node in DynamicNodeList).
Also changed the first argument's type from Element* to Node* so that it works better with new template member
functions of NodeListsNodeData.
(WebCore::RadioNodeList::~RadioNodeList):
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
* html/RadioNodeList.h:
(WebCore::RadioNodeList::create):
(RadioNodeList):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120979 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, rolling out r120945.
commit-queue@webkit.org [Thu, 21 Jun 2012 23:32:22 +0000 (23:32 +0000)]
Unreviewed, rolling out r120945.
http://trac.webkit.org/changeset/120945
https://bugs.webkit.org/show_bug.cgi?id=89703

editing/shadow/breaking-editing-boundaries.html started to
crash (Requested by hayato on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-21

Source/WebCore:

* dom/EventDispatcher.cpp:
(WebCore::EventRelatedTargetAdjuster::adjust):
(WebCore::EventDispatcher::ensureEventAncestors):

LayoutTests:

* fast/dom/shadow/shadow-dom-event-dispatching-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120978 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDRT/WTR python interface handles about:blank incorrectly
zoltan@webkit.org [Thu, 21 Jun 2012 23:32:04 +0000 (23:32 +0000)]
DRT/WTR python interface handles about:blank incorrectly
https://bugs.webkit.org/show_bug.cgi?id=89563

Reviewed by Dirk Pranke.

Currently DRT/WTR python interface's _command_from_driver_input function
puts the test directory path before about:blank. Remove this incorrect behavior.

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitDriver._command_from_driver_input):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120977 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoIndexedDB: Fix layout tests to clear previous database structures
jsbell@chromium.org [Thu, 21 Jun 2012 23:28:43 +0000 (23:28 +0000)]
IndexedDB: Fix layout tests to clear previous database structures
https://bugs.webkit.org/show_bug.cgi?id=89609

Reviewed by Tony Chang.

A handful of tests weren't deleting previously created stores (or the whole
database), which made them fail if trivially re-run in Chromium or under
NRWT with --iterations=2.

* storage/indexeddb/cursor-key-order-expected.txt:
* storage/indexeddb/cursor-primary-key-order-expected.txt:
* storage/indexeddb/open-during-transaction-expected.txt:
* storage/indexeddb/resources/cursor-key-order.js:
(prepareDatabase.deleteRequest.onsuccess.openreq.onsuccess.verreq.onsuccess):
(prepareDatabase.deleteRequest.onsuccess.openreq.onsuccess):
(prepareDatabase.deleteRequest.onsuccess):
(prepareDatabase):
* storage/indexeddb/resources/cursor-primary-key-order.js:
(prepareDatabase.deleteRequest.onsuccess.openRequest.onsuccess.versionChangeRequest.onsuccess):
(prepareDatabase.deleteRequest.onsuccess.openRequest.onsuccess):
(prepareDatabase.deleteRequest.onsuccess):
(prepareDatabase):
* storage/indexeddb/resources/factory-deletedatabase-interactions.js:
* storage/indexeddb/resources/open-close-version.js:
(test6):
(test6.halfDone):
* storage/indexeddb/resources/open-during-transaction.js:
(prepareDatabase.deleteRequest.onsuccess.openreq1.onsuccess.setverreq.onsuccess.setverreq.result.oncomplete):
(prepareDatabase.deleteRequest.onsuccess.openreq1.onsuccess.setverreq.onsuccess):
(prepareDatabase.deleteRequest.onsuccess.openreq1.onsuccess):
(prepareDatabase.deleteRequest.onsuccess):
(prepareDatabase):
* storage/indexeddb/transaction-abort-with-js-recursion-cross-frame-expected.txt:
* storage/indexeddb/transaction-abort-with-js-recursion-cross-frame.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120976 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GStreamer] Use setGstElementClassMetadata.
philn@webkit.org [Thu, 21 Jun 2012 22:56:56 +0000 (22:56 +0000)]
[GStreamer] Use setGstElementClassMetadata.

Rubber/stamped by Martin Robinson.

This function was introduced in r120790 but I forgot to actually
use it in that patch.

* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
(webkit_video_sink_class_init):
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120975 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDFG should inline 'new Array()'
fpizlo@apple.com [Thu, 21 Jun 2012 22:55:42 +0000 (22:55 +0000)]
DFG should inline 'new Array()'
https://bugs.webkit.org/show_bug.cgi?id=89632

Reviewed by Geoffrey Garen.

This adds support for treating InternalFunction like intrinsics. The code
to do so is actually quite clean, so I don't feel bad about perpetuating
the InternalFunction vs. JSFunction-with-NativeExecutable dichotomy.

Currently this newfound power is only used to inline 'new Array()'.

* dfg/DFGByteCodeParser.cpp:
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(DFG):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::isInternalFunctionConstant):
(JSC::DFG::Graph::valueOfInternalFunctionConstant):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120974 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Enable CSP_NEXT on the Chromium port.
commit-queue@webkit.org [Thu, 21 Jun 2012 22:40:51 +0000 (22:40 +0000)]
[Chromium] Enable CSP_NEXT on the Chromium port.
https://bugs.webkit.org/show_bug.cgi?id=89683

Patch by Mike West <mkwst@chromium.org> on 2012-06-21
Reviewed by Adam Barth.

Enable CSP 1.1 on the Chromium port. This has zero practical effect,
as no CSP 1.1 patches have landed yet. But it will. Oh it will.

* features.gypi: ENABLE_CSP_NEXT=1

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120972 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Chromium] Rebaseline video tests after r120939
kbr@google.com [Thu, 21 Jun 2012 22:39:59 +0000 (22:39 +0000)]
[Chromium] Rebaseline video tests after r120939
https://bugs.webkit.org/show_bug.cgi?id=89696

Unreviewed test expectations update to adjust bug number and
silence failures on Windows platform. Rebaselines are still needed.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120971 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdding copyrights to new files.
mhahnenberg@apple.com [Thu, 21 Jun 2012 22:38:39 +0000 (22:38 +0000)]
Adding copyrights to new files.

* heap/HeapTimer.cpp:
* heap/HeapTimer.h:
* heap/IncrementalSweeper.cpp:
* heap/IncrementalSweeper.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120970 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[V8] Use v8::V8::AddImplicitReferences instead of SetHiddenValue
arv@chromium.org [Thu, 21 Jun 2012 22:34:26 +0000 (22:34 +0000)]
[V8] Use v8::V8::AddImplicitReferences instead of SetHiddenValue
https://bugs.webkit.org/show_bug.cgi?id=80880

Reviewed by Adam Barth.

We used to add a hidden property in the getter to the returned wrapper.
With this patch we instead handle the liveness of the wrapper in the GC phase by
calling v8::V8::AddHiddenReference.

To reduce the amount of custom code we need, the V8 code generator now supports
GenerateIsReachable (as well as CustomIsReachable) which, even though different
from the JSC attribute, is used in the same cases and takes the same values (even though
at the moment not all JSC values are supported by V8). Interfaces that have *IsReachable
also have a dependent life time (just like if V8DependentLifetime was present).

No new tests. Covered by existing tests.

* Target.pri:
* UseV8.cmake:
* WebCore.gypi:
* bindings/scripts/CodeGeneratorJS.pm:
(GetGenerateIsReachable): Abstracted GenerateIsReachable and JSGenerateIsReachable.
(GetCustomIsReachable): Ditto.
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorV8.pm:
(NeedsToVisitDOMWrapper):
(GetGenerateIsReachable):
(GetCustomIsReachable):
(GenerateVisitDOMWrapper):
(GenerateHeader):
(GenerateNamedConstructorCallback):
(GenerateImplementation):
* bindings/scripts/IDLAttributes.txt:
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
* bindings/scripts/test/V8/V8Float64Array.h:
(V8Float64Array):
* bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestActiveDOMObject.h:
(V8TestActiveDOMObject):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
(V8TestCustomNamedGetter):
* bindings/scripts/test/V8/V8TestEventConstructor.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestEventConstructor.h:
(V8TestEventConstructor):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestEventTarget.h:
(V8TestEventTarget):
* bindings/scripts/test/V8/V8TestException.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestException.h:
(V8TestException):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestInterface.h:
(V8TestInterface):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
(V8TestMediaQueryListListener):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestNamedConstructor.h:
(V8TestNamedConstructor):
* bindings/scripts/test/V8/V8TestNode.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestNode.h:
(V8TestNode):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestObj.h:
(V8TestObj):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
(V8TestSerializedScriptValueInterface):
* bindings/v8/NPV8Object.cpp:
(WebCore::npObjectTypeInfo):
* bindings/v8/V8GCController.cpp:
(WebCore::GrouperVisitor::visitDOMWrapper):
* bindings/v8/WrapperTypeInfo.h:
(WebCore):
(WrapperTypeInfo):
* bindings/v8/custom/V8CSSStyleSheetCustom.cpp: Removed.
* bindings/v8/custom/V8DOMStringMapCustom.cpp:
* bindings/v8/custom/V8DOMTokenListCustom.cpp: Removed.
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore):
* bindings/v8/custom/V8NamedNodeMapCustom.cpp:
* bindings/v8/custom/V8StyleSheetCustom.cpp:
(WebCore::toV8):
* bindings/v8/custom/V8TextTrackListCustom.cpp: Removed.
* css/CSSStyleSheet.idl:
* css/StyleSheet.idl:
* dom/DOMStringMap.idl:
* dom/NamedNodeMap.idl:
* html/DOMTokenList.idl:
* html/track/TextTrackList.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120968 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoIndexedDB: Implement spec behavior for multiEntry indexes with invalid/duplicate...
commit-queue@webkit.org [Thu, 21 Jun 2012 22:28:40 +0000 (22:28 +0000)]
IndexedDB: Implement spec behavior for multiEntry indexes with invalid/duplicate subkeys
https://bugs.webkit.org/show_bug.cgi?id=86123

Patch by Alec Flett <alecflett@chromium.org> on 2012-06-21
Reviewed by Darin Fisher.

Source/WebCore:

Distinguish between an actual invalid IDBKey, and an array of
possibly-invalid subkeys by making IDBKey::isValid() check subkeys
if the type is an array.

Introduce a new way to transform an IDBKey into a
multiEntry-specific IDBKey, (IDBKey::createMultiEntryArray)
throwing out duplicates and invalid keys. Use it when storing
index entries for multiEntry indexes.

No new tests: existing tests have been altered to include new behavior.

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::continueFunction):
* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::cmp):
* Modules/indexeddb/IDBIndex.cpp:
(WebCore::IDBIndex::get):
(WebCore::IDBIndex::getKey):
* Modules/indexeddb/IDBKey.cpp:
(WebCore::IDBKey::isValid):
(WebCore):
* Modules/indexeddb/IDBKey.h:
(WebCore::IDBKey::createMultiEntryArray):
(IDBKey):
* Modules/indexeddb/IDBKeyRange.cpp:
(WebCore::IDBKeyRange::only):
(WebCore::IDBKeyRange::lowerBound):
(WebCore::IDBKeyRange::upperBound):
(WebCore::IDBKeyRange::bound):
* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore::IDBLevelDBBackingStore::putObjectStoreRecord):
(WebCore::IDBLevelDBBackingStore::putIndexDataForRecord):
* Modules/indexeddb/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::encodeIDBKey):
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::get):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore):
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore::createIDBKeyFromValue):

Source/WebKit/chromium:

Add matching isValid() to WebIDBKey to match the one in IDBKey.

* public/WebIDBKey.h:
* src/WebIDBKey.cpp:
(WebKit::WebIDBKey::isValid):
(WebKit):
* src/WebIDBKeyRange.cpp:
(WebKit::WebIDBKeyRange::assign):

LayoutTests:

* storage/indexeddb/index-multientry-expected.txt:
* storage/indexeddb/resources/index-multientry.js:
(addData):
(verifyIndexes.request.onsuccess):
(verifyIndexes):
(verifyUniqueConstraint.request.onsuccess.request.onsuccess.request.onerror):
(verifyUniqueConstraint.request.onsuccess.request.onsuccess):
(verifyUniqueConstraint.request.onsuccess):
(verifyUniqueConstraint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120967 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] Overlays when using the web inspector are blurry with device scale factor > 1
commit-queue@webkit.org [Thu, 21 Jun 2012 22:02:32 +0000 (22:02 +0000)]
[chromium] Overlays when using the web inspector are blurry with device scale factor > 1
https://bugs.webkit.org/show_bug.cgi?id=89676

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-21
Reviewed by James Robinson.

Whenever we construct a GraphicsLayerChromium, make initialize the
device and page scale factors, if possible.

Source/WebCore:

Unit test: GraphicsLayerChromiumTest.shouldStartWithCorrectContentsScale

* platform/graphics/chromium/GraphicsLayerChromium.cpp:
(WebCore::GraphicsLayerChromium::GraphicsLayerChromium):

Source/WebKit/chromium:

* tests/GraphicsLayerChromiumTest.cpp:
(WebKitTests::TEST_F):
(WebKitTests):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120966 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoreenable perf tests on win
dpranke@chromium.org [Thu, 21 Jun 2012 21:48:20 +0000 (21:48 +0000)]
reenable perf tests on win
https://bugs.webkit.org/show_bug.cgi?id=89690

Reviewed by Ryosuke Niwa.

Only the replay tests don't work, and those are disabled by
default. This change also fixes the undefined _log reference
that was causing a crash.

* Scripts/run-perf-tests:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120965 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] REGRESSION(r120790): broke video rendering
philn@webkit.org [Thu, 21 Jun 2012 21:23:56 +0000 (21:23 +0000)]
[Qt] REGRESSION(r120790): broke video rendering
https://bugs.webkit.org/show_bug.cgi?id=89619

Reviewed by Alexis Menard.

Invert the pixel components of the Image on little endian architectures.

* platform/graphics/gstreamer/ImageGStreamerQt.cpp:
(ImageGStreamer::ImageGStreamer):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120964 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WK2] Add C API to inspect a Web Intent
commit-queue@webkit.org [Thu, 21 Jun 2012 21:23:28 +0000 (21:23 +0000)]
[WK2] Add C API to inspect a Web Intent
https://bugs.webkit.org/show_bug.cgi?id=89275

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-21
Reviewed by Anders Carlsson.

Add C API for Web Intent so that it can be queried
on client side.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* UIProcess/API/C/WKIntentData.cpp: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
(WKIntentDataGetTypeID):
(WKIntentDataCopyAction):
(WKIntentDataCopyType):
(WKIntentDataCopyService):
(WKIntentDataCopySuggestions):
(WKIntentDataCopyExtra):
(WKIntentDataCopyExtras):
* UIProcess/API/C/WKIntentData.h: Copied from Source/WebKit2/UIProcess/WebIntentData.cpp.
* UIProcess/WebIntentData.cpp:
(WebKit::WebIntentData::suggestions):
(WebKit):
(WebKit::WebIntentData::extra):
(WebKit::WebIntentData::extras):
* UIProcess/WebIntentData.h:
(WebIntentData):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120963 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Resource Timing] Implement Resource Timing interface
simonjam@chromium.org [Thu, 21 Jun 2012 21:15:19 +0000 (21:15 +0000)]
[Resource Timing] Implement Resource Timing interface
https://bugs.webkit.org/show_bug.cgi?id=61152

This patch implements the Resource Timing interface. It doesn't do anything
useful, because nothing populates the timeline yet. There are also some gaps
in the implementation, which have been filed as bugs.

http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/ResourceTiming/Overview.html

Reviewed by Tony Gentilcore.

No new tests. Feature is disabled on all platforms.

* CMakeLists.txt:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/v8/custom/V8PerformanceEntryCustom.cpp:
(WebCore):
(WebCore::toV8): Support PerformanceEntry polymorphism.
* dom/EventNames.h:
(WebCore):
* dom/EventTargetFactory.in:
* page/Performance.cpp:
(WebCore::Performance::~Performance):
(WebCore):
(WebCore::Performance::interfaceName): Reqired for EventTarget.
(WebCore::Performance::scriptExecutionContext): Ditto.
(WebCore::Performance::webkitGetEntries): Return "resource" entries.
(WebCore::Performance::webkitGetEntriesByType): Ditto.
(WebCore::Performance::webkitGetEntriesByName): Ditto.
(WebCore::Performance::webkitClearResourceTimings): New.
(WebCore::Performance::webkitSetResourceTimingBufferSize): New. Unimplemented.
(WebCore::Performance::addResourceTiming): This is how resources in WebCore will report to the timeline.
(WebCore::Performance::eventTargetData): Required for EventTarget.
(WebCore::Performance::ensureEventTargetData): Ditto.
* page/Performance.h:
(Performance):
(WebCore::Performance::refEventTarget):
(WebCore::Performance::derefEventTarget):
* page/Performance.idl:
* page/PerformanceEntry.cpp:
(WebCore::PerformanceEntry::~PerformanceEntry):
(WebCore):
* page/PerformanceEntry.h:
(PerformanceEntry):
(WebCore::PerformanceEntry::isResource):
* page/PerformanceEntry.idl:
* page/PerformanceResourceTiming.cpp: Added.
(WebCore):
(WebCore::PerformanceResourceTiming::PerformanceResourceTiming):
(WebCore::PerformanceResourceTiming::initiatorType):
(WebCore::PerformanceResourceTiming::redirectStart):
(WebCore::PerformanceResourceTiming::redirectEnd):
(WebCore::PerformanceResourceTiming::fetchStart):
(WebCore::PerformanceResourceTiming::domainLookupStart):
(WebCore::PerformanceResourceTiming::domainLookupEnd):
(WebCore::PerformanceResourceTiming::connectStart):
(WebCore::PerformanceResourceTiming::connectEnd):
(WebCore::PerformanceResourceTiming::secureConnectionStart):
(WebCore::PerformanceResourceTiming::requestStart):
(WebCore::PerformanceResourceTiming::responseStart):
(WebCore::PerformanceResourceTiming::responseEnd):
(WebCore::PerformanceResourceTiming::monotonicTimeToDocumentMilliseconds):
(WebCore::PerformanceResourceTiming::resourceTimeToMilliseconds):
* page/PerformanceResourceTiming.h: Added.
(WebCore):
(PerformanceResourceTiming):
(WebCore::PerformanceResourceTiming::create):
(WebCore::PerformanceResourceTiming::isResource):
* page/PerformanceResourceTiming.idl: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120962 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSpeech JavaScript API: Remove FIXMEs about whether events bubble and are cancelable
hans@chromium.org [Thu, 21 Jun 2012 20:20:02 +0000 (20:20 +0000)]
Speech JavaScript API: Remove FIXMEs about whether events bubble and are cancelable
https://bugs.webkit.org/show_bug.cgi?id=89657

Reviewed by Adam Barth.

The spec has been updated to clarify that the events do not bubble and
are not cancelable.

No new tests, just removing comments.

* Modules/speech/SpeechRecognition.cpp:
(WebCore::SpeechRecognition::didStartAudio):
* Modules/speech/SpeechRecognitionError.cpp:
(WebCore::SpeechRecognitionError::SpeechRecognitionError):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120960 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd a parameter to handletTouchPoint to bypass FatFingers
commit-queue@webkit.org [Thu, 21 Jun 2012 20:13:57 +0000 (20:13 +0000)]
Add a parameter to handletTouchPoint to bypass FatFingers
on touch up. There are some cases where the user may drag
their finger off the element and we want to use the actual
touch point instead of the FatFingers adjusted point.
https://bugs.webkit.org/show_bug.cgi?id=89677

Patch by Genevieve Mak <gmak@rim.com> on 2012-06-21
Reviewed by Antonio Gomes.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::touchPointAsMouseEvent):
* Api/WebPage.h:
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):
* WebKitSupport/TouchEventHandler.h:
(TouchEventHandler):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120959 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: [WebGL] Rename InjectedWebGLScriptSource.js -> InjectedScriptWebGLModu...
commit-queue@webkit.org [Thu, 21 Jun 2012 19:26:37 +0000 (19:26 +0000)]
Web Inspector: [WebGL] Rename InjectedWebGLScriptSource.js -> InjectedScriptWebGLModuleSource.js
https://bugs.webkit.org/show_bug.cgi?id=89675

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-06-21
Reviewed by Pavel Feldman.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InjectedScriptWebGLModule.cpp:
(WebCore::InjectedScriptWebGLModule::source):
* inspector/InjectedScriptWebGLModuleSource.js: Renamed from Source/WebCore/inspector/InjectedWebGLScriptSource.js.
(.):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120957 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Fix NPAPI plugins on Windows
commit-queue@webkit.org [Thu, 21 Jun 2012 19:20:00 +0000 (19:20 +0000)]
[GTK] Fix NPAPI plugins on Windows
https://bugs.webkit.org/show_bug.cgi?id=54531

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-21
Reviewed by Martin Robinson.

.:

Define XP_WIN on Windows for plugin support.

* GNUmakefile.am:

Source/WebCore:

Switch to using PluginPackageWin.cpp and PluginViewWin.cpp on Windows
platform, and leave plugins/gtk/ only for XP_UNIX platforms. With this
we can share a lot of code with other ports and don't have to
reimplement all the Windows-specific code in plugins/gtk/.

* GNUmakefile.am:
* GNUmakefile.list.am:
* platform/FileSystem.h:
(WebCore):
* platform/graphics/GraphicsContext.h:
(GraphicsContext):
* platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
(GraphicsContextPlatformPrivate):
* platform/graphics/transforms/TransformationMatrix.h:
(TransformationMatrix):
* platform/graphics/win/GraphicsContextCairoWin.cpp:
(WebCore):
* platform/graphics/win/GraphicsContextWin.cpp:
(WebCore):
* platform/gtk/FileSystemGtk.cpp:
(WebCore::unloadModule):
* plugins/PluginView.h:
(PluginView):
* plugins/win/PluginViewWin.cpp:
(windowHandleForPageClient):
(WebCore::registerPluginView):
(WebCore::PluginView::paint):
(WebCore::PluginView::handleMouseEvent):
(WebCore::PluginView::platformStart):
(WebCore::PluginView::snapshot):

Source/WTF:

Define ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH for the GTK+ port, and
include OwnPtrWin.cpp in the list of files built on Windows.

* GNUmakefile.am:
* GNUmakefile.list.am:
* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120956 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed, rolling out r120937.
commit-queue@webkit.org [Thu, 21 Jun 2012 18:57:45 +0000 (18:57 +0000)]
Unreviewed, rolling out r120937.
http://trac.webkit.org/changeset/120937
https://bugs.webkit.org/show_bug.cgi?id=89679

This patch brought buildbot master down (Requested by svillar
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-21

* BuildSlaveSupport/build.webkit.org-config/config.json:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120955 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/11718988> and https://bugs.webkit.org/show_bug.cgi?id=89673
beidson@apple.com [Thu, 21 Jun 2012 18:54:21 +0000 (18:54 +0000)]
<rdar://problem/11718988> and https://bugs.webkit.org/show_bug.cgi?id=89673
showModalDialog fix creates risk of never returning from RunLoop::performWork, potentially blocking other event sources

In case handling a function on the queue places additional functions on the queue, we should
limit the number of functions each invocation of performWork() performs so it can return and
other event sources have a chance to spin.

The showModalDialog fix in question is http://trac.webkit.org/changeset/120879

Reviewed by Darin Adler and Anders Carlson.

* platform/RunLoop.cpp:
(WebCore::RunLoop::performWork): If there are only N functions in the queue when performWork is called,
  only handle up to N functions before returning. Any additional functions will be handled the next time
  the runloop spins.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120954 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSVGImageCache isn't invalidated for <img> on dynamic page scale changes
timothy_horton@apple.com [Thu, 21 Jun 2012 18:37:19 +0000 (18:37 +0000)]
SVGImageCache isn't invalidated for <img> on dynamic page scale changes
https://bugs.webkit.org/show_bug.cgi?id=89621
<rdar://problem/11714677>

Reviewed by Simon Fraser.

Previously, device and page scale factors were being cached as a part of the SVGImageCache's
size request. However, an <img> never has a reason to update its size request when the page
scale is changed via gesture zooming, as no layout occurs.

Instead, look up the relevant scales when the image is requested (which will occur during every
repaint), allowing page scale changes to take effect without requiring an updated size request.

Test: svg/as-image/image-respects-pageScaleFactor-change.html

* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::lookupOrCreateImageForRenderer):
(WebCore::CachedImage::setContainerSizeForRenderer):
* svg/graphics/SVGImageCache.cpp:
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForRenderer):
* svg/graphics/SVGImageCache.h:
(WebCore::SVGImageCache::SizeAndScales::SizeAndScales):
(SizeAndScales):

Add a test that ensures that dynamic changes to pageScaleFactor are propagated through
to the SVGImageCache.

* platform/mac/svg/as-image/image-respects-pageScaleFactor-change-expected.png: Added.
* platform/mac/svg/as-image/image-respects-pageScaleFactor-change-expected.txt: Added.
* svg/as-image/image-respects-pageScaleFactor-change.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120953 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSkipping this failing test. Filed
bdakin@apple.com [Thu, 21 Jun 2012 18:35:20 +0000 (18:35 +0000)]
Skipping this failing test. Filed
https://bugs.webkit.org/show_bug.cgi?id=89680 to track fixing the
real issue.

* platform/mac/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd pending resource even if others are pending
pdr@google.com [Thu, 21 Jun 2012 18:24:01 +0000 (18:24 +0000)]
Add pending resource even if others are pending
https://bugs.webkit.org/show_bug.cgi?id=89633

Reviewed by Dirk Schulze.

Source/WebCore:

An element can have multiple simultaneous pending resources but some of
this code was legacy, before the hasPendingResource()->hasPendingResources()
change (r105573). This patch continues adding a pending resource even if
there are other pending resources. In some cases, this can lead to marking
a resource as pending twice but the performance impact of that is negligible.

Other than SVGUseElement, SVGTrefElement and SVGFEImageElement are also
changed. These elements are unaffected because they can only have
a single resource at the moment (href), with other Style url() references
being handled by their parent containers.

Tests: svg/custom/use-multiple-pending-resources-expected.svg
       svg/custom/use-multiple-pending-resources.svg

* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::buildPendingResource):
* svg/SVGTRefElement.cpp:
(WebCore::SVGTRefElement::detachTarget):
(WebCore::SVGTRefElement::buildPendingResource):
* svg/SVGUseElement.cpp:
(WebCore::SVGUseElement::buildPendingResource):

LayoutTests:

* svg/custom/use-multiple-pending-resources-expected.svg: Added.
* svg/custom/use-multiple-pending-resources.svg: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120951 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Replace the use of "struct stat" with GStatBuf
commit-queue@webkit.org [Thu, 21 Jun 2012 18:21:45 +0000 (18:21 +0000)]
[GTK] Replace the use of "struct stat" with GStatBuf
https://bugs.webkit.org/show_bug.cgi?id=89488

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-06-21
Reviewed by Martin Robinson.

Make sure we pass GStatBuf to g_stat(); depending on the platform, it
isn't always the same as "struct stat", e.g. on Windows.

* platform/gtk/FileSystemGtk.cpp:
(WebCore::getFileSize):
(WebCore::getFileModificationTime):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120950 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoremove ENABLE_FULLSCREEN_MEDIA_CONTROL flag
commit-queue@webkit.org [Thu, 21 Jun 2012 18:17:21 +0000 (18:17 +0000)]
remove ENABLE_FULLSCREEN_MEDIA_CONTROL flag
https://bugs.webkit.org/show_bug.cgi?id=89614

Patch by Min Qin <qinmin@chromium.org> on 2012-06-21
Reviewed by Eric Carlson.

Source/WebCore:

Desktop chromium also starts to use fullscreen button after https://bugs.webkit.org/show_bug.cgi?id=88818
we don't need this flag any more
No test needed as this change just removes a flag.

* html/shadow/MediaControlRootElementChromium.cpp:
(WebCore::MediaControlRootElementChromium::MediaControlRootElementChromium):
(WebCore::MediaControlRootElementChromium::create):
(WebCore::MediaControlRootElementChromium::setMediaController):
(WebCore::MediaControlRootElementChromium::reset):
(WebCore::MediaControlRootElementChromium::reportedError):
* html/shadow/MediaControlRootElementChromium.h:
(MediaControlRootElementChromium):

Source/WebKit/chromium:

Since desktop chrome now has fullscreen button, we don't need this flag anymore

* features.gypi:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120949 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WK2] Properly encode/decode service in IntentData
commit-queue@webkit.org [Thu, 21 Jun 2012 18:14:44 +0000 (18:14 +0000)]
[WK2] Properly encode/decode service in IntentData
https://bugs.webkit.org/show_bug.cgi?id=89460

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-06-21
Reviewed by Gustavo Noronha Silva.

Update IntentData::encode() and IntentData::decode()
so that the "service" member is properly encoded
and decoded.

* Shared/IntentData.cpp:
(WebKit::IntentData::encode):
(WebKit::IntentData::decode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120948 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed gardening. Removing pixel results for CSS computed style tests which are...
tony@chromium.org [Thu, 21 Jun 2012 18:09:36 +0000 (18:09 +0000)]
Unreviewed gardening. Removing pixel results for CSS computed style tests which are text only tests.

* platform/qt/fast/css/getComputedStyle/computed-style-expected.png: Removed.
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.png: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120947 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed gardening. The computed style tests should now pass on EFL after r120870.
tony@chromium.org [Thu, 21 Jun 2012 18:07:40 +0000 (18:07 +0000)]
Unreviewed gardening. The computed style tests should now pass on EFL after r120870.

* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120946 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoModify event re-targeting algorithm so that we can tell which distributed node is...
hayato@chromium.org [Thu, 21 Jun 2012 18:05:26 +0000 (18:05 +0000)]
Modify event re-targeting algorithm so that we can tell which distributed node is clicked.
https://bugs.webkit.org/show_bug.cgi?id=89073

Reviewed by Dimitri Glazkov.

Source/WebCore:

Adopt a new event re-targeting algorithm in the latest Shadow DOM spec.
The corresponding bug in the shadow DOM spec is:
https://www.w3.org/Bugs/Public/show_bug.cgi?id=17090

This change is introduced to handle the following use case:
1. There is an insertion point, with zero or more nodes distributed into it.
2. User clicks on one of the items.
3. The event handler in shadow DOM subtree wants to know which item was clicked on.

The new re-targeting algorithm sets an event's target to a
distributed node where an event was originally fired, instead of
an insertion point to where the node is distributed.

The similar re-targeting algorithm also applies to an event's
relatedTarget.

Test: fast/dom/shadow/shadow-dom-event-dispatching.html

* dom/EventDispatcher.cpp:
(WebCore::EventRelatedTargetAdjuster::adjust):
(WebCore::EventDispatcher::ensureEventAncestors):

LayoutTests:

* fast/dom/shadow/shadow-dom-event-dispatching-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120945 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Combine WebKit API tests into fewer binaries
mrobinson@webkit.org [Thu, 21 Jun 2012 18:01:58 +0000 (18:01 +0000)]
[GTK] Combine WebKit API tests into fewer binaries
https://bugs.webkit.org/show_bug.cgi?id=88458

Reviewed by Carlos Garcia Campos.

Instead of creating one binary per-test file, create binaries for each
category of tests. Right now this includes WTF and the WebKit2 C API,
but later tests can be added for the GTK+ platform layer and the WebKit1
and WebKit2 API layers.

* TestWebKitAPI/GNUmakefile.am: Compile only two test binaries, one for the WebKit2
  C API and one for WTF. Refresh the source list to ensure that new test are active.
* gtk/run-api-tests: Change the way that tests are skipped by splitting out the
concept of skipping a test and skipping a suite (program) of tests. Test cases are
skipped because of legitimate failures, but entire programs are skipped because of
problems in the harness. As of right now a test program is only skipped if the
accessibility bus cannot be started.
(SkippedTest.__init__): Make the test case a required argument and have one skipped
test case per SkippedTest instance.
(SkippedTest.__str__): Ditto.
(TestRunner): Update the directory list. We only have two gtest binaries now and they are
in one directory. Reformat the test list to make it slightly easier to read.
(TestRunner.__init__): Add the _skipped_test_program member, which handles entire
test programs that are skipped.
(TestRunner._setup_testing_environment): Use the new member.
(TestRunner._test_cases_to_skip): Collect all skipped test cases now instead of just
the first SkippedTest that matches.
(TestRunner._should_run_test_program): Take a look at the new member to make this
decision.
(TestRunner._run_test_command): Use the name test_program instead of test
to disambiguate between test cases and test suites.
(TestRunner._run_test_glib): ditto.
(TestRunner._run_test_google): Ditto.
(TestRunner._run_test): Ditto.
(TestRunner.run_tests): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120944 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[CSSRegions]Change WEBKIT_REGION_RULE value to 16
commit-queue@webkit.org [Thu, 21 Jun 2012 17:53:54 +0000 (17:53 +0000)]
[CSSRegions]Change WEBKIT_REGION_RULE value to 16
https://bugs.webkit.org/show_bug.cgi?id=89421

Patch by Andrei Onea <onea@adobe.com> on 2012-06-21
Reviewed by Tony Chang.

Source/WebCore:

Modified WEBKIT_REGION_RULE where applicable to match CSS Regions spec.
The new value for WEBKIT_REGION_RULE is 16 (was 10).

* css/CSSRule.cpp:
(WebCore):
Added COMPILE_ASSERT to ensure StyleRule::Region and CSSRule::WEBKIT_REGION_RULE will
* css/CSSRule.h:
(CSSRule):
Modified m_type bitfield length to 5
* css/CSSRule.idl:
* css/StyleRule.cpp:
(SameSizeAsStyleRuleBase):
(WebCore):
Added COMPILE_ASSERT to ensure that StyleRuleBase will always have exactly 32bits.
* css/StyleRule.h:
(StyleRuleBase):
Modified m_type bitfield to 5 to accommodate the new value, and modified
m_sourceLine bitfield to 27 bits in order to keep StyleRule 32
bits long. Consequently, any css rule longer than 67,108,863 lines will
cause overflow - however, the value is large enough not to cause
problems.

LayoutTests:

Added check for exact value of WEBKIT_REGION_RULE which should be 16,
according to CSS Regions spec.

* fast/regions/webkit-region-rule-expected.txt:
* fast/regions/webkit-region-rule.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120943 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoUnreviewed. Moving myself from committer list to reviewer.
yong.li@torchmobile.com [Thu, 21 Jun 2012 17:50:34 +0000 (17:50 +0000)]
Unreviewed. Moving myself from committer list to reviewer.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120942 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agomake sure headers are included only once per file
commit-queue@webkit.org [Thu, 21 Jun 2012 17:34:26 +0000 (17:34 +0000)]
make sure headers are included only once per file
https://bugs.webkit.org/show_bug.cgi?id=88922

Patch by Arnaud Renevier <arno@renevier.net> on 2012-06-21
Reviewed by Alexey Proskuryakov.

* bytecode/CodeBlock.h:
* heap/MachineStackMarker.cpp:
* runtime/JSVariableObject.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120941 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agor120835: fast/box-decoration-break/box-decoration-break-rendering.html failing on...
jonlee@apple.com [Thu, 21 Jun 2012 17:34:23 +0000 (17:34 +0000)]
r120835: fast/box-decoration-break/box-decoration-break-rendering.html failing on mac bots
https://bugs.webkit.org/show_bug.cgi?id=89620

* platform/mac/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120940 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoPaint played and buffered ranges differently in Chrome video controls.
commit-queue@webkit.org [Thu, 21 Jun 2012 17:32:05 +0000 (17:32 +0000)]
Paint played and buffered ranges differently in Chrome video controls.
https://bugs.webkit.org/show_bug.cgi?id=89284

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-06-21
Reviewed by Eric Carlson.

Source/WebCore:

No new tests; existing video control tests cover this case.

The Chrome video controls are receiving a visual update. This patch changes
the format in which the playback position slider displays the buffered range.
It is painted in a lighter color left of the position thumb and darker right
of the position thumb

* css/mediaControlsChromium.css:
(input[type="range"]::-webkit-media-slider-container):
Adjust the border color of the playback position slider.
* rendering/RenderMediaControlsChromium.cpp:
(WebCore::paintRoundedSliderBackground):
Adjust the background color of the position slider.
(WebCore::paintSliderRangeHighlight):
Make the color of the range region a function parameter,
provide start and end position as pixel width instead of percentage,
and make sure the rounded corners at beginning and end don't turn into rectangles.
(WebCore):
Move the mediaSliderThumbWidth variable up to be used in paintMediaSlider().
(WebCore::paintMediaSlider):
Calculate start, current and end position instead of fractions,
adjust the current position by half the thumb's width for improved rendering,
and draw two highlight areas: one bright one before current position and
one grey one after current position.
(WebCore::paintMediaVolumeSlider):
Adjust the paintSliderRangeHighlight function call and add the colors.

LayoutTests:

Rebaseline tests for linux build; mark others in TestExpectations.

* platform/chromium/TestExpectations:
* platform/chromium-linux/fast/layers/video-layer-expected.png:
* platform/chromium-linux/fullscreen/full-screen-stacking-context-expected.png:
* platform/chromium-linux/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
* platform/chromium-linux/media/audio-controls-rendering-expected.png:
* platform/chromium-linux/media/controls-after-reload-expected.png:
* platform/chromium-linux/media/controls-strict-expected.png:
* platform/chromium-linux/media/controls-styling-expected.png:
* platform/chromium-linux/media/controls-without-preload-expected.png:
* platform/chromium-linux/media/video-controls-rendering-expected.png:
* platform/chromium-linux/media/video-display-toggle-expected.png:
* platform/chromium-linux/media/video-playing-and-pause-expected.png:
* platform/chromium-linux/media/video-zoom-controls-expected.png:
* platform/chromium-linux/media/audio-repaint-expected.png:
* platform/chromium-linux/media/controls-layout-direction-expected.png:
* platform/chromium-linux/media/media-controls-clone-expected.png:
* platform/chromium-linux/media/media-document-audio-repaint-expected.png:
* platform/chromium-linux/media/video-no-audio-expected.png:
* platform/chromium-win/fast/layers/video-layer-expected.txt:
* platform/chromium-win/media/audio-controls-rendering-expected.txt:
* platform/chromium-win/media/audio-repaint-expected.txt:
* platform/chromium-win/media/controls-after-reload-expected.txt:
* platform/chromium-win/media/controls-strict-expected.txt:
* platform/chromium-win/media/controls-styling-expected.txt:
* platform/chromium-win/media/controls-without-preload-expected.txt:
* platform/chromium-win/media/media-controls-clone-expected.txt:
* platform/chromium-win/media/media-document-audio-repaint-expected.txt:
* platform/chromium-win/media/video-controls-rendering-expected.txt:
* platform/chromium-win/media/video-display-toggle-expected.txt:
* platform/chromium-win/media/video-no-audio-expected.txt:
* platform/chromium-win/media/video-playing-and-pause-expected.txt:
* platform/chromium-win/media/video-zoom-controls-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove unused static variable uninitializedLineNumberValue.
commit-queue@webkit.org [Thu, 21 Jun 2012 17:28:10 +0000 (17:28 +0000)]
Remove unused static variable uninitializedLineNumberValue.
https://bugs.webkit.org/show_bug.cgi?id=89643

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-21
Reviewed by Alexey Proskuryakov.

No behavioral changes.

* html/parser/HTMLTreeBuilder.cpp:
(WebCore):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120938 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Add a new webkit2 tests slave bot
sergio@webkit.org [Thu, 21 Jun 2012 17:25:59 +0000 (17:25 +0000)]
[GTK] Add a new webkit2 tests slave bot
https://bugs.webkit.org/show_bug.cgi?id=89336

Reviewed by Philippe Normand.

Slave configuration for a new GTK bot that will run WebKit2 tests.

* BuildSlaveSupport/build.webkit.org-config/config.json:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120937 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove unused static function skipComment.
commit-queue@webkit.org [Thu, 21 Jun 2012 17:21:44 +0000 (17:21 +0000)]
Remove unused static function skipComment.
https://bugs.webkit.org/show_bug.cgi?id=89641

Patch by Kwang Yul Seo <skyul@company100.net> on 2012-06-21
Reviewed by Alexey Proskuryakov.

No behavioral changes.

* loader/TextResourceDecoder.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120936 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove two more member variables found by clang's Wunused-private-field
thakis@chromium.org [Thu, 21 Jun 2012 17:19:15 +0000 (17:19 +0000)]
Remove two more member variables found by clang's Wunused-private-field
https://bugs.webkit.org/show_bug.cgi?id=89672

Reviewed by Anders Carlsson.

* html/shadow/MediaControlRootElementChromium.h:
(MediaControlRootElementChromium):
* platform/graphics/filters/FECustomFilter.cpp:
(WebCore::FECustomFilter::FECustomFilter):
* platform/graphics/filters/FECustomFilter.h:
(FECustomFilter):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120935 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoNon-fixed length margins don't work with align=center
jchaffraix@webkit.org [Thu, 21 Jun 2012 17:15:18 +0000 (17:15 +0000)]
Non-fixed length margins don't work with align=center
https://bugs.webkit.org/show_bug.cgi?id=89626

Reviewed by Levi Weintraub.

Source/WebCore:

Tests: fast/block/negative-start-margin-align-center-percent.html
       fast/block/positive-margin-block-child-align-center-calc.html

Calling Length::value() is a bad idea as it returns the *raw* value of
the length. For percent and calculated length this is a bad idea as they
bear not relation to the actual computed length.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeInlineDirectionMargins):
Fixed the code to use minimumValueForLength as this nicely takes care of the 'auto' case.

LayoutTests:

* fast/block/negative-start-margin-align-center-percent-expected.html: Added.
* fast/block/negative-start-margin-align-center-percent.html: Added.
* fast/block/positive-margin-block-child-align-center-calc-expected.html: Added.
* fast/block/positive-margin-block-child-align-center-calc.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120934 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[chromium] style improvement for setDeviceScaleFactor code
rjkroege@chromium.org [Thu, 21 Jun 2012 17:13:01 +0000 (17:13 +0000)]
[chromium] style improvement for setDeviceScaleFactor code
https://bugs.webkit.org/show_bug.cgi?id=89665

Correct a coding style error committed in https://bugs.webkit.org/show_bug.cgi?id=88916

Reviewed by Adrienne Walker.

Purely code hygiene: existing tests suffice.

* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::setDeviceScaleFactor):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120933 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Update TestExpectations
commit-queue@webkit.org [Thu, 21 Jun 2012 17:07:51 +0000 (17:07 +0000)]
[GTK] Update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=89664

Unreviewed gardening. Mark editing/deleting/delete-3800834-fix.html
as flaky.

Patch by Simon Pena <spena@igalia.com> on 2012-06-21

* platform/gtk/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120932 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Crash][Editing] Pressing enter on LI element triggers assertion in Shadow DOM.
shinyak@chromium.org [Thu, 21 Jun 2012 17:05:12 +0000 (17:05 +0000)]
[Crash][Editing] Pressing enter on LI element triggers assertion in Shadow DOM.
https://bugs.webkit.org/show_bug.cgi?id=89171

Reviewed by Ryosuke Niwa.

Source/WebCore:

Since modidying Shadow DOM removes renderer of elements in Shadow DOM and shadow host,
assertion to check the existence of renderer was triggered.

We should update layout here to create renderer again.

Test: editing/shadow/pressing-enter-on-list.html

* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::appendBlockPlaceholder):

LayoutTests:

* editing/shadow/pressing-enter-on-list-expected.txt: Added.
* editing/shadow/pressing-enter-on-list.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120931 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoDeviceOrientation and DeviceMotion Test Cleanup
commit-queue@webkit.org [Thu, 21 Jun 2012 17:03:28 +0000 (17:03 +0000)]
DeviceOrientation and DeviceMotion Test Cleanup
https://bugs.webkit.org/show_bug.cgi?id=89662

Patch by Amy Ousterhout <aousterh@chromium.org> on 2012-06-21
Reviewed by Ryosuke Niwa.

Replaces 'LayoutTestController' with 'TestRunner' in debug messages.
This makes it consistent with testRunner, which replaced layoutTestController.

* fast/dom/DeviceMotion/script-tests/no-page-cache.js:
* fast/dom/DeviceOrientation/script-tests/add-listener-from-callback.js:
* fast/dom/DeviceOrientation/script-tests/basic-operation.js:
* fast/dom/DeviceOrientation/script-tests/event-after-navigation.js:
* fast/dom/DeviceOrientation/script-tests/multiple-frames.js:
* fast/dom/DeviceOrientation/script-tests/no-page-cache.js:
* fast/dom/DeviceOrientation/script-tests/no-synchronous-events.js:
* fast/dom/DeviceOrientation/script-tests/null-values.js:
(setMockOrientation):
* fast/dom/DeviceOrientation/script-tests/updates.js:
(setMockOrientation):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120930 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: [WebGL] Add injected WebGL module class
commit-queue@webkit.org [Thu, 21 Jun 2012 16:53:57 +0000 (16:53 +0000)]
Web Inspector: [WebGL] Add injected WebGL module class
https://bugs.webkit.org/show_bug.cgi?id=89592

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-06-21
Reviewed by Pavel Feldman.

Adding a new InjectedScriptWebGLModule class and moving WebGL-related
stuff out of InjectedScriptManager class.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InjectedScriptManager.cpp:
* inspector/InjectedScriptManager.h:
(InjectedScriptManager):
* inspector/InjectedScriptModule.cpp:
(WebCore::InjectedScriptModule::ensureInjected):
* inspector/InjectedScriptModule.h:
(InjectedScriptModule):
* inspector/InjectedScriptWebGLModule.cpp: Copied from Source/WebCore/inspector/InjectedScriptModule.cpp.
(WebCore):
(WebCore::InjectedScriptWebGLModule::InjectedScriptWebGLModule):
(WebCore::InjectedScriptWebGLModule::moduleForState):
(WebCore::InjectedScriptWebGLModule::source):
(WebCore::InjectedScriptWebGLModule::wrapWebGLContext):
(WebCore::InjectedScriptWebGLModule::captureFrame):
* inspector/InjectedScriptWebGLModule.h: Copied from Source/WebCore/inspector/InjectedScriptModule.h.
(WebCore):
(InjectedScriptWebGLModule):
* inspector/InspectorWebGLAgent.cpp:
(WebCore::InspectorWebGLAgent::wrapWebGLRenderingContextForInstrumentation):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120929 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: do not add separator to the end of the context menu.
pfeldman@chromium.org [Thu, 21 Jun 2012 16:34:36 +0000 (16:34 +0000)]
Web Inspector: do not add separator to the end of the context menu.
https://bugs.webkit.org/show_bug.cgi?id=89634

Reviewed by Vsevolod Vlasov.

Attaching separators only before menu items now.

* inspector/front-end/ContextMenu.js:
(WebInspector.ContextSubMenuItem.prototype.appendItem):
(WebInspector.ContextSubMenuItem.prototype.appendSubMenuItem):
(WebInspector.ContextSubMenuItem.prototype.appendCheckboxItem):
(WebInspector.ContextSubMenuItem.prototype.appendSeparator):
(WebInspector.ContextSubMenuItem.prototype._pushItem):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120928 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[EFL][WK2] Make WebKit2/Efl headers and resources installable.
commit-queue@webkit.org [Thu, 21 Jun 2012 15:46:40 +0000 (15:46 +0000)]
[EFL][WK2] Make WebKit2/Efl headers and resources installable.
https://bugs.webkit.org/show_bug.cgi?id=88207

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-06-21
Reviewed by Chang Shu.

.:

* Source/cmake/OptionsCommon.cmake:
Provide new variable, EXEC_INSTALL_DIR to determine where to install
executables.

Source/JavaScriptCore:

* shell/CMakeLists.txt: Use ${EXEC_INSTALL_DIR} instead of hardcoding "bin"

Source/WebKit2:

* CMakeLists.txt: Install WebProcess.
* PlatformEfl.cmake: Generate ewebkit2.pc and install it.
* efl/ewebkit2.pc.in: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120927 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWeb Inspector: Unify FileSystem callbacks
commit-queue@webkit.org [Thu, 21 Jun 2012 15:28:10 +0000 (15:28 +0000)]
Web Inspector: Unify FileSystem callbacks
https://bugs.webkit.org/show_bug.cgi?id=89420

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-06-21
Reviewed by Vsevolod Vlasov.

* inspector/InspectorFileSystemAgent.cpp:
(WebCore):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120926 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[EFL[WK2] Add WKViewEfl and WebKit2 API Object to represent Evas_Object.
ryuan.choi@samsung.com [Thu, 21 Jun 2012 15:11:48 +0000 (15:11 +0000)]
[EFL[WK2] Add WKViewEfl and WebKit2 API Object to represent Evas_Object.
https://bugs.webkit.org/show_bug.cgi?id=88935

Reviewed by Chang Shu.

.:

* Source/cmake/OptionsEfl.cmake: Defines BUILDING_EFL__.

Source/WebKit2:

Add WKViewEfl to support WTR/Efl.

* PlatformEfl.cmake:
* Shared/API/c/WKBase.h:
* Shared/API/c/efl/WKBaseEfl.h: Added.
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/efl/WKAPICastEfl.h: Added.
(WebKit):
* UIProcess/API/C/efl/WKView.cpp: Added.
(WKViewCreate):
(WKViewGetPage):
* UIProcess/API/C/efl/WKView.h: Added.
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_page_get):
* UIProcess/API/efl/ewk_view_private.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120925 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Unreviewed gardening, unskip now passing tests.
ossy@webkit.org [Thu, 21 Jun 2012 14:45:13 +0000 (14:45 +0000)]
[Qt] Unreviewed gardening, unskip now passing tests.

* platform/qt/Skipped:
* platform/qt/editing/inserting/4960120-1-expected.png: Added.
* platform/qt/editing/inserting/4960120-1-expected.txt:
* platform/qt/editing/inserting/before-after-input-element-expected.png: Added.
* platform/qt/editing/inserting/before-after-input-element-expected.txt:
* platform/qt/editing/inserting/insert-text-with-newlines-expected.png: Added.
* platform/qt/editing/inserting/insert-text-with-newlines-expected.txt:
* platform/qt/http/tests/misc/favicon-as-image-expected.png: Added.
* platform/qt/http/tests/misc/favicon-as-image-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120924 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[BlackBerry] Input mode should adapt automatically to settings changes
mifenton@rim.com [Thu, 21 Jun 2012 13:39:45 +0000 (13:39 +0000)]
[BlackBerry] Input mode should adapt automatically to settings changes
https://bugs.webkit.org/show_bug.cgi?id=89595

Reviewed by Antonio Gomes.

PR 167540.

Add helper function to check if input is enabled so that
the override settings can be applied at any time.

Reviewed Internally by Gen Mak.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::isInputModeEnabled):
(BlackBerry::WebKit::InputHandler::setInputModeEnabled):
(BlackBerry::WebKit::InputHandler::setElementFocused):
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):
(BlackBerry::WebKit::InputHandler::notifyClientOfKeyboardVisibilityChange):
(BlackBerry::WebKit::InputHandler::handleKeyboardInput):
(BlackBerry::WebKit::InputHandler::setComposingText):
* WebKitSupport/InputHandler.h:
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120923 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoCompile error: 'bool std::isinf(float)' is not 'constexpr' with GCC 4.6 in C++11...
kbalazs@webkit.org [Thu, 21 Jun 2012 13:26:42 +0000 (13:26 +0000)]
Compile error: 'bool std::isinf(float)' is not 'constexpr' with GCC 4.6 in C++11 mode
https://bugs.webkit.org/show_bug.cgi?id=88721

Reviewed by Csaba Osztrogonác.

Don't define these as consexpr because with gcc 4.6
they call non constexpr functions.
* wtf/MathExtras.h:
(std::wtf_isinf):
(std::wtf_isnan):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120922 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Add a custom Color Chooser widget to MiniBrowser
commit-queue@webkit.org [Thu, 21 Jun 2012 13:12:43 +0000 (13:12 +0000)]
[Qt] Add a custom Color Chooser widget to MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=87988

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-21
Reviewed by Alexis Menard.

Added custom color chooser example for the MiniBrowser.

* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/qml/BrowserWindow.qml:
* MiniBrowser/qt/qml/ColorChooser.qml: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120921 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove the warning "File not found" in MiniBrowser post-build event
commit-queue@webkit.org [Thu, 21 Jun 2012 12:27:54 +0000 (12:27 +0000)]
Remove the warning "File not found" in MiniBrowser post-build event
https://bugs.webkit.org/show_bug.cgi?id=89601

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-06-21
Reviewed by Adam Roben.

* MiniBrowser/MiniBrowserPostBuild.cmd:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120920 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Add new baseline and update TestExpectations
commit-queue@webkit.org [Thu, 21 Jun 2012 12:14:34 +0000 (12:14 +0000)]
[GTK] Add new baseline and update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=89651

Unreviewed gardening.

Patch by Simon Pena <spena@igalia.com> on 2012-06-21

* platform/gtk/TestExpectations: marked
svg/W3C-SVG-1.1/animate-elem-{32,33,40,41,46}-t.svg as flaky, and
fast/canvas/canvas-createImageData.html as crashing on DEBUG
* platform/gtk/fast/hidpi/device-scale-factor-paint-expected.png: Added.
* platform/gtk/fast/hidpi/device-scale-factor-paint-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120919 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[GTK] Backport run-file-chooser to WebKit1
commit-queue@webkit.org [Thu, 21 Jun 2012 12:08:36 +0000 (12:08 +0000)]
[GTK] Backport run-file-chooser to WebKit1
https://bugs.webkit.org/show_bug.cgi?id=87283

Patch by Daniel Drake <dsd@laptop.org> on 2012-06-21
Reviewed by Gustavo Noronha Silva.

This is a relatively straightforward backport of Mario Sanchez
Prada's WebKit2 run-file-chooser signal work, intended for use by
OLPC and others who are not quite ready to move to WebKit2.

Add a new public class to the API, WebKitFileChooserRequest, to be
emitted along with a new WebKitWebView::run-file-chooser signal to
let client applications to provide their own file chooser dialog
when the use interacts with HTML Input elements of type 'file'.

* GNUmakefile.am: Added new source files and headers.
* webkit/webkitfilechooserrequest.cpp: Added.
(_WebKitFileChooserRequestPrivate):
(webkit_file_chooser_request_init):
(webkit_file_chooser_request_finalize):
(webkit_file_chooser_request_get_property):
(webkit_file_chooser_request_class_init):
(webkit_file_chooser_request_create):
(webkit_file_chooser_request_get_mime_types):
(webkit_file_chooser_request_get_mime_types_filter):
(webkit_file_chooser_request_get_select_multiple):
(webkit_file_chooser_request_select_files):
(webkit_file_chooser_request_get_selected_files):
* webkit/webkitfilechooserrequest.h: Added.
(_WebKitFileChooserRequest):
(_WebKitFileChooserRequestClass):
* webkit/webkitfilechooserrequestprivate.h: Added,
containing the prototype of webkit_file_chooser_request_create.

Provide private API to make a file chooser request from the
WebView, and provide a default handler for it.

* webkit/webkitwebview.cpp:
(fileChooserDialogResponseCallback): Handler for the 'response'
signal for the GtkFileChooserDialog used in the default
handler. It will call to webkit_file_chooser_request_select_files
or webkit_file_chooser_request_cancel as needed.
(webkitWebViewRealRunFileChooser): Default handler for the new
'run-file-chooser' signal. It will create a GtkFileChooserDialog,
connect to the 'response' signal and show it.
(webkit_web_view_class_init): Connect the 'run-file-chooser'
signal to the default handler, webkitWebViewRunFileChooser.
(webkit_web_view_new):
(webkitWebViewRunFileChooserRequest):
* webkit/webkitwebview.h:
(_WebKitWebViewClass): Added prototype for the handler of the new
'run-file-chooser' signal.
* webkit/webkitwebviewprivate.h: Added prototype for
private new function webkitWebViewRunFileChooserRequest.

Update runOpenPanel to use the new API, including a default handler
with similar behaviour to before.

* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::runOpenPanel): Now creates an instance of
WebKitFileChooserRequest and asks the WebView to emit the
new 'run-file-chooser' signal with it.

Added the new public header to the main header.

* webkit/webkit.h: Added webkitfilechooserrequest.h

New unit tests for the new WebKitFileChooserRequest API.

* tests/testwebview.c: Various WebKitFileChooserRequest tests,
including MIME type filtering and selection handling.

Updated documentation related files with the new API.

* docs/webkitgtk-docs.sgml: Added new section.
* docs/webkitgtk-sections.txt: Added new API.
* docs/webkitgtk.types: Added get_type function.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120918 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] DRT in standalone mode hangs after the first test
kbalazs@webkit.org [Thu, 21 Jun 2012 12:01:39 +0000 (12:01 +0000)]
[Qt] DRT in standalone mode hangs after the first test
https://bugs.webkit.org/show_bug.cgi?id=89613

Reviewed by Csaba Osztrogonác.

Break an inline signal slot chain that ends up in setting
LayoutTestController::m_hasDumped too early. In LayoutTestController::maybeDump()
we emit done() which starts the chain that finishes in DumpRenderTree::open().
The next line in maybeDump sets m_hasDumped to true. We could simply reorder
these two lines but it seems to be wrong in general to start the next load
from this call chain. The server mode (when DRT is runned by the test harness)
also uses a queued connection to read the next test from stdin.

* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::processArgsLine):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120917 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] API tests for ColorChooser
commit-queue@webkit.org [Thu, 21 Jun 2012 11:38:06 +0000 (11:38 +0000)]
[Qt] API tests for ColorChooser
https://bugs.webkit.org/show_bug.cgi?id=88101

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-21
Reviewed by Kenneth Rohde Christiansen.

The test uses the value sanitization to detect if the feature is
enabled or disabled and will just pass when disabled.

* UIProcess/API/qt/tests/qmltests/WebView/tst_colorChooser.qml: Added.
* UIProcess/API/qt/tests/qmltests/common/colorChooser.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120916 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[WK2][Qt] Color chooser API missing
commit-queue@webkit.org [Thu, 21 Jun 2012 10:58:53 +0000 (10:58 +0000)]
[WK2][Qt] Color chooser API missing
https://bugs.webkit.org/show_bug.cgi?id=87749

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-21
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit/qt:

Added ColorChooser API stub to WebKit. Otherwise
it will break the build for Qt WebKit2 (that now has
complete support for color chooser) when INPUT_TYPE_COLOR is set.

* WebCoreSupport/ChromeClientQt.cpp:
(WebCore):
(WebCore::ChromeClientQt::createColorChooser):
* WebCoreSupport/ChromeClientQt.h:
(ChromeClientQt):

Source/WebKit2:

Added public experimental API for ColorChooser. This will
allow the browser to define a custom dialog for selecting
color when a input field of type "color" get focus.

The current implementation gives a model to the QML Component
that has methods for canceling a request, selecting a color
and fetching what is the current value of the HTML input.

* Target.pri:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewExperimental::colorChooser):
(QQuickWebViewExperimental::setColorChooser):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/qt/QtPageClient.cpp:
(WebKit::QtPageClient::createColorChooserProxy):
* UIProcess/qt/WebColorChooserProxyQt.cpp: Added.
(WebKit):
(ColorChooserContextObject):
(WebKit::ColorChooserContextObject::ColorChooserContextObject):
(WebKit::ColorChooserContextObject::currentColor):
(WebKit::ColorChooserContextObject::accept):
(WebKit::ColorChooserContextObject::reject):
(WebKit::WebColorChooserProxyQt::WebColorChooserProxyQt):
(WebKit::WebColorChooserProxyQt::~WebColorChooserProxyQt):
(WebKit::WebColorChooserProxyQt::createItem):
(WebKit::WebColorChooserProxyQt::createContext):
(WebKit::WebColorChooserProxyQt::setSelectedColor):
(WebKit::WebColorChooserProxyQt::notifyColorSelected):
(WebKit::WebColorChooserProxyQt::endChooser):
* UIProcess/qt/WebColorChooserProxyQt.h: Added.
(WebCore):
(WebKit):
(WebColorChooserProxyQt):
(WebKit::WebColorChooserProxyQt::create):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120915 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago[Qt] Unreviewed gardening, skip a new failing test.
ossy@webkit.org [Thu, 21 Jun 2012 10:24:32 +0000 (10:24 +0000)]
[Qt] Unreviewed gardening, skip a new failing test.

* platform/qt-5.0-wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120914 268f45cc-cd09-0410-ab3c-d52691b4dbfc