WebKit.git
9 years ago[Qt] Resolve import and web-process paths automatically for QML tests
vestbo@webkit.org [Thu, 17 Nov 2011 12:28:16 +0000 (12:28 +0000)]
[Qt] Resolve import and web-process paths automatically for QML tests

Reviewed by Kenneth Rohde Christiansen.

* UIProcess/API/qt/tests/qmltests/qmltests.pro:
* UIProcess/API/qt/tests/qmltests/tst_qmltests.cpp:
(main):

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

9 years ago[Qt] Move WebKit2 C++ APIs to private API and build QML extension plugin on top of...
vestbo@webkit.org [Thu, 17 Nov 2011 12:27:55 +0000 (12:27 +0000)]
[Qt] Move WebKit2 C++ APIs to private API and build QML extension plugin on top of that

A new extension object has been added to QQuickWebView (the same approach should be used
for other API classes that need experimental APIs). The QML extension mechanism is then
built on top of the experimental object.

https://bugs.webkit.org/show_bug.cgi?id=72522

Reviewed by Simon Hausmann.

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

9 years ago[chromium] don't call fontconfig twice in complex text path
bashi@chromium.org [Thu, 17 Nov 2011 12:16:57 +0000 (12:16 +0000)]
[chromium] don't call fontconfig twice in complex text path
https://bugs.webkit.org/show_bug.cgi?id=38701

Source/WebCore:

Adds a new API for getting font family. For now, FontCacheLinux calls the new API, but don't use additional properties for compatibility. The old API will be removed when Chromium is ready to use new API.

Reviewed by Tony Chang.

No new tests. No behavior changes for now.

* platform/chromium/PlatformSupport.h: Added FontFamily struct and changed the declaration of getFontFamilyForCharacters().
* platform/graphics/chromium/FontCacheLinux.cpp:
(WebCore::FontCache::getFontDataForCharacters): Uses new PlatformSupport::getFontFamilyForCharacters().
* platform/graphics/chromium/FontPlatformDataLinux.h:
(WebCore::FontPlatformData::setFakeBold): Added.
(WebCore::FontPlatformData::setFakeItalic): Added.

Source/WebKit/chromium:

Reviewed by Tony Chang.

Add new API for getFamilyForChars() so that keeping correct font mapping of the given characters.

* public/linux/WebFontFamily.h: Added.
* public/linux/WebFontInfo.h: Add a new API.
* public/linux/WebSandboxSupport.h:
(WebKit::WebSandboxSupport::getFontFamilyForCharacters): Ditto.
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::getFontFamilyForCharacters): Ditto.
* src/linux/WebFontInfo.cpp:
(WebKit::WebFontInfo::familyForChars): Modified to get weight and italic properties of the font. Old API uses new API internally.

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

9 years agoCSS3 cross-fade tests failing on Chromium after r100535
steveblock@google.com [Thu, 17 Nov 2011 12:06:14 +0000 (12:06 +0000)]
CSS3 cross-fade tests failing on Chromium after r100535
https://bugs.webkit.org/show_bug.cgi?id=72598

Update test expectations.

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed build fix.
kenneth@webkit.org [Thu, 17 Nov 2011 11:57:08 +0000 (11:57 +0000)]
Unreviewed build fix.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

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

9 years agoCompositing LayoutTests failing on Chromium Mac
steveblock@google.com [Thu, 17 Nov 2011 11:51:11 +0000 (11:51 +0000)]
Compositing LayoutTests failing on Chromium Mac
https://bugs.webkit.org/show_bug.cgi?id=72487

Update test expectations.

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

9 years ago[GTK] Consider parent AtkObject in webkit_accessible_get_parent(), if already set
mario@webkit.org [Thu, 17 Nov 2011 11:50:07 +0000 (11:50 +0000)]
[GTK] Consider parent AtkObject in webkit_accessible_get_parent(), if already set
https://bugs.webkit.org/show_bug.cgi?id=72525

Reviewed by Xan Lopez.

Source/WebCore:

* accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
(webkit_accessible_get_parent): Call to the implementation of
atk_object_get_parent in AtkObject class to check whether a parent
AtkObject has been previously set, before trying to find one.

Source/WebKit/gtk:

* tests/testatk.c:
(testWebkitAtkSetParentForObject): New unit test to check that
calls to atk_object_get_parent() over a WebKitGTK's accessibility
wrapper object returns its parent AtkObject if previously set.
(main): Added new test.

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

9 years ago[GTK] ATK API tests failing because of patch for bug 72390
mario@webkit.org [Thu, 17 Nov 2011 11:47:31 +0000 (11:47 +0000)]
[GTK] ATK API tests failing because of patch for bug 72390
https://bugs.webkit.org/show_bug.cgi?id=72592

Reviewed by Philippe Normand.

* tests/testatk.c:
(testWebkitAtkParentForRootObject): Remove the offending line in
the unit test, which is not actually required to test the new
functionality and causes problems in some scenarios, due to the
lazy creation mechanism of AtkObjects.

* tests/testatkroles.c:
(finish_loading): Reflect that the document frame object is no
longer the root accessibility object (a scroll pane from now on),
but the only child of that one. Thus, skip that root object.

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

9 years agoNot reviewed: fix IE user agents strings in the inspector.
pfeldman@chromium.org [Thu, 17 Nov 2011 11:27:39 +0000 (11:27 +0000)]
Not reviewed: fix IE user agents strings in the inspector.

* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):

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

9 years agoMake use-fixed-layout work reliable
kenneth@webkit.org [Thu, 17 Nov 2011 11:26:29 +0000 (11:26 +0000)]
Make use-fixed-layout work reliable
https://bugs.webkit.org/show_bug.cgi?id=72511

Reviewed by Simon Hausmann.

Source/WebCore:

Always send a viewport update per page load as we depend on that,
to reset all viewport handling before doing layout.

* page/Page.cpp:
(WebCore::Page::updateViewportArguments):

Source/WebKit2:

The code handling use-fixed-layout wasn't 100% reliable. The code
was changed to make sure the value is always correct.

It also doesn't set the value by looking at the previous FrameView,
as that wouldn't work in cases, such as when the web process has
crashes.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::setResizesToContentsUsingLayoutSize):
(WebKit::WebPage::setUseFixedLayout):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::useFixedLayout):

    Store the state as m_useFixedLayout so that it can be used
    from the WebFrameLoaderClient.

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

9 years ago[chromium] Support CoreAnimation plugin model on Mac
steveblock@google.com [Thu, 17 Nov 2011 11:13:48 +0000 (11:13 +0000)]
[chromium] Support CoreAnimation plugin model on Mac
https://bugs.webkit.org/show_bug.cgi?id=47925

Update test expectations.

Unreviewed gardening.

* platform/chromium/test_expectations.txt:

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

9 years agoMove test_results_uploader.py out of layout_package
abarth@webkit.org [Thu, 17 Nov 2011 11:01:53 +0000 (11:01 +0000)]
Move test_results_uploader.py out of layout_package
https://bugs.webkit.org/show_bug.cgi?id=72590

Reviewed by Eric Seidel.

Most of the lines of code in this file are wrong, but I've restrained
myself and only changed a few of them to generalized this class to the
common package.

This is part of a series of patches to remove layout_package.

* Scripts/webkitpy/common/net/file_uploader.py: Copied from Tools/Scripts/webkitpy/layout_tests/layout_package/test_results_uploader.py.
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
* Scripts/webkitpy/layout_tests/layout_package/test_results_uploader.py: Removed.

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

9 years agoUnreviewed. Fix style nits in printing.py.
abarth@webkit.org [Thu, 17 Nov 2011 10:58:56 +0000 (10:58 +0000)]
Unreviewed. Fix style nits in printing.py.

* Scripts/webkitpy/layout_tests/views/printing.py:

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

9 years ago[Qt][WK2] Do not apply new viewport properties until after the first visually non...
commit-queue@webkit.org [Thu, 17 Nov 2011 10:56:26 +0000 (10:56 +0000)]
[Qt][WK2] Do not apply new viewport properties until after the first visually non-empty layout.
https://bugs.webkit.org/show_bug.cgi?id=72508

Delay applying viewport properties on the viewport item until after the first visually non-empty
layout finished. It enables the viewport to be intact until the new page is ready to be rendered.

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2011-11-17
Reviewed by Kenneth Rohde Christiansen.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::loadDidCommit):
(QQuickWebViewPrivate::didFinishFirstNonEmptyLayout):
(QQuickWebViewPrivate::didChangeContentsSize):
(QQuickWebViewPrivate::didChangeViewportProperties):
(QQuickWebViewPrivate::updateViewportSize):
(QQuickWebViewPrivate::computeViewportConstraints):
* UIProcess/API/qt/qquickwebview_p.h:
(PostTransitionState::isTransitioningToNewPage):
* UIProcess/qt/ClientImpl.cpp:
(qt_wk_didFirstVisuallyNonEmptyLayoutForFrame):
(setupPageLoaderClient):
* UIProcess/qt/QtViewInterface.cpp:
(WebKit::QtViewInterface::didFinishFirstNonEmptyLayout):
(WebKit::QtViewInterface::didChangeContentsSize):
(WebKit::QtViewInterface::didChangeViewportProperties):
(WebKit::QtViewInterface::startDrag):
* UIProcess/qt/QtViewInterface.h:
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::reset):
(WebKit::QtViewportInteractionEngine::applyConstraints):
* UIProcess/qt/QtViewportInteractionEngine.h:
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::didFinishFirstNonEmptyLayout):
(QtWebPageProxy::didChangeContentsSize):
(QtWebPageProxy::didChangeViewportProperties):
(QtWebPageProxy::startDrag):
* UIProcess/qt/QtWebPageProxy.h:

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

9 years agoMinor style nits in run_webkit_tests.py
abarth@webkit.org [Thu, 17 Nov 2011 10:12:11 +0000 (10:12 +0000)]
Minor style nits in run_webkit_tests.py
https://bugs.webkit.org/show_bug.cgi?id=72583

Reviewed by Eric Seidel.

This patch just fixes some minor style issues as I work my way back
into this code.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:

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

9 years agoWeb Inspector: inspector follows javascript: hrefs as relative
apavlov@chromium.org [Thu, 17 Nov 2011 10:10:14 +0000 (10:10 +0000)]
Web Inspector: inspector follows javascript: hrefs as relative
https://bugs.webkit.org/show_bug.cgi?id=72373

Source/WebCore:

javascript: hrefs should never be linkified for security.

Reviewed by Yury Semikhatsky.

* inspector/front-end/ElementsTreeOutline.js:
(WebInspector.ElementsTreeElement.prototype._buildAttributeDOM):
* inspector/front-end/ResourceUtils.js:
(WebInspector.completeURL):

LayoutTests:

Reviewed by Yury Semikhatsky.

* inspector/styles/styles-url-linkify-expected.txt:
* inspector/styles/styles-url-linkify.html:

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

9 years agoMove test_result_writer out of layout_package
abarth@webkit.org [Thu, 17 Nov 2011 10:09:21 +0000 (10:09 +0000)]
Move test_result_writer out of layout_package
https://bugs.webkit.org/show_bug.cgi?id=72586

Rubber-stamped by Eric Seidel.

This is part of a series of patches to remove layout_package.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Copied from Tools/Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py.
* Scripts/webkitpy/layout_tests/layout_package/test_result_writer.py: Removed.
* Scripts/webkitpy/tool/commands/rebaseline.py:

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

9 years ago2011-11-17 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Thu, 17 Nov 2011 10:08:40 +0000 (10:08 +0000)]
2011-11-17  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix 32bit builds.

        * platform/ClockGeneric.cpp:
        (ClockGeneric::now): Use narrowPrecisionToFloat.
        * rendering/FilterEffectRenderer.cpp:
        (WebCore::FilterEffectRenderer::build): Use it correctly.

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

9 years agosvn-apply shouldn't magically move files into Source anymore
abarth@webkit.org [Thu, 17 Nov 2011 10:04:48 +0000 (10:04 +0000)]
svn-apply shouldn't magically move files into Source anymore
https://bugs.webkit.org/show_bug.cgi?id=72579

Reviewed by Eric Seidel.

The Source directory has existed for long enough that we don't need
svn-apply to magically re-write old-style patches anymore.

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

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

9 years agoAccessibility: Chromium requires an AX notification when an iframe loads.
dmazzoni@google.com [Thu, 17 Nov 2011 09:44:01 +0000 (09:44 +0000)]
Accessibility: Chromium requires an AX notification when an iframe loads.
https://bugs.webkit.org/show_bug.cgi?id=72239

Source/WebCore:

When a document finishes loading, we were sending an AXLoadComplete if it
was the top document. Now, if it's a document in an iframe, send an
AXLayoutComplete on the iframe.

Reviewed by Chris Fleizach.

Test: accessibility/loading-iframe-sends-notification.html

* dom/Document.cpp:
(WebCore::Document::implicitClose):

LayoutTests:

Reviewed by Chris Fleizach.

* accessibility/loading-iframe-sends-notification.html: Added.
* platform/chromium/accessibility/loading-iframe-sends-notification-expected.txt: Added.

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

9 years agoPatch by Eunmi Lee <eunmi15.lee@samsung.com> on 2011-11-17
commit-queue@webkit.org [Thu, 17 Nov 2011 09:27:43 +0000 (09:27 +0000)]
Patch by Eunmi Lee <eunmi15.lee@samsung.com> on 2011-11-17
Reviewed by Martin Robinson.

[WK2] Move gtk/BackingStoreGtk.cpp to cairo/BackingStoreCairo.cpp to share with EFL port.
https://bugs.webkit.org/show_bug.cgi?id=62444

Rename gtk/BackingStoreGtk.cpp to cairo/BackingStoreCairo.cpp to share with EFL port.
The gtk/BackingStoreGtk.cpp only has cairo dependency, so it can be shared with other port
that uses cairo.

* GNUmakefile.am:
* UIProcess/BackingStore.h:
* UIProcess/cairo/BackingStoreCairo.cpp: Renamed from Source/WebKit2/UIProcess/gtk/BackingStoreGtk.cpp.
(WebKit::BackingStore::paint):
(WebKit::BackingStore::incorporateUpdate):
(WebKit::BackingStore::scroll):

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

9 years ago[Chromium] Introduce WebSecurityOrigin::isUnique in preparation for removing WebSecur...
abarth@webkit.org [Thu, 17 Nov 2011 09:27:04 +0000 (09:27 +0000)]
[Chromium] Introduce WebSecurityOrigin::isUnique in preparation for removing WebSecurityOrigin::isEmpty
https://bugs.webkit.org/show_bug.cgi?id=72580

Reviewed by Darin Fisher.

We've removed the concept of empty security origins from WebKit because
it doesn't exist in the specs.  Now it's time to remove it from the API.

* public/WebSecurityOrigin.h:
(WebKit::WebSecurityOrigin::isUnique):

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

9 years ago<http://webkit.org/b/72574> Remove unnecessary use of CarbonCore APIs from Audio...
mrowe@apple.com [Thu, 17 Nov 2011 09:21:46 +0000 (09:21 +0000)]
<webkit.org/b/72574> Remove unnecessary use of CarbonCore APIs from Audio code

Reviewed by Andy Estes.

* platform/audio/mac/AudioDestinationMac.cpp:
(WebCore::AudioDestinationMac::AudioDestinationMac): Switch from using the Carbon Component Manager
to using AudioUnit's own component interface.
(WebCore::AudioDestinationMac::~AudioDestinationMac): Ditto.
* platform/audio/mac/AudioFileReaderMac.cpp:
(WebCore::AudioFileReader::AudioFileReader): Remove an unncessary trip through the Carbon File Manager
when converting a char* path to a CFURLRef representing the same.

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

9 years ago[WebKit2][gtk] Add few more properties to WebKitSettings
commit-queue@webkit.org [Thu, 17 Nov 2011 09:10:53 +0000 (09:10 +0000)]
[WebKit2][gtk] Add few more properties to WebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=72468

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-11-17
Reviewed by Martin Robinson.

Add 'enable-private-browsing', 'enable-developer-extras, 'enable-resizable-text-areas'
and 'enable-tabs-to-links' properties to WebKitSettings.

* UIProcess/API/gtk/WebKitSettings.cpp:
(webKitSettingsSetProperty): Add new set functions.
(webKitSettingsGetProperty): Add new get functions.
(webkit_settings_class_init): Add new properties.
(webkit_settings_get_enable_private_browsing): Get 'enable-private-browsing' property.
(webkit_settings_set_enable_private_browsing): Set 'enable-private-browsing' property.
(webkit_settings_get_enable_developer_extras): Get 'enable-developer-extras' property.
(webkit_settings_set_enable_developer_extras): Set 'enable-developer-extras' property.
(webkit_settings_get_enable_resizable_text_areas): Get 'enable-resizable-text-areas' property.
(webkit_settings_set_enable_resizable_text_areas): Set 'enable-resizable-text-areas' property.
(webkit_settings_get_enable_tabs_to_links): Get 'enable-tabs-to-links' property.
(webkit_settings_set_enable_tabs_to_links): Set 'enable-tabs-to-links' property.
* UIProcess/API/gtk/WebKitSettings.h: New public APIs added.
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: New APIs added.
* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings): Add new tests.

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

9 years agoUnreviewed. Fix WebKit2 GTK+ build after r100569.
carlosgc@webkit.org [Thu, 17 Nov 2011 09:02:54 +0000 (09:02 +0000)]
Unreviewed. Fix WebKit2 GTK+ build after r100569.

* WebProcess/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::didReceiveResponse):

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

9 years ago[WebKit2][gtk] Fix assert while running TestWebKitSettings
commit-queue@webkit.org [Thu, 17 Nov 2011 08:53:07 +0000 (08:53 +0000)]
[WebKit2][gtk] Fix assert while running TestWebKitSettings
https://bugs.webkit.org/show_bug.cgi?id=72469

Patch by Nayan Kumar K <nayankk@motorola.com> on 2011-11-17
Reviewed by Martin Robinson.

* UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
(testWebKitSettings): Correct the test.

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

9 years agoCSP report-only mode doesn't work from an HTTP header
abarth@webkit.org [Thu, 17 Nov 2011 08:25:40 +0000 (08:25 +0000)]
CSP report-only mode doesn't work from an HTTP header
https://bugs.webkit.org/show_bug.cgi?id=71958

Reviewed by Eric Seidel.

Source/WebCore:

"It's tested or it's broken." -- Adam Leventhal

Test: http/tests/security/contentSecurityPolicy/report-only-from-header.php

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didBeginDocument):

LayoutTests:

Test that X-WebKit-CSP-Report-Only actually sends reports.

* http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/report-only-from-header.php: Added.

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

9 years agoWeb Inspector: introduce Debugger domain capabilities concept.
pfeldman@chromium.org [Thu, 17 Nov 2011 08:16:44 +0000 (08:16 +0000)]
Web Inspector: introduce Debugger domain capabilities concept.
https://bugs.webkit.org/show_bug.cgi?id=72393

Many of the Preferences that we have in Settings.js and override in DevTools.js
are really not preferences, but capabilities. Protocol clients should have a way
of figuring out whether some capability is present before using it.

Reviewed by Yury Semikhatsky.

Source/WebCore:

* bindings/js/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::canSetScriptSource):
* bindings/js/ScriptDebugServer.h:
* bindings/v8/ScriptDebugServer.cpp:
(WebCore::ScriptDebugServer::canSetScriptSource):
* bindings/v8/ScriptDebugServer.h:
* inspector/CodeGeneratorInspector.py:
* inspector/Inspector.json:
* inspector/InspectorDebuggerAgent.cpp:
(WebCore::InspectorDebuggerAgent::getCapabilities):
* inspector/InspectorDebuggerAgent.h:
* inspector/front-end/DebuggerModel.js:
(WebInspector.DebuggerModel):
(WebInspector.DebuggerModel.prototype.enableDebugger):
(WebInspector.DebuggerModel.prototype.canSetScriptSource):
* inspector/front-end/DebuggerPresentationModel.js:
(WebInspector.DebuggerPresentationModel.prototype.canEditScriptSource):
* inspector/front-end/Settings.js:

Source/WebKit/chromium:

* src/js/DevTools.js:

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

9 years agoCSS exclusions: parse the wrap-flow and wrap-through properties
mihnea@adobe.com [Thu, 17 Nov 2011 08:08:31 +0000 (08:08 +0000)]
CSS exclusions: parse the wrap-flow and wrap-through properties
https://bugs.webkit.org/show_bug.cgi?id=71904

Reviewed by Dean Jackson.

Source/WebCore:

Tests: fast/exclusions/wrap-flow-parsing.html
       fast/exclusions/wrap-through-parsing.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator WrapFlow):
(WebCore::CSSPrimitiveValue::operator WrapThrough):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applyProperty):
* css/CSSValueKeywords.in:
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::wrapFlow):
(WebCore::InheritedFlags::wrapThrough):
(WebCore::InheritedFlags::setWrapFlow):
(WebCore::InheritedFlags::setWrapThrough):
(WebCore::InheritedFlags::initialWrapFlow):
(WebCore::InheritedFlags::initialWrapThrough):
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:

LayoutTests:

* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/exclusions/script-tests/wrap-flow-parsing.js: Added.
* fast/exclusions/script-tests/wrap-through-parsing.js: Added.
* fast/exclusions/wrap-flow-parsing-expected.txt: Added.
* fast/exclusions/wrap-flow-parsing.html: Added.
* fast/exclusions/wrap-through-parsing-expected.txt: Added.
* fast/exclusions/wrap-through-parsing.html: Added.
* platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
* platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
* svg/css/getComputedStyle-basic-expected.txt:

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

9 years ago[GTK] Use a URI instead of local path to create download destination in WebKit2
carlosgc@webkit.org [Thu, 17 Nov 2011 07:59:04 +0000 (07:59 +0000)]
[GTK] Use a URI instead of local path to create download destination in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=72500

Reviewed by Philippe Normand.

* WebProcess/Downloads/soup/DownloadSoup.cpp:
(WebKit::DownloadClient::didReceiveResponse): Use
g_file_new_for_uri() instad of g_file_new_for_path(). Also use
adoptGRef to fix a memory leak.

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

9 years agoImplement filter function shorthands
dino@apple.com [Thu, 17 Nov 2011 07:24:01 +0000 (07:24 +0000)]
Implement filter function shorthands
https://bugs.webkit.org/show_bug.cgi?id=68475

Reviewed by Simon Fraser.

Source/WebCore:

Implement the shorthand functions for filter effects.
This includes grayscale, sepia, invert, hue-rotate, saturate,
opacity, gamma, drop-shadow and blur. At the moment sharpen
and url are not supported.

CSSParser needed to be updated because it was mistakenly
clamping saturation values to [0,1]. Any positive number
is allowed so you can produce super-saturated images.

The biggest change was the API to FilterEffectRenderer. It now
builds a list of effects and applies the filter itself.

Note that the drop-shadow and blur operations don't yet
provide accurate results because they produce an output image
that is larger than the input. See
https://bugs.webkit.org/show_bug.cgi?id=71929
https://bugs.webkit.org/show_bug.cgi?id=71930

While I was there, I fixed a small style issue in
CustomFilterOperation.

Tests: css3/filters/effect-blur.html
       css3/filters/effect-combined.html
       css3/filters/effect-drop-shadow.html
       css3/filters/effect-gamma.html
       css3/filters/effect-grayscale.html
       css3/filters/effect-hue-rotate.html
       css3/filters/effect-invert.html
       css3/filters/effect-opacity.html
       css3/filters/effect-saturate.html
       css3/filters/effect-sepia.html

* WebCore.xcodeproj/project.pbxproj: Add StyleShader.h to
the project (missing from earlier commit).
* css/CSSParser.cpp:
(WebCore::CSSParser::isValidFilterArgument): Don't clamp
saturate to [0,1]
* platform/graphics/filters/CustomFilterOperation.h:
* rendering/FilterEffectRenderer.cpp:
(WebCore::endMatrixRow):
(WebCore::lastMatrixRow):
(WebCore::FilterEffectRenderer::FilterEffectRenderer):
(WebCore::FilterEffectRenderer::inputContext):
(WebCore::FilterEffectRenderer::build):
(WebCore::FilterEffectRenderer::prepare):
(WebCore::FilterEffectRenderer::apply):
* rendering/FilterEffectRenderer.h:
(WebCore::FilterEffectRenderer::setSourceImageRect):
(WebCore::FilterEffectRenderer::output):
(WebCore::FilterEffectRenderer::setMaxEffectRects):
(WebCore::FilterEffectRenderer::lastEffect):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::updateOrRemoveFilterEffect):
(WebCore::RenderLayer::updateFilterBackingStore):

LayoutTests:

Test the shorthand functions for filter effects.
This includes grayscale, sepia, invert, hue-rotate, saturate,
opacity, gamma, drop-shadow and blur. At the moment sharpen
and url are not supported.

Note that the drop-shadow and blur operations don't yet
provide accurate results because they produce an output image
that is larger than the input. See
https://bugs.webkit.org/show_bug.cgi?id=71929
https://bugs.webkit.org/show_bug.cgi?id=71930

* css3/filters/effect-blur-expected.png: Added.
* css3/filters/effect-blur-expected.txt: Added.
* css3/filters/effect-blur.html: Added.
* css3/filters/effect-combined-expected.png: Added.
* css3/filters/effect-combined-expected.txt: Added.
* css3/filters/effect-combined.html: Added.
* css3/filters/effect-drop-shadow-expected.png: Added.
* css3/filters/effect-drop-shadow-expected.txt: Added.
* css3/filters/effect-drop-shadow.html: Added.
* css3/filters/effect-gamma-expected.png: Added.
* css3/filters/effect-gamma-expected.txt: Added.
* css3/filters/effect-gamma.html: Added.
* css3/filters/effect-grayscale-expected.png: Added.
* css3/filters/effect-grayscale-expected.txt: Added.
* css3/filters/effect-grayscale.html: Added.
* css3/filters/effect-hue-rotate-expected.png: Added.
* css3/filters/effect-hue-rotate-expected.txt: Added.
* css3/filters/effect-hue-rotate.html: Added.
* css3/filters/effect-invert-expected.png: Added.
* css3/filters/effect-invert-expected.txt: Added.
* css3/filters/effect-invert.html: Added.
* css3/filters/effect-opacity-expected.png: Added.
* css3/filters/effect-opacity-expected.txt: Added.
* css3/filters/effect-opacity.html: Added.
* css3/filters/effect-saturate-expected.png: Added.
* css3/filters/effect-saturate-expected.txt: Added.
* css3/filters/effect-saturate.html: Added.
* css3/filters/effect-sepia-expected.png: Added.
* css3/filters/effect-sepia-expected.txt: Added.
* css3/filters/effect-sepia.html: Added.
* css3/filters/resources/reference.png: Added.
* css3/filters/script-tests/filter-property-parsing-invalid.js:
* css3/filters/script-tests/filter-property-parsing.js:

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

9 years agoRemove all custom constructors of Events from JSC
haraken@chromium.org [Thu, 17 Nov 2011 07:11:34 +0000 (07:11 +0000)]
Remove all custom constructors of Events from JSC
https://bugs.webkit.org/show_bug.cgi?id=72577

Reviewed by Adam Barth.

- Makes CodeGeneratorJS.pm generate Event constructors
if [ConstructorTemplate=Event] IDL is specified.
- Removes EventConstructors.h and JSEventConstructors.cpp.
- Replaces all JSC custom constructors of Events
with the generated code by [ConstructorTemplate=Event] IDL.

Tests: fast/events/constructors/before-load-event-constructor.html
       fast/events/constructors/close-event-constructor.html
       fast/events/constructors/custom-event-constructor.html
       fast/events/constructors/error-event-constructor.html
       fast/events/constructors/event-constructors.html
       fast/events/constructors/hash-change-event-constructor.html
       fast/events/constructors/message-event-constructor.html
       fast/events/constructors/overflow-event-constructor.html
       fast/events/constructors/page-transition-event-constructor.html
       fast/events/constructors/pop-state-event-constructor.html
       fast/events/constructors/progress-event-constructor.html
       fast/events/constructors/track-event-constructor.html
       fast/events/constructors/webkit-animation-event-constructor.html
       fast/events/constructors/webkit-transition-event-constructor.html

* bindings/generic/EventConstructors.h: Removed. This is what we wanted to do in this patch.
* bindings/js/JSEventConstructors.cpp: Ditto.
* GNUmakefile.list.am: Removed EventConstructors.h and JSEventConstructors.cpp.
* Target.pri: Ditto.
* UseJSC.cmake: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bindings/js/JSBindingsAllInOne.cpp: Ditto.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Added JSDictionary.h.
(GenerateConstructorDeclaration): Added a header for fillXXXXEventInit(...).
(GenerateConstructorDefinition): Generates an Event constructor. The generated code is the same as the code that had been written in JSEventConstructors.cpp.
(IsConstructable): Judges if a given interface is constructable.
(IsConstructorTemplate): Judges if a given interface has a given template, e.g. judges if an interface has [ConstructorTemplate=Event].

* bindings/scripts/test/TestEventConstructor.idl: Changed 'CustomConstructor=Event' to 'ConstructorTemplate=Event'. We should have changed this in r100108.
* bindings/scripts/test/JS/JSTestEventConstructor.cpp: Updated a run-bindings-tests result.
(WebCore::JSTestEventConstructorConstructor::constructJSTestEventConstructor):
(WebCore::fillTestEventConstructorInit):
* bindings/scripts/test/JS/JSTestEventConstructor.h: Ditto.
* bindings/scripts/test/V8/V8TestEventConstructor.cpp: Ditto.
(WebCore::V8TestEventConstructor::constructorCallback):
(WebCore::fillTestEventConstructorInit):
* bindings/scripts/test/V8/V8TestEventConstructor.h: Ditto.

* dom/BeforeLoadEvent.idl: In essence, replaced [JSCustomConstructor] IDL with [JSConstructorTemplate=Event] IDL.
* dom/CustomEvent.idl: Ditto.
* dom/ErrorEvent.idl: Ditto.
* dom/Event.idl: Ditto.
* dom/HashChangeEvent.idl: Ditto.
* dom/MessageEvent.idl: Ditto.
* dom/OverflowEvent.idl: Ditto.
* dom/PageTransitionEvent.idl: Ditto.
* dom/PopStateEvent.idl: Ditto.
* dom/ProgressEvent.idl: Ditto.
* dom/WebKitAnimationEvent.idl: Ditto.
* dom/WebKitTransitionEvent.idl: Ditto.
* html/track/TrackEvent.idl: Ditto.
* websockets/CloseEvent.idl: Ditto.

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

9 years agoBuild fix for Apple WebKit due to r100560.
dino@apple.com [Thu, 17 Nov 2011 06:33:22 +0000 (06:33 +0000)]
Build fix for Apple WebKit due to r100560.
When I removed the violating header file it lost the
reference to Color.

No review.

* platform/graphics/filters/FilterOperation.h:

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

9 years agoAdd a list of contribution areas
rniwa@webkit.org [Thu, 17 Nov 2011 06:22:13 +0000 (06:22 +0000)]
Add a list of contribution areas
https://bugs.webkit.org/show_bug.cgi?id=72566

Reviewed by Eric Seidel.

Added ContributionAreas class.

* Scripts/webkitpy/common/config/contributionareas.py: Added.
* Scripts/webkitpy/common/config/contributionareas_unittest.py: Added.

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

9 years agoRefactor ChangeLogTest.test_parse_reviewer_text
rniwa@webkit.org [Thu, 17 Nov 2011 06:20:27 +0000 (06:20 +0000)]
Refactor ChangeLogTest.test_parse_reviewer_text
https://bugs.webkit.org/show_bug.cgi?id=72572

Reviewed by Eric Seidel.

Refactored the test code by introduing two helper functions.

* Scripts/webkitpy/common/checkout/changelog_unittest.py:

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

9 years agoDropShadowFilterOperation violates platform isolation
dino@apple.com [Thu, 17 Nov 2011 05:24:42 +0000 (05:24 +0000)]
DropShadowFilterOperation violates platform isolation
https://bugs.webkit.org/show_bug.cgi?id=72544

Reviewed by Simon Fraser.

Move ShadowData properties into the DropShadowFilterOperation
to avoid depending on something outside platform.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::valueForFilter):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::createFilterOperations):
* platform/graphics/filters/FilterOperation.h:
(WebCore::DropShadowFilterOperation::create):
(WebCore::DropShadowFilterOperation::x):
(WebCore::DropShadowFilterOperation::y):
(WebCore::DropShadowFilterOperation::stdDeviation):
(WebCore::DropShadowFilterOperation::color):
(WebCore::DropShadowFilterOperation::operator==):
(WebCore::DropShadowFilterOperation::DropShadowFilterOperation):

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

9 years ago[chromium] Update more chromium baselines and expectations
jamesr@google.com [Thu, 17 Nov 2011 05:14:53 +0000 (05:14 +0000)]
[chromium] Update more chromium baselines and expectations

* platform/chromium-cg-mac-snowleopard/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Added.
* platform/chromium-linux/fast/repaint/block-selection-gap-in-composited-layer-expected.png:
* platform/chromium-mac-leopard/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Added.
* platform/chromium-win/fast/repaint/block-selection-gap-in-composited-layer-expected.png:
* platform/chromium/test_expectations.txt:

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

9 years agoAdd SCMDetector object to make scm detection mockable
eric@webkit.org [Thu, 17 Nov 2011 05:08:57 +0000 (05:08 +0000)]
Add SCMDetector object to make scm detection mockable
https://bugs.webkit.org/show_bug.cgi?id=72247

Reviewed by Adam Barth.

I think SCM detection may eventually be rolled into Checkout,
but this patch at least makes it possible to mock code-paths
which rely on scm detection.
In the process of replacing callers of these free-functions
I found that one of the functions was no longer used,
and that one of the callers could instead just use the SCM
object it already had access to through port.host.scm().
I also discovered that I was not calling Host._initialize_scm()
and thus host.scm() was always returning None!

* Scripts/check-webkit-style:
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
* Scripts/webkitpy/common/checkout/deps.py:
* Scripts/webkitpy/common/checkout/scm/__init__.py:
* Scripts/webkitpy/common/checkout/scm/detection.py:
* Scripts/webkitpy/common/checkout/scm/git.py:
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
* Scripts/webkitpy/common/checkout/scm/svn.py:
* Scripts/webkitpy/common/host.py:
* Scripts/webkitpy/common/host_mock.py:
* Scripts/webkitpy/layout_tests/controllers/manager.py:
* Scripts/webkitpy/layout_tests/controllers/manager_worker_broker.py:
* Scripts/webkitpy/layout_tests/port/base.py:
* Scripts/webkitpy/layout_tests/port/mock_drt.py:
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
* Scripts/webkitpy/to_be_moved/rebaseline_chromium_webkit_tests.py:
* Scripts/webkitpy/tool/servers/rebaselineserver.py:

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

9 years ago[chromium] Update baselines for compositing tests with video and canvas
jamesr@google.com [Thu, 17 Nov 2011 04:51:02 +0000 (04:51 +0000)]
[chromium] Update baselines for compositing tests with video and canvas

* platform/chromium-cg-mac-leopard/compositing/geometry/clipped-video-controller-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-cg-mac-leopard/compositing/self-painting-layers-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/compositing/geometry/clipped-video-controller-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-cg-mac/compositing/geometry/clipped-video-controller-expected.png: Removed.
* platform/chromium-cg-mac/compositing/geometry/video-opacity-overlay-expected.png: Removed.
* platform/chromium-gpu-cg-mac/compositing/geometry/clipped-video-controller-expected.png: Added.
* platform/chromium-gpu-cg-mac/compositing/geometry/video-fixed-scrolling-expected.png: Renamed from LayoutTests/platform/chromium-cg-mac/compositing/geometry/video-fixed-scrolling-expected.png.
* platform/chromium-gpu-cg-mac/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-gpu-cg-mac/compositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-gpu-cg-mac/compositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-gpu-cg-mac/compositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-gpu-cg-mac/compositing/self-painting-layers-expected.png: Added.
* platform/chromium-linux/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-linux/compositing/overflow/overflow-compositing-descendant-expected.png:
* platform/chromium-linux/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium-linux/compositing/self-painting-layers-expected.png:
* platform/chromium-mac-leopard/compositing/geometry/clipped-video-controller-expected.png: Added.
* platform/chromium-mac-leopard/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac-leopard/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac-leopard/compositing/layers-inside-overflow-scroll-expected.png: Added.
* platform/chromium-mac-leopard/compositing/overflow/overflow-compositing-descendant-expected.png: Added.
* platform/chromium-mac-leopard/compositing/overflow/scroll-ancestor-update-expected.png: Added.
* platform/chromium-mac-leopard/compositing/self-painting-layers-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/geometry/clipped-video-controller-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/geometry/video-fixed-scrolling-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/geometry/video-opacity-overlay-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-mac/compositing/geometry/clipped-video-controller-expected.png: Removed.
* platform/chromium-mac/compositing/geometry/video-fixed-scrolling-expected.png: Removed.
* platform/chromium-mac/compositing/geometry/video-opacity-overlay-expected.png: Removed.
* platform/chromium-mac/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Removed.
* platform/chromium-win/compositing/layers-inside-overflow-scroll-expected.png:
* platform/chromium-win/compositing/overflow/overflow-compositing-descendant-expected.png:
* platform/chromium-win/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium-win/compositing/self-painting-layers-expected.png:
* platform/chromium/compositing/overflow/overflow-compositing-descendant-expected.png:
* platform/chromium/compositing/overflow/scroll-ancestor-update-expected.png:
* platform/chromium/compositing/self-painting-layers-expected.png:
* platform/chromium/compositing/video-page-visibility-expected.png: Added.
* platform/chromium/test_expectations.txt:
* platform/mac-lion/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Renamed from LayoutTests/platform/mac-snowleopard/compositing/layer-creation/spanOverlapsCanvas-expected.txt.
* platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Removed.

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

9 years agoCode block jettisoning should be part of the GC's transitive closure
fpizlo@apple.com [Thu, 17 Nov 2011 03:58:48 +0000 (03:58 +0000)]
Code block jettisoning should be part of the GC's transitive closure
https://bugs.webkit.org/show_bug.cgi?id=72467

Reviewed by Geoff Garen.

Replaced JettisonedCodeBlocks with DFGCodeBlocks. The latter knows about all
DFG code blocks (i.e. those that may be jettisoned, and may have inlined weak
references) and helps track what state each of those code blocks is in during
GC. The state consists of two flags; mayBeExecuting, which tells if the code block
is live from call frames; and isJettisoned, which tells if the code block is
not owned by any executable and thus should be deleted as soon as it is not
mayBeExecuting.

- Not executing, Not jettisoned: The code block may or may not be reachable from
  any executables, but it is owned by an executable, and hence should be
  kept alive if its executable is live and if all of its weak references are
  live. Otherwise it should be deleted during the current GC cycle, and its
  outgoing references should not be scanned.

- Not executing but jettisoned: The code block should be deleted as soon as
  possible and none of its outgoing references should be scanned.

- Executing but not jettisoned: The code block should be kept alive during this
  GC cycle, and all of its outgoing references (including the weak ones)
  should be scanned and marked strongly. The mayBeExecuting bit will be cleared at
  the end of the GC cycle.

- Executing and jettisoned: The code block should be kept alive during this
  GC cycle, and all of its outgoing references (including the weak ones)
  should be scanned and marked strongly. However, on the next GC cycle, it
  will have its mayBeExecuting bit cleared and hence it will become a candidate
  for immediate deletion provided it is not executing again.

This is performance-neutral.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::~CodeBlock):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::setJITCode):
(JSC::CodeBlock::DFGData::DFGData):
(JSC::DFGCodeBlocks::mark):
* heap/ConservativeRoots.cpp:
(JSC::ConservativeRoots::add):
* heap/ConservativeRoots.h:
* heap/DFGCodeBlocks.cpp: Added.
(JSC::DFGCodeBlocks::DFGCodeBlocks):
(JSC::DFGCodeBlocks::~DFGCodeBlocks):
(JSC::DFGCodeBlocks::jettison):
(JSC::DFGCodeBlocks::clearMarks):
(JSC::DFGCodeBlocks::deleteUnmarkedJettisonedCodeBlocks):
(JSC::DFGCodeBlocks::traceMarkedCodeBlocks):
* heap/DFGCodeBlocks.h: Added.
* heap/Heap.cpp:
(JSC::Heap::jettisonDFGCodeBlock):
(JSC::Heap::markRoots):
(JSC::Heap::collect):
* heap/Heap.h:
* heap/JettisonedCodeBlocks.cpp: Removed.
* heap/JettisonedCodeBlocks.h: Removed.
* interpreter/RegisterFile.cpp:
(JSC::RegisterFile::gatherConservativeRoots):
* interpreter/RegisterFile.h:
* runtime/Executable.cpp:
(JSC::jettisonCodeBlock):

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

9 years agoUse a simple page client for user consent in getUserMedia()
commit-queue@webkit.org [Thu, 17 Nov 2011 03:50:56 +0000 (03:50 +0000)]
Use a simple page client for user consent in getUserMedia()
https://bugs.webkit.org/show_bug.cgi?id=70897

Patch by Adam Bergkvist <adam.bergkvist@ericsson.com> on 2011-11-16
Reviewed by Adam Barth.

This is one in a series of patches that update the MediaStream feature
to use WebCore platform interfaces.

Covered by existing tests.

* GNUmakefile.list.am:
* WebCore.gypi:
* mediastream/MediaStreamClient.h: Removed.
* mediastream/MediaStreamController.cpp: Removed.
* mediastream/MediaStreamController.h: Removed.
* mediastream/MediaStreamFrameController.cpp: Removed.
* mediastream/MediaStreamFrameController.h: Removed.
* mediastream/UserMediaClient.h: Added.
(WebCore::UserMediaClient::~UserMediaClient):
* mediastream/UserMediaRequest.cpp: Added.
(WebCore::UserMediaRequest::create):
(WebCore::UserMediaRequest::UserMediaRequest):
(WebCore::UserMediaRequest::~UserMediaRequest):
(WebCore::UserMediaRequest::start):
(WebCore::UserMediaRequest::mediaStreamSourcesQueryCompleted):
(WebCore::UserMediaRequest::succeed):
(WebCore::UserMediaRequest::fail):
(WebCore::UserMediaRequest::contextDestroyed):
(WebCore::UserMediaRequest::parseOptions):
* mediastream/UserMediaRequest.h: Added.
(WebCore::UserMediaRequest::audio):
(WebCore::UserMediaRequest::video):
(WebCore::UserMediaRequest::cameraPreferenceUser):
(WebCore::UserMediaRequest::cameraPreferenceEnvironment):
(WebCore::UserMediaRequest::successCallback):
(WebCore::UserMediaRequest::errorCallback):
* page/CallbackTask.h: Removed.
* page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::~Frame):
(WebCore::Frame::pageDestroyed):
(WebCore::Frame::transferChildFrameToNewDocument):
* page/Frame.h:
* page/Navigator.cpp:
(WebCore::Navigator::webkitGetUserMedia):
* page/NavigatorUserMediaErrorCallback.h:
* page/Page.cpp:
(WebCore::Page::Page):
(WebCore::Page::~Page):
(WebCore::Page::PageClients::PageClients):
* page/Page.h:
(WebCore::Page::userMediaClient):

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

9 years ago[chromium] Fix duplicate expectations for chromium mac leopard
jamesr@google.com [Thu, 17 Nov 2011 03:42:41 +0000 (03:42 +0000)]
[chromium] Fix duplicate expectations for chromium mac leopard

* platform/chromium/test_expectations.txt:

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

9 years agoFix the build.
mrowe@apple.com [Thu, 17 Nov 2011 03:32:02 +0000 (03:32 +0000)]
Fix the build.

The C++ standard library interferes with Objective-C exceptions when built with -fno-exceptions.
Apply the workaround that we use in other projects to WebKitTestRunner.

* WebKitTestRunner/Configurations/Base.xcconfig: Use the prefix header for all targets.
* WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig: Ditto.
* WebKitTestRunner/WebKitTestRunnerPrefix.h: Work around the C++ standard library obnoxiousness.

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

9 years agoinstantiate WorkerEventQueue in WorkerContext
dgrogan@chromium.org [Thu, 17 Nov 2011 03:22:09 +0000 (03:22 +0000)]
instantiate WorkerEventQueue in WorkerContext
https://bugs.webkit.org/show_bug.cgi?id=72528

Reviewed by David Levin.

No new tests - nothing uses it yet.

* workers/WorkerContext.cpp:
(WebCore::WorkerContext::WorkerContext):
Instantiate WorkerEventQueue in InitializerList

* workers/WorkerEventQueue.h:
Don't inherit from RefCounted, WorkerContext has an OwnPtr to it

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

9 years agoUnreviewed. Rebaselined run-bindings-tests results.
haraken@chromium.org [Thu, 17 Nov 2011 03:13:47 +0000 (03:13 +0000)]
Unreviewed. Rebaselined run-bindings-tests results.

* bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::JSTestEventConstructor::JSTestEventConstructor):
(WebCore::JSTestEventConstructorOwner::finalize):
* bindings/scripts/test/JS/JSTestEventConstructor.h:
(WebCore::JSTestEventConstructor::impl):
(WebCore::JSTestEventConstructor::releaseImpl):
* bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::JSTestInterface::JSTestInterface):
(WebCore::JSTestInterfaceOwner::finalize):
* bindings/scripts/test/JS/JSTestInterface.h:
(WebCore::JSTestInterface::impl):
(WebCore::JSTestInterface::releaseImpl):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::JSTestMediaQueryListListener::JSTestMediaQueryListListener):
(WebCore::JSTestMediaQueryListListenerOwner::finalize):
* bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListener::impl):
(WebCore::JSTestMediaQueryListListener::releaseImpl):
* bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::JSTestNamedConstructor::JSTestNamedConstructor):
(WebCore::JSTestNamedConstructorOwner::finalize):
* bindings/scripts/test/JS/JSTestNamedConstructor.h:
(WebCore::JSTestNamedConstructor::impl):
(WebCore::JSTestNamedConstructor::releaseImpl):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::JSTestObj::JSTestObj):
(WebCore::JSTestObjOwner::finalize):
* bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObj::impl):
(WebCore::JSTestObj::releaseImpl):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterface::JSTestSerializedScriptValueInterface):
(WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterface::impl):
(WebCore::JSTestSerializedScriptValueInterface::releaseImpl):

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

9 years agoMake sure MHTML documents use the domain of the MHTML file.
jcivelli@chromium.org [Thu, 17 Nov 2011 03:08:21 +0000 (03:08 +0000)]
Make sure MHTML documents use the domain of the MHTML file.
https://bugs.webkit.org/show_bug.cgi?id=72445

Reviewed by Adam Barth.

Source/WebCore:

* dom/Document.h:
(WebCore::Document::setBaseURL):
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::receivedFirstData):

LayoutTests:

* mhtml/check_domain-expected.txt: Added.
* mhtml/check_domain.mht: Added.

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

9 years ago[Qt] Fix build after WTR AX support
caio.oliveira@openbossa.org [Thu, 17 Nov 2011 03:06:36 +0000 (03:06 +0000)]
[Qt] Fix build after WTR AX support
https://bugs.webkit.org/show_bug.cgi?id=72560

Reviewed by Geoffrey Garen.

Source/WebKit2:

* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKAccessibilityRootObject):
(WKAccessibilityFocusedObject):

Tools:

* WebKitTestRunner/InjectedBundle/DerivedSources.pri:
* WebKitTestRunner/InjectedBundle/Target.pri:

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

9 years agorepurpose the flexbox bot for grid layout
tony@chromium.org [Thu, 17 Nov 2011 02:58:59 +0000 (02:58 +0000)]
repurpose the flexbox bot for grid layout
https://bugs.webkit.org/show_bug.cgi?id=72557

Reviewed by Ryosuke Niwa.

Since new flexbox is enabled everywhere, we don't need this bot
anymore.  However, work on grid layout has begun, so we can use this
bot to compile with ENABLE_CSS_GRID_LAYOUT.

* BuildSlaveSupport/build.webkit.org-config/config.json: Just rename
the bot on the waterfall, I will change the slave config to enable
the compile flag and tests.

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

9 years ago[EFL] Use standard booleand data type in struct.
gyuyoung.kim@samsung.com [Thu, 17 Nov 2011 02:54:21 +0000 (02:54 +0000)]
[EFL] Use standard booleand data type in struct.
https://bugs.webkit.org/show_bug.cgi?id=72565

Reviewed by Martin Robinson.

Change *Eina_Bool* usages with *bool* in member variables of internal struct.

* ewk/ewk_contextmenu.cpp:
* ewk/ewk_frame.cpp:
* ewk/ewk_tiled_backing_store.cpp:
* ewk/ewk_view.cpp:

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

9 years agoUpdate supported display list after -webkit-grid and -webkit-inline-grid addition
jchaffraix@webkit.org [Thu, 17 Nov 2011 02:20:40 +0000 (02:20 +0000)]
Update supported display list after -webkit-grid and -webkit-inline-grid addition
https://bugs.webkit.org/show_bug.cgi?id=72559

Reviewed by Tony Chang.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue): Added the 2 new supported
values (forgotten in the previous change).

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

9 years ago[chromium] Expose mock scrollbars to window.internals
enne@google.com [Thu, 17 Nov 2011 02:09:26 +0000 (02:09 +0000)]
[chromium] Expose mock scrollbars to window.internals
https://bugs.webkit.org/show_bug.cgi?id=72195

Reviewed by James Robinson.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

* testing/Internals.cpp:
(WebCore::Internals::setMockScrollbarsEnabled):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit/chromium:

* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
(WebKit::WebSettingsImpl::setMockScrollbarsEnabled):
* src/WebSettingsImpl.h:

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

Tools:

Because mock scrollbars are a global setting, reset between runs.

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

LayoutTests:

Change a small number of initial tests that are failing on Chromium
due to small scrollbar pixel differences to use mock scrollbars. These
tests will be rebaselined once they have run through the bots.

* compositing/geometry/fixed-position.html:
* compositing/geometry/horizontal-scroll-composited.html:
* compositing/geometry/vertical-scroll-composited.html:
* compositing/overflow/fixed-position-ancestor-clip.html:
* compositing/resources/mock_scrollbars.js: Added.

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

9 years agoUnreviewed, build fix for 32-bit.
fpizlo@apple.com [Thu, 17 Nov 2011 02:00:06 +0000 (02:00 +0000)]
Unreviewed, build fix for 32-bit.

* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):

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

9 years agoApplicationCache manifest should work with any MIME type.
michaeln@google.com [Thu, 17 Nov 2011 01:46:17 +0000 (01:46 +0000)]
ApplicationCache manifest should work with any MIME type.
https://bugs.webkit.org/show_bug.cgi?id=72082

Source/WebCore:

Reviewed by Alexey Proskuryakov.

* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Remove the test for a particular type.

LayoutTests:

Update the wrong-content-type test to expect the appcache to succeed given a text/plain contentType.

Reviewed by Alexey Proskuryakov.

* http/tests/appcache/wrong-content-type-expected.txt:
* http/tests/appcache/wrong-content-type.html:
* platform/chromium/test_expectations.txt: Temporarily skip this test in chromium.
* platform/chromium-cg-mac/http/tests/appcache/wrong-content-type-expected.txt: Removed.
* platform/chromium-mac/http/tests/appcache/wrong-content-type-expected.txt: Removed.
* platform/chromium-win/http/tests/appcache/wrong-content-type-expected.txt: Removed.

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

9 years agoSome CachedCall cleanup, in preparation for reversing argument order.
ggaren@apple.com [Thu, 17 Nov 2011 01:43:48 +0000 (01:43 +0000)]
Some CachedCall cleanup, in preparation for reversing argument order.

Reviewed by Gavin Barraclough.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitWeakReferences): A build fix for the interpreter,
so I can test it.

* interpreter/CachedCall.h:
(JSC::CachedCall::CachedCall): Renamed argCount to argumentCount because
we are not that desperate for character saving.

(JSC::CachedCall::setThis):
(JSC::CachedCall::setArgument): Adopted new 0-based argument indexing for
CallFrameClosure.

* interpreter/CallFrameClosure.h:
(JSC::CallFrameClosure::setThis):
(JSC::CallFrameClosure::setArgument):
(JSC::CallFrameClosure::resetCallFrame): Provide 0-based argument indexing,
with an explicit setter for 'this', since that's how most clients think.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::prepareForRepeatCall):
* interpreter/Interpreter.h: Change argCount to argumentCountIncludingThis,
for clarity.

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

9 years agoSkip failing ref tests on gtk and mac.
tony@chromium.org [Thu, 17 Nov 2011 01:43:14 +0000 (01:43 +0000)]
Skip failing ref tests on gtk and mac.

* platform/gtk/Skipped:
* platform/mac/Skipped:

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

9 years agoDe-virtualize ScriptExecutable::unlinkCalls
mhahnenberg@apple.com [Thu, 17 Nov 2011 01:33:42 +0000 (01:33 +0000)]
De-virtualize ScriptExecutable::unlinkCalls
https://bugs.webkit.org/show_bug.cgi?id=72546

Reviewed by Geoffrey Garen.

* runtime/Executable.cpp:
(JSC::FunctionExecutable::~FunctionExecutable): Added an empty explicit virtual destructor to prevent a very odd compilation error
due to the fact that the compiler was trying to generate the implicit inline destructor in every translation unit, some of which
didn't have complete type information on the things that needed to be destructed in the implicit destructor.
* runtime/Executable.h:
(JSC::EvalExecutable::createStructure): Used new type value from JSType
(JSC::ProgramExecutable::createStructure): Ditto
(JSC::FunctionExecutable::createStructure): Ditto
(JSC::ScriptExecutable::unlinkCalls): Condition upon the type value, cast and call the corresponding unlinkCalls implementation.
* runtime/JSType.h: Added new values for EvalExecutable, ProgramExecutable, and FunctionExecutable.  Remove explicit numbers, since
that just adds noise to patches and they currently have no significance.

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

9 years ago[Chromium] Avoid color mask operations for root layers
commit-queue@webkit.org [Thu, 17 Nov 2011 01:29:50 +0000 (01:29 +0000)]
[Chromium] Avoid color mask operations for root layers
https://bugs.webkit.org/show_bug.cgi?id=72452

Instead of relying on the combination of clearing the surface and initializing
the alpha channel to 1.0 followed by disabling alpha in the color mask when
rendering the root layer tiles, add shaders to support writing out opaque layers
(alpha channel values written as 1.0).

Patch by Daniel Sievers <sievers@chromium.org> on 2011-11-16
Reviewed by James Robinson.

No functional change made that requires new tests.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawLayersInternal):
(WebCore::LayerRendererChromium::initializeSharedObjects):
(WebCore::LayerRendererChromium::tilerProgramOpaque):
(WebCore::LayerRendererChromium::tilerProgramOpaqueAA):
(WebCore::LayerRendererChromium::tilerProgramSwizzleOpaque):
(WebCore::LayerRendererChromium::tilerProgramSwizzleOpaqueAA):
(WebCore::LayerRendererChromium::cleanupSharedObjects):
* platform/graphics/chromium/LayerRendererChromium.h:
* platform/graphics/chromium/ShaderChromium.cpp:
(WebCore::FragmentTexOpaqueBinding::FragmentTexOpaqueBinding):
(WebCore::FragmentTexOpaqueBinding::init):
(WebCore::FragmentShaderRGBATexOpaque::getShaderString):
(WebCore::FragmentShaderRGBATexSwizzleOpaque::getShaderString):
(WebCore::FragmentTexClampOpaqueAABinding::FragmentTexClampOpaqueAABinding):
(WebCore::FragmentTexClampOpaqueAABinding::init):
(WebCore::FragmentShaderRGBATexClampOpaqueAA::getShaderString):
(WebCore::FragmentShaderRGBATexClampSwizzleOpaqueAA::getShaderString):
* platform/graphics/chromium/ShaderChromium.h:
(WebCore::FragmentTexOpaqueBinding::alphaLocation):
(WebCore::FragmentTexOpaqueBinding::samplerLocation):
(WebCore::FragmentTexClampOpaqueAABinding::alphaLocation):
(WebCore::FragmentTexClampOpaqueAABinding::samplerLocation):
(WebCore::FragmentTexClampOpaqueAABinding::fragmentTexTransformLocation):
(WebCore::FragmentTexClampOpaqueAABinding::edgeLocation):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(WebCore::CCTiledLayerImpl::draw):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:

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

9 years agoImplement CSS3 Images cross-fade() image function
timothy_horton@apple.com [Thu, 17 Nov 2011 01:28:25 +0000 (01:28 +0000)]
Implement CSS3 Images cross-fade() image function
https://bugs.webkit.org/show_bug.cgi?id=52162
<rdar://problem/10209254>

Reviewed by Simon Fraser.

Render -webkit-cross-fade. Only cross-fades entirely composed of images will render for now,
cross-fades involving generated images are not yet implemented.

Reorganize GeneratedImage to be the base class for GeneratorGeneratedImage and CrossfadeGeneratedImage.

Add a pending state to CSSImageGeneratorValue, which is used to enable the pending-images loading
mechanism for -webkit-cross-fade's sub-images. Rework the logic in CSSStyleSelector to support pending
generated images.

Support parsing fractional values for the cross-fade amount (for example, 0.5 = 50%). Clamp cross-fade
amount to 0-1 range.

Tests: css3/images/cross-fade-invalidation.html
       css3/images/cross-fade-simple.html
       css3/images/cross-fade-sizing.html
       css3/images/cross-fade-tiled.html

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSCanvasValue.h:
(WebCore::CSSCanvasValue::isPending):
(WebCore::CSSCanvasValue::loadSubimages):
* css/CSSCrossfadeValue.cpp:
(WebCore::CSSCrossfadeValue::isPending):
(WebCore::CSSCrossfadeValue::loadSubimages):
(WebCore::subimageIsPending):
(WebCore::loadSubimage):
(WebCore::cachedImageForCSSValue):
(WebCore::CSSCrossfadeValue::image):
(WebCore::CSSCrossfadeValue::crossfadeChanged):
* css/CSSCrossfadeValue.h:
(WebCore::CSSCrossfadeValue::create):
(WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
(WebCore::CSSCrossfadeValue::fixedSize):
(WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
(WebCore::CSSCrossfadeValue::CrossfadeObserverProxy::CrossfadeObserverProxy):
* css/CSSGradientValue.cpp:
(WebCore::CSSGradientValue::image):
* css/CSSGradientValue.h:
(WebCore::CSSGradientValue::isPending):
(WebCore::CSSGradientValue::loadSubimages):
* css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::generatedOrPendingImage):
(WebCore::CSSImageGeneratorValue::generatedImage):
(WebCore::CSSImageGeneratorValue::isPending):
(WebCore::CSSImageGeneratorValue::loadSubimages):
* css/CSSImageGeneratorValue.h:
* css/CSSParser.cpp:
(WebCore::CSSParser::parseCrossfade):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleImage):
(WebCore::CSSStyleSelector::generatedOrPendingFromValue):
(WebCore::CSSStyleSelector::loadPendingImage):
(WebCore::CSSStyleSelector::loadPendingImages):
* css/CSSStyleSelector.h:
* platform/graphics/BitmapImage.h:
* platform/graphics/CrossfadeGeneratedImage.cpp: Added.
(WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
(WebCore::CrossfadeGeneratedImage::~CrossfadeGeneratedImage):
(WebCore::CrossfadeGeneratedImage::drawCrossfade):
(WebCore::CrossfadeGeneratedImage::draw):
(WebCore::CrossfadeGeneratedImage::drawPattern):
(WebCore::CrossfadeGeneratedImage::imageChanged):
* platform/graphics/CrossfadeGeneratedImage.h: Added.
(WebCore::CrossfadeGeneratedImage::create):
(WebCore::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
(WebCore::CrossfadeSubimageObserverProxy::setReady):
* platform/graphics/GeneratedImage.h:
(WebCore::GeneratedImage::GeneratedImage):
* platform/graphics/GeneratorGeneratedImage.cpp: Renamed from Source/WebCore/platform/graphics/GeneratedImage.cpp.
(WebCore::GeneratorGeneratedImage::draw):
(WebCore::GeneratorGeneratedImage::drawPattern):
(WebCore::GeneratedImage::computeIntrinsicDimensions):
* platform/graphics/GeneratorGeneratedImage.h: Copied from Source/WebCore/platform/graphics/GeneratedImage.h.
(WebCore::GeneratorGeneratedImage::create):
(WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
(WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
* platform/graphics/Image.h:
* platform/graphics/ImageBuffer.h:
* rendering/style/StylePendingImage.h:
(WebCore::StylePendingImage::create):
(WebCore::StylePendingImage::data):
(WebCore::StylePendingImage::cssImageValue):
(WebCore::StylePendingImage::cssImageGeneratorValue):
(WebCore::StylePendingImage::StylePendingImage):

Add tests of -webkit-cross-fade, ensuring that simple cross-fades between
two images work correctly.

Adjust fast/css/getComputedStyle/computed-style-cross-fade.html to test
fractional and out-of-range cross-fade percentage values.

* css3/images/cross-fade-invalidation.html: Added.
* css3/images/cross-fade-simple.html: Added.
* css3/images/cross-fade-sizing.html: Added.
* css3/images/cross-fade-tiled.html: Added.
* css3/images/resources/blue-10.png: Added.
* css3/images/resources/blue-100.png: Added.
* css3/images/resources/green-10.png: Added.
* css3/images/resources/green-100.png: Added.
* css3/images/resources/green-circle.svg: Added.
* css3/images/resources/red-10.png: Added.
* css3/images/resources/red-100.png: Added.
* fast/css/getComputedStyle/computed-style-cross-fade-expected.txt:
* fast/css/getComputedStyle/computed-style-cross-fade.html:
* platform/mac/css3/images/cross-fade-invalidation-expected.png: Added.
* platform/mac/css3/images/cross-fade-invalidation-expected.txt: Added.
* platform/mac/css3/images/cross-fade-simple-expected.png: Added.
* platform/mac/css3/images/cross-fade-simple-expected.txt: Added.
* platform/mac/css3/images/cross-fade-sizing-expected.png: Added.
* platform/mac/css3/images/cross-fade-sizing-expected.txt: Added.
* platform/mac/css3/images/cross-fade-tiled-expected.png: Added.
* platform/mac/css3/images/cross-fade-tiled-expected.txt: Added.

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

9 years agoSource/WebCore: WebCore part of <rdar://problem/10262242> Add API for paginated display
mitz@apple.com [Thu, 17 Nov 2011 01:19:46 +0000 (01:19 +0000)]
Source/WebCore: WebCore part of <rdar://problem/10262242> Add API for paginated display
https://bugs.webkit.org/show_bug.cgi?id=72537

Reviewed by Anders Carlsson.

* WebCore.exp.in: Exported Page::pageCount().
* page/Page.cpp:
(WebCore::Page::pageCount): Added this getter.
* page/Page.h:

Source/WebKit/mac: WebKit/mac part of <rdar://problem/10262242> Add API for paginated display
https://bugs.webkit.org/show_bug.cgi?id=72537

Reviewed by Anders Carlsson.

* WebView/WebView.mm:
(-[WebView _setPaginationMode:]): Added this accessor.
(-[WebView _paginationMode]): Ditto.
(-[WebView _setGapBetweenPages:]): Ditto.
(-[WebView _gapBetweenPages]): Ditto.
(-[WebView _pageCount]): Ditto.
* WebView/WebViewPrivate.h: Defined WebPaginationMode enum and values.

Source/WebKit2: WebKit2 part of <rdar://problem/10262242> Add API for paginated display
https://bugs.webkit.org/show_bug.cgi?id=72537

Reviewed by Anders Carlsson.

* Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode): Encode the pagination mode and gap between pages.
(WebKit::WebPageCreationParameters::decode): Decode the pagination mode and gap between pages.
* Shared/WebPageCreationParameters.h: Added paginationMode and gapBetweenPages members.
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPaginationMode): Added this API wrapper.
(WKPageGetPaginationMode): Ditto.
(WKPageSetGapBetweenPages): Ditto.
(WKPageGetGapBetweenPages): Ditto.
(WKPageGetPageCount): Ditto.
* UIProcess/API/C/WKPagePrivate.h: Added an enum and a definition of WKPaginationMode and
accessors.
* UIProcess/API/mac/WKBrowsingContextController.mm:
(-[WKBrowsingContextController setPaginationMode:]): Added this API wrapper.
(-[WKBrowsingContextController paginationMode]): Ditto.
(-[WKBrowsingContextController setGapBetweenPages:]): Ditto.
(-[WKBrowsingContextController gapBetweenPages]): Ditto.
(-[WKBrowsingContextController pageCount]): Ditto.
* UIProcess/API/mac/WKBrowsingContextControllerPrivate.h: Added. Includes an enum and a definition
of WKBrowsingContextPaginationMode and property declarations.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy): Added intialization of m_paginationMode, m_gapBetweenPages,
and m_pageCount.
(WebKit::WebPageProxy::setPaginationMode): Added this accessor, which caches the value and sends
a message to the WebPage.
(WebKit::WebPageProxy::setGapBetweenPages): Ditto.
(WebKit::WebPageProxy::creationParameters): Set the pagination mode and gap between pages in the
creation parameters.
(WebKit::WebPageProxy::didChangePageCount): Added. Updates the cached page count.
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::paginationMode): Added this getter that returns a cached value.
(WebKit::WebPageProxy::gapBetweenPages): Ditto.
(WebKit::WebPageProxy::pageCount): Ditto.
* UIProcess/WebPageProxy.messages.in: Added DidChangedPageCount, sent when the page count changes
after layout.
* WebKit2.xcodeproj/project.pbxproj: Added WKBrowsingContextControllerPrivate.h.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDidLayout): Added a call to WebPage::mainFrameDidLayout(),
allowing the page to respond to changes in the column count.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage): Added initializer for m_cachedPageCount.
(WebKit::WebPage::setPaginationMode): Added.
(WebKit::WebPage::setGapBetweenPages): Added.
(WebKit::WebPage::mainFrameDidLayout): Added. Sends a DidChangePageCount message to the UI process
if the page count has changed.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in: Added SetPaginationMode and SetGapBetweenPages messages.

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

9 years ago[chromium] Enable video and canvas 2d compositing triggers by default for layout...
commit-queue@webkit.org [Thu, 17 Nov 2011 01:14:06 +0000 (01:14 +0000)]
[chromium] Enable video and canvas 2d compositing triggers by default for layout tests in the compositing directory
https://bugs.webkit.org/show_bug.cgi?id=72562

Patch by James Robinson <jamesr@chromium.org> on 2011-11-16
Reviewed by Dirk Pranke.

Tools:

* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::runFileTest):

LayoutTests:

* platform/chromium/test_expectations.txt:

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

9 years ago[chromium] Track property changes for render surfaces.
commit-queue@webkit.org [Thu, 17 Nov 2011 00:59:48 +0000 (00:59 +0000)]
[chromium] Track property changes for render surfaces.
https://bugs.webkit.org/show_bug.cgi?id=72521

Patch by Shawn Singh <shawnsingh@chromium.org> on 2011-11-16
Reviewed by James Robinson.

Source/WebCore:

Created CCRenderSurfaceTest for testing.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::drawLayersOntoRenderSurfaces):
* platform/graphics/chromium/cc/CCLayerImpl.cpp:
(WebCore::CCLayerImpl::resetPropertyChangedFlagForSubtree):
* platform/graphics/chromium/cc/CCLayerImpl.h:
* platform/graphics/chromium/cc/CCRenderSurface.cpp:
(WebCore::CCRenderSurface::CCRenderSurface):
(WebCore::CCRenderSurface::setClipRect):
(WebCore::CCRenderSurface::setContentRect):
(WebCore::CCRenderSurface::surfacePropertyChanged):
* platform/graphics/chromium/cc/CCRenderSurface.h:
(WebCore::CCRenderSurface::resetPropertyChangedFlag):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCLayerImplTest.cpp:
(WebCore::TEST):
* tests/CCRenderSurfaceTest.cpp: Added.
(WebCore::TEST):

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

9 years agoSeaming on border corners with mixed colour alpha borders
commit-queue@webkit.org [Thu, 17 Nov 2011 00:57:30 +0000 (00:57 +0000)]
Seaming on border corners with mixed colour alpha borders
https://bugs.webkit.org/show_bug.cgi?id=70471

Patch by Ben Wells <benwells@chromium.org> on 2011-11-16
Reviewed by Simon Fraser.

Source/WebCore:

Seaming is fixed by antialiasing mitred corners for edges that have alpha and are joining
a side that is of a different color.

Test: fast/borders/border-mixed-alpha.html

* rendering/RenderBoxModelObject.cpp:
(WebCore::colorNeedsAntiAliasAtCorner):
(WebCore::RenderBoxModelObject::paintOneBorderSide):

LayoutTests:

* fast/borders/border-mixed-alpha.html: Added.
* platform/chromium/test_expectations.txt:
* platform/mac/fast/borders/border-mixed-alpha-expected.png: Added.
* platform/mac/fast/borders/border-mixed-alpha-expected.txt: Added.

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

9 years agoJSC::CodeBlock should know which references generated by the DFG are weak
fpizlo@apple.com [Thu, 17 Nov 2011 00:49:50 +0000 (00:49 +0000)]
JSC::CodeBlock should know which references generated by the DFG are weak
https://bugs.webkit.org/show_bug.cgi?id=72563

Reviewed by Geoff Garen.

CodeBlock::m_dfgData now tracks weak references and weak reference transitions
(like ephemerons) generated by the DFG. The DFG makes sure to notify the
CodeBlock of all uses of weak references and weak reference transitions.
CodeBlock currently marks them strongly, since the weak marking logic is not
in place, yet.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::visitAggregate):
(JSC::CodeBlock::stronglyVisitWeakReferences):
* bytecode/CodeBlock.h:
(JSC::CodeBlock::appendWeakReference):
(JSC::CodeBlock::shrinkWeakReferencesToFit):
(JSC::CodeBlock::appendWeakReferenceTransition):
(JSC::CodeBlock::shrinkWeakReferenceTransitionsToFit):
(JSC::CodeBlock::WeakReferenceTransition::WeakReferenceTransition):
* bytecode/CodeOrigin.h:
(JSC::CodeOrigin::codeOriginOwner):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::link):
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::addWeakReference):
(JSC::DFG::JITCompiler::addWeakReferenceTransition):
(JSC::DFG::JITCompiler::branchWeakPtr):
* dfg/DFGSpeculativeJIT.h:
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::fillJSValue):
(JSC::DFG::SpeculativeJIT::compile):

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

9 years agoLayoutTests for Debug Builds Crashes in JavaScriptCore/yarr/YarrInterpreter.cpp(185)
msaboff@apple.com [Thu, 17 Nov 2011 00:25:29 +0000 (00:25 +0000)]
LayoutTests for Debug Builds Crashes in JavaScriptCore/yarr/YarrInterpreter.cpp(185)
https://bugs.webkit.org/show_bug.cgi?id=72561

Removed #if USE(JSC) and therefore the ASSERT_NOT_REACHED().
Simplified the code in the process.

Reviewed by James Robinson.

* yarr/YarrInterpreter.cpp:
(JSC::Yarr::Interpreter::CharAccess::CharAccess):
(JSC::Yarr::Interpreter::CharAccess::~CharAccess):

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

9 years agoInterpreter build fixes.
ggaren@apple.com [Thu, 17 Nov 2011 00:21:26 +0000 (00:21 +0000)]
Interpreter build fixes.

* bytecode/CodeBlock.h:
* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):

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

9 years ago[chromium] Clean up some animations/ expectations.
pkasting@chromium.org [Thu, 17 Nov 2011 00:20:10 +0000 (00:20 +0000)]
[chromium] Clean up some animations/ expectations.
https://bugs.webkit.org/show_bug.cgi?id=66953

Rebaselines some tests that clearly just needed that, tries to condense
a number of other flaky tests onto one bug, updates the set of bots that
are actually failing for some expectations.

Unreviewed, gardening.

* platform/chromium-cg-mac/animations/missing-values-first-keyframe-expected.png: Removed.
* platform/chromium-cg-mac/animations/missing-values-last-keyframe-expected.png: Removed.
* platform/chromium-cg-mac/animations/opacity-transform-animation-expected.png: Removed.
* platform/chromium-linux/animations/missing-values-first-keyframe-expected.png: Added.
* platform/chromium-linux/animations/missing-values-last-keyframe-expected.png: Added.
* platform/chromium-linux/animations/opacity-transform-animation-expected.png: Added.
* platform/chromium-mac-leopard/animations/missing-values-first-keyframe-expected.png: Added.
* platform/chromium-mac-leopard/animations/missing-values-last-keyframe-expected.png: Added.
* platform/chromium-mac-leopard/animations/opacity-transform-animation-expected.png: Added.
* platform/chromium-mac-snowleopard/animations/missing-values-first-keyframe-expected.png: Added.
* platform/chromium-mac-snowleopard/animations/missing-values-last-keyframe-expected.png: Added.
* platform/chromium-mac-snowleopard/animations/opacity-transform-animation-expected.png: Added.
* platform/chromium-win/animations/missing-values-first-keyframe-expected.png:
* platform/chromium-win/animations/missing-values-last-keyframe-expected.png:
* platform/chromium-win/animations/opacity-transform-animation-expected.png:
* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed. Build fix for !ENABLE(JIT) after r100363.
paroga@webkit.org [Thu, 17 Nov 2011 00:04:09 +0000 (00:04 +0000)]
Unreviewed. Build fix for !ENABLE(JIT) after r100363.

* bytecode/CodeBlock.h:

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

9 years agoJS wrappers of DOM objects should have no-op constructors
weinig@apple.com [Wed, 16 Nov 2011 23:46:54 +0000 (23:46 +0000)]
JS wrappers of DOM objects should have no-op constructors
https://bugs.webkit.org/show_bug.cgi?id=72556

Reviewed by Geoffrey Garen.

Stop using a RefPtr to hold DOM objects contained by JavaScript
wrappers and instead use a raw pointer. We were already releasing
the underlying object before the destructor ran (via the finalizer)
so the default behavior of destroying the RefPtr is always unnecessary
busy work.

* bindings/js/JSCSSValueCustom.cpp:
(WebCore::JSCSSValueOwner::finalize):
* bindings/js/JSNodeCustom.cpp:
(WebCore::JSNodeOwner::finalize):
(WebCore::JSNode::visitChildren):
Call releaseImpl() instead of clearImpl().

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
Stop storing m_impl in a RefPtr and instead use a raw pointer. Switch
clearImpl() to releaseImpl(), which explicitly derefs the pointer and
clear it.

(GenerateImplementation):
Use leakPtr() to explicitly adopt the PassRefPtr into the raw pointer.
Change default finalize to call releaseImpl() instead of clearImpl().

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

9 years agoRolled back in r100375 and r100385 with 32-bit build fixed.
ggaren@apple.com [Wed, 16 Nov 2011 23:37:15 +0000 (23:37 +0000)]
Rolled back in r100375 and r100385 with 32-bit build fixed.

* dfg/DFGOperations.cpp:
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/ArgList.cpp:
(JSC::ArgList::getSlice):
* runtime/ArgList.h:
* runtime/JSArray.cpp:
(JSC::JSArray::finishCreation):
* runtime/JSArray.h:
(JSC::JSArray::create):
* runtime/JSGlobalObject.h:
(JSC::constructArray):

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

9 years agoDFG global variable CSE mishandles the cross-global-object inlining corner case
fpizlo@apple.com [Wed, 16 Nov 2011 23:21:39 +0000 (23:21 +0000)]
DFG global variable CSE mishandles the cross-global-object inlining corner case
https://bugs.webkit.org/show_bug.cgi?id=72542

Source/JavaScriptCore:

Reviewed by Geoff Garen.

Moved code to get the global object for a code origin into CodeBlock, so it is
more broadly accessible. Fixed CSE to compare both the variable number, and the
global object, before deciding to perform elimination.

* bytecode/CodeBlock.h:
(JSC::CodeBlock::globalObjectFor):
* dfg/DFGAssemblyHelpers.h:
(JSC::DFG::AssemblyHelpers::globalObjectFor):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::globalVarLoadElimination):
(JSC::DFG::Propagator::performNodeCSE):

LayoutTests:

Reviewed by Geoff Garen.

* fast/js/cross-global-object-inline-global-var-expected.txt: Added.
* fast/js/cross-global-object-inline-global-var.html: Added.
* fast/js/script-tests/cross-global-object-inline-global-var.js: Added.
(foo):
(done):
(doit):

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

9 years agoRevert r100509; change was committed twice (first time as r100491).
dpranke@chromium.org [Wed, 16 Nov 2011 23:02:01 +0000 (23:02 +0000)]
Revert r100509; change was committed twice (first time as r100491).
Unreviewed, build fix.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:

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

9 years ago[chromium] Update text baselines for mq-transform-0[23] tests
jamesr@google.com [Wed, 16 Nov 2011 22:57:29 +0000 (22:57 +0000)]
[chromium] Update text baselines for mq-transform-0[23] tests

* platform/chromium-mac-snowleopard/fast/media/mq-transform-02-expected.txt:
* platform/chromium-mac-snowleopard/fast/media/mq-transform-03-expected.txt:

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

9 years ago[NRWT] speculative fix for multiple subprocess test on cygwin
tony@chromium.org [Wed, 16 Nov 2011 22:53:24 +0000 (22:53 +0000)]
[NRWT] speculative fix for multiple subprocess test on cygwin
https://bugs.webkit.org/show_bug.cgi?id=72518

Reviewed by Adam Barth.

* Scripts/webkitpy/layout_tests/port/chromium.py: cygwin probably
    tries to emulate posix fd behavior.
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:

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

9 years agoEnable 8 Bit Strings in JavaScriptCore
msaboff@apple.com [Wed, 16 Nov 2011 22:46:31 +0000 (22:46 +0000)]
Enable 8 Bit Strings in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=71337

Source/JavaScriptCore:

This patch turns on 8 bit strings in StringImpl and enables
their use in JavaScriptCore. Some of the changes are to
turn on code that had been staged (Lexer.cpp, Identifier.cpp,
SmallStrings.cpp and some of StringImpl.{h,cpp}).
Other changes are minor fixes to make 8 bit strings work
(UString.h, StringImpl::getData16SlowCase()).
Changed StringBuffer to be a templated class based on character
type.  This change rippled into WebCore code as well.

Reviewed by Geoffrey Garen.

* JavaScriptCore.exp:
* parser/Lexer.cpp:
(JSC::::append8): Changed to use 8 bit buffers.
(JSC::::parseIdentifier): Changed to use 8 bit buffers.
(JSC::::parseString): Changed to use 8 bit buffers.
* runtime/Identifier.cpp:
(JSC::IdentifierCStringTranslator::translate): 8 bit version keeps data 8 bit
(JSC::Identifier::toUInt32FromCharacters): Templated helper.
(JSC::Identifier::toUInt32): Added 8 bit optimized path.
* runtime/SmallStrings.cpp:
(JSC::SmallStringsStorage::SmallStringsStorage): Changed to be 8 bit strings
* runtime/UString.h:
(JSC::UString::characters): Now calls StringImpl::characters()
* wtf/Forward.h:
* wtf/text/StringBuffer.h: Made StringBuffer a template base on character type.
(WTF::StringBuffer::StringBuffer):
(WTF::StringBuffer::characters):
(WTF::StringBuffer::release):
* wtf/text/StringImpl.cpp:
(WTF::StringImpl::create):
(WTF::StringImpl::getData16SlowCase): Fixed null terminated case.
(WTF::StringImpl::removeCharacters): Added 8 bit path.
(WTF::StringImpl::simplifyMatchedCharactersToSpace):
(WTF::StringImpl::simplifyWhiteSpace):
(WTF::equal): Removed bug from code copied from null terminated version.
(WTF::StringImpl::adopt): Added 8 bit path.
(WTF::StringImpl::createWithTerminatingNullCharacter): Fixed 8 bi flag propagation.
* wtf/text/StringImpl.h:
(WTF::StringImpl::StringImpl): Added new 8 bit constructor.
(WTF::StringImpl::characters8): Removed ASSERT_NOT_REACHED().
(WTF::getCharacters<LChar>): Added templated accessor for 8 bit strings.
(WTF::getCharacters<UChar>): Added templated accessor for 16 bit strings.
* wtf/text/WTFString.h:
(WTF::String::adopt): Changed to use StringBuffer template.

Source/WebCore:

This patch turns on 8 bit strings in StringImpl and enables
their use in JavaScriptCore. Some of the changes are to
turn on code that had been staged (Lexer.cpp, Identifier.cpp,
SmallStrings.cpp and some of StringImpl.{h,cpp}).
Other changes are minor fixes to make 8 bit strings work
(UString.h, StringImpl::getData16SlowCase()).
Changed StringBuffer to be a templated class based on character
type.  This change riplled into WebCore code as well.

Reviewed by Geoffrey Garen.

No new tests - Changes in response to refactoring StringBuffer to
be a template on character type.

* css/CSSParser.cpp:
(WebCore::quoteCSSString):
* css/CSSPrimitiveValue.cpp:
(WebCore::formatNumber):
* dom/Document.cpp:
(WebCore::canonicalizedTitle):
* platform/Length.cpp:
(WebCore::newCoordsArray):
* platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::prepare):
* platform/text/TextCodecUTF16.cpp:
(WebCore::TextCodecUTF16::decode):
* platform/text/TextCodecUTF8.cpp:
(WebCore::TextCodecUTF8::decode):
* rendering/RenderText.cpp:
(WebCore::makeCapitalized):
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::writeToStringBuilder):

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

9 years agoRun a dummy test in the gpu configurations if there's nothing to do.
dpranke@chromium.org [Wed, 16 Nov 2011 22:44:14 +0000 (22:44 +0000)]
Run a dummy test in the gpu configurations if there's nothing to do.
https://bugs.webkit.org/show_bug.cgi?id=72498

Reviewed by James Robinson.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:

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

9 years ago[chromium] Improvements for page scale delta during commit
commit-queue@webkit.org [Wed, 16 Nov 2011 22:37:55 +0000 (22:37 +0000)]
[chromium] Improvements for page scale delta during commit
https://bugs.webkit.org/show_bug.cgi?id=72471

Patch by Alexandre Elias <aelias@google.com> on 2011-11-16
Reviewed by James Robinson.

Page scale now follows the same commit flow as scroll position:
the delta is folded into m_pageScale at BFAC time, and a "sent" value
is preserved for temporary use until the commit finishes.

I also merged setPageScaleFactor and setPageScaleFactorLimits into one
function on the impl side.  The reason is that setPageFactor must
be applied after the limits are updated, but on the other hand setting
the limits first may cause an unnecessary clamp of the scale delta.
Merging the methods avoids this bind.

No new tests. (planning to add later: https://bugs.webkit.org/show_bug.cgi?id=71529)

Source/WebCore:

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::applyScrollAndScale):
* platform/graphics/chromium/cc/CCLayerTreeHostCommon.h:
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::setPageScaleFactorAndLimits):
(WebCore::CCLayerTreeHostImpl::adjustScrollsForPageScaleChange):
(WebCore::CCLayerTreeHostImpl::setScaleDelta):
(WebCore::CCLayerTreeHostImpl::applyScaleDeltaToScrollLayer):
(WebCore::CCLayerTreeHostImpl::scrollRootLayer):
(WebCore::CCLayerTreeHostImpl::processScrollDeltas):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

Source/WebKit/chromium:

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

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

9 years ago[chromium] Attempt to rebaseline a test.
pkasting@chromium.org [Wed, 16 Nov 2011 22:34:41 +0000 (22:34 +0000)]
[chromium] Attempt to rebaseline a test.
https://bugs.webkit.org/show_bug.cgi?id=54322

Unreviewed, gardening.

* platform/chromium-cg-mac-leopard/transforms/no_transform_hit_testing-expected.png: Added.
* platform/chromium-mac-leopard/transforms/no_transform_hit_testing-expected.png:
* platform/chromium/test_expectations.txt:

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

9 years agoPlatform specific results for svg/foreignObject/{clip,filter,mask}.html
commit-queue@webkit.org [Wed, 16 Nov 2011 22:24:49 +0000 (22:24 +0000)]
Platform specific results for svg/foreignObject/{clip,filter,mask}.html
https://bugs.webkit.org/show_bug.cgi?id=72532

Patch by Florin Malita <fmalita@google.com> on 2011-11-16
Reviewed by Steve Block.

* platform/chromium-cg-mac-snowleopard/svg/foreignObject/clip-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/svg/foreignObject/filter-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/svg/foreignObject/mask-expected.png: Added.

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

9 years agocontributors_by_fuzzy_match is super slow
rniwa@webkit.org [Wed, 16 Nov 2011 22:24:00 +0000 (22:24 +0000)]
contributors_by_fuzzy_match is super slow
https://bugs.webkit.org/show_bug.cgi?id=72540

Reviewed by Eric Seidel.

Make contributors_by_name do case insensitive search using a dictionary.

Also call contributors_by_name first in contributors_by_fuzzy_match now that it's fast
because that's the most common case.

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

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

9 years agoIndexedDB: Reduce nested key depth threshold, re-enable flaky test
commit-queue@webkit.org [Wed, 16 Nov 2011 22:21:50 +0000 (22:21 +0000)]
IndexedDB: Reduce nested key depth threshold, re-enable flaky test
https://bugs.webkit.org/show_bug.cgi?id=72529

Patch by Joshua Bell <jsbell@chromium.org> on 2011-11-16
Reviewed by Adam Barth.

Source/WebCore:

Drop maximum array key depth from 20k to 2k.

* bindings/v8/IDBBindingUtilities.cpp:

LayoutTests:

Re-enable flaky test, and drop the maximum depth tested to avoid
crashes/timeouts on test boxes when prepping the test.

* platform/chromium/test_expectations.txt:
* storage/indexeddb/key-type-array-expected.txt:
* storage/indexeddb/key-type-array.html:

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

9 years agoSource/WebCore: Fix incorrect multipart handling in r100311.
japhet@chromium.org [Wed, 16 Nov 2011 22:10:53 +0000 (22:10 +0000)]
Source/WebCore: Fix incorrect multipart handling in r100311.
SubresourceLoader::didReceiveData() is getting called
twice, which has unintended side effects.
https://bugs.webkit.org/show_bug.cgi?id=72436

Reviewed by Adam Barth.

http/tests/multipart/invalid-image-data.html should stop
asserting after this.

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didReceiveData):
(WebCore::SubresourceLoader::sendDataToResource):
* loader/SubresourceLoader.h:

LayoutTests: Remove CRASH expectation for
http/tests/multipart/invalid-image-data.html.
https://bugs.webkit.org/show_bug.cgi?id=72436

Reviewed by Adam Barth.

* platform/chromium/test_expectations.txt:

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

9 years agoClear SVG filter client when its node is detached
jschuh@chromium.org [Wed, 16 Nov 2011 22:07:23 +0000 (22:07 +0000)]
Clear SVG filter client when its node is detached
https://bugs.webkit.org/show_bug.cgi?id=71741

Reviewed by Eric Seidel.

Source/WebCore:

Test: svg/filters/reparent-animated-filter-target.html

* rendering/svg/SVGResourcesCache.cpp:
(WebCore::SVGResourcesCache::clientDestroyed):

LayoutTests:

* svg/filters/reparent-animated-filter-target-expected.txt: Added.
* svg/filters/reparent-animated-filter-target.html: Added.

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

9 years ago[chromium] Mark some CoreAnimation plugin model tests as WONTFIX on Win/
pkasting@chromium.org [Wed, 16 Nov 2011 22:02:37 +0000 (22:02 +0000)]
[chromium] Mark some CoreAnimation plugin model tests as WONTFIX on Win/
Linux, and as expected to fail for now on Mac; remove current expected
Mac baselines.
https://bugs.webkit.org/show_bug.cgi?id=47925

Unreviewed, gardening.

* platform/chromium-mac/compositing/plugins/composited-plugin-expected.txt: Removed.
* platform/chromium-mac/compositing/plugins/small-to-large-composited-plugin-expected.txt: Removed.
* platform/chromium-win/compositing/plugins/1x1-composited-plugin-expected.txt: Removed.
* platform/chromium-win/compositing/plugins/large-to-small-composited-plugin-expected.txt: Removed.
* platform/chromium-win/compositing/plugins/small-to-large-composited-plugin-expected.txt: Removed.
* platform/chromium/test_expectations.txt:

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

9 years agoPage/layer flashes after GPU-accelerated CSS transition
commit-queue@webkit.org [Wed, 16 Nov 2011 21:54:54 +0000 (21:54 +0000)]
Page/layer flashes after GPU-accelerated CSS transition
https://bugs.webkit.org/show_bug.cgi?id=72343

LayerRendererChromium was resizing the window to 1x1 at initialization.
In some cases, there is no drawLayers before switching back to
software rendering. This left the window resized to 1x1 and the
following software paints would therefore not be visible. This change
moves the reshape call into drawLayers so that it will only be called
if rendering will occur.

Patch by John Bates <jbates@google.com> on 2011-11-16
Reviewed by James Robinson.

New test: CCLayerTreeHostImplTest.reshapeNotCalledUntilDraw.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::viewportChanged):
(WebCore::LayerRendererChromium::doViewportChanged):
(WebCore::LayerRendererChromium::drawLayersInternal):
* platform/graphics/chromium/LayerRendererChromium.h:

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

9 years agocheck-webkit-style should recognize functions even if they have OVERRIDE after them.
levin@chromium.org [Wed, 16 Nov 2011 21:51:15 +0000 (21:51 +0000)]
check-webkit-style should recognize functions even if they have OVERRIDE after them.
https://bugs.webkit.org/show_bug.cgi?id=72515

Reviewed by Adam Barth.

* Scripts/webkitpy/style/checkers/cpp.py:
* Scripts/webkitpy/style/checkers/cpp_unittest.py:

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

9 years ago[chromium] Update chromium expectations for fast/media/mq-transform-0[23].html to...
jamesr@google.com [Wed, 16 Nov 2011 21:22:15 +0000 (21:22 +0000)]
[chromium] Update chromium expectations for fast/media/mq-transform-0[23].html to reflect that chromium DRT has
2d and 3d transforms enabled

* platform/chromium-cg-mac-leopard/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/media/mq-transform-02-expected.txt: Added.
* platform/chromium-cg-mac-leopard/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-cg-mac-snowleopard/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/fast/media/mq-transform-02-expected.txt: Added.
* platform/chromium-cg-mac-snowleopard/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-cg-mac-snowleopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-gpu-cg-mac/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-gpu-cg-mac/fast/media/mq-transform-02-expected.txt: Added.
* platform/chromium-gpu-cg-mac/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-gpu-cg-mac/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-linux-x86/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-linux-x86/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-02-expected.txt.
* platform/chromium-linux-x86/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-linux-x86/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-linux/fast/media/mq-transform-02-expected.png:
* platform/chromium-linux/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-02-expected.txt.
* platform/chromium-linux/fast/media/mq-transform-03-expected.png:
* platform/chromium-linux/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-mac-leopard/fast/media/mq-transform-02-expected.png:
* platform/chromium-mac-leopard/fast/media/mq-transform-02-expected.txt: Added.
* platform/chromium-mac-leopard/fast/media/mq-transform-03-expected.png:
* platform/chromium-mac-leopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-mac-snowleopard/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/media/mq-transform-02-expected.txt: Added.
* platform/chromium-mac-snowleopard/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-win-vista/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-win-vista/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-02-expected.txt.
* platform/chromium-win-vista/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-win-vista/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-win-xp/fast/media/mq-transform-02-expected.png: Added.
* platform/chromium-win-xp/fast/media/mq-transform-02-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-02-expected.txt.
* platform/chromium-win-xp/fast/media/mq-transform-03-expected.png: Added.
* platform/chromium-win-xp/fast/media/mq-transform-03-expected.txt: Copied from LayoutTests/platform/chromium-win/fast/media/mq-transform-03-expected.txt.
* platform/chromium-win/fast/media/mq-transform-02-expected.png:
* platform/chromium-win/fast/media/mq-transform-02-expected.txt:
* platform/chromium-win/fast/media/mq-transform-03-expected.png:
* platform/chromium-win/fast/media/mq-transform-03-expected.txt:
* platform/chromium/test_expectations.txt:

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

9 years agoFix up chromium API for creating events, initializing message events
commit-queue@webkit.org [Wed, 16 Nov 2011 21:14:18 +0000 (21:14 +0000)]
Fix up chromium API for creating events, initializing message events
https://bugs.webkit.org/show_bug.cgi?id=71478

- Fix a mistake when checking the exception code during event creation.
- Change WebFrame parameter to pointer so that NULL may be passed.

This is required for the following chromium CL: http://codereview.chromium.org/8437093/

Tested in Chromium by:
 ui_test --gtest_filter=*PPAPITest.PostMessage*

Patch by Dave Michael <dmichael@chromium.org> on 2011-11-16
Reviewed by Darin Fisher.

* public/WebDOMMessageEvent.h:
* src/WebDOMMessageEvent.cpp:
(WebKit::WebDOMMessageEvent::initMessageEvent):
* src/WebDocument.cpp:
(WebKit::WebDocument::createEvent):

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

9 years ago[chromium] Add null pointer check in setDeviceScaleFactor
commit-queue@webkit.org [Wed, 16 Nov 2011 21:11:24 +0000 (21:11 +0000)]
[chromium] Add null pointer check in setDeviceScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=72464

Patch by Alexandre Elias <aelias@google.com> on 2011-11-16
Reviewed by James Robinson.

No new tests. (Tiny fix.)

* page/Page.cpp:
(WebCore::Page::setDeviceScaleFactor):

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

9 years agoUnreviewed, rolling out r100438.
commit-queue@webkit.org [Wed, 16 Nov 2011 21:07:20 +0000 (21:07 +0000)]
Unreviewed, rolling out r100438.
http://trac.webkit.org/changeset/100438
https://bugs.webkit.org/show_bug.cgi?id=72536

Broke unit tests (Requested by jamesr_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-11-16

Source/WebCore:

* platform/PlatformScreen.h:
* platform/chromium/PlatformScreenChromium.cpp:
* platform/chromium/PlatformSupport.h:
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeImplOnImplThread):

Source/WebKit/chromium:

* public/WebScreenInfo.h:
(WebKit::WebScreenInfo::WebScreenInfo):
* src/PlatformSupport.cpp:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

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

9 years ago[NRWT] refactor drivers to require pixel_tests param
tony@chromium.org [Wed, 16 Nov 2011 21:03:48 +0000 (21:03 +0000)]
[NRWT] refactor drivers to require pixel_tests param
https://bugs.webkit.org/show_bug.cgi?id=72517

Reviewed by Ojan Vafai.

No tests, just a refactoring.

* Scripts/webkitpy/layout_tests/port/chromium.py:
* Scripts/webkitpy/layout_tests/port/chromium_unittest.py:
* Scripts/webkitpy/layout_tests/port/webkit.py:
* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

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

9 years agoDe-virtualize ExecutableBase::clearCodeVirtual
mhahnenberg@apple.com [Wed, 16 Nov 2011 20:50:31 +0000 (20:50 +0000)]
De-virtualize ExecutableBase::clearCodeVirtual
https://bugs.webkit.org/show_bug.cgi?id=72337

Reviewed by Darin Adler.

Added static finalize functions to the subclasses of ExecutableBase that provide an implementation
of clearCodeVirtual, changed all of the clearCodeVirtual methods to non-virtual clearCode method,
and had the finalize functions call the corresponding clearCode methods.

* runtime/Executable.cpp:
(JSC::ExecutableBase::clearCode):
(JSC::NativeExecutable::finalize):
(JSC::EvalExecutable::finalize):
(JSC::EvalExecutable::clearCode):
(JSC::ProgramExecutable::finalize):
(JSC::ProgramExecutable::clearCode):
(JSC::FunctionExecutable::discardCode):
(JSC::FunctionExecutable::finalize):
(JSC::FunctionExecutable::clearCode):
* runtime/Executable.h:
(JSC::ExecutableBase::finishCreation):
(JSC::NativeExecutable::create):
(JSC::EvalExecutable::create):
(JSC::ProgramExecutable::create):
(JSC::FunctionExecutable::create):

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

9 years agoAssertion failure in LayerFlushScheduler::resume() when running some layout tests...
aestes@apple.com [Wed, 16 Nov 2011 20:43:11 +0000 (20:43 +0000)]
Assertion failure in LayerFlushScheduler::resume() when running some layout tests in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=72535

Reviewed by Anders Carlsson.

LayerFlushScheduler attempted to use a counter strategy for calls to
suspend() and resume(), which allowed us to assert that these calls
were balanced. Unfortunately it is hard to guarantee this in WebKit2,
where we sometimes try to call suspend() before we've entered
compositing mode (hence before we have a LayerTreeHost and a
LayerFlushScheduler). When we later call resume(), this call ends up
being unbalanced and asserts.

For now, remove the assertions and allow unbalanced calls to suspend()
and resume().

* platform/graphics/ca/LayerFlushScheduler.cpp:
(WebCore::LayerFlushScheduler::suspend):
(WebCore::LayerFlushScheduler::resume):
* platform/graphics/ca/LayerFlushScheduler.h:
* platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
(WebCore::LayerFlushScheduler::LayerFlushScheduler):
(WebCore::LayerFlushScheduler::runLoopObserverCallback):
(WebCore::LayerFlushScheduler::schedule):

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

9 years agoRun a dummy test in the gpu configurations if there's nothing to do.
dpranke@chromium.org [Wed, 16 Nov 2011 20:42:38 +0000 (20:42 +0000)]
Run a dummy test in the gpu configurations if there's nothing to do.
https://bugs.webkit.org/show_bug.cgi?id=72498

Reviewed by James Robinson.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:

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

9 years agoUnreviewed, rolling out r100473.
robert@webkit.org [Wed, 16 Nov 2011 20:27:58 +0000 (20:27 +0000)]
Unreviewed, rolling out r100473.
http://trac.webkit.org/changeset/100473
https://bugs.webkit.org/show_bug.cgi?id=72534

"Broke the Mac Build" (Requested by mwenge2 on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-11-16

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::createObject):
(WebCore::RenderObject::addChild):
* rendering/RenderObject.h:
* rendering/RenderTable.cpp:
(WebCore::RenderTable::addChild):
* rendering/RenderTable.h:
* rendering/RenderTableCaption.cpp: Removed.
* rendering/RenderTableCaption.h: Removed.

LayoutTests:

* css2.1/20110323/border-collapse-offset-002.htm: Removed.
* platform/chromium-linux-x86/css2.1/20110323/border-collapse-offset-002-expected.png: Removed.
* platform/chromium-linux-x86/css2.1/20110323/border-collapse-offset-002-expected.txt: Removed.
* platform/chromium-linux/fast/dom/HTMLTableElement/colSpan-expected.png:
* platform/chromium-linux/fast/dom/HTMLTableElement/createCaption-expected.png:
* platform/chromium-win/fast/css/bidi-override-in-anonymous-block-expected.txt:
* platform/chromium-win/fast/dom/HTMLTableElement/colSpan-expected.txt:
* platform/chromium-win/fast/dom/HTMLTableElement/createCaption-expected.txt:
* platform/mac/fast/repaint/table-section-repaint-expected.txt:

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

9 years agoUnreviewed, rolling out r100479.
robert@webkit.org [Wed, 16 Nov 2011 20:25:19 +0000 (20:25 +0000)]
Unreviewed, rolling out r100479.
http://trac.webkit.org/changeset/100479
https://bugs.webkit.org/show_bug.cgi?id=72533

"Broke the Mac Build" (Requested by mwenge2 on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-11-16

* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* rendering/RenderingAllInOne.cpp:

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

9 years agoWebKitTestRunner needs to support accessibility-related DRT APIs
cfleizach@apple.com [Wed, 16 Nov 2011 20:17:22 +0000 (20:17 +0000)]
WebKitTestRunner needs to support accessibility-related DRT APIs
https://bugs.webkit.org/show_bug.cgi?id=42131

Tools:

Reviewed by Beth Dakin.

Port the AX code in DRT to WKTestRunner by using IDL.

* DumpRenderTree/AccessibilityUIElement.cpp:
(horizontalScrollbarCallback):
(verticalScrollbarCallback):
(AccessibilityUIElement::horizontalScrollbar):
(AccessibilityUIElement::verticalScrollbar):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::horizontalScrollbar):
(AccessibilityUIElement::verticalScrollbar):
* WebKitTestRunner/DerivedSources.make:
* WebKitTestRunner/GNUmakefile.am:
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp: Added.
(WTR::AccessibilityController::create):
(WTR::AccessibilityController::AccessibilityController):
(WTR::AccessibilityController::~AccessibilityController):
(WTR::AccessibilityController::makeWindowObject):
(WTR::AccessibilityController::wrapperClass):
(WTR::AccessibilityController::rootElement):
(WTR::AccessibilityController::focusedElement):
(WTR::AccessibilityController::elementAtPoint):
* WebKitTestRunner/InjectedBundle/AccessibilityController.h: Added.
(WTR::AccessibilityController::logFocusEvents):
(WTR::AccessibilityController::logValueChangeEvents):
(WTR::AccessibilityController::logScrollingStartEvents):
(WTR::AccessibilityController::logAccessibilityEvents):
(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::notificationReceived):
(WTR::AccessibilityController::resetToConsistentState):
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Added.
(WTR::AccessibilityTextMarker::create):
(WTR::AccessibilityTextMarker::AccessibilityTextMarker):
(WTR::AccessibilityTextMarker::~AccessibilityTextMarker):
(WTR::AccessibilityTextMarker::platformTextMarker):
(WTR::AccessibilityTextMarker::wrapperClass):
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.h: Added.
(WTR::AccessibilityTextMarker::isEqual):
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Added.
(WTR::AccessibilityTextMarkerRange::create):
(WTR::AccessibilityTextMarkerRange::AccessibilityTextMarkerRange):
(WTR::AccessibilityTextMarkerRange::~AccessibilityTextMarkerRange):
(WTR::AccessibilityTextMarkerRange::platformTextMarkerRange):
(WTR::AccessibilityTextMarkerRange::wrapperClass):
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.h: Added.
(WTR::AccessibilityTextMarkerRange::isEqual):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Added.
(WTR::AccessibilityUIElement::create):
(WTR::AccessibilityUIElement::wrapperClass):
(WTR::AccessibilityUIElement::isValid):
(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::~AccessibilityUIElement):
(WTR::AccessibilityUIElement::isEqual):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::takeFocus):
(WTR::AccessibilityUIElement::takeSelection):
(WTR::AccessibilityUIElement::addSelection):
(WTR::AccessibilityUIElement::removeSelection):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::attributesOfDocumentLinks):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::parameterizedAttributeNames):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::showMenu):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::uiElementAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isActionSupported):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::subrole):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::accessibilityValue):
(WTR::AccessibilityUIElement::helpText):
(WTR::AccessibilityUIElement::orientation):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::intValue):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::insertionPointLineNumber):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired):
(WTR::AccessibilityUIElement::isFocused):
(WTR::AccessibilityUIElement::isFocusable):
(WTR::AccessibilityUIElement::isSelected):
(WTR::AccessibilityUIElement::isSelectable):
(WTR::AccessibilityUIElement::isMultiSelectable):
(WTR::AccessibilityUIElement::setSelectedChild):
(WTR::AccessibilityUIElement::selectedChildrenCount):
(WTR::AccessibilityUIElement::selectedChildAtIndex):
(WTR::AccessibilityUIElement::isExpanded):
(WTR::AccessibilityUIElement::isChecked):
(WTR::AccessibilityUIElement::isVisible):
(WTR::AccessibilityUIElement::isOffScreen):
(WTR::AccessibilityUIElement::isCollapsed):
(WTR::AccessibilityUIElement::isIgnored):
(WTR::AccessibilityUIElement::hasPopup):
(WTR::AccessibilityUIElement::hierarchicalLevel):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::url):
(WTR::AccessibilityUIElement::speak):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::AccessibilityUIElement::attributesOfHeader):
(WTR::AccessibilityUIElement::indexInTable):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::ariaIsGrabbed):
(WTR::AccessibilityUIElement::ariaDropEffects):
(WTR::AccessibilityUIElement::lineForIndex):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::setSelectedTextRange):
(WTR::AccessibilityUIElement::stringForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar):
(WTR::AccessibilityUIElement::verticalScrollbar):
(WTR::AccessibilityUIElement::addNotificationListener):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h: Added.
(WTR::AccessibilityUIElement::platformUIElement):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl: Added.
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityTextMarker.idl: Added.
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityTextMarkerRange.idl: Added.
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl: Added.
* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
(WTR::InjectedBundle::accessibilityController):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::didClearWindowForFrame):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
* WebKitTestRunner/InjectedBundle/gtk/LayoutTestControllerGtk.cpp:
(WTR::LayoutTestController::platformName):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm: Added.
(WTR::AccessibilityTextMarker::isEqual):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm: Added.
(WTR::AccessibilityTextMarkerRange::isEqual):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm: Added.
(+[NSString stringWithJSStringRef:]):
(-[NSString createJSStringRef]):
(-[AccessibilityNotificationHandler initWithPlatformElement:]):
(-[AccessibilityNotificationHandler dealloc]):
(-[AccessibilityNotificationHandler _notificationReceived:]):
(-[AccessibilityNotificationHandler setCallback:]):
(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::~AccessibilityUIElement):
(WTR::AccessibilityUIElement::isEqual):
(WTR::descriptionOfValue):
(WTR::attributesOfElement):
(WTR::concatenateAttributeAndValue):
(WTR::convertNSArrayToVector):
(WTR::descriptionOfElements):
(WTR::AccessibilityUIElement::getLinkedUIElements):
(WTR::AccessibilityUIElement::getDocumentLinks):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex):
(WTR::AccessibilityUIElement::selectedChildrenCount):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
(WTR::AccessibilityUIElement::attributesOfDocumentLinks):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::uiElementAttributeValue):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::parameterizedAttributeNames):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::subrole):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::helpText):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::intValue):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::insertionPointLineNumber):
(WTR::AccessibilityUIElement::isActionSupported):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired):
(WTR::AccessibilityUIElement::isFocused):
(WTR::AccessibilityUIElement::isSelected):
(WTR::AccessibilityUIElement::isExpanded):
(WTR::AccessibilityUIElement::isChecked):
(WTR::AccessibilityUIElement::hierarchicalLevel):
(WTR::AccessibilityUIElement::speak):
(WTR::AccessibilityUIElement::ariaIsGrabbed):
(WTR::AccessibilityUIElement::ariaDropEffects):
(WTR::AccessibilityUIElement::lineForIndex):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::stringForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::AccessibilityUIElement::attributesOfHeader):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar):
(WTR::AccessibilityUIElement::verticalScrollbar):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::setSelectedTextRange):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::showMenu):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::setSelectedChild):
(WTR::AccessibilityUIElement::accessibilityValue):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::url):
(WTR::AccessibilityUIElement::addNotificationListener):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::isFocusable):
(WTR::AccessibilityUIElement::isSelectable):
(WTR::AccessibilityUIElement::isMultiSelectable):
(WTR::AccessibilityUIElement::isVisible):
(WTR::AccessibilityUIElement::isOffScreen):
(WTR::AccessibilityUIElement::isCollapsed):
(WTR::AccessibilityUIElement::isIgnored):
(WTR::AccessibilityUIElement::hasPopup):
(WTR::AccessibilityUIElement::takeFocus):
(WTR::AccessibilityUIElement::takeSelection):
(WTR::AccessibilityUIElement::addSelection):
(WTR::AccessibilityUIElement::removeSelection):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
* WebKitTestRunner/InjectedBundle/mac/LayoutTestControllerMac.mm:
(WTR::LayoutTestController::platformName):
* WebKitTestRunner/InjectedBundle/qt/LayoutTestControllerQt.cpp:
(WTR::LayoutTestController::platformName):
* WebKitTestRunner/InjectedBundle/win/LayoutTestControllerWin.cpp:
(WTR::LayoutTestController::platformName):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/win/InjectedBundle.vcproj:

LayoutTests:

Cleanup tests and skip lists so that accessibility tests can run
in WK2. This mostly involved handling returned elements that might be nil,
something that did not happen in DRT.

Reviewed by Beth Dakin.

* accessibility/aria-labelledby-overrides-label-expected.txt:
* accessibility/aria-labelledby-overrides-label.html:
* accessibility/non-data-table-cell-title-ui-element.html:
* accessibility/th-as-title-ui.html:
    Make sure a nil titleUIElement is accounted for in these tests.
* platform/gtk-wk2/Skipped:
* platform/mac/accessibility/aria-expanded-notifications-expected.txt:
* platform/mac/accessibility/aria-expanded-notifications.html:
* platform/mac/accessibility/aria-invalid-expected.txt:
* platform/mac/accessibility/aria-invalid.html:
* platform/mac/accessibility/aria-liveregions-addedelement-expected.txt:
* platform/mac/accessibility/aria-liveregions-addedelement.html:
* platform/mac/accessibility/aria-liveregions-changedalt-expected.txt:
* platform/mac/accessibility/aria-liveregions-changedalt.html:
* platform/mac/accessibility/aria-liveregions-changedtext-expected.txt:
* platform/mac/accessibility/aria-liveregions-changedtext.html:
* platform/mac/accessibility/aria-liveregions-removedelement-expected.txt:
* platform/mac/accessibility/aria-liveregions-removedelement.html:
     All the preceeding layout tests use alert() to output the results of notifications. This
     is causing re-ordering issues on WK2, so I've moved them all to output that notification
     data to a separate element from "console".
* platform/mac/accessibility/html-section-elements-expected.txt:
* platform/mac/accessibility/html-section-elements.html:
     Remove nil element access that is unnecessary.
* platform/mac/accessibility/html-slider-indicator-expected.txt:
* platform/mac/accessibility/html-slider-indicator.html:
* platform/mac/accessibility/search-predicate.html:
     Add an alt tag to <img> so that it always shows up in the AX tree.
* platform/mac/accessibility/selection-value-changes-for-aria-textbox.html:
* platform/mac/accessibility/textbox-role-reports-notifications-expected.txt:
     Remove the notification listener properly (was causing flakiness).
* platform/mac/accessibility/textbox-role-reports-notifications.html:
* platform/mac/accessibility/update-children-when-aria-role-changes-expected.txt:
* platform/mac/accessibility/update-children-when-aria-role-changes.html:
     Account for when element's returned are nil.
* platform/win-wk2/Skipped:
     Skip all accessibility tests on win.
* platform/wk2/Skipped:
     Skip all accessibility tests on gtk.

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

9 years agoWebKitTestRunner needs to support accessibility-related DRT APIs
cfleizach@apple.com [Wed, 16 Nov 2011 20:14:58 +0000 (20:14 +0000)]
WebKitTestRunner needs to support accessibility-related DRT APIs
https://bugs.webkit.org/show_bug.cgi?id=42131

../WebCore:

Minor changes needed to support AX testing in WKTestRunner.

Reviewed by Beth Dakin.

* WebCore.exp.in:
     Expose focusedUIElementForPage so that the WK2 injected bundle can retrieve it.
* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(accessibilitySearchKeyForString):
    Remove an unncessary assert that was causing issues with the WK2 test run.

../WebKit2:

Allow the injected bundle to retrieve the focused and root accessibility
objects.

Reviewed by Beth Dakin.

* WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKAccessibilityRootObject):
(WKAccessibilityFocusedObject):
* WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:

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

9 years ago[Soup] Somet tests fail with FAIL Unexpected response data received: Wrong method...
sergio@webkit.org [Wed, 16 Nov 2011 20:12:42 +0000 (20:12 +0000)]
[Soup] Somet tests fail with FAIL Unexpected response data received: Wrong method: GET
https://bugs.webkit.org/show_bug.cgi?id=69219

Reviewed by Martin Robinson.

Source/WebCore:

Do not stop appending data to the request body if any of the blob
items to upload is not accesible.

* platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::addEncodedBlobToSoupMessageBody):

LayoutTests:

Unskipped a test that now pass.

* platform/gtk/Skipped: unskipped http/tests/local/blob/send-hybrid-blob.html

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

9 years agofast/frames/sandboxed-iframe-navigation-targetlink.html crashes occasionally on Chrom...
steveblock@google.com [Wed, 16 Nov 2011 19:59:12 +0000 (19:59 +0000)]
fast/frames/sandboxed-iframe-navigation-targetlink.html crashes occasionally on Chromium Mac dbg
https://bugs.webkit.org/show_bug.cgi?id=72530

Unreviewed gardening

* platform/chromium/test_expectations.txt:

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=72400
bdakin@apple.com [Wed, 16 Nov 2011 19:53:12 +0000 (19:53 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=72400
Scrollbar uiStateTransitionProgress requires tracking the mouse all the time
-and corresponding-
<rdar://problem/10409328>

Reviewed by Darin Adler.

Source/WebCore:

This patch makes it so we track the mouse all the time when we have legacy
scrollbars (rather than only tracking the mouse when the window is key). When
we're in that mode, we want to do as little work as possible when handling the
mouseMoved event so that this extra tracking has little to no performance impact.
Also, we don't want to change basic behaviors by having normal web content hover
effects start happening when a window is in the background. So this patch also
introduces a way to handle a mouseMoved event that will only affect scrollbars.

EventHandler::mouseMoved() and EventHandler::handleMouseEvent() both now take a
boolean parameter that indicates if we are only updating scrollbars. If that is
the case, then we make our HitTestRequest ReadOnly, and we return early once
updateLastScrollbarUnderMouse() is called.
* WebCore.exp.in:
* page/EventHandler.cpp:
(WebCore::EventHandler::mouseMoved):
(WebCore::EventHandler::handleMouseMoveEvent):

In addition to calling Scrollbar::mouseExited() when appropriate, this function
now calls a new function, Scrollbar::mouseEntered() when appropriate.
(WebCore::EventHandler::updateLastScrollbarUnderMouse):
* page/EventHandler.h:

Scrollbar::mouseMoved() used to be responsible for calling
ScrollAnimator::mouseEnteredScrollbar(), but now Scrollbar::mouseEntered() takes
care of that instead, much like how Scrollbar::mouseExited() takes care of calling
the animator's exit function.
* platform/Scrollbar.cpp:
(WebCore::Scrollbar::mouseMoved):
(WebCore::Scrollbar::mouseEntered):
* platform/Scrollbar.h:

Source/WebKit2:

Set up our initial tracking area based on the currently recommended scrollbar
style. Track the mouse all the time if the style is legacy.
* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:contextRef:pageGroupRef:]):

Now that we might be getting mouseMoved events all the time even when the window
is not key, make sure we opt into the new 'onlyUpdateScrollbars' mode for
EventHandler::mouseMoved() when the window is not focused.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::handleMouseEvent):
(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::mouseEventSyncForTesting):

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