WebKit-https.git
7 years agoUnreviewed, rolling out r128409.
commit-queue@webkit.org [Thu, 13 Sep 2012 08:41:21 +0000 (08:41 +0000)]
Unreviewed, rolling out r128409.
http://trac.webkit.org/changeset/128409
https://bugs.webkit.org/show_bug.cgi?id=96622

It broke Chromium browser_tests (Requested by tkent on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-13

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoTesting whether indexing type is ArrayWithArrayStorage should not compare against...
fpizlo@apple.com [Thu, 13 Sep 2012 08:40:00 +0000 (08:40 +0000)]
Testing whether indexing type is ArrayWithArrayStorage should not compare against ArrayWithArrayStorage
https://bugs.webkit.org/show_bug.cgi?id=96611

Reviewed by Gavin Barraclough.

* dfg/DFGRepatch.cpp:
(JSC::DFG::tryCacheGetByID):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::privateCompilePatchGetArrayLength):
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:

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

7 years ago[Qt] Add configuration for production builds
commit-queue@webkit.org [Thu, 13 Sep 2012 08:38:23 +0000 (08:38 +0000)]
[Qt] Add configuration for production builds
https://bugs.webkit.org/show_bug.cgi?id=96607

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Add configuration tweaks for production builds, to ease memory pressure with the GNU toolchain
and enable all-in-one-files optimizations.

* qmake/mkspecs/features/production_build.prf: Added.

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

7 years ago[Tests] We should have test for clicking spin button in iframe.
yosin@chromium.org [Thu, 13 Sep 2012 08:37:26 +0000 (08:37 +0000)]
[Tests] We should have test for clicking spin button in iframe.
https://bugs.webkit.org/show_bug.cgi?id=96612

Reviewed by Kent Tamura.

This patch adds two tests for clicking spin button in iframe for
input type "number" and input type "time" with multiple fields UI.

These tests are added for catching regression caused by r127876.

* fast/forms/number/number-spinbutton-click-in-iframe-expected.txt: Added.
* fast/forms/number/number-spinbutton-click-in-iframe.html: Added.
* fast/forms/resources/common-spinbutton-click-in-iframe.js: Added.
(getSpinButton): Extracts spin button in shadow DOM tree.
(mouseClick): Simulates mouse click.
(mouseMoveTo): Simulates mouse pointer move.
(runIFrameLoaded): Checking spin button clicked.
(testClickSpinButtonInIFrame): Creates and populates iframe.
* fast/forms/time-multiple-fields/time-multiple-fields-spinbutton-click-in-iframe-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-spinbutton-click-in-iframe.html: Added.

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

7 years ago[Qt] GStreamer detection does not work when cross-compiling
commit-queue@webkit.org [Thu, 13 Sep 2012 08:31:24 +0000 (08:31 +0000)]
[Qt] GStreamer detection does not work when cross-compiling
https://bugs.webkit.org/show_bug.cgi?id=96608

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

When cross-compiling it is not safe to just use system(pkg-config),
because there is a high probability that it will find packages in the
host system instead of in the target one. Instead use qmake's new
packagesExist() function that takes care of this delicate aspect of
cross compilation by setting PKG_CONFIG_SYSROOT_DIR and
PKG_CONFIG_LIBDIR accordingly.

* qmake/mkspecs/features/features.prf:

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

7 years ago[WK2][WTR] More efficient string handling in InjectedBundlePage
commit-queue@webkit.org [Thu, 13 Sep 2012 08:29:30 +0000 (08:29 +0000)]
[WK2][WTR] More efficient string handling in InjectedBundlePage
https://bugs.webkit.org/show_bug.cgi?id=96609

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-13
Reviewed by Kenneth Rohde Christiansen.

Update StringBuilder usage in InjectedBundlePage to follow
the latest recommandations for efficient string handling:
http://trac.webkit.org/wiki/EfficientStrings

This involves using appendLiteral() or appendNumber()
instead of append() whenever possible.

* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::dumpPath):
(WTR::rangeToStr):
(WTR::styleDecToStr):
(WTR::frameToStr):
(WTR::dumpResourceURL):
(WTR):
(WTR::dumpFrameDescriptionSuitableForTestResult):
(WTR::dumpRequestDescriptionSuitableForTestResult):
(WTR::dumpResponseDescriptionSuitableForTestResult):
(WTR::dumpErrorDescriptionSuitableForTestResult):
(WTR::InjectedBundlePage::didReceiveIntentForFrame):
(WTR::InjectedBundlePage::registerIntentServiceForFrame):
(WTR::InjectedBundlePage::didStartProvisionalLoadForFrame):
(WTR::InjectedBundlePage::didReceiveServerRedirectForProvisionalLoadForFrame):
(WTR::InjectedBundlePage::didCommitLoadForFrame):
(WTR::InjectedBundlePage::didFinishProgress):
(WTR::dumpFrameScrollPosition):
(WTR::dumpFrameText):
(WTR::dumpDescendantFramesText):
(WTR::InjectedBundlePage::didFinishLoadForFrame):
(WTR::InjectedBundlePage::didReceiveTitleForFrame):
(WTR::InjectedBundlePage::didCancelClientRedirectForFrame):
(WTR::InjectedBundlePage::willPerformClientRedirectForFrame):
(WTR::InjectedBundlePage::didFinishDocumentLoadForFrame):
(WTR::InjectedBundlePage::didHandleOnloadEventsForFrame):
(WTR::InjectedBundlePage::willSendRequestForFrame):
(WTR::InjectedBundlePage::didReceiveResponseForResource):
(WTR::InjectedBundlePage::didFinishLoadForResource):
(WTR::InjectedBundlePage::didFailLoadForResource):
(WTR::InjectedBundlePage::shouldCacheResponse):
(WTR::InjectedBundlePage::decidePolicyForNavigationAction):
(WTR::InjectedBundlePage::willAddMessageToConsole):
(WTR::InjectedBundlePage::willSetStatusbarText):
(WTR::InjectedBundlePage::willRunJavaScriptAlert):
(WTR::InjectedBundlePage::willRunJavaScriptConfirm):
(WTR::InjectedBundlePage::willRunJavaScriptPrompt):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR::InjectedBundlePage::shouldBeginEditing):
(WTR::InjectedBundlePage::shouldEndEditing):
(WTR::InjectedBundlePage::shouldInsertNode):
(WTR::InjectedBundlePage::shouldInsertText):
(WTR::InjectedBundlePage::shouldDeleteRange):
(WTR::InjectedBundlePage::shouldChangeSelectedRange):
(WTR::InjectedBundlePage::shouldApplyStyle):
(WTR::InjectedBundlePage::didBeginEditing):
(WTR::InjectedBundlePage::didEndEditing):
(WTR::InjectedBundlePage::didChange):
(WTR::InjectedBundlePage::didChangeSelection):
(WTR::InjectedBundlePage::supportsFullScreen):
(WTR::InjectedBundlePage::enterFullScreenForElement):
(WTR::InjectedBundlePage::exitFullScreenForElement):
(WTR::InjectedBundlePage::beganEnterFullScreen):
(WTR::InjectedBundlePage::beganExitFullScreen):
(WTR::InjectedBundlePage::closeFullScreen):
(WTR::dumpBackForwardListItem):
(WTR::InjectedBundlePage::dumpBackForwardList):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 08:19:35 +0000 (08:19 +0000)]
Unreviewed GTK gardening.

Rebaselining two tests after r128375.

* platform/gtk/TestExpectations:
* platform/gtk/fast/table/height-percent-test-vertical-expected.png: Added.
* platform/gtk/fast/table/height-percent-test-vertical-expected.txt:
* platform/gtk/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.

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

7 years ago[Qt][WK2] Memory leaks in Qt's TestRunner
commit-queue@webkit.org [Thu, 13 Sep 2012 08:14:52 +0000 (08:14 +0000)]
[Qt][WK2] Memory leaks in Qt's TestRunner
https://bugs.webkit.org/show_bug.cgi?id=96603

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-13
Reviewed by Csaba Osztrogonác.

Fix memory leaks in Qt's TestRunner code by adopting WKString
created with WKStringCreateWithUTF8CString().

* WebKitTestRunner/qt/TestControllerQt.cpp:
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):

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

7 years agoWeb Inspector: NMI: migrate core instrumentation code to WTF namespace
loislo@chromium.org [Thu, 13 Sep 2012 08:11:49 +0000 (08:11 +0000)]
Web Inspector: NMI: migrate core instrumentation code to WTF namespace
https://bugs.webkit.org/show_bug.cgi?id=96511

Reviewed by Yury Semikhatsky.

After moving core NMI code to WTF namespace I removed forward declarations
of MemoryObjectInfo and MemoryInstrumentation from WebCore headers and add
forward declaration into wtf/Forward.h

Source/WebCore:

* bindings/v8/DOMDataStore.h:
(WebCore):
* bindings/v8/ScriptProfiler.h:
(WebCore):
* bindings/v8/V8DOMMap.h:
(WebCore):
* bindings/v8/V8PerIsolateData.h:
(WebCore):
* bindings/v8/V8ValueCache.h:
(WebCore):
* css/CSSProperty.h:
* css/CSSRule.h:
(WebCore):
* css/CSSSelectorList.h:
(WebCore):
* css/CSSStyleDeclaration.h:
(WebCore):
* css/CSSStyleSheet.h:
(WebCore):
* css/CSSValue.h:
* css/MediaList.h:
(WebCore):
* css/MediaQuery.h:
* css/MediaQueryExp.h:
* css/StylePropertySet.h:
(WebCore):
* css/StyleResolver.h:
* css/StyleRule.h:
(WebCore):
* css/StyleRuleImport.h:
(WebCore):
* css/StyleSheetContents.h:
(WebCore):
* css/WebKitCSSKeyframeRule.h:
* css/WebKitCSSKeyframesRule.h:
(WebCore):
* css/WebKitCSSMixFunctionValue.h:
* dom/DocumentEventQueue.h:
(WebCore):
* dom/ElementAttributeData.h:
(WebCore):
* dom/Event.h:
(WebCore):
* dom/Node.h:
(WebCore):
* dom/WebCoreMemoryInstrumentation.cpp:
(WTF):
(WTF::WebCore::KURL):
* dom/WebCoreMemoryInstrumentation.h:
(WebCore):
(WTF):
* inspector/MemoryInstrumentationImpl.h:
* loader/DocumentLoader.h:
(WebCore):
* loader/FrameLoader.h:
(WebCore):
* loader/ResourceLoader.h:
(WebCore):
* loader/SubstituteData.h:
* loader/cache/CachedCSSStyleSheet.h:
(WebCore):
* loader/cache/CachedRawResource.h:
(WebCore):
* loader/cache/CachedResource.h:
(WebCore):
* loader/cache/CachedResourceHandle.h:
* loader/cache/CachedResourceLoader.h:
(WebCore):
* loader/cache/CachedScript.h:
(WebCore):
* loader/cache/CachedShader.h:
* loader/cache/CachedXSLStyleSheet.h:
(WebCore):
* loader/cache/MemoryCache.h:
(WebCore):
* page/Frame.h:
(WebCore):
* platform/SharedBuffer.h:
* platform/graphics/CrossfadeGeneratedImage.h:
(WebCore):
* platform/graphics/Image.h:
(WebCore):
* platform/network/FormData.h:
(WebCore):
* platform/network/ResourceRequestBase.h:
* platform/network/ResourceResponseBase.h:
* rendering/style/RenderStyle.h:
(WebCore):
* rendering/style/StyleRareInheritedData.h:
(WebCore):
* rendering/style/StyleRareNonInheritedData.h:
(WebCore):

Source/WTF:

* wtf/Forward.h:
(WTF):
* wtf/MemoryInstrumentation.h:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 08:07:59 +0000 (08:07 +0000)]
Unreviewed GTK gardening.

Removing expectation for fast/canvas/canvas-css-crazy.html, the test
was fixed in r128411.

Marking fast/events/popup-blocking-timers.html as slow and adding a
timeout expectation for touchadjustment/iframe-boundary.html.

* platform/gtk/TestExpectations:

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

7 years ago[CSSRegions][CSSOM] Implement Element.getRegionFlowRanges
commit-queue@webkit.org [Thu, 13 Sep 2012 07:51:00 +0000 (07:51 +0000)]
[CSSRegions][CSSOM] Implement Element.getRegionFlowRanges
https://bugs.webkit.org/show_bug.cgi?id=78493

Patch by Raul Hudea <rhudea@adobe.com> on 2012-09-13
Reviewed by David Hyatt.

Source/WebCore:

Implement the getRegionFlowRanges function from the CSS Regions spec. It is implemented by iterating over
the content nodes and figuring out which nodes have boundingBox intersecting the region box and figuring out
the start and end positions.

Tests: fast/regions/get-region-flow-ranges-absolute-pos.html
       fast/regions/get-region-flow-ranges-content-nodes.html
       fast/regions/get-region-flow-ranges-display-none.html
       fast/regions/get-region-flow-ranges-empty-regions.html
       fast/regions/get-region-flow-ranges-fixed-pos.html
       fast/regions/get-region-flow-ranges-horiz-bt.html
       fast/regions/get-region-flow-ranges-inline-only.html
       fast/regions/get-region-flow-ranges-text-vert-lr.html
       fast/regions/get-region-flow-ranges-text.html
       fast/regions/get-region-flow-ranges-vert-lr.html
       fast/regions/get-region-flow-ranges-vert-rl.html
       fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr.html
       fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr.html
       fast/regions/get-region-flow-ranges.html

* dom/Element.cpp:
(WebCore::Element::webkitGetRegionFlowRanges):
(WebCore):
* dom/Element.h:
* dom/Element.idl: added the webkitGetRegionFlowRanges method
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBlock::hasNextPage): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage): Added a slower path which works without LayoutState
(WebCore::RenderBlock::clampToStartAndEndRegions): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
* rendering/RenderBox.cpp:
(WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::RenderBox::containingBlockAvailableLineWidthInRegion): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
(WebCore::computeInlineStaticDistance): Use the logicalTopOfFlowThreadContentRect instead of offsetFromLogicalTopOfFirstPage (renamed)
* rendering/RenderNamedFlowThread.cpp:
(WebCore::isContainedInNodes):
(WebCore):
(WebCore::boxIntersectsRegion):
(WebCore::RenderNamedFlowThread::getRanges): returns a vector of Ranges that contains Node that are part of a region
* rendering/RenderNamedFlowThread.h:
(RenderNamedFlowThread):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::logicalTopOfFlowThreadContentRect): Returns the logical top of a rectangle inside the flow thread content
(WebCore):
(WebCore::RenderRegion::logicalBottomOfFlowThreadContentRect): Returns the logical bottom of a rectangle inside the flow thread content
(WebCore::RenderRegion::getRanges): proxy the getRanges call to its named flow thread
* rendering/RenderRegion.h:
(RenderRegion):
(WebCore::RenderRegion::logicalTopForFlowThreadContent): Renamed from offsetFromLogicalTopOfFirstPage
(WebCore::RenderRegion::logicalBottomForFlowThreadContent): Returns the logical bottom of the FlowThreadContent rect

LayoutTests:

Add tests for getRegionFlowRanges call.

* fast/regions/get-region-flow-ranges-absolute-pos-expected.txt: Added.
* fast/regions/get-region-flow-ranges-absolute-pos.html: Added.
* fast/regions/get-region-flow-ranges-content-nodes-expected.txt: Added.
* fast/regions/get-region-flow-ranges-content-nodes.html: Added.
* fast/regions/get-region-flow-ranges-display-none-expected.txt: Added.
* fast/regions/get-region-flow-ranges-display-none.html: Added.
* fast/regions/get-region-flow-ranges-empty-regions-expected.txt: Added.
* fast/regions/get-region-flow-ranges-empty-regions.html: Added.
* fast/regions/get-region-flow-ranges-expected.txt: Added.
* fast/regions/get-region-flow-ranges-fixed-pos-expected.txt: Added.
* fast/regions/get-region-flow-ranges-fixed-pos.html: Added.
* fast/regions/get-region-flow-ranges-horiz-bt-expected.txt: Added.
* fast/regions/get-region-flow-ranges-horiz-bt.html: Added.
* fast/regions/get-region-flow-ranges-inline-only-expected.txt: Added.
* fast/regions/get-region-flow-ranges-inline-only.html: Added.
* fast/regions/get-region-flow-ranges-text-expected.txt: Added.
* fast/regions/get-region-flow-ranges-text-vert-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-text-vert-lr.html: Added.
* fast/regions/get-region-flow-ranges-text.html: Added.
* fast/regions/get-region-flow-ranges-vert-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-vert-lr.html: Added.
* fast/regions/get-region-flow-ranges-vert-rl-expected.txt: Added.
* fast/regions/get-region-flow-ranges-vert-rl.html: Added.
* fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-writing-modes-rl-rb-lr.html: Added.
* fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr-expected.txt: Added.
* fast/regions/get-region-flow-ranges-writing-modes-tb-rl-lr.html: Added.
* fast/regions/get-region-flow-ranges.html: Added.
* fast/regions/resources/helper.js:
(getName):
(getRangeAt):
(compareArrays):

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

7 years agoCheck if WorkerContext is terminated in WebWorkerClientImple::openFileSystem call.
commit-queue@webkit.org [Thu, 13 Sep 2012 07:47:54 +0000 (07:47 +0000)]
Check if WorkerContext is terminated in WebWorkerClientImple::openFileSystem call.
https://bugs.webkit.org/show_bug.cgi?id=96601

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-09-13
Reviewed by Kent Tamura.

m_webFrame might be already deleted after terminateWorkerContext call.
This patch ensure it be NULL and change to avoid using it.

Test: fast/filesystem/workers/detached-frame-crash.html

* src/WebWorkerClientImpl.cpp:
(WebKit::WebWorkerClientImpl::terminateWorkerContext):
(WebKit::WebWorkerClientImpl::openFileSystem):

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

7 years ago[GTK][NRWT] Lower timeout value to 6 seconds (12 for debug configuration)
zandobersek@gmail.com [Thu, 13 Sep 2012 07:37:45 +0000 (07:37 +0000)]
[GTK][NRWT] Lower timeout value to 6 seconds (12 for debug configuration)
https://bugs.webkit.org/show_bug.cgi?id=96506

Reviewed by Dirk Pranke.

Tools:

Lower the timeout value to 6 seconds for release configuration and 12 seconds
for debug configuration. These are the same values the Chromium port uses.

Currently the value is lowered only for the DumpRenderTree, WebKitTestRunner (and
the layout tests under WebKit2 generally) requires more attention and gardening
than what the current effort produces.

The unit test is updated as well to test these changes.

* Scripts/webkitpy/layout_tests/port/gtk.py:
(GtkPort.default_timeout_ms):
* Scripts/webkitpy/layout_tests/port/gtk_unittest.py:
(GtkPortTest.test_default_timeout_ms):
(GtkPortTest.assertLinesEqual):

LayoutTests:

Create a new section for slow tests. Tests listed here pass (or at least
work as expected or reliably) but require more than 6 or 12 seconds to run.

More tests are added into the timeout section. These are primarily tests
that used to take half a minute to run just to be interrupted by the watchdog
in DumpRenderTree and were then reported as text mismatch failures. Now they
will be timing out which is (arguably) a more proper way for them to fail.

* platform/gtk/TestExpectations:

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

7 years ago[EFL][WK2] Make _ref() functions return the object
commit-queue@webkit.org [Thu, 13 Sep 2012 07:35:59 +0000 (07:35 +0000)]
[EFL][WK2] Make _ref() functions return the object
https://bugs.webkit.org/show_bug.cgi?id=96604

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-13
Reviewed by Gyuyoung Kim.

Make _ref() functions return the ref'd object to
make them more convenient to use. Also fix their
usage to make use of the newly returned value.

This change is consistent with eina_stringshare_ref()
in EFL and g_object_ref() in glib.

* UIProcess/API/efl/ewk_back_forward_list.cpp:
(createEinaList):
* UIProcess/API/efl/ewk_back_forward_list_item.cpp:
(ewk_back_forward_list_item_ref):
* UIProcess/API/efl/ewk_back_forward_list_item.h:
* UIProcess/API/efl/ewk_context.cpp:
(ewk_context_download_job_add):
* UIProcess/API/efl/ewk_download_job.cpp:
(ewk_download_job_ref):
(ewk_download_job_response_set):
* UIProcess/API/efl/ewk_download_job.h:
* UIProcess/API/efl/ewk_form_submission_request.cpp:
(ewk_form_submission_request_ref):
* UIProcess/API/efl/ewk_form_submission_request.h:
* UIProcess/API/efl/ewk_intent.cpp:
(ewk_intent_ref):
* UIProcess/API/efl/ewk_intent.h:
* UIProcess/API/efl/ewk_intent_service.cpp:
(ewk_intent_service_ref):
* UIProcess/API/efl/ewk_intent_service.h:
* UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
(ewk_navigation_policy_decision_ref):
* UIProcess/API/efl/ewk_navigation_policy_decision.h:
* UIProcess/API/efl/ewk_url_request.cpp:
(ewk_url_request_ref):
* UIProcess/API/efl/ewk_url_request.h:
* UIProcess/API/efl/ewk_url_response.cpp:
(ewk_url_response_ref):
* UIProcess/API/efl/ewk_url_response.h:
* UIProcess/API/efl/ewk_url_scheme_request.cpp:
(ewk_url_scheme_request_ref):
* UIProcess/API/efl/ewk_url_scheme_request.h:
* UIProcess/API/efl/ewk_view.cpp:
(ewk_view_resource_load_initiated):
* UIProcess/API/efl/ewk_web_resource.cpp:
(ewk_web_resource_ref):
* UIProcess/API/efl/ewk_web_resource.h:

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

7 years agofast/table/bad-replaced-sizing-preferred-logical-widths.html is failing on Mac, Chrom...
slewis@apple.com [Thu, 13 Sep 2012 07:19:47 +0000 (07:19 +0000)]
fast/table/bad-replaced-sizing-preferred-logical-widths.html is failing on Mac, Chromium-Mac, GTK, EFL.
https://bugs.webkit.org/show_bug.cgi?id=96594.

Unreviewed.

Update TestExpectations.

* platform/mac/TestExpectations:

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

7 years agonew test fast/canvas/canvas-css-crazy.html fails on Mac
abarth@webkit.org [Thu, 13 Sep 2012 07:16:08 +0000 (07:16 +0000)]
new test fast/canvas/canvas-css-crazy.html fails on Mac
https://bugs.webkit.org/show_bug.cgi?id=96582

Reviewed by Csaba Osztrogonác.

We represent 0 pointers with null, not undefined.

Test: fast/canvas/canvas-css-crazy.html

* bindings/js/JSCanvasRenderingContextCustom.cpp:
(WebCore::toJS):

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 06:59:42 +0000 (06:59 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

* platform/chromium-mac/fast/table/height-percent-test-vertical-expected.png:
Rebaseline for http://trac.webkit.org/changeset/128375.

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

7 years ago[Chromium] Fix cases where find-in-page doesn't send a final update
leandrogracia@chromium.org [Thu, 13 Sep 2012 06:59:14 +0000 (06:59 +0000)]
[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message.

Reviewed by Adam Barth.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Thu, 13 Sep 2012 06:55:10 +0000 (06:55 +0000)]
Unreviewed GTK gardening.

Removing crash expectations for accessibility tests that were added in
r128342. The offending commit was reverted in r128353.

Adding text mismatch expectations for two tests that probably require
rebaselining, failing since r128375.

Adding failure expectations for other regressions:
- fast/canvas/canvas-css-crazy.html after r128374
- fast/table/bad-replaced-sizing-preferred-logical-widths.html after r128389
- fast/js/primitive-property-access-edge-cases.html after r128400

* platform/gtk/TestExpectations:

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

7 years agoWeb Inspector: [Styles] Styles not updated when there is a heavy stream of DOM updates
apavlov@chromium.org [Thu, 13 Sep 2012 06:46:05 +0000 (06:46 +0000)]
Web Inspector: [Styles] Styles not updated when there is a heavy stream of DOM updates
https://bugs.webkit.org/show_bug.cgi?id=96482

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Update the Styles pane even if there is a pending rebuild update for the same current node.

* inspector/front-end/StylesSidebarPane.js:
(WebInspector.StylesSidebarPane.prototype._rebuildUpdate):

LayoutTests:

* inspector/styles/force-pseudo-state.html:
* inspector/styles/force-pseudo-state-expected.txt:

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

7 years agocss3/filters/custom/filter-fallback-to-software.html fails.
slewis@apple.com [Thu, 13 Sep 2012 06:44:40 +0000 (06:44 +0000)]
css3/filters/custom/filter-fallback-to-software.html fails.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

Update TestExpectations.

* platform/mac-wk2/TestExpectations:

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

7 years agoAX: svg:image not accessible
cfleizach@apple.com [Thu, 13 Sep 2012 05:54:31 +0000 (05:54 +0000)]
AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Unreviewed.

Build fix for non-SVG ports.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

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

7 years agoNew time input needs accessibility
yosin@chromium.org [Thu, 13 Sep 2012 05:50:07 +0000 (05:50 +0000)]
New time input needs accessibility
https://bugs.webkit.org/show_bug.cgi?id=96032

Reviewed by Chris Fleizach.

Source/WebCore:

This patch adds accessibility support into multiple fields time input
UI by setting "role" HTML attribute of DateTimeFieldElement to "spinbutton"
and changing ARIA attributes to post value change notification.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

Tests: fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html
       fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html

* html/shadow/DateTimeFieldElement.cpp:
(WebCore::DateTimeFieldElement::DateTimeFieldElement): Changed to set
"role" HTML attribute to "spinbutton".
(WebCore::DateTimeFieldElement::initialize): Changed to set new
parameter axHelpText to aria-help attribute and set aria-valuemax and
aria-valuemin attributes.
(WebCore::DateTimeFieldElement::updateVisibleValue): Changed to set
aria-valuetext and aria-valuenow attributes.
* html/shadow/DateTimeFieldElement.h:
(DateTimeFieldElement): Changed to add new parameter axHelpText to initialize().
* html/shadow/DateTimeFieldElements.cpp:
(WebCore::DateTimeAMPMFieldElement::create): Changed to add new argument.
(WebCore::DateTimeHourFieldElement::create): ditto.
(WebCore::DateTimeMillisecondFieldElement::create): ditto.
(WebCore::DateTimeMinuteFieldElement::create): ditto.
(WebCore::DateTimeSecondFieldElement::create): ditto.
* html/shadow/DateTimeNumericFieldElement.cpp:
(WebCore::DateTimeNumericFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeNumericFieldElement::minimum): ditto.
* html/shadow/DateTimeNumericFieldElement.h:
(DateTimeNumericFieldElement): Added maximum() and minimum() declarations.
* html/shadow/DateTimeSymbolicFieldElement.cpp:
(WebCore::DateTimeSymbolicFieldElement::maximum): Added for DateTimeFieldElement::initialize().
(WebCore::DateTimeSymbolicFieldElement::minimum): ditto.
* html/shadow/DateTimeSymbolicFieldElement.h:
(DateTimeSymbolicFieldElement): Added maximum() and minimum() declarations.

LayoutTests:

This patch adds two tests for checking accessibility functionalities
in multiple fields time input UI.

This patch affects ports which enable both ENABLE_INPUT_TYPE_TIME and
ENABLE_INPUT_TYPE_TIME_MULTIPLE_FIELDS.

* fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-aria-attributes.html: Added to check ARIA attributes used in multiple fields time input UI.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification-expected.txt: Added.
* fast/forms/time-multiple-fields/time-multiple-fields-ax-value-changed-notification.html: Added to check accessibility notification supports in multiple fields time input UI.

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

7 years agoUnreviewed, rolling out r127876.
commit-queue@webkit.org [Thu, 13 Sep 2012 05:09:58 +0000 (05:09 +0000)]
Unreviewed, rolling out r127876.
http://trac.webkit.org/changeset/127876
https://bugs.webkit.org/show_bug.cgi?id=96600

mouse click doesn't work for spin button if spin button in
iframe (Requested by yosin on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

.:

* Source/autotools/symbols.filter:

Source/WebCore:

* WebCore.exp.in:
* WebCore.order:
* dom/Document.cpp:
(WebCore::Document::nodesFromRect):
* dom/Document.h:
(Document):
* page/ContextMenuController.cpp:
(WebCore::ContextMenuController::createContextMenu):
* page/DragController.cpp:
(WebCore::DragController::canProcessDrag):
(WebCore::DragController::startDrag):
* page/EventHandler.cpp:
(WebCore::EventHandler::updateAutoscrollRenderer):
(WebCore::EventHandler::hitTestResultAtPoint):
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::bestClickableNodeForTouchPoint):
(WebCore::EventHandler::bestContextMenuNodeForTouchPoint):
(WebCore::EventHandler::bestZoomableAreaForTouchPoint):
(WebCore::EventHandler::handleTouchEvent):
* page/EventHandler.h:
(EventHandler):
* page/FocusController.cpp:
(WebCore::updateFocusCandidateIfNeeded):
* page/Frame.cpp:
(WebCore::Frame::visiblePositionForPoint):
(WebCore::Frame::documentAtPoint):
* page/TouchDisambiguation.cpp:
(WebCore::findGoodTouchTargets):
* rendering/HitTestRequest.h:
* testing/Internals.cpp:
(WebCore::Internals::nodesFromRect):

Source/WebKit/blackberry:

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::contextNode):
(BlackBerry::WebKit::WebPagePrivate::nodeForZoomUnderPoint):
(BlackBerry::WebKit::WebPagePrivate::handleMouseEvent):
(BlackBerry::WebKit::WebPage::nodeAtPoint):
* WebKitSupport/FatFingers.cpp:
(BlackBerry::WebKit::FatFingers::getNodesFromRect):
(BlackBerry::WebKit::FatFingers::getRelevantInfoFromPoint):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::visiblePositionForPointIgnoringClipping):

Source/WebKit/chromium:

* src/ContextMenuClientImpl.cpp:
(WebKit::selectMisspelledWord):
* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::dispatchDecidePolicyForNavigationAction):
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::characterIndexForPoint):
* src/WebPluginContainerImpl.cpp:
(WebKit::WebPluginContainerImpl::isRectTopmost):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleMouseUp):
(WebKit::WebViewImpl::computeBlockBounds):

Source/WebKit/efl:

* ewk/ewk_frame.cpp:
(ewk_frame_hit_test_new):

Source/WebKit/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary):
* WebView/WebHTMLView.mm:
(-[WebHTMLView elementAtPoint:allowShadowContent:]):

Source/WebKit/qt:

* Api/qwebframe.cpp:
(QWebFrame::hitTestContent):
* Api/qwebpage.cpp:
(QWebPagePrivate::handleSoftwareInputPanel):
(QWebPagePrivate::TouchAdjuster::findCandidatePointForTouch):
(QWebPage::updatePositionDependentActions):
* WebCoreSupport/FrameLoaderClientQt.cpp:
(WebCore::FrameLoaderClientQt::dispatchDecidePolicyForNavigationAction):

Source/WebKit/win:

* WebActionPropertyBag.cpp:
(WebActionPropertyBag::Read):
* WebView.cpp:
(WebView::handleContextMenuEvent):
(WebView::elementAtPoint):

Source/WebKit/wx:

* WebFrame.cpp:
(WebKit::WebFrame::HitTest):

Source/WebKit2:

* WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::handleContextMenuEvent):
(WebKit::WebPage::highlightPotentialActivation):
(WebKit::WebPage::findZoomableAreaForPoint):
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::characterIndexForPoint):
(WebKit::WebPage::performDictionaryLookupAtLocation):
(WebKit::WebPage::shouldDelayWindowOrderingEvent):
(WebKit::WebPage::acceptsFirstMouse):
* win/WebKit2.def:
* win/WebKit2CFLite.def:

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 04:33:34 +0000 (04:33 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96308

* platform/chromium-win/fast/table/height-percent-test-vertical-expected.png:
Rebaseline for http://trac.webkit.org/changeset/128375.

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

7 years agoRemoved a reference to a file that doesn’t participate in any target.
mitz@apple.com [Thu, 13 Sep 2012 04:21:04 +0000 (04:21 +0000)]
Removed a reference to a file that doesn’t participate in any target.

* WTF.xcodeproj/project.pbxproj: Removed the reference to
CONTRIBUTORS.pthreads-win32.

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

7 years agoJSC should have property butterflies
fpizlo@apple.com [Thu, 13 Sep 2012 04:18:52 +0000 (04:18 +0000)]
JSC should have property butterflies
https://bugs.webkit.org/show_bug.cgi?id=91933

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This changes the JSC object model. Previously, all objects had fast lookup for
named properties. Integer indexed properties were only fast if you used a
JSArray. With this change, all objects have fast indexed properties. This is
accomplished without any space overhead by using a bidirectional object layout,
aka butterflies. Each JSObject has a m_butterfly pointer where previously it
had a m_outOfLineStorage pointer. To the left of the location pointed to by
m_butterfly, we place all named out-of-line properties. To the right, we place
all indexed properties along with indexing meta-data. Though, some indexing
meta-data is placed in the 8-byte word immediately left of the pointed-to
location; this is in anticipation of the indexing meta-data being small enough
in the common case that m_butterfly always points to the first indexed
property.

This is performance neutral, except on tests that use indexed properties on
plain objects, where the speed-up is in excess of an order of magnitude.

One notable aspect of what this change brings is that it allows indexing
storage to morph over time. Currently this is only used to allow all non-array
objects to start out without any indexed storage. But it could be used for
some kinds of array type inference in the future.

* API/JSCallbackObject.h:
(JSCallbackObject):
* API/JSCallbackObjectFunctions.h:
(JSC::::getOwnPropertySlotByIndex):
(JSC):
(JSC::::getOwnNonIndexPropertyNames):
* API/JSObjectRef.cpp:
* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* bytecode/ArrayProfile.h:
(JSC):
(JSC::arrayModeFromStructure):
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitDirectPutById):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGAdjacencyList.h:
(JSC::DFG::AdjacencyList::AdjacencyList):
(AdjacencyList):
* dfg/DFGArrayMode.cpp:
(JSC::DFG::fromObserved):
(JSC::DFG::modeAlreadyChecked):
(JSC::DFG::modeToString):
* dfg/DFGArrayMode.h:
(DFG):
(JSC::DFG::modeUsesButterfly):
(JSC::DFG::modeIsJSArray):
(JSC::DFG::isInBoundsAccess):
(JSC::DFG::modeSupportsLength):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handleGetByOffset):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCSEPhase.cpp:
(JSC::DFG::CSEPhase::getPropertyStorageLoadElimination):
(JSC::DFG::CSEPhase::performNodeCSE):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::addNode):
(FixupPhase):
(JSC::DFG::FixupPhase::checkArray):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::byValIsPure):
* dfg/DFGNode.h:
(JSC::DFG::Node::Node):
(Node):
* dfg/DFGNodeType.h:
(DFG):
* dfg/DFGOperations.cpp:
(JSC::DFG::putByVal):
* dfg/DFGOperations.h:
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGRepatch.cpp:
(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::emitPutReplaceStub):
(JSC::DFG::emitPutTransitionStub):
(JSC::DFG::tryBuildPutByIdList):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):
(JSC::DFG::SpeculativeJIT::compileGetArrayLength):
(JSC::DFG::SpeculativeJIT::compileAllocatePropertyStorage):
(JSC::DFG::SpeculativeJIT::compileReallocatePropertyStorage):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
(JSC::DFG::SpeculativeJIT::emitAllocateBasicJSObject):
* dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGStructureCheckHoistingPhase.cpp:
(JSC::DFG::StructureCheckHoistingPhase::run):
* heap/CopiedSpace.h:
(CopiedSpace):
* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitAllocateBasicJSObject):
(JSC::JIT::emitAllocateBasicStorage):
(JSC::JIT::emitAllocateJSArray):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_array):
(JSC::JIT::emitSlow_op_new_array):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
(JSC::JIT::compilePutDirectOffset):
(JSC::JIT::compileGetDirectOffset):
(JSC::JIT::privateCompilePatchGetArrayLength):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* jsc.cpp:
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:
* runtime/Arguments.cpp:
(JSC::Arguments::deletePropertyByIndex):
(JSC::Arguments::defineOwnProperty):
* runtime/ArrayConstructor.cpp:
* runtime/ArrayConventions.h: Added.
(JSC):
(JSC::isDenseEnoughForVector):
(JSC::indexingHeaderForArray):
(JSC::baseIndexingHeaderForArray):
* runtime/ArrayPrototype.cpp:
(JSC::ArrayPrototype::create):
(JSC):
(JSC::ArrayPrototype::ArrayPrototype):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap):
(JSC::arrayProtoFuncEvery):
(JSC::arrayProtoFuncForEach):
(JSC::arrayProtoFuncSome):
(JSC::arrayProtoFuncReduce):
(JSC::arrayProtoFuncReduceRight):
* runtime/ArrayPrototype.h:
(ArrayPrototype):
(JSC::ArrayPrototype::createStructure):
* runtime/ArrayStorage.h: Added.
(JSC):
(ArrayStorage):
(JSC::ArrayStorage::ArrayStorage):
(JSC::ArrayStorage::from):
(JSC::ArrayStorage::butterfly):
(JSC::ArrayStorage::indexingHeader):
(JSC::ArrayStorage::length):
(JSC::ArrayStorage::setLength):
(JSC::ArrayStorage::vectorLength):
(JSC::ArrayStorage::setVectorLength):
(JSC::ArrayStorage::copyHeaderFromDuringGC):
(JSC::ArrayStorage::inSparseMode):
(JSC::ArrayStorage::lengthOffset):
(JSC::ArrayStorage::vectorLengthOffset):
(JSC::ArrayStorage::numValuesInVectorOffset):
(JSC::ArrayStorage::vectorOffset):
(JSC::ArrayStorage::indexBiasOffset):
(JSC::ArrayStorage::sparseMapOffset):
(JSC::ArrayStorage::sizeFor):
* runtime/Butterfly.h: Added.
(JSC):
(Butterfly):
(JSC::Butterfly::Butterfly):
(JSC::Butterfly::totalSize):
(JSC::Butterfly::fromBase):
(JSC::Butterfly::offsetOfIndexingHeader):
(JSC::Butterfly::offsetOfPublicLength):
(JSC::Butterfly::offsetOfVectorLength):
(JSC::Butterfly::indexingHeader):
(JSC::Butterfly::propertyStorage):
(JSC::Butterfly::indexingPayload):
(JSC::Butterfly::arrayStorage):
(JSC::Butterfly::offsetOfPropertyStorage):
(JSC::Butterfly::indexOfPropertyStorage):
(JSC::Butterfly::base):
* runtime/ButterflyInlineMethods.h: Added.
(JSC):
(JSC::Butterfly::createUninitialized):
(JSC::Butterfly::create):
(JSC::Butterfly::createUninitializedDuringCollection):
(JSC::Butterfly::base):
(JSC::Butterfly::growPropertyStorage):
(JSC::Butterfly::growArrayRight):
(JSC::Butterfly::resizeArray):
(JSC::Butterfly::unshift):
(JSC::Butterfly::shift):
* runtime/ClassInfo.h:
(MethodTable):
(JSC):
* runtime/IndexingHeader.h: Added.
(JSC):
(IndexingHeader):
(JSC::IndexingHeader::offsetOfIndexingHeader):
(JSC::IndexingHeader::offsetOfPublicLength):
(JSC::IndexingHeader::offsetOfVectorLength):
(JSC::IndexingHeader::IndexingHeader):
(JSC::IndexingHeader::vectorLength):
(JSC::IndexingHeader::setVectorLength):
(JSC::IndexingHeader::publicLength):
(JSC::IndexingHeader::setPublicLength):
(JSC::IndexingHeader::from):
(JSC::IndexingHeader::fromEndOf):
(JSC::IndexingHeader::propertyStorage):
(JSC::IndexingHeader::arrayStorage):
(JSC::IndexingHeader::butterfly):
* runtime/IndexingHeaderInlineMethods.h: Added.
(JSC):
(JSC::IndexingHeader::preCapacity):
(JSC::IndexingHeader::indexingPayloadSizeInBytes):
* runtime/IndexingType.h: Added.
(JSC):
(JSC::hasIndexingHeader):
* runtime/JSActivation.cpp:
(JSC::JSActivation::JSActivation):
(JSC::JSActivation::visitChildren):
(JSC::JSActivation::getOwnNonIndexPropertyNames):
* runtime/JSActivation.h:
(JSActivation):
(JSC::JSActivation::tearOff):
* runtime/JSArray.cpp:
(JSC):
(JSC::createArrayButterflyInDictionaryIndexingMode):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::defineOwnProperty):
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::put):
(JSC::JSArray::deleteProperty):
(JSC::JSArray::getOwnNonIndexPropertyNames):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToArguments):
(JSC::JSArray::compactForSorting):
* runtime/JSArray.h:
(JSC):
(JSArray):
(JSC::JSArray::JSArray):
(JSC::JSArray::length):
(JSC::JSArray::createStructure):
(JSC::JSArray::isLengthWritable):
(JSC::createArrayButterfly):
(JSC::JSArray::create):
(JSC::JSArray::tryCreateUninitialized):
* runtime/JSBoundFunction.cpp:
(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):
(JSC::JSBoundFunction::finishCreation):
* runtime/JSCell.cpp:
(JSC::JSCell::getOwnNonIndexPropertyNames):
(JSC):
* runtime/JSCell.h:
(JSCell):
* runtime/JSFunction.cpp:
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnPropertyDescriptor):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::defineOwnProperty):
* runtime/JSFunction.h:
(JSFunction):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::reset):
* runtime/JSONObject.cpp:
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):
* runtime/JSObject.cpp:
(JSC):
(JSC::JSObject::visitButterfly):
(JSC::JSObject::visitChildren):
(JSC::JSFinalObject::visitChildren):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::JSObject::put):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::enterDictionaryIndexingMode):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::createInitialArrayStorage):
(JSC::JSObject::ensureArrayStorageExistsAndEnterDictionaryIndexingMode):
(JSC::JSObject::putDirectAccessor):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::deletePropertyByIndex):
(JSC::JSObject::getOwnPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::JSObject::putIndexedDescriptor):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::allocateSparseIndexMap):
(JSC::JSObject::deallocateSparseIndexMap):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSObject::growOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::putDescriptor):
(JSC::JSObject::putDirectMayBeIndex):
(JSC::JSObject::defineOwnNonIndexProperty):
(JSC::JSObject::defineOwnProperty):
(JSC::JSObject::getOwnPropertySlotSlow):
* runtime/JSObject.h:
(JSC::JSObject::getArrayLength):
(JSObject):
(JSC::JSObject::getVectorLength):
(JSC::JSObject::putDirectIndex):
(JSC::JSObject::canGetIndexQuickly):
(JSC::JSObject::getIndexQuickly):
(JSC::JSObject::canSetIndexQuickly):
(JSC::JSObject::setIndexQuickly):
(JSC::JSObject::initializeIndex):
(JSC::JSObject::completeInitialization):
(JSC::JSObject::inSparseIndexingMode):
(JSC::JSObject::butterfly):
(JSC::JSObject::outOfLineStorage):
(JSC::JSObject::offsetForLocation):
(JSC::JSObject::indexingShouldBeSparse):
(JSC::JSObject::butterflyOffset):
(JSC::JSObject::butterflyAddress):
(JSC::JSObject::arrayStorage):
(JSC::JSObject::arrayStorageOrZero):
(JSC::JSObject::ensureArrayStorage):
(JSC::JSObject::checkIndexingConsistency):
(JSC::JSNonFinalObject::JSNonFinalObject):
(JSC):
(JSC::JSObject::setButterfly):
(JSC::JSObject::setButterflyWithoutChangingStructure):
(JSC::JSObject::JSObject):
(JSC::JSObject::inlineGetOwnPropertySlot):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::setStructureAndReallocateStorageIfNecessary):
(JSC::JSObject::putDirectWithoutTransition):
(JSC::offsetInButterfly):
(JSC::offsetRelativeToPatchedStorage):
(JSC::indexRelativeToBase):
(JSC::offsetRelativeToBase):
* runtime/JSPropertyNameIterator.cpp:
(JSC::JSPropertyNameIterator::create):
* runtime/JSSymbolTableObject.cpp:
(JSC::JSSymbolTableObject::getOwnNonIndexPropertyNames):
* runtime/JSSymbolTableObject.h:
(JSSymbolTableObject):
* runtime/JSTypeInfo.h:
(JSC):
(JSC::TypeInfo::interceptsGetOwnPropertySlotByIndexEvenWhenLengthIsNotZero):
(JSC::TypeInfo::overridesGetPropertyNames):
* runtime/LiteralParser.cpp:
(JSC::::parse):
* runtime/ObjectConstructor.cpp:
* runtime/ObjectPrototype.cpp:
(JSC::ObjectPrototype::ObjectPrototype):
(JSC):
* runtime/ObjectPrototype.h:
(ObjectPrototype):
* runtime/PropertyOffset.h:
(JSC::offsetInOutOfLineStorage):
* runtime/PropertyStorage.h: Added.
(JSC):
* runtime/PutDirectIndexMode.h: Added.
(JSC):
* runtime/RegExpMatchesArray.cpp:
(JSC::RegExpMatchesArray::RegExpMatchesArray):
(JSC):
(JSC::RegExpMatchesArray::create):
(JSC::RegExpMatchesArray::finishCreation):
* runtime/RegExpMatchesArray.h:
(RegExpMatchesArray):
(JSC::RegExpMatchesArray::createStructure):
* runtime/RegExpObject.cpp:
(JSC::RegExpObject::getOwnNonIndexPropertyNames):
* runtime/RegExpObject.h:
(RegExpObject):
* runtime/Reject.h: Added.
(JSC):
(JSC::reject):
* runtime/SparseArrayValueMap.cpp: Added.
(JSC):
* runtime/SparseArrayValueMap.h: Added.
(JSC):
(SparseArrayEntry):
(JSC::SparseArrayEntry::SparseArrayEntry):
(SparseArrayValueMap):
(JSC::SparseArrayValueMap::sparseMode):
(JSC::SparseArrayValueMap::setSparseMode):
(JSC::SparseArrayValueMap::lengthIsReadOnly):
(JSC::SparseArrayValueMap::setLengthIsReadOnly):
(JSC::SparseArrayValueMap::find):
(JSC::SparseArrayValueMap::remove):
(JSC::SparseArrayValueMap::notFound):
(JSC::SparseArrayValueMap::isEmpty):
(JSC::SparseArrayValueMap::contains):
(JSC::SparseArrayValueMap::size):
(JSC::SparseArrayValueMap::begin):
(JSC::SparseArrayValueMap::end):
* runtime/SparseArrayValueMapInlineMethods.h: Added.
(JSC):
(JSC::SparseArrayValueMap::SparseArrayValueMap):
(JSC::SparseArrayValueMap::~SparseArrayValueMap):
(JSC::SparseArrayValueMap::finishCreation):
(JSC::SparseArrayValueMap::create):
(JSC::SparseArrayValueMap::destroy):
(JSC::SparseArrayValueMap::createStructure):
(JSC::SparseArrayValueMap::add):
(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):
(JSC::SparseArrayEntry::get):
(JSC::SparseArrayEntry::getNonSparseMode):
(JSC::SparseArrayValueMap::visitChildren):
* runtime/StorageBarrier.h: Removed.
* runtime/StringObject.cpp:
(JSC::StringObject::putByIndex):
(JSC):
(JSC::StringObject::deletePropertyByIndex):
* runtime/StringObject.h:
(StringObject):
* runtime/StringPrototype.cpp:
* runtime/Structure.cpp:
(JSC::Structure::Structure):
(JSC::Structure::materializePropertyMap):
(JSC::Structure::nonPropertyTransition):
(JSC):
* runtime/Structure.h:
(Structure):
(JSC::Structure::indexingType):
(JSC::Structure::indexingTypeIncludingHistory):
(JSC::Structure::indexingTypeOffset):
(JSC::Structure::create):
* runtime/StructureTransitionTable.h:
(JSC):
(JSC::toAttributes):
(JSC::newIndexingType):
(JSC::StructureTransitionTable::Hash::hash):
* tests/mozilla/js1_6/Array/regress-304828.js:

Source/WebCore:

Teach the DOM that to intercept get/put on indexed properties, you now have
to override getOwnPropertySlotByIndex and putByIndex.

No new tests because no new behavior. One test was rebased because indexed
property iteration order now matches other engines (indexed properties always
come first).

* bindings/js/ArrayValue.cpp:
(WebCore::ArrayValue::get):
* bindings/js/JSBlobCustom.cpp:
(WebCore::JSBlobConstructor::constructJSBlob):
* bindings/js/JSCanvasRenderingContext2DCustom.cpp:
(WebCore::JSCanvasRenderingContext2D::setWebkitLineDash):
* bindings/js/JSDOMStringListCustom.cpp:
(WebCore::toDOMStringList):
* bindings/js/JSDOMStringMapCustom.cpp:
(WebCore::JSDOMStringMap::deletePropertyByIndex):
(WebCore):
* bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindow::putByIndex):
(WebCore::JSDOMWindow::deletePropertyByIndex):
* bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::getOwnPropertySlotByIndex):
(WebCore):
(WebCore::JSDOMWindowShell::putByIndex):
(WebCore::JSDOMWindowShell::deletePropertyByIndex):
* bindings/js/JSDOMWindowShell.h:
(JSDOMWindowShell):
* bindings/js/JSHistoryCustom.cpp:
(WebCore::JSHistory::deletePropertyByIndex):
(WebCore):
* bindings/js/JSInspectorFrontendHostCustom.cpp:
(WebCore::populateContextMenuItems):
* bindings/js/JSLocationCustom.cpp:
(WebCore::JSLocation::deletePropertyByIndex):
(WebCore):
* bindings/js/JSStorageCustom.cpp:
(WebCore::JSStorage::deletePropertyByIndex):
(WebCore):
* bindings/js/JSWebSocketCustom.cpp:
(WebCore::JSWebSocketConstructor::constructJSWebSocket):
* bindings/js/ScriptValue.cpp:
(WebCore::jsToInspectorValue):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::serialize):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bridge/runtime_array.cpp:
(JSC::RuntimeArray::RuntimeArray):
* bridge/runtime_array.h:
(JSC::RuntimeArray::createStructure):
(RuntimeArray):

LayoutTests:

Modify the JSON test to indicate that iterating over properties now returns
indexed properties first. This is a behavior change that makes us more
compliant with other implementations.

Also check in new expected file for the edge cases of indexed property access
with prototype accessors. This changeset introduces a known regression in that
department, which is tracked here: https://bugs.webkit.org/show_bug.cgi?id=96596

* fast/js/resources/JSON-stringify.js:
* platform/mac/fast/js/primitive-property-access-edge-cases-expected.txt: Added.

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

7 years agoAdd SVN mirror handling feature to build.webkit.org
ossy@webkit.org [Thu, 13 Sep 2012 04:18:43 +0000 (04:18 +0000)]
Add SVN mirror handling feature to build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=85887

Reviewed by Dirk Pranke.

* BuildSlaveSupport/build.webkit.org-config/config.json: Add SVN mirrors for Qt buildslaves hosted in Szeged.
* BuildSlaveSupport/build.webkit.org-config/master.cfg:
(ConfigureBuild.__init__): Add SVNMirror property to be able to watch which slaves use which mirror on build.webkit.org.
(ConfigureBuild.start):
(CheckOutSource.__init__): Set baseURL to the SVNMirror or the default http://svn.webkit.org/repository/webkit/
(WaitForSVNServer): Add new buildstep for waiting the SVNMirror to be in sync with http://svn.webkit.org/repository/webkit/
(Factory.__init__):
(BuildFactory.__init__):
(TestFactory.__init__):
(BuildAndTestFactory.__init__):
(BuildAndPerfTestFactory.__init__):
(BuildAndPerfTestWebKit2Factory.__init__):
(DownloadAndPerfTestFactory.__init__):
(DownloadAndPerfTestWebKit2Factory.__init__):
(loadBuilderConfig): Use kwargs instead of args to be able to add the optional SVNMirror factory argument.
* BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
(SVNMirrorTest):
(SVNMirrorTest.setUp): Load config.json once at startup.
(SVNMirrorTest.get_SVNMirrorFromConfig): Get the SVNMirror from config.json for a given buildslave.
(SVNMirrorTest.test_CheckOutSource): Compare CheckOutSource.baseURL with SVNMirror in config.json for all builders
* BuildSlaveSupport/build.webkit.org-config/wait-for-SVN-server.py: Added.
(getLatestSVNRevision): Get the latest SVN revison from the given server.
(waitForSVNRevision): Wait until the given SVN revision is committed to the given server. It doesn't wait if the
                      SVN revision is empty (force build triggered without revision) or the server is unavailable.

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

7 years ago[Chromium] Test expectation update
tkent@chromium.org [Thu, 13 Sep 2012 03:22:17 +0000 (03:22 +0000)]
[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96594

* platform/chromium/TestExpectations:
fast/table/bad-replaced-sizing-preferred-logical-widths.html fails on Mac.

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

7 years agoFix indexeddb/basics-shared-workers-expected.txt
dgrogan@chromium.org [Thu, 13 Sep 2012 03:00:13 +0000 (03:00 +0000)]
Fix indexeddb/basics-shared-workers-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=96591

Reviewed by Kent Tamura.

Needed to pass IndexedDBLayoutTest.BasicTests in content_browsertests
after 128370.

* storage/indexeddb/basics-shared-workers-expected.txt:

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

7 years agofast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html fails on...
slewis@apple.com [Thu, 13 Sep 2012 02:20:24 +0000 (02:20 +0000)]
fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html fails on Mac.
https://bugs.webkit.org/show_bug.cgi?id=96583

Unreviewed.

Update TestExpectations

* platform/mac/TestExpectations:

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

7 years ago[WK2][WTR] Set waitUntilDone watchdog timer value equal to WK1.
commit-queue@webkit.org [Thu, 13 Sep 2012 02:13:06 +0000 (02:13 +0000)]
[WK2][WTR] Set waitUntilDone watchdog timer value equal to WK1.
https://bugs.webkit.org/show_bug.cgi?id=81606

Patch by Kangil Han <kangil.han@samsung.com> on 2012-09-12
Reviewed by Tim Horton.

Tools:

6 seconds is harsh for some jquery test cases.
Therefore, adjust the value to match DumpRenderTree.

* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR):

LayoutTests:

Unskip jQuery tests which will now consistently pass due to the increased waitUntilDone timeout.

* platform/wk2/Skipped:

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

7 years agoIntroduce ValidationMessageClient
tkent@chromium.org [Thu, 13 Sep 2012 01:02:29 +0000 (01:02 +0000)]
Introduce ValidationMessageClient
https://bugs.webkit.org/show_bug.cgi?id=96238

Reviewed by Hajime Morita.

ValidationMessageClient interface is responsible to operate validation
message UI for interactive form validation. If a Page object has a
ValidtionMessageClient, ValidationMessae class uses
ValidtionMessageClient instead of Shadow DOM.

No new tests because of no behavior changes.

* GNUmakefile.list.am: Add ValidtionMessageClient.h.
* Target.pri: ditto.
* WebCore.gypi: ditto.
* WebCore.xcodeproj/project.pbxproj: ditto.

* html/ValidationMessage.cpp:
(WebCore::ValidationMessage::~ValidationMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::validationMessageClient):
A helper function to get Page::validationMessageClient.
(WebCore::ValidationMessage::updateValidationMessage):
Adding title attribute is not neeeded if ValidationMessageClient is
used. It shoudl be handled in a ValidtionMessageClient implementation.
(WebCore::ValidationMessage::setMessage):
Show a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::setMessageDOMAndStartTimer):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::buildBubbleTree): ditto.
(WebCore::ValidationMessage::requestToHideMessage):
Hide a validation message via ValidationMessageClient if it is available.
(WebCore::ValidationMessage::shadowTreeContains):
Always returns false if ValidationMessageClient is available, it means no Shadow DOM.
(WebCore::ValidationMessage::deleteBubbleTree):
Add an assertion that ValidationMessageClient should not be available.
(WebCore::ValidationMessage::isVisible):
Ask ValidationMessageClient for visibility if it is available.
* html/ValidationMessage.h:
(WebCore): Add a comment.
(ValidationMessage): Add validtionMessageClient member function.

* page/Page.cpp:
(WebCore::Page::Page): Initialize m_validationMessageClient.
(WebCore::Page::PageClients::PageClients):
Initialize validationMessageClient member with 0.
So, existing code makes Page::m_validationMessageClient 0.
* page/Page.h:
(PageClients): Add validationMessageClient member.
(WebCore::Page::validationMessageClient):
Added. Accessor for m_validationMessageClient.
(Page): Add m_validationMessageClient.

* page/Settings.h:
(Settings): Updated the comment for setInteractiveFormValidationEnabled.

* page/ValidationMessageClient.h: Added.

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

7 years ago[EFL] Support download attribute feature
commit-queue@webkit.org [Thu, 13 Sep 2012 00:56:49 +0000 (00:56 +0000)]
[EFL] Support download attribute feature
https://bugs.webkit.org/show_bug.cgi?id=96462

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-09-12
Reviewed by Gyuyoung Kim.

.:

* Source/cmake/OptionsEfl.cmake: Enable DOWNLOAD_ATTRIBUTE feature.

Source/WebKit/efl:

Add suggested_name field on _Ewk_Download and set it on startDownload
to get suggested name passed as a download attribute.

* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::download):
(WebCore::FrameLoaderClientEfl::startDownload):
* ewk/ewk_view.h:

Tools:

Enable DOWNLOAD_ATTRIBUTE feature for EFL port,
and add "download,request" callback to the DumpRenderTree for EFL.

* DumpRenderTree/efl/DumpRenderTreeChrome.cpp:
(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onDownloadRequest):
* DumpRenderTree/efl/DumpRenderTreeChrome.h:
(DumpRenderTreeChrome):
* Scripts/webkitperl/FeatureList.pm:

LayoutTests:

* platform/efl/Skipped: Unskip test cases related to download attributes.
* platform/efl-wk2/TestExpectations: Add test cases related to download attributes because they are still failed for WK2

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

7 years agocss3/filters/custom/filter-fallback-to-software.html fails on Debug WK2.
slewis@apple.com [Thu, 13 Sep 2012 00:52:59 +0000 (00:52 +0000)]
css3/filters/custom/filter-fallback-to-software.html fails on Debug WK2.
https://bugs.webkit.org/show_bug.cgi?id=94372.

Unreviewed.

* platform/mac-wk2/TestExpectations:

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

7 years agoReduce parallism on the wk2 testers.
slewis@apple.com [Thu, 13 Sep 2012 00:49:47 +0000 (00:49 +0000)]
Reduce parallism on the wk2 testers.
https://bugs.webkit.org/show_bug.cgi?id=95906

Reviewed by Dirk Pranke.

The wk2 testers on Mountain Lion are getting stuck and timing out.  The problem appears to be due to
resource contention.  Reducing the number of processes alleviates the issue.

Starting by reducing 25%.

* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.default_child_processes):

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

7 years ago[V8] OOM in Workers due to external memory retention.
dimich@chromium.org [Thu, 13 Sep 2012 00:43:18 +0000 (00:43 +0000)]
[V8] OOM in Workers due to external memory retention.
https://bugs.webkit.org/show_bug.cgi?id=96459

Reviewed by David Levin.

Added memory checks to the locations in Workers code that are about to invoke the next JS block.

* bindings/v8/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
* bindings/v8/V8GCController.cpp:
(WebCore):
(WebCore::workingSetEstimateMBMutex): Added a Mutex-protected accessors to a static caching WS estimate.
(WebCore::V8GCController::gcEpilogue):
(WebCore::V8GCController::checkMemoryUsage):
* bindings/v8/V8GCController.h:
(V8GCController):
* bindings/v8/V8WorkerContextEventListener.cpp:
(WebCore::V8WorkerContextEventListener::callListenerFunction):
* bindings/v8/WorkerContextExecutionProxy.cpp:
(WebCore::WorkerContextExecutionProxy::evaluate):

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

7 years agoREGRESSION(r122501): replaced elements with percent width are wrongly size when inser...
jchaffraix@webkit.org [Thu, 13 Sep 2012 00:30:07 +0000 (00:30 +0000)]
REGRESSION(r122501): replaced elements with percent width are wrongly size when inserted inside an auto-table layout
https://bugs.webkit.org/show_bug.cgi?id=95892

Reviewed by Ojan Vafai.

Source/WebCore:

r122501 exposed an issue in how preferred logical widths are computed on replaced objects. The code relies on the
logical width computation methods. Unfortunately the previous code relies on the layout information, which may not
be up-to-date during preferred logical width computation.

Test: fast/table/bad-replaced-sizing-preferred-logical-widths.html
      fast/replaced/vertical-writing-mode-max-logical-width.html

* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Added this helper method. The main difference with the old code is that it handles the percent logical width
properly before calling the old code path. This is not totally right but before forking the whole code, it's
better to have more evidence that forking preferred logical widths and logical width computation is the way to go.

(WebCore::RenderReplaced::computePreferredLogicalWidths):
Changed to call computeMaxPreferredLogicalWidth. Also fixed an existing bug in vertical-writing modes where we would
add the wrong paddings and borders.

* rendering/RenderReplaced.h:
(RenderReplaced): Added computeMaxPreferredLogicalWidth.

LayoutTests:

* fast/replaced/vertical-writing-mode-max-logical-width-replaced-expected.txt: Added.
* fast/replaced/vertical-writing-mode-max-logical-width-replaced.html: Added.
* fast/table/bad-replaced-sizing-preferred-logical-widths-expected.txt: Added.
* fast/table/bad-replaced-sizing-preferred-logical-widths.html: Added.
* fast/table/resources/iframe.html: Added.

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

7 years agoAssert in NetscapePlugin::destroy() with async plugin init
beidson@apple.com [Thu, 13 Sep 2012 00:18:07 +0000 (00:18 +0000)]
Assert in NetscapePlugin::destroy() with async plugin init
<rdar://problem/12277595> and https://bugs.webkit.org/show_bug.cgi?id=96576

Reviewed by Anders Carlsson.

Source/WebKit2:

Most of the NPN_* API calls have a plug-in protector during the calls.
NPN_Invoke and NPN_InvokeDefault do not.

* WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_Invoke): Protect the plug-in during this call.
(WebKit::NPN_InvokeDefault): Ditto.

Tools:

Expose NPN_Invoke to plug-in tests:
* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
(PluginTest::NPN_Invoke):
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
(PluginTest):

Add a test that uses NPN_Invoke on the window object from inside NPP_New to remove the plug-in element:
* DumpRenderTree/TestNetscapePlugIn/Tests/InvokeDestroysPluginWithinNPP_New.cpp: Added.
(InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::InvokeDestroysPluginWithinNPP_New):
(InvokeDestroysPluginWithinNPP_New::NPP_New):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

LayoutTests:

* platform/mac-wk2/plugins/destroy-during-async-npp-new-expected.txt: Added.
* platform/mac-wk2/plugins/destroy-during-async-npp-new.html: Added.

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

7 years ago[CSS Shaders] Cached validated programs are destroyed and recreated when there is...
commit-queue@webkit.org [Thu, 13 Sep 2012 00:17:23 +0000 (00:17 +0000)]
[CSS Shaders] Cached validated programs are destroyed and recreated when there is only one custom filter animating
https://bugs.webkit.org/show_bug.cgi?id=96563

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
Reviewed by Dean Jackson.

Before this patch, in FilterEffectRenderer::build, we would first clear the old effects and
then create the new effects.

Suppose we have one FECustomFilter animating on the page. This FECustomFilter holds the last
reference to the cached validated program. Before this patch, we would first destroy the old
FECustomFilter, which would destroy its cached validated program. Then, we would create the
new FECustomFilter and have to recreate the validated program.

This patch makes FilterEffectRenderer::build keep the old effects around until we're
done creating the new effects. This way, we won't recreate validated programs.

No new tests. We can't test this because the validated program cache is not exposed to web
pages.

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):

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

7 years agorefactor TestExpectations tokenization slightly in preparation for the new syntax
dpranke@chromium.org [Thu, 13 Sep 2012 00:13:06 +0000 (00:13 +0000)]
refactor TestExpectations tokenization slightly in preparation for the new syntax
https://bugs.webkit.org/show_bug.cgi?id=96564

Reviewed by Ojan Vafai.

This change changes how we will tokenize/lex the
TestExpectations files, in preparation for supporting both the
old syntax and the new one. This change by itself should be a
no-op.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._tokenize_line):
(TestExpectationParser):
(TestExpectationParser._tokenize_line_using_old_format):
(TestExpectationParser._tokenize_line_using_new_format):

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

7 years agoremove unused testexpectations editing code from webkitpy, garden-o-matic
dpranke@chromium.org [Thu, 13 Sep 2012 00:09:32 +0000 (00:09 +0000)]
remove unused testexpectations editing code from webkitpy, garden-o-matic
https://bugs.webkit.org/show_bug.cgi?id=96562

Reviewed by Adam Barth.

This code was prototyped but never fully realized. Removing
until it reanimates :).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
* Scripts/webkitpy/layout_tests/controllers/test_expectations_editor.py: Removed.
* Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py: Removed.
* Scripts/webkitpy/tool/servers/gardeningserver.py:
(BuildCoverageExtrapolator.extrapolate_test_configurations):
(GardeningHTTPRequestHandler._run_webkit_patch):
(GardeningHTTPRequestHandler.ping):
* Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:
(BuildCoverageExtrapolatorTest.test_extrapolate):
(GardeningServerTest.test_rebaseline_new_port):

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

7 years agoRebaseline chromium-mac pixel results for 128375
jamesr@google.com [Thu, 13 Sep 2012 00:04:41 +0000 (00:04 +0000)]
Rebaseline chromium-mac pixel results for 128375

* platform/chromium-mac-snowleopard/fast/table/height-percent-test-vertical-expected.png:
* platform/chromium-mac/fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.

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

7 years agoflex item sized incorrectly in a column flexbox with height set via top/bottom
tony@chromium.org [Wed, 12 Sep 2012 23:48:43 +0000 (23:48 +0000)]
flex item sized incorrectly in a column flexbox with height set via top/bottom
https://bugs.webkit.org/show_bug.cgi?id=94855

Reviewed by Ojan Vafai.

Source/WebCore:

Stop using computeContentLogicalHeight() to get the height of the flexbox and
use computeLogicalHeight directly.  This properly takes into account out of flow
positioning.

We can actually refactor some of this into common code, but I want to do that as
a separate pass.

Test: css3/flexbox/columns-height-set-via-top-bottom.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems): Fix out of date comment.
(WebCore::RenderFlexibleBox::mainAxisContentExtent): Use computeLogicalHeight instead of computeContentLogicalHeight.
This code actually never gets used-- I'll try to remove in a follow up.
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace): Use computeLogicalHeight instead of computeContentLogicalHeight.
(WebCore::RenderFlexibleBox::lineBreakLength): Use computeLogicalHeight instead of computeContentLogicalHeight.

LayoutTests:

Test where the height of a column flexbox is set via top and bottom.

* css3/flexbox/columns-height-set-via-top-bottom-expected.txt: Added.
* css3/flexbox/columns-height-set-via-top-bottom.html: Added.

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

7 years ago[V8] V8DOMWrapper::perContextData has no callers and can be removed
abarth@webkit.org [Wed, 12 Sep 2012 23:44:33 +0000 (23:44 +0000)]
[V8] V8DOMWrapper::perContextData has no callers and can be removed
https://bugs.webkit.org/show_bug.cgi?id=96574

Reviewed by Kentaro Hara.

* bindings/v8/V8DOMWrapper.cpp:
* bindings/v8/V8DOMWrapper.h:
(WebCore::V8DOMWrapper::getCachedWrapper):

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

7 years agoRemove unused bot, apple-xserve-1.
lforschler@apple.com [Wed, 12 Sep 2012 23:36:35 +0000 (23:36 +0000)]
Remove unused bot, apple-xserve-1.
https://bugs.webkit.org/show_bug.cgi?id=96570

Reviewed by Stephanie Lewis.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

7 years ago[CSS Shaders] Implement transform parameter animations for CSS Custom Filters
achicu@adobe.com [Wed, 12 Sep 2012 23:33:41 +0000 (23:33 +0000)]
[CSS Shaders] Implement transform parameter animations for CSS Custom Filters
https://bugs.webkit.org/show_bug.cgi?id=94980

Reviewed by Dean Jackson.

Based on patch from Joshua Netterfield <jnetterfield@rim.com>.

Source/WebCore:

According to Section 39.2 of Filter Effects 1.0 Editor's draft
(https://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html), animations
of transforms should be handled following the CSS3 transform interpolation
rules. This patch implements this functionality.

Test: css3/filters/custom/custom-filter-transforms-animation.html

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
(WebCore):
* platform/graphics/filters/CustomFilterNumberParameter.h:
(WebCore::CustomFilterNumberParameter::blend):
* platform/graphics/filters/CustomFilterOperation.cpp:
(WebCore::blendCustomFilterParameters):
(WebCore::CustomFilterOperation::blend):
* platform/graphics/filters/CustomFilterOperation.h:
(WebCore):
(WebCore::CustomFilterOperation::blendingNeedsRendererSize): Some filters need the box size, so that they could compute
Transforms. Right now only the CustomFilterOperation needs that, but I've implemented using this generic function.
(CustomFilterOperation):
* platform/graphics/filters/CustomFilterParameter.h:
(CustomFilterParameter):
* platform/graphics/filters/CustomFilterTransformParameter.h:
(CustomFilterTransformParameter):
(WebCore::CustomFilterTransformParameter::blend):
* platform/graphics/filters/FilterOperation.h:
(WebCore::FilterOperation::FilterOperation::blend):
(FilterOperation):
(WebCore::FilterOperation::FilterOperation::blendingNeedsRendererSize):
* platform/graphics/transforms/TransformOperations.cpp: Extracted the blending functions from CSSPropertyAnimation.cpp
so that they could be reused from other classes.
(WebCore::TransformOperations::blendByMatchingOperations):
(WebCore):
(WebCore::TransformOperations::blendByUsingMatrixInterpolation): Used when the TransformOperations do not match.
(WebCore::TransformOperations::blend): Uses when the caller doesn't know whether the TransformOperations match or not.
* platform/graphics/transforms/TransformOperations.h:
(TransformOperations):

LayoutTests:

Added test transform animations in css3/filters/custom/custom-filter-transform-animation.html.

* animations/resources/animation-test-helpers.js:
(customFilterParameterMatch): Extracted the parameter matching from filterParametersMatch and added function parameters matching.
This should work for all functions that have number parameters, ie. arrays, mat4 functions.

(filterParametersMatch):
* css3/filters/custom/custom-filter-transforms-animation-expected.txt: Added.
* css3/filters/custom/custom-filter-transforms-animation.html: Added.
* css3/filters/resources/custom-filter-parser.js: Fixed function parsing.
(TokenStream.prototype.skip):

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

7 years agoIndexedDB: Use ScriptValue instead of SerializedScriptValue when possible
commit-queue@webkit.org [Wed, 12 Sep 2012 23:20:22 +0000 (23:20 +0000)]
IndexedDB: Use ScriptValue instead of SerializedScriptValue when possible
https://bugs.webkit.org/show_bug.cgi?id=94023

Patch by Alec Flett <alecflett@chromium.org> on 2012-09-12
Reviewed by Kentaro Hara.

Transition the put/add/update methods to accept direct ScriptValue
objects rather than SerializedScriptValues, to eliminate lots of
redundant deserialization/serialization steps while storing
values.

Also see https://bugs.webkit.org/show_bug.cgi?id=95409 for
followup get/openCursor work, following this.

No new tests, this is a performance refactor of core IDB
functionality. Most existing tests cover correctness. Tests that
might fail include:

storage/indexeddb/objectstore-basics.html
storage/indexeddb/keypath-basics.html
storage/indexeddb/index-basics.html

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::update):
* Modules/indexeddb/IDBCursor.h:
(IDBCursor):
* Modules/indexeddb/IDBCursor.idl:
* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::generateIndexKeysForValue):
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(WebCore):
* Modules/indexeddb/IDBObjectStore.h:
(WebCore::IDBObjectStore::add):
(WebCore::IDBObjectStore::put):
(IDBObjectStore):
* Modules/indexeddb/IDBObjectStore.idl:
* bindings/v8/IDBBindingUtilities.cpp:
(WebCore):
(WebCore::createIDBKeyFromScriptValueAndKeyPath):
(WebCore::deserializeIDBValue):
(WebCore::canInjectIDBKeyIntoScriptValue):
* bindings/v8/IDBBindingUtilities.h:
(WebCore):

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

7 years ago[chromium] Remove unused WebGestureEvent fields
commit-queue@webkit.org [Wed, 12 Sep 2012 23:17:00 +0000 (23:17 +0000)]
[chromium] Remove unused WebGestureEvent fields
https://bugs.webkit.org/show_bug.cgi?id=95496

Patch by Rick Byers <rbyers@chromium.org> on 2012-09-12
Reviewed by Adam Barth.

Remove the no-longer used fields from WebGestureEvent, now that
chromium has been updated to use the per-event-type fields instead.
This depends on crrev.com/156346 in chromium.

* public/WebInputEvent.h:
(WebKit::WebGestureEvent::WebGestureEvent):
* public/android/WebInputEventFactory.h:
* src/WebInputEvent.cpp:
(SameSizeAsWebGestureEvent):
* src/android/WebInputEventFactory.cpp:
(WebKit):
(WebKit::WebInputEventFactory::gestureEvent):

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

7 years agoUnreviewed, rolling out r128351.
commit-queue@webkit.org [Wed, 12 Sep 2012 23:10:11 +0000 (23:10 +0000)]
Unreviewed, rolling out r128351.
http://trac.webkit.org/changeset/128351
https://bugs.webkit.org/show_bug.cgi?id=96573

Broke FindInPage browser_tests (Requested by jamesr_ on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years agoAX: svg:image not accessible
cfleizach@apple.com [Wed, 12 Sep 2012 22:56:47 +0000 (22:56 +0000)]
AX: svg:image not accessible
https://bugs.webkit.org/show_bug.cgi?id=96341

Reviewed by Adele Peterson.

Source/WebCore:

Test: accessibility/svg-image.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

LayoutTests:

* accessibility/svg-image.html: Added.
* platform/mac/accessibility/svg-image-expected.txt: Added.

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

7 years agopercentage widths rendered wrong in vertical writing mode with orthogonal parent
ojan@chromium.org [Wed, 12 Sep 2012 22:54:56 +0000 (22:54 +0000)]
percentage widths rendered wrong in vertical writing mode with orthogonal parent
https://bugs.webkit.org/show_bug.cgi?id=96308

Reviewed by Tony Chang.

Source/WebCore:

When the containingBlock is in a perpendicular writing-mode, we need to use
it's logicalWidth as the availableHeight for computing percentage values.

Tests: fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html
       fast/writing-mode/percentage-height-orthogonal-writing-modes.html

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::availableLogicalHeightUsing):
Added some FIXMEs for perpendicular writing mode cases.

LayoutTests:

* fast/writing-mode/percentage-height-orthogonal-writing-modes-expected.txt: Added.
* fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks-expected.txt: Added.
* fast/writing-mode/percentage-height-orthogonal-writing-modes-quirks.html: Added.
* fast/writing-mode/percentage-height-orthogonal-writing-modes.html: Added.

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

7 years ago[v8] document.getCSSCanvasContext doesn't need to be custom
abarth@webkit.org [Wed, 12 Sep 2012 22:43:54 +0000 (22:43 +0000)]
[v8] document.getCSSCanvasContext doesn't need to be custom
https://bugs.webkit.org/show_bug.cgi?id=96560

Reviewed by Eric Seidel.

Source/WebCore:

Instead of having a special case for toV8(CanvasRenderingContext*)
inlined into this custom function, we should just make the toV8
function itself custom.

Test: fast/canvas/canvas-css-crazy.html

* UseV8.cmake:
* WebCore.gypi:
* bindings/v8/custom/V8DocumentCustom.cpp:
* dom/Document.idl:
* html/canvas/CanvasRenderingContext.idl:

LayoutTests:

Test that document.getCSSCanvasContext returns null for a bogus canvas type.

* fast/canvas/canvas-css-crazy-expected.txt: Added.
* fast/canvas/canvas-css-crazy.html: Added.

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

7 years agoHTML parser fails to propertly close 4 identical nested formatting elements
eric@webkit.org [Wed, 12 Sep 2012 22:40:15 +0000 (22:40 +0000)]
HTML parser fails to propertly close 4 identical nested formatting elements
https://bugs.webkit.org/show_bug.cgi?id=96385

Reviewed by Adam Barth.

Add missing Adoption agency step 4.a to fix one of our two outlying Adoption Agency bugs.
This is the same step that Opera was missing (must have been recently added to the spec).

* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):

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

7 years agoSource/WebCore: [GTK] Protect RedirectedXCompositeWindow with USE(GLX) when building...
commit-queue@webkit.org [Wed, 12 Sep 2012 22:36:08 +0000 (22:36 +0000)]
Source/WebCore: [GTK] Protect RedirectedXCompositeWindow with USE(GLX) when building the clutter AC backend
https://bugs.webkit.org/show_bug.cgi?id=96165

Patch by Siraj Razick <siraj.razick@collabora.co.uk> on 2012-09-12
Reviewed by Martin Robinson.

RedirectedXCompositeWindow.cpp and RedirectedXCompositeWindow.h files requies openGL specific
headers to compile so when we build webkit clutter AC backend these files failed to compile,
This patch protects these two files with USE(GLX) when building webkit with Clutter AC backend.

No new tests since this is a build fix

* platform/gtk/RedirectedXCompositeWindow.cpp:
* platform/gtk/RedirectedXCompositeWindow.h:
protects both the files with USE(GLX)

Source/WebKit/gtk: [GTK] Update AcceleratedCompositingContextClutter to match AcceleratedCompositingContext.h API update
https://bugs.webkit.org/show_bug.cgi?id=96165

Patch by Siraj Razick <siraj.razick@collabora.co.uk> on 2012-09-12
Reviewed by Martin Robinson.

Due to the refactoring done in bug #90085 AcceleratedCompositingContext API changed, as a result
AcceleratedCompositingContextClutter doesn't compile anymore. This patch is to update the
AcceleratedCompositingContextClutter implementations to match the API update, and Make webkit
AC backend compile again.

* WebCoreSupport/AcceleratedCompositingContextClutter.cpp:
(WebKit::AcceleratedCompositingContext::AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::~AcceleratedCompositingContext):
(WebKit::AcceleratedCompositingContext::setRootCompositingLayer):
(WebKit::AcceleratedCompositingContext::setNonCompositedContentsNeedDisplay):
(WebKit::flushAndRenderLayersCallback):
(WebKit::AcceleratedCompositingContext::scheduleLayerFlush):
(WebKit::AcceleratedCompositingContext::flushPendingLayerChanges):
(WebKit::AcceleratedCompositingContext::flushAndRenderLayers):

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

7 years agoRenderBox::computeLogicalClientHeight is incorrectly named
ojan@chromium.org [Wed, 12 Sep 2012 22:29:42 +0000 (22:29 +0000)]
RenderBox::computeLogicalClientHeight is incorrectly named
https://bugs.webkit.org/show_bug.cgi?id=94288

Reviewed by Tony Chang.

Just renamed a couple methods to make it more clear what they return.
No behavior changes.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeLogicalHeightUsing):
(WebCore::RenderBox::computeContentLogicalHeight):
(WebCore::RenderBox::computeContentAndScrollbarLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::mainAxisContentExtent):
(WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):
(WebCore::RenderFlexibleBox::computeAvailableFreeSpace):
(WebCore::RenderFlexibleBox::lineBreakLength):

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

7 years agoIndexedDB: The |source| property of IDBFactory.open() request should be null
jsbell@chromium.org [Wed, 12 Sep 2012 22:22:07 +0000 (22:22 +0000)]
IndexedDB: The |source| property of IDBFactory.open() request should be null
https://bugs.webkit.org/show_bug.cgi?id=96551

Reviewed by Tony Chang.

Source/WebCore:

Per the IDB spec, the source property of the IDBOpenDBRequest returned by IDBFactory.open()
should be set to null. We were setting it to the IDBFactory object instead.

Tests: storage/indexeddb/basics.html
       storage/indexeddb/basics-workers.html
       storage/indexeddb/mozilla/event-source.html
       storage/indexeddb/readonly.html

* Modules/indexeddb/IDBFactory.cpp:
(WebCore::IDBFactory::open):

LayoutTests:

Already tested for in several places, so just update expectations/assertions.

* storage/indexeddb/basics-expected.txt:
* storage/indexeddb/basics-workers-expected.txt:
* storage/indexeddb/mozilla/event-source-expected.txt:
* storage/indexeddb/mozilla/resources/event-source.js: Updated assertion.
(openSuccess):
* storage/indexeddb/readonly-expected.txt:
* storage/indexeddb/resources/basics.js: Updated assertion.
(test):
(openCallback):

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

7 years agoRefactor Opcodes to distinguish between core and extension opcodes.
commit-queue@webkit.org [Wed, 12 Sep 2012 22:20:34 +0000 (22:20 +0000)]
Refactor Opcodes to distinguish between core and extension opcodes.
https://bugs.webkit.org/show_bug.cgi?id=96466.

Patch by Mark Lam <mark.lam@apple.com> on 2012-09-12
Reviewed by Filip Pizlo.

* bytecode/Opcode.h:
(JSC): Added FOR_EACH_CORE_OPCODE_ID() macro.
* llint/LowLevelInterpreter.h:
(JSC): Auto-generate llint opcode aliases using the
    FOR_EACH_CORE_OPCODE_ID() macro.

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

7 years agoUnreviewed, rolling out r128353.
commit-queue@webkit.org [Wed, 12 Sep 2012 22:19:50 +0000 (22:19 +0000)]
Unreviewed, rolling out r128353.
http://trac.webkit.org/changeset/128353
https://bugs.webkit.org/show_bug.cgi?id=96565

Re-land change that broke tests on Chromium. Tests are now
disabled, will rebaseline after this rolls. (Requested by
dmazzoni on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::isWebArea):
(WebCore::AccessibilityNodeObject::isImageButton):
(WebCore::AccessibilityNodeObject::isAnchor):
(WebCore::AccessibilityNodeObject::isNativeTextControl):
(WebCore::AccessibilityNodeObject::isSearchField):
(WebCore::AccessibilityNodeObject::isNativeImage):
(WebCore::AccessibilityNodeObject::isImage):
(WebCore::AccessibilityNodeObject::isPasswordField):
(WebCore::AccessibilityNodeObject::isInputImage):
(WebCore::AccessibilityNodeObject::isProgressIndicator):
(WebCore::AccessibilityNodeObject::isSlider):
(WebCore::AccessibilityNodeObject::isMenuRelated):
(WebCore::AccessibilityNodeObject::isMenu):
(WebCore::AccessibilityNodeObject::isMenuBar):
(WebCore::AccessibilityNodeObject::isMenuButton):
(WebCore::AccessibilityNodeObject::isMenuItem):
(WebCore::AccessibilityNodeObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityNodeObject::isEnabled):
(WebCore::AccessibilityNodeObject::isIndeterminate):
(WebCore::AccessibilityNodeObject::isPressed):
(WebCore::AccessibilityNodeObject::isChecked):
(WebCore::AccessibilityNodeObject::isHovered):
(WebCore::AccessibilityNodeObject::isMultiSelectable):
(WebCore::AccessibilityNodeObject::isReadOnly):
(WebCore::AccessibilityNodeObject::isRequired):
(WebCore::AccessibilityNodeObject::headingLevel):
(WebCore::AccessibilityNodeObject::valueDescription):
(WebCore::AccessibilityNodeObject::isARIARange):
(WebCore::AccessibilityNodeObject::valueForRange):
(WebCore::AccessibilityNodeObject::maxValueForRange):
(WebCore::AccessibilityNodeObject::minValueForRange):
(WebCore::AccessibilityNodeObject::stepValueForRange):
(WebCore::AccessibilityNodeObject::isHeading):
(WebCore::AccessibilityNodeObject::isLink):
(WebCore::AccessibilityNodeObject::isControl):
(WebCore::AccessibilityNodeObject::isFieldset):
(WebCore::AccessibilityNodeObject::isGroup):
(WebCore::AccessibilityNodeObject::selectedRadioButton):
(WebCore::AccessibilityNodeObject::selectedTabItem):
(WebCore::AccessibilityNodeObject::checkboxOrRadioValue):
(WebCore::AccessibilityNodeObject::anchorElement):
(WebCore::AccessibilityNodeObject::actionElement):
(WebCore::AccessibilityNodeObject::mouseButtonListener):
(WebCore::AccessibilityNodeObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityNodeObject::alterSliderValue):
(WebCore::AccessibilityNodeObject::increment):
(WebCore::AccessibilityNodeObject::decrement):
(WebCore::AccessibilityNodeObject::changeValueByStep):
(WebCore::AccessibilityNodeObject::changeValueByPercent):
(WebCore::AccessibilityNodeObject::isGenericFocusableElement):
(WebCore::AccessibilityNodeObject::labelForElement):
(WebCore::AccessibilityNodeObject::ariaAccessibilityDescription):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityNodeObject::menuElementForMenuButton):
(WebCore::AccessibilityNodeObject::menuForMenuButton):
(WebCore::AccessibilityNodeObject::menuItemElementForMenu):
(WebCore::AccessibilityNodeObject::menuButtonForMenu):
(WebCore::AccessibilityNodeObject::accessibilityDescription):
(WebCore::AccessibilityNodeObject::helpText):
(WebCore::AccessibilityNodeObject::hierarchicalLevel):
(WebCore::AccessibilityNodeObject::textUnderElement):
(WebCore::AccessibilityNodeObject::title):
(WebCore::AccessibilityNodeObject::text):
(WebCore::AccessibilityNodeObject::stringValue):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityNodeObject::elementsFromAttribute):
(WebCore::AccessibilityNodeObject::ariaLabeledByElements):
(WebCore::AccessibilityNodeObject::ariaLabeledByAttribute):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::parentObject):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::helpText):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::contentChanged):
(WebCore):
(WebCore::AccessibilityRenderObject::canHaveChildren):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):

LayoutTests:

* accessibility/canvas-fallback-content-2-expected.txt: Added.
* accessibility/canvas-fallback-content-2.html: Added.

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

7 years ago[GTK] We attempt to rebase documentation even if it's not present
commit-queue@webkit.org [Wed, 12 Sep 2012 22:13:44 +0000 (22:13 +0000)]
[GTK] We attempt to rebase documentation even if it's not present
https://bugs.webkit.org/show_bug.cgi?id=96553

Patch by Xan Lopez <xlopez@igalia.com> on 2012-09-12
Reviewed by Martin Robinson.

Do not make the documentation rebase step fatal. This allows make
install to succeed when there's no documentation generated.

* gtk/generate-gtkdoc:

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

7 years agoUpdate some stale expectations.
ojan@chromium.org [Wed, 12 Sep 2012 22:12:25 +0000 (22:12 +0000)]
Update some stale expectations.
* platform/chromium/TestExpectations:
Update to match what the bots are actually seeing.
* platform/gtk/TestExpectations:
Remove tests that no longer exist.

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

7 years agofast/events/dispatch-message-string-data.html fails on mac wk2
slewis@apple.com [Wed, 12 Sep 2012 21:58:48 +0000 (21:58 +0000)]
fast/events/dispatch-message-string-data.html fails on mac wk2
https://bugs.webkit.org/show_bug.cgi?id=96552

Unreviewed.

Add to TestExpectations.

* platform/mac-wk2/TestExpectations:

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

7 years agoRespect WEBKITOUTPUTDIR when running EFL tests
kenneth@webkit.org [Wed, 12 Sep 2012 21:49:09 +0000 (21:49 +0000)]
Respect WEBKITOUTPUTDIR when running EFL tests
https://bugs.webkit.org/show_bug.cgi?id=96528

Reviewed by Dirk Pranke.

Expose user set WEBKITOUTPUTDIR to the web process.

* Scripts/webkitpy/layout_tests/port/driver.py:
(Driver._start): Add WEBKITOUTPUTDIR to the environment
of the web process and its potential jhbuild wrapper.

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

7 years agoElement::classAttributeChanged should use characters8/16 to find first non-whitespace
msaboff@apple.com [Wed, 12 Sep 2012 21:40:26 +0000 (21:40 +0000)]
Element::classAttributeChanged should use characters8/16 to find first non-whitespace
https://bugs.webkit.org/show_bug.cgi?id=96446

Reviewed by Benjamin Poulain.

Source/WebCore:

Made two new static templated methods to handle 8 or 16 bit class names.

No functional change, so no new tests.

* dom/Element.cpp:
(WebCore::classStringHasClassName):
(WebCore::Element::classAttributeChanged):

Source/WTF:

Added bit size related string accessors to AtomicString to support change.

* wtf/text/AtomicString.h:
(AtomicString):
(WTF::AtomicString::is8Bit):
(WTF::AtomicString::characters8):
(WTF::AtomicString::characters16):

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

7 years agowebkitdirs: fix uname version handling for cygwin
dpranke@chromium.org [Wed, 12 Sep 2012 21:37:35 +0000 (21:37 +0000)]
webkitdirs: fix uname version handling for cygwin
https://bugs.webkit.org/show_bug.cgi?id=96436

Reviewed by Jon Honeycutt.

Newer versions of cygwin embed an additional version string
inside parentheses, so you get "1.7.16(0.249/5/3)" instead of "1.7.16".
Update the code to handle that.

* Scripts/webkitdirs.pm:
(setupAppleWinEnv):

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

7 years ago[V8] V8DOMWrapper::constructorForType is unnecessary now that we can get V8PerContext...
commit-queue@webkit.org [Wed, 12 Sep 2012 21:36:48 +0000 (21:36 +0000)]
[V8] V8DOMWrapper::constructorForType is unnecessary now that we can get V8PerContextData from the v8::Context
https://bugs.webkit.org/show_bug.cgi?id=96556

Patch by Adam Barth <abarth@chromium.org> on 2012-09-12
Reviewed by Eric Seidel.

These functions no longer serve a purpose now that we can get the
V8PerContextData directly from the context. Previously we had to find
the Frame in order to find the per-context data.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateConstructorGetter):
* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::installDOMWindow):
* bindings/v8/V8DOMWrapper.cpp:
(WebCore::V8DOMWrapper::instantiateV8Object):
* bindings/v8/V8DOMWrapper.h:
(V8DOMWrapper):
* bindings/v8/V8PerContextData.cpp:
(WebCore::V8PerContextData::from):
* bindings/v8/V8PerContextData.h:
(V8PerContextData):
    - Changed this function to accept an arbitrary context rather than
      requiring the caller to use the current context.

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

7 years agoMore unreviewed gardening after r128346.
leviw@chromium.org [Wed, 12 Sep 2012 21:33:54 +0000 (21:33 +0000)]
More unreviewed gardening after r128346.

* platform/chromium-win-xp/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
* platform/chromium-win/fast/repaint/repaint-across-writing-mode-boundary-expected.png:

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

7 years agoSync html5lib tests with latest sources (and sort the tests alphabetically in runner...
eric@webkit.org [Wed, 12 Sep 2012 21:21:06 +0000 (21:21 +0000)]
Sync html5lib tests with latest sources (and sort the tests alphabetically in runner.html)
https://bugs.webkit.org/show_bug.cgi?id=96544

Reviewed by Adam Barth.

* html5lib/resources/adoption01.dat:
* html5lib/resources/domjs-unsafe.dat: Added.
* html5lib/resources/scripted/ark.dat: Added.
* html5lib/runner.html:

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

7 years ago[chromium] Fix search tickmarks not disappearing when compositing is enabled
enne@google.com [Wed, 12 Sep 2012 21:04:13 +0000 (21:04 +0000)]
[chromium] Fix search tickmarks not disappearing when compositing is enabled
https://bugs.webkit.org/show_bug.cgi?id=96536

Reviewed by James Robinson.

view->invalidateRect() on the root frame just invalidates the
contents, since WebViewImpl doesn't know anything about scrollbar
layers. This causes an "InvalidateAll" to not actually invalidate the
scrollbars.

To fix this, make WebFrameImpl explicitly invalidate the
scrollbars when required.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::invalidateArea):

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

7 years agoWiden CRASH expectations for fast/replaced/border-radius-clip.html
adamk@chromium.org [Wed, 12 Sep 2012 20:57:25 +0000 (20:57 +0000)]
Widen CRASH expectations for fast/replaced/border-radius-clip.html

Unreviewed gardening.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed gardening. Updated test expectations following r128346.
leviw@chromium.org [Wed, 12 Sep 2012 20:40:06 +0000 (20:40 +0000)]
Unreviewed gardening. Updated test expectations following r128346.

* platform/chromium-linux/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
* platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:

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

7 years agoUnreviewed gardening.
adamk@chromium.org [Wed, 12 Sep 2012 20:35:34 +0000 (20:35 +0000)]
Unreviewed gardening.

Mark seek-to-end-after-duration-change.html as flaky.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed gardening.
adamk@chromium.org [Wed, 12 Sep 2012 20:33:32 +0000 (20:33 +0000)]
Unreviewed gardening.

Mark some new hidpi tests as failing after r128348.

* platform/chromium/TestExpectations:

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

7 years agoUnreviewed, rolling out r128318 and r128332.
commit-queue@webkit.org [Wed, 12 Sep 2012 20:13:47 +0000 (20:13 +0000)]
Unreviewed, rolling out r128318 and r128332.
http://trac.webkit.org/changeset/128318
http://trac.webkit.org/changeset/128332
https://bugs.webkit.org/show_bug.cgi?id=96547

Caused accessibility test failures on snow leopard (Requested
by jamesr_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-09-12

Source/WebCore:

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::accessibilityIsIgnored):
(WebCore::AccessibilityNodeObject::canSetFocusAttribute):
* accessibility/AccessibilityNodeObject.h:
(AccessibilityNodeObject):
(WebCore::AccessibilityNodeObject::node):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore):
(WebCore::AccessibilityRenderObject::isWebArea):
(WebCore::AccessibilityRenderObject::isImageButton):
(WebCore::AccessibilityRenderObject::isAnchor):
(WebCore::AccessibilityRenderObject::isNativeTextControl):
(WebCore::AccessibilityRenderObject::isSearchField):
(WebCore::AccessibilityRenderObject::isNativeImage):
(WebCore::AccessibilityRenderObject::isImage):
(WebCore::AccessibilityRenderObject::isPasswordField):
(WebCore::AccessibilityRenderObject::isInputImage):
(WebCore::AccessibilityRenderObject::isProgressIndicator):
(WebCore::AccessibilityRenderObject::isSlider):
(WebCore::AccessibilityRenderObject::isMenuRelated):
(WebCore::AccessibilityRenderObject::isMenu):
(WebCore::AccessibilityRenderObject::isMenuBar):
(WebCore::AccessibilityRenderObject::isMenuButton):
(WebCore::AccessibilityRenderObject::isMenuItem):
(WebCore::AccessibilityRenderObject::isPressed):
(WebCore::AccessibilityRenderObject::isIndeterminate):
(WebCore::AccessibilityRenderObject::isNativeCheckboxOrRadio):
(WebCore::AccessibilityRenderObject::isChecked):
(WebCore::AccessibilityRenderObject::isHovered):
(WebCore::AccessibilityRenderObject::isMultiSelectable):
(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::headingLevel):
(WebCore::AccessibilityRenderObject::isHeading):
(WebCore::AccessibilityRenderObject::isLink):
(WebCore::AccessibilityRenderObject::isControl):
(WebCore::AccessibilityRenderObject::isFieldset):
(WebCore::AccessibilityRenderObject::isGroup):
(WebCore::AccessibilityRenderObject::selectedRadioButton):
(WebCore::AccessibilityRenderObject::selectedTabItem):
(WebCore::AccessibilityRenderObject::actionElement):
(WebCore::AccessibilityRenderObject::mouseButtonListener):
(WebCore::AccessibilityRenderObject::alterSliderValue):
(WebCore::AccessibilityRenderObject::increment):
(WebCore::AccessibilityRenderObject::decrement):
(WebCore::siblingWithAriaRole):
(WebCore::AccessibilityRenderObject::menuElementForMenuButton):
(WebCore::AccessibilityRenderObject::menuForMenuButton):
(WebCore::AccessibilityRenderObject::menuItemElementForMenu):
(WebCore::AccessibilityRenderObject::menuButtonForMenu):
(WebCore::AccessibilityRenderObject::hierarchicalLevel):
(WebCore::AccessibilityRenderObject::checkboxOrRadioValue):
(WebCore::AccessibilityRenderObject::valueDescription):
(WebCore::AccessibilityRenderObject::stepValueForRange):
(WebCore::AccessibilityRenderObject::isARIARange):
(WebCore::AccessibilityRenderObject::valueForRange):
(WebCore::AccessibilityRenderObject::maxValueForRange):
(WebCore::AccessibilityRenderObject::minValueForRange):
(WebCore::accessibleNameForNode):
(WebCore::AccessibilityRenderObject::accessibilityDescriptionForElements):
(WebCore::AccessibilityRenderObject::elementsFromAttribute):
(WebCore::AccessibilityRenderObject::ariaLabeledByElements):
(WebCore::AccessibilityRenderObject::ariaLabeledByAttribute):
(WebCore::labelForElement):
(WebCore::AccessibilityRenderObject::title):
(WebCore::AccessibilityRenderObject::ariaAccessibilityDescription):
(WebCore::AccessibilityRenderObject::accessibilityDescription):
(WebCore::AccessibilityRenderObject::isDescendantOfBarrenParent):
(WebCore::AccessibilityRenderObject::text):
(WebCore::AccessibilityRenderObject::isRequired):
(WebCore::AccessibilityRenderObject::changeValueByStep):
(WebCore::AccessibilityRenderObject::changeValueByPercent):
(WebCore::AccessibilityRenderObject::isEnabled):
(WebCore::AccessibilityRenderObject::isGenericFocusableElement):
(WebCore::AccessibilityRenderObject::canHaveChildren):
* accessibility/AccessibilityRenderObject.h:
(AccessibilityRenderObject):

LayoutTests:

* accessibility/canvas-fallback-content-2-expected.txt: Removed.
* accessibility/canvas-fallback-content-2.html: Removed.

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

7 years ago <rdar://problem/12275537> REGRESSION(r127384): Non-existent directories are...
ap@apple.com [Wed, 12 Sep 2012 20:05:36 +0000 (20:05 +0000)]
    <rdar://problem/12275537> REGRESSION(r127384): Non-existent directories are no longer created for sandbox paths
        https://bugs.webkit.org/show_bug.cgi?id=96442

        Reviewed by Darin Adler.

        * Shared/SandboxExtension.h:
        (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
        * Shared/mac/SandboxExtensionMac.mm:
        (WebKit::SandboxExtension::createHandleForReadWriteDirectory):
        Added a function for read-write configuration directories. It matches
        appendReadwriteSandboxDirectory() function behavior from WebProcessMac.mm.

        * UIProcess/WebContext.cpp:
        (WebKit::WebContext::createNewWebProcess):
        * UIProcess/mac/WebContextMac.mm:
        (WebKit::WebContext::platformInitializeWebProcess):
        Use the new function for directories that need to be created if they don't exist.

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

7 years ago[Chromium] Fix cases where find-in-page doesn't send a final update
leandrogracia@chromium.org [Wed, 12 Sep 2012 20:02:25 +0000 (20:02 +0000)]
[Chromium] Fix cases where find-in-page doesn't send a final update
https://bugs.webkit.org/show_bug.cgi?id=96402

Fix some issues in the WebKit implementation that prevented to send a final
reportFindInPageMatchCount message. Also, fix a buggy reset of the active match
when calling the stopFinding method.

Reviewed by Adam Barth.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::scopeStringMatches):
(WebKit::WebFrameImpl::cancelPendingScopingEffort):
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
(WebKit::WebFrameImpl::shouldScopeMatches):

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

7 years ago[EFL] Compilation error in RenderThemeEfl.cpp
commit-queue@webkit.org [Wed, 12 Sep 2012 19:41:46 +0000 (19:41 +0000)]
[EFL] Compilation error in RenderThemeEfl.cpp
https://bugs.webkit.org/show_bug.cgi?id=96540

Unreviewed build fix.

Fix compilation error in RenderThemeEfl.cpp when building
in debug mode.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-12

* platform/efl/RenderThemeEfl.h:
(WebCore::RenderThemeEfl::canvas):
(WebCore::RenderThemeEfl::edje):

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

7 years agoRegression(r128338): Broke Windows build
commit-queue@webkit.org [Wed, 12 Sep 2012 19:25:52 +0000 (19:25 +0000)]
Regression(r128338): Broke Windows build
https://bugs.webkit.org/show_bug.cgi?id=96537

Unreviewed build fix.

Fix Apple-Win build by allocating array dynamically
since its size is not constant.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-12

* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::stringArrayToJS):

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

7 years ago[chromium] Add a virtual test suite for fast/hidpi
commit-queue@webkit.org [Wed, 12 Sep 2012 19:23:37 +0000 (19:23 +0000)]
[chromium] Add a virtual test suite for fast/hidpi
https://bugs.webkit.org/show_bug.cgi?id=90192

Patch by Alex Sakhartchouk <alexst@chromium.org> on 2012-09-12
Reviewed by Dirk Pranke.

Tools:

Add a virtual test suite to make sure the pixel tests in fast/hidpi give the same result
on the hardware accelerated path as the software path.

* DumpRenderTree/chromium/WebPreferences.cpp:
(WebPreferences::applyTo):
* Scripts/webkitpy/layout_tests/port/chromium.py:
(ChromiumPort.virtual_test_suites):

LayoutTests:

Making sure the new virtual tests have matching expectations to non-gpu ones

* platform/chromium/TestExpectations:
* platform/chromium/virtual/gpu/fast/hidpi/README.txt: Added.

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

7 years agoRename OVERFLOW_SCROLLING as ACCELERATED_OVERFLOW_SCROLLING
commit-queue@webkit.org [Wed, 12 Sep 2012 19:21:41 +0000 (19:21 +0000)]
Rename OVERFLOW_SCROLLING as ACCELERATED_OVERFLOW_SCROLLING
https://bugs.webkit.org/show_bug.cgi?id=96251

Patch by Sami Kyostila <skyostil@google.com> on 2012-09-12
Reviewed by Simon Fraser.

Rename OVERFLOW_SCROLLING as ACCELERATED_OVERFLOW_SCROLLING to better describe
the feature it controls.

.:

* Source/cmakeconfig.h.cmake:

Source/WebCore:

No tests because of no change in runtime behavior.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
* css/CSSProperty.cpp:
(WebCore::CSSProperty::isInheritedProperty):
* css/CSSPropertyNames.in:
* css/CSSValueKeywords.in:
* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::usesCompositedScrolling):
* rendering/style/RenderStyle.h:
* rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):
* rendering/style/StyleRareInheritedData.h:
(StyleRareInheritedData):

Source/WebKit/blackberry:

* WebCoreSupport/AboutDataEnableFeatures.in:

Source/WebKit/chromium:

* features.gypi:

LayoutTests:

* platform/chromium/TestExpectations:

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

7 years agoInline repainting can be off-by-one with sub-pixel enabled
leviw@chromium.org [Wed, 12 Sep 2012 19:17:03 +0000 (19:17 +0000)]
Inline repainting can be off-by-one with sub-pixel enabled
https://bugs.webkit.org/show_bug.cgi?id=95882

Reviewed by Eric Seidel.

Source/WebCore:

With sub-pixel layout enabled, context accumulated from containing renderers is used to properly
pixel snap. Selection repaint rects are stored outside the affected renderers, and are handed to
the embedder without the context to correctly determine the snapped values. This can result in
repaint areas smaller than what's needed.

This could be fixed three ways:
- by changing selection repaint rects to an IntRect and pixel snapping the values before storing
  them outside the render tree. This is the narrowest solution.
- by adapting layout to store pixel snapping hints along with the size/location of the renderer.
  This is the best possible solution, as it would help solve a lot of pixel snapping issues and
  reduce complexity of handling. I eventually intend on implementing this.
- by reverting repaintUsingContainer to IntRects and using pixel snapping when possible, and
  enclosingIntRect where we lack context.

This implements the last solution, as it's the least invasive, but can potentially fix numerous
sub-pixel repaint issues.

Test: fast/sub-pixel/selection/selection-rect-in-sub-pixel-table.html

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::layoutRunsAndFloats):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::repaintIncludingNonCompositingDescendants):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::repaintUsingContainer):
(WebCore::RenderObject::repaint):
(WebCore::RenderObject::repaintRectangle):
(WebCore::RenderObject::repaintAfterLayoutIfNeeded):
* rendering/RenderObject.h:
(RenderObject):
* rendering/RenderSelectionInfo.h:
(WebCore::RenderSelectionInfo::repaint):
(WebCore::RenderBlockSelectionInfo::repaint):

LayoutTests:

Test that we properly repaint selection gaps inside tables with sub-pixel offsets.

* fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.txt: Added.
* fast/sub-pixel/selection/selection-rect-in-sub-pixel-table.html: Added.
* platform/chromium-mac/fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.png: Added.
* platform/chromium/TestExpectations:
* platform/mac-lion/Skipped:
* platform/mac-snowleopard/Skipped:
* platform/mac-wk2/Skipped:
* platform/mac/Skipped:
* platform/qt-4.8/Skipped:
* platform/qt/Skipped:
* platform/win-wk2/Skipped:
* platform/win-xp/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

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

7 years agoBuild fixed for http://trac.webkit.org/changeset/128243
msaboff@apple.com [Wed, 12 Sep 2012 19:02:39 +0000 (19:02 +0000)]
Build fixed for trac.webkit.org/changeset/128243

Unreviewed build fix.

Change UnicodeString::extract for gcc based on ICU fix described in
http://bugs.icu-project.org/trac/ticket/8197.

* icu/unicode/unistr.h:
(UnicodeString::extract):

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

7 years ago[chromium] Evict textures through the texture manager instead of the resource provider
commit-queue@webkit.org [Wed, 12 Sep 2012 18:49:25 +0000 (18:49 +0000)]
[chromium] Evict textures through the texture manager instead of the resource provider
https://bugs.webkit.org/show_bug.cgi?id=96463

Patch by Christopher Cameron <ccameron@chromium.org> on 2012-09-12
Reviewed by James Robinson.

Source/WebCore:

When deleting contents textures' resources on the impl thread, do the
deletion through the CCPrioritizedTextureManager instead of the
CCResourceProvider.

This requires traversing the backings list on the impl thread while
the main thread is running, so remove the one remaining traversal of
the backings list by the main thread. This traversal happens when
unlinking textures that were evicted by the impl thread, so explicitly
send the list of evicted backings from the impl thread to the main thread.

Unify all resource deletion paths in the CCPrioritizedTextureManager.
Always perform the sequence of eviction (deleting the GL resource) and
then destruction of evicted backings (deleting the objects).  Also,
use the same function (evictBackingsToReduceMemory) to reduce memory
consumption both during commit and when done by the impl thread in response
to a request by the GPU memory manager.

Note that destroying only some of the resources at a time during texture
eviction (as opposed all resources) is still not supported because the
texture upload queues cannot be only-partially invalidated yet.

Updated tests to take this behavior into account.

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::reduceContentsTexturesMemoryOnImplThread):
(WebCore):
(WebCore::CCLayerTreeHost::getEvictedContentTexturesBackings):
(WebCore::CCLayerTreeHost::unlinkEvictedContentTexturesBackings):
(WebCore::CCLayerTreeHost::deleteEvictedContentTexturesBackings):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(CCLayerTreeHost):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::releaseContentsTextures):
(WebCore::CCLayerTreeHostImpl::setContentsTexturesPurged):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
(CCLayerTreeHostImplClient):
(CCLayerTreeHostImpl):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.cpp:
(WebCore::CCPrioritizedTextureManager::~CCPrioritizedTextureManager):
(WebCore::CCPrioritizedTextureManager::acquireBackingTextureIfNeeded):
(WebCore::CCPrioritizedTextureManager::evictBackingsToReduceMemory):
(WebCore::CCPrioritizedTextureManager::reduceMemory):
(WebCore::CCPrioritizedTextureManager::clearAllMemory):
(WebCore::CCPrioritizedTextureManager::reduceMemoryOnImplThread):
(WebCore::CCPrioritizedTextureManager::getEvictedBackings):
(WebCore::CCPrioritizedTextureManager::unlinkEvictedBackings):
(WebCore):
(WebCore::CCPrioritizedTextureManager::deleteEvictedBackings):
(WebCore::CCPrioritizedTextureManager::evictBackingResource):
* platform/graphics/chromium/cc/CCPrioritizedTextureManager.h:
(CCPrioritizedTextureManager):
* platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
(WebCore::CCSingleThreadProxy::releaseContentsTexturesOnImplThread):
(WebCore):
(WebCore::CCSingleThreadProxy::commitAndComposite):
* platform/graphics/chromium/cc/CCSingleThreadProxy.h:
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::releaseContentsTexturesOnImplThread):
(WebCore):
(WebCore::CCThreadProxy::scheduledActionBeginFrame):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::beginFrameCompleteOnImplThread):
(WebCore::CCThreadProxy::layerTreeHostClosedOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):
* platform/graphics/chromium/cc/CCThreadProxy.h:
(BeginFrameAndCommitState):
(CCThreadProxy):

Source/WebKit/chromium:

Update layer tree host impl test to include the extra interface functions
added to CCLayerTreeHostImplClient.

* tests/CCLayerTreeHostImplTest.cpp:

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

7 years ago[chromium] Add content_browsertests to the flakiness dashboard
adamk@chromium.org [Wed, 12 Sep 2012 18:24:39 +0000 (18:24 +0000)]
[chromium] Add content_browsertests to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=96535

Reviewed by Ojan Vafai.

* TestResultServer/static-dashboards/dashboard_base.js:

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

7 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Wed, 12 Sep 2012 18:23:44 +0000 (18:23 +0000)]
Unreviewed GTK gardening.

Adding crash or other failure expectations for plenty of accessibility
tests as required after r128318.

* platform/gtk/TestExpectations:

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

7 years ago[BlackBerry] Add custom messages for input type validation.
mifenton@rim.com [Wed, 12 Sep 2012 18:23:10 +0000 (18:23 +0000)]
[BlackBerry] Add custom messages for input type validation.
https://bugs.webkit.org/show_bug.cgi?id=96533

Reviewed by Antonio Gomes.

PR 179148.

Add validation messages for Email, MultipleEmail and Url.

Reviewed Internally by Nima Ghanavatian.

* platform/blackberry/LocalizedStringsBlackBerry.cpp:
(WebCore::validationMessageTypeMismatchForEmailText):
(WebCore::validationMessageTypeMismatchForMultipleEmailText):
(WebCore::validationMessageTypeMismatchForURLText):

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

7 years agoBuild fixed for http://trac.webkit.org/changeset/128243
msaboff@apple.com [Wed, 12 Sep 2012 18:11:16 +0000 (18:11 +0000)]
Build fixed for trac.webkit.org/changeset/128243

Unreviewed build fix.

Removed temporarily added function signature.

* icu/unicode/unistr.h:
(UnicodeString::extract):

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

7 years agoBuild fixed for http://trac.webkit.org/changeset/128243
msaboff@apple.com [Wed, 12 Sep 2012 17:46:45 +0000 (17:46 +0000)]
Build fixed for trac.webkit.org/changeset/128243

Unreviewed build fix.

Change UnicodeString::extract for gcc based on ICU fix described in
http://bugs.icu-project.org/trac/ticket/8197.

* icu/unicode/unistr.h:
(UnicodeString::extract):

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

7 years ago[WK2][WKTR] TestRunner needs to implement originsWithApplicationCache
commit-queue@webkit.org [Wed, 12 Sep 2012 17:42:23 +0000 (17:42 +0000)]
[WK2][WKTR] TestRunner needs to implement originsWithApplicationCache
https://bugs.webkit.org/show_bug.cgi?id=96496

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to retrieve security origins with
an application cache. This is needed by WebKitTestRunner
to support originsWithApplicationCache.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleCopyOriginsWithApplicationCache):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::originsWithApplicationCache):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

Add implementation for originsWithApplicationCache to
WebKitTestRunner.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::stringArrayToJS):
(WTR):
(WTR::TestRunner::originsWithApplicationCache):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests:

Unskip http/tests/appcache/origins-with-appcache.html now that
WebKitTestRunner implements originsWithApplicationCache.

* platform/wk2/Skipped:

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

7 years ago[Chromium] Remove unused notifyFormStateChanged function in PlatformSupport
pilgrim@chromium.org [Wed, 12 Sep 2012 17:39:09 +0000 (17:39 +0000)]
[Chromium] Remove unused notifyFormStateChanged function in PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=96527

Reviewed by Kentaro Hara.

Part of a refactoring series. See tracking bug 82948.

* platform/chromium/PlatformSupport.h:
(PlatformSupport):

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

7 years ago[CSS Exclusions] Test incremental layout
commit-queue@webkit.org [Wed, 12 Sep 2012 17:32:37 +0000 (17:32 +0000)]
[CSS Exclusions] Test incremental layout
https://bugs.webkit.org/show_bug.cgi?id=91879

Patch by Bear Travis <betravis@adobe.com> on 2012-09-12
Reviewed by Julien Chaffraix.

Adding tests to make sure that text and shape can be set dynamically, and that
content will still layout while respecting shape-inside.

* fast/exclusions/shape-inside/shape-inside-dynamic-shape-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-dynamic-shape.html: Added.
* fast/exclusions/shape-inside/shape-inside-dynamic-text-expected.html: Added.
* fast/exclusions/shape-inside/shape-inside-dynamic-text.html: Added.

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

7 years ago[CSSRegions]Shrink RenderFlowThread size by using bit flags
mihnea@adobe.com [Wed, 12 Sep 2012 17:25:27 +0000 (17:25 +0000)]
[CSSRegions]Shrink RenderFlowThread size by using bit flags
https://bugs.webkit.org/show_bug.cgi?id=96503

Reviewed by Andreas Kling.

Use bit fields instead of full bool.

No new functionality, just refactoring. Functionality covered by existing tests in fast/regions.

* rendering/RenderFlowThread.h:

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

7 years ago[CSS Shaders] Remove direct texture access via u_texture
commit-queue@webkit.org [Wed, 12 Sep 2012 17:23:06 +0000 (17:23 +0000)]
[CSS Shaders] Remove direct texture access via u_texture
https://bugs.webkit.org/show_bug.cgi?id=93871

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-09-12
Reviewed by Dean Jackson.

Source/WebCore:

Remove the author-accessible "u_texture" sampler, which referenced the DOM element texture.

Additionally, reject shaders with author-defined sampler uniforms. When we implement texture
parameters, we will allow shaders whose samplers are bound to valid textures. We must not
allow OpenGL to give unbound samplers a default value of 0 because that references the DOM
element texture, which should be inaccessible to the author's shader code.

Test: css3/filters/custom/custom-filter-no-element-texture-access.html

* platform/graphics/ANGLEWebKitBridge.cpp:
(WebCore::getValidationResultValue):
    Add a file-static function to easily query the integer values that ANGLE exposes about
    the last validation result. The new getUniforms method and the existing
    validateShaderSource method now both use getValidationResultValue.
(WebCore):
(WebCore::ANGLEWebKitBridge::validateShaderSource):
    Use the new getValidationResultValue function instead of ANGLE's ShGetInfo function.
(WebCore::ANGLEWebKitBridge::getUniforms):
    Add a new public method to ANGLEWebKitBridge which gets the info about all of the
    uniforms in the last validated vertex shader or fragment shader. Uniform info includes
    name, type, and size.
* platform/graphics/ANGLEWebKitBridge.h:
(ANGLEShaderSymbol):
(WebCore::ANGLEShaderSymbol::isSampler):
    Returns true if the symbol's data type is a GLSL sampler (e.g. sampler2D, samplerCube).
(WebCore):
(ANGLEWebKitBridge):
* platform/graphics/filters/CustomFilterCompiledProgram.cpp:
(WebCore::CustomFilterCompiledProgram::CustomFilterCompiledProgram):
    Take in an additional programType constructor parameter.
(WebCore::CustomFilterCompiledProgram::initializeParameterLocations):
    Remove the author-accessible DOM element texture sampler "u_texture". Only find the
    location of the internal DOM element texture sampler "css_u_texture" if the author is
    using the CSS mix function.
* platform/graphics/filters/CustomFilterCompiledProgram.h:
* platform/graphics/filters/CustomFilterProgramInfo.h:
(CustomFilterProgramInfo):
(WebCore::CustomFilterProgramInfo::programType):
    Add the new CustomFilterProgramType enum. In CustomFilterProgramInfo, we plan to replace
    mixSettings.enabled with a programType. See:
    https://bugs.webkit.org/show_bug.cgi?id=96448
* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
    Reject all shaders that have sampler uniforms defined.
(WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
(WebCore::CustomFilterValidatedProgram::compiledProgram):
* platform/graphics/filters/FECustomFilter.cpp:
(WebCore::FECustomFilter::bindProgramAndBuffers):
    Add an assert to verify that the DOM element texture is bound only if the author is
    using the CSS mix function.

LayoutTests:

Add tests to verify that the "u_texture" sampler is no longer accessible to author shader
code because it was removed. These tests also verify that shaders with unbound samplers do
not execute.

Add tests to verify that the internal "css_u_texture" sampler is not accessible to author
shader code. These tests check that this is true whether or not the author is using the CSS
mix function and whether or not the author attempts to define css_u_texture is his or her
shader.

* css3/filters/custom/custom-filter-no-element-texture-access-expected.html: Added.
* css3/filters/custom/custom-filter-no-element-texture-access.html: Added.
* css3/filters/resources/sample-defined-css-u-texture-mix.fs: Added.
* css3/filters/resources/sample-defined-css-u-texture.fs: Added.
* css3/filters/resources/sample-u-texture-mix.fs: Added.
* css3/filters/resources/sample-u-texture.fs: Added.
* css3/filters/resources/sample-undefined-css-u-texture-mix.fs: Added.
* css3/filters/resources/sample-undefined-css-u-texture.fs: Added.

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

7 years agoFix Qt/Windows build with Python3
commit-queue@webkit.org [Wed, 12 Sep 2012 17:20:04 +0000 (17:20 +0000)]
Fix Qt/Windows build with Python3
https://bugs.webkit.org/show_bug.cgi?id=96473

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-09-12
Reviewed by Csaba Osztrogonác.

In Python 3 print is a real function, so we must use parentheses around
the function parameters. This is backwards compatible with Python 2.

* Scripts/generate-win32-export-forwards:

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

7 years agoAssert hit in is multiSelectable()
dmazzoni@google.com [Wed, 12 Sep 2012 16:57:16 +0000 (16:57 +0000)]
Assert hit in is multiSelectable()
https://bugs.webkit.org/show_bug.cgi?id=96530

Reviewed by Chris Fleizach.

Fix crash if element isn't a select element.

This bug slipped through in a refactoring change (bug 96323).
Covered by existing tests.

* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isMultiSelectable):

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

7 years ago[Scoped Style] NodeRareData::m_numberOfScopedHTMLStyleChildren could be replaced...
morrita@google.com [Wed, 12 Sep 2012 16:54:55 +0000 (16:54 +0000)]
[Scoped Style] NodeRareData::m_numberOfScopedHTMLStyleChildren could be replaced with a node flag.
https://bugs.webkit.org/show_bug.cgi?id=96450

Reviewed by Dimitri Glazkov.

This change gets rid of NodeRareData::m_numberOfScopedHTMLStyleChildren
by replacing it with a Node flag called HasScopedHTMLStyleChildFlag.
Instead of tracking the number of certain node, this chagne compute the number
when necessary.

Now we no longer need to hit rareData() for each hasScopedHTMLStyleChild() call.
Note that because such a re-counting occurs only when the scoped <style> elements
leave the tree, the performance impact is negligible.

No new tests. Covered by existing tests.

* dom/Node.cpp:
(WebCore):
* dom/Node.h:
(WebCore::Node::hasScopedHTMLStyleChild):
(WebCore::Node::setHasScopedHTMLStyleChild):
(Node):
* dom/NodeRareData.h:
(WebCore::NodeRareData::NodeRareData):
(NodeRareData):
* html/HTMLStyleElement.cpp:
(WebCore::HTMLStyleElement::isRegisteredAsScoped):
(WebCore):
(WebCore::Node::registerScopedHTMLStyleChild):
(WebCore::Node::unregisterScopedHTMLStyleChild):
(WebCore::Node::numberOfScopedHTMLStyleChildren):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):
* html/HTMLStyleElement.h:
(HTMLStyleElement):

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

7 years agoRemove transient state regarding uknown pseudoelements from SelectorChecker.
dglazkov@chromium.org [Wed, 12 Sep 2012 16:50:33 +0000 (16:50 +0000)]
Remove transient state regarding uknown pseudoelements from SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=96425

Reviewed by Eric Seidel.

The fact that an unknown pseudoelement was found when checking selector was stored as extra state on SelectorChecker. That's bad,
because this state is at odds with the lifecycle of the instance and had to be explicitly reset prior to each checking. To address
this, I made checkSelector report the value as its result (by-ref parameter, actually).

No new tests, refactoring only. Covered by existing tests.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::SelectorChecker): Removed the now-unneded state initialization.
(WebCore::SelectorChecker::checkSelector): Changed to take extra parameter.
(WebCore):
(WebCore::SelectorChecker::checkOneSelector): Ditto.
* css/SelectorChecker.h:
(SelectorChecker): Changed decls accordingly.
* css/StyleResolver.cpp:
(WebCore::StyleResolver::StyleResolver): Added state to StyleResolver.
(WebCore::StyleResolver::collectMatchingRulesForList): Changed to use own state, rather than StyleChecker's state.
* css/StyleResolver.h:
(StyleResolver): Moved state here from StyleChecker.

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

7 years agoUnreviewed trivial build fix for Qt/Windows
hausmann@webkit.org [Wed, 12 Sep 2012 16:43:17 +0000 (16:43 +0000)]
Unreviewed trivial build fix for Qt/Windows

As pointed out by Kevin, we should inject the "set PATH=..." statement
to add the GnuWin32 directory only if that directory actually exists.

* qmake/mkspecs/features/default_post.prf:

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

7 years ago[EFL] [WK2] Memory leaks in TestControllerEfl
commit-queue@webkit.org [Wed, 12 Sep 2012 16:41:58 +0000 (16:41 +0000)]
[EFL] [WK2] Memory leaks in TestControllerEfl
https://bugs.webkit.org/show_bug.cgi?id=96525

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Fix memory leaks in EFL's TestRunner code by adopting an allocation
of WKString created with WKStringCreateWithUTF8CString().

* WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):

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

7 years ago[WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
commit-queue@webkit.org [Wed, 12 Sep 2012 16:38:16 +0000 (16:38 +0000)]
[WK2][WKTR] TestRunner needs to implement dumpApplicationCacheDelegateCallbacks
https://bugs.webkit.org/show_bug.cgi?id=96374

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-12
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle C API to reset the application cache quota
for a given origin.

Add new reachedApplicationCacheOriginQuota callback
to WKBundlePageUIClient which is called from
WebChromeClient::reachedApplicationCacheOriginQuota().

Those are needed by WebKitTestRunner to dump
information about the application cache callbacks
if instructed to.

* Shared/APIClientTraits.cpp:
(WebKit):
* Shared/APIClientTraits.h:
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetApplicationCacheOriginQuota):
(WKBundleResetApplicationCacheOriginQuota):
* WebProcess/InjectedBundle/API/c/WKBundlePage.h:
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::resetApplicationCacheOriginQuota):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
(WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
(WebKit):
(InjectedBundlePageUIClient):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
* win/WebKit2.def:
* win/WebKit2CFLite.def:

Tools:

Implement support for dumpApplicationCacheDelegateCallbacks
and disallowIncreaseForApplicationCacheQuota in
WebKitTestRunner and properly dump the information
expected by the tests.

If the application cache quota is reached for a given
security origin, WebKitTestRunner will reset the quota
to its default value, unless intructed not to via
disallowIncreaseForApplicationCacheQuota().

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::InjectedBundlePage::didReachApplicationCacheOriginQuota):
(WTR):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
(InjectedBundlePage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
(WTR::TestRunner::disallowIncreaseForApplicationCacheQuota):
(WTR):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(WTR::TestRunner::dumpApplicationCacheDelegateCallbacks):
(TestRunner):
(WTR::TestRunner::shouldDisallowIncreaseForApplicationCacheQuota):
(WTR::TestRunner::shouldDumpApplicationCacheDelegateCallbacks):

LayoutTests:

Unskip test cases that are passing now that WebKitTestRunner
implements dumpApplicationCacheDelegateCallbacks and
disallowIncreaseForApplicationCacheQuota.

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

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