WebKit-https.git
8 years agorunner.js in performance tests should define a class
rniwa@webkit.org [Tue, 31 Jan 2012 20:05:37 +0000 (20:05 +0000)]
runner.js in performance tests should define a class
https://bugs.webkit.org/show_bug.cgi?id=77074

Reviewed by Eric Seidel.

Wrap all functions in runner.js by PerfTestRunner and update tests that runner.js accordingly.
Also replace compute* functions in runner.js by more robust code from dom-perf.js.

* Bindings/event-target-wrapper.html:
* DOM/DOMTable.html:
* DOM/resources/dom-perf.js:
(BenchmarkSuite.prototype.RunSingle):
(runBenchmarkSuite):
* Mutation/append-child-deep.html:
* Mutation/append-child.html:
* Mutation/inner-html.html:
* Mutation/remove-child-deep.html:
* Mutation/remove-child.html:
* Parser/html-parser.html:
* Parser/html5-full-render.html:
* Parser/simple-url.html:
* Parser/tiny-innerHTML.html:
* Parser/url-parser.html:
* Parser/xml-parser.html:
* resources/runner.js:
(PerfTestRunner.log):
(PerfTestRunner.logInfo):
(PerfTestRunner.loadFile):
(PerfTestRunner.computeStatistics):
(PerfTestRunner.logStatistics):
(PerfTestRunner._runLoop.else):
(PerfTestRunner._runLoop):
(PerfTestRunner._runner):

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

8 years ago[chromium] Fix css3/flexbox/cross-axis-scrollbar-expected to work on
tony@chromium.org [Tue, 31 Jan 2012 20:05:29 +0000 (20:05 +0000)]
[chromium] Fix css3/flexbox/cross-axis-scrollbar-expected to work on
chromium win.

The scrollbars overflow the bounds of the scrollbar rect (see bug 77368).
Work around this by using positioned elements and setting the z-index as
negative.  It didn't work previously because when the scrollbar was
positioned, it clipped the extra pixels.  Tested to verify that this works
on Chromium Win and Chromium Linux.

Unreviewed, test fix.

* css3/flexbox/cross-axis-scrollbar-expected.html:
* platform/chromium/test_expectations.txt:

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

8 years agoHTMLIsIndexElement should not expose HTMLInputElement properties
eric@webkit.org [Tue, 31 Jan 2012 20:00:37 +0000 (20:00 +0000)]
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-31
Reviewed by Eric Seidel.

This is a buildfix for r106373.

* DerivedSources.pri: Removed reference to HTMLIsIndexElement.idl

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

8 years agoWebGL must allocate smaller drawing buffer when the allocation fails.
commit-queue@webkit.org [Tue, 31 Jan 2012 20:00:09 +0000 (20:00 +0000)]
WebGL must allocate smaller drawing buffer when the allocation fails.
https://bugs.webkit.org/show_bug.cgi?id=76654

Patch by Yongsheng Zhu <yongsheng.zhu@intel.com> on 2012-01-31
Reviewed by Kenneth Russell.

Test: fast/canvas/webgl/drawingbuffer-test.html

* platform/graphics/gpu/DrawingBuffer.cpp:
(WebCore):
(WebCore::DrawingBuffer::create):
(WebCore::DrawingBuffer::reset):

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

8 years ago PluginProcess should be able to use remote open and save panels
ap@apple.com [Tue, 31 Jan 2012 19:58:07 +0000 (19:58 +0000)]
    PluginProcess should be able to use remote open and save panels
        https://bugs.webkit.org/show_bug.cgi?id=77461
        <rdar://problem/10783615>

        Reviewed by Mark Rowe.

        * PluginProcess/mac/PluginProcess.entitlements: Added.
        * PluginProcess/mac/add-entitlements.sh: Added.
        * WebKit2.xcodeproj/project.pbxproj:
        Add appropriate entitlement, plus ad hoc binary signing for it to work.

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

8 years agoHTMLIsIndexElement should not expose HTMLInputElement properties
eric@webkit.org [Tue, 31 Jan 2012 19:33:22 +0000 (19:33 +0000)]
HTMLIsIndexElement should not expose HTMLInputElement properties
https://bugs.webkit.org/show_bug.cgi?id=76095

Reviewed by Adam Barth.

Source/WebCore:

document.createElement("isindex") should produce an HTMLUnknownElement
per the HTML5 spec.  The parser automagically translates <isindex> into
a whole dom tree roughly representing what <isindex> used to do 15 years ago. :)

This patch just removes our support for HTMLIsIndexElement.  The parser
support was already in.  Having support for HTMLIsIndexElement was causing
one of the IE TestCenter tests to fail.

Test: fast/dom/HTMLIsIndexElement/prototype-chain.html

* DerivedSources.cpp:
* DerivedSources.make:
* DerivedSources.pri:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.exp.in:
* WebCore.gypi:
* WebCore.order:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/gobject/GNUmakefile.am:
* bindings/gobject/WebKitHTMLElementWrapperFactory.cpp:
(WebKit::createHTMLElementWrapper):
* bindings/objc/DOM.mm:
(WebCore::createElementClassMap):
* bindings/objc/DOMHTML.h:
* bindings/objc/PublicDOMInterfaces.h:
* html/HTMLElementsAllInOne.cpp:
* html/HTMLIsIndexElement.cpp: Removed.
* html/HTMLIsIndexElement.h: Removed.
* html/HTMLIsIndexElement.idl: Removed.
* html/HTMLTagNames.in:
* page/DOMWindow.idl:

Source/WebKit/mac:

* MigrateHeaders.make:

LayoutTests:

* fast/dom/HTMLIsIndexElement/prototype-chain-expected.txt: Added.
* fast/dom/HTMLIsIndexElement/prototype-chain.html: Added.
* fast/dom/HTMLIsIndexElement/script-tests/prototype-chain.js: Added.

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

8 years ago[Qt] Use ICU if available
commit-queue@webkit.org [Tue, 31 Jan 2012 19:13:21 +0000 (19:13 +0000)]
[Qt] Use ICU if available
https://bugs.webkit.org/show_bug.cgi?id=76821

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-31
Reviewed by Csaba Osztrogon√°c.

After r105997, some tests had different expected results but they were passing
like /fast/text/find-{kana|russian|soft-hyphen}.html and editing/execCommand/findString-diacriticals.html.
The test editing/selection/regional-indicators.html had a false expected file,
and the rest was moved to a more specific folder (i.e. some bugs skipped on qt5 and qt-wk2
didn't need to be on qt-wk2 as well, etc.) and/or created specific bugs for further investigation.

* platform/qt-4.8/Skipped:
* platform/qt-4.8/css1/text_properties/text_transform-expected.txt: Copied from LayoutTests/platform/qt/css1/text_properties/text_transform-expected.txt.
* platform/qt-4.8/editing/selection/regional-indicators-expected.txt: Renamed from LayoutTests/platform/qt/editing/selection/regional-indicators-expected.txt.
* platform/qt-4.8/fast/text/find-kana-expected.txt: Renamed from LayoutTests/platform/qt/fast/text/find-kana-expected.txt.
* platform/qt-4.8/fast/text/find-russian-expected.txt: Renamed from LayoutTests/platform/qt/fast/text/find-russian-expected.txt.
* platform/qt-4.8/fast/text/find-soft-hyphen-expected.txt: Renamed from LayoutTests/platform/qt/fast/text/find-soft-hyphen-expected.txt.
* platform/qt-5.0/Skipped:
* platform/qt-5.0/css1/text_properties/text_transform-expected.txt: Renamed from LayoutTests/platform/qt/css1/text_properties/text_transform-expected.txt.
* platform/qt-5.0/editing/execCommand/findString-diacriticals-expected.txt: Added.
* platform/qt-wk2/Skipped:
* platform/qt/Skipped:

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

8 years agoMerge WebGraphicsContext3D creation and initialization, and move it to
piman@chromium.org [Tue, 31 Jan 2012 19:11:54 +0000 (19:11 +0000)]
Merge WebGraphicsContext3D creation and initialization, and move it to
WebViewClient.
https://bugs.webkit.org/show_bug.cgi?id=76593

Reviewed by Darin Fisher.

Source/WebKit/chromium:

* public/WebViewClient.h:
(WebKit::WebViewClient::createGraphicsContext3D):
* public/platform/WebGraphicsContext3D.h:
(WebKit::WebGraphicsContext3D::initialize):
* public/platform/WebKitPlatformSupport.h:
* src/GraphicsContext3DChromium.cpp:

Tools:

* DumpRenderTree/chromium/TestWebPlugin.cpp:
(TestWebPlugin::TestWebPlugin):
(TestWebPlugin::initialize):
* DumpRenderTree/chromium/TestWebPlugin.h:
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::createGraphicsContext3D):
(WebViewHost::createPlugin):
* DumpRenderTree/chromium/WebViewHost.h:

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

8 years agoASSERT(m_jumpsToLink.isEmpty()) failing in ARMv7Assembler dtor
msaboff@apple.com [Tue, 31 Jan 2012 19:07:44 +0000 (19:07 +0000)]
ASSERT(m_jumpsToLink.isEmpty()) failing in ARMv7Assembler dtor
https://bugs.webkit.org/show_bug.cgi?id=77443

Reviewed by Gavin Barraclough.

Removed failing ASSERT() and thus destructor.  The ASSERT isn't needed.
We are hitting it in the YARR JIT case where we bail out and go to the
interpreter with a partially JIT'ed function.  Since we haven't linked
the JIT'ed code, there is likely to be some unresolved jumps in the vector
when the ARMv7Assembler destructor is called.  For the case where we
complete the JIT process, we clear the vector at the end of
LinkBuffer::linkCode (LinkBuffer.h:292).

* assembler/ARMv7Assembler.h:
(ARMv7Assembler):

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

8 years ago[GTK] build-webkit warning.
rgabor@webkit.org [Tue, 31 Jan 2012 19:00:21 +0000 (19:00 +0000)]
[GTK] build-webkit warning.
https://bugs.webkit.org/show_bug.cgi?id=77411

Reviewed by Philippe Normand.

* Scripts/webkitdirs.pm:
(isCrossCompilation):

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

8 years agoVector<T>::operator== shouldn't require T to have operator!=
andersca@apple.com [Tue, 31 Jan 2012 18:06:23 +0000 (18:06 +0000)]
Vector<T>::operator== shouldn't require T to have operator!=
https://bugs.webkit.org/show_bug.cgi?id=77448

Reviewed by Andreas Kling.

Change VectorComparer::compare to use !(a == b) instead of a != b since
it makes more sense for Vector::operator== to use the element's operator==.

* wtf/Vector.h:

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

8 years agoWhen generating derived sources, use the same compiler that is used to compile WebKit...
mitz@apple.com [Tue, 31 Jan 2012 17:39:34 +0000 (17:39 +0000)]
When generating derived sources, use the same compiler that is used to compile WebKitTestRunner.

Reviewed by Anders Carlsson.

* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

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

8 years agoUnreviewed include cleanup.
alexis.menard@openbossa.org [Tue, 31 Jan 2012 17:29:00 +0000 (17:29 +0000)]
Unreviewed include cleanup.

Tested locally on Qt and Chromium port.

* dom/Node.cpp:

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

8 years agoIf the QTDIR environment variable is set, the build system fails to compile WinCairo
ossy@webkit.org [Tue, 31 Jan 2012 17:11:45 +0000 (17:11 +0000)]
If the QTDIR environment variable is set, the build system fails to compile WinCairo
https://bugs.webkit.org/show_bug.cgi?id=77112

Reviewed by Daniel Bates.

* Scripts/webkitdirs.pm:
(determineIsQt):

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

8 years agoEnsure tiles are repainted when scrolling using mouse wheel.
commit-queue@webkit.org [Tue, 31 Jan 2012 17:09:13 +0000 (17:09 +0000)]
Ensure tiles are repainted when scrolling using mouse wheel.
https://bugs.webkit.org/show_bug.cgi?id=77339

A new slot visibleContentRectAndScaleChanged has been added
that is emited by non-animated scrolling code in the
QtViewportInteractionEngine.

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

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::_q_resume):
(QQuickWebViewPrivate::_q_updateVisibleContentRectAndScale):
(QQuickWebViewPrivate::updateTouchViewportSize):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/qt/QtViewportInteractionEngine.cpp:
(WebKit::QtViewportInteractionEngine::wheelEvent):
* UIProcess/qt/QtViewportInteractionEngine.h:
(QtViewportInteractionEngine):

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

8 years agoThe spec renamed addTrack() to addTextTrack().
commit-queue@webkit.org [Tue, 31 Jan 2012 16:44:15 +0000 (16:44 +0000)]
The spec renamed addTrack() to addTextTrack().
https://bugs.webkit.org/show_bug.cgi?id=77381

Patch by Arko Saha <arko@motorola.com> on 2012-01-31
Reviewed by Eric Carlson.

Renamed addTrack() to addTextTrack().
Spec: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#media-elements

Source/WebCore:

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::addTextTrack):
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::addTextTrack):
* html/HTMLMediaElement.idl:

LayoutTests:

* media/track/track-add-track-expected.txt:
* media/track/track-add-track.html:
* media/track/track-addtrack-kind-expected.txt:
* media/track/track-addtrack-kind.html:
* media/track/track-text-track-destructor-crash.html:
* media/track/track-texttracks-expected.txt:
* media/track/track-texttracks.html:
* platform/gtk/fast/dom/Window/window-properties-expected.txt:
* platform/mac/fast/dom/Window/window-properties-expected.txt:

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

8 years agoWeb Inspector: CodeGeneratorInspector.py: reimplement generated array types
vsevik@chromium.org [Tue, 31 Jan 2012 15:35:04 +0000 (15:35 +0000)]
Web Inspector: CodeGeneratorInspector.py: reimplement generated array types
https://bugs.webkit.org/show_bug.cgi?id=77289

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-31
Reviewed by Vsevolod Vlasov.

Arrays are now rendered as a single template class. Its type-specific
details are provided by an additional ArrayItemHelper class that is
defined using C++ specialization technique.

* inspector/CodeGeneratorInspector.py:
(RawTypes.String):
(RawTypes.String.get_array_item_raw_c_type_text):
(RawTypes.Int):
(RawTypes.Int.get_array_item_raw_c_type_text):
(RawTypes.Number):
(RawTypes.Number.get_array_item_raw_c_type_text):
(RawTypes.Bool):
(RawTypes.Bool.get_array_item_raw_c_type_text):
(RawTypes.Object):
(RawTypes.Object.get_array_item_raw_c_type_text):
(RawTypes.Any):
(RawTypes.Any.get_array_item_raw_c_type_text):
(RawTypes.Array):
(RawTypes.Array.get_array_item_raw_c_type_text):
(RawTypes):
(TypeBindings.create_type_declaration_.EnumBinding):
(TypeBindings.create_type_declaration_.EnumBinding.get_array_item_c_type_text):
(TypeBindings.create_type_declaration_.PlainString):
(TypeBindings.create_type_declaration_.PlainString.get_array_item_c_type_text):
(TypeBindings.create_type_declaration_.TypedefString):
(TypeBindings.create_type_declaration_.TypedefString.get_array_item_c_type_text):
(StructItemTraits):
(get_array_item_c_type_text):
(PlainObjectBinding):
(PlainObjectBinding.get_array_item_c_type_text):
(AdHocTypeContext):
(AdHocTypeContext.get_type_name_fix):
(AdHocTypeContext.add_type):
(ArrayBinding):
(ArrayBinding.resolve_inner):
(ArrayBinding.resolve_inner.ResolveData):
(ArrayBinding.request_user_runtime_cast):
(ArrayBinding.request_internal_runtime_cast):
(ArrayBinding.get_code_generator):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_forward_declaration):
(ArrayBinding.get_code_generator.CodeGenerator.register_use):
(ArrayBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(ArrayBinding.get_validator_call_text):
(ArrayBinding.get_in_c_type_text):
(ArrayBinding.get_array_item_c_type_text):
(ArrayBinding.get_setter_value_expression_pattern):
(ArrayBinding.reduce_to_raw_type):
(RawTypeBinding.get_array_item_c_type_text):
(ArrayItemHelper):
(typename):
(ArrayOf):
(Traits):

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

8 years agoOnly call -typingAttributes on WebViews, not WebHTMLViews
aroben@apple.com [Tue, 31 Jan 2012 15:09:33 +0000 (15:09 +0000)]
Only call -typingAttributes on WebViews, not WebHTMLViews

Looks like this case was just missed in r105908.

Fixes <http://webkit.org/b/77432> REGRESSION (r105908): WebKit1.InspectorBarTest is crashing

Reviewed by Antti Koivisto.

* TestWebKitAPI/Tests/mac/InspectorBar.mm:
(TestWebKitAPI::TEST): Call -typingAttributes on the WebView, just like we do 2 lines
earlier.

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

8 years agoParent SVGFontFaceElements style declaration to the rule
antti@apple.com [Tue, 31 Jan 2012 14:58:37 +0000 (14:58 +0000)]
Parent SVGFontFaceElements style declaration to the rule
https://bugs.webkit.org/show_bug.cgi?id=77421

Reviewed by Adam Roben.

For some reason the declaration is parented to the element which adds a bunch of unnecessary special case code.
The invalidation on mutation is done explicitly by SVGFontFaceElement so that is not affected. The declaration
is not exposed so the change is not observable with a test.

* css/CSSFontFaceRule.cpp:
(WebCore::CSSFontFaceRule::~CSSFontFaceRule):
* css/CSSMutableStyleDeclaration.h:
(WebCore::CSSMutableStyleDeclaration::createInline):
* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::SVGFontFaceElement):
(WebCore::SVGFontFaceElement::parseMappedAttribute):
(WebCore::SVGFontFaceElement::fontFamily):
(WebCore::SVGFontFaceElement::rebuildFontFace):
* svg/SVGFontFaceElement.h:

    Remove the unnecessary m_styleDeclaration field, access through m_fontFaceRule instead.

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

8 years agoTap highlighting: Support better outlines for multiline inlines https://bugs.webkit...
kenneth@webkit.org [Tue, 31 Jan 2012 14:28:13 +0000 (14:28 +0000)]
Tap highlighting: Support better outlines for multiline inlines https://bugs.webkit.org/show_bug.cgi?id=77428

Reviewed by Simon Hausmann.

.:

Update the test to use a transform.

* ManualTests/qt/tap-highlighting-inlines.html:

Source/WebCore:

Covered by manual tests.

Do not use the linesBoundingBox anymore but draw a custom path
with rounded corners. Inlines are drawn as max 3 rects, first
line rect, joined middle rect and the rect for the last line.

* page/GestureTapHighlighter.cpp:
* platform/graphics/Path.h: Make addBeziersForRoundedRect public.

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

8 years ago[Qt] MiniBrowser: Show touch mocking indicators only when Ctrl is held down.
jocelyn.turcotte@nokia.com [Tue, 31 Jan 2012 14:03:35 +0000 (14:03 +0000)]
[Qt] MiniBrowser: Show touch mocking indicators only when Ctrl is held down.
https://bugs.webkit.org/show_bug.cgi?id=77221

Reviewed by Kenneth Rohde Christiansen.

This makes sure that the indicator isn't in the way when doing clicks or dealing with the rest of the UI.

* MiniBrowser/qt/MiniBrowserApplication.cpp:
(MiniBrowserApplication::sendTouchEvent):

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

8 years ago[Qt][WK2] Make UIProcess decide about encoding of input data for application URL...
zeno.albisser@nokia.com [Tue, 31 Jan 2012 13:47:59 +0000 (13:47 +0000)]
[Qt][WK2] Make UIProcess decide about encoding of input data for application URL schemes.
https://bugs.webkit.org/show_bug.cgi?id=77417

Make the UIProcess decide about the encoding and display
a warning in case no encoding was defined.
Make the QQuickNetworkReply store a QWeakPointer to the
QQuickWebViewExperimental to get rid of hackish chain of parental queries.

Reviewed by Simon Hausmann.

* UIProcess/API/qt/qquicknetworkreply.cpp:
(QQuickNetworkReply::send):
(QQuickNetworkReply::setWebViewExperimental):
* UIProcess/API/qt/qquicknetworkreply_p.h:
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewExperimental::schemeDelegates_Append):
* WebProcess/qt/QtNetworkReply.cpp:
(WebKit::QtNetworkReply::QtNetworkReply):
(WebKit::QtNetworkReply::setReplyData):

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

8 years agoWeb Inspector: show sizes in bytes instead of KB, MB in heap profiler.
commit-queue@webkit.org [Tue, 31 Jan 2012 12:11:35 +0000 (12:11 +0000)]
Web Inspector: show sizes in bytes instead of KB, MB in heap profiler.
https://bugs.webkit.org/show_bug.cgi?id=77199

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-01-31
Reviewed by Pavel Feldman.

* inspector/front-end/DetailedHeapshotGridNodes.js:
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
(WebInspector.HeapSnapshotInstanceNode.prototype._enhanceData):
(WebInspector.HeapSnapshotConstructorNode.prototype.get data):
(WebInspector.HeapSnapshotDiffNode.prototype.get data):
* inspector/front-end/UIUtils.js:
(Number.withThousandsSeparator):

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

8 years agoSpeech Input: move MockSpeechInputClient into Chromium DumpRenderTree implementation
hans@chromium.org [Tue, 31 Jan 2012 11:59:43 +0000 (11:59 +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@106353 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWeb Inspector: boost protocol version to 1.0
pfeldman@chromium.org [Tue, 31 Jan 2012 11:49:31 +0000 (11:49 +0000)]
Web Inspector: boost protocol version to 1.0
https://bugs.webkit.org/show_bug.cgi?id=77408

Reviewed by Yury Semikhatsky.

* inspector/Inspector-1.0.json: Copied from Source/WebCore/inspector/Inspector.json.
* inspector/Inspector.json:

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

8 years ago<style scoped>: Improve shortcut code for cases where <style scoped> isn't used
rolandsteiner@chromium.org [Tue, 31 Jan 2012 11:04:10 +0000 (11:04 +0000)]
<style scoped>: Improve shortcut code for cases where <style scoped> isn't used
https://bugs.webkit.org/show_bug.cgi?id=77410

Move shortcut from setupScopingElementStack(), do it at the calling sites instead
(where a larger chunk of work can be skipped).

Reviewed by Antti Koivisto.

No new tests. (refactoring)

* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::setupScopingElementStack): remove shortcut code
(WebCore::CSSStyleSelector::pushParent): add shortcut code
(WebCore::CSSStyleSelector::matchScopedAuthorRules): factor matching scoped rules out from matchAuthorRules
(WebCore::CSSStyleSelector::matchAuthorRules): add shortcut code
* css/CSSStyleSelector.h:
(CSSStyleSelector): add matchScopedAuthorRules

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

8 years agoUnreviewed. Rolled DEPS.
commit-queue@webkit.org [Tue, 31 Jan 2012 10:45:33 +0000 (10:45 +0000)]
Unreviewed.  Rolled DEPS.

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

* DEPS:

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

8 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Tue, 31 Jan 2012 10:39:11 +0000 (10:39 +0000)]
[Chromium] Unreviewed test expectation change.
inspector/timeline/timeline-receive-response-event.html is flaky on LINUX

* platform/chromium/test_expectations.txt:

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

8 years ago[PerformanceTests] Add landing html for Dromaeo dom-query test
commit-queue@webkit.org [Tue, 31 Jan 2012 10:13:51 +0000 (10:13 +0000)]
[PerformanceTests] Add landing html for Dromaeo dom-query test
https://bugs.webkit.org/show_bug.cgi?id=77329

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-31
Reviewed by Ryosuke Niwa.

PerformanceTests:

Added a "landing html" which includes actual dromaemo page and
send messages to interact with it. The landing html also dumps the
score in run-perf-tests friendly format.

This test isn't enabled until Dromaemo itself is available for run-perf-tests.
It will happen in a separate change.

* Dromaeo/dom-query.html: Added.
* Dromaeo/resources/dromaeorunner.js: Added.
* Skipped: Skipping this for now.

Tools:

Added some more ignorable output patterns to allow warnings
from a third party test suite.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner):
(PerfTestsRunner._should_ignore_line_in_parser_test_result):

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

8 years agoWeb Inspector: DOMDebugger.setEventListenerBreakpoint should accept regular DOM event...
pfeldman@chromium.org [Tue, 31 Jan 2012 10:05:34 +0000 (10:05 +0000)]
Web Inspector: DOMDebugger.setEventListenerBreakpoint should accept regular DOM event names.
https://bugs.webkit.org/show_bug.cgi?id=77409

Reviewed by Yury Semikhatsky.

* inspector/Inspector.json:
* inspector/InspectorDOMDebuggerAgent.cpp:
(WebCore::InspectorDOMDebuggerAgent::setEventListenerBreakpoint):
(WebCore):
(WebCore::InspectorDOMDebuggerAgent::setInstrumentationBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeEventListenerBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeInstrumentationBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
(WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
* inspector/InspectorDOMDebuggerAgent.h:
(InspectorDOMDebuggerAgent):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didInstallTimerImpl):
(WebCore::InspectorInstrumentation::didRemoveTimerImpl):
(WebCore::InspectorInstrumentation::willHandleEventImpl):
(WebCore::InspectorInstrumentation::willFireTimerImpl):
(WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
* inspector/front-end/BreakpointsSidebarPane.js:
(WebInspector.EventListenerBreakpointsSidebarPane.prototype._setBreakpoint):
(WebInspector.EventListenerBreakpointsSidebarPane.prototype._removeBreakpoint):

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

8 years ago[GTK] Remove V8 compilation option.
nayankk@motorola.com [Tue, 31 Jan 2012 10:01:23 +0000 (10:01 +0000)]
[GTK] Remove V8 compilation option.
https://bugs.webkit.org/show_bug.cgi?id=77405

Reviewed by Philippe Normand.

Revert the changes introduced as part of bug 69469
to provide an option to compile V8 as JavaScript engine.

* GNUmakefile.am: Remove defining USE_JSC macro.
* configure.ac: Remove --with-jsengine option.

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

8 years agoUnreviewed, GTK gardening.
philn@webkit.org [Tue, 31 Jan 2012 09:36:07 +0000 (09:36 +0000)]
Unreviewed, GTK gardening.

* platform/gtk/Skipped: Skipping some new failures.
* platform/gtk/fast/dom/constructed-objects-prototypes-expected.txt: Added.
* platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
* platform/gtk/fast/js/global-constructors-expected.txt:
* platform/gtk/test_expectations.txt: Marked one more svg test as flaky.

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

8 years ago[Chromium] Unreviewed test expectation change.
yuzo@google.com [Tue, 31 Jan 2012 09:19:24 +0000 (09:19 +0000)]
[Chromium] Unreviewed test expectation change.
77412 - [Chromium] Layout Test media/media-blocked-by-beforeload.html fails for LEOPARD

* platform/chromium/test_expectations.txt:

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

8 years agoOn more (last) typo fix after r106339.
ossy@webkit.org [Tue, 31 Jan 2012 08:37:26 +0000 (08:37 +0000)]
On more (last) typo fix after r106339.

* platform/qt/Skipped:

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

8 years agoFix compilation errors on build-webkit --debug --no-workers on mac.
commit-queue@webkit.org [Tue, 31 Jan 2012 08:22:31 +0000 (08:22 +0000)]
Fix compilation errors on build-webkit --debug --no-workers on mac.
https://bugs.webkit.org/show_bug.cgi?id=75869

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-31
Reviewed by Adam Barth.

Source/WebCore:

* WebCore.exp.in:

Source/WebKit/mac:

* Workers/WebWorkersPrivate.mm:
(+[WebWorkersPrivate workerThreadCount]):

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

8 years agoTypo fix after r106339.
ossy@webkit.org [Tue, 31 Jan 2012 08:04:46 +0000 (08:04 +0000)]
Typo fix after r106339.

* platform/qt/Skipped:

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

8 years ago[GStreamer] 0.11 build support
philn@webkit.org [Tue, 31 Jan 2012 08:02:56 +0000 (08:02 +0000)]
[GStreamer] 0.11 build support
https://bugs.webkit.org/show_bug.cgi?id=77085

Reviewed by Martin Robinson.

* configure.ac: New --with-gstreamer option, defaulting to 0.10.

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

8 years ago[Qt] Unreviewed gardening.
ossy@webkit.org [Tue, 31 Jan 2012 07:50:46 +0000 (07:50 +0000)]
[Qt] Unreviewed gardening.

* platform/qt/Skipped: Skip failing tests.

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

8 years agoWeb Inspector: [BlackBerry] Add BlackBerry UA Strings to the Inspector's UA switcher
commit-queue@webkit.org [Tue, 31 Jan 2012 07:45:32 +0000 (07:45 +0000)]
Web Inspector: [BlackBerry] Add BlackBerry UA Strings to the Inspector's UA switcher
https://bugs.webkit.org/show_bug.cgi?id=77343

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-01-30
Reviewed by Yury Semikhatsky.

* inspector/front-end/SettingsScreen.js:
(WebInspector.SettingsScreen.prototype._createUserAgentSelectRowElement.get const):

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

8 years agoWeb Inspector: should be possible to step through all event listeners when event...
yurys@chromium.org [Tue, 31 Jan 2012 07:37:28 +0000 (07:37 +0000)]
Web Inspector: should be possible to step through all event listeners when event listener breakpoint is hit
https://bugs.webkit.org/show_bug.cgi?id=77331

Source/WebCore:

Inspector instrumentation is called before and after each event handler invokation.
In case inspector front-end is closed it is no-op, otherwise it may stop execution
on an event listener breakpoint.

Reviewed by Pavel Feldman.

Test: inspector/debugger/step-through-event-listeners.html

* dom/EventTarget.cpp:
(WebCore::EventTarget::fireEventListeners):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::willDispatchEventImpl):
(WebCore::InspectorInstrumentation::willHandleEventImpl):
(WebCore):
(WebCore::InspectorInstrumentation::didHandleEventImpl):
(WebCore::InspectorInstrumentation::didDispatchEventImpl):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):
(WebCore::InspectorInstrumentation::didDispatchEventOnWindowImpl):
* inspector/InspectorInstrumentation.h:
(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willHandleEvent):
(WebCore):
(WebCore::InspectorInstrumentation::didHandleEvent):

LayoutTests:

Test that debugger will stop in each event listener when pausing on an event listener
breakpoint.

Reviewed by Pavel Feldman.

* inspector/debugger/step-through-event-listeners-expected.txt: Added.
* inspector/debugger/step-through-event-listeners.html: Added.
* platform/gtk/Skipped:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:

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

8 years agoAttach light children after removing a shadow root.
hayato@chromium.org [Tue, 31 Jan 2012 06:36:02 +0000 (06:36 +0000)]
Attach light children after removing a shadow root.
https://bugs.webkit.org/show_bug.cgi?id=74267

Reviewed by Ryosuke Niwa.

Source/WebCore:

Tests: fast/dom/shadow/dynamically-created-shadow-root-expected.html
       fast/dom/shadow/dynamically-created-shadow-root.html:

* dom/Element.cpp:
(WebCore::Element::removeShadowRoot):

LayoutTests:

* fast/dom/shadow/dynamically-created-shadow-root-expected.html:
* fast/dom/shadow/dynamically-created-shadow-root.html:

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

8 years agoUnreviewed, rolling out r106324.
commit-queue@webkit.org [Tue, 31 Jan 2012 06:23:20 +0000 (06:23 +0000)]
Unreviewed, rolling out r106324.
http://trac.webkit.org/changeset/106324
https://bugs.webkit.org/show_bug.cgi?id=77406

Broke CCLayerTreeHostTestLayerOcclusion.runMultiThread and
runSingleThread (Requested by yuzo1 on #webkit).

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

Source/WebCore:

* platform/graphics/FloatRect.cpp:
* platform/graphics/FloatRect.h:
(WebCore):
* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/Canvas2DLayerChromium.h:
(WebCore):
(Canvas2DLayerChromium):
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/ContentLayerChromium.h:
(WebCore):
(ContentLayerChromium):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/ImageLayerChromium.h:
(WebCore):
(ImageLayerChromium):
* platform/graphics/chromium/LayerChromium.cpp:
* platform/graphics/chromium/LayerChromium.h:
(WebCore):
(WebCore::LayerChromium::paintContentsIfDirty):
(LayerChromium):
* platform/graphics/chromium/RenderSurfaceChromium.h:
* platform/graphics/chromium/TiledLayerChromium.cpp:
* platform/graphics/chromium/TiledLayerChromium.h:
(WebCore):
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::paintContentsIfDirty):
(WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
(WebCore::CCLayerTreeHost::paintLayerContents):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::enclosedIntRect):
(WebCore):

Source/WebKit/chromium:

* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore):
* tests/CCLayerTreeHostTest.cpp:
(WTF::ContentLayerChromiumWithUpdateTracking::paintContentsIfDirty):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/TiledLayerChromiumTest.cpp:
(FakeLayerTextureUpdater):
(WTF::FakeTiledLayerChromium::paintContentsIfDirty):
(WTF::FakeLayerTextureUpdater::prepareToUpdate):

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

8 years agoBuild fix after r106321.
rniwa@webkit.org [Tue, 31 Jan 2012 06:20:52 +0000 (06:20 +0000)]
Build fix after r106321.

* Websites/webkit-perf.appspot.com/report_handler.py:
* Websites/webkit-perf.appspot.com/manifest_handler.py:
(ManifestHandler.get):

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

8 years ago[wx] Unreviewed. Update download URLs to new domain.
kevino@webkit.org [Tue, 31 Jan 2012 05:51:43 +0000 (05:51 +0000)]
[wx] Unreviewed. Update download URLs to new domain.

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

8 years agoFix ASSERT fail within AudioBus::processWithGainFrom()
commit-queue@webkit.org [Tue, 31 Jan 2012 05:47:29 +0000 (05:47 +0000)]
Fix ASSERT fail within AudioBus::processWithGainFrom()
https://bugs.webkit.org/show_bug.cgi?id=76685

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-30
Reviewed by Daniel Bates.

Source/WebCore:

Test: webaudio/audionode-connect-order.html

* webaudio/AudioBasicProcessorNode.cpp:
(WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):

LayoutTests:

* webaudio/audionode-connect-order-expected.txt: Added.
* webaudio/audionode-connect-order.html: Added.

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

8 years ago<style scoped>: Implement scoped stylesheets and basic application
rolandsteiner@chromium.org [Tue, 31 Jan 2012 05:04:08 +0000 (05:04 +0000)]
<style scoped>: Implement scoped stylesheets and basic application
https://bugs.webkit.org/show_bug.cgi?id=73190

Source/WebCore:

Implementing support for <style scoped>:
Add a vector stack to CSSStyleSelector that keeps track of encountered scoping elements. This is
used for O(1) access to all relevant style sheets for a given element.
Adapt matching of author style sheets to also consult appropriate scoped sheets.
Finally, prevent style sharing from crossing into/out of scoped style boundaries.

Reviewed by Antti Koivisto.

Tests: fast/css/style-scoped/style-scoped-attach.html
       fast/css/style-scoped/style-scoped-basic.html
       fast/css/style-scoped/style-scoped-detach.html
       fast/css/style-scoped/style-scoped-remove-scoped.html
       fast/css/style-scoped/style-scoped-set-scoped.html

* css/CSSStyleSelector.cpp:
(RuleSet):
(WebCore::CSSStyleSelector::CSSStyleSelector): add code for scoped style sheets
(WebCore::CSSStyleSelector::collectFeatures): ditto
(WebCore):
(WebCore::CSSStyleSelector::determineScopingElement): determine whether an author sheet is scoped (and to which scope), or global
(WebCore::CSSStyleSelector::scopedRuleSetForElement): returns the RuleSet for the <style scoped> contained by the passed-in element (if any), or 0
(WebCore::CSSStyleSelector::appendAuthorStylesheets): add code for scoped style sheets
(WebCore::CSSStyleSelector::setupScopingElementStack): determine scoping element ancestors of the given element
(WebCore::CSSStyleSelector::pushParent): simplify and refactor SelectorChecker::pushParent, as code in CSStyleSelector needs partial access
(WebCore::CSSStyleSelector::popParent): ditto
(WebCore::CSSStyleSelector::sortAndTransferMatchedRules): helper function
(WebCore::CSSStyleSelector::matchAuthorRules): use AuthorRuleSetIterator to iterate over all relevant RuleSets
(WebCore::CSSStyleSelector::matchRules): adapt for scoped style rules
(WebCore::CSSStyleSelector::matchAllRules): ditto
(WebCore::CSSStyleSelector::locateCousinList): prevent style sharing across scope boundaries
(WebCore::CSSStyleSelector::canShareStyleWithElement): ditto
(WebCore::CSSStyleSelector::locateSharedStyle): ditto
(WebCore::CSSStyleSelector::pseudoStyleForElement): changed call to matchAuthorRules
(WebCore::CSSStyleSelector::styleForPage): add comment
(WebCore::CSSStyleSelector::checkRegionStyle): add global scope parameter
(WebCore::CSSStyleSelector::pseudoStyleRulesForElement): changed call to matchAuthorRules
(WebCore::RuleSet::addRulesFromSheet): adapt for scoped style rules
* css/CSSStyleSelector.h:
(CSSStyleSelector):
(WebCore::CSSStyleSelector::ScopeStackFrame::ScopeStackFrame): struct holding an Element pointer and a RuleSet pointer, to be used in a Vector
(WebCore::CSSStyleSelector::scopingElementStackIsConsistent): returns if the last seen parent matches the passed-in element
* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::setupParentStack): set up the parent stack (refactoring)
(WebCore::SelectorChecker::pushParent): simplify and refactor
* css/SelectorChecker.h:
(WebCore::SelectorChecker::popParent): ditto
(WebCore::SelectorChecker::parentStackIsEmpty): ditto
(WebCore::SelectorChecker::parentStackIsConsistent): make parameter const

LayoutTests:

Test that <style scoped> affects styles and is updated correctly:
-) basic test
-) test setting/un-setting the 'scoped' attribute
-) test inserting/removing a whole <style scoped> element

Reviewed by Antti Koivisto.

* fast/css/style-scoped/style-scoped-attach-expected.txt: Added.
* fast/css/style-scoped/style-scoped-attach.html: Added.
* fast/css/style-scoped/style-scoped-basic-expected.txt: Added.
* fast/css/style-scoped/style-scoped-basic.html: Added.
* fast/css/style-scoped/style-scoped-detach-expected.txt: Added.
* fast/css/style-scoped/style-scoped-detach.html: Added.
* fast/css/style-scoped/style-scoped-remove-scoped-expected.txt: Added.
* fast/css/style-scoped/style-scoped-remove-scoped.html: Added.
* fast/css/style-scoped/style-scoped-set-scoped-expected.txt: Added.
* fast/css/style-scoped/style-scoped-set-scoped.html: Added.

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

8 years ago[EFL] Define the names of view smart class
commit-queue@webkit.org [Tue, 31 Jan 2012 05:03:02 +0000 (05:03 +0000)]
[EFL] Define the names of view smart class
https://bugs.webkit.org/show_bug.cgi?id=76370

Patch by Eunsol Park <eunsol47.park@samsung.com> on 2012-01-30
Reviewed by Andreas Kling.

Strings of ewk_tiled_view's name were defined differently,
so the definitions were modified to make users not confused.

* ewk/ewk_private.h:
* ewk/ewk_view.cpp:
* ewk/ewk_view_single.cpp:
(_ewk_view_single_smart_class_new):
* ewk/ewk_view_tiled.cpp:
(ewk_view_tiled_smart_set):
(_ewk_view_tiled_smart_class_new):

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

8 years ago[wx] Update build dirs and includes after recent trunk changes.
kevino@webkit.org [Tue, 31 Jan 2012 04:39:16 +0000 (04:39 +0000)]
[wx] Update build dirs and includes after recent trunk changes.

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

8 years ago[Chromium] Unreviewed test expectation change
yuzo@google.com [Tue, 31 Jan 2012 04:37:57 +0000 (04:37 +0000)]
[Chromium] Unreviewed test expectation change
plugins/crash-restoring-plugin-page-from-page-cache.html fails or timeouts.

* platform/chromium/test_expectations.txt:

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

8 years ago[chromium] Compute occlusion during paint loop
commit-queue@webkit.org [Tue, 31 Jan 2012 04:03:00 +0000 (04:03 +0000)]
[chromium] Compute occlusion during paint loop
https://bugs.webkit.org/show_bug.cgi?id=76858

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-30
Reviewed by James Robinson.

Source/WebCore:

New unit tests in TiledLayerChromiumTest.cpp, CCLayerTreeHostCommonTest.cpp, CCLayerTreeHostTest.cpp

* platform/graphics/FloatRect.cpp:
(WebCore::enclosedIntRect):
(WebCore):
* platform/graphics/FloatRect.h:
(WebCore):
* platform/graphics/chromium/Canvas2DLayerChromium.cpp:
(WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/Canvas2DLayerChromium.h:
(Canvas2DLayerChromium):
* platform/graphics/chromium/ContentLayerChromium.cpp:
(WebCore::ContentLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/ContentLayerChromium.h:
(ContentLayerChromium):
* platform/graphics/chromium/ImageLayerChromium.cpp:
(WebCore::ImageLayerChromium::paintContentsIfDirty):
* platform/graphics/chromium/ImageLayerChromium.h:
(ImageLayerChromium):
* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::contentToScreenSpaceTransform):
(WebCore):
(WebCore::LayerChromium::addSelfToOccludedScreenSpace):
(WebCore::LayerChromium::isPaintedAxisAlignedInScreen):
* platform/graphics/chromium/LayerChromium.h:
(WebCore):
(WebCore::LayerChromium::paintContentsIfDirty):
(LayerChromium):
* platform/graphics/chromium/RenderSurfaceChromium.h:
(RenderSurfaceChromium):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::addSelfToOccludedScreenSpace):
* platform/graphics/chromium/TiledLayerChromium.h:
(WebCore):
():
* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::paintContentsIfDirty):
(WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
(RenderSurfaceRegion):
(WebCore):
(WebCore::pushTargetRenderSurfaceRegion):
(WebCore::popAndPushTargetRenderSurfaceRegion):
(WebCore::CCLayerTreeHost::paintLayerContents):
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore):
():
* platform/graphics/chromium/cc/CCQuadCuller.cpp:

Source/WebKit/chromium:

* tests/CCLayerTreeHostCommonTest.cpp:
(WebCore::TEST):
(WebCore):
* tests/CCLayerTreeHostTest.cpp:
(WTF::ContentLayerChromiumWithUpdateTracking::paintContentsIfDirty):
(WTF):
(TestLayerChromium):
(WTF::TestLayerChromium::create):
(WTF::TestLayerChromium::paintContentsIfDirty):
(WTF::TestLayerChromium::drawsContent):
(WTF::TestLayerChromium::occludedScreenSpace):
(WTF::TestLayerChromium::clearOccludedScreenSpace):
(WTF::TestLayerChromium::TestLayerChromium):
(WTF::setLayerPropertiesForTesting):
(CCLayerTreeHostTestLayerOcclusion):
(WTF::CCLayerTreeHostTestLayerOcclusion::CCLayerTreeHostTestLayerOcclusion):
(WTF::CCLayerTreeHostTestLayerOcclusion::beginTest):
(WTF::CCLayerTreeHostTestLayerOcclusion::afterTest):
* tests/Canvas2DLayerChromiumTest.cpp:
(WebCore::Canvas2DLayerChromiumTest::fullLifecycleTest):
* tests/TiledLayerChromiumTest.cpp:
(WTF::FakeLayerTextureUpdater::setOpaquePaintRect):
(FakeLayerTextureUpdater):
(WTF::FakeTiledLayerChromium::paintContentsIfDirty):
(WTF::FakeLayerTextureUpdater::prepareToUpdate):
(WTF::TEST):
(WTF):

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

8 years agoAdd ElementAttributeData class to replace internal uses of NamedNodeMap
caio.oliveira@openbossa.org [Tue, 31 Jan 2012 03:53:40 +0000 (03:53 +0000)]
Add ElementAttributeData class to replace internal uses of NamedNodeMap
https://bugs.webkit.org/show_bug.cgi?id=77233

Reviewed by Andreas Kling.

Move part of non-DOM functionality of NamedNodeMap into a separate class. This is
the first step toward the goal of separating NamedNodeMap from internal attribute
storage, as described in https://bugs.webkit.org/show_bug.cgi?id=75069.

The internal attribute storage is exposed as attributeData() in Element, and when
necessary (because it has no back pointer to Element) via methods in Element.

No new tests. Except from setClass() change this is just moving the code, no new
feature was added.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.xcodeproj/project.pbxproj:
* dom/DOMAllInOne.cpp:
* dom/Element.cpp:
(WebCore::Element::idAttributeChanged):
* dom/Element.h:
(WebCore::Element::attributeData):
(WebCore::Element::ensureAttributeData):
(Element):
(WebCore::Element::idForStyleResolution):
* dom/ElementAttributeData.cpp: Added.
(WebCore):
(WebCore::ElementAttributeData::setClass): the only caller of this function
already deal with the case when the element has no class, so don't do it here.
* dom/ElementAttributeData.h: Added.
(WebCore):
(ElementAttributeData):
(WebCore::ElementAttributeData::clearClass):
(WebCore::ElementAttributeData::classNames):
(WebCore::ElementAttributeData::idForStyleResolution):
(WebCore::ElementAttributeData::setIdForStyleResolution):
(WebCore::ElementAttributeData::ElementAttributeData):
* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::clearAttributes):
* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::attributeData):
(NamedNodeMap):
* dom/StyledElement.cpp:
(WebCore::StyledElement::classAttributeChanged):
* dom/StyledElement.h:
(WebCore::StyledElement::classNames):
* html/ClassList.cpp:
(WebCore::ClassList::classNames):

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

8 years agoPython code in webkit-perf.appspot.com uses camelCase
rniwa@webkit.org [Tue, 31 Jan 2012 03:14:19 +0000 (03:14 +0000)]
Python code in webkit-perf.appspot.com uses camelCase
https://bugs.webkit.org/show_bug.cgi?id=77392

Reviewed by Adam Barth.

Use PEP8 style naming conventions instead of camelCase.

* Websites/webkit-perf.appspot.com/create_handler.py:
(CreateHandler.post):
(CreateHandler._create_builder):
(CreateHandler._create_branch):
(CreateHandler._create_platform):
* Websites/webkit-perf.appspot.com/dashboard_handler.py:
(DashboardHandler.get):
* Websites/webkit-perf.appspot.com/manifest_handler.py:
(ManifestHandler.get):
* Websites/webkit-perf.appspot.com/merge_tests_handler.py:
(MergeTestsHandler.post):
* Websites/webkit-perf.appspot.com/models.py:
(create_in_transaction_with_numeric_id_holder):
(delete_model_with_numeric_id_holder):
(modelFromNumericId):
(Builder.authenticate):
(Builder.hashed_password):
(Test.cache_key):
* Websites/webkit-perf.appspot.com/report_handler.py:
(ReportHandler.post):
(ReportHandler._model_by_key_name_in_body_or_error):
(ReportHandler._integer_in_body):
(ReportHandler._timestamp_in_body):
(ReportHandler.bypass_authentication):
(ReportHandler._results_are_valid):
(ReportHandler._results_are_valid._is_float_convertible):
(ReportHandler._create_build_if_possible):
(ReportHandler._create_build_if_possible.execute):
(ReportHandler._add_test_if_needed):
(ReportHandler._add_test_if_needed.execute):
(ReportHandler):
(AdminReportHandler.bypass_authentication):
* Websites/webkit-perf.appspot.com/runs_handler.py:
(RunsHandler.get):

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

8 years agoAdd Plumming to get graphics error messages to JS Console
commit-queue@webkit.org [Tue, 31 Jan 2012 03:10:49 +0000 (03:10 +0000)]
Add Plumming to get graphics error messages to JS Console
https://bugs.webkit.org/show_bug.cgi?id=77238

Source/WebCore:

Patch by Gregg Tavares <gman@chromium.org> on 2012-01-30
Reviewed by Kenneth Russell.

No new tests. No change in behavior.

* html/canvas/WebGLRenderingContext.cpp:
(WebGLRenderingContextErrorMessageCallback):
(WebCore::WebGLRenderingContextErrorMessageCallback::WebGLRenderingContextErrorMessageCallback):
(WebCore::WebGLRenderingContextErrorMessageCallback::onErrorMessage):
(WebCore::WebGLRenderingContextErrorMessageCallback::~WebGLRenderingContextErrorMessageCallback):
(WebCore):
(WebCore::WebGLRenderingContext::create):
(WebCore::WebGLRenderingContext::initializeNewContext):
(WebCore::WebGLRenderingContext::~WebGLRenderingContext):
* html/canvas/WebGLRenderingContext.h:
(WebGLRenderingContext):
* platform/graphics/GraphicsContext3D.h:
(ErrorMessageCallback):
(WebCore::GraphicsContext3D::ErrorMessageCallback::~ErrorMessageCallback):
(GraphicsContext3D):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::setErrorMessageCallback):
(WebCore):
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::setErrorMessageCallback):
(WebCore):
* platform/graphics/qt/GraphicsContext3DQt.cpp:
(WebCore::GraphicsContext3D::setErrorMessageCallback):
(WebCore):

Source/WebKit/chromium:

Patch by Gregg Tavares <gman@google.com> on 2012-01-30
Reviewed by Kenneth Russell.

* public/platform/WebGraphicsContext3D.h:
(WebGraphicsErrorMessageCallback):
(WebKit::WebGraphicsContext3D::WebGraphicsErrorMessageCallback::~WebGraphicsErrorMessageCallback):
(WebGraphicsContext3D):
(WebKit::WebGraphicsContext3D::setErrorMessageCallback):
* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3D::~GraphicsContext3D):
(WebCore):
(GraphicsErrorMessageCallbackAdapter):
(WebCore::GraphicsErrorMessageCallbackAdapter::~GraphicsErrorMessageCallbackAdapter):
(WebCore::GraphicsErrorMessageCallbackAdapter::GraphicsErrorMessageCallbackAdapter):
(WebCore::GraphicsErrorMessageCallbackAdapter::onErrorMessage):
(WebCore::GraphicsErrorMessageCallbackAdapter::create):
(WebCore::GraphicsContext3DPrivate::setErrorMessageCallback):
* src/GraphicsContext3DPrivate.h:
(WebCore):
():

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

8 years agoSimplify RenderLayerCompositor::frameViewDidScroll
andersca@apple.com [Tue, 31 Jan 2012 02:58:27 +0000 (02:58 +0000)]
Simplify RenderLayerCompositor::frameViewDidScroll
https://bugs.webkit.org/show_bug.cgi?id=77398

Reviewed by Sam Weinig.

Remove the scrollPosition parameter from RenderLayerCompositor::frameViewDidScroll; we can just get it
from the associated FrameView object.

* page/FrameView.cpp:
(WebCore::FrameView::scrollPositionChanged):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::frameViewDidChangeSize):
Call frameViewDidScroll() here instead of setting the scroll layer position explicitly.

(WebCore::RenderLayerCompositor::frameViewDidScroll):
(WebCore::RenderLayerCompositor::ensureRootLayer):
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):

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

8 years agoDon't select the next selectable index when deselecting an option in select elements...
commit-queue@webkit.org [Tue, 31 Jan 2012 02:55:08 +0000 (02:55 +0000)]
Don't select the next selectable index when deselecting an option in select elements with size set to a value greater than one.
https://bugs.webkit.org/show_bug.cgi?id=76389

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-30
Reviewed by Kent Tamura.

This behavior matches the rest of the browsers.

Source/WebCore:

Test: fast/forms/select/option-selecting.html

* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::optionSelectionStateChanged):

LayoutTests:

* fast/forms/select/option-selecting-expected.txt: Added.
* fast/forms/select/option-selecting.html: Added.

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

8 years agoScrollbars don't show when scrolling on the scrolling thread
andersca@apple.com [Tue, 31 Jan 2012 02:43:37 +0000 (02:43 +0000)]
Scrollbars don't show when scrolling on the scrolling thread
https://bugs.webkit.org/show_bug.cgi?id=77396
<rdar://problem/10710736>

Reviewed by Sam Weinig.

Use ScrollAnimator::scrollToOffsetWithoutAnimation when updating the frame view scroll offset,
since that function will end up invalidating the scrollbars correctly.

* page/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::didUpdateMainFrameScrollPosition):

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

8 years agoLayout Test plugins/crash-restoring-plugin-page-from-page-cache.html is slow on Chromium
leviw@chromium.org [Tue, 31 Jan 2012 02:43:27 +0000 (02:43 +0000)]
Layout Test plugins/crash-restoring-plugin-page-from-page-cache.html is slow on Chromium
https://bugs.webkit.org/show_bug.cgi?id=77397

Unreviewed gardening. Marking plugins/crash-restoring-plugin-page-from-page-cache.html slow
on Chromium.

* platform/chromium/test_expectations.txt:

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

8 years agoREGRESSION(r105797): prepare-ChangeLog for a .cpp file can
haraken@chromium.org [Tue, 31 Jan 2012 02:40:24 +0000 (02:40 +0000)]
REGRESSION(r105797): prepare-ChangeLog for a .cpp file can
output an empty method name (i.e. "()")
https://bugs.webkit.org/show_bug.cgi?id=77336

Reviewed by Darin Adler.

r105797 tried to detect a change outside methods, but it causes a bug that
prepare-ChangeLog can output an empty method name, like this:

    * foo/bar/baz.cpp:
    (method1):
    ():
    (method2):

This is because the cpp parser in prepare-ChangeLog cannot distinguish
'{' as the beginning of a method with '{' as the beginning of an array definition
at the top level.

    int a[] = { 1, 2, 3 };  // This '{' is the beginning of an array definition.

    void func() { // This '{' is the beginning of a method.
        ...;
    }

This patch fixes prepare-ChangeLog so that it skips an array definition at the top level.

* Scripts/prepare-ChangeLog:
(get_function_line_ranges_for_cpp): Modified as described above.
(generateFunctionLists): As a hack, modified so that prepare-ChangeLog does not output
an empty method name. Ideally this should not happen but may happen, since the
parsers are not perfect.
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests.cpp: Added test cases.
(NameSpace7):
(NameSpace8):
(Class109):
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/cpp_unittests-expected.txt:

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

8 years agoget_by_val_arguments is broken in the interpreter
oliver@apple.com [Tue, 31 Jan 2012 02:22:37 +0000 (02:22 +0000)]
get_by_val_arguments is broken in the interpreter
https://bugs.webkit.org/show_bug.cgi?id=77389

Reviewed by Gavin Barraclough.

When get_by_val had wad a value profile added, the same slot was not added to
get_by_val_arguments.  This broke the interpreter as the interpreter falls
back on its regular get_by_val implementation.

No tests are added as the interpreter is fairly broken in its
current state (multiple tests fail due to this bug).

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dump):
* bytecode/Opcode.h:
(JSC):
():
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitGetArgumentByVal):

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

8 years agoUnreviewed, rolling out r106259.
leviw@chromium.org [Tue, 31 Jan 2012 02:20:42 +0000 (02:20 +0000)]
Unreviewed, rolling out r106259.
http://trac.webkit.org/changeset/106259
https://bugs.webkit.org/show_bug.cgi?id=77395

Breaks shared builders as they also build webkittests with
-Wexit-time-destructors. (Requested by leviw on #webkit).

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

* WebKitUnitTests.gyp:

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

8 years agoSkip inspector tests since they have been timing out.
rniwa@webkit.org [Tue, 31 Jan 2012 02:11:02 +0000 (02:11 +0000)]
Skip inspector tests since they have been timing out.

* Skipped:

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

8 years agoShow repaint counters in individual tiles
andersca@apple.com [Tue, 31 Jan 2012 02:04:09 +0000 (02:04 +0000)]
Show repaint counters in individual tiles
https://bugs.webkit.org/show_bug.cgi?id=77390
<rdar://problem/10767967>

Reviewed by Darin Adler.

* platform/graphics/ca/mac/TileCache.h:
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::setNeedsDisplayInRect):
Make sure to invalidate the repaint counter rect if necessary.

(WebCore::TileCache::drawLayer):
Draw the repaint counter.

(WebCore::TileCache::showRepaintCounter):
New function that determines whether we should show repaint counters for the given tile cache.

* platform/graphics/ca/mac/WebTileLayer.h:
* platform/graphics/ca/mac/WebTileLayer.mm:
(-[WebTileLayer incrementRepaintCount]):
Add method for getting the repaint count.

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

8 years ago<rdar://problem/10778045> REGRESSION (r91935): text-combine fails
mitz@apple.com [Tue, 31 Jan 2012 01:57:37 +0000 (01:57 +0000)]
<rdar://problem/10778045> REGRESSION (r91935): text-combine fails
https://bugs.webkit.org/show_bug.cgi?id=77373

Reviewed by Darin Adler.

Source/WebCore:

Removed tests that were failing because of this bug from the Lion skipped
list.

* platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
(WebCore::GlyphPage::fill): Changed to use CTFontGetGlyphsForCharacters,
rather than wkGetVerticalGlyphsForCharacters, for non-fullwidth fonts.

LayoutTests:

Removed tests that were failing because of this bug from the skipped list.

* platform/mac-lion/Skipped:

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

8 years agoFix typo in test name from my last commit.
beidson@apple.com [Tue, 31 Jan 2012 01:36:46 +0000 (01:36 +0000)]
Fix typo in test name from my last commit.

Spotted and rubber-stamped by Darin Adler.

* plugins/crash-restoring-plugin-page-from-page-cache-expected.txt: Copied from plugins/crash-restoring-pluging-page-from-page-cache-expected.txt.
* plugins/crash-restoring-plugin-page-from-page-cache.html: Copied from plugins/crash-restoring-pluging-page-from-page-cache.html.
* plugins/crash-restoring-pluging-page-from-page-cache-expected.txt: Removed.
* plugins/crash-restoring-pluging-page-from-page-cache.html: Removed.

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

8 years agoEnable memcache on webkit-perf.appspot.com
rniwa@webkit.org [Tue, 31 Jan 2012 01:36:17 +0000 (01:36 +0000)]
Enable memcache on webkit-perf.appspot.com
https://bugs.webkit.org/show_bug.cgi?id=77378

Reviewed by Adam Barth.

Eanble memcache on dashboard, manifest, and runs handlers. Clear appropriate caches when new runs are reported,
or new models are created. We flush all caches when tests are merged since it's hard to figure out dependencies
in that case. Luckily, we merge tests only occassionally and manually (or hope so) so this shouldn't be an issue.

* Websites/webkit-perf.appspot.com/create_handler.py:
(CreateHandler.post):
* Websites/webkit-perf.appspot.com/dashboard_handler.py:
(DashboardHandler.get):
* Websites/webkit-perf.appspot.com/manifest_handler.py:
(ManifestHandler.get):
* Websites/webkit-perf.appspot.com/merge_tests_handler.py:
(MergeTestsHandler.post):
* Websites/webkit-perf.appspot.com/models.py:
(createInTransactionWithNumericIdHolder):
(Test):
(Test.cacheKey):
* Websites/webkit-perf.appspot.com/report_handler.py:
(ReportHandler.post):
(ReportHandler._addTestIfNeeded):
* Websites/webkit-perf.appspot.com/runs_handler.py:
(RunsHandler.get):

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

8 years agoBlackBerry - Support Proxy-Authenticate headers when a proxy is configured
commit-queue@webkit.org [Tue, 31 Jan 2012 01:25:08 +0000 (01:25 +0000)]
BlackBerry - Support Proxy-Authenticate headers when a proxy is configured
https://bugs.webkit.org/show_bug.cgi?id=77361

Though we have a proxy configured, we might not have the auth
credentials it requires. Support Proxy-Authenticate for that case.

Patch by Christopher Hutten-Czapski <chutten@rim.com> on 2012-01-30
Reviewed by George Staikos.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::handleNotifyHeaderReceived):
(WebCore::NetworkJob::handleAuthHeader):
(WebCore::NetworkJob::sendRequestWithCredentials):
* platform/network/blackberry/NetworkJob.h:
* platform/network/blackberry/NetworkManager.cpp:
(WebCore::NetworkManager::startJob):

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

8 years ago[chromium] Remove unnecessary retry logic in LayerRendererChromium initialization...
jamesr@google.com [Tue, 31 Jan 2012 01:23:11 +0000 (01:23 +0000)]
[chromium] Remove unnecessary retry logic in LayerRendererChromium initialization for accelerated painting
https://bugs.webkit.org/show_bug.cgi?id=77247

Reviewed by Kenneth Russell.

The accelerate painting setting is done differently from other capability-dependent settings for no good reason,
requiring that we retry initialization with different settings. For all other settings we set the capabilities
bit to true if the setting is requested and if the required capabilities exist on the underlying context.

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::create):
(WebCore::LayerRendererChromium::initialize):
* platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):

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

8 years ago<rdar://problem/10707072>
beidson@apple.com [Tue, 31 Jan 2012 01:10:53 +0000 (01:10 +0000)]
<rdar://problem/10707072>
Crashes in WebProcess at WebCore::Node::rendererIsNeeded

Reviewed by Darin Adler.

Source/WebCore:

In specific circumstances a plugin element can be without a render style at the point in time where
the page navigated and enters the page cache.

When this is the cash, the element should not enter into the "custom style for renderer" mode and should
instead use the default render style machinery.

Test: plugins/crash-restoring-pluging-page-from-page-cache.html

* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache): Only setHasCustomStyleForRenderer and
  forceRecalc if there actually is a custom style to be used.
(WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache): Only clearHasCustomStyleForRenderer if there
  actually was a custom style to be cleared.
(WebCore::HTMLPlugInImageElement::customStyleForRenderer): This should only be called if there actually is a
  custom style to be used. Otherwise the element would have to fallback to the "normal" RenderStyle which might
  not exist.

LayoutTests:

* plugins/crash-restoring-pluging-page-from-page-cache-expected.txt: Added.
* plugins/crash-restoring-pluging-page-from-page-cache.html: Added.

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

8 years agoShow debug borders for individual tile cache tiles
andersca@apple.com [Tue, 31 Jan 2012 01:07:43 +0000 (01:07 +0000)]
Show debug borders for individual tile cache tiles
https://bugs.webkit.org/show_bug.cgi?id=77388

Reviewed by Sam Weinig.

* platform/graphics/GraphicsLayer.cpp:
(WebCore::GraphicsLayer::updateDebugIndicators):
Give tile cache tiles a thin dark blue border.

* platform/graphics/ca/mac/TileCache.h:
(WebCore::TileCache::tileDebugBorderWidth):
(WebCore::TileCache::tileDebugBorderColor):
Add getters and member variables for the tile debug border width and color.

* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::TileCache):
Initialize m_tileDebugBorderWidth.

(WebCore::TileCache::setTileDebugBorderWidth):
Update the border width of each tile layer.

(WebCore::TileCache::setTileDebugBorderColor):
Update the border color of each tile layer.

(WebCore::TileCache::createTileLayer):
Set the border color and border width.

* platform/graphics/ca/mac/WebTileCacheLayer.h:
* platform/graphics/ca/mac/WebTileCacheLayer.mm:
(-[WebTileCacheLayer borderColor]):
(-[WebTileCacheLayer setBorderColor:]):
(-[WebTileCacheLayer borderWidth]):
(-[WebTileCacheLayer setBorderWidth:]):
Call through to the TileCache.

* platform/graphics/mac/WebLayer.mm:
(drawLayerContents):
Don't draw the repaint counter for tile cache layers, each tile will maintain its own repaint counter.

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

8 years agorun-webkit-tests calls out to webkit-build-directory twice
ojan@chromium.org [Tue, 31 Jan 2012 01:04:43 +0000 (01:04 +0000)]
run-webkit-tests calls out to webkit-build-directory twice
https://bugs.webkit.org/show_bug.cgi?id=77248

Reviewed by Dirk Pranke.

This reduces to calls to webkit-build-directory to one call and
saves 500ms for run-webkit-tests over a single file.

* Scripts/webkit-build-directory:
If called with no arguments, print out both the top-level directory and the
configuration directory.

* Scripts/webkit-build-directory:
* Scripts/webkitpy/layout_tests/port/config.py:
(Config.build_directory):
When called with no arguments, get and cache both the top-level and configuration directories.

* Scripts/webkitpy/layout_tests/port/config_standalone.py:
(main):
* Scripts/webkitpy/layout_tests/port/config_unittest.py:
(ConfigTest.assert_configuration):
(ConfigTest.test_build_directory.mock_webkit_build_directory):
(ConfigTest.test_build_directory):
(ConfigTest.test_default_configuration__notfound):
* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort._build_path):
Cache the root directory in the options object so that other users
of the options object don't need to call out to webkit-build-directory.

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

8 years agosingle-file input elements should refuse multi-file drags
commit-queue@webkit.org [Tue, 31 Jan 2012 00:35:42 +0000 (00:35 +0000)]
single-file input elements should refuse multi-file drags
https://bugs.webkit.org/show_bug.cgi?id=25913

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-01-30
Reviewed by Eric Seidel.

Refuse the multiple file drags onto a single file input element.

Source/WebCore:

No new tests: Covered by existing tests, updated the expected results.

* page/DragController.cpp:
(WebCore::DragController::tryDocumentDrag):
Setting the dragSession.numberOfItemsToBeAccepted to 0 so that drag operation is none if the
file input element under mouse is single input type and number of files dragged onto that
input element are more than 1.

LayoutTests:

* editing/pasteboard/file-input-files-access-expected.txt:
Expected result changed.
* editing/pasteboard/script-tests/file-input-files-access.js:
(runTest):
Removed the 'FIXME' debug and comment as it is not valid after this change.

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

8 years ago[chromium] Use region reported painted opaque for draw culling
commit-queue@webkit.org [Tue, 31 Jan 2012 00:29:02 +0000 (00:29 +0000)]
[chromium] Use region reported painted opaque for draw culling
https://bugs.webkit.org/show_bug.cgi?id=76015

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-30
Reviewed by James Robinson.

Source/WebCore:

New unit tests in CCTiledLayerImplTest.cpp, CCQuadCullerTest.cpp, CCLayerTreeHostImplTest.cpp

* platform/graphics/chromium/LayerChromium.cpp:
(WebCore::LayerChromium::setOpaque):
* platform/graphics/chromium/TiledLayerChromium.cpp:
(UpdatableTile):
(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):
* platform/graphics/chromium/cc/CCDrawQuad.cpp:
(WebCore::CCDrawQuad::opaqueRect):
(WebCore):
* platform/graphics/chromium/cc/CCDrawQuad.h:
(CCDrawQuad):
(WebCore::CCDrawQuad::needsBlending):
* platform/graphics/chromium/cc/CCQuadCuller.cpp:
(WebCore::CCQuadCuller::cullOccludedQuads):
* platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp:
(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):
* platform/graphics/chromium/cc/CCTileDrawQuad.cpp:
(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):
* platform/graphics/chromium/cc/CCTileDrawQuad.h:
(CCTileDrawQuad):
* platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
(DrawableTile):
(WebCore::DrawableTile::opaqueRect):
(WebCore::DrawableTile::setOpaqueRect):
(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::pushTileProperties):
* platform/graphics/chromium/cc/CCTiledLayerImpl.h:
(CCTiledLayerImpl):

Source/WebKit/chromium:

* tests/CCLayerTreeHostImplTest.cpp:
(WebKit::BlendStateCheckLayer::appendQuads):
(WebKit::BlendStateCheckLayer::setOpaqueColor):
(BlendStateCheckLayer):
(WebKit::BlendStateCheckLayer::BlendStateCheckLayer):
(WebKit::TEST_F):
* tests/CCQuadCullerTest.cpp:
(WebCore::MakeTileQuad):
(WebCore::setQuads):
(WebCore::TEST):
(WebCore):
* tests/CCTiledLayerImplTest.cpp:
(CCLayerTestCommon::createLayer):
(CCLayerTestCommon::TEST):
(CCLayerTestCommon::getQuads):
(CCLayerTestCommon::coverageVisibleRectOnTileBoundaries):
(CCLayerTestCommon::coverageVisibleRectIntersectsTiles):
(CCLayerTestCommon::coverageVisibleRectIntersectsBounds):
(CCLayerTestCommon):

LayoutTests:

* platform/chromium-linux/compositing/iframes/iframe-in-composited-layer-expected.png:
* platform/chromium-mac-leopard/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Removed.
* platform/chromium-mac-snowleopard/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Removed.
* platform/chromium-win/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Removed.
* platform/chromium/fast/repaint/block-selection-gap-in-composited-layer-expected.png: Renamed from LayoutTests/platform/chromium-linux/fast/repaint/block-selection-gap-in-composited-layer-expected.png.
* platform/chromium/test_expectations.txt:

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

8 years ago[Chromium] Unreviewed test expectation change.
commit-queue@webkit.org [Tue, 31 Jan 2012 00:22:03 +0000 (00:22 +0000)]
[Chromium] Unreviewed test expectation change.
Remove passing media/media-blocked-by-beforeload.html from test_expectations.txt
after r103509

Patch by Shadi Khalek <shadi@chromium.org> on 2012-01-30

* platform/chromium/test_expectations.txt:

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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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

8 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