r132427 changed the tiling behavior of tiled layer TileCaches as well as the page tile cache
https://bugs.webkit.org/show_bug.cgi?id=100323

Reviewed by Anders Carlsson.

r132427 assumed that TileCaches were only used for the page, and changed the tile
size behavior of all non-page TileCaches.

Fix by giving TiledBacking a new 'CoverageForSlowScrolling' flag which
affects the tile size behavior.

Consolidated the two places that set TileCoverage into one, and in the process
reduced FrameView's direct communication with TiledBacking.

No new tests because we can't test tile size via tests.

* page/FrameView.cpp:
(WebCore::FrameView::didMoveOnscreen): Rely on RenderLayerCompositor to
call setIsInWindow() on the main page tile cache.
(WebCore::FrameView::willMoveOffscreen): Ditto.
(WebCore::FrameView::performPostLayoutTasks): Rather than explicitly tell
the TiledBacking that it should do stuff, just tell the compositor that
layout happened.
* platform/graphics/TiledBacking.h: New CoverageForSlowScrolling flag.
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::tileSizeForCoverageRect): Only use one big tile
if the CoverageForSlowScrolling flag is set.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::RenderLayerBacking): layer->isRootLayer()
is equivalent to renderer()->isRenderView() and clearer.
(WebCore::RenderLayerBacking::tiledBacking): Call adjustTileCacheCoverage().
It would be nice to move the rest of this TiledBacking code from here somehow.
(WebCore::RenderLayerBacking::adjustTileCacheCoverage): Update the TileCoverage
flags, taking into account horizontal and vertical scrollability independently,
and whether we're in slow scrolling mode.
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidLayout): Have the page
tiled backing update it's coverage flags.
(WebCore::RenderLayerCompositor::pageTiledBacking): Utility function.
(WebCore::RenderLayerCompositor::didMoveOnscreen): Moved from FrameView.
(WebCore::RenderLayerCompositor::willMoveOffscreen): Ditto.
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132504 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of ScriptController::clearForNavigation
https://bugs.webkit.org/show_bug.cgi?id=100390

Reviewed by Adam Barth.

Get rid of clearForNavigation and change resetIsolatedWorlds
to reset so that it can also do the hintForCollectGarbage call.
No new tests. No behavior change.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::reset):
(WebCore::ScriptController::clearForClose):
(WebCore::ScriptController::clearWindowShell):
* bindings/v8/ScriptController.h:
(ScriptController):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Turn PageLoad tests into simple performancetests, commit #2 
https://bugs.webkit.org/show_bug.cgi?id=99899

Reviewed by Ryosuke Niwa.

We cannot provide an elegant way to measure the memory consumption of the PageLoad tests, but we can turn them into simple
performance tests and measure their memory footprint and performance that way. This change moves and renames the related files
to their new location and adds html/js wrappers for them.

This is the #2 commit of the whole patch.

* PageLoad/svg/files/cacuts_01.svg: Removed.
* PageLoad/svg/files/cowboy.svg: Removed.
* PageLoad/svg/files/crawfish2_ganson.svg: Removed.
* SVG/Cactus.html: Added.
* SVG/Cowboy.html: Added.
* SVG/CrawFishGanson.html: Added.
* SVG/resources/Cactus.svg: Copied from PerformanceTests/PageLoad/svg/files/cacuts_01.svg.
* SVG/resources/Cowboy.svg: Copied from PerformanceTests/PageLoad/svg/files/cowboy.svg.
* SVG/resources/CrawFishGanson.svg: Copied from PerformanceTests/PageLoad/svg/files/crawfish2_ganson.svg.
* Skipped: Remove az-lizard_benji_park_01.svg from the skipped list.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132506 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (r131836): failures in list styles tests on EFL, GTK
https://bugs.webkit.org/show_bug.cgi?id=99824

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Saved start of string since it is modified by call convertUTF8ToUTF16().

* API/JSStringRef.cpp:
(JSStringCreateWithUTF8CString):

Source/WTF:

Fixed ASCII check.
Added placeholder argument for new argument added to convertUTF8ToUTF16() in http://trac.webkit.org/changeset/131836.

* wtf/unicode/UTF8.cpp:
(WTF::Unicode::convertUTF8ToUTF16):
* wtf/unicode/glib/UnicodeGLib.cpp:
(WTF::Unicode::convertCase):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove SK_DISABLE_EXTRACTSUBSET_OPAQUE_FIX define from skia_webkit.gyp, as it has been rebaselined.
https://bugs.webkit.org/show_bug.cgi?id=100394

Patch by Ben Wagner <bungeman@chromium.org> on 2012-10-25
Reviewed by Dirk Pranke.

The define has been removed from the Skia code and the Chromium skia.gyp.
The pixel tests affected have already been rebaselined.

* skia_webkit.gyp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Touch adjustment snaps to wrong target at a plugin boundary.
https://bugs.webkit.org/show_bug.cgi?id=99938

Patch by Kevin Ellis <kevers@chromium.org> on 2012-10-25
Reviewed by Antonio Gomes.

Source/WebCore:

Inidcate that an <embed> element can respond to
mouse click events, since mouse events are forwarded
to the plugin.  Fixes touch adjustment at a plugin
boundary.  Prior to the patch a clickable element
adjacent to the plugin would capture synthetic mouse
events from tap gestures that spanned the plugin
boundary.

Test: touchadjustment/plugin.html

* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::willRespondToMouseClickEvents):
(WebCore):
* html/HTMLEmbedElement.h:

LayoutTests:

Test for touch adjustment at a plugin boundary.
Prior to the patch, plugins were not considered
candidates for touch adjustment.

* touchadjustment/plugin-expected.txt: Added.
* touchadjustment/plugin.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Plugin test gardening
https://bugs.webkit.org/show_bug.cgi?id=100359

Unreviewed, EFL gardening.

fast/frames/sandboxed-iframe-plugins.html and userscripts/user-script-
plugin-document.html are passing on WK2 now.

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-10-25

* platform/efl-wk1/TestExpectations:
* platform/efl/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132510 268f45cc-cd09-0410-ab3c-d52691b4dbfc
XSSAuditor must replace form action with about:blank when reflected action detected.
https://bugs.webkit.org/show_bug.cgi?id=100280

Reviewed by Daniel Bates.

Source/WebCore:

Changes empty string form-action replacement to about:blank.
Existing form-action.html test modified to check this case.

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::filterFormToken):

LayoutTests:

Update tests to log form action attribute.

* http/tests/security/xssAuditor/form-action-expected.txt:
* http/tests/security/xssAuditor/form-action.html:
* http/tests/security/xssAuditor/resources/echo-intertag.pl:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132511 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Only full-page PDFPlugins should purport to handle page scale changes
https://bugs.webkit.org/show_bug.cgi?id=99635

Reviewed by Sam Weinig.

PDFPlugin should only handle page scale factor changes itself if it's in the main frame.
Subframe PDFs will act like images, zooming with the page.

* WebProcess/Plugins/PDF/PDFPlugin.h:
(PDFPlugin): Move implementation of handlesPageScaleFactor() to PDFPlugin.mm.
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::pdfDocumentDidLoad): Only copy PDFLayerController's default autoscale magnification to PluginView's
notion of the current scale factor if we're supposed to be handling page scale factor changes.
(WebKit::PDFPlugin::geometryDidChange): Only update PDFLayerController's magnification from the page scale factor
if we're supposed to be handling page scale factor changes.
(WebKit::PDFPlugin::handlesPageScaleFactor): We should only handle page scale factor changes if we're in the main frame.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132512 268f45cc-cd09-0410-ab3c-d52691b4dbfc
.: Adding feature for XHR_TIMEOUT

Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding feature for XHR_TIMEOUT to disable it on ports that don't have
network backend support for setTimeoutInterval.

* Source/cmake/OptionsEfl.cmake: Default ON on EFL.
* Source/cmake/WebKitFeatures.cmake: Default OFF for any CMAKE based port.
* Source/cmakeconfig.h.cmake: Adding define.
* configure.ac: Make autogen.sh support the --enable/--disable-xhr-timeout parameter.

Source/JavaScriptCore: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding XHR_TIMEOUT feature to conditionalize this on ports without network backend support.

* Configurations/FeatureDefines.xcconfig:

Source/WebCore: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding feature for XHR_TIMEOUT to disable it on ports that don't have
network backend support for setTimeoutInterval.

No new tests, covered by http/tests/xmlhttprequest/timeout/*

* Configurations/FeatureDefines.xcconfig: Default ON on mac.
* GNUmakefile.am:
* GNUmakefile.features.am:
  Autotools support for the flag.
* xml/XMLHttpRequest.cpp: #if ENABLE(XHR_TIMEOUT) wrapping
(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore):
(WebCore::XMLHttpRequest::open):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::didFail):
* xml/XMLHttpRequest.h: #if ENABLE(XHR_TIMEOUT) wrapping
(XMLHttpRequest):
* xml/XMLHttpRequest.idl: Conditional properties timeout and ontimeout (event handler).

Source/WebKit/chromium: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding XHR_TIMEOUT feature to conditionalize this on ports without network backend support.
Defaults to off on chromium until webkit.org/b/98397 is solved.

* features.gypi:

Source/WebKit/mac: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding XHR_TIMEOUT feature to conditionalize this on ports without network backend support.
Defaults to ON on Mac since the Mac NSUrlConnection based backend has setTimeoutInterval support.

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding XHR_TIMEOUT feature to conditionalize this on ports without network backend support.
Defaults to ON on Mac since the Mac NSUrlConnection based backend has setTimeoutInterval support.

* Configurations/FeatureDefines.xcconfig:

Tools: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding XHR_TIMEOUT feature in perl and qmake files.

* Scripts/webkitperl/FeatureList.pm:
* qmake/mkspecs/features/features.pri:

WebKitLibraries: Conditionalize XHR timeout support
https://bugs.webkit.org/show_bug.cgi?id=100356

Reviewed by Adam Barth.

Adding ENABLE_XHR_TIMEOUT feature, which is default off for Apple Win.
See also https://bugs.webkit.org/show_bug.cgi?id=100349 for an attempt
to fix timeout support for CF Network.

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132513 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: Notification should be sent when accessibilityIsIgnored changes
https://bugs.webkit.org/show_bug.cgi?id=99547

Reviewed by Chris Fleizach.

Source/WebCore:

Adds a new flag in AccessibilityObject that keeps track of the most recent
value of accessibilityIsIgnored(). After certain events such as an ARIA
attribute change or content change, checks the new value of
accessibilityIsIgnored() and posts a "children changed" notification on the
parent node if it changed, making sure the parent recomputes its vector of
(unignored) children.

Also moves handling of attribute changes to AXObjectCache, and sends
notifications for some attribute changes that were previously silent. On
Chromium, all changes to an accessibility object's attributes should
result in some notification.

Some tests would have broken because an AccessibilityScrollView was created
and holding a reference to a ScrollView for an iframe after it was deleted,
so this change switches AccessibilityScrollView to hold a weak reference
to ScrollView instead.

Tests: platform/chromium/accessibility/is-ignored-change-sends-notification.html
       platform/chromium/accessibility/other-aria-attribute-change-sends-notification.html
       platform/chromium/accessibility/text-change-notification.html

* accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::focusedUIElementForPage):
(WebCore::AXObjectCache::getOrCreate):
(WebCore::AXObjectCache::textChanged):
(WebCore):
(WebCore::AXObjectCache::childrenChanged):
(WebCore::AXObjectCache::handleAriaRoleChanged):
(WebCore::AXObjectCache::handleAttributeChanged):
(WebCore::AXObjectCache::labelChanged):
(WebCore::AXObjectCache::recomputeIsIgnored):
* accessibility/AXObjectCache.h:
(AXObjectCache):
(WebCore::AXObjectCache::childrenChanged):
(WebCore::AXObjectCache::textChanged):
(WebCore::AXObjectCache::handleAttributeChanged):
(WebCore::AXObjectCache::recomputeIsIgnored):
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::insertChild):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::AccessibilityObject):
(WebCore::AccessibilityObject::cachedIsIgnoredValue):
(WebCore):
(WebCore::AccessibilityObject::setCachedIsIgnoredValue):
(WebCore::AccessibilityObject::notifyIfIgnoredValueChanged):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::textChanged):
(AccessibilityObject):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::correspondingControlForLabelElement):
(WebCore::AccessibilityRenderObject::textChanged):
(WebCore::AccessibilityRenderObject::addHiddenChildren):
(WebCore::AccessibilityRenderObject::addChildren):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):
* accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::~AccessibilityScrollView):
(WebCore):
(WebCore::AccessibilityScrollView::detach):
(WebCore::AccessibilityScrollView::isAttachment):
(WebCore::AccessibilityScrollView::widgetForAttachmentView):
(WebCore::AccessibilityScrollView::updateScrollbars):
(WebCore::AccessibilityScrollView::webAreaObject):
(WebCore::AccessibilityScrollView::elementRect):
(WebCore::AccessibilityScrollView::documentFrameView):
(WebCore::AccessibilityScrollView::parentObject):
(WebCore::AccessibilityScrollView::parentObjectIfExists):
(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):
* accessibility/AccessibilityScrollView.h:
(WebCore::AccessibilityScrollView::scrollView):
(AccessibilityScrollView):
* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):
* accessibility/chromium/AXObjectCacheChromium.cpp:
(WebCore::AXObjectCache::postPlatformNotification):
* dom/Element.cpp:
(WebCore::Element::attributeChanged):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::deleteLineBoxTree):
(WebCore::RenderBlock::createAndAppendRootInlineBox):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::styleWillChange):
* rendering/RenderText.cpp:
(WebCore::RenderText::setText):

Source/WebKit/chromium:

Adds new accessibility notifications.

* public/WebAccessibilityNotification.h:
* src/AssertMatchingEnums.cpp:

Tools:

Add additional accessibility notifications.

* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::postAccessibilityNotification):

LayoutTests:

Adds 3 new test to ensure:
1. A "children changed" notification is fired on the parent object when an
   object that was previously ignored becomes unignored.
2. A notification is sent when an element's text (incl. title or label) changes.
3. A notification is sent when another ARIA attribute changes.

Modifies add-to-menu-list-crashes because it was too brittle; it was
    referencing a stale object rather than retrieving its latest handle.
Modifies aria-checkbox-sends-notification to listen on the correct
    object on all platforms.
Simplifies notification-listeners so it doesn't generate additional
    notifications that are inconsistent between platforms now.

* accessibility/aria-checkbox-sends-notification.html:
* accessibility/notification-listeners.html:
* platform/chromium/accessibility/add-to-menu-list-crashes-expected.txt:
* platform/chromium/accessibility/add-to-menu-list-crashes.html:
* platform/chromium/accessibility/is-ignored-change-sends-notification-expected.txt: Added.
* platform/chromium/accessibility/is-ignored-change-sends-notification.html: Added.
* platform/chromium/accessibility/other-aria-attribute-change-sends-notification-expected.txt: Added.
* platform/chromium/accessibility/other-aria-attribute-change-sends-notification.html: Added.
* platform/chromium/accessibility/text-change-notification-expected.txt: Added.
* platform/chromium/accessibility/text-change-notification.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132514 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Skip failing accessibility tests.
accessibility/title-ui-element-correctness.html
accessibility/aria-slider-value.html
accesibility/hidden-legend.html

* platform/win/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Avoid unnecessary style recalcs on id attribute mutation.
https://bugs.webkit.org/show_bug.cgi?id=100395

Reviewed by Andreas Kling.

There is no need to invalidate element style on id attribute change if neither the old nor the new id were 
mentioned in any stylesheet. This is similar to the optimization we already have for class attributes.
        
Recalculating element style is expensive. It seems id attribute mutation is often used in scripts for purposes other than styling. 

* css/StyleResolver.cpp:
(WebCore::StyleResolver::hasSelectorForId):
(WebCore):
* css/StyleResolver.h:
* dom/Element.cpp:
(WebCore::makeIdForStyleResolution):
(WebCore):
(WebCore::Element::attributeChanged):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132516 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Add histograms to measure V8 work done during window close and navigation
https://bugs.webkit.org/show_bug.cgi?id=100358

Reviewed by Adam Barth.

* bindings/v8/ScriptController.cpp:
(WebCore::ScriptController::clearForClose):
(WebCore::ScriptController::clearWindowShell):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132517 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Composited/HW content have the red and blue channels inverted in DRT on Chromium Android
https://bugs.webkit.org/show_bug.cgi?id=98647

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-10-25
Reviewed by James Robinson.

WebLayerTreeView::compositeAndReadback() always gives back data in BGRA
ordering (i.e., the first byte in memory is blue). This matches Skia's
SkBitmap::kARGB_8888_Config ordering on all platforms except Android,
where Skia's native format is RGBA (i.e., red comes first in memory).

This mismatch causes layout test pixel comparison failures. This patch
fixes the problem by reordering the channels right after readback.

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132518 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.

Removing three fast/lists test failure expectations, the tests
were fixed in r132507.

* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132519 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a main resource type to the memory cache
https://bugs.webkit.org/show_bug.cgi?id=99864

Reviewed by Adam Barth.

No new tests, no functionality change.

* inspector/InspectorPageAgent.cpp:
(WebCore::hasTextContent):
(WebCore::InspectorPageAgent::cachedResourceType):
* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequest):
(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFail):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::CachedRawResource):
(WebCore::CachedRawResource::addAdditionalRequestHeaders):
(WebCore):
(WebCore::CachedRawResource::setShouldBufferData):
(WebCore::CachedRawResource::loader):
(WebCore::CachedRawResource::clear):
* loader/cache/CachedRawResource.h:
(WebCore):
(CachedRawResource):
* loader/cache/CachedResource.cpp:
(WebCore::defaultPriorityForResourceType):
(WebCore::cachedResourceTypeToTargetType):
(WebCore::CachedResource::updateResourceRequest):
(WebCore):
* loader/cache/CachedResource.h:
(WebCore::CachedResource::setResourceError):
(WebCore::CachedResource::resourceError):
(CachedResource):
(WebCore::CachedResource::ignoreForRequestCount):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::createResource):
(WebCore::CachedResourceLoader::requestRawResource):
(WebCore::CachedResourceLoader::checkInsecureContent):
(WebCore::CachedResourceLoader::canRequest):
(WebCore::CachedResourceLoader::determineRevalidationPolicy):
* loader/cache/CachedResourceLoader.h:
(CachedResourceLoader):
* platform/network/ResourceLoadPriority.h:
* platform/network/cf/ResourceRequestCFNet.h:
(WebCore::toResourceLoadPriority):
(WebCore::toHTTPPipeliningPriority):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132520 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CHROMIUM: Add a method to WebLayerTreeView API
https://bugs.webkit.org/show_bug.cgi?id=100291

Patch by Jonathan Backer <backer@chromium.org> on 2012-10-25
Reviewed by James Robinson.

Used to support browser compositor commit locks (crbug.com/136366).

* chromium/public/WebLayerTreeView.h:
(WebLayerTreeView):
(WebKit::WebLayerTreeView::setDeferCommits):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132521 268f45cc-cd09-0410-ab3c-d52691b4dbfc
do not multiply/demultiply colors when alpha is 255
https://bugs.webkit.org/show_bug.cgi?id=89246

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-10-25
Reviewed by Kenneth Rohde Christiansen.

Do not use colorFromPremultipliedARGB in getImageData nor
premultipliedARGBFromColor in putByteArray. Avoiding object creation
and function call make canvas.getImageData about 10% faster and
canvas.putImageData about 30% faster.

Also, we avoid multiplication/demultiplication computation when alpha
is 255. Result is the same, but when there is no transparency,
canvas.getImageData is about 4x faster, and canvas.putImageData is
about 2x faster.

No new tests. No change in behavior.

* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::getImageData):
(WebCore::ImageBuffer::putByteArray):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@132522 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.

Skipping the atspi-basic-hierarchy test case in the TestWebKitAccessibility
WebKit2 API test since the test is currently failing.

* Scripts/run-gtk-tests:
(TestRunner):


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