Skipped editing/selection/move-by-word-visually-crash-test-5.html in WebKit2 because of
<http://webkit.org/b/42689> WebKitTestRunner needs layoutTestController.setEditingBehavior

* platform/wk2/Skipped:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111498 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Store origin/screen space transforms for surface and replica in the surface
https://bugs.webkit.org/show_bug.cgi?id=81296

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-20
Reviewed by Adrienne Walker.

Source/WebCore:

Compute and save a number of transforms for render surfaces. The origin
tranform for the replica into its target surface. The origin transform
for the replica into the screen. And the origin transform for the surface
into the screen.

These transforms will allow us to detect occlusion of render surfaces,
allowing us to cull (or partially-cull) the render surface quad during
drawing.

This also fixes a subtle bug in the transforms used by the damage
tracking code.

Unit test: CCLayerTreeHostCommonTest.verifyTransformsForSingleRenderSurface
           CCLayerTreeHostCommonTest.verifyTransformsForReplica
           CCLayerTreeHostCommonTest.verifyTransformsForRenderSurfaceHierarchy

* platform/graphics/chromium/RenderSurfaceChromium.h:
(WebCore::RenderSurfaceChromium::screenSpaceTransform):
(WebCore::RenderSurfaceChromium::setScreenSpaceTransform):
(RenderSurfaceChromium):
(WebCore::RenderSurfaceChromium::replicaOriginTransform):
(WebCore::RenderSurfaceChromium::setReplicaOriginTransform):
(WebCore::RenderSurfaceChromium::replicaScreenSpaceTransform):
(WebCore::RenderSurfaceChromium::setReplicaScreenSpaceTransform):
* platform/graphics/chromium/cc/CCDamageTracker.cpp:
(WebCore::CCDamageTracker::extendDamageForRenderSurface):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
(WebCore::calculateDrawTransformsAndVisibilityInternal):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::damageInSurfaceSpace):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore::CCRenderSurface::setDrawTransform):
(WebCore::CCRenderSurface::drawTransform):
(WebCore::CCRenderSurface::setScreenSpaceTransform):
(WebCore::CCRenderSurface::screenSpaceTransform):
(CCRenderSurface):
(WebCore::CCRenderSurface::setReplicaDrawTransform):
(WebCore::CCRenderSurface::replicaDrawTransform):
(WebCore::CCRenderSurface::setReplicaOriginTransform):
(WebCore::CCRenderSurface::replicaOriginTransform):
(WebCore::CCRenderSurface::setReplicaScreenSpaceTransform):
(WebCore::CCRenderSurface::replicaScreenSpaceTransform):

Source/WebKit/chromium:

* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore::TEST):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111499 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Crash] RenderMenuList::addChild() in Shadow DOM.
https://bugs.webkit.org/show_bug.cgi?id=81201

Reviewed by Dimitri Glazkov.

Source/WebCore:

<audio>, <video>, <meter>, <progress>, and <select> are implemented using
Shadow DOM having HTMLContentElement. Their renderer children basically should not
create a renderer unless they are on the upper shadow encapsulation boundary,
which means they are the direct children of the shadow root.

However, current implementation allows their renderer children to create a renderer
even if they are on a lower shadow encapsulation boundary, which means
they are distributed elements of HTMLContentElement.

This patch makes there renderer children not to create a renderer if they are on a lower shadow
encapsulation boudary.

Tests: fast/dom/shadow/content-element-in-media-element.html
       fast/dom/shadow/content-element-in-meter-element.html
       fast/dom/shadow/content-element-in-progress-element.html
       fast/dom/shadow/content-element-in-select-element.html

* dom/NodeRenderingContext.h:
(NodeRenderingContext):
(WebCore::NodeRenderingContext::isOnUpperEncapsulationBoundary):
(WebCore):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::childShouldCreateRenderer):
* html/HTMLMeterElement.cpp:
(WebCore::HTMLMeterElement::childShouldCreateRenderer):
* html/HTMLProgressElement.cpp:
(WebCore::HTMLProgressElement::childShouldCreateRenderer):
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::childShouldCreateRenderer):

LayoutTests:

Skipped these tests in non-chromium port since SHADOW_DOM flag is not enabled.

Marked 2 new tests FAIL. Their behavior is affected by this patch, but this patch
won't fix them completely. They have another bugs. See Bug 81310 and Bug 81311.

* fast/dom/shadow/content-element-in-media-element-expected.txt: Added.
* fast/dom/shadow/content-element-in-media-element.html: Added.
* fast/dom/shadow/content-element-in-meter-element-expected.txt: Added.
* fast/dom/shadow/content-element-in-meter-element.html: Added.
* fast/dom/shadow/content-element-in-progress-element-expected.txt: Added.
* fast/dom/shadow/content-element-in-progress-element.html: Added.
* fast/dom/shadow/content-element-in-select-element-expected.txt: Added.
* fast/dom/shadow/content-element-in-select-element.html: Added.
* platform/chromium/test_expectations.txt:
* platform/efl/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111500 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Adding MISSING to platform/qt for platform/qt/plugins/application-plugin-plugins-disabled.html

* platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111501 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Use origin transform to transform occlusion from surface content space to its target content space
https://bugs.webkit.org/show_bug.cgi?id=81730

Patch by Dana Jansens <danakj@chromium.org> on 2012-03-20
Reviewed by Adrienne Walker.

Source/WebCore:

Unit test: CCOcclusionTrackerTestSurfaceOcclusionTranslatesToParent

* platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
(WebCore::transformSurfaceOpaqueRegion):
(WebCore::::leaveToTargetRenderSurface):

Source/WebKit/chromium:

* tests/CCOcclusionTrackerTest.cpp:
(WebCore):
(CCOcclusionTrackerTestSurfaceOcclusionTranslatesToParent):
(WebCore::CCOcclusionTrackerTestSurfaceOcclusionTranslatesToParent::runMyTest):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
svn-apply should move inflight patches from WebCore/webaudio to WebCore/Modules/webaudio
https://bugs.webkit.org/show_bug.cgi?id=81567

Reviewed by Eric Seidel.

This temporary measure should help us avoid disrupting the folks
working on WebAudio when we move the webaudio directory to Modules.

* Scripts/VCSUtils.pm:
(adjustPathForRecentRenamings):
(parseGitDiffHeader):
(parseSvnDiffHeader):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111503 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Move wtf/Platform.h from JavaScriptCore to Source/WTF/wtf
https://bugs.webkit.org/show_bug.cgi?id=80911

Reviewed by Adam Barth.

.:

* CMakeLists.txt: Define WTF_DIR

Source/JavaScriptCore:

Update the various build systems to depend on Source/WTF headers
as well as remove references to Platform.h (since it's now moved).

* CMakeLists.txt:
* JavaScriptCore.pri:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreCommon.vsprops:
* JavaScriptCore.xcodeproj/project.pbxproj:
* wtf/CMakeLists.txt:

Source/WebCore:

* CMakeLists.txt:
 - Look for headers in Source/WTF as well.

Source/WebKit:

* CMakeLists.txt: Look for headers in Source/WTF.

Source/WebKit/qt:

Fix WTF header include paths since although
Source/WTF is included, no longer are all the
subdirectories (thus "RefPtr.h" can't work).

* Api/qwebdatabase_p.h:
* Api/qwebscriptworld_p.h:
* Api/qwebsecurityorigin_p.h:
* WebCoreSupport/InspectorClientQt.h:
* WebCoreSupport/QtFallbackWebPopup.h:
* WebCoreSupport/QtWebComboBox.h:
* declarative/experimental/experimental.pri:
* declarative/public.pri:
* tests/MIMESniffing/MIMESniffing.pro:

Source/WebKit2:

Update to not depend on "Foo.h" includes for WTF headers.

* Shared/qt/QtNetworkReplyData.h:
* Shared/qt/QtNetworkRequestData.cpp:
* Shared/qt/QtNetworkRequestData.h:

Source/WTF:

Update build systems to account for the new location of Platform.h

* GNUmakefile.list.am:
* WTF.gypi:
* WTF.pro:
* WTF.vcproj/WTF.vcproj:
* WTF.vcproj/work-around-vs-dependency-tracking-bugs.py:
(react_to_vsprops_changes):
* WTF.xcodeproj/project.pbxproj:
* config.h: I don't think this change is 100% correct (but seemed to be needed to make qt-wk2 build)
 - This dependency on JSC should be removed regardless (in a later patch).
* wtf/Platform.h: Renamed from Source/JavaScriptCore/wtf/Platform.h.

Tools:

Update include paths for Source/WTF.

* DumpRenderTree/efl/CMakeLists.txt:
* DumpRenderTree/qt/DumpRenderTree.pro:
* QtTestBrowser/QtTestBrowser.pro:
* Scripts/build-webkit: Build Source/WTF on AppleWin as well.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111504 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rename getElementInShadowTreeStack to getNodeInShadowTreeStack
https://bugs.webkit.org/show_bug.cgi?id=81324

Since getElementInShadowTreeStack returns ShadowRoot as well which is not an element
it should be renamed to getNodeInShadowTreeStack.

Patch by Kaustubh Atrawalkar <kaustubh@motorola.com> on 2012-03-21
Reviewed by Hajime Morita.

* fast/dom/shadow/access-key.html:
* fast/dom/shadow/get-element-by-id-in-shadow-root-expected.txt:
* fast/dom/shadow/get-element-by-id-in-shadow-root.html:
* fast/dom/shadow/resources/shadow-dom.js:
(getNodeInShadowTreeStack):
* fast/dom/shadow/shadow-boundary-events.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Rebaseline tests after r111497.

* platform/chromium-mac-leopard/fast/css/text-transform-select-expected.png:
* platform/chromium-mac-leopard/fast/forms/select/menulist-disabled-option-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/css/text-transform-select-expected.png:
* platform/chromium-mac-snowleopard/fast/css/text-transform-select-expected.txt: Added.
* platform/chromium-mac-snowleopard/fast/forms/select-max-length-expected.txt: Added.
* platform/chromium-mac-snowleopard/fast/forms/select/menulist-disabled-option-expected.png: Added.
* platform/chromium-mac/fast/css/text-transform-select-expected.png:
* platform/chromium-mac/fast/css/text-transform-select-expected.txt: Added.
* platform/chromium-mac/fast/forms/select/menulist-disabled-option-expected.png: Added.
* platform/chromium-win-xp/fast/forms/select-max-length-expected.txt: Added.
* platform/chromium-win/fast/css/text-transform-select-expected.png:
* platform/chromium-win/fast/css/text-transform-select-expected.txt:
* platform/chromium-win/fast/forms/select/menulist-disabled-option-expected.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111506 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Remove redundant code in SocketStreamHandler
https://bugs.webkit.org/show_bug.cgi?id=81726

Reviewed by George Staikos.

No new tests needed. Just remove redundant code.

* platform/network/blackberry/SocketStreamHandle.h:
(SocketStreamHandle):
* platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Updated Mac expected results for this test. <http://webkit.org/b/81746> tracks the fact that
r111500 broke it.

* platform/mac/fast/css/text-transform-select-expected.png:
* platform/mac/fast/css/text-transform-select-expected.txt:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Marking lost-compositor-context-permanently.html on WIN as flaky.

* platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Add webkit_web_view_run_javascript() to WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=75543

Reviewed by Martin Robinson.

Source/WebKit2:

* GNUmakefile.am: Add new files to compilation.
* UIProcess/API/gtk/WebKitError.cpp:
(webkit_javascript_error_quark): Add new error domain for
Javascript errors.
* UIProcess/API/gtk/WebKitError.h:
* UIProcess/API/gtk/WebKitJavascriptResult.cpp: Added.
(webkitJavascriptResultCreate): Create a WebKitJavascriptResult
for the given WKSerializedScriptValueRef.
(webkit_javascript_result_ref): Increment reference count of
WebKitJavascriptResult.
(webkit_javascript_result_unref): Decrement reference count of
WebKitJavascriptResult.
(webkit_javascript_result_get_global_context): Get global
javascript context of the result.
(webkit_javascript_result_get_value): Get the JSValueRef of the
result.
* UIProcess/API/gtk/WebKitJavascriptResult.h: Added.
* UIProcess/API/gtk/WebKitJavascriptResultPrivate.h: Added.
* UIProcess/API/gtk/WebKitPrivate.h:
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewFinalize): Release the global javascript context.
(webkit_web_view_get_javascript_global_context): Get or create the
global javascript context.
(webkitWebViewRunJavaScriptCallback): Callback called by C API when
javascript execution finishes.
(webkit_web_view_run_javascript): Asynchronously run a given
javascript.
(webkit_web_view_run_javascript_finish): Finish async operation
started by webkit_web_view_run_javascript().
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
* UIProcess/API/gtk/docs/webkit2gtk.types: Add
webkit_javascript_result_get_type().
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(testWebViewRunJavaScript):
(beforeAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(WebViewTest::WebViewTest):
(WebViewTest::~WebViewTest):
(runJavaScriptReadyCallback):
(WebViewTest::runJavaScriptAndWaitUntilFinished):
(jsValueToCString):
(WebViewTest::javascriptResultToCString):
(WebViewTest::javascriptResultToNumber):
(WebViewTest::javascriptResultToBoolean):
(WebViewTest::javascriptResultIsNull):
(WebViewTest::javascriptResultIsUndefined):
* UIProcess/API/gtk/tests/WebViewTest.h:
* UIProcess/API/gtk/webkit2.h:

Tools:

* MiniBrowser/gtk/GNUmakefile.am: Add javascriptcore_cppflags to
MiniBrowser CPP flags.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111510 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Allow running javascript from location bar in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=81331

Reviewed by Martin Robinson.

* MiniBrowser/gtk/BrowserWindow.c:
(activateUriEntryCallback): Use browser_window_load_uri().
(browser_window_load_uri): Check whether uri starts with
javascript: and run the given script, or just call
webkit_web_view_load_uri() to load the given uri.
* MiniBrowser/gtk/BrowserWindow.h:
* MiniBrowser/gtk/main.c:
(createBrowserWindow): Use browser_window_load_uri().

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: HeapProfiler: support distance column in Summary View.
https://bugs.webkit.org/show_bug.cgi?id=81675

In many cases when a page leaked an object we see not only this object
but the all objects it retains. It is quite difficult to find out which
the object is the root of leak. It'd be simpler to sort the leaked
objects by Distance column and track down the first one.

Reviewed by Yury Semikhatsky.

Source/WebCore:

* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
(WebInspector.HeapSnapshotInstanceNode.prototype.comparator):
(WebInspector.HeapSnapshotConstructorNode):
(WebInspector.HeapSnapshotConstructorNode.prototype.comparator):
(WebInspector.HeapSnapshotConstructorNode.prototype.get data):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.HeapSnapshotConstructorsDataGrid):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._defaultPopulateCount.100._sortFields):
* inspector/front-end/HeapSnapshot.js:
(WebInspector.HeapSnapshotNodesProvider.prototype._serialize):

LayoutTests:

* inspector/profiler/detailed-heapshots-summary-sorting.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111512 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, GTK rebaseline after r111500 and skipping 2 tests.

* platform/gtk/Skipped:
* platform/gtk/fast/css/text-transform-select-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111513 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] fast/css/resize-single-axis.html timeout
https://bugs.webkit.org/show_bug.cgi?id=80604

* platform/qt/Skipped: Unskip fast/css/resize-single-axis.html, because it works now.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111514 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Update LayoutUnit usage in descendants of RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=80918

Reviewed by Eric Seidel.

Replaced elements have to flow in the new sub-pixel Render Tree, but since the rendering of these
often takes place outside of WebCore (or in cases such as foreign objects, in WebCore after
passing through platform code), care must be taken to determine the final rendered size and
location before render time. This patch brings these classes up to the latest and greatest in the
subpixellayout branch.

See https://trac.webkit.org/wiki/LayoutUnit for more information.

No new tests. No change in behavior.

* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::layoutWithFlattening): Build Fix.
* rendering/RenderFullScreen.cpp:
(RenderFullScreen::createPlaceholder): Ditto.
* rendering/RenderFullScreen.h:
(RenderFullScreen): Ditto.
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::canvasSizeChanged): Ditto.
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::computeLogicalHeight): Ditto.
(WebCore::RenderIFrame::computeLogicalWidth): Ditto.
* rendering/RenderImage.cpp:
(WebCore::RenderImage::updateIntrinsicSizeIfNeeded): Intrinsic sizes are always integers, since they
originate outside of WebCore.
(WebCore::RenderImage::paintIntoRect): Use pixel snapping to paint into an arbitrary rect.
(WebCore::RenderImage::computeReplacedLogicalWidth): Intrinsic size is always integral -- rounding
values to integers.
* rendering/RenderImage.h:
(RenderImage):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::videoBox):
(WebCore::RenderVideo::paintReplaced): Painting at integer boundaries.
* rendering/RenderWidget.cpp:
(WebCore):
(WebCore::roundedIntRect): Widgets are rendered outside of WebCore, so we always align them to
integer boundaries. This means we can actually round the size of our ultimate content box. This
function is implemented here specifically to prevent its misuse if we put it elsewhere.
(WebCore::RenderWidget::setWidgetGeometry): We simplify layout by taking a LayoutRect and rounding
it to its final location within this function.
(WebCore::RenderWidget::updateWidgetGeometry): We keep things in LayoutUnits until handing off to
setWidgetGeometry.
(WebCore::RenderWidget::paint): Rounding the paint location before handing painting off to the
widget itself.
* rendering/RenderWidget.h:
(RenderWidget):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@111516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Remove Android build-fix when the proper fix rolled into WebKit
https://bugs.webkit.org/show_bug.cgi?id=80861

Reviewed by Tony Chang.

Source/WebKit/chromium:

No longer set the CC.target environment variable as this is no longer
required for project file generation.

* gyp_webkit:

Tools:

Remove most Android-specific logic from webkitdirs.pm in favor of
handling this during project generation time.

* Scripts/webkitdirs.pm:
(buildChromiumMakefile):

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