kbalazs@webkit.org [Thu, 26 Jan 2012 10:10:22 +0000 (10:10 +0000)]
[NRWT] Support --ignore-metrics
https://bugs.webkit.org/show_bug.cgi?id=76278
Reviewed by Tony Chang.
Port the feature from ORWT.
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner._run_compare_test):
* Scripts/webkitpy/layout_tests/port/driver.py:
(DriverOutput):
(DriverOutput.strip_metrics):
* Scripts/webkitpy/layout_tests/port/driver_unittest.py:
(DriverOutputTest):
(DriverOutputTest.test_strip_metrics):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105981
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tkent@chromium.org [Thu, 26 Jan 2012 10:07:12 +0000 (10:07 +0000)]
Unreviewed, rolling out r105968.
http://trac.webkit.org/changeset/105968
https://bugs.webkit.org/show_bug.cgi?id=76995
Incorrect behavior change
Source/WebCore:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate):
LayoutTests:
* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105980
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 26 Jan 2012 09:51:20 +0000 (09:51 +0000)]
Unreviewed, rolling out r105935 and r105954.
http://trac.webkit.org/changeset/105935
http://trac.webkit.org/changeset/105954
https://bugs.webkit.org/show_bug.cgi?id=77080
test-webkitpy is still broken (Requested by abarth on
#webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-26
* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(never_ending_command):
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
* Scripts/webkitpy/common/system/fileutils.py:
(make_stdout_binary):
* Scripts/webkitpy/test/cat.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/cat_unittest.py:
(CatTest):
(CatTest.assert_cat):
(CatTest.test_basic):
(CatTest.test_no_newline):
(CatTest.test_unicode):
(CatTest.test_as_command):
* Scripts/webkitpy/test/echo.py:
(command_arguments):
(main):
* Scripts/webkitpy/test/echo_unittest.py:
(EchoTest):
(EchoTest.test_basic):
(EchoTest.test_no_newline):
(EchoTest.test_unicode):
(EchoTest.test_argument_order):
(EchoTest.test_empty_arguments):
(EchoTest.test_no_arguments):
(EchoTest.test_as_command):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105979
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Thu, 26 Jan 2012 09:50:47 +0000 (09:50 +0000)]
crash in WebCore::RenderSVGContainer::paint
https://bugs.webkit.org/show_bug.cgi?id=69714
Reviewed by Dirk Schulze.
Source/WebCore:
When RenderSVGResourceClipper draws its children to a mask, it requires some special constraints:
- fill-opacity/stroke-opacity/opacity forced to 1
- masker/filter resources shouldn't be applied to the children
- fill must be set to the initial fill paint server for all children (solid black)
- stroke must be set to the initial stroke paint server for all children (none)
This was achieved before by mutating the style of the children, which made them need a relayout.
SVGImageBufferTools:renderSubtreeToImageBuffer thus needed to layout the children, if needed, before painting.
This can be completly avoided, when changing RenderSVGResourceClipper to avoid style mutations.
Introduce a new "PaintBehaviorRenderingSVGMask", and set the current FrameViews paintBehaviour to this
state, before painting the subtree. This way we can detect that we're rendering a clip mask, without
having to mutate the style of the children and without having to relayout.
We can now ASSERT(!item->needsLayout()) in renderSubtreeToImageBuffer.
Tests: svg/clip-path/clip-path-tspan-and-stroke.svg
svg/custom/layout-loop.svg
* rendering/PaintPhase.h:
* rendering/svg/RenderSVGResource.cpp:
(WebCore::requestPaintingResource):
* rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::RenderSVGResourceClipper):
(WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
(WebCore::RenderSVGResourceClipper::removeClientFromCache):
(WebCore::RenderSVGResourceClipper::applyClippingToContext):
(WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceClipper.h:
* rendering/svg/RenderSVGResourceMasker.cpp:
(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
* rendering/svg/RenderSVGResourceMasker.h:
* rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::createTileImage):
* rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
* rendering/svg/SVGImageBufferTools.cpp:
(WebCore::SVGImageBufferTools::renderSubtreeToImageBuffer):
* rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintSelectionBackground):
(WebCore::SVGInlineTextBox::paint):
* rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::prepareToRenderSVGContent):
LayoutTests:
Added a new test covering the clipper specific demands when rendering its children to a mask.
(fill/stroke-opacity=1, opacity=1, don't apply masker/filter to children)
All cases are covered by existing tests, I'm adding a new combination of <tspan> within a <text>,
that tries to apply a stroke paint server, which is supposed to be ignored.
* platform/chromium/test_expectations.txt:
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.png: Added.
* platform/mac/svg/clip-path/clip-path-tspan-and-stroke-expected.txt: Added.
* svg/clip-path/clip-path-tspan-and-stroke.svg: Added.
* svg/custom/layout-loop-expected.txt: Added.
* svg/custom/layout-loop.svg: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Thu, 26 Jan 2012 09:40:26 +0000 (09:40 +0000)]
2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
Not reviewed. Regenerated some new SVG results using a Lion machine, to make the baseline pass with --tolerance 0 -p on a vanilla iMac again.
* platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.png:
* platform/mac/svg/W3C-SVG-1.1-SE/painting-control-04-f-expected.txt:
* platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.png:
* platform/mac/svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:
* platform/mac/svg/custom/subpaths-moveto-only-rendering-expected.png:
* platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.png:
* platform/mac/svg/stroke/zero-length-arc-linecaps-rendering-expected.txt:
* platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.png:
* platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.txt:
* platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png:
* platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt:
* platform/mac/test_expectations.txt
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105977
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Thu, 26 Jan 2012 09:28:11 +0000 (09:28 +0000)]
2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
Not reviewed. Fix win build, by disabling ENABLE_SHADOW_DOM by default.
* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105976
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zimmermann@webkit.org [Thu, 26 Jan 2012 09:09:35 +0000 (09:09 +0000)]
2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
Not reviewed. Try to fix Qt/Win build by building OwnPtrWin.cpp into the WTF library.
* WTF.pro:
2012-01-26 Nikolas Zimmermann <nzimmermann@rim.com>
Not reviewed. Try to fix Gtk build - JSShadowRoot.cpp can't be found, fix by looking for it in the derived sources.
* GNUmakefile.list.am:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105975
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rgabor@webkit.org [Thu, 26 Jan 2012 09:01:21 +0000 (09:01 +0000)]
[GTK] Detect cross-compilation in webkitdirs.pm to not generate gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=76138
Reviewed by Martin Robinson.
* Scripts/webkitdirs.pm:
(isCrossCompilation):
(buildAutotoolsProject):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105974
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Thu, 26 Jan 2012 08:56:21 +0000 (08:56 +0000)]
[Qt] Unreviewed gardening after r105917.
* platform/qt/Skipped:
* platform/qt/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105973
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Thu, 26 Jan 2012 08:28:57 +0000 (08:28 +0000)]
Port Mozilla's Graph Server
https://bugs.webkit.org/show_bug.cgi?id=76312
Reviewed by Adam Barth.
Add the app engine backend for the Mozilla's graph server used on perf-webkit.appspot.com.
To deploy webkit-perf.appspot.com, you also need to pull index.html, embed.html, graph.html, jq,
js (except config.js), and css (except title.png) from https://github.com/mozilla/graphs.
* Websites/perf-webkit.appspot.com: Added.
* Websites/perf-webkit.appspot.com/app.yaml: Added.
* Websites/perf-webkit.appspot.com/create_handler.py: Added.
(CreateHandler):
(CreateHandler.post):
(CreateHandler._createBuilder):
(CreateHandler._createBuilder.execute):
(CreateHandler._createBranch):
(CreateHandler._createBranch.execute):
(CreateHandler._createPlatform):
(CreateHandler._createPlatform.execute):
* Websites/perf-webkit.appspot.com/dashboard_handler.py: Added.
(DashboardHandler):
(DashboardHandler.get):
* Websites/perf-webkit.appspot.com/index.yaml: Added.
* Websites/perf-webkit.appspot.com/main.py: Added.
(main):
* Websites/perf-webkit.appspot.com/manifest_handler.py: Added.
(ManifestHandler):
(ManifestHandler.get):
* Websites/perf-webkit.appspot.com/models.py: Added.
(NumericIdHolder):
(NumericIdHolder.whose):
(createInTransactionWithNumericIdHolder):
(modelFromNumericId):
(Branch):
(Platform):
(Builder):
(Builder.authenticate):
(Builder.hashedPassword):
(Build):
(Test):
(TestResult):
(ReportLog):
* Websites/perf-webkit.appspot.com/report_handler.py: Added.
(ReportHandler):
(ReportHandler.post):
(ReportHandler._modelByKeyNameInBodyOrError):
(ReportHandler._integerInBody):
(ReportHandler._timestampInBody):
(ReportHandler._output):
(ReportHandler._resultsAreValid):
(ReportHandler._createBuildIfPossible):
(ReportHandler._createBuildIfPossible.execute):
(ReportHandler._addTestIfNeeded):
(ReportHandler._addTestIfNeeded.execute):
* Websites/perf-webkit.appspot.com/runs_handler.py: Added.
(RunsHandler):
(RunsHandler.get):
* Websites/perf-webkit.appspot.com/static: Added.
* Websites/perf-webkit.appspot.com/static/create-models.html: Added.
* Websites/perf-webkit.appspot.com/static/manual-submit.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105971
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aestes@apple.com [Thu, 26 Jan 2012 08:17:47 +0000 (08:17 +0000)]
REGRESSION (r105555): Incorrect use of OS() macro breaks OwnPtr when used with Win32 data types
https://bugs.webkit.org/show_bug.cgi?id=77073
Reviewed by Ryosuke Niwa.
r105555 changed PLATFORM(WIN) to OS(WIN), but WTF_OS_WIN isn't defined.
This should have been changed to OS(WINDOWS). This causes the
preprocessor to strip out Win32 data type overrides for deleteOwnedPtr,
causing allocations made by Win32 to be deleted by fastmalloc.
* wtf/OwnPtrCommon.h:
(WTF): Use OS(WINDOWS) instead of OS(WIN).
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105970
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Thu, 26 Jan 2012 08:16:01 +0000 (08:16 +0000)]
Web Inspector: Improve user experience of advanced search panel closing.
https://bugs.webkit.org/show_bug.cgi?id=76983
Reviewed by Pavel Feldman.
Added close button to search panel.
Esc now closes the panel even when search filed has focus.
* English.lproj/localizedStrings.js:
* inspector/front-end/AdvancedSearchController.js:
(WebInspector.AdvancedSearchController.prototype.close):
(WebInspector.SearchView):
(WebInspector.SearchView.prototype._onKeyDown):
(WebInspector.SearchView.prototype._closeButtonPressed):
* inspector/front-end/inspector.css:
(.search-view .search-panel):
(.search-view .search-panel button.search-close-button):
* inspector/front-end/inspector.js:
(WebInspector._escPressed):
(WebInspector.closeDrawerView):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105969
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 26 Jan 2012 08:06:16 +0000 (08:06 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=76995.
WebKit fails IETC :indeterminate and input type=radio test.
As per the HTML spec http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#dom-input-indeterminate,
only checkbox input type should respect the indeterminate state.
Removed the support for indeterminate state for radio input types.
Source/WebCore:
Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.
Modified the existing test cases.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::setIndeterminate): Indeterminate state is supported only for checkbox input type.
LayoutTests:
Modified the existing test cases.
Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-26
Reviewed by Eric Seidel.
* fast/forms/indeterminate-radio.html:
* fast/forms/radio-checkbox-restore-indeterminate.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105968
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Thu, 26 Jan 2012 07:50:33 +0000 (07:50 +0000)]
Kentaro is a reviewer now. Yay!
* Scripts/webkitpy/common/config/committers.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105967
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 26 Jan 2012 05:56:59 +0000 (05:56 +0000)]
Add IntentRequest include for FrameLoaderClientImpl.
https://bugs.webkit.org/show_bug.cgi?id=77039
Patch by Greg Billock <gbillock@google.com> on 2012-01-25
Reviewed by Darin Fisher.
* src/FrameLoaderClientImpl.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105964
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Thu, 26 Jan 2012 05:12:31 +0000 (05:12 +0000)]
Layout Test fast/js/dfg-uint32array-overflow-values.html is slow on Chromium Debug bots
https://bugs.webkit.org/show_bug.cgi?id=77069
Marking fast/js/dfg-uint32array-overflow-values.html slow for Debug Chromium bots.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105963
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dcheng@chromium.org [Thu, 26 Jan 2012 05:02:12 +0000 (05:02 +0000)]
[chromium] Fix ClipboardChromium::validateFilename to actually operate on extensions
https://bugs.webkit.org/show_bug.cgi?id=76996
Source/WebCore:
As it turns out, we were always calling validateFilename on a data object with an empty
extension. Now we call it on an actual extension so that it's sanitized.
Reviewed by Tony Chang.
Unit test: webkit_unit_tests --gtest_filter=ClipboardChromium.*
* WebCore.gypi:
* platform/chromium/ClipboardChromium.cpp:
(WebCore::writeImageToDataObject):
* platform/chromium/ClipboardChromium.h:
(ClipboardChromium):
* platform/chromium/ClipboardChromiumLinux.cpp: Removed.
* platform/chromium/ClipboardChromiumPosix.cpp: Renamed from Source/WebCore/platform/chromium/ClipboardChromiumMac.cpp.
(WebCore):
(WebCore::isInvalidFileCharacter):
(WebCore::ClipboardChromium::validateFilename):
* platform/chromium/ClipboardChromiumWin.cpp:
(WebCore):
(WebCore::ClipboardChromium::validateFilename):
Source/WebKit/chromium:
Reviewed by Tony Chang.
* WebKit.gypi:
* tests/ClipboardChromiumTest.cpp: Added.
(WebCore):
(WebCore::TEST):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105962
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 26 Jan 2012 03:08:22 +0000 (03:08 +0000)]
[chromium] Rollout r100751, this mechanism does not work and is very slow
https://bugs.webkit.org/show_bug.cgi?id=77055
Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
but it still triggers a very slow codepath and triggers races on some platforms.
Patch by James Robinson <jamesr@chromium.org> on 2012-01-25
Source/WebCore:
* platform/PlatformScreen.h:
(WebCore):
* platform/chromium/PlatformScreenChromium.cpp:
* platform/chromium/PlatformSupport.h:
(PlatformSupport):
():
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):
(CCSettings):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeImplOnImplThread):
Source/WebKit/chromium:
* public/WebScreenInfo.h:
(WebScreenInfo):
(WebKit::WebScreenInfo::WebScreenInfo):
* src/PlatformSupport.cpp:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::runTest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105961
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Thu, 26 Jan 2012 02:27:32 +0000 (02:27 +0000)]
Unreviewed. Reverting the addition of storage/indexeddb/prefetch-bugfix-108071.html
to Chromium's test_expectations. The proper place for this test to be disabled was
in Chromium, since it failed in test_shell.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105960
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Thu, 26 Jan 2012 01:59:39 +0000 (01:59 +0000)]
nrwt: running w/ no arguments fails
https://bugs.webkit.org/show_bug.cgi?id=77064
Unreviewed, build fix.
This change fixes a regression introduced in r105944
where running without --platform <foo> or one of the other
platform switches would cause a null deref :(.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105957
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 01:56:11 +0000 (01:56 +0000)]
Automatically CC someone from Apple on any changes to Obj-C public API
https://bugs.webkit.org/show_bug.cgi?id=77053
Reviewed by Timothy Hatcher.
This has long been de-facto practice, seems now that we have
fancy watchlist support, we should just make the tools
do this automatically.
* Scripts/webkitpy/common/config/watchlist:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105956
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
piman@chromium.org [Thu, 26 Jan 2012 01:53:50 +0000 (01:53 +0000)]
Updating status in committers.py.
Unreviewed.
* Scripts/webkitpy/common/config/committers.py:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105955
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Thu, 26 Jan 2012 01:47:43 +0000 (01:47 +0000)]
test-webkitpy: executive_unittest fails if PYTHONPATH isn't set
https://bugs.webkit.org/show_bug.cgi?id=77058
Reviewed by Eric Seidel.
r105935 broke executive_unittest by changing which script we
were running and not ensuring that the PYTHONPATH was set up
properly.
This change also fixes a regression introduced recently where
test-webkitpy wasn't figuring out the path to Tools/Scripts
right, either (so running ./test-webkitpy would fail).
* Scripts/test-webkitpy:
* Scripts/webkitpy/common/system/executive_unittest.py:
(script_dir):
(ExecutiveTest.setUp):
(ExecutiveTest):
(ExecutiveTest.tearDown):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105954
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Thu, 26 Jan 2012 01:30:26 +0000 (01:30 +0000)]
Disable tests on the mac-ews while we sort out hte stability issues.
* Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(MacEWS):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105952
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Thu, 26 Jan 2012 01:29:12 +0000 (01:29 +0000)]
investigate use of 'mac' and 'win' as fully-specified port names for the apple ports
https://bugs.webkit.org/show_bug.cgi?id=76475
Reviewed by Eric Seidel.
This patch cleans up the internal usage of port names for the
Apple mac and Apple win ports so that 'mac' and 'win are never
considered "fully specified" port names: they are still legal
input to the PortFactory.get() routine, but only if run on the given
platform (i.e. trying to PortFactory.get('mac') on windows or
linux will return an error, since we don't know which version of
the port is desired.
This also cleans up handling of the webkit2 variants, so that
the full port names consistently follow the
<operating_system>-<version>[-<wk2>] convention.
Lastly this patch adds some assertions and removes some
try/catch logic to catch more programming and usage errors;
previously mac-tiger might've been allowed -- and it would've
translated into using just the baselines in platform/mac -- but
now it should fail.
* Scripts/webkitpy/layout_tests/port/apple.py:
(ApplePort.determine_full_port_name):
(ApplePort.__init__):
(ApplePort):
(ApplePort._port_name_with_version):
* Scripts/webkitpy/layout_tests/port/builders.py:
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_mac):
(FactoryTest.test_win):
* Scripts/webkitpy/layout_tests/port/mac.py:
(MacPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/mac_unittest.py:
(MacTest.test_versions):
* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/win_unittest.py:
(WinTest.test_versions):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105951
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 26 Jan 2012 01:24:42 +0000 (01:24 +0000)]
Reapply Daniel Bates's build fix from r105847 after the exact same issue was reintroduced in r105930.
Attempt to fix Mac build after changeset <http://trac.webkit.org/changeset/105930>.
(https://bugs.webkit.org/show_bug.cgi?id=75049)
Don't include NotImplemented.h in KURL.h since NotImplemented.h includes Logging.h, which defines
LOG_CHANNEL_PREFIX to be "Log". And this conflicts with the inclusion of WebKitLogging.h in
WebHTMLView.mm (which would have defined LOG_CHANNEL_PREFIX to be "WebKitLog").
* platform/KURL.h:
(WebCore::KURL::innerURL):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105950
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Thu, 26 Jan 2012 01:15:23 +0000 (01:15 +0000)]
Unreviewed. Marking svg/custom/object-sizing-explicit-width.xhtml and
storage/indexeddb/prefetch-bugfix-108071.html as flaky on Chromium.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105949
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Thu, 26 Jan 2012 01:11:27 +0000 (01:11 +0000)]
webkitpy: print nicer errors while linting expectations files, remove redundant tests
https://bugs.webkit.org/show_bug.cgi?id=76955
Reviewed by Adam Barth.
This change cleans up the errors that are printed so that the
are more "quickfix" compatible (path:lineno).
Also, there were a bunch of redundant tests between
layout_tests.models.test_expectations_unittest and
style.checkers.test_expectations_unittest. The latter should
just expect the former to do most of the testing.
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser._parse_modifiers):
(TestExpectations._report_errors):
(TestExpectations._add_skipped_tests):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(test_parse_error_nonfatal):
(SemanticTests.test_bad_bugid):
* Scripts/webkitpy/style/checkers/test_expectations.py:
(TestExpectationsChecker.__init__):
* Scripts/webkitpy/style/checkers/test_expectations_unittest.py:
(TestExpectationsTestCase.assert_lines_lint):
(TestExpectationsTestCase.test_valid_expectations):
(TestExpectationsTestCase.test_invalid_expectations):
(TestExpectationsTestCase.test_tab):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105948
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 01:09:06 +0000 (01:09 +0000)]
Unreviewed, rolling out r105940.
http://trac.webkit.org/changeset/105940
https://bugs.webkit.org/show_bug.cgi?id=76095
Only half this change landed
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105947
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 00:54:44 +0000 (00:54 +0000)]
webkit-patch apply-* should always continue after failures
https://bugs.webkit.org/show_bug.cgi?id=77057
Reviewed by Adam Barth.
As far as I can tell there is only one potential drawback to always
forcing: that if you're somehow in the wrong directory it will create new
directories for new files. Since webkit-patch always cd's to the root
it seems that's not a drawback. The drawback of not using --force for
svn-apply, is that it will stop after the first failure, which is rarely
(if ever) the desired behavior. This just removes the force option
(which was strangely hidden behind --non-interactive). This should
make for a better user experiance.
* Scripts/webkitpy/common/checkout/checkout.py:
(Checkout.apply_patch):
* Scripts/webkitpy/common/checkout/checkout_mock.py:
(MockCheckout.apply_patch):
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
(CheckoutTest.test_chromium_deps):
(CheckoutTest):
(CheckoutTest.test_apply_patch):
* Scripts/webkitpy/tool/commands/download_unittest.py:
(DownloadCommandsTest._default_options):
* Scripts/webkitpy/tool/steps/applypatch.py:
(ApplyPatch.options):
(ApplyPatch.run):
* Scripts/webkitpy/tool/steps/options.py:
(Options):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105945
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Thu, 26 Jan 2012 00:52:40 +0000 (00:52 +0000)]
nrwt: should be able to run --platform test interactively
https://bugs.webkit.org/show_bug.cgi?id=76959
Reviewed by Adam Barth.
As part of refactoring the Port interfaces, in r103254 I made
passing a Host object to the Port mandatory; previously TestPort
objects would create their own (mock) hosts. However,
new-run-webkit-tests always passed a real Host, not a MockHost,
and so you couldn't run new-run-webkit-tests --platform test
interactively to debug test failures.
This change fixes that by creating a MockHost instead of a real
host if you say --platform test*.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105944
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 26 Jan 2012 00:48:04 +0000 (00:48 +0000)]
Attempted Mac build fix after r105939.
* runtime/DatePrototype.cpp: Don't #include unicode/udat.h on Mac or iOS.
It isn't used on these platforms and isn't available in the ICU headers
for Mac.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105943
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrowe@apple.com [Thu, 26 Jan 2012 00:34:15 +0000 (00:34 +0000)]
Build in to an alternate location when USE_STAGING_INSTALL_PATH is set.
<rdar://problem/
10609417> Adopt USE_STAGING_INSTALL_PATH
Reviewed by David Kilzer.
Source/JavaScriptCore:
* Configurations/Base.xcconfig: Define NORMAL_JAVASCRIPTCORE_FRAMEWORKS_DIR, which contains
the path where JavaScriptCore is normally installed. Update JAVASCRIPTCORE_FRAMEWORKS_DIR
to point to the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
* Configurations/JavaScriptCore.xcconfig: Always set the framework's install name based on
the normal framework location. This prevents an incorrect install name from being used when
installing in to the staged frameworks directory.
Source/ThirdParty:
* gtest/xcode/Config/ProductionProject.xcconfig: Ensure that the staged frameworks path
is in the framework search path when USE_STAGING_INSTALL_PATH is set. Look for the WebCore
framework in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
Source/WebCore:
* Configurations/WebCore.xcconfig: Define NORMAL_WEBCORE_FRAMEWORKS_DIR, which contains
the path where WebCore is normally installed. Update WEBCORE_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set.
Source/WebKit/mac:
* Configurations/WebKit.xcconfig: Define NORMAL_WEBKIT_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Define
NORMAL_PRODUCTION_FRAMEWORKS_DIR, which contains the path where our public frameworks
are normally installed. Update PRODUCTION_FRAMEWORKS_DIR to point to the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set. Always set the framework's install name
based on the normal framework location. This prevents an incorrect install name from being
used when installing in to the staged frameworks directory. Look for our other frameworks
in the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
WEBCORE_PRIVATE_HEADERS_DIR to find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.
Source/WebKit2:
* Configurations/BaseTarget.xcconfig: Define NORMAL_WEBKIT2_FRAMEWORKS_DIR, which contains
the path where WebKit is normally installed. Update WEBKIT2_FRAMEWORKS_DIR to point to
the staged frameworks directory when USE_STAGING_INSTALL_PATH is set. Update
UMBRELLA_FRAMEWORKS_DIR so we can find WebCore at the top level of the staged frameworks
directory when USE_STAGING_INSTALL_PATH is set, rather than finding it embedded inside of
WebKit.framework.
* Configurations/PluginProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
* Configurations/WebKit2.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
Always set the framework's install name based on the normal framework location. This prevents
an incorrect install name from being used when installing in to the staged frameworks directory.
* Configurations/WebProcess.xcconfig: Set our install path based on WEBKIT2_FRAMEWORKS_DIR.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105942
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 00:27:03 +0000 (00:27 +0000)]
"text" and "URL" legacy clipboard types should not be case sensitive
https://bugs.webkit.org/show_bug.cgi?id=76947
Reviewed by Adam Barth.
Source/WebCore:
This matches the HTML5 spec which says the first thing to do is to lowercase
the type before comparing.
I also removed the stripping of whitespace since that is not part of the modern spec (and no tests failed as a result of removal).
Turns out we already had a test for case sensitivity, but it was disabled on Mac
so I just re-enabled it and have added failing expectations for the parts
of the test we still fail.
* platform/mac/ClipboardMac.mm:
(WebCore::cocoaTypeFromHTMLClipboardType):
(WebCore::ClipboardMac::getData):
LayoutTests:
This test has been disabled on Mac since it was added 2 years ago.
But we actually need to fix at least one of the bugs covered by this
test, so I'm unskipping it and adding failing expectations for the
parts Mac doens't yet pass.
* platform/mac/Skipped:
* platform/mac/editing/pasteboard/dataTransfer-setData-getData-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105941
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 00:17:59 +0000 (00:17 +0000)]
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095
Reviewed by Adam Barth.
Source/WebCore:
document.createElement("isindex") should produce an HTMLUnknownElement
per the HTML5 spec. The parser automagically translates <isindex> into
a whole dom tree roughly representing what <isindex> used to do 15 years ago. :)
This patch just removes our support for HTMLIsIndexElement. The parser
support was already in. Having support for HTMLIsIndexElement was causing
one of the IE TestCenter tests to fail.
Test: fast/dom/HTMLIsIndexElement/prototype-chain.html
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
(WebKit::createHTMLElementWrapper):
* bindings/objc/DOM.mm:
(WebCore::createElementClassMap):
* bindings/objc/DOMHTML.h:
* bindings/objc/PublicDOMInterfaces.h:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLIsIndexElement.cpp: Removed.
* html/HTMLIsIndexElement.h: Removed.
* html/HTMLIsIndexElement.idl: Removed.
* html/HTMLTagNames.in:
* page/DOMWindow.idl:
Source/WebKit/mac:
* MigrateHeaders.make:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105940
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
efidler@rim.com [Thu, 26 Jan 2012 00:11:34 +0000 (00:11 +0000)]
Implement Date.toLocaleString() using ICU
https://bugs.webkit.org/show_bug.cgi?id=76714
Reviewed by Darin Adler.
* runtime/DatePrototype.cpp:
(JSC::formatLocaleDate):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105939
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Thu, 26 Jan 2012 00:00:03 +0000 (00:00 +0000)]
HTMLEmbedObject should match HTMLObjectElement by stopping any load when it is removed from beforeload
https://bugs.webkit.org/show_bug.cgi?id=74360
Reviewed by Adam Barth.
Source/WebCore:
Neither of these !renderer() checks is strictly necessary since requestObject()
makes the same check. However requestObject() asserts before it makes that
check, so it makes sense to add the check to HTMLEmebedObject instead of
removing the check from HTMLObjectElement.
I also moved the protect RefPtr to before the beforeload dispatch since
beforeload can remove the whole DOM element (as this test does) and
thus I beleive the renderer() check could be checking free'd memory.
Updated fast/dom/beforeload/remove-flash-in-beforeload-listener.html to test
<embed> as well as <object>.
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::updateWidget):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateWidget):
LayoutTests:
Test <embed> as well as <object> in this test.
* fast/dom/beforeload/remove-flash-in-beforeload-listener.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105938
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tkent@chromium.org [Wed, 25 Jan 2012 23:56:30 +0000 (23:56 +0000)]
Move focus/blur handling code of HTMLInputElement to InputType
https://bugs.webkit.org/show_bug.cgi?id=76984
Reviewed by Dimitri Glazkov.
No new tests. Just a refactoring.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::handleFocusEvent):
Move the code to PasswordInputType::handleFocusEvent().
(WebCore::HTMLInputElement::handleBlurEvent):
Move the code to TextFieldInputType::handleBlurEvent() and
PasswordInputType::handleBlurEvent().
* html/InputType.cpp:
(WebCore::InputType::handleFocusEvent):
* html/InputType.h:
(InputType): Add handleFocusEvent().
* html/PasswordInputType.cpp:
(WebCore::PasswordInputType::handleFocusEvent):
Move the code for type=password from HTMLInputElement::handleFocusEvent().
(WebCore::PasswordInputType::handleBlurEvent):
Move the code for tyep=password from HTMLInputElement::handleBlurEvent().
* html/PasswordInputType.h:
(PasswordInputType): Add handleFocusEvent() and handleBlurEvent().
* html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::handleBlurEvent):
Move the code for text field types from HTMLInputElement::handleBlurEvent().
* html/TextFieldInputType.h:
(TextFieldInputType): Add handleBlurEvent().
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105937
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 25 Jan 2012 23:52:52 +0000 (23:52 +0000)]
run-webkit-tests --lint-test-files should lint all the ports by default
https://bugs.webkit.org/show_bug.cgi?id=76749
Reviewed by Ojan Vafai.
Currently run-webkit-tests --lint-test-files will only lint the
test_expectations for the single port determined by the command
line options. This is not obvious and can produce unintended results
if you want to lint the chromium port (probably the normal case
for using --lint-test-files) but don't specify a port name or
--chromium.
I think we should probably lint *all* of the ports if no port
name is supplied. This change implements that, and also moves
the linting logic out of the Manager class, since this really
has nothing to do with Managers. It has little to do with
run-webkit-tests, but splitting it into a different script would
introduce compatibility issues. It might make sense to do that
anyway, in a separate patch and combining that with cleaning up
the style checker to share more code.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._strip_test_dir_prefix):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(lint):
(run):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(LintTest.test_all_configurations): added.
(LintTest.test_lint_test_files): added.
(LintTest.test_lint_test_files__errors): added.
(MainTest.test_lint_test_files): removed.
(MainTest.test_lint_test_files__errors): removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105936
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dpranke@chromium.org [Wed, 25 Jan 2012 23:46:02 +0000 (23:46 +0000)]
webkitpy: clean up a bunch of test scaffolding
https://bugs.webkit.org/show_bug.cgi?id=76973
Reviewed by Eric Seidel.
There were several helper modules in the webkitpy.test package
that appear to only be used by executive_unittest.py. I am
rolling them all into that file to make that clearer.
* Scripts/webkitpy/common/system/executive_unittest.py:
(ExecutiveTest.test_run_command_args_type):
(ExecutiveTest.test_run_command_with_unicode):
(ExecutiveTest.test_running_pids):
(command_line):
(main):
* Scripts/webkitpy/common/system/fileutils.py: Removed.
* Scripts/webkitpy/test/cat.py: Removed.
* Scripts/webkitpy/test/cat_unittest.py: Removed.
* Scripts/webkitpy/test/echo.py: Removed.
* Scripts/webkitpy/test/echo_unittest.py: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105935
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noam.rosenthal@nokia.com [Wed, 25 Jan 2012 23:40:41 +0000 (23:40 +0000)]
[WK2][Qt] REGRESSION: Pages with transform animations sometimes omit some of the layers since r105413
https://bugs.webkit.org/show_bug.cgi?id=76886
Reviewed by Kenneth Rohde Christiansen.
We now render the whole layer if it or one if its ancestors has an active transform
animations. It's possible to optimize further in the future, but not currently necessary.
Also, we make sure that when a WebGraphicsLayer's property that affects transformation is
changed, all its descandants layers are marked as modified so that we re-adjust their
visible rect in the next pass.
* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::notifyChangeRecursively):
(WebCore):
(WebCore::WebGraphicsLayer::setPosition):
(WebCore::WebGraphicsLayer::setAnchorPoint):
(WebCore::WebGraphicsLayer::setSize):
(WebCore::WebGraphicsLayer::setTransform):
(WebCore::WebGraphicsLayer::setChildrenTransform):
(WebCore::WebGraphicsLayer::setPreserves3D):
(WebCore::WebGraphicsLayer::setMasksToBounds):
(WebCore::WebGraphicsLayer::addAnimation):
(WebCore::WebGraphicsLayer::removeAnimation):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::selfOrAncestorHasActiveTransformAnimations):
* WebProcess/WebCoreSupport/WebGraphicsLayer.h:
(WebGraphicsLayer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105934
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Wed, 25 Jan 2012 23:31:26 +0000 (23:31 +0000)]
Node.cpp shouldn't duplicate QualifiedName parsing logic
https://bugs.webkit.org/show_bug.cgi?id=76672
Reviewed by Eric Seidel.
I added this code out of ignorance that this logic already existed in
Document.cpp. In a future patch, we should consider moving it to
QualifiedName.cpp.
* dom/Node.cpp:
(WebCore):
(WebCore::Node::checkSetPrefix):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105933
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Wed, 25 Jan 2012 23:29:53 +0000 (23:29 +0000)]
Share more code between updateWidget implementations in HTMLEmbedElement and HTMLObjectElement
https://bugs.webkit.org/show_bug.cgi?id=74340
Reviewed by Adam Barth.
I'm preparing to unify these two methods, and starting by sharing more code between them.
* html/HTMLEmbedElement.cpp:
(WebCore::HTMLEmbedElement::updateWidget):
* html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateWidget):
* html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::guardedDispatchBeforeLoadEvent):
* html/HTMLPlugInElement.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105932
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric@webkit.org [Wed, 25 Jan 2012 23:11:46 +0000 (23:11 +0000)]
Remove Python 2.5 support from WebKit
https://bugs.webkit.org/show_bug.cgi?id=71593
Reviewed by Adam Barth.
Just removing support from this one core file.
I'll commit the rest of the (large) change once we've
gone 24 hours and seen that no bots have exploded.
We can roll out this one change if we break bots
and then roll in the rest once those bots are fixed.
* Scripts/webkitpy/common/system/executive.py:
(Executive.cpu_count):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105931
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ericu@chromium.org [Wed, 25 Jan 2012 22:43:19 +0000 (22:43 +0000)]
Add full support for filesystem URLs.
https://bugs.webkit.org/show_bug.cgi?id=75049
Reviewed by Adam Barth.
No new tests; existing layout tests cover the basic functionality, and
the new functionality won't be there until Chromium adds it. This patch
merely enables that, without changing behavior.
Source/WebCore:
* fileapi/EntryBase.cpp:
(WebCore::EntryBase::toURL): Add missing escaping of URL path.
* page/SecurityOrigin.cpp:
(WebCore::extractInnerURL): Use innerURL member, if it's populated.
* platform/KURL.h:
(WebCore::KURL::innerURL): Add innerURL member.
* platform/KURLGoogle.cpp:
(WebCore::KURLGooglePrivate::KURLGooglePrivate):
(WebCore::KURLGooglePrivate::operator=):
Add copy constructor and operator=, which are now needed since
m_innerURL needs special handling.
(WebCore::KURLGooglePrivate::setUtf8):
(WebCore::KURLGooglePrivate::setAscii):
Add calls to initInnerURL.
(WebCore::KURLGooglePrivate::initInnerURL):
Add method to init/copy m_innerURL.
(WebCore::KURLGooglePrivate::copyTo):
Handle m_innerURL during copies.
(WebCore::encodeWithURLEscapeSequences):
Unescape %2F ['/'] in paths; it's much more readable, and it's safe.
* platform/KURLGooglePrivate.h:
(WebCore::KURLGooglePrivate::innerURL): Add accessor for new m_innerURL.
Source/WebKit/chromium:
* tests/KURLTest.cpp:
TEST(KURLTest, Encode): Update expectation that '/' sails through unescaped.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105930
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noel.gordon@gmail.com [Wed, 25 Jan 2012 22:40:03 +0000 (22:40 +0000)]
[Chromium] Layout Test fast/canvas/webgl/invalid-passed-params.html is failing
https://bugs.webkit.org/show_bug.cgi?id=75784
Reviewed by Kenneth Russell.
Passing on ToT chromium.org, webkit.org (GPU and non-GPU), rebaseline this test.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105929
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dcheng@chromium.org [Wed, 25 Jan 2012 22:33:33 +0000 (22:33 +0000)]
[chromium] Refactor Clipboard invalidate for DataTransferItem/DataTransferItemList into a wrapper
https://bugs.webkit.org/show_bug.cgi?id=76993
We want to unify the backing data store for ClipboardChromium and DataTransferItems. For
that, we want use a similar representation to DataTransferItem list inside
ChromiumDataObject. However, since ChromiumDataObject should be valid in scopes where
Clipboard is not (e.g. default drag processing), we need to separate the clipboard
invalidation logic into a wrapper class.
Reviewed by Tony Chang.
Covered by existing tests.
* platform/chromium/ClipboardChromium.cpp:
():
(WebCore::ClipboardChromium::items):
* platform/chromium/DataTransferItemChromium.cpp:
(WebCore::DataTransferItemChromium::getAsString):
* platform/chromium/DataTransferItemListChromium.cpp:
(WebCore::DataTransferItemListChromium::length):
(WebCore::DataTransferItemListChromium::item):
(WebCore::DataTransferItemListChromium::deleteItem):
(WebCore::DataTransferItemListChromium::clear):
(WebCore::DataTransferItemListChromium::add):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105928
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 25 Jan 2012 22:25:10 +0000 (22:25 +0000)]
html5-full-render.html fails due to a log
https://bugs.webkit.org/show_bug.cgi?id=77046
Reviewed by Adam Barth.
Replace the call to log() in html5-full-render.html by a call to newly added logInfo(),
which doesn't print anything inside DRT.
* Parser/html5-full-render.html:
* resources/runner.js:
(logInfo):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105926
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
noam.rosenthal@nokia.com [Wed, 25 Jan 2012 22:13:29 +0000 (22:13 +0000)]
[Texmap] Divide TextureMapperNode.cpp to 3 files.
https://bugs.webkit.org/show_bug.cgi?id=76660
Reviewed by Kenneth Rohde Christiansen.
Split the animation part of TextureMapperNode out to a separate file, called
TextureMapperAnimation.
Provide a clean interface for that class, that allows separating the internals of the scene
painting from the internals of the animation interpolation.
No new tests. Existing animation tests cover this.
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::addAnimation):
(WebCore::GraphicsLayerTextureMapper::pauseAnimation):
(WebCore::GraphicsLayerTextureMapper::removeAnimation):
* platform/graphics/texmap/GraphicsLayerTextureMapper.h:
(GraphicsLayerTextureMapper):
* platform/graphics/texmap/TextureMapperNode.cpp:
(WebCore::TextureMapperNode::syncCompositingStateSelf):
(WebCore::TextureMapperNode::descendantsOrSelfHaveRunningAnimations):
(WebCore::TextureMapperNode::syncAnimations):
(WebCore::TextureMapperNode::syncAnimationsRecursively):
(WebCore::TextureMapperNode::syncCompositingState):
* platform/graphics/texmap/TextureMapperNode.h:
(TextureMapperNode):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105925
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 22:11:40 +0000 (22:11 +0000)]
Layout Test http/tests/workers/terminate-during-sync-operation.html times out frequently on Win DBG
https://bugs.webkit.org/show_bug.cgi?id=77047
Unreviewed. Marking http/tests/workers/terminate-during-sync-operation.html as flaky (timeout) on Chromium Win DBG
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105924
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
knorton@google.com [Wed, 25 Jan 2012 22:00:53 +0000 (22:00 +0000)]
[chromium] Unreviewed expectation update after r105613.
* platform/chromium-mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.png:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105923
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 21:46:47 +0000 (21:46 +0000)]
ENABLE_SHADOW_DOM should be available via build-webkit --shadow-dom
https://bugs.webkit.org/show_bug.cgi?id=76863
.:
Patch by Hajime Morita <morrita@google.com>> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Source/cmake/OptionsBlackBerry.cmake:
* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* configure.ac:
Source/JavaScriptCore:
Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
No tests, it's a behid flag configuration change.
* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Source/WebKit/mac:
Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Configurations/FeatureDefines.xcconfig:
Tools:
Patch by Hajime Morita <morrita@google.com> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* Scripts/build-webkit:
* qmake/mkspecs/features/features.prf:
WebKitLibraries:
Patch by Hajime Morita <morrita@google.com>> on 2012-01-25
Reviewed by Dimitri Glazkov.
Added a feature flag.
* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105922
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 21:09:10 +0000 (21:09 +0000)]
[Chromium]: rebaseline after r105878
https://bugs.webkit.org/show_bug.cgi?id=77017
Unreviewed Chromium image expectations update.
Not updating test_expectations because I am not sure that the rebaselining tool did
the right thing.
Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-25
* platform/chromium-linux-x86/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-linux/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-linux/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-linux/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-mac-leopard/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/custom/zero-path-square-cap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-mac/svg/custom/zero-path-square-cap-rendering-expected.png: Removed.
* platform/chromium-win-vista/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win-xp/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering-expected.png: Added.
* platform/chromium-win/svg/custom/zero-path-square-cap-rendering-expected.txt: Added.
* platform/chromium-win/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-win/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium/svg/custom/subpaths-moveto-only-rendering-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105921
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 21:06:51 +0000 (21:06 +0000)]
Unreviewed, rolling out r105906.
http://trac.webkit.org/changeset/105906
https://bugs.webkit.org/show_bug.cgi?id=77038
Breaks compositing/visibility/layer-visible-content.html and
compositing/visibility/visibility-image-layers-dynamic.html
(Requested by leviw|gardening on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-25
Source/WebCore:
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
LayoutTests:
* compositing/visibility/layer-visible-content-expected.txt:
* compositing/visibility/visibility-image-layers-dynamic-expected.txt:
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105920
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 20:57:17 +0000 (20:57 +0000)]
Page Up and Page Down mappings are backwards on BlackBerry port.
https://bugs.webkit.org/show_bug.cgi?id=77021
Fix Page Up and Page Down mappings as they are reversed.
Patch by Mike Fenton <mifenton@rim.com> on 2012-01-25
Reviewed by Antonio Gomes.
* platform/blackberry/PlatformKeyboardEventBlackBerry.cpp:
(WebCore::keyIdentifierForBlackBerryCharacter):
(WebCore::windowsKeyCodeForBlackBerryCharacter):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105919
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 20:52:41 +0000 (20:52 +0000)]
[BlackBerry] Implement OSAllocator::commit/decommit.
BlackBerry port should support virtual memory decommiting.
https://bugs.webkit.org/show_bug.cgi?id=77013
Patch by Yong Li <yoli@rim.com> on 2012-01-25
Reviewed by Rob Buis.
* wtf/OSAllocatorPosix.cpp:
(WTF::OSAllocator::reserveUncommitted):
(WTF::OSAllocator::commit):
(WTF::OSAllocator::decommit):
* wtf/Platform.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105918
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Wed, 25 Jan 2012 20:47:34 +0000 (20:47 +0000)]
<content> should create HTMLContentElement object
https://bugs.webkit.org/show_bug.cgi?id=76439
Reviewed by Dimitri Glazkov.
Source/WebCore:
- Added HTMLContentElement.idl which has @select attribute.
- Added "content" element.
Both are behind ENABLE_SHADOW_DOM.
Tests: fast/dom/shadow/content-element-api.html
fast/dom/shadow/content-element-outside-shadow.html
* CMakeLists.txt:
* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLTagNames.in:
* html/shadow/HTMLContentElement.cpp:
(WebCore::contentTagName):
(WebCore):
(WebCore::HTMLContentElement::create):
* html/shadow/HTMLContentElement.h:
(HTMLContentElement):
* html/shadow/HTMLContentElement.idl: Added.
LayoutTests:
Ensure that contnet elements are renderered not only inside the shadow tree
but also the outside that.
* fast/dom/shadow/content-element-api-expected.txt: Added.
* fast/dom/shadow/content-element-api.html: Added.
* fast/dom/shadow/content-element-outside-shadow-expected.txt: Added.
* fast/dom/shadow/content-element-outside-shadow.html: Added.
* platform/efl/test_expectations.txt:
* platform/gtk/test_expectations.txt:
* platform/mac/test_expectations.txt:
* platform/qt/test_expectations.txt:
* platform/win/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105917
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mrobinson@webkit.org [Wed, 25 Jan 2012 20:37:13 +0000 (20:37 +0000)]
[WK2] Navigation events not triggered by a mouse event claim to be triggered by the left mouse button during policy decisions
https://bugs.webkit.org/show_bug.cgi?id=76344
Reviewed by Sam Weinig.
Source/WebKit2:
When creating InjectedBundleNavigationActions, initialize the mouse button to NoButton.
This ensures that when there is no mouse event associated with the action, when the event
hits the client-API layer, the button is still NoButton.
* WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction): Initialize m_mouseButton
to WebMouseEvent::NoButton.
Tools:
Add a test verifying that the mouse button during policy decisions for
events not triggered by mouse events is NoButton.
* TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
(TestWebKitAPI::decidePolicyForNavigationAction): Added test.
(TestWebKitAPI::decidePolicyForNewWindowAction): Added test.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105916
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 25 Jan 2012 20:29:17 +0000 (20:29 +0000)]
run-perf-tests should timeout sooner
https://bugs.webkit.org/show_bug.cgi?id=77026
Reviewed by Adam Barth.
Bump off the timeout from 10 minutes to 4 minutes.
Also use float instead of str in test result values to compress the size of json files bots upload.
* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._parse_args):
(PerfTestsRunner._process_chromium_style_test_result):
(PerfTestsRunner._process_parser_test_result):
* Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
(test_run_test_set_for_parser_tests):
(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105915
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Wed, 25 Jan 2012 20:21:52 +0000 (20:21 +0000)]
Unreviewed, rolling out r105828.
http://trac.webkit.org/changeset/105828
https://bugs.webkit.org/show_bug.cgi?id=77036
Caused many crashes in ClusterFuzz and PerformanceTests
(Requested by inferno-sec on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-25
Source/WebCore:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removeChild):
* rendering/RenderBlock.h:
(RenderBlock):
LayoutTests:
* fast/css-generated-content/float-first-letter-siblings-convert-to-inline-expected.txt: Removed.
* fast/css-generated-content/float-first-letter-siblings-convert-to-inline.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105911
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
enrica@apple.com [Wed, 25 Jan 2012 20:07:55 +0000 (20:07 +0000)]
WebView should implement typingAttributes methods to work correctly with the Inspector bar in Mail.
https://bugs.webkit.org/show_bug.cgi?id=76951
<rdar://problem/9325158>
Reviewed by Alexey Proskuryakov.
Source/WebKit/mac:
* WebView/WebHTMLView.mm: Removed typingAttributes implementation.
* WebView/WebView.mm:
(-[WebView typingAttributes]): Added.
Tools:
* TestWebKitAPI/Tests/mac/InspectorBar.mm: Modified to reflect the changes to WebView
and WebHTMLView.
(TestWebKitAPI::TEST):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105908
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
abarth@webkit.org [Wed, 25 Jan 2012 20:03:45 +0000 (20:03 +0000)]
This test is actually flaky by timing out, not by failing.
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105907
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
shawnsingh@chromium.org [Wed, 25 Jan 2012 19:53:05 +0000 (19:53 +0000)]
Fix the semantics of passing contentsVisible flag to GraphicsLayers
https://bugs.webkit.org/show_bug.cgi?id=76975
Reviewed by Simon Fraser.
Source/WebCore:
This patch is covered by existing tests, in particular
compositing/visibility/layer-visible-content.html; its
expectations are rebaselined.
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
LayoutTests:
* compositing/visibility/layer-visible-content-expected.txt: rebaselined expectations.
* compositing/visibility/visibility-image-layers-dynamic-expected.txt: rebaselined expectations.
* platform/chromium/test_expectations.txt: removed the expectation that the test fails on chromium, it should pass now.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105906
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
oliver@apple.com [Wed, 25 Jan 2012 19:43:06 +0000 (19:43 +0000)]
Make DFG update topCallFrame
https://bugs.webkit.org/show_bug.cgi?id=76969
Reviewed by Filip Pizlo.
Add NativeCallFrameTracer to manage topCallFrame assignment
in the DFG operations, and make use of it.
* dfg/DFGOperations.cpp:
(JSC::DFG::operationPutByValInternal):
():
* interpreter/Interpreter.h:
(JSC):
(NativeCallFrameTracer):
(JSC::NativeCallFrameTracer::NativeCallFrameTracer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105905
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Wed, 25 Jan 2012 19:42:47 +0000 (19:42 +0000)]
Unreviewed test fix to followup r105900.
* compositing/overflow/overflow-scaled-descendant-overlapping.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105904
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Wed, 25 Jan 2012 19:27:54 +0000 (19:27 +0000)]
support overflow:auto and overflow:scroll in new flexbox
https://bugs.webkit.org/show_bug.cgi?id=76953
Reviewed by David Hyatt.
Source/WebCore:
Tests: css3/flexbox/flexbox-overflow-auto-expected.html
css3/flexbox/flexbox-overflow-auto.html
* rendering/RenderBox.cpp:
(WebCore::RenderBox::addLayoutOverflow): In the case of reverse flexboxen, we can overflow up or to the left (like horizontal-bt or rtl content).
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Call updateScrollInfoAfterLayout() to add overflow scrollbars.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren): In row-reverse, offset the start of the content by the scrollbar.
(WebCore::RenderFlexibleBox::layoutColumnReverse): In column-reverse, offset the start of the content by the scrollbar.
* rendering/RenderFlexibleBox.h:
(RenderFlexibleBox): Make isHorizontalFlow public.
* rendering/style/RenderStyle.h:
(WebCore::RenderStyleBitfields::isReverseFlexDirection): Convenience method.
LayoutTests:
* css3/flexbox/flexbox-overflow-auto-expected.html: Added.
* css3/flexbox/flexbox-overflow-auto.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105903
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 19:13:28 +0000 (19:13 +0000)]
Unreviewed, rolling out r105885.
http://trac.webkit.org/changeset/105885
https://bugs.webkit.org/show_bug.cgi?id=77027
Causes assertions in Position. (Requested by leviw|gardening
on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-25
Source/WebCore:
* dom/Position.cpp:
(WebCore::Position::upstream):
(WebCore::Position::downstream):
* dom/PositionIterator.cpp:
* dom/PositionIterator.h:
(PositionIterator):
* editing/htmlediting.cpp:
(WebCore::nextCandidate):
(WebCore::nextVisuallyDistinctCandidate):
(WebCore::previousCandidate):
(WebCore::previousVisuallyDistinctCandidate):
LayoutTests:
* perf/selection-skip-hidden-node-expected.txt: Removed.
* perf/selection-skip-hidden-node.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105902
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alexis.menard@openbossa.org [Wed, 25 Jan 2012 19:11:10 +0000 (19:11 +0000)]
border-image should be implemented like a shorthand.
https://bugs.webkit.org/show_bug.cgi?id=76697
Reviewed by Tony Chang.
Source/WebCore:
Make sure that border-image is implemented like a shorthand : when we parse
it we set the correct value to its longhands. The code was not doing it
previously as we inherited the old implementation of -webkit-border-image which
is not a shorthand but a regular property. It will then increase
style.length for a given element as we now expand the longhands.
The behavior stays the same for -webkit-border-image.
Test: fast/css/border-image-style-length.html
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
(WebCore::BorderImageParseContext::BorderImageParseContext):
(WebCore::BorderImageParseContext::commitWebKitBorderImage):
(WebCore::BorderImageParseContext::commitBorderImage):
(BorderImageParseContext):
(WebCore::BorderImageParseContext::commitBorderImageProperty):
(WebCore::CSSParser::parseBorderImage):
* css/CSSParser.h:
():
* css/CSSPropertyLonghand.cpp:
(WebCore::initShorthandMap):
* css/CSSStyleApplyProperty.cpp:
():
(WebCore::ApplyPropertyExpanding::applyInheritValue):
(WebCore::ApplyPropertyExpanding::applyInitialValue):
(WebCore::ApplyPropertyExpanding::applyValue):
(WebCore::ApplyPropertyBorderImageModifier::applyInitialValue):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::mapNinePieceImage):
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::ensurePropertyMap):
(WebCore::addShorthandProperties):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyleBitfields::borderImageSlices):
(WebCore::RenderStyleBitfields::borderImageWidth):
(WebCore::RenderStyleBitfields::borderImageOutset):
(RenderStyleBitfields):
(WebCore::RenderStyleBitfields::setBorderImageSlices):
(WebCore::RenderStyleBitfields::setBorderImageWidth):
(WebCore::RenderStyleBitfields::setBorderImageOutset):
LayoutTests:
Make sure we cover that border-image correctly expands its longhands.
* fast/css/border-image-style-length-expected.txt: Added.
* fast/css/border-image-style-length.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105901
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
morrita@google.com [Wed, 25 Jan 2012 19:04:10 +0000 (19:04 +0000)]
[Refactoring][Internals] Should have InternalSettings
https://bugs.webkit.org/show_bug.cgi?id=76424
Source/WebCore:
Reviewed by Kent Tamura.
This change extracted setting related method from window.internals
to window.internals.settings object.
- Invoked Internals::reset() in the constructor to employ Document object.
- Moved setting and configuration related Internals methods to
newly introduced InternalSettings object.
No new tests, covered by existing tests.
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* WebCore.vcproj/WebCoreTestSupport.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* testing/InternalSettings.cpp: Added.
(WebCore::InternalSettings::create):
(WebCore::InternalSettings::~InternalSettings):
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::settings):
(WebCore::InternalSettings::document):
(WebCore::InternalSettings::page):
(WebCore::InternalSettings::setInspectorResourcesDataSizeLimits):
(WebCore::InternalSettings::setForceCompositingMode):
(WebCore::InternalSettings::setAcceleratedFiltersEnabled):
(WebCore::InternalSettings::setEnableCompositingForFixedPosition):
(WebCore::InternalSettings::setEnableCompositingForScrollableFrames):
(WebCore::InternalSettings::setAcceleratedDrawingEnabled):
(WebCore::InternalSettings::setEnableScrollAnimator):
(WebCore::InternalSettings::setZoomAnimatorTransform):
(WebCore::InternalSettings::setZoomParameters):
(WebCore::InternalSettings::setMockScrollbarsEnabled):
(WebCore::InternalSettings::setPasswordEchoEnabled):
(WebCore::InternalSettings::setPasswordEchoDurationInSeconds):
(WebCore::InternalSettings::setShouldLayoutFixedElementsRelativeToFrame):
(WebCore::InternalSettings::setUnifiedTextCheckingEnabled):
(WebCore::InternalSettings::unifiedTextCheckingEnabled):
(WebCore::InternalSettings::pageScaleFactor):
(WebCore::InternalSettings::setPageScaleFactor):
(WebCore::InternalSettings::setPerTileDrawingEnabled):
* testing/InternalSettings.h: Added.
* testing/InternalSettings.idl: Added.
* testing/Internals.cpp:
(WebCore::Internals::create):
(WebCore::Internals::Internals):
(WebCore::Internals::reset):
* testing/Internals.h:
(WebCore::Internals::settings):
* testing/Internals.idl:
* testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):
* testing/v8/WebCoreTestSupport.cpp:
(WebCoreTestSupport::injectInternalsObject):
Tools:
Reviewed by Kent Tamura.
* GNUmakefile.am: Added so new files.
LayoutTests:
Updated to follow API receiver change.
Reviewed by Kent Tamura.
* compositing/geometry/fixed-position-composited-page-scale-down.html:
* compositing/geometry/fixed-position-composited-page-scale.html:
* compositing/geometry/fixed-position-composited-switch.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale.html:
* compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
* compositing/geometry/fixed-position-transform-composited-page-scale.html:
* compositing/iframes/resources/scrollgrandchild-inner.html:
* compositing/resources/mock_scrollbars.js:
* compositing/scaling/tiled-layer-recursion.html:
* editing/input/resources/password-echo.js:
(init):
* editing/spelling/spellcheck-async-mutation.html:
* editing/spelling/spellcheck-async.html:
* editing/spelling/spelling-unified-emulation.html:
* fast/dom/Element/scale-page-bounding-client-rect.html:
* fast/dom/Element/scale-page-client-rects.html:
* fast/dom/Range/scale-page-bounding-client-rect.html:
* fast/dom/Range/scale-page-client-rects.html:
* fast/dom/iframe-inner-size-scaling.html:
* fast/dom/window-inner-size-scaling.html:
* fast/events/scale-and-scroll-body.html:
* fast/events/scale-and-scroll-iframe-body.html:
* fast/events/scale-and-scroll-iframe-window.html:
* fast/events/scale-and-scroll-window.html:
* fast/events/script-tests/page-scaled-mouse-click-iframe.js:
(iframeLoaded):
* fast/events/script-tests/page-scaled-mouse-click.js:
* fast/events/scroll-in-scaled-page-with-overflow-hidden.html:
* fast/events/touch/page-scaled-touch-gesture-click.html:
* fast/frames/frame-set-rotation-hit.html:
* fast/frames/frame-set-scaling-hit.html:
* fast/frames/iframe-double-scale-contents.html:
* fast/repaint/background-scaling.html:
* fast/repaint/fixed-in-page-scale.html:
* fast/repaint/fixed-right-bottom-in-page-scale.html:
* fast/repaint/fixed-right-in-page-scale.html:
* fast/repaint/scale-page-shrink.html:
* fast/transforms/selection-bounds-in-transformed-view.html:
* http/tests/inspector/network-test.js:
(resetInspectorResourcesData):
* http/tests/inspector/network/network-content-replacement-embed.html:
* http/tests/inspector/network/network-content-replacement-xhr.html:
* platform/chromium/compositing/accelerated-drawing/alpha.html:
* platform/chromium/compositing/accelerated-drawing/svg-filters.html:
* platform/chromium/compositing/force-compositing-mode/force-composite-empty.html:
* platform/chromium/compositing/force-compositing-mode/no-overflow-iframe-layer.html:
* platform/chromium/compositing/force-compositing-mode/overflow-hidden-iframe-layer.html:
* platform/chromium/compositing/force-compositing-mode/overflow-iframe-enter-compositing.html:
* platform/chromium/compositing/force-compositing-mode/overflow-iframe-layer.html:
* platform/chromium/compositing/force-compositing-mode/overflow-iframe-leave-compositing.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105900
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
toyoshim@chromium.org [Wed, 25 Jan 2012 18:55:37 +0000 (18:55 +0000)]
webkitpy: new-run-webkit-websocket is broken
https://bugs.webkit.org/show_bug.cgi?id=76999
Reviewed by Dirk Pranke.
r105674 broke new-run-webkit-websocket, since options.chromium
doesn't exist any more. new-run-webkit-httpd was also broken
and already fixed at r105835.
* Scripts/new-run-webkit-websocketserver:
(main):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105899
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
alexis.menard@openbossa.org [Wed, 25 Jan 2012 18:54:40 +0000 (18:54 +0000)]
border-image should not crash when the source is not specified.
https://bugs.webkit.org/show_bug.cgi?id=77001
Reviewed by Andreas Kling.
Source/WebCore:
This bug was introduced by r105502 but was exposed by r105738.
The image-source of a border-image is not mandatory therefore it
may happen that you have no value set for it. WebCore::createBorderImageValue
was wrongly assuming that the image is always set. This problem also required a bit
of refactoring in CSSStyleSelector::mapNinePieceImage to take into account that
the image could be optional (just like other properties).
Test: fast/css/border-image-null-image-crash.html
* css/CSSBorderImage.cpp:
(WebCore::createBorderImageValue):
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::mapNinePieceImage):
LayoutTests:
Add a new test to cover this crash specifically.
* fast/css/border-image-null-image-crash-expected.txt: Added.
* fast/css/border-image-null-image-crash.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105898
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 18:38:34 +0000 (18:38 +0000)]
[Qt] public.pri is missing dependency to quick module.
https://bugs.webkit.org/show_bug.cgi?id=77016
Patch by Zeno Albisser <zeno@webkit.org> on 2012-01-25
Reviewed by Tor Arne Vestbø.
* declarative/public.pri:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105897
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Wed, 25 Jan 2012 18:34:15 +0000 (18:34 +0000)]
Unreviewed, only skip scrollbars/scroll-rtl-or-bt-layer.html on qt-wk2.
eventSender.mouseScrollBy is implemented on GTK+ and Mac.
* platform/qt-wk2/Skipped:
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105896
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antonm@chromium.org [Wed, 25 Jan 2012 18:31:18 +0000 (18:31 +0000)]
[Chromium]: rebaseline after r105878
https://bugs.webkit.org/show_bug.cgi?id=77017
Unreviewed Chromium test expectations update to allow more failure modes.
Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-25
* platform/chromium/test_expectations.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105895
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
fpizlo@apple.com [Wed, 25 Jan 2012 18:27:43 +0000 (18:27 +0000)]
Inlining breaks call frame walking when the walking is done from outside the inlinee,
but inside a code block that had inlining
https://bugs.webkit.org/show_bug.cgi?id=76978
<rdar://problem/
10720904>
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
* bytecode/CodeBlock.h:
(JSC::CodeBlock::codeOriginForReturn):
* interpreter/CallFrame.cpp:
(JSC::CallFrame::trueCallerFrame):
LayoutTests:
* fast/js/dfg-inline-arguments-use-from-uninlined-code-expected.txt: Added.
* fast/js/dfg-inline-arguments-use-from-uninlined-code.html: Added.
* fast/js/script-tests/dfg-inline-arguments-use-from-uninlined-code.js: Added.
(foo):
(fuzz):
(bar):
(baz):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105894
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kenneth@webkit.org [Wed, 25 Jan 2012 18:18:47 +0000 (18:18 +0000)]
[Qt] Implement tap feedback respecting -webkit-tap-highlight-color
https://bugs.webkit.org/show_bug.cgi?id=76914
Reviewed by Simon Hausmann.
.:
Add a manual test.
* ManualTests/qt/tap-highlighting.html: Added.
Source/WebCore:
Implement highlighting of dom nodes with a rounded rect, respecting
the color of -webkit-tap-highlight-color and any transform applied
to the element.
Tested with manual test.
* Target.pri:
* page/GestureTapHighlighter.cpp: Added.
(WebCore::GestureTapHighlighter::pathForNodeHighlight):
* page/GestureTapHighlighter.h: Added.
Source/WebKit2:
Implement tap highlighting for Qt. When a touch press is issued,
which is not handled by the web page, then we highlight any
activatable node below. In all otehr cases, we hide any highlights.
The highlighting itself is painted on an accelerated PageOverlay,
on the web process side.
* Target.pri:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handlePotentialActivation):
* UIProcess/WebPageProxy.h:
* UIProcess/qt/QtTapGestureRecognizer.cpp:
(WebKit::QtTapGestureRecognizer::recognize):
* UIProcess/qt/QtWebPageEventHandler.cpp:
(QtWebPageEventHandler::handlePotentialSingleTapEvent):
* UIProcess/qt/QtWebPageEventHandler.h:
* WebProcess/WebPage/TapHighlightController.cpp: Added.
(WebKit::TapHighlightController::TapHighlightController):
(WebKit::TapHighlightController::~TapHighlightController):
(WebKit::TapHighlightController::highlight):
(WebKit::TapHighlightController::hideHighlight):
(WebKit::TapHighlightController::pageOverlayDestroyed):
(WebKit::TapHighlightController::willMoveToWebPage):
(WebKit::TapHighlightController::didMoveToWebPage):
(WebKit::highlightColor):
(WebKit::TapHighlightController::drawRect):
(WebKit::TapHighlightController::mouseEvent):
* WebProcess/WebPage/TapHighlightController.h: Added.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::highlightPotentialActivation):
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::tapHighlightController):
* WebProcess/WebPage/WebPage.messages.in:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105893
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 18:12:04 +0000 (18:12 +0000)]
Unreviewed, rolling out r105887.
http://trac.webkit.org/changeset/105887
https://bugs.webkit.org/show_bug.cgi?id=77023
Rolling out incorrect chromium expectations for zero length
svg stroke. (Requested by leviw on #webkit).
Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-01-25
* platform/chromium-mac-leopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Removed.
* platform/chromium-mac-leopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Removed.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Removed.
* platform/chromium-win-vista/svg/stroke/zero-length-path-linecap-rendering-expected.png: Removed.
* platform/chromium-win-vista/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Removed.
* platform/chromium-win-xp/svg/stroke/zero-length-path-linecap-rendering-expected.png: Removed.
* platform/chromium-win-xp/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Removed.
* platform/chromium-win/svg/stroke/zero-length-path-linecap-rendering-expected.png: Removed.
* platform/chromium-win/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105892
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jsbell@chromium.org [Wed, 25 Jan 2012 18:01:13 +0000 (18:01 +0000)]
IndexedDB: Need to distinguish key paths that don't yield value vs. yield invalid key
https://bugs.webkit.org/show_bug.cgi?id=76487
Source/WebCore:
Implement the precondition checks for IDBObjectStore.add/put operations: raise an error
if there is a key generator (autoIncrement) and the path yields a value and the value
is not a valid key; raise an error if any of the index key paths yield a value which
is not a valid key.
Reviewed by Tony Chang.
Tests: storage/indexeddb/keypath-edges.html
storage/indexeddb/objectstore-basics.html
* storage/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::put):
Source/WebKit/chromium:
Added a NullType to represent a null IDBKey pointer. This is needed to distinguish the
cases in the spec where the key resolution algorithm returns no value (null) versus
returns a value but that value is not a valid key (invalid).
Reviewed by Tony Chang.
* public/WebIDBKey.h:
* src/WebIDBKey.cpp:
(WebKit::WebIDBKey::createNull): Added.
(WebKit::WebIDBKey::createFromValueAndKeyPath): Now returns null if value is null.
(WebKit::convertFromWebIDBKeyArray): Null keys should never exist within arrays.
(WebKit::WebIDBKey::assignInvalid):
(WebKit::WebIDBKey::assignNull):
(WebKit::WebIDBKey::type):
LayoutTests:
Reviewed by Tony Chang.
* storage/indexeddb/keypath-edges-expected.txt: Added.
* storage/indexeddb/keypath-edges.html: Added.
* storage/indexeddb/objectstore-basics-expected.txt:
* storage/indexeddb/objectstore-basics.html:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105891
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tony@chromium.org [Wed, 25 Jan 2012 17:59:16 +0000 (17:59 +0000)]
Unreviewed, skip scrollbars/scroll-rtl-or-bt-layer.html on WebKit2
because eventSender.mouseScrollBy isn't implemented.
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105890
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rgabor@webkit.org [Wed, 25 Jan 2012 17:56:54 +0000 (17:56 +0000)]
Unreviewed Qt gardening.
Temporally skip failing tests after r105878.
Patch by Balazs Kelemen <kbalazs@webkit.org> on 2012-01-25
* platform/qt/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105889
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 17:51:20 +0000 (17:51 +0000)]
Unreviewed. Adding platform expectations after 105879
* platform/chromium-linux-x86/compositing: Added.
* platform/chromium-linux-x86/compositing/overflow: Added.
* platform/chromium-linux-x86/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
* platform/chromium-linux/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
* platform/chromium-mac-snowleopard/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
* platform/chromium-mac-snowleopard/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
* platform/chromium-win-vista/compositing: Added.
* platform/chromium-win-vista/compositing/overflow: Added.
* platform/chromium-win-vista/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
* platform/chromium-win-vista/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
* platform/chromium-win-xp/compositing: Added.
* platform/chromium-win-xp/compositing/overflow: Added.
* platform/chromium-win-xp/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
* platform/chromium-win-xp/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
* platform/chromium-win/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
* platform/chromium-win/compositing/overflow/overflow-scaled-descendant-overlapping-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105888
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
leviw@chromium.org [Wed, 25 Jan 2012 17:48:24 +0000 (17:48 +0000)]
Unreviewed. Adding platform test expectations after r105878.
* platform/chromium-mac-leopard/svg/stroke: Added.
* platform/chromium-mac-leopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-mac-leopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-mac-snowleopard/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-win-vista/svg/stroke: Added.
* platform/chromium-win-vista/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-win-vista/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-win-xp/svg/stroke: Added.
* platform/chromium-win-xp/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-win-xp/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/chromium-win/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/chromium-win/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105887
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Wed, 25 Jan 2012 17:45:58 +0000 (17:45 +0000)]
Unreviewed, GTK rebaseline and skip new timing-out media test.
* platform/gtk/Skipped:
* platform/gtk/css3/calc/getComputedStyle-margin-percentage-expected.txt: Added.
* platform/gtk/fast/multicol/span/generated-child-split-flow-crash-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105886
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 17:23:48 +0000 (17:23 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=65377
Skip the entire node when it is right to do so, instead of stepping
through every character, so we save CPU time on checking every position
unnecessarily.
Patch by Yong Li <yoli@rim.com> on 2012-01-25
Reviewed by Darin Adler.
Source/WebCore:
Test: perf/selection-skip-hidden-node.html
* dom/Position.cpp:
(WebCore::Position::upstream):
(WebCore::Position::downstream):
* dom/PositionIterator.cpp:
(WebCore::PositionIterator::moveToLeafNodeStart):
(WebCore::PositionIterator::moveToLeafNodeEnd):
* dom/PositionIterator.h:
* editing/htmlediting.cpp:
(WebCore::nextCandidate):
(WebCore::nextVisuallyDistinctCandidate):
(WebCore::previousCandidate):
(WebCore::previousVisuallyDistinctCandidate):
LayoutTests:
* perf/selection-skip-hidden-node-expected.txt: Added.
* perf/selection-skip-hidden-node.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105885
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 17:21:33 +0000 (17:21 +0000)]
[WK2] WebKitTestRunner needs layoutTestController.setPopupBlockingEnabled
https://bugs.webkit.org/show_bug.cgi?id=63458
Patch by Nándor Huszka <huszka.nandor@stud.u-szeged.hu> on 2012-01-25
Reviewed by Adam Roben.
Source/WebKit2:
Implement the setPopupBlockingEnabled method.
* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleSetPrivateBrowsingEnabled):
(WKBundleSetPopupBlockingEnabled):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::setPopupBlockingEnabled):
* WebProcess/InjectedBundle/InjectedBundle.h:
Tools:
Implement the setPopupBlockingEnabled method.
* WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:
* WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
(WTR::LayoutTestController::setPopupBlockingEnabled):
* WebKitTestRunner/InjectedBundle/LayoutTestController.h:
LayoutTests:
Unskip tests which do not fail now.
* platform/wk2/Skipped:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105884
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 17:18:29 +0000 (17:18 +0000)]
Remove unnecessary member variable from PluginView.
https://bugs.webkit.org/show_bug.cgi?id=76909
Patch by Kaustubh Atrawalkar <kaustubh@motorola.com> on 2012-01-25
Reviewed by Adam Roben.
No new tests needed.
* plugins/PluginView.cpp:
(WebCore::PluginView::getURLNotify):
(WebCore::PluginView::getURL):
(WebCore::PluginView::PluginView):
(WebCore::PluginView::handlePost):
(WebCore::PluginView::getValueForURL):
(WebCore::PluginView::setValueForURL):
* plugins/PluginView.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105883
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Wed, 25 Jan 2012 17:17:30 +0000 (17:17 +0000)]
Unreviewed, GTK rebaseline and skipping 2 new test failures.
* platform/gtk/Skipped:
* platform/gtk/svg/custom/path-moveto-only-rendering-expected.txt:
* platform/gtk/svg/custom/subpaths-moveto-only-rendering-expected.txt:
* platform/gtk/svg/custom/zero-path-square-cap-rendering-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105882
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yael.aharon@nokia.com [Wed, 25 Jan 2012 17:09:51 +0000 (17:09 +0000)]
[Qt] Build fix when using force_static_libs_as_shared
https://bugs.webkit.org/show_bug.cgi?id=76832
Reviewed by Simon Hausmann.
Source/WebCore:
Add a dependency on QtWidgets, when compiling against Qt5.
No new tests. This is a build fix.
* Target.pri:
Source/WebKit2:
Add a dependency on QtWidgets.
* Target.pri:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105881
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
philn@webkit.org [Wed, 25 Jan 2012 16:19:35 +0000 (16:19 +0000)]
[Gtk] Update expected layout test results after r105686
https://bugs.webkit.org/show_bug.cgi?id=77008
Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-01-25
Reviewed by Philippe Normand.
After r105686, missing image icons are properly loaded and
shown, causing failures because of incorrect expected results.
These changes properly fix the expectations and subsequently
remove failures.
* platform/gtk/editing/execCommand/insertImage-expected.txt:
* platform/gtk/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
* platform/gtk/fast/block/float/015-expected.txt:
* platform/gtk/fast/borders/rtl-border-05-expected.txt:
* platform/gtk/fast/dom/34176-expected.txt:
* platform/gtk/fast/dom/inner-text-expected.txt:
* platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
* platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
* platform/gtk/fast/hidpi/broken-image-icon-hidpi-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug2962-expected.txt:
* platform/gtk/tables/mozilla/bugs/bug56201-expected.txt:
* platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105880
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 15:50:53 +0000 (15:50 +0000)]
Clipping of render layer boundaries does not take page scale into account
https://bugs.webkit.org/show_bug.cgi?id=76850
Source/WebCore:
Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-25
Reviewed by Simon Fraser.
When inserting render layers into the compositor's overlap map, the
layer boundaries are clipped against any potential parent clip rects.
The clip rects are given in CSS coordinates, while the render layer
boundaries are in scaled CSS coordinates, so the result is incorrect.
This patch scales the clip rects before calculating the intersection.
Test: compositing/overflow/overflow-scaled-descendant-overlapping.html
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
LayoutTests:
Added new test to make sure render layers inside clipped containers
are correctly tested for overlap with other layers.
Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-25
Reviewed by Simon Fraser.
* compositing/overflow/overflow-scaled-descendant-overlapping.html: Added.
* platform/chromium-linux/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105879
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 15:31:39 +0000 (15:31 +0000)]
Linecaps wrong for zero length lines
https://bugs.webkit.org/show_bug.cgi?id=71820
Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-25
Reviewed by Nikolas Zimmermann.
Total reworking of the method used to draw zero-length linecaps for
SVG. This patch works for all zero length sub-paths.
Source/WebCore:
Tests: svg/stroke/zero-length-path-linecap-rendering.svg
svg/stroke/zero-length-subpaths-linecap-rendering.svg
* rendering/svg/RenderSVGShape.cpp: Significant refactoring to enable
new implementation and clarify code.
(WebCore::RenderSVGShape::createShape):
(WebCore::RenderSVGShape::strokeContains):
(WebCore::RenderSVGShape::shouldStrokeZeroLengthSubpath):
(WebCore::RenderSVGShape::zeroLengthSubpathRect):
(WebCore::RenderSVGShape::zeroLengthLinecapPath):
(WebCore::RenderSVGShape::nonScalingStrokePath):
(WebCore::RenderSVGShape::setupNonScalingStrokeTransform):
(WebCore::RenderSVGShape::fillShape):
(WebCore::RenderSVGShape::strokePath):
(WebCore::RenderSVGShape::fillAndStrokePath):
(WebCore::RenderSVGShape::updateCachedBoundaries):
(WebCore::RenderSVGShape::processZeroLengthSubpaths):
* rendering/svg/RenderSVGShape.h: Declarations for new methods.
* rendering/svg/SVGSubpathData.h: Class for finding zero length subpaths.
* svg/SVGPathBuilder.h: Fix typos
* svg/SVGPathConsumer.h: Fix typos
* svg/SVGPathSegListBuilder.h: Fix typos
* svg/SVGPathTraversalStateBuilder.h: Fix typos
LayoutTests:
* platform/chromium/test_expectations.txt: Chromium test expectations
pending new expected images and text.
* platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.png: Added.
* platform/mac/svg/stroke/zero-length-path-linecap-rendering-expected.txt: Added.
* platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.png: Added.
* platform/mac/svg/stroke/zero-length-subpaths-linecap-rendering-expected.txt: Added.
* platform/mac/test_expectations.txt: Chromium test expectations
pending new expected images and text.
* svg/stroke/zero-length-path-linecap-rendering.svg: Added.
* svg/stroke/zero-length-subpaths-linecap-rendering.svg: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105878
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yurys@chromium.org [Wed, 25 Jan 2012 15:10:31 +0000 (15:10 +0000)]
Web Inspector: show memory counter graphs in timeline panel
https://bugs.webkit.org/show_bug.cgi?id=76843
Timeline panel is extended with several graphs depicting total node count,
number of DOM groups and event listeners. This feature is hidden behind
experimental setting.
Reviewed by Pavel Feldman.
* English.lproj/localizedStrings.js:
* inspector/Inspector.json:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::setDomCountersEnabled):
(WebCore::InspectorTimelineAgent::didCallFunction):
(WebCore::InspectorTimelineAgent::didDispatchEvent):
(WebCore::InspectorTimelineAgent::didWriteHTML):
(WebCore::InspectorTimelineAgent::didFireTimer):
(WebCore::InspectorTimelineAgent::didEvaluateScript):
(WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
(WebCore::InspectorTimelineAgent::collectDomCounters):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
* inspector/InspectorTimelineAgent.h:
(WebCore::InspectorTimelineAgent::create):
* inspector/TimelineRecordFactory.cpp:
* inspector/front-end/Settings.js:
(WebInspector.ExperimentsSettings):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel):
(WebInspector.MemoryStatistics):
(WebInspector.MemoryStatistics.prototype.setTopPosition):
(WebInspector.MemoryStatistics.prototype.setSidebarWidth):
(WebInspector.MemoryStatistics.prototype._sidebarResized):
(WebInspector.MemoryStatistics.prototype._updateSize):
(WebInspector.MemoryStatistics.prototype._updateSidebarSize):
(WebInspector.MemoryStatistics.prototype._createCounterSidebarElement):
(WebInspector.MemoryStatistics.prototype.addTimlineEvent):
(WebInspector.MemoryStatistics.prototype._draw.getGroupCount):
(WebInspector.MemoryStatistics.prototype._draw.getNodeCount):
(WebInspector.MemoryStatistics.prototype._draw.getListenerCount):
(WebInspector.MemoryStatistics.prototype._draw):
(WebInspector.MemoryStatistics.prototype._calculateVisibleIndexes):
(WebInspector.MemoryStatistics.prototype._onMouseOver):
(WebInspector.MemoryStatistics.prototype._refreshCurrentValues):
(WebInspector.MemoryStatistics.prototype.visible):
(WebInspector.MemoryStatistics.prototype.show):
(WebInspector.MemoryStatistics.prototype.refresh):
(WebInspector.MemoryStatistics.prototype.hide):
(WebInspector.MemoryStatistics.prototype._setVerticalClip):
(WebInspector.MemoryStatistics.prototype._calculateXValues):
(WebInspector.MemoryStatistics.prototype._drawPolyline):
(WebInspector.MemoryStatistics.prototype._drawBottomBound):
(WebInspector.MemoryStatistics.prototype._clear):
(WebInspector.TimelinePanel.prototype._startSplitterDragging):
(WebInspector.TimelinePanel.prototype._splitterDragging):
(WebInspector.TimelinePanel.prototype._endSplitterDragging):
(WebInspector.TimelinePanel.prototype._setSplitterPosition):
(WebInspector.TimelinePanel.prototype.get statusBarItems):
(WebInspector.TimelinePanel.prototype._createStatusbarButtons):
(WebInspector.TimelinePanel.prototype._toggleMemoryStatistics):
(WebInspector.TimelinePanel.prototype._onTimelineEventRecorded):
(WebInspector.TimelinePanel.prototype.sidebarResized):
(WebInspector.TimelinePanel.prototype._refresh):
* inspector/front-end/timelinePanel.css:
(#timeline-memory-splitter):
(#memory-counters-graph):
(#memory-graphs-container):
(#memory-graphs-container .split-view-contents):
(.timeline-marker):
(.memory-counter-sidebar-info):
(.memory-counter-sidebar-info.bottom-border-visible):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105877
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
kbalazs@webkit.org [Wed, 25 Jan 2012 15:03:01 +0000 (15:03 +0000)]
[Qt] Cleanup testfonts handling
https://bugs.webkit.org/show_bug.cgi?id=76068
Reviewed by Simon Hausmann.
Factor test font initialization into it's own file so test
font users can share the implementation by adding the file
to their build.
Use fonts.conf from the test font directory to not require the
current directory to be the WebKit root.
Fix the -use-test-fonts option of QtTestBrowser by initializing
the fonts earlier, before it is too late (namely before calling
show on the main window).
* DumpRenderTree/qt/DumpRenderTree.pro:
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::open):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
* DumpRenderTree/qt/QtInitializeTestFonts.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp.
(WebKit::initializeTestFonts):
* DumpRenderTree/qt/QtInitializeTestFonts.h: Added.
* DumpRenderTree/qt/fonts.conf: Removed. No need for this since
we will use the one from the test fonts directory.
* DumpRenderTree/qt/main.cpp:
(main): Fix the ifdefs to make it clear that the code to
set up the Dpi has not been ported to Qt5 yet.
* QtTestBrowser/QtTestBrowser.pro:
* QtTestBrowser/launcherwindow.h:
(WindowOptions::WindowOptions):
* QtTestBrowser/main.cpp:
(launcherMain):
(LauncherApplication::handleUserOptions):
* WebKitTestRunner/InjectedBundle/Target.pri:
* WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:
(WTR::activateFonts): Remove the code to set up the Dpi
because it does not work with Qt5.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105876
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hausmann@webkit.org [Wed, 25 Jan 2012 14:32:47 +0000 (14:32 +0000)]
[Qt] build-webkit --qt requires a git-svn or SVN checkout.
Reviewed by Tor Arne Vestø.
Don't require it by making svnRevisionForDirectory return "unknown"
instead of bailing out with an error.
* Scripts/VCSUtils.pm:
(svnRevisionForDirectory):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105875
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
loislo@chromium.org [Wed, 25 Jan 2012 14:30:27 +0000 (14:30 +0000)]
Unreviewed single line test fix after r105865.
* inspector/profiler/detailed-heapshots-test.js:
(initialize_DetailedHeapshotTest.):
(initialize_DetailedHeapshotTest):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105874
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 14:13:44 +0000 (14:13 +0000)]
<webkit.org/b/76941> Web Inspector: Remove Unused InspectorFrontendHost.search Stub
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2012-01-25
Reviewed by Pavel Feldman.
* inspector/front-end/InspectorFrontendHostStub.js:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105873
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Wed, 25 Jan 2012 13:27:26 +0000 (13:27 +0000)]
[Qt][ARM] Unreviewed gardening.
Skip failing tests, update/add platform specific expected files for passing tests.
* platform/qt-arm/Skipped:
* platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt:
* platform/qt-arm/svg/W3C-SVG-1.1/paths-data-05-t-expected.txt: Added.
* platform/qt-arm/svg/W3C-SVG-1.1/paths-data-09-t-expected.txt: Added.
* platform/qt-arm/svg/batik/text/textOnPath3-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105872
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vsevik@chromium.org [Wed, 25 Jan 2012 13:20:41 +0000 (13:20 +0000)]
Unreviewed inspector style fix.
* inspector/front-end/tabbedPane.css:
(.tabbed-pane-header-tab-close-button):
(select.tabbed-pane-header-tabs-drop-down-select):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105871
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Wed, 25 Jan 2012 13:04:24 +0000 (13:04 +0000)]
Fix incorrect behavior in HTMLCollection.prototype.item().
https://bugs.webkit.org/show_bug.cgi?id=74468
Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-25
Reviewed by Adam Barth.
HTMLCollection.prototype.item("someString") was falling back to
.namedItem("someString"), which is wrong per spec. Also align the
handling of various other types of objects passed as the argument with
the spec and the rest of the browsers.
Source/WebCore:
Test: fast/dom/collection-item.html
* bindings/js/JSHTMLCollectionCustom.cpp: Remove custom implementation of item().
* bindings/v8/custom/V8HTMLCollectionCustom.cpp: Ditto.
* html/HTMLCollection.idl: Remove [Custom] in item(), it's not needed.
LayoutTests:
* fast/dom/collection-item-expected.txt: Added.
* fast/dom/collection-item.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105870
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mikelawther@chromium.org [Wed, 25 Jan 2012 12:39:03 +0000 (12:39 +0000)]
table border spacing test for CSS3 calc
https://bugs.webkit.org/show_bug.cgi?id=76226
Reviewed by Julien Chaffraix.
Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)
These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.
* css3/calc/table-border-spacing-expected.txt: Added.
* css3/calc/table-border-spacing.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105869
268f45cc-cd09-0410-ab3c-
d52691b4dbfc