Calling internals from the performance test runner prevents manual running
https://bugs.webkit.org/show_bug.cgi?id=93527

Reviewed by Ryosuke Niwa.

Since r125065, it is impossible to run the Performance tests manually. The problem is
"internals" is not defined when running outside the test runner, so the whole script
evaluation fails.

* resources/runner.js: Verify is window.internals is available before invoking something on it.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125090 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=92275
Need a way to get a snapshot image that does not show the selection
-and corresponding-
<rdar://problem/11956802>

Reviewed by Anders Carlsson.

../WebCore: 

New function FrameView::paintContentsForSnapshot() has the option to 
exclude selection from the snapshot.

Export new function
* WebCore.exp.in:

Clear the selection from the RenderView when selection is to be excluded. Restore 
all of this information via FrameSelection::updateAppearance() after calling 
paintContents().
* page/FrameView.cpp:
(WebCore::FrameView::paintContentsForSnapshot):
(WebCore):
* page/FrameView.h:

../WebKit2: 

Added new API WKBundlePageCreateSnapshotWithOptions()

New enum SnapshotOptions tracks whether snapshots should exclude 
selection highlighting in addition to tracking whether the image is 
sharable like the original ImageOptions.
* Shared/API/c/WKImage.h:
* Shared/API/c/WKSharedAPICast.h:
(WebKit::snapshotOptionsFromImageOptions):
(WebKit):
(WebKit::toSnapshotOptions):
* Shared/ImageOptions.h:

New API.
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageCreateSnapshotWithOptions):

These existing APIs all now call 
WebPage::scaledSnapshotWithOptions().
(WKBundlePageCreateSnapshotInViewCoordinates):
(WKBundlePageCreateSnapshotInDocumentCoordinates):
(WKBundlePageCreateScaledSnapshotInDocumentCoordinates):

This patch removes WebPage::snapshotInViewCoordinates(), 
WebPage::snapshotInDocumentCoordinates(), and 
WebPage::scaledSnapshotInDocumentCoordinates(). All of the logic is 
now consolidated into WebPage::scaledSnapshotWithOptions(). It turns 
out that we never did anything different for document coordinates 
versus view coordinates, so that complexity could just be eliminated 
outright.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::snapshotOptionsToImageOptions):
(WebKit::WebPage::scaledSnapshotWithOptions):
(WebKit):
* WebProcess/WebPage/WebPage.h:
(WebPage):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125091 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DOM4: classList should be defined on Element and not on HTMLElement
https://bugs.webkit.org/show_bug.cgi?id=93015

Reviewed by Adam Barth.

DOM4 specs that Element should have the classList WebIDL attribute. This moves the
attribute to the correct IDL file.

Source/WebCore:

Test: fast/dom/Element/class-list.html

* dom/Element.idl:
* html/HTMLElement.idl:

LayoutTests:

* fast/dom/Element/class-list-expected.txt: Added.
* fast/dom/Element/class-list.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125092 268f45cc-cd09-0410-ab3c-d52691b4dbfc
css3/flexbox/content-height-with-scrollbars.html failing image test on Lion and MountainLion
https://bugs.webkit.org/show_bug.cgi?id=93530

Unreviewed test expectations update.

* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125093 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Apply all Linux layout test expectations
https://bugs.webkit.org/show_bug.cgi?id=92653

Reviewed by Adam Barth.

Tools:

* Scripts/webkitpy/layout_tests/port/chromium_android.py:
(ChromiumAndroidPort.skipped_layout_tests): Removed. Skip these tests in TestExpectations instead.

LayoutTests:

We used to let chromium_android.py replace all 'LINUX' to 'LINUX ANDROID' in test expectations on Android to automatically inherit all test expectations of chromium-linux.
As a step of upstreaming chromium-android, now we actually update TestExpectations.

In this change, 'LINUX's are replaced to 'LINUX ANDROID', *except* those:
1) already have 'ANDROID',
2) not applicable or not to be tested on Android, e.g. plugins, inspector, non-virtual gpu tests, etc. Instead we add SKIP rules for them.

* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125094 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Clean up includes in compositor unit tests
https://bugs.webkit.org/show_bug.cgi?id=93531

Reviewed by Adrienne Walker.

This removes unused includes and updates Platform API headers to use the <public/Web...> style paths.

* tests/CCAnimationTestCommon.cpp:
* tests/CCKeyframedAnimationCurveTest.cpp:
* tests/CCLayerAnimationControllerTest.cpp:
* tests/CCLayerTreeHostCommonTest.cpp:
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):
* tests/CCOcclusionTrackerTest.cpp:
* tests/CCTextureUpdateControllerTest.cpp:
* tests/CCThreadedTest.cpp:
* tests/FakeWebGraphicsContext3D.h:
* tests/LayerChromiumTest.cpp:
* tests/LayerRendererChromiumTest.cpp:
* tests/TiledLayerChromiumTest.cpp:
* tests/WebCompositorInputHandlerImplTest.cpp:
* tests/WebLayerTest.cpp:
* tests/WebLayerTreeViewTest.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Rebaseline fast/box-sizing/box-sizing.html and compositing/overflow/clip-descendents.html
https://bugs.webkit.org/show_bug.cgi?id=92904

Unreviewed test expectations update. The IMAGE test was passing on Lion and Mountain Lion.

* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125097 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make isTransparentSilverlightBackgroundValue handle all the possible transparent colors
https://bugs.webkit.org/show_bug.cgi?id=93532

Reviewed by Simon Fraser.

* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::isTransparentSilverlightBackgroundValue):
Check for all the possible transparent colors and assume that the color is opaque otherwise.

(WebKit::NetscapePlugin::initialize):
Pass the lowercase string to isTransparentSilverlightBackgroundValue.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125098 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Updating fast/canvas/webgl/gl-teximage.html to prevent valid variations in results from causing test failures.
https://bugs.webkit.org/show_bug.cgi?id=89494

Patch by Jeff Timanus <twiz@chromium.org> on 2012-08-08
Reviewed by Adrienne Walker.

* fast/canvas/webgl/gl-teximage-expected.txt:
* fast/canvas/webgl/gl-teximage.html: Only display the actual percentage of passing pixels when outside of DRT.
* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION: Crash when plug-in initialization fails
https://bugs.webkit.org/show_bug.cgi?id=93534
<rdar://problem/12059786>

Reviewed by Simon Fraser.

Protect the PluginProxy while calling out to functions that could cause it to be destroyed.

* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::didFailToCreatePluginInternal):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid backing store on layers created for CoreAnimation plugins
https://bugs.webkit.org/show_bug.cgi?id=93526
<rdar://problem/12052828>

Reviewed by Dean Jackson.

Source/WebCore:

We create a compositing layer for <embed> objects whose plug-in supports
the CoreAnimation rendering model. When the embed's renderer is not styled,
we can avoid allocating backing store for it.

Test: compositing/plugins/no-backing-store.html

* rendering/RenderLayerBacking.cpp:
(WebCore::isCompositedPlugin):
(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):

LayoutTests:

Test for backing store on CoreAnimation-based plugins in various
configurations.

* compositing/plugins/no-backing-store-expected.txt: Added.
* compositing/plugins/no-backing-store.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125101 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid backing store on layers created for CoreAnimation plugins
https://bugs.webkit.org/show_bug.cgi?id=93526
<rdar://problem/12052828>

Patch by Simon Fraser <simon.fraser@apple.com> on 2012-08-08
Reviewed by Dean Jackson.

Test for backing store on CoreAnimation-based plugins in various
configurations.

* compositing/plugins/no-backing-store-expected.txt: Added.
* compositing/plugins/no-backing-store.html: Added.

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