AX: Improve table-guessing heuristics
https://bugs.webkit.org/show_bug.cgi?id=107042

Reviewed by Chris Fleizach.

Source/WebCore:

Adds some more rules so that tables with cell borders, empty-cells,
col, colgroup, or >= 20 rows are all considered data tables, not
layout tables.

Test: accessibility/table-detection.html (modified)

* accessibility/AccessibilityTable.cpp:
(WebCore::AccessibilityTable::isDataTable):

Tools:

Implement parentElementCallback on Chromium to make testing easier.

* DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:
(WebTestRunner::AccessibilityUIElement::parentElementCallback):

LayoutTests:

Add tests for tables with cell borders, empty-cells,
col, colgroup, and >= 20 rows. Refactor the test to make it
easier to read the output and see whether it passed or not.

* accessibility/table-detection.html: Modified.
* platform/chromium/TestExpectations: Un-skip table-detection.html.
* platform/chromium/accessibility/table-detection-expected.txt: Added.
* platform/mac/accessibility/table-detection-expected.txt: Moved.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140181 268f45cc-cd09-0410-ab3c-d52691b4dbfc
PropertyCollection test fails on JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=106997

Reviewed by Kentaro Hara.

Source/WebCore: 

Made changes in CodeGeneratorJS.pm so that it can use
toJS(JSC::ExecState*, JSDOMGlobalObject*, PropertyNodeList*)
to wrap the object and return PropertyNodeList instead of NodeList.

Test: fast/dom/MicroData/propertiescollection-crash.html
      fast/dom/MicroData/properties-collection-namedgetter-with-invalid-name.html

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):

LayoutTests: 

Unskipping related testcases from TestExpectations.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Use new-style gesture scrolling events for fling and
for plugin scrolling: https://bugs.webkit.org/show_bug.cgi?id=106589

Reviewed by James Robinson.

https://bugs.webkit.org/show_bug.cgi?id=103952 modified touchscreen
scrolling to not use synthetic mouse wheel events. Update the fling facility
in WebViewImpl to use these events for touchscreen-initiated flings. Also
modify the WebPluginContainerImpl to scroll in response to touchscreen
scroll gestures if the plugin does not itself implement gesture events.

* src/WebPluginContainerImpl.cpp:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::WebViewImpl):
(WebKit::WebViewImpl::scrollBy): Handle fling callback conditionally based
on initiating device. Touchpad flings generate wheels. Touchscreen flings
use gesture events.
(WebKit::WebViewImpl::handleGestureEvent):
(WebKit::WebViewImpl::transferActiveWheelFlingAnimation):
* src/WebViewImpl.h:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140183 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Convert WebTransformOperations into pure virtual
https://bugs.webkit.org/show_bug.cgi?id=105553

Patch by Ali Juma <ajuma@chromium.org> on 2013-01-18
Reviewed by James Robinson.

Source/Platform:

* chromium/public/WebCompositorSupport.h:
(WebKit):
(WebKit::WebCompositorSupport::createTransformOperations):
(WebCompositorSupport):
* chromium/public/WebTransformKeyframe.h:
(WebTransformKeyframe):
* chromium/public/WebTransformOperations.h:
(WebKit::WebTransformOperations::~WebTransformOperations):
(WebTransformOperations):

Source/WebCore:

This removes the implementation of WebTransformOperations and updates
users to construct instances using a factory function. This also adds
the implementation of WebTransformKeyFrame.

No new tests, no change in functionality.

* WebCore.gypi:
* platform/chromium/support/WebTransformKeyframe.cpp: Copied from Source/Platform/chromium/public/WebTransformKeyframe.h.
(WebKit):
(WebKit::WebTransformKeyframe::WebTransformKeyframe):
(WebKit::WebTransformKeyframe::~WebTransformKeyframe):
(WebKit::WebTransformKeyframe::time):
(WebKit::WebTransformKeyframe::value):
* platform/chromium/support/WebTransformOperations.cpp: Removed.
* platform/graphics/chromium/AnimationTranslationUtil.cpp:
(WebCore::toWebTransformOperations):
(WebCore::WebTransformAnimationCurve):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140184 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Remove custom V8ScriptProfileNodeCustom::toV8()
https://bugs.webkit.org/show_bug.cgi?id=107245

Reviewed by Adam Barth.

V8ScriptProfileNodeCustom::toV8() needs not to be custom.
Furthermore, the current custom toV8() is wrong in that
it doesn't use a creationContext and it doesn't set a wrapper
class id. This is one of steps to avoiding ASSERT()s
that will be added in https://bugs.webkit.org/show_bug.cgi?id=107137 .

No tests. No change in behavior.

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/custom/V8ScriptProfileNodeCustom.cpp: Removed.
* inspector/ScriptProfileNode.idl:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140185 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactor isPowerOf2() and add getLSBSet()
https://bugs.webkit.org/show_bug.cgi?id=107306

Reviewed by Filip Pizlo.

Source/JavaScriptCore: 

Moved implementation of isPowerOf2() to new hasOneBitSet() in wtf/MathExtras.h.

* runtime/PropertyMapHashTable.h:
(JSC::isPowerOf2):

Source/WTF: 

Moved runtime/PropertyMapHashTable.h:PowerOf2() to new hasOneBitSet() and added getLSBSet().

* wtf/MathExtras.h:
(hasOneBitSet):
(getLSBSet):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[GTK] Enable indexed database for development builds
https://bugs.webkit.org/show_bug.cgi?id=107299

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-01-18
Reviewed by Gustavo Noronha Silva.

Tools:

* Scripts/webkitperl/FeatureList.pm: Enable indexed database by default
for GTK+ development builds.

LayoutTests:

* platform/gtk/TestExpectations: Skip failing IDB tests and mark
flaky tests as flaky.

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