WebKit-https.git
10 years agoCrash in previousLinePosition when moving into a root inline box without leaves
rniwa@webkit.org [Tue, 31 Jan 2012 00:18:19 +0000 (00:18 +0000)]
Crash in previousLinePosition when moving into a root inline box without leaves
https://bugs.webkit.org/show_bug.cgi?id=76812

Reviewed by Enrica Casucci.

Source/WebCore:

The crash was caused by us assuming that every root inline box has at least one leaf,
which isn't true when we create inline boxes for an empty text run with margin, border, etc...

Test: editing/selection/move-into-empty-root-inline-box.html

* editing/visible_units.cpp:
(WebCore::previousLinePosition):
(WebCore::nextLinePosition):

LayoutTests:

Add a regression test for the crash. Unfortunately, we can only test previousLinePosition.

* editing/selection/move-into-empty-root-inline-box-expected.txt: Added.
* editing/selection/move-into-empty-root-inline-box.html: Added.

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

10 years agoUnexpected syntax error
oliver@apple.com [Mon, 30 Jan 2012 23:59:20 +0000 (23:59 +0000)]
Unexpected syntax error
https://bugs.webkit.org/show_bug.cgi?id=77340

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

Function calls and new expressions have the same semantics for
assignment, so should simply share their lhs handling.

* parser/Parser.cpp:
(JSC::::parseMemberExpression):

LayoutTests:

Add new tests for correct parsing of new expressions

* fast/js/parser-syntax-check-expected.txt:
* fast/js/script-tests/parser-syntax-check.js:
(runTest):
(invalid):

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

10 years agoUnreviewed ARMv7 build fix.
barraclough@apple.com [Mon, 30 Jan 2012 23:56:00 +0000 (23:56 +0000)]
Unreviewed ARMv7 build fix.

* tools/CodeProfiling.cpp:
(JSC):
(JSC::setProfileTimer):
(JSC::CodeProfiling::begin):
(JSC::CodeProfiling::end):

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

10 years agoUsing OS(WIN) or OS(MAC) should cause a build error.
levin@chromium.org [Mon, 30 Jan 2012 23:35:01 +0000 (23:35 +0000)]
Using OS(WIN) or OS(MAC) should cause a build error.
https://bugs.webkit.org/show_bug.cgi?id=77162

Reviewed by Darin Adler.

* wtf/Platform.h: Expand them into something that will
 cause a compile error.

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

10 years agocss3/flexbox/cross-axis-scrollbar.html ref test fails on Windows Chromium bots
tony@chromium.org [Mon, 30 Jan 2012 23:16:11 +0000 (23:16 +0000)]
css3/flexbox/cross-axis-scrollbar.html ref test fails on Windows Chromium bots
https://bugs.webkit.org/show_bug.cgi?id=77309

Reviewed by Dirk Pranke.

It looks like the scrollbars on windows overflow by a pixel, so the
edge of the scrollbar is being covered up by the trailing green box.
Use z-order to force the scrollbar on top.

This is kind of speculative. I want to see if the test passes on the
bots before removing the line in test_expectations.txt.

* css3/flexbox/cross-axis-scrollbar-expected.html:

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

10 years agoParsing test_expecations.txt + Skipped lists takes too long
ojan@chromium.org [Mon, 30 Jan 2012 23:16:08 +0000 (23:16 +0000)]
Parsing test_expecations.txt + Skipped lists takes too long
https://bugs.webkit.org/show_bug.cgi?id=77059

Reviewed by Dirk Pranke.

This saves ~100ms on the Apple Mac port.
-memoize a bunch of path methods.
-Avoid doing multiple disk accesses per line.
-Parse the skipped list directly instead of turning it into a test_expecations.txt
formatting string and parsing that.

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
(TestExpectationParser.expectation_for_skipped_test):
(TestExpectationParser._parse_line):
(TestExpectationParser._collect_matching_tests):
(TestExpectations.__init__):
(TestExpectations._add_skipped_tests):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(test_add_skipped_tests):
(test_add_skipped_tests_duplicate):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port):
(Port.test_isfile):
(Port.normalize_test_name):
(Port.layout_tests_dir):
(Port.abspath_for_test):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:

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

10 years agowebkit-perf.appspot.com should have an ability to merge tests
rniwa@webkit.org [Mon, 30 Jan 2012 23:06:39 +0000 (23:06 +0000)]
webkit-perf.appspot.com should have an ability to merge tests
https://bugs.webkit.org/show_bug.cgi?id=77250

Reviewed by Adam Barth.

Added admin/merge-tests. This page allows administrators to easily merge test objects.

Also add the forgotten title.png and rename api/create to admin/create since we don't allow
non-admins to create new models anyway.

* Websites/webkit-perf.appspot.com/app.yaml:
* Websites/webkit-perf.appspot.com/css: Added.
* Websites/webkit-perf.appspot.com/css/title.png: Added.
* Websites/webkit-perf.appspot.com/main.py:
* Websites/webkit-perf.appspot.com/merge_tests.yaml: Added.
* Websites/webkit-perf.appspot.com/merge_tests_handler.py: Added.
(MergeTestHandler):
(MergeTestHandler.get):
(MergeTestHandler.post):
* Websites/webkit-perf.appspot.com/models.py:
(deleteModelWithNumericIdHolder):
* Websites/webkit-perf.appspot.com/static/create-models.html:

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

10 years ago!m_insideRegionPaint assertion in RenderRegion.cpp is invalid
leviw@chromium.org [Mon, 30 Jan 2012 22:54:38 +0000 (22:54 +0000)]
!m_insideRegionPaint assertion in RenderRegion.cpp is invalid
https://bugs.webkit.org/show_bug.cgi?id=77372

Reviewed by David Hyatt.

Removing the !m_insideRegionPaint assertion that's in three functions in
RenderRegion. It's triggering in numerous layout tests and isn't valid.

No new tests as this just removes assertions.

* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::setRenderBoxRegionInfo):
(WebCore::RenderRegion::takeRenderBoxRegionInfo):
(WebCore::RenderRegion::removeRenderBoxRegionInfo):

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

10 years ago[BlackBerry] OS(QNX) also has TM_GMTOFF, TM_ZONE, and TIMEGM
commit-queue@webkit.org [Mon, 30 Jan 2012 22:48:10 +0000 (22:48 +0000)]
[BlackBerry] OS(QNX) also has TM_GMTOFF, TM_ZONE, and TIMEGM
https://bugs.webkit.org/show_bug.cgi?id=77360

Patch by Yong Li <yoli@rim.com> on 2012-01-30
Reviewed by Rob Buis.

Turn on HAVE(TM_GMTOFF), HAVE(TM_ZONE), and HAVE(TIMEGM)
for OS(QNX).

* wtf/Platform.h:

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

10 years ago[chromium] Always pre-reserve scrollbar and scroll corner textures
enne@google.com [Mon, 30 Jan 2012 22:10:07 +0000 (22:10 +0000)]
[chromium] Always pre-reserve scrollbar and scroll corner textures
https://bugs.webkit.org/show_bug.cgi?id=77251

Reviewed by James Robinson.

Source/WebCore:

Add a flag to LayerChromium that says that a layer's textures should
always be reserved. Prior to painting layers, find all layers marked
as such and reserve their textures. This will prevent texture memory
limits from being hit before the root layer's scrollbars are reserved
and painted.

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::LayerChromium):
* platform/graphics/chromium/LayerChromium.h:
(LayerChromium):
(WebCore::LayerChromium::reserveTextures):
(WebCore::LayerChromium::setAlwaysReserveTextures):
(WebCore::LayerChromium::alwaysReserveTextures):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::reserveTextures):
* platform/graphics/chromium/TiledLayerChromium.h:
():
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::updateLayers):
(WebCore::CCLayerTreeHost::reserveTextures):
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
():

Source/WebKit/chromium:

* src/NonCompositedContentHost.cpp:
(WebKit::reserveScrollbarLayers):
(WebKit):
(WebKit::NonCompositedContentHost::setViewport):

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

10 years agoSpeculative Windows build fix.
barraclough@apple.com [Mon, 30 Jan 2012 22:07:23 +0000 (22:07 +0000)]
Speculative Windows build fix.

* assembler/MacroAssemblerCodeRef.h:
(FunctionPtr):

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

10 years ago[Qt] Disconnect the LayerTreeHost from layers when they get removed from their parent.
jocelyn.turcotte@nokia.com [Mon, 30 Jan 2012 22:01:42 +0000 (22:01 +0000)]
[Qt] Disconnect the LayerTreeHost from layers when they get removed from their parent.
https://bugs.webkit.org/show_bug.cgi?id=77362

Reviewed by Noam Rosenthal.

This fixes crashes seen in layout tests under certain timing circumstances
that appeared after r106109 was landed.

* WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::removeFromParent):

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

10 years agoSpeculative 32-bit build-fix.
bdakin@apple.com [Mon, 30 Jan 2012 21:44:33 +0000 (21:44 +0000)]
Speculative 32-bit build-fix.

* WebCore.exp.in:

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

10 years agoUnreviewed gardening. Marking fast/js/dfg-int32array-overflow-values.html as slow
leviw@chromium.org [Mon, 30 Jan 2012 21:22:02 +0000 (21:22 +0000)]
Unreviewed gardening. Marking fast/js/dfg-int32array-overflow-values.html as slow
for Chromium Debug bots.

* platform/chromium/test_expectations.txt:

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

10 years agoRoll Chromium DEPS from 119623 to 119700.
rniwa@webkit.org [Mon, 30 Jan 2012 21:21:35 +0000 (21:21 +0000)]
Roll Chromium DEPS from 119623 to 119700.

* DEPS:

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

10 years agofast/css/fontsize-unit-rems-crash.html should use dumpAsText
leviw@chromium.org [Mon, 30 Jan 2012 21:19:47 +0000 (21:19 +0000)]
fast/css/fontsize-unit-rems-crash.html should use dumpAsText
https://bugs.webkit.org/show_bug.cgi?id=77351

Reviewed by Simon Fraser.

Switching the above test to only use text results as the html element is display:none.

* fast/css/fontsize-unit-rems-crash-expected.txt:
* fast/css/fontsize-unit-rems-crash.html:

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

10 years agoUnreviewed. Add myself to CSS, GStreamer, Qt related watchlists.
alexis.menard@openbossa.org [Mon, 30 Jan 2012 21:15:38 +0000 (21:15 +0000)]
Unreviewed. Add myself to CSS, GStreamer, Qt related watchlists.

* Scripts/webkitpy/common/config/watchlist:

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

10 years ago[CSSRegions]Add support for background-color in region styling
mihnea@adobe.com [Mon, 30 Jan 2012 21:11:48 +0000 (21:11 +0000)]
[CSSRegions]Add support for background-color in region styling
https://bugs.webkit.org/show_bug.cgi?id=71488

Reviewed by David Hyatt.

Source/WebCore:

Based on work by Alexandru Chiculita (achicu@adobe.com).
Previous patches for region styling were touching RenderObject::style() method. After several attempts to avoid regressions
(including caching of RenderObject::style() pointer in most used methods), we decided to attempt a different approach:
Step1: before each region is repainted, we compute the style for each box that falls into the region
Step2: before paint, we store the box original style
Step3: paint the region contents using the style in region
Step4: after paint is finished, we restore the box original style (and store the box style in region for future region paint)

Tests for region styling are also enabled with this patch.

* WebCore.exp.in:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::clearRenderBoxCustomStyle):
(WebCore::RenderFlowThread::setRegionRangeForBox):
* rendering/RenderFlowThread.h:
():
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paint):
(WebCore::RenderLayer::hitTest):
* rendering/RenderObject.cpp:
* rendering/RenderObject.h:
(WebCore::RenderObject::style):
(RenderObject):
* rendering/RenderObjectChildList.cpp:
(WebCore::RenderObjectChildList::removeChildNode):
* rendering/RenderRegion.cpp:
(WebCore::RenderRegion::RenderRegion):
(WebCore::RenderRegion::setRegionBoxesRegionStyle):
(WebCore):
(WebCore::RenderRegion::restoreRegionBoxesOriginalStyle):
(WebCore::RenderRegion::paintReplaced):
(WebCore::RenderRegion::setRenderBoxRegionInfo):
(WebCore::RenderRegion::takeRenderBoxRegionInfo):
(WebCore::RenderRegion::removeRenderBoxRegionInfo):
(WebCore::RenderRegion::renderBoxRegionStyle):
(WebCore::RenderRegion::computeStyleInRegion):
(WebCore::RenderRegion::clearBoxStyleInRegion):
* rendering/RenderRegion.h:
(RenderRegion):
* rendering/RenderView.cpp:
(WebCore::RenderView::RenderView):
* rendering/RenderView.h:
(WebCore):
(RenderView):

LayoutTests:

Enable the region styling tests again.

* platform/mac-snowleopard/Skipped:

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

10 years agoWebCore build exceeds address space on 32-bit Windows builders (again).
jberlin@webkit.org [Mon, 30 Jan 2012 21:08:48 +0000 (21:08 +0000)]
WebCore build exceeds address space on 32-bit Windows builders (again).
https://bugs.webkit.org/show_bug.cgi?id=77357

Reviewed by Adam Roben.

Add an Inspector All-In-One file, but only use it in Release and Production builds.
This differs from our other All-In-One files, but it is a better approach because it makes
debugging possible in the Debug configuration (the symbols will be in the correct .obj file
for the original .cpp files).

* WebCore.vcproj/WebCore.vcproj:
Also, let VS have its way with the vcproj file.
* inspector/InspectorAllInOne.cpp: Added.

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

10 years agoIndexedDB: Add tests for structured clone data
jsbell@chromium.org [Mon, 30 Jan 2012 21:07:25 +0000 (21:07 +0000)]
IndexedDB: Add tests for structured clone data
https://bugs.webkit.org/show_bug.cgi?id=74897

Validate that the types listed in the HTML5 "structured clone algorithm"
round trip properly through Indexed DB storage. Types with incomplete
support in the Chromium port are excluded (http://crbug.com/108012).
Landing disabled since cr-linux is failing test for unknown reasons.

Reviewed by Tony Chang.

* platform/chromium/test_expectations.txt:
* storage/indexeddb/resources/test-data.html: Added.
* storage/indexeddb/resources/test-data.txt: Added.
* storage/indexeddb/structured-clone-expected.txt: Added.
* storage/indexeddb/structured-clone.html: Added.

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

10 years agoLimit periodic flushing inside ImageBufferCG to just Lion
mdelaney@apple.com [Mon, 30 Jan 2012 20:59:01 +0000 (20:59 +0000)]
Limit periodic flushing inside ImageBufferCG to just Lion
https://bugs.webkit.org/show_bug.cgi?id=77353
<rdar://problem/10328309>

Reviewed by Chris Marrin.

* platform/graphics/cg/ImageBufferCG.cpp:
* platform/graphics/cg/ImageBufferDataCG.h:

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=77163
barraclough@apple.com [Mon, 30 Jan 2012 20:57:56 +0000 (20:57 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=77163
MacroAssemblerCodeRef.h uses OS(WIN) instead of OS(WINDOWS)

Rubber stamped by Geoff Garen

* assembler/MacroAssemblerCodeRef.h:

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

10 years agoUnreviewed build fix for interpreter builds.
barraclough@apple.com [Mon, 30 Jan 2012 20:38:32 +0000 (20:38 +0000)]
Unreviewed build fix for interpreter builds.

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

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

10 years agoMemory leak caused by PeerConnection add a NULL media stream
tommyw@google.com [Mon, 30 Jan 2012 20:25:15 +0000 (20:25 +0000)]
Memory leak caused by PeerConnection add a NULL media stream
https://bugs.webkit.org/show_bug.cgi?id=76150

Source/WebCore:

It was my missunderstanding that the IDL keyword [StrictTypeChecking] also protects against
null or undefined arguments, it doesn't. Added checks for null pointers.

Reviewed by Adam Barth.

Test: fast/mediastream/peerconnection-addstream.html

* mediastream/PeerConnection.cpp:
(WebCore::PeerConnection::addStream):
(WebCore::PeerConnection::removeStream):

LayoutTests:

Added a basic LayoutTest for null/undefined arguments to PeerConnection::addStream().

Reviewed by Adam Barth.

* fast/mediastream/peerconnection-addstream-expected.txt: Added.
* fast/mediastream/peerconnection-addstream.html: Added.
* fast/mediastream/script-tests/peerconnection-addstream.js: Added.

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

10 years ago[Windows] Optionally invert colors when drawing to a WebView's backing store.
aestes@apple.com [Mon, 30 Jan 2012 20:01:39 +0000 (20:01 +0000)]
[Windows] Optionally invert colors when drawing to a WebView's backing store.
https://bugs.webkit.org/show_bug.cgi?id=77168

Reviewed by Sam Weinig.

Source/WebCore:

* css/CSSPrimitiveValueMappings.h: Assert that CompositeDifference is
not converted to a CSS value. Exposing a new compositing operation to
CSS is outside the scope of this patch.
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
* platform/graphics/GraphicsTypes.h: Add CompositeDifference as a
CompositeOperator. Also, remove an outdated comment.
* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setPlatformCompositeOperation): Map
CompositeDifference to kCGBlendModeDifference.

Source/WebKit/win:

* WebView.cpp:
(WebView::WebView): Initialize m_shouldInvertColors to false.
(WebView::paintIntoBackingStore): If m_shouldInvertColors is true, draw
an opaque white quad using the CompositeDifference blend mode. This
blend operation instructs CoreGraphics to take the difference between
the source pixel (white) and the background pixel, resulting in an
inverted pixel.
* WebView.h: Define m_shouldInvertColors.

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

10 years agoLimit the shadow offset CG hack to just SL and Lion
mdelaney@apple.com [Mon, 30 Jan 2012 19:50:48 +0000 (19:50 +0000)]
Limit the shadow offset CG hack to just SL and Lion
https://bugs.webkit.org/show_bug.cgi?id=77348
<rdar://problem/10158016>

Reviewed by Chris Marrin.

No new tests, current tests cover this.

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setPlatformShadow):

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

10 years agohttps://bugs.webkit.org/show_bug.cgi?id=77263
bdakin@apple.com [Mon, 30 Jan 2012 19:47:34 +0000 (19:47 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=77263
PlatformScreenMac should not rely on NSWindow for important bits of data

Reviewed by Geoff Garen.

../WebCore:

The main problem is that we cannot rely on the NSWindow for information about
the deviceScaleFactor because we cannot access an NSWindow from within
WebCore for WebKit2 windows. Instead, we can fetch it from
WebCore::deviceScaleFactor(), but we need a Frame to call that. So
screenAvailableRect and screenRect both now take a FrameView* instead of a
Widget*. All existing call sites actually sent a FrameView in anyway, so this
is not a big change, but it does require touching a lot of platforms.
* WebCore.exp.in:
* platform/PlatformScreen.h:
(WebCore):
* platform/blackberry/PlatformScreenBlackBerry.cpp:
(WebCore::screenAvailableRect):
(WebCore::screenRect):
* platform/chromium/PlatformScreenChromium.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/chromium/PlatformSupport.h:
(WebCore):
(PlatformSupport):
():
* platform/efl/PlatformScreenEfl.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/gtk/PlatformScreenGtk.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/qt/PlatformScreenQt.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/win/PlatformScreenWin.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
* platform/wx/ScreenWx.cpp:
(WebCore::screenRect):
(WebCore::screenAvailableRect):

The Mac-only functions toUserSpace() and toDeviceSpace() were also updated to
take a parameter for the deviceScaleFactor.
* platform/mac/PlatformScreenMac.mm:
(WebCore::screenRect):
(WebCore::screenAvailableRect):
(WebCore::toUserSpace):
(WebCore::toDeviceSpace):

../WebKit/chromium:

These two functions now take a FrameView instead of a Widget.
* src/PlatformSupport.cpp:
(WebCore::PlatformSupport::screenRect):
(WebCore::PlatformSupport::screenAvailableRect):

../WebKit/mac:

toUserSpace() and toDeviceSpace() now take a parameter for the
deviceScaleFactor.
* WebCoreSupport/WebChromeClient.mm:
(windowScaleFactor):
(WebChromeClient::setWindowRect):
(WebChromeClient::windowRect):

../WebKit2:

toUserSpace() and toDeviceSpace() now take a parameter for the
deviceScaleFactor.
* UIProcess/API/mac/WKView.mm:
(-[WKView _convertToDeviceSpace:]):
(-[WKView _convertToUserSpace:]):

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

10 years agoEnable web intents layout tests for Chromium build.
leviw@chromium.org [Mon, 30 Jan 2012 19:28:57 +0000 (19:28 +0000)]
Enable web intents layout tests for Chromium build.
https://bugs.webkit.org/show_bug.cgi?id=77347

Patch by Greg Billock <gbillock@google.com> on 2012-01-30
Reviewed by Ryosuke Niwa.

* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed build fix following bug#76855
barraclough@apple.com [Mon, 30 Jan 2012 19:26:48 +0000 (19:26 +0000)]
Unreviewed build fix following bug#76855

Source/JavaScriptCore:

* JavaScriptCore.exp:

Tools:

* TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
():
(TestWebKitAPI::TEST_F):

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

10 years agoCaseFoldingHash::hash() doesn't handle 8 bit strings directly
msaboff@apple.com [Mon, 30 Jan 2012 19:09:23 +0000 (19:09 +0000)]
CaseFoldingHash::hash() doesn't handle 8 bit strings directly
https://bugs.webkit.org/show_bug.cgi?id=76652

Reviewed by Andreas Kling.

* wtf/text/StringHash.h:
(WTF::CaseFoldingHash::hash): Added 8 bit string code path.

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

10 years ago[chromium] enable -Wexit-time-destructors for webkit unit tests
commit-queue@webkit.org [Mon, 30 Jan 2012 19:06:59 +0000 (19:06 +0000)]
[chromium] enable -Wexit-time-destructors for webkit unit tests
https://bugs.webkit.org/show_bug.cgi?id=77300

Patch by Ami Fischman <fischman@chromium.org> on 2012-01-30
Reviewed by Tony Chang.

* WebKitUnitTests.gyp: Enable clang check for exit time destructors.

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

10 years agoKill CSSMutableStyleDeclarationConstIterator
antti@apple.com [Mon, 30 Jan 2012 18:52:16 +0000 (18:52 +0000)]
Kill CSSMutableStyleDeclarationConstIterator
https://bugs.webkit.org/show_bug.cgi?id=77342

Reviewed by Sam Weinig.

CSSMutableStyleDeclaration is an array and should be iterated using an index. This simplifies the code.

* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::copyPropertiesFrom):
(WebCore::CSSMutableStyleDeclaration::removeProperty):
(WebCore::CSSMutableStyleDeclaration::setProperty):
(WebCore::CSSMutableStyleDeclaration::setPropertyInternal):
(WebCore::CSSMutableStyleDeclaration::parseDeclaration):
(WebCore::CSSMutableStyleDeclaration::addParsedProperties):
(WebCore::CSSMutableStyleDeclaration::addParsedProperty):
(WebCore::CSSMutableStyleDeclaration::merge):
(WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
* css/CSSMutableStyleDeclaration.h:
(WebCore):
(WebCore::CSSMutableStyleDeclaration::createForSVGFontFaceElement):
(CSSMutableStyleDeclaration):
* css/CSSStyleDeclaration.cpp:
(WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
* css/CSSStyleDeclaration.h:
(CSSStyleDeclaration):
():
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForKeyframe):
(WebCore::CSSStyleSelector::applyDeclaration):
* editing/EditingStyle.cpp:

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

10 years agostringProtoFuncReplace converts 8 bit strings to 16 bit during replacement
msaboff@apple.com [Mon, 30 Jan 2012 18:51:36 +0000 (18:51 +0000)]
stringProtoFuncReplace converts 8 bit strings to 16 bit during replacement
https://bugs.webkit.org/show_bug.cgi?id=76651

Reviewed by Geoffrey Garen.

Made local function substituteBackreferencesSlow a template function
based on character width.  Cleaned up getCharacters() in both UString
and StringImpl.  Changed getCharacters<UChar> to up convert an 8 bit
string to 16 bits if necessary.

* runtime/StringPrototype.cpp:
(JSC::substituteBackreferencesSlow):
(JSC::substituteBackreferences):
* runtime/UString.h:
(JSC::LChar):
(JSC::UChar):
* wtf/text/StringImpl.h:
(WTF::UChar):

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

10 years ago[chromium] MediaStream API: Fix a few memory leaks
tommyw@google.com [Mon, 30 Jan 2012 18:36:18 +0000 (18:36 +0000)]
[chromium] MediaStream API: Fix a few memory leaks
https://bugs.webkit.org/show_bug.cgi?id=77334

Reviewed by Darin Fisher.

It seems that either the behaviour of WebPrivatePtr has changed or I misunderstood
something, but I fixed a memory leak in WebMediaStreamDescriptor and safeguarded
WebMediaStreamSource.

* public/platform/WebMediaStreamDescriptor.h:
(WebKit::WebMediaStreamDescriptor::WebMediaStreamDescriptor):
* public/platform/WebMediaStreamSource.h:
(WebKit::WebMediaStreamSource::WebMediaStreamSource):
(WebKit::WebMediaStreamSource::operator=):
(WebMediaStreamSource):
* src/WebMediaStreamDescriptor.cpp:
(WebKit::WebMediaStreamDescriptor::assign):
* src/WebMediaStreamSource.cpp:
(WebKit::WebMediaStreamSource::assign):
(WebKit):

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

10 years agoClean up putDirect
barraclough@apple.com [Mon, 30 Jan 2012 18:28:39 +0000 (18:28 +0000)]
Clean up putDirect
https://bugs.webkit.org/show_bug.cgi?id=76232

Reviewed by Sam Weinig.

Part 3 - merge op_put_getter & op_put_setter.

Putting these separately is inefficient (and makes future optimiation,
e.g. making GetterSetter immutable) harder. Change to emit a single
op_put_getter_setter bytecode op. Ultimately we should probably be
able to merge this with put direct, to create a common op to initialize
object literal properties.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* bytecode/Opcode.h:
(JSC):
():
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitPutGetterSetter):
* bytecompiler/BytecodeGenerator.h:
(BytecodeGenerator):
* bytecompiler/NodesCodegen.cpp:
(JSC::PropertyListNode::emitBytecode):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::privateExecute):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
* jit/JIT.h:
(JIT):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_getter_setter):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_getter_setter):
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* jit/JITStubs.h:
():
* runtime/JSObject.cpp:
(JSC::JSObject::putDirectVirtual):
(JSC::JSObject::putDirectAccessor):
(JSC):
(JSC::putDescriptor):
(JSC::JSObject::defineOwnProperty):
* runtime/JSObject.h:
():
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::putDirect):
(JSC::JSObject::putDirectWithoutTransition):

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

10 years agoDromaeo tests call parseSimpleLengthValue() on 8 bit strings
msaboff@apple.com [Mon, 30 Jan 2012 18:22:50 +0000 (18:22 +0000)]
Dromaeo tests call parseSimpleLengthValue() on 8 bit strings
https://bugs.webkit.org/show_bug.cgi?id=76649

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

* JavaScriptCore.exp: Added export for charactersToDouble.

Source/WebCore:

No functionality change, therefore no new tests.

Added 8 bit patch for parseSimpleLengthValue().

* css/CSSParser.cpp:
(WebCore::parseSimpleLengthValue):

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

10 years agoWebCore decodeEscapeSequences unnecessarily converts 8 bit strings to 16 bit when...
msaboff@apple.com [Mon, 30 Jan 2012 18:10:43 +0000 (18:10 +0000)]
WebCore decodeEscapeSequences unnecessarily converts 8 bit strings to 16 bit when decoding.
https://bugs.webkit.org/show_bug.cgi?id=76648

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Added a new overloaded append member that takes a String& argument, an offest
and a length to do direct sub string appending to a StringBuilder.

* wtf/text/StringBuilder.h:
(WTF::StringBuilder::append):

Source/WebCore:

Using new overloaded append(String&, offset, length)  member to build result string.
The new member properly handles 8/16 bit-ness of strings.

Functionality not changed, therefore no new tests.

* platform/text/DecodeEscapeSequences.h:
(WebCore::decodeEscapeSequences):

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

10 years agoNot reviewed: follow up to r105625, use proper event categoty in inspector frontend.
pfeldman@chromium.org [Mon, 30 Jan 2012 17:53:53 +0000 (17:53 +0000)]
Not reviewed: follow up to r105625, use proper event categoty in inspector frontend.

* inspector/front-end/BreakpointsSidebarPane.js:
(WebInspector.EventListenerBreakpointsSidebarPane):

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

10 years agoREGRESSION (r82580): Reproducible crash in CSSPrimitiveValue::computeLengthDouble
commit-queue@webkit.org [Mon, 30 Jan 2012 17:31:52 +0000 (17:31 +0000)]
REGRESSION (r82580): Reproducible crash in CSSPrimitiveValue::computeLengthDouble
https://bugs.webkit.org/show_bug.cgi?id=61989

Patch by Parag Radke <nrqv63@motorola.com> on 2012-01-30
Reviewed by Simon Fraser.

Source/WebCore:

According to css3 specs when font-size is specified in 'rems' for an element implies the font-size
of the root element. In this case as HTML element has a property 'display:none' and hence renderer
is NULL causes this crash.

Test: fast/css/fontsize-unit-rems-crash.html

* css/CSSPrimitiveValue.cpp:
(WebCore::CSSPrimitiveValue::computeLengthDouble):
Added a null check for the root element's RenderStyle as it can be null in case of html has a property
hidden or display:none.

LayoutTests:

Added a test case to check rems unit (css3) with html property display:none.

* fast/css/fontsize-unit-rems-crash-expected.txt: Added.
* fast/css/fontsize-unit-rems-crash.html: Added.

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

10 years ago[Qt] WKTR: Use a software rendering pipiline when running tests.
jocelyn.turcotte@nokia.com [Mon, 30 Jan 2012 17:27:33 +0000 (17:27 +0000)]
[Qt] WKTR: Use a software rendering pipiline when running tests.
https://bugs.webkit.org/show_bug.cgi?id=76708

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

* platform/graphics/qt/TextureMapperQt.cpp: Allow setting the context to null.
(WebCore::TextureMapperQt::setGraphicsContext):
* platform/graphics/qt/TextureMapperQt.h:
(WebCore::TextureMapperQt::initialize):

Source/WebKit2:

Animation layout tests require the graphics layers tree to be updated
to pass. WebkitTestRunner doesn't show its wrapping QQuickView, which
prevents the rendering pipeline to run and then in turn blocks the web
process from processing further graphics layer updates.

This allows the tests to use a TextureMapperQt to empty the LayerTreeHost's
message queue and render the layers in software on an offscreen buffer.

* UIProcess/API/qt/qquickwebpage.cpp:
(QQuickWebPagePrivate::paint):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::setNeedsDisplay):
(QQuickWebViewExperimental::setRenderToOffscreenBuffer):
(QQuickWebViewExperimental::renderToOffscreenBuffer):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate::setRenderToOffscreenBuffer):
(QQuickWebViewPrivate::renderToOffscreenBuffer):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToGraphicsContext):

Tools:

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::WrapperWindow):
(WTR::PlatformWebView::PlatformWebView): Use software rendering of layers since the wrapping QQuickView isn't shown.

LayoutTests:

* platform/qt-wk2/Skipped:

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

10 years ago[Qt][WK2] Render layers do not get flushed when the scroll animation finishes
abecsi@webkit.org [Mon, 30 Jan 2012 17:19:26 +0000 (17:19 +0000)]
[Qt][WK2] Render layers do not get flushed when the scroll animation finishes
https://bugs.webkit.org/show_bug.cgi?id=77338

Reviewed by Noam Rosenthal.

Schedule a layer flush when setting the visible content rect and scale.

Fixed with the help of Jocelyn Turcotte <jocelyn.turcotte@nokia.com>

* WebProcess/WebPage/qt/LayerTreeHostQt.cpp:
(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):

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

10 years agoRemove all references to NSPasteboard objects from the Pasteboard
enrica@apple.com [Mon, 30 Jan 2012 16:58:20 +0000 (16:58 +0000)]
Remove all references to NSPasteboard objects from the Pasteboard
class interface on Mac.
https://bugs.webkit.org/show_bug.cgi?id=77261

This is cleanup work needed as first step in the direction of
removing access to NSPasteboard from the WebProcess.
This way all access to the NSPasteboard object are internal to
the class.
Removed static methods taking NSPasteboard as paramenter and changed
the constructor of the class to take the pasteboard name instead of
the NSPasteboard object.

Reviewed by Alexey Proskuryakov.

No new tests. There is no change in behavior.

* editing/Editor.cpp: Removed ununsed private method writeSelectionToPasteboard.
(WebCore):
* editing/Editor.h: Ditto.
(Editor):
():
* editing/mac/EditorMac.mm:
(WebCore::Editor::writeSelectionToPasteboard):
(WebCore::Editor::readSelectionFromPasteboard):
* platform/Pasteboard.h:
(Pasteboard):
* platform/mac/ClipboardMac.mm:
(WebCore::ClipboardMac::writeRange):
(WebCore::ClipboardMac::writePlainText):
(WebCore::ClipboardMac::writeURL):
* platform/mac/DragDataMac.mm:
(WebCore::DragData::asPlainText):
(WebCore::DragData::asURL):
(WebCore::DragData::asFragment):
* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::generalPasteboard):
(WebCore::Pasteboard::Pasteboard):
(WebCore::Pasteboard::writeSelectionForTypes): Added.
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::writeSelection):
(WebCore::Pasteboard::writeURLForTypes): Added.
(WebCore::Pasteboard::writeURL):
(WebCore::Pasteboard::writeImage):

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

10 years agoReduce non-CSSOM API of CSSStyleDeclaration
antti@apple.com [Mon, 30 Jan 2012 16:46:56 +0000 (16:46 +0000)]
Reduce non-CSSOM API of CSSStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=77299

Reviewed by Andreas Kling.

../WebCore:

CSSStyleDeclaration should expose the CSSOM API only. Subclasses should expose the internal API only.
This will move us closer to being able to split the CSSOM API from the internal implementation.

- Make CSSStyleDeclaration CSSOM functions virtual, internal functions non-virtual.
- Move implementations to subclasses (CSSComputedStyleDeclaration, CSSMutableStyleDeclaration).
- Make CSSOM functions in the subclasses private (making it harder to invoke them internally).
- Switch a bunch of places to use internal API instead of CSSOM.

* bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
(WebCore::V8CSSStyleDeclaration::namedPropertyGetter):
(WebCore::V8CSSStyleDeclaration::namedPropertySetter):

    Switch to *Internal versions of the CSSOM functions.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore):
(WebCore::CSSComputedStyleDeclaration::length):
(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
(WebCore::CSSComputedStyleDeclaration::copyPropertiesInSet):

    Move copyPropertiesInSet to subclasses, devirtualize.

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSComputedStyleDeclaration::getPropertyValue):
(WebCore::CSSComputedStyleDeclaration::getPropertyPriority):
(WebCore::CSSComputedStyleDeclaration::getPropertyShorthand):
(WebCore::CSSComputedStyleDeclaration::isPropertyImplicit):
(WebCore::CSSComputedStyleDeclaration::setProperty):
(WebCore::CSSComputedStyleDeclaration::removeProperty):
* css/CSSComputedStyleDeclaration.h:
(CSSComputedStyleDeclaration):
* css/CSSFontFaceRule.cpp:
(WebCore::CSSFontFaceRule::cssText):
* css/CSSMutableStyleDeclaration.cpp:
(WebCore::CSSMutableStyleDeclaration::length):
(WebCore::CSSMutableStyleDeclaration::asText):
(WebCore::CSSMutableStyleDeclaration::cssText):
(WebCore):
(WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
(WebCore::CSSMutableStyleDeclaration::getPropertyValue):
(WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
(WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
(WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
(WebCore::CSSMutableStyleDeclaration::setProperty):
(WebCore::CSSMutableStyleDeclaration::removeProperty):
(WebCore::CSSMutableStyleDeclaration::copyPropertiesInSet):

    Move copyPropertiesInSet to subclasses, devirtualize.

(WebCore::CSSMutableStyleDeclaration::cssPropertyMatches):
(WebCore::CSSMutableStyleDeclaration::removeEquivalentProperties):

    Move diff() to CSSMutableStyleDeclaration, rename to removeEquivalentProperties, switch to mutate
    this object instead of the argument object.

* css/CSSMutableStyleDeclaration.h:
(CSSMutableStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::propertyCount):
(WebCore::CSSMutableStyleDeclaration::isEmpty):
(WebCore::CSSMutableStyleDeclaration::propertyAt):

    Expose properties and property count internally (iterator should be removed in favor of these).

* css/CSSStyleDeclaration.cpp:
(WebCore):
* css/CSSStyleDeclaration.h:
(CSSStyleDeclaration):
(WebCore::CSSStyleDeclaration::getPropertyCSSValueInternal):
(WebCore::CSSStyleDeclaration::getPropertyValueInternal):
(WebCore::CSSStyleDeclaration::setPropertyInternal):

    Add *Internal versions of some CSSOM APIs to support some editing and bindings uses.
    These take propertyIDs instead of strings names.

* css/CSSStyleRule.cpp:
(WebCore::CSSStyleRule::cssText):
* css/CSSStyleSelector.cpp:
(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
(WebCore::CSSStyleSelector::matchPageRulesForList):
* css/WebKitCSSKeyframeRule.cpp:
(WebCore::WebKitCSSKeyframeRule::cssText):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
(WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
(WebCore::ApplyStyleCommand::applyInlineStyleToPushDown):
(WebCore::ApplyStyleCommand::addBlockStyle):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
* editing/EditingStyle.cpp:
():
(WebCore::copyEditingProperties):
(WebCore):
(WebCore::propertyCSSValue):
(WebCore::getRGBAFontColor):
(WebCore::EditingStyle::overrideWithStyle):
(WebCore::EditingStyle::removeStyleAddedByNode):
(WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
(WebCore::EditingStyle::triStateOfStyle):
(WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode):
(WebCore::EditingStyle::prepareToApplyAt):
(WebCore::removePropertiesInStyle):
(WebCore::EditingStyle::removeStyleFromRulesAndContext):
(WebCore::EditingStyle::removePropertiesInElementDefaultStyle):
(WebCore::StyleChange::StyleChange):
(WebCore::fontWeightIsBold):
(WebCore::getPropertiesNotIn):
(WebCore::getIdentifierValue):
(WebCore::hasTransparentBackgroundColor):
* editing/EditingStyle.h:

    Adapt to changes.

(WebCore):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline):
(WebCore::handleStyleSpansBeforeInsertion):
(WebCore::ReplaceSelectionCommand::handleStyleSpans):
* editing/mac/EditorMac.mm:
(WebCore::styleForSelectionStart):
* editing/markup.cpp:
(WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
(WebCore::StyledMarkupAccumulator::appendElement):
* html/ImageDocument.cpp:
(WebCore::ImageDocument::resizeImageToFit):
(WebCore::ImageDocument::restoreImageSize):
(WebCore::ImageDocument::windowSizeChanged):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::setFont):
* html/canvas/CanvasStyle.cpp:
(WebCore::currentColor):
* inspector/InspectorStyleSheet.cpp:
(WebCore::InspectorStyleSheet::revalidateStyle):
* page/PageSerializer.cpp:
(WebCore::PageSerializer::retrieveResourcesForCSSDeclaration):
* rendering/RenderTreeAsText.cpp:
(WebCore::isEmptyOrUnstyledAppleStyleSpan):
* svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::getPresentationAttribute):

../WebKit/qt:

* Api/qwebelement.cpp:
(QWebElement::styleProperty):
(QWebElement::setStyleProperty):
* WebCoreSupport/DumpRenderTreeSupportQt.cpp:
(DumpRenderTreeSupportQt::computedStyleIncludingVisitedInfo):

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

10 years agoWeb Inspector: protocol validator should fail if one of response fields turns optional
pfeldman@chromium.org [Mon, 30 Jan 2012 16:40:55 +0000 (16:40 +0000)]
Web Inspector: protocol validator should fail if one of response fields turns optional
https://bugs.webkit.org/show_bug.cgi?id=76452

Reviewed by Yury Semikhatsky.

* inspector/Inspector-0.1.json:
* inspector/Inspector.json:
* inspector/generate-inspector-protocol-version:
(compare_commands):
(compare_events):
(compare_params_list):
(compare_types):
(self_test):

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

10 years agoWeb Inspector: keyboard navigation through comparison view in heap profiler should...
yurys@chromium.org [Mon, 30 Jan 2012 16:17:01 +0000 (16:17 +0000)]
Web Inspector: keyboard navigation through comparison view in heap profiler should update retainers view
https://bugs.webkit.org/show_bug.cgi?id=77326

Keyboard navigation in the detailed heap snapshot view now updates retainers view.

Reviewed by Pavel Feldman.

* inspector/front-end/DataGrid.js: Added SelectedNode/DeselectedNode events to DataGrid.
(WebInspector.DataGridNode.prototype.select):
(WebInspector.DataGridNode.prototype.deselect):
* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype._selectionChanged):
(WebInspector.DetailedHeapshotView.prototype._setRetainmentDataGridSource):

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

10 years ago2012-01-30 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Mon, 30 Jan 2012 15:49:23 +0000 (15:49 +0000)]
2012-01-30  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Fix inspector front-end compilation.

        * inspector/front-end/RemoteObject.js:
        (WebInspector.RemoteObject):
        (WebInspector.RemoteObject.fromPayload):

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

10 years ago[chromium] remove exit time destructors from TextureManagerTest
jochen@chromium.org [Mon, 30 Jan 2012 15:24:22 +0000 (15:24 +0000)]
[chromium] remove exit time destructors from TextureManagerTest
https://bugs.webkit.org/show_bug.cgi?id=77333

Reviewed by Tony Gentilcore.

Non-trivial, global objects require an at-exit time destructor which add
unnecessary complexity and delays to shutdown.

* tests/FakeCCLayerTreeHostClient.h: added newline at EOF
* tests/TextureManagerTest.cpp:
(WTF::FakeTextureAllocator::~FakeTextureAllocator):
(TextureManagerTest):
(WTF::TextureManagerTest::TextureManagerTest):
(WTF::TextureManagerTest::~TextureManagerTest):
(WTF::TextureManagerTest::texturesMemorySize):
(WTF::TextureManagerTest::createTextureManager):
(WTF::TextureManagerTest::requestTexture):
(WTF::TEST_F):

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

10 years agoNode::parentOrHostElement(): Node::shadowHost() already returns an Element*
rolandsteiner@chromium.org [Mon, 30 Jan 2012 15:19:02 +0000 (15:19 +0000)]
Node::parentOrHostElement(): Node::shadowHost() already returns an Element*
https://bugs.webkit.org/show_bug.cgi?id=77332

Reviewed by Kent Tamura.

No new tests. (simple refactoring)

* dom/Node.cpp:
(WebCore::Node::parentOrHostElement):

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

10 years agoAdd manual tests for tap highlighting
kenneth@webkit.org [Mon, 30 Jan 2012 15:05:18 +0000 (15:05 +0000)]
Add manual tests for tap highlighting

Rubberstamped by Simon Hausmann.

* ManualTests/qt/tap-highlighting-colors.html: Added.
* ManualTests/qt/tap-highlighting-images.html: Added.
* ManualTests/qt/tap-highlighting-inlines.html: Added.

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

10 years agoUnreviewed. Fix make distcheck.
carlosgc@webkit.org [Mon, 30 Jan 2012 14:25:19 +0000 (14:25 +0000)]
Unreviewed. Fix make distcheck.

Source/WebCore:

* GNUmakefile.am: Add idl files in Source/WebCore/html/shadow/ to
EXTRA_DIST.
* GNUmakefile.list.am: Add missing files.

Source/WebKit2:

* GNUmakefile.am: Add missing files.
* WebProcess/WebPage/TapHighlightController.cpp: Add #if
ENABLE(TOUCH_EVENTS).

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

10 years ago[Qt][WK2] http/tests/history/replacestate-post-to-get-2.html fails with timeout
ossy@webkit.org [Mon, 30 Jan 2012 13:34:51 +0000 (13:34 +0000)]
[Qt][WK2] http/tests/history/replacestate-post-to-get-2.html fails with timeout
https://bugs.webkit.org/show_bug.cgi?id=76784

* platform/qt-wk2/Skipped: Unskip now passing test.

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

10 years agoWeb Inspector: TabbedEditorContainer should save open tabs.
vsevik@chromium.org [Mon, 30 Jan 2012 13:10:24 +0000 (13:10 +0000)]
Web Inspector: TabbedEditorContainer should save open tabs.
https://bugs.webkit.org/show_bug.cgi?id=76912

Reviewed by Pavel Feldman.

Source/WebCore:

Test: inspector/tabbed-editors-history.html

* inspector/front-end/ScriptsPanel.js:
(WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded):
(WebInspector.ScriptsPanel.prototype._reset):
(WebInspector.ScriptsPanel.prototype._showFile):
(WebInspector.ScriptsPanel.prototype._updateExecutionLine):
(WebInspector.ScriptsPanel.prototype._editorSelected):
(WebInspector.EditorContainer.prototype.uiSourceCodeAdded):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.showFile):
(WebInspector.ScriptsPanel.SingleFileEditorContainer.prototype.reset):
* inspector/front-end/TabbedEditorContainer.js:
(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype.showFile):
(WebInspector.TabbedEditorContainer.prototype._editorClosedByUserAction):
(WebInspector.TabbedEditorContainer.prototype._editorSelectedByUserAction):
(WebInspector.TabbedEditorContainer.prototype._updateHistory.tabIdToURL):
(WebInspector.TabbedEditorContainer.prototype._updateHistory):
(WebInspector.TabbedEditorContainer.prototype._appendFileTab):
(WebInspector.TabbedEditorContainer.prototype._tabClosed):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):
(WebInspector.TabbedEditorContainer.prototype.reset):
(WebInspector.TabbedEditorContainer.History):
(WebInspector.TabbedEditorContainer.History.prototype.index):
(WebInspector.TabbedEditorContainer.History.prototype.update):
(WebInspector.TabbedEditorContainer.History.prototype.remove):
(WebInspector.TabbedEditorContainer.History.prototype.save):
* inspector/front-end/TabbedPane.js:
(WebInspector.TabbedPane.prototype.appendTab):
(WebInspector.TabbedPane.prototype.closeTab):
(WebInspector.TabbedPane.prototype._innerCloseTab):
(WebInspector.TabbedPane.prototype.closeAllTabs):
(WebInspector.TabbedPane.prototype.lastOpenedTabIds):
(WebInspector.TabbedPane.prototype._tabsSelectChanged):

LayoutTests:

* inspector/tabbed-editors-history-expected.txt: Added.
* inspector/tabbed-editors-history.html: Added.

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

10 years agoWeb Inspector: [Styles] Unable to paste and subsequently edit multiple properties...
apavlov@chromium.org [Mon, 30 Jan 2012 13:04:28 +0000 (13:04 +0000)]
Web Inspector: [Styles] Unable to paste and subsequently edit multiple properties in the Styles pane
https://bugs.webkit.org/show_bug.cgi?id=77209

Reviewed by Pavel Feldman.

Source/WebCore:

Check if the property value contains a ";" before kicking the freeflow text update.

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

LayoutTests:

* inspector/styles/styles-add-blank-property-expected.txt:
* inspector/styles/styles-add-blank-property.html:

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

10 years agoWeb Inspector: Change Open Resource and Go To function shortcuts in scripts panel.
vsevik@chromium.org [Mon, 30 Jan 2012 13:02:57 +0000 (13:02 +0000)]
Web Inspector: Change Open Resource and Go To function shortcuts in scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=77321

Reviewed by Pavel Feldman.

* inspector/front-end/FilteredItemSelectionDialog.js:
(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.OpenResourceDialog.createShortcut):
* inspector/front-end/ScriptsPanel.js:

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

10 years agoWeb Inspector: hide function popover in heap snapshot view before navigating to the...
yurys@chromium.org [Mon, 30 Jan 2012 13:00:50 +0000 (13:00 +0000)]
Web Inspector: hide function popover in heap snapshot view before navigating to the function definition
https://bugs.webkit.org/show_bug.cgi?id=77330

Reviewed by Pavel Feldman.

* inspector/front-end/DetailedHeapshotView.js:
(WebInspector.DetailedHeapshotView.prototype.willHide):

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

10 years ago[BlackBerry] Credential backing store implementation
commit-queue@webkit.org [Mon, 30 Jan 2012 12:50:00 +0000 (12:50 +0000)]
[BlackBerry] Credential backing store implementation
https://bugs.webkit.org/show_bug.cgi?id=76761

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-01-30
Reviewed by Antonio Gomes.

Implemented credential backing store database and related
operations in class CredentialBackingStore.

* platform/network/blackberry/CredentialBackingStore.cpp:
(WebCore::CredentialBackingStore::~CredentialBackingStore):
(WebCore::CredentialBackingStore::open):
(WebCore::CredentialBackingStore::close):
(WebCore::CredentialBackingStore::addLogin):
(WebCore::CredentialBackingStore::updateLogin):
(WebCore::CredentialBackingStore::hasLogin):
(WebCore::CredentialBackingStore::getLogin):
(WebCore::CredentialBackingStore::removeLogin):
(WebCore::CredentialBackingStore::clear):

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

10 years ago[Qt] Store build config immediately instead of waiting for a successfull build
vestbo@webkit.org [Mon, 30 Jan 2012 12:47:28 +0000 (12:47 +0000)]
[Qt] Store build config immediately instead of waiting for a successfull build

Otherwise we will not pick up changes to the config if the build is aborted,
for example due to build errors or if the user pressed Ctrl+Z. We now write
the new config before starting a build, but still defer to write the SVN
revision once the build completes successfully.

Reviewed by Ossy.

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

10 years ago.: Manual test of number of resize events emitted during page generation.
commit-queue@webkit.org [Mon, 30 Jan 2012 12:36:41 +0000 (12:36 +0000)]
.: Manual test of number of resize events emitted during page generation.
https://bugs.webkit.org/show_bug.cgi?id=77212

Is needed to test if too many resize events are send when using fixed
layout, and needs to be a manual test because the test framework does
not currently support testing fixed layout.

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-01-30
Reviewed by Kenneth Rohde Christiansen.

* ManualTests/resize-events.html: Added.

Source/WebCore: Only send resize events when layout size changes.
https://bugs.webkit.org/show_bug.cgi?id=77212

When using fixed layout the widget size is the size of content, therefore
resize checks must check against layoutsize and not widget size.

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-01-30
Reviewed by Kenneth Rohde Christiansen.

Needs to be manual tests because the test framework does not currently
support testing fixed layout.

Tests: ManualTests/resize-events.html

* page/FrameView.cpp:
(WebCore::FrameView::layout):
(WebCore::FrameView::performPostLayoutTasks):

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

10 years ago[Qt] Add "New Window" button to the Qt MiniBrowser
commit-queue@webkit.org [Mon, 30 Jan 2012 12:10:14 +0000 (12:10 +0000)]
[Qt] Add "New Window" button to the Qt MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=77281

Patch by Alexander Færøy <ahf@0x90.dk> on 2012-01-30
Reviewed by Tor Arne Vestbø.

* MiniBrowser/qt/BrowserWindow.cpp:
(BrowserWindow::BrowserWindow):
* MiniBrowser/qt/MiniBrowser.qrc:
* MiniBrowser/qt/icons/plus.png: Added.
* MiniBrowser/qt/qml/BrowserWindow.qml:

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

10 years agoWeb Inspector: TimelinePanel does not respect InspectorFrontendHost.canSaveAs
pfeldman@chromium.org [Mon, 30 Jan 2012 12:06:16 +0000 (12:06 +0000)]
Web Inspector: TimelinePanel does not respect InspectorFrontendHost.canSaveAs
https://bugs.webkit.org/show_bug.cgi?id=77301

Reviewed by Vsevolod Vlasov.

* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelinePanel.prototype._registerShortcuts):

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

10 years ago2012-01-30 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Mon, 30 Jan 2012 11:39:50 +0000 (11:39 +0000)]
2012-01-30  Nikolas Zimmermann  <nzimmermann@rim.com>

        Not reviewed. Fix Clang build for real after r106218.

        * inspector/CodeGeneratorInspector.py:
        (Generator.go): Add virtual destructor to the ABCs.

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

10 years agoNo need to keep anonymous RenderBlock in DETAILS.
commit-queue@webkit.org [Mon, 30 Jan 2012 11:32:20 +0000 (11:32 +0000)]
No need to keep anonymous RenderBlock in DETAILS.
https://bugs.webkit.org/show_bug.cgi?id=77322

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-30
Reviewed by Hajime Morita.

Anonymous RenderBlock of DETAILS element was not squashed when detaching them.
However, it should be removed.

No new tests. Should be covered by existing tests.

* rendering/RenderBlock.cpp:
(WebCore::canMergeContiguousAnonymousBlocks):

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

10 years agoCustom written CSS lexer
zherczeg@webkit.org [Mon, 30 Jan 2012 11:17:58 +0000 (11:17 +0000)]
Custom written CSS lexer
https://bugs.webkit.org/show_bug.cgi?id=70107

Rubber Stamped by Csaba Osztrogonác.

Do not advance pointer at the end of input, just
keep returning with END_TOKEN.

* css/CSSParser.cpp:
(WebCore::CSSParser::lex):

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 10:48:38 +0000 (10:48 +0000)]
[Chromium] Unreviewed test expectation change.
fast/js/dfg-int32array.html is slow on WIN DEBUG and MAC DEBUG.

* platform/chromium/test_expectations.txt:

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

10 years agoThe query selector for HTMLContentElement should follow the shadow dom spec.
commit-queue@webkit.org [Mon, 30 Jan 2012 10:40:23 +0000 (10:40 +0000)]
The query selector for HTMLContentElement should follow the shadow dom spec.
https://bugs.webkit.org/show_bug.cgi?id=75946

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-30
Reviewed by Hajime Morita.

Source/WebCore:

Checks the query selector of HTMLContentElement is valid.
If not valid, the selector won't match anything, and shows fallback element.

Test: fast/dom/shadow/content-selector-query.html

* html/shadow/ContentSelectorQuery.cpp:
(WebCore::ContentSelectorQuery::ContentSelectorQuery):
(WebCore::ContentSelectorQuery::isValidSelector):
(WebCore::ContentSelectorQuery::matches):
  When a select query is not valid, any element won't be matched.
(WebCore::validateSubSelector):
(WebCore::validateSelector):
(WebCore::ContentSelectorQuery::validateSelectorList):
  Validate selectors.
* html/shadow/ContentSelectorQuery.h:
* html/shadow/HTMLContentElement.cpp:
(WebCore::HTMLContentElement::isSelectValid):
  Returns true if select attribute is valid.
* html/shadow/HTMLContentElement.h:
* testing/Internals.cpp:
(WebCore::Internals::isValidContentSelect):
* testing/Internals.h:
* testing/Internals.idl:

LayoutTests:

* fast/dom/shadow/content-selector-query-expected.txt: Added.
* fast/dom/shadow/content-selector-query.html: Added.

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

10 years agoUnreviewed rolling out r106222.
ossy@webkit.org [Mon, 30 Jan 2012 10:39:32 +0000 (10:39 +0000)]
Unreviewed rolling out r106222.

* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner.__init__):
* Scripts/webkitpy/layout_tests/controllers/worker.py:
(Worker.handle_test_list):
* Scripts/webkitpy/layout_tests/models/test_input.py:
(TestInput.__init__):
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
(parse_args):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_repeat_each):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::setIsPixelTest):

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

10 years agoUnreviewed, rolling out r106219.
hans@chromium.org [Mon, 30 Jan 2012 10:10:33 +0000 (10:10 +0000)]
Unreviewed, rolling out r106219.
http://trac.webkit.org/changeset/106219
https://bugs.webkit.org/show_bug.cgi?id=77083

This broke Chromium's test_shell.

Source/WebCore:

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/mock/SpeechInputClientMock.cpp: Added.
(WebCore):
(WebCore::SpeechInputClientMock::SpeechInputClientMock):
(WebCore::SpeechInputClientMock::setListener):
(WebCore::SpeechInputClientMock::startRecognition):
(WebCore::SpeechInputClientMock::stopRecording):
(WebCore::SpeechInputClientMock::cancelRecognition):
(WebCore::SpeechInputClientMock::addRecognitionResult):
(WebCore::SpeechInputClientMock::clearResults):
(WebCore::SpeechInputClientMock::timerFired):
* platform/mock/SpeechInputClientMock.h: Added.
(WebCore):
(SpeechInputClientMock):

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebSpeechInputControllerMock.h: Added.
(WebKit):
(WebSpeechInputControllerMock):
(WebKit::WebSpeechInputControllerMock::~WebSpeechInputControllerMock):
* public/WebSpeechInputResult.h:
(WebSpeechInputResult):
* src/WebSpeechInputControllerMockImpl.cpp: Added.
(WebKit):
(WebKit::WebSpeechInputControllerMock::create):
(WebKit::WebSpeechInputControllerMockImpl::WebSpeechInputControllerMockImpl):
(WebKit::WebSpeechInputControllerMockImpl::~WebSpeechInputControllerMockImpl):
(WebKit::WebSpeechInputControllerMockImpl::addMockRecognitionResult):
(WebKit::WebSpeechInputControllerMockImpl::clearResults):
(WebKit::WebSpeechInputControllerMockImpl::didCompleteRecording):
(WebKit::WebSpeechInputControllerMockImpl::didCompleteRecognition):
(WebKit::WebSpeechInputControllerMockImpl::setRecognitionResult):
(WebKit::WebSpeechInputControllerMockImpl::startRecognition):
(WebKit::WebSpeechInputControllerMockImpl::cancelRecognition):
(WebKit::WebSpeechInputControllerMockImpl::stopRecording):
* src/WebSpeechInputControllerMockImpl.h: Added.
(WebCore):
(WebKit):
(WebSpeechInputControllerMockImpl):
* src/WebSpeechInputResult.cpp:

Tools:

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::addMockSpeechInputResult):
* DumpRenderTree/chromium/LayoutTestController.h:
(WebKit):
(LayoutTestController):
():
* DumpRenderTree/chromium/MockWebSpeechInputController.cpp: Removed.
* DumpRenderTree/chromium/MockWebSpeechInputController.h: Removed.
* DumpRenderTree/chromium/TestShell.cpp:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::speechInputController):
* DumpRenderTree/chromium/WebViewHost.h:
(WebKit):
(WebViewHost::speechInputControllerMock):
(WebViewHost):
():

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

10 years ago2012-01-30 Balazs Kelemen <kbalazs@webkit.org>
kbalazs@webkit.org [Mon, 30 Jan 2012 10:06:15 +0000 (10:06 +0000)]
2012-01-30  Balazs Kelemen  <kbalazs@webkit.org>

        [WK2] add flag to only check pixel results if png files exist
        https://bugs.webkit.org/show_bug.cgi?id=70484

        Reviewed by Dirk Pranke.

        * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
        (SingleTestRunner.__init__):
        (SingleTestRunner._should_fetch_expected_checksum):
        * Scripts/webkitpy/layout_tests/controllers/worker.py:
        (Worker.handle_test_list):
        * Scripts/webkitpy/layout_tests/models/test_input.py:
        (TestInput.__init__):
        * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
        (_set_up_derived_options):
        (parse_args):
        * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
        (MainTest.test_skip_pixel_test_if_no_baseline_option):
        * WebKitTestRunner/TestInvocation.cpp:
        (WTR::TestInvocation::setIsPixelTest):

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

10 years ago2012-01-30 Yury Semikhatsky <yurys@chromium.org>
yurys@chromium.org [Mon, 30 Jan 2012 09:42:58 +0000 (09:42 +0000)]
2012-01-30  Yury Semikhatsky  <yurys@chromium.org>

        Unreviewed. Clang build fix after r106218

        * inspector/CodeGeneratorInspector.py:

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

10 years agoMake GraphicsContext3DPrivate of GTK port shareable.
commit-queue@webkit.org [Mon, 30 Jan 2012 09:40:38 +0000 (09:40 +0000)]
Make GraphicsContext3DPrivate of GTK port shareable.
https://bugs.webkit.org/show_bug.cgi?id=77296

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-01-30
Reviewed by Eric Seidel.

GraphicsContext3DPrivate.cpp/h of GTK port look shareable with another port
using glx backend for WebGL. For example, EFL port.
Moved GraphicsContext3DPrivate.cpp and its header into Source/WebCore/platform/graphics/glx.

No new tests required, because of no new feature.

* GNUmakefile.am:
* GNUmakefile.list.am:
* platform/graphics/glx/GraphicsContext3DPrivate.cpp: Renamed from Source/WebCore/platform/graphics/gtk/GraphicsContext3DPrivate.cpp.
(sharedDisplay):
(WebCore):
(WebCore::activeGraphicsContexts):
(WebCore::GraphicsContext3DPrivate::addActiveGraphicsContext):
(WebCore::GraphicsContext3DPrivate::removeActiveGraphicsContext):
(WebCore::GraphicsContext3DPrivate::cleanupActiveContextsAtExit):
(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::createPbufferContext):
(WebCore::GraphicsContext3DPrivate::createPixmapContext):
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::makeContextCurrent):
* platform/graphics/glx/GraphicsContext3DPrivate.h: Renamed from Source/WebCore/platform/graphics/gtk/GraphicsContext3DPrivate.h.
(WebCore):
(GraphicsContext3DPrivate):

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

10 years agoSpeech Input: move MockSpeechInputClient into Chromium DumpRenderTree implementation
hans@chromium.org [Mon, 30 Jan 2012 09:31:58 +0000 (09:31 +0000)]
Speech Input: move MockSpeechInputClient into Chromium DumpRenderTree implementation
https://bugs.webkit.org/show_bug.cgi?id=77083

Reviewed by Darin Fisher.

Source/WebCore:

Remove SpeechInputClientMock. The mock is moving to the DumpRenderTree
implementation.

No new tests, just refactoring.

* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/mock/SpeechInputClientMock.cpp: Removed.
* platform/mock/SpeechInputClientMock.h: Removed.

Source/WebKit/chromium:

Remove the WebSpeechInputControllerMock interface and proxy
implementation. The mock is moving to the DumpRenderTree
implementation instead, which removes the need to expose this
interface in the WebKit API.

Also add a proper copy constructor for WebSpeechInputResult.
The default one doesn't do a proper copy.

* WebKit.gyp:
* public/WebSpeechInputControllerMock.h: Removed.
* public/WebSpeechInputResult.h:
(WebKit::WebSpeechInputResult::WebSpeechInputResult):
(WebSpeechInputResult):
* src/WebSpeechInputControllerMockImpl.cpp: Removed.
* src/WebSpeechInputControllerMockImpl.h: Removed.
* src/WebSpeechInputResult.cpp:
(WebKit::WebSpeechInputResult::set):
(WebKit):

Tools:

Add MockWebSpeechInputController which provides a mock implementation
of the WebSpeechInputController interface, and use that in
DumpRenderTree.

* DumpRenderTree/DumpRenderTree.gypi:
* DumpRenderTree/chromium/LayoutTestController.cpp:
(LayoutTestController::addMockSpeechInputResult):
* DumpRenderTree/chromium/LayoutTestController.h:
():
* DumpRenderTree/chromium/MockWebSpeechInputController.cpp: Added.
(MockWebSpeechInputController::create):
(MockWebSpeechInputController::addMockRecognitionResult):
(MockWebSpeechInputController::clearResults):
(MockWebSpeechInputController::startRecognition):
(MockWebSpeechInputController::cancelRecognition):
(MockWebSpeechInputController::stopRecording):
(MockWebSpeechInputController::MockWebSpeechInputController):
(MockWebSpeechInputController::speechTaskFired):
(MockWebSpeechInputController::SpeechTask::SpeechTask):
(MockWebSpeechInputController::SpeechTask::stop):
(MockWebSpeechInputController::SpeechTask::runIfValid):
* DumpRenderTree/chromium/MockWebSpeechInputController.h: Added.
(WebKit):
(MockWebSpeechInputController):
(MockWebSpeechInputController::taskList):
(SpeechTask):
* DumpRenderTree/chromium/TestShell.cpp:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::speechInputController):
* DumpRenderTree/chromium/WebViewHost.h:
(WebKit):
(WebViewHost::speechInputControllerMock):
(WebViewHost):
():

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

10 years agoWeb Inspector: CodeGeneratorInspector.py: clean InspectorBackendDispatcher.h
yurys@chromium.org [Mon, 30 Jan 2012 08:57:18 +0000 (08:57 +0000)]
Web Inspector: CodeGeneratorInspector.py: clean InspectorBackendDispatcher.h
https://bugs.webkit.org/show_bug.cgi?id=77062

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-30
Reviewed by Yury Semikhatsky.

Code generator is changed. Now it generates InspectorBackendDispatcher
as an abstract class so that implementation details could be fully
hidden in .cpp file in a separate 'impl' class. This should make .h
file more clear.
Also new formal interfaces to domain agents are generated. This is an
improvement over the current case when interfaces to agents are
definen implicitly at calling sites.

* inspector/CodeGeneratorInspector.py:
(RawTypes):
(RawTypes.OutputPassModel):
(RawTypes.OutputPassModel.ByPointer):
(RawTypes.OutputPassModel.ByPointer.get_argument_prefix):
(RawTypes.OutputPassModel.ByPointer.get_parameter_type_suffix):
(RawTypes.OutputPassModel.ByReference):
(RawTypes.OutputPassModel.ByReference.get_argument_prefix):
(RawTypes.OutputPassModel.ByReference.get_parameter_type_suffix):
(RawTypes.BaseType.is_event_param_check_optional):
(RawTypes.String):
(RawTypes.String.get_output_pass_model):
(RawTypes.String.is_heavy_value):
(RawTypes.Int):
(RawTypes.Int.get_output_pass_model):
(RawTypes.Int.is_heavy_value):
(RawTypes.Number):
(RawTypes.Number.get_output_pass_model):
(RawTypes.Number.is_heavy_value):
(RawTypes.Bool.get_c_param_type):
(RawTypes.Bool):
(RawTypes.Bool.get_output_pass_model):
(RawTypes.Bool.is_heavy_value):
(RawTypes.Object):
(RawTypes.Object.get_output_pass_model):
(RawTypes.Object.is_heavy_value):
(RawTypes.Any.get_c_initializer):
(RawTypes.Any):
(RawTypes.Any.get_output_pass_model):
(RawTypes.Any.is_heavy_value):
(RawTypes.Array):
(RawTypes.Array.get_output_pass_model):
(RawTypes.Array.is_heavy_value):
(InspectorBackendDispatcherImpl):
(void):
(Generator):
(Generator.go):
(Generator.process_command):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::connectFrontend):

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

10 years agoCustom written CSS lexer
zherczeg@webkit.org [Mon, 30 Jan 2012 07:30:14 +0000 (07:30 +0000)]
Custom written CSS lexer
https://bugs.webkit.org/show_bug.cgi?id=70107

Reviewed by Antti Koivisto and Oliver Hunt.

.:

Remove tokenizer.cpp from intermediate sources.

* wscript:

Source/JavaScriptCore:

Add new helper functions for the custom written CSS lexer.

* wtf/ASCIICType.h:
(WTF::toASCIILowerUnchecked):
(WTF):
(WTF::isASCIIAlphaCaselessEqual):

Source/WebCore:

This patch replaces the flex based CSS lexer to a
new, custom written one. The new code is more
than 2 times faster according to oprofile and CPU
cycle counters.

The code structure is quite straightforward: it choose
the possible token group based on the first character
and employ utility functions to parse the longer than
one character long ones. Most of the utilities are inline
to make the lexer fast.

All build systems updated. Including removing the flex support.

Existing tests cover this feature.

* CMakeLists.txt:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.gyp/WebCore.gyp:
* WebCore.gyp/scripts/action_maketokenizer.py: Removed.
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSParser.cpp:
(WebCore::CSSParser::CSSParser):
(WebCore::CSSParser::setupParser):
(WebCore::parseSimpleLengthValue):
(WebCore::mightBeRGBA):
(WebCore::mightBeRGB):
():
(WebCore::isCSSLetter):
(WebCore):
(WebCore::isCSSEscape):
(WebCore::isURILetter):
(WebCore::isIdentifierStartAfterDash):
(WebCore::isEqualToCSSIdentifier):
(WebCore::checkAndSkipEscape):
(WebCore::skipWhiteSpace):
(WebCore::CSSParser::isIdentifierStart):
(WebCore::CSSParser::checkAndSkipString):
(WebCore::CSSParser::parseEscape):
(WebCore::CSSParser::parseIdentifier):
(WebCore::CSSParser::parseString):
(WebCore::CSSParser::parseURI):
(WebCore::CSSParser::parseUnicodeRange):
(WebCore::CSSParser::parseNthChild):
(WebCore::CSSParser::parseNthChildExtra):
(WebCore::CSSParser::detectFunctionTypeToken):
(WebCore::CSSParser::detectMediaQueryToken):
(WebCore::CSSParser::detectNumberToken):
(WebCore::CSSParser::detectDashToken):
(WebCore::CSSParser::detectAtToken):
(WebCore::CSSParser::lex):
(WebCore::CSSParser::markSelectorListStart):
(WebCore::CSSParser::markSelectorListEnd):
(WebCore::CSSParser::markRuleBodyStart):
(WebCore::CSSParser::markRuleBodyEnd):
(WebCore::CSSParser::markPropertyStart):
(WebCore::CSSParser::markPropertyEnd):
* css/CSSParser.h:
(WebCore::CSSParser::token):
(CSSParser):
():
* css/tokenizer.flex: Removed.

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

10 years ago[Chromium] REGRESSION(r87067): WebFrame::setFindEndstateFocusAndSelection()
tkent@chromium.org [Mon, 30 Jan 2012 07:22:59 +0000 (07:22 +0000)]
[Chromium] REGRESSION(r87067): WebFrame::setFindEndstateFocusAndSelection()
doesn't set the selection for <input> and <textarea>
https://bugs.webkit.org/show_bug.cgi?id=77186

Reviewed by Hajime Morita.

When the find-in-page box is closed, WebFrame::stopFinding(false) is
called. It calls setFindEndstateFocusAndSelection(). Before r87067,
m_activeMatch was stored as the normal selection in <input> or
<textarea> by accident. r87067 stopped this accidental behavior.

However the behavior of pre-r87067 is useful and we should support it
for contentEditable elements too.

* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::setFindEndstateFocusAndSelection):
- Add special handing for <input> and <textarea> to find a focusable parent.
- Sets the active match as the selection even if a focusable parent is found.
* tests/WebFrameTest.cpp:
(WebKit::TEST_F): Add tests for find() and stopFinding().
* tests/data/find.html: Added.

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 07:07:02 +0000 (07:07 +0000)]
[Chromium] Unreviewed test expectation change.
inspector/extensions/extensions-{events,sidebar}.html time out for WIN DBG.

* platform/chromium/test_expectations.txt:

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

10 years ago[chromium/mac] Fix two-finger scrolling
commit-queue@webkit.org [Mon, 30 Jan 2012 06:55:15 +0000 (06:55 +0000)]
[chromium/mac] Fix two-finger scrolling
https://bugs.webkit.org/show_bug.cgi?id=77316

http://trac.webkit.org/changeset/106021/trunk changed the phase enums
to match AppKit. This changes WebMouseWheelEvent accordingly.

No tests, because DRT doesn't support synthetic scroll events with
event phases.

Patch by Nico Weber <nicolasweber@gmx.de> on 2012-01-29
Reviewed by Anders Carlsson.

* public/WebInputEvent.h:
* src/mac/WebInputEventFactory.mm:

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 05:50:36 +0000 (05:50 +0000)]
[Chromium] Unreviewed test expectation change.
svg/W3C-SVG-1.1/masking-intro-01-f.svg does not crash after r105978.

* platform/chromium/test_expectations.txt:

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 04:08:17 +0000 (04:08 +0000)]
[Chromium] Unreviewed test expectation change.
fast/events/touch/touch-gesture-scroll.html is flaky on MAC and WIN.

* platform/chromium/test_expectations.txt:

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

10 years agoDOM/DOMDivWalk.html result is unreliable
rniwa@webkit.org [Mon, 30 Jan 2012 03:59:37 +0000 (03:59 +0000)]
DOM/DOMDivWalk.html result is unreliable
https://bugs.webkit.org/show_bug.cgi?id=77313

Reviewed by Adam Birth.

Trigger garbage collection manually between test runs to avoid GC
to occur in the middle of runs.

* DOM/resources/dom-perf.js:
(BenchmarkSuite.prototype.RunSingle):
* resources/runner.js:
(gc.else.gcRec):
(gc):
(runLoop):

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 03:59:22 +0000 (03:59 +0000)]
[Chromium] Unreviewed test expectation change.
Layout Test fast/events/touch/send-oncancel-event.html is flaky on MAC and WIN.

* platform/chromium/test_expectations.txt:

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

10 years agoPrepare WebCore.gyp for ffmpeg source transition.
commit-queue@webkit.org [Mon, 30 Jan 2012 03:49:19 +0000 (03:49 +0000)]
Prepare WebCore.gyp for ffmpeg source transition.
https://bugs.webkit.org/show_bug.cgi?id=77254

We're migrating our ffmpeg repo from a set of patches living on top of
a tarball to an actual git fork of upstream.  The paths have changed
slightly.

In order to not break the current build, we'll keep both paths around
until the transition is complete.  Afterward the 'patched-ffmpeg' path
will be removed.

Patch by Dale Curtis <dalecurtis@chromium.org> on 2012-01-29
Reviewed by Tony Chang.

No new tests. GYP change, if it doesn't work, nothing will compile.

* WebCore.gyp/WebCore.gyp:

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

10 years agoAdd a ShadowRoot constructor as 'WebKitShadowRootConstructor', enabled by SHADOW_DOM...
hayato@chromium.org [Mon, 30 Jan 2012 03:47:32 +0000 (03:47 +0000)]
Add a ShadowRoot constructor as 'WebKitShadowRootConstructor', enabled by SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=76354

Reviewed by Hajime Morita.

We use vendor-prefixed name, 'WebKitShadowRoot', instead of 'ShadowRoot'
since this is a feature under development.

Source/WebCore:

* dom/ShadowRoot.cpp:
(WebCore::ShadowRoot::create):
(WebCore):
* dom/ShadowRoot.h:
(WebCore):
(ShadowRoot):
* dom/ShadowRoot.idl:
* page/DOMWindow.idl:

LayoutTests:

* fast/dom/shadow/shadow-root-js-api.html:

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

10 years agoREGRESSION (r105576-r105582): Web Inspector Crash in JSC::JSValue::toString(JSC:...
fpizlo@apple.com [Mon, 30 Jan 2012 02:39:14 +0000 (02:39 +0000)]
REGRESSION (r105576-r105582): Web Inspector Crash in JSC::JSValue::toString(JSC::ExecState*) const
https://bugs.webkit.org/show_bug.cgi?id=77146
<rdar://problem/10770586>

Reviewed by Oliver Hunt.

The old JIT expects that the result of the last operation is in the lastResultRegister.  The DFG JIT is
designed to correctly track the lastResultRegister by looking at SetLocal nodes.  However, when the DFG
JIT inlines a code block, it forgets that the inlined code block's result would have been placed in the
lastResultRegister.  Hence if we OSR exit on the first node following the end of an inlined code block
that had a return value, and that first node uses the return value, the old JIT will get massively
confused.  This patch takes a surgical approach: instead of making the DFG smarter, it makes the old
JIT slightly dumber.

* jit/JITCall.cpp:
(JSC::JIT::emit_op_call_put_result):

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

10 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Mon, 30 Jan 2012 02:23:12 +0000 (02:23 +0000)]
[Chromium] Unreviewed test expectation change.
fast/js/navigator-language.html is flaky.

* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed gardening. css3/flexbox/cross-axis-scrollbar.html is failing on Chromium...
leviw@chromium.org [Mon, 30 Jan 2012 02:08:22 +0000 (02:08 +0000)]
Unreviewed gardening. css3/flexbox/cross-axis-scrollbar.html is failing on Chromium Windows.
Removing an incorrect pixel expectation (it's a ref test) and marking it as failing on
Chromium Windows.

* platform/chromium-win/css3/flexbox/cross-axis-scrollbar-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

10 years agoBuild fix for Mac non-x64 platforms.
fpizlo@apple.com [Mon, 30 Jan 2012 01:41:09 +0000 (01:41 +0000)]
Build fix for Mac non-x64 platforms.

* tools/CodeProfiling.cpp:
(JSC):

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

10 years ago[chromium] Use decoding swizzle only on libjpeg-turbo 1.1.90+
noel.gordon@gmail.com [Sun, 29 Jan 2012 23:59:44 +0000 (23:59 +0000)]
[chromium] Use decoding swizzle only on libjpeg-turbo 1.1.90+
https://bugs.webkit.org/show_bug.cgi?id=74286

Reviewed by Kenneth Russell.

No new tests. Covered by many existing tests: in particular
    fast/images/*, fast/canvas/*,
    tables/mozilla/bugs/bug29314.html
    tables/mozilla/bugs/bug13169.html
    tables/mozilla/bugs/bug10565.html
    tables/mozilla/bugs/bug11026.html
    fast/repaint/backgroundSizeRepaint.html
    fast/repaint/block-layout-inline-children-replaced.html
    fast/repaint/clipped-relative.html
    fast/repaint/selected-replaced.html
    tables/mozilla/bugs/bug12908-1.html

* platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(rgbOutputColorSpace): Swizzle decode iff libjpeg-turbo is r732 or above.

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

10 years agoUnreviewed, rolling out r106022.
ossy@webkit.org [Sun, 29 Jan 2012 23:49:39 +0000 (23:49 +0000)]
Unreviewed, rolling out r106022.
http://trac.webkit.org/changeset/106022
https://bugs.webkit.org/show_bug.cgi?id=77305

It broke Qt-WK2 API tests (Requested by Ossy_weekend on
#webkit).

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

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::setUseTraditionalDesktopBehaviour):
(QQuickWebView::geometryChanged):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qwebviewportinfo.cpp:
(QWebViewportInfo::currentScale):
(QWebViewportInfo::devicePixelRatio):
(QWebViewportInfo::initialScale):
(QWebViewportInfo::minimumScale):
(QWebViewportInfo::maximumScale):
(QWebViewportInfo::isScalable):
(QWebViewportInfo::layoutSize):

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

10 years agoUnreviewed, rolling out r105999.
leviw@chromium.org [Sun, 29 Jan 2012 23:41:33 +0000 (23:41 +0000)]
Unreviewed, rolling out r105999.
http://trac.webkit.org/changeset/105999
https://bugs.webkit.org/show_bug.cgi?id=77304

Validating that this caused a performance regression in page
load tests. (Requested by leviw on #webkit).

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

* dom/NamedNodeMap.cpp:
* dom/NamedNodeMap.h:
(NamedNodeMap):
* dom/StyledElement.cpp:
(WebCore::StyledElement::updateStyleAttribute):
(WebCore::StyledElement::createInlineStyleDecl):
(WebCore):
(WebCore::StyledElement::destroyInlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
(WebCore::StyledElement::style):
(WebCore::StyledElement::addSubresourceAttributeURLs):
* dom/StyledElement.h:
(WebCore::StyledElement::inlineStyleDecl):
(StyledElement):

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

10 years agoReserved Word tests fail on Chromium after r106198
leviw@chromium.org [Sun, 29 Jan 2012 23:36:35 +0000 (23:36 +0000)]
Reserved Word tests fail on Chromium after r106198
https://bugs.webkit.org/show_bug.cgi?id=77303

Unreviewed gardening. disabling new reserved word tests on Chromium after r106198.

* platform/chromium/test_expectations.txt:

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

10 years agoUnreviewed, rolling out r106109.
ossy@webkit.org [Sun, 29 Jan 2012 23:23:17 +0000 (23:23 +0000)]
Unreviewed, rolling out r106109.
http://trac.webkit.org/changeset/106109
https://bugs.webkit.org/show_bug.cgi?id=77302

It made tests crash (Requested by Ossy_weekend on #webkit).

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

Source/WebCore:

* platform/graphics/qt/TextureMapperQt.cpp:
(WebCore::TextureMapperQt::setGraphicsContext):
* platform/graphics/qt/TextureMapperQt.h:
(WebCore::TextureMapperQt::initialize):

Source/WebKit2:

* UIProcess/API/qt/qquickwebpage.cpp:
* UIProcess/API/qt/qquickwebpage_p_p.h:
(QQuickWebPagePrivate):
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::QQuickWebViewPrivate):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxyImpl.cpp:
* UIProcess/DrawingAreaProxyImpl.h:
(DrawingAreaProxyImpl):
* UIProcess/LayerTreeHostProxy.h:
(LayerTreeHostProxy):
* UIProcess/qt/LayerTreeHostProxyQt.cpp:
(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::setViewNeedsDisplay):

Tools:

* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
(WTR::WrapperWindow::WrapperWindow):
(WTR::PlatformWebView::PlatformWebView):

LayoutTests:

* platform/qt-wk2/Skipped:

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

10 years agoReserve 'let'
barraclough@apple.com [Sun, 29 Jan 2012 08:23:48 +0000 (08:23 +0000)]
Reserve 'let'
https://bugs.webkit.org/show_bug.cgi?id=77293

Rubber stamped by Oliver Hunt.

'let' may become a keyword in ES6.  We're going to try experimentally reserving it,
to see if this breaks the web.

Source/JavaScriptCore:

* parser/Keywords.table:

LayoutTests:

* fast/js/keywords-and-reserved_words-expected.txt:
* fast/js/reserved-words-as-property-expected.txt:
* fast/js/reserved-words-strict-expected.txt:
* fast/js/script-tests/keywords-and-reserved_words.js:
* fast/js/script-tests/reserved-words-as-property.js:
* fast/js/script-tests/reserved-words-strict.js:

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

10 years agoImplement a JIT-code aware sampling profiler for JSC
barraclough@apple.com [Sun, 29 Jan 2012 03:47:13 +0000 (03:47 +0000)]
Implement a JIT-code aware sampling profiler for JSC
https://bugs.webkit.org/show_bug.cgi?id=76855

Reviewed by Oliver Hunt.

To enable the profiler, set the JSC_CODE_PROFILING environment variable to
1 (no tracing the C stack), 2 (trace one level of C code) or 3 (recursively
trace all samples).

The profiler requires -fomit-frame-pointer to be removed from the build flags.

* JavaScriptCore.exp:
    - Removed an export.
* JavaScriptCore.xcodeproj/project.pbxproj:
    - Added new files
* bytecode/CodeBlock.cpp:
    - For baseline codeblocks, cache the result of canCompileWithDFG.
* bytecode/CodeBlock.h:
    - For baseline codeblocks, cache the result of canCompileWithDFG.
* jit/ExecutableAllocator.cpp:
(JSC::ExecutableAllocator::initializeAllocator):
    - Notify the profiler when the allocator is created.
(JSC::ExecutableAllocator::allocate):
    - Inform the allocated of the ownerUID.
* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::ExecutableAllocator::initializeAllocator):
    - Notify the profiler when the allocator is created.
(JSC::ExecutableAllocator::allocate):
    - Inform the allocated of the ownerUID.
* jit/JITStubs.cpp:
    - If profiling, don't mask the return address in JIT code.
      (We do so to provide nicer backtraces in debug builds).
* runtime/Completion.cpp:
(JSC::evaluate):
    - Notify the profiler of script evaluations.
* tools: Added.
* tools/CodeProfile.cpp: Added.
(JSC::symbolName):
    - Helper function to get the name of a symbol in the framework.
(JSC::truncateTrace):
    - Helper to truncate traces into methods know to have uninformatively deep stacks.
(JSC::CodeProfile::sample):
    - Record a stack trace classifying samples.
(JSC::CodeProfile::report):
    - {Print profiler output.
* tools/CodeProfile.h: Added.
    - new class, captures a set of samples associated with an evaluated script,
      and nested to record samples from subscripts.
* tools/CodeProfiling.cpp: Added.
(JSC::CodeProfiling::profilingTimer):
    - callback fired then a timer event occurs.
(JSC::CodeProfiling::notifyAllocator):
    - called when the executable allocator is constructed.
(JSC::CodeProfiling::getOwnerUIDForPC):
    - helper to lookup the codeblock from an address in JIT code
(JSC::CodeProfiling::begin):
    - enter a profiling scope.
(JSC::CodeProfiling::end):
    - exit a profiling scope.
* tools/CodeProfiling.h: Added.
    - new class, instantialed from Completion to define a profiling scope.
* tools/ProfileTreeNode.h: Added.
    - new class, used to construct a tree of samples.
* tools/TieredMMapArray.h: Added.
    - new class, a malloc-free vector (can be used while the main thread is suspended,
      possibly holding the malloc heap lock).
* wtf/MetaAllocator.cpp:
(WTF::MetaAllocatorHandle::MetaAllocatorHandle):
(WTF::MetaAllocator::allocate):
    - Allow allocation handles to track information about their owner.
* wtf/MetaAllocator.h:
(MetaAllocator):
    - Allow allocation handles to track information about their owner.
* wtf/MetaAllocatorHandle.h:
(MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::ownerUID):
    - Allow allocation handles to track information about their owner.
* wtf/OSAllocator.h:
(WTF::OSAllocator::reallocateCommitted):
    - reallocate an existing, committed memory allocation.

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

10 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Sun, 29 Jan 2012 00:20:09 +0000 (00:20 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

10 years ago[chromium] Add support for building standalone webkit/chromium checkouts with ninja.
thakis@chromium.org [Sat, 28 Jan 2012 23:43:30 +0000 (23:43 +0000)]
[chromium] Add support for building standalone webkit/chromium checkouts with ninja.
https://bugs.webkit.org/show_bug.cgi?id=77243

Reviewed by Adam Barth.

Source/WebKit/chromium:

* gyp_webkit:

Tools:

* Scripts/update-webkit:
* Scripts/webkitdirs.pm:
(isChromiumNinja):
(determineIsChromiumNinja):
(buildChromiumNinja):
(buildChromium):

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

10 years agoUnreviewed gardening. Adding Chromium platform expectations for canvas tests after...
leviw@chromium.org [Sat, 28 Jan 2012 21:41:18 +0000 (21:41 +0000)]
Unreviewed gardening. Adding Chromium platform expectations for canvas tests after 106184.

* platform/chromium-linux-x86/canvas: Added.
* platform/chromium-linux-x86/canvas/philip: Added.
* platform/chromium-linux-x86/canvas/philip/tests: Added.
* platform/chromium-linux-x86/canvas/philip/tests/2d.line.cap.round-expected.txt: Added.
* platform/chromium-linux-x86/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Added.
* platform/chromium-linux-x86/fast/canvas: Added.
* platform/chromium-linux-x86/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Added.
* platform/chromium-linux/canvas: Added.
* platform/chromium-linux/canvas/philip: Added.
* platform/chromium-linux/canvas/philip/tests: Added.
* platform/chromium-linux/canvas/philip/tests/2d.line.cap.round-expected.txt: Added.
* platform/chromium-linux/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Added.
* platform/chromium-linux/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Added.
* platform/chromium-win-vista/canvas: Added.
* platform/chromium-win-vista/canvas/philip: Added.
* platform/chromium-win-vista/canvas/philip/tests: Added.
* platform/chromium-win-vista/canvas/philip/tests/2d.line.cap.round-expected.txt: Added.
* platform/chromium-win-vista/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Added.
* platform/chromium-win-vista/fast/canvas: Added.
* platform/chromium-win-vista/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Added.
* platform/chromium-win-xp/canvas: Added.
* platform/chromium-win-xp/canvas/philip: Added.
* platform/chromium-win-xp/canvas/philip/tests: Added.
* platform/chromium-win-xp/canvas/philip/tests/2d.line.cap.round-expected.txt: Added.
* platform/chromium-win-xp/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Added.
* platform/chromium-win-xp/fast/canvas: Added.
* platform/chromium-win-xp/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Added.
* platform/chromium-win/canvas/philip/tests/2d.line.cap.round-expected.txt: Added.
* platform/chromium-win/canvas/philip/tests/2d.strokeRect.zero.5-expected.txt: Added.
* platform/chromium-win/fast/canvas/canvas-fillRect-gradient-shadow-expected.txt: Added.

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

10 years agoLayout Test webaudio/panner-set-model.html crashes on debug Chromium bots
leviw@chromium.org [Sat, 28 Jan 2012 21:31:33 +0000 (21:31 +0000)]
Layout Test webaudio/panner-set-model.html crashes on debug Chromium bots
https://bugs.webkit.org/show_bug.cgi?id=77283

Unreviewed gardening. Marking webaudio/panner-set-model.html crashing on Debug Chromium bots.

* platform/chromium/test_expectations.txt:

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

10 years ago[Qt] Remove references to CSSBorderImageValue.h in Target.pri
commit-queue@webkit.org [Sat, 28 Jan 2012 20:19:30 +0000 (20:19 +0000)]
[Qt] Remove references to CSSBorderImageValue.h in Target.pri
https://bugs.webkit.org/show_bug.cgi?id=77277

Patch by Alexander Færøy <ahf@0x90.dk> on 2012-01-28
Reviewed by Antonio Gomes.

CSSBorderImageValue.h was removed in r105502.

* Target.pri:

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

10 years agoREGRESSION (r94016): Element with visibility:hidden but visible descendant may not...
jchaffraix@webkit.org [Sat, 28 Jan 2012 19:28:44 +0000 (19:28 +0000)]
REGRESSION (r94016): Element with visibility:hidden but visible descendant may not be properly repainted
https://bugs.webkit.org/show_bug.cgi?id=76126

Reviewed by Simon Fraser.

Source/WebCore:

Tests: fast/layers/scroll-no-visible-content-but-visible-descendant-expected.html
       fast/layers/scroll-no-visible-content-but-visible-descendant.html

The optimization missed out that if the current layer does not have some visible content
(m_hasVisibleContent is false), a descendant could totally be visible and would need to
have its repaint rectangles recomputed.

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateLayerPositionsAfterScroll):
Bail out only if the layer doesn't have visible content AND no visible descendants.

LayoutTests:

Added testing for a layer with no visible content but one of its descendant has some visible content.
The reverse case is already profusely tested.

* fast/layers/scroll-no-visible-content-but-visible-descendant-expected.html: Added.
* fast/layers/scroll-no-visible-content-but-visible-descendant.html: Added.

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

10 years agoGet rid of TransformOperationList
cmarrin@apple.com [Sat, 28 Jan 2012 19:02:34 +0000 (19:02 +0000)]
Get rid of TransformOperationList
https://bugs.webkit.org/show_bug.cgi?id=77249

Reviewed by Dan Bernstein.

Changed fetchTransformOperationList to validateTransformOperations and got rid of separately generated list
of transform operations. These are not needed, they are already available in the keyframe lists and they
make it more difficult to add support for hardware animated filters. No behavior changes.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::validateTransformOperations):
* platform/graphics/GraphicsLayer.h:
(GraphicsLayer):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::appendToUncommittedAnimations):
(WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
* platform/graphics/ca/GraphicsLayerCA.h:
():
* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::addAnimation):
* platform/graphics/texmap/TextureMapperAnimation.cpp:
(WebCore::applyTransformAnimation):
(WebCore::TextureMapperAnimation::TextureMapperAnimation):
(WebCore::TextureMapperAnimation::applyInternal):
* platform/graphics/texmap/TextureMapperAnimation.h:
(TextureMapperAnimation):

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