Timeline


and

05/28/12:

23:44 Changeset [118727] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] New fast/dom/window-scroll-scaling.html made 3-400 tests flakey
https://bugs.webkit.org/show_bug.cgi?id=87700

Unreviewed gardening to paint the bot less and less red.

  • platform/qt/Skipped: Skip fast/dom/window-scroll-scaling.html until proper fix.
23:42 Changeset [118726] by haraken@chromium.org
  • 18 edits in trunk/Source/WebCore

[V8] Implement V8Binding::v8Null(isolate) and use it in CodeGeneratorV8.pm
https://bugs.webkit.org/show_bug.cgi?id=87692

Reviewed by Adam Barth.

Since v8::Null(isolate) crashes if we pass a NULL isolate, we are planning
to pass Isolate to v8::Null() in the following steps:

[1] Implement V8Bindings::v8Null(isolate). v8Null(isolate) does the NULL check.
If isolate is NULL, v8Null(isolate) calls v8::Null(). Otherwise,
v8Null(isolate) calls v8::Null(isolate).

[2] In V8 bindings, we replace v8::Null() with v8::Null(isolate) for a non-optional
'isolate' parameter. (e.g. void foo(..., Isolate* isolate) { v8::Null(); } )

[3] In V8 bindings, we replace v8::Null() with v8Null(isolate) for an optional
'isolate' parameter. (e.g. void foo(..., Isolate* isolate = 0) { v8::Null(); } )

This bug fixes [1] by implementing V8Binding::v8Null(isolate). Also this patch uses
V8Binding::v8Null(isolate) in bindings/v8/*.{h,cpp}.

No tests. No behavior change.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8Float64Array.h:
  • bindings/scripts/test/V8/V8TestActiveDOMObject.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestCustomNamedGetter.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestEventConstructor.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestEventTarget.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestException.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestInterface.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestMediaQueryListListener.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestNamedConstructor.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestNode.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestObj.h:

(WebCore::toV8):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:

(WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrGetter):
(WebCore::TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetter):

  • bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

(WebCore::toV8):

  • bindings/v8/V8Binding.h:

(WebCore::v8Null):
(WebCore):
(WebCore::v8DateOrNull):

  • bindings/v8/V8DOMWrapper.cpp:
  • bindings/v8/V8DOMWrapper.h:

(WebCore):

22:37 Changeset [118725] by tkent@chromium.org
  • 8 edits in trunk

Fix a crash in HTMLFormControlElement::disabled().
https://bugs.webkit.org/show_bug.cgi?id=86534

Reviewed by Ryosuke Niwa.

Source/WebCore:

Stop to hold pointers of fildset and legend elements. We can avoid it by
holding ancestor's disabled state.

The ancesotr's disabled state should be invalidated when

  • fieldset's disabled value is changed.
  • fieldset's children is updated because a legend position might be changed.
  • A form control is attached to or detached from a tree.

No new tests. It's almost impossible to make a reliable test.

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::invalidateDisabledStateUnder):
Added. Invalidate disabled state of form controls under the specified node.
(WebCore::HTMLFieldSetElement::disabledAttributeChanged):
Uses invalidateDisabledStateUnder().
(WebCore::HTMLFieldSetElement::childrenChanged):
Added new override function. We need invalidate disabled state of form
controls under legend elements.

  • html/HTMLFieldSetElement.h:

(HTMLFieldSetElement): Add invalidateDisabledStateUnder() and childrenChanged().

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::HTMLFormControlElement):
Remove initialization of the removed data members.
Initialize m_ancestorDisabledState.
(WebCore::HTMLFormControlElement::updateAncestorDisabledState):
Update m_ancestorDisabledState. It should be
AncestorDisabledStateDisabled if the control is under a disabled
fieldset and not under the first legend child of the disabled filedset.
(WebCore::HTMLFormControlElement::ancestorDisabledStateWasChanged):
Invalidate m_ancestorDisabledState.
(WebCore::HTMLFormControlElement::insertedInto): ditto.
(WebCore::HTMLFormControlElement::removedFrom): ditto.
(WebCore::HTMLFormControlElement::disabled):
Calls updateAncestorDisabledState() if needed.
(WebCore::HTMLFormControlElement::recalcWillValidate):
Remove unnecessary check for m_legendAncestor.

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

  • Rename updateFieldSetAndLegendAncestor() to updateAncestorDisabledState(), and make it private.
  • Remove m_fieldSetAncestor, m_legendAncestor, and m_fieldSetAncestorValid.
  • Add m_ancestorDisabledState.

LayoutTests:

Add a testcase to confirm <lagend> doesn't affect validation.

  • fast/forms/datalist/datalist-child-validation-expected.txt:
  • fast/forms/datalist/datalist-child-validation.html:
22:16 Changeset [118724] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

Removes pixel result requirements from fast/layers/clip-rects-assertion-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=87663

Unreviewed gardening.

This test was added by r118612, but no pixel result were provided.
It seems that it's enough to remove the param for dumpAsText() and just use the text text output.

  • fast/layers/clip-rects-assertion.html:
22:15 Changeset [118723] by toyoshim@chromium.org
  • 11 edits in trunk

[WebSocket] Receiving reserved close codes, 1005, 1006, and 1015 must appear as code=1006 and wasClean=false
https://bugs.webkit.org/show_bug.cgi?id=87084

Reviewed by Kent Tamura.

Source/WebCore:

Status codes 1005, 1006, and 1015 are forbidden to be sent in actual close frames.
If a client received these frames, the client should handle them as broken.
Close frames containing invalid body size are the same as these forbidden cases.
Update close-code-and-reason tests to verify this patch.

  • Modules/websockets/WebSocket.cpp: Handle AbnormalClosure as wasClean == false

(WebCore::WebSocket::didClose):

  • Modules/websockets/WebSocketChannel.cpp: Handle close frames' status code carefully

(WebCore::WebSocketChannel::processFrame):

  • Modules/websockets/WebSocketChannel.h: Update on newly defined close event codes

Source/WebKit/chromium:

Update close event codes corresponding to WebSocketChannel::CloseEventCode.

  • public/WebSocket.h: Update on newly defined close event codes

LayoutTests:

Add test cases where server initiates a closing handshake with forbidden status codes.

  • http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt:
  • http/tests/websocket/tests/hybi/close-code-and-reason.html:
  • http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt:
  • http/tests/websocket/tests/hybi/workers/resources/close-code-and-reason.js:

(WebSocketTest.prototype.onclose):

21:11 Changeset [118722] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

[V8] Avoid passing NULL to an 'isolate' parameter
https://bugs.webkit.org/show_bug.cgi?id=87689

Reviewed by Adam Barth.

v8::Null(isolate) crashes if we pass a NULL isolate.
Thus we are planning to replace v8::Null()s in a following way:

  • Implement V8Bindings::v8Null(isolate). v8Null(isolate) does the NULL check.

If isolate is NULL, v8Null(isolate) calls v8::Null(). Otherwise,
v8Null(isolate) calls v8::Null(isolate).

  • In V8 bindings, we replace v8::Null() with v8::Null(isolate) for a

non-optional 'isolate' parameter.
(e.g. void foo(..., Isolate* isolate) { v8::Null(); } )

  • In V8 bindings, we replace v8::Null() with v8Null(isolate) for an

optional 'isolate' parameter.
(e.g. void foo(..., Isolate* isolate = 0) { v8::Null(); } )

However, currently we cannot do the replacement mechanically, since some code
pass NULL to a non-optional 'isolate' parameter. In other words, currently
"non-optional" does not guarantee that 'isolate' is not NULL.

This patch removes all the code that passes NULL to a non-optional 'isolate'
parameter. This will enable us to achieve the replacement mechanically.

No tests. No behavior change.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateCallbackImplementation):
(NativeToJSValue):

  • bindings/scripts/test/V8/V8TestCallback.cpp:

(WebCore::V8TestCallback::callbackWithClass1Param):
(WebCore::V8TestCallback::callbackWithClass2Param):
(WebCore::V8TestCallback::callbackWithStringList):
(WebCore::V8TestCallback::callbackRequiresThisToPass):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::installPerContextProperties):

  • bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:

(WebCore::V8SQLStatementErrorCallback::handleEvent):

  • bindings/v8/custom/V8MutationCallbackCustom.cpp:

(WebCore::V8MutationCallback::handleEvent):

21:08 Changeset [118721] by tkent@chromium.org
  • 5 edits
    2 adds in trunk

Form controls in <fieldset disabled> should not be validated.
https://bugs.webkit.org/show_bug.cgi?id=87381

Reviewed by Hajime Morita.

Source/WebCore:

We need to use disabeld() instead of m_disabled to calculate
willValidate property. Also, we need to update willValidate if
necessary.

Test: fast/forms/fieldset/validation-in-fieldset.html

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::disabledAttributeChanged):

  • Do not traverse this.
  • Calls ancestorDisabledStateWasChanged() instead of setNeedsStyleRecalc() because we'd like to do additional tasks.
  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::ancestorDisabledStateWasChanged):
Added. Just calls disabledAttributeChanged().
(WebCore::HTMLFormControlElement::parseAttribute):
Do not call setNeedsWillValidateCheck() whenever an attribute is updated.
It should be called only if disabled or readonly attribute is updated.
(WebCore::HTMLFormControlElement::disabledAttributeChanged):
Add setNeedsWillValidateCheck(). It was moved from parseAttribute().
(WebCore::HTMLFormControlElement::insertedInto):
Invalidate ancestor information.
(WebCore::HTMLFormControlElement::recalcWillValidate):
Use disabled() instead of m_disabled. disabled() takes care of
ancestor's disabled state.

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

LayoutTests:

  • fast/forms/fieldset/validation-in-fieldset-expected.txt: Added.
  • fast/forms/fieldset/validation-in-fieldset.html: Added.
21:05 AddingFeatures edited by rakuco@webkit.org
Add another CMake-related file that should be changed. (diff)
20:57 Changeset [118720] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk

[Forms] HTMLFieldSetElement.idl doesn't have elements attribute.
https://bugs.webkit.org/show_bug.cgi?id=80110

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-05-28
Reviewed by Kent Tamura.

Source/WebCore:

Implemented elements attribute for HTMLFieldSetElement. This is spec'ed at
http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#dom-fieldset-elements

Tests: fast/forms/fieldset/fieldset-elements.html

fast/forms/fieldset/fieldset-form-collection-radionode-list.html

  • dom/Node.cpp:

(WebCore::Node::radioNodeList):
Extended ASSERT to assert if not HTMLFieldSetElement or HTMLFormElement.

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::elements):
Elements attribute implementation.
(WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
Update the formcontrol elements collections if dom tree got modified.
(WebCore::HTMLFieldSetElement::associatedElements):
FormControl elements collection accessor.
(WebCore::HTMLFieldSetElement::length):
Number of elements in the fieldset group.

  • html/HTMLFieldSetElement.h:

Added elements collection member and form control collection members.

  • html/HTMLFieldSetElement.idl:

Added elements attribute.

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::formControlElements):
Added support for HTMLFieldSetElement, based on base element type gets its associated elements.
(WebCore::HTMLFormCollection::numberOfFormControlElements): Ditto
(WebCore::HTMLFormCollection::getNamedFormItem): Process image elements only for form element.
(WebCore::HTMLFormCollection::updateNameCache): Ditto

  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):
DynamicSubTree root element is decided based on the type whether base element is form or fieldset element.
Renamed m_formElement to m_baseElement.
(WebCore::RadioNodeList::~RadioNodeList):
Renamed m_formElement to m_baseElement.
(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
Form element specific changes moved under form element check.

  • html/RadioNodeList.h:

(WebCore::RadioNodeList::create):
(RadioNodeList):
Renamed m_formElement to m_baseElement.

LayoutTests:

  • fast/forms/fieldset/fieldset-elements-expected.txt: Added.
  • fast/forms/fieldset/fieldset-elements.html: Added.
  • fast/forms/fieldset/fieldset-form-collection-radionode-list-expected.txt: Added.
  • fast/forms/fieldset/fieldset-form-collection-radionode-list.html: Added.
20:49 Changeset [118719] by commit-queue@webkit.org
  • 11 edits in trunk

[BlackBerry] http authenticate dialog popup only once no matter authentication pass or fail
https://bugs.webkit.org/show_bug.cgi?id=80135

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-28
Reviewed by Rob Buis.

Source/WebCore:

RIM PR: 145660
Fixed a regression introduced by r111810, we should cancel the new
request when user press cancel button in http authentication challenge
dialog, and we should also allow sending empty username and password
with the request.
Also removed redundant codes which checked the existence of the
FrameLoaderClient pointer, as we've already moved authenticationChallenge()
out of class FrameLoaderClient, it is not needed.

Manual test added. Testing http authentication dialog relies on user interaction.

Resubmit the patch reverted by r115104 after the digest infinite loop
issue for BlackBerry porting get identified and fixed.

Internally reviewed by Joe Mason <jmason@rim.com>

  • platform/blackberry/PageClientBlackBerry.h:
  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendRequestWithCredentials):

Source/WebKit/blackberry:

RIM PR: 145660
Fixed a regression introduced by r111810, which used the wrong
credential object.

Added the interface function didReceivedAuthenticaitonChallenge()
in interface class DumpRenderTreeClient;
Called m_dumpRenderTree->didReceiveAuthenticationChallenge() in
WebPagePrivate::authenticationChallenge() when DRT is enabled.

Test: reuse existing test cases:
http/tests/loading/basic-credentials-sent-automatically.html
http/tests/loading/basic-auth-resend-wrong-credentials.html

Resubmit the patch reverted by r115104 after the digest infinite loop
issue for BlackBerry porting get identified and fixed.

Internally reviewed by Joe Mason <jmason@rim.com>

  • Api/DumpRenderTreeClient.h:

(WebCore):

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):

  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

Tools:

Implemented interface function didReceiveAuthenticationChallenge in class
DumpRenderTree.

Resubmit the patch reverted by r115104 after the digest infinite loop
issue for BlackBerry porting get identified and fixed.

Internally reviewed by Joe Mason <jmason@rim.com>

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(drtCredentialDescription):
(BlackBerry::WebKit::DumpRenderTree::didReceiveAuthenticationChallenge):
(WebKit):

  • DumpRenderTree/blackberry/DumpRenderTreeBlackBerry.h:

(WebCore):
(DumpRenderTree):

20:24 Changeset [118718] by commit-queue@webkit.org
  • 6 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r118646.
http://trac.webkit.org/changeset/118646
https://bugs.webkit.org/show_bug.cgi?id=87691

broke V8 raytrace benchmark (Requested by pizlo_ on #webkit).

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

  • heap/Heap.cpp:

(JSC::Heap::collect):

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::sweep):

  • heap/MarkedBlock.h:

(JSC::MarkedBlock::sweepWeakSet):
(JSC):

  • heap/MarkedSpace.cpp:

(JSC::SweepWeakSet::operator()):
(JSC):
(JSC::MarkedSpace::sweepWeakSets):

  • heap/MarkedSpace.h:

(MarkedSpace):

20:04 Changeset [118717] by dbarton@mathscribe.com
  • 2 edits in trunk/LayoutTests

mathml/presentation/mo-stretch.html and mroot-pref-width.html tests fail on Mac
https://bugs.webkit.org/show_bug.cgi?id=86786

Unreviewed gardening - add back these two tests to skip for now.

  • platform/mac/Skipped:
19:58 Changeset [118716] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] http authentication challenge issue when loading favicon
https://bugs.webkit.org/show_bug.cgi?id=87665

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-28
Reviewed by Rob Buis.

Provide the TargetType when generating a favicon loading
request. Loading favicons is triggered after the main resource
has been loaded and parsed, so if we cancel the authentication
challenge when loading main resource, we should also cancel
loading the favicon when it starts to load. If not we will
receive another challenge after we canceled the main resource
loading, which may confuse the user.

Internally reviewed by Joe Mason <jmason@rim.com>

No new tests because of no behavior changes.

  • loader/icon/IconLoader.cpp:

(WebCore::IconLoader::startLoading):

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::sendRequestWithCredentials):

19:43 Changeset [118715] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

DFG should not generate code for code that the CFA proves to be unreachable
https://bugs.webkit.org/show_bug.cgi?id=87682

Reviewed by Sam Weinig.

This also fixes a small performance bug where CFA was not marking blocks
as having constants (and hence not triggering constant folding) if the only
constants were on GetLocals.

And fixing that bug revealed another bug: constant folding was assuming that
a GetLocal must be the first access to a local in a basic block. This isn't
true. The first access may be a Flush. This patch fixes that issue using the
safest approach possible, since we don't need to be clever for something that
only happens in one of our benchmarks.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::noticeOSREntry):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

18:50 Changeset [118714] by morrita@google.com
  • 6 edits in trunk/Source

Rename FrameLoaderClient::shadowDOMAllowed() to allowShadowDOM()
https://bugs.webkit.org/show_bug.cgi?id=87101

Reviewed by Kentaro Hara.

Source/WebCore:

No new tests. No behavior change.

  • bindings/generic/ContextEnabledFeatures.cpp:

(WebCore::ContextEnabledFeatures::shadowDOMEnabled):

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::allowShadowDOM):

Source/WebKit/chromium:

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::allowShadowDOM):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

18:24 Changeset [118713] by dbarton@mathscribe.com
  • 10 edits in trunk

mathml/presentation/mo-stretch.html and mroot-pref-width.html tests fail on Mac
https://bugs.webkit.org/show_bug.cgi?id=86786

Reviewed by Darin Adler.

Source/WebCore:

The fix to https://bugs.webkit.org/show_bug.cgi?id=84167 changed inline-table baselines,
including for <mtable>. We therefore have to correct <mtable>'s vertical-align CSS
property.

Tested by existing tests mo-stretch.html, row-alignment.xhtml, and tables.xhtml.

  • css/mathml.css:

(mtable):

LayoutTests:

  • platform/mac/Skipped:
  • platform/mac/mathml/presentation/mo-stretch-expected.png:
  • platform/mac/mathml/presentation/mo-stretch-expected.txt:
  • platform/mac/mathml/presentation/row-alignment-expected.png:
  • platform/mac/mathml/presentation/row-alignment-expected.txt:
  • platform/mac/mathml/presentation/tables-expected.png:
  • platform/mac/mathml/presentation/tables-expected.txt:
16:56 Changeset [118712] by macpherson@chromium.org
  • 4 edits in trunk/Source/WebCore

Make CSSParser::filteredProperties() O(n) instead of O(n2) and improve readability.
https://bugs.webkit.org/show_bug.cgi?id=87078

Reviewed by Darin Adler.

This patch implements a number of improvements to filteredProperties:
1) Make the code more linearly readable by separating out handling of important and non-important properties.
2) Eliminate one BitArray instance (reduces hot memory so more cache friendly).
3) Remove O(n2) behavior caused by scanning for and removing previously encountered definitions of each property.
The key algorithmic change is to add properties in decreasing precedence:
a) Iterating once per (important, !important) so that important properties are visited first.
b) Reverse iteration of m_parsedProperties visits the properties in decreasing precedence.

Covered by loads of existing tests - getting CSS property precedence wrong results in too many errors to list.
In particular fast/css contains test cases for important corner cases like duplicated important properties.

  • css/CSSParser.cpp:

(WebCore::CSSParser::createStylePropertySet):

  • css/CSSProperty.h:

Add vector traits so that CSSProperty can just be memset by vector without calling constructor.

16:52 Changeset [118711] by morrita@google.com
  • 6 edits
    2 adds in trunk

Can't edit <input> elements with :first-letter
https://bugs.webkit.org/show_bug.cgi?id=87615

Reviewed by Kent Tamura.

A check using canHaveGeneratedChildren() should cover not only
button and menulist, but also RenderTextControl.
This change pulles canHaveGeneratedChildren() up
from RenderDeprecatedFlexibleBox to RenderObject,
and lets RenderTextControl override it.

Test: fast/forms/input-first-letter-edit.html

  • rendering/RenderBlock.cpp:

(WebCore):
(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::updateFirstLetter):

  • rendering/RenderBlock.h: Removed a static function canHaveGeneratedChildren()

(RenderBlock):

  • rendering/RenderDeprecatedFlexibleBox.h:
  • rendering/RenderObject.cpp:

(WebCore):
(WebCore::RenderObject::canHaveGeneratedChildren): Added.

  • rendering/RenderObject.h:

(RenderObject):

  • rendering/RenderTextControl.h:
15:49 Changeset [118710] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

[BlackBerry] Add support for layers with scale invariant size
https://bugs.webkit.org/show_bug.cgi?id=87601

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

To support layers that have a "floating" appearance, i.e. don't change size
when the web page is drawn at a different scale, we add a new layer property
named "sizeIsScaleInvariant".

The anchor position will still be given in document coordinates for these
"floating" layers, so this is well suited for interface elements like selection
handles whose size is always the same but move with the web page contents.

PR #156812

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::setDrawTransform):
(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::drawMissingTextures):

  • platform/graphics/blackberry/LayerCompositingThread.h:

(LayerCompositingThread):

  • platform/graphics/blackberry/LayerCompositingThreadClient.h:

(LayerCompositingThreadClient):
(WebCore::LayerCompositingThreadClient::drawMissingTextures):

  • platform/graphics/blackberry/LayerData.h:

(WebCore::LayerData::LayerData):
(WebCore::LayerData::sizeIsScaleInvariant):
(LayerData):

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::LayerRenderer):
(WebCore::LayerRenderer::compositeLayers):
(WebCore::LayerRenderer::updateLayersRecursive):
(WebCore::LayerRenderer::compositeLayersRecursive):

  • platform/graphics/blackberry/LayerRenderer.h:

(LayerRenderer):

  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore::LayerTiler::updateTextureContentsIfNeeded):
(WebCore::LayerTiler::drawTextures):
(WebCore::LayerTiler::drawMissingTextures):
(WebCore::LayerTiler::drawTexturesInternal):

  • platform/graphics/blackberry/LayerTiler.h:

(LayerTiler):

  • platform/graphics/blackberry/LayerWebKitThread.h:

(WebCore::LayerWebKitThread::setSizeIsScaleInvariant):
(LayerWebKitThread):

15:22 Changeset [118709] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[BlackBerry] Make it possible to manipulate layers on the compositing thread
https://bugs.webkit.org/show_bug.cgi?id=87602

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

Normally, layers are manipulated on the WebKit thread, and the changes are
synced to the compositing thread during the next accelerated compositing commit
operation.

However, for overlay layers the ability to manipulate layers on the compositing
thread is necessary for adequate user interface responsiveness.

Two mechanisms are added:

  1. For a layer with a WebKit-thread counterpart, you can temporarily override

attributes or add animations whose output override attributes.

  1. For a layer with no WebKit-thread counterpart, you can now directly set the

compositing thread values for attributes. If you attempt to do this for layers
that do have a WebKit-thread counterpart, the compositing thread values will
be overwritten at the time of the next commit, which makes the override
mechanism more useful there.

PR #156812

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::addSublayer):
(WebCore):
(WebCore::LayerCompositingThread::updateAnimations):
(WebCore::LayerCompositingThread::removeAnimation):
(WebCore::LayerCompositingThread::override):
(WebCore::LayerCompositingThread::clearOverride):

  • platform/graphics/blackberry/LayerCompositingThread.h:

(LayerOverride):
(WebCore::LayerOverride::create):
(WebCore::LayerOverride::setPosition):
(WebCore::LayerOverride::setAnchorPoint):
(WebCore::LayerOverride::setBounds):
(WebCore::LayerOverride::setTransform):
(WebCore::LayerOverride::setOpacity):
(WebCore::LayerOverride::addAnimation):
(WebCore::LayerOverride::LayerOverride):
(WebCore):
(LayerCompositingThread):
(WebCore::LayerCompositingThread::setPosition):
(WebCore::LayerCompositingThread::setAnchorPoint):
(WebCore::LayerCompositingThread::setBounds):
(WebCore::LayerCompositingThread::setSizeIsScaleInvariant):
(WebCore::LayerCompositingThread::setTransform):
(WebCore::LayerCompositingThread::setOpacity):
(WebCore::LayerCompositingThread::setNeedsTexture):

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::LayerWebKitThread):
(WebCore::LayerWebKitThread::commitOnCompositingThread):

  • platform/graphics/blackberry/LayerWebKitThread.h:

(LayerWebKitThread):
(WebCore::LayerWebKitThread::clearOverride):

15:22 Changeset [118708] by jesus@webkit.org
  • 4 edits in trunk/LayoutTests

Flaky tests in fast/profiler/
https://bugs.webkit.org/show_bug.cgi?id=84102

Unreviewed gardening.

Tests fast/profiler/stop-profiling-after-setTimeout.html and
fast/profiler/dead-time.html were still failing after
https://bugs.webkit.org/show_bug.cgi?id=42328 . Mac and chromium
already skip these tests.

  • platform/efl/Skipped:
  • platform/gtk/test_expectations.txt:
  • platform/qt/Skipped:
14:55 Changeset [118707] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[chromium] Only increase size of Combo Box Options when displayed on touch screen
https://bugs.webkit.org/show_bug.cgi?id=85921

Patch by Rob Flack <flackr@chromium.org> on 2012-05-28
Reviewed by Adam Barth.

Adds a flag to set whether the current device is a touch screen, independent of whether touch events are supported and use this for the combo box sizing.

Source/WebCore:

No new tests as this is a flag change and covered by existing tests: WebKit/chromium/tests/PopupMenuTest.cpp

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setDeviceSupportsTouch):
(WebCore::Settings::deviceSupportsTouch):
(Settings):

  • platform/chromium/PopupListBox.cpp:

(WebCore::PopupListBox::getRowHeight):

  • platform/chromium/PopupListBox.h:

(PopupContainerSettings):

  • platform/chromium/PopupMenuChromium.cpp:

(WebCore::PopupMenuChromium::show):

Source/WebKit/chromium:

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::defaultDeviceScaleFactor):
(WebKit):
(WebKit::WebSettingsImpl::setDeviceSupportsTouch):
(WebKit::WebSettingsImpl::deviceSupportsTouch):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::applyAutofillSuggestions):

  • tests/PopupMenuTest.cpp:

(WebKit::SelectPopupMenuTest::SetUp):
(WebKit::SelectPopupMenuTest::TearDown):
(SelectPopupMenuTest):
(WebKit::TEST_F):

14:20 Changeset [118706] by commit-queue@webkit.org
  • 8 edits
    1 add in trunk/Source/WebCore

[BlackBerry] Make custom compositing thread layers more flexible
https://bugs.webkit.org/show_bug.cgi?id=87600

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

Introduce a LayerCompositingThreadClient that's used to fine tune the
behaviour of custom layers. Let the LayerTiler be a
LayerCompositingThreadClient and thus decouple it from
LayerCompositingThread. Adjust method signatures to allow a one-to-many
relationship between Client and Layer.

Remove the old LayerCompositingThread::drawCustom() in favour of this new
Client interface.

PR #156812

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::create):
(WebCore::LayerCompositingThread::LayerCompositingThread):
(WebCore::LayerCompositingThread::~LayerCompositingThread):
(WebCore::LayerCompositingThread::deleteTextures):
(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::hasMissingTextures):
(WebCore::LayerCompositingThread::drawMissingTextures):
(WebCore::LayerCompositingThread::updateTextureContentsIfNeeded):
(WebCore::LayerCompositingThread::bindContentsTexture):
(WebCore::LayerCompositingThread::setVisible):
(WebCore::LayerCompositingThread::scheduleCommit):

  • platform/graphics/blackberry/LayerCompositingThread.h:

(WebCore):
(LayerCompositingThread):

  • platform/graphics/blackberry/LayerCompositingThreadClient.h: Added.

(WebCore):
(LayerCompositingThreadClient):
(WebCore::LayerCompositingThreadClient::~LayerCompositingThreadClient):
(WebCore::LayerCompositingThreadClient::bindContentsTexture):
(WebCore::LayerCompositingThreadClient::hasMissingTextures):
(WebCore::LayerCompositingThreadClient::drawMissingTextures):
(WebCore::LayerCompositingThreadClient::scheduleCommit):

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::drawDebugBorder):

  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore::LayerTiler::LayerTiler):
(WebCore::LayerTiler::layerCompositingThreadDestroyed):
(WebCore::LayerTiler::layerVisibilityChanged):
(WebCore::LayerTiler::uploadTexturesIfNeeded):
(WebCore::LayerTiler::deleteTextures):
(WebCore::LayerTiler::scheduleCommit):
(WebCore):
(WebCore::LayerTiler::bindContentsTexture):

  • platform/graphics/blackberry/LayerTiler.h:

(LayerTiler):
(WebCore::LayerTiler::hasMissingTextures):

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::LayerWebKitThread):

  • platform/graphics/blackberry/LayerWebKitThread.h:

(LayerWebKitThread):

13:00 Changeset [118705] by jesus@webkit.org
  • 95 edits in trunk

WebKitTestRunner needs to support layoutTestController.setJavaScriptProfilingEnabled
https://bugs.webkit.org/show_bug.cgi?id=42328

Reviewed by Eric Seidel.

.:

  • Source/autotools/symbols.filter: Added needed symbols for GTK build.

Source/WebCore:

Add setJavaScriptProfilingEnabled() to window.internals.settings. No new tests, but this
change will allow more tests to run in WebKitTestRunner and DRT for ports that weren't
implementing this function before.
This patch also refactors InspectorController::enableProfiler() and
InspectorController::disableProfiler() to InspectorController::setProfilerEnabled(bool).

  • WebCore.exp.in:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::profilerEnabled):
(WebCore::InspectorController::setProfilerEnabled):

  • inspector/InspectorController.h:

(InspectorController):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::restoreTo):
(WebCore::InternalSettings::setJavaScriptProfilingEnabled):
(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:

Source/WebKit/chromium:

Removed private APIs that were only being used by DRT.

  • public/WebDevToolsAgent.h:

(WebDevToolsAgent):

  • src/WebDevToolsAgentImpl.cpp:
  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

Source/WebKit/efl:

Removed unneeded setJavaScriptProfilingEnabled function from DRT after its
move to windows.internals.settings.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:
  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Source/WebKit/gtk:

  • webkit/webkitwebinspector.cpp:

(webkit_web_inspector_set_property):

Source/WebKit/mac:

  • WebInspector/WebInspector.mm:

(-setJavaScriptProfilingEnabled:):

Source/WebKit/qt:

Removed unneeded setJavaScriptProfilingEnabled function from DRT after its
move to windows.internals.settings.

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:
  • WebCoreSupport/DumpRenderTreeSupportQt.h:

Source/WebKit/win:

(WebInspector::setJavaScriptProfilingEnabled):

Source/WebKit2:

Removed unneeded setJavaScriptProfilingEnabled function from WTR after its
move to windows.internals.settings.

  • WebProcess/InjectedBundle/API/c/WKBundleInspector.cpp:
  • WebProcess/InjectedBundle/API/c/WKBundleInspector.h:
  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::setJavaScriptProfilingEnabled):

  • win/WebKit2.def:

Tools:

Removed unneeded setJavaScriptProfilingEnabled function from DRT after its
move to windows.internals.settings.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
  • DumpRenderTree/chromium/DRTDevToolsAgent.cpp:
  • DumpRenderTree/chromium/DRTDevToolsAgent.h:

(DRTDevToolsAgent):

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):

  • DumpRenderTree/chromium/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetWebViewToConsistentStateBeforeTesting):

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:
  • DumpRenderTree/qt/LayoutTestControllerQt.h:

(LayoutTestController):

  • DumpRenderTree/win/DumpRenderTree.cpp:

(resetWebViewToConsistentStateBeforeTesting):

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:
  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
  • WebKitTestRunner/InjectedBundle/LayoutTestController.h:

(LayoutTestController):

LayoutTests:

Updated tests to use windows.internals instead of layoutTestController.

  • fast/profiler/anonymous-event-handler.html:
  • fast/profiler/anonymous-function-called-from-different-contexts.html:
  • fast/profiler/anonymous-function-calls-built-in-functions.html:
  • fast/profiler/anonymous-function-calls-eval.html:
  • fast/profiler/anonymous-functions-with-display-names.html:
  • fast/profiler/apply.html:
  • fast/profiler/built-in-function-calls-anonymous.html:
  • fast/profiler/built-in-function-calls-user-defined-function.html:
  • fast/profiler/call-register-leak.html:
  • fast/profiler/call.html:
  • fast/profiler/calling-the-function-that-started-the-profiler-from-another-scope.html:
  • fast/profiler/compare-multiple-profiles.html:
  • fast/profiler/constructor.html:
  • fast/profiler/dead-time.html:
  • fast/profiler/document-dot-write.html:
  • fast/profiler/event-handler.html:
  • fast/profiler/execution-context-and-eval-on-same-line.html:
  • fast/profiler/inline-event-handler.html:
  • fast/profiler/many-calls-in-the-same-scope.html:
  • fast/profiler/multiple-and-different-scoped-anonymous-function-calls.html:
  • fast/profiler/multiple-and-different-scoped-function-calls.html:
  • fast/profiler/multiple-anonymous-functions-called-from-the-same-function.html:
  • fast/profiler/multiple-frames.html:
  • fast/profiler/named-functions-with-display-names.html:
  • fast/profiler/nested-anonymous-functon.html:
  • fast/profiler/nested-start-and-stop-profiler.html:
  • fast/profiler/no-execution-context.html:
  • fast/profiler/one-execution-context.html:
  • fast/profiler/profile-calls-in-included-file.html:
  • fast/profiler/profile-with-no-title.html:
  • fast/profiler/profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html:
  • fast/profiler/profiling-from-a-nested-location.html:
  • fast/profiler/simple-event-call.html:
  • fast/profiler/simple-no-level-change.html:
  • fast/profiler/start-and-stop-profiler-multiple-times.html:
  • fast/profiler/start-and-stop-profiling-in-the-same-function.html:
  • fast/profiler/start-but-dont-stop-profiling.html:
  • fast/profiler/stop-profiling-after-setTimeout.html:
  • fast/profiler/stop-then-function-call.html:
  • fast/profiler/throw-exception-from-eval.html-disabled:
  • fast/profiler/two-execution-contexts.html:
  • fast/profiler/user-defined-function-calls-built-in-functions.html:
  • fast/profiler/window-dot-eval.html:
  • inspector/profiler/cpu-profiler-profiling-without-inspector.html:
  • platform/wk2/Skipped:
12:57 Changeset [118704] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Always create a compositor
https://bugs.webkit.org/show_bug.cgi?id=87598

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

There will likely be compositing layers either due to web content or
due to overlays.

Defer initialization of OpenGL objects (i.e., delay creation of the
LayerRenderer object) until we actually need to draw and there are such
layers, to avoid initializing OpenGL in the unlikely case that there
are no compositing layers or overlay layers.

PR #156811

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::createCompositor):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
(BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
(BlackBerry::WebKit::WebPageCompositorPrivate::render):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):

  • Api/WebPageCompositor_p.h:

(WebPageCompositorPrivate):

12:37 Changeset [118703] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Crash on incomplete :not().
https://bugs.webkit.org/show_bug.cgi?id=86673

Patch by Yong Li <yoli@rim.com> on 2012-05-28
Reviewed by Antti Koivisto.

Source/WebCore:

Add back null-checks for incomplete :not() class
which were dropped by r81845.

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForOneSelector):
(WebCore::CSSSelector::selectorText):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):
(WebCore::SelectorChecker::determineLinkMatchType):

LayoutTests:

Add a test case that makes CSS parser create incomplete
:not selector.

  • fast/css/crash-on-incomplete-not.html: Added.
  • fast/css/crash-on-incomplete-not-expected.txt: Added.
12:21 Changeset [118702] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Dangling pointer in WebPagePrivate::setCompositor() message
https://bugs.webkit.org/show_bug.cgi?id=87590

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

A crash would be seen in GuardedPointerBase::getWithGuardLocked when
attempting to unpickle and execute serialized call to setCompositor.

The problem was that the message had been created with a dangling
pointer as the target. The web page failed to inform its compositor
that it was being destroyed due to an early return in
WebPagePrivate::destroyCompositor.

The root cause was that a method called "destroyCompositor" was being
called in two situations, when navigating to a new page as well as when
actually deleting the web page. And in one case, we really only wanted
to free up some memory by clearing textures, while in the other case we
really did want to destroy the compositor.

Fixed by calling a method to release textures when that's what we want
to do, and calling a method to destroy the compositor when that's what
we want to do, and making that latter method unconditional.

Reviewed internally by Jeff Rogers.

PR #156765

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):
(BlackBerry::WebKit::WebPagePrivate::destroyCompositor):

11:53 Changeset [118701] by commit-queue@webkit.org
  • 8 edits
    3 adds in trunk/Source/WebKit

[BlackBerry] Add a default tap highlight
https://bugs.webkit.org/show_bug.cgi?id=87569

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

Source/WebKit:

Add DefaultTapHighlight to the build system

Reviewed internally by Mike Lattanzio and Mike Fenton.

PR #154329

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

We used to require the embedder to implement tap highlight drawing.
Now, a default tap highlight, implemented using the recently added
accelerated compositing overlay layer support, can be used instead.

The tap highlight appears instantly but fades out when hidden.

The default tap highlight can be overridden using the new
WebPage::setTapHighlight() method.

Reviewed internally by Mike Lattanzio and Mike Fenton.

PR #154329

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPage::tapHighlight):
(WebKit):
(BlackBerry::WebKit::WebPage::setTapHighlight):

  • Api/WebPage.h:

(WebKit):

  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebCore):
(WebPagePrivate):

  • Api/WebTapHighlight.h: Added.

(WebKit):

  • WebKitSupport/DefaultTapHighlight.cpp: Added.

(WebKit):
(BlackBerry::WebKit::fadeAnimationName):
(BlackBerry::WebKit::DefaultTapHighlight::DefaultTapHighlight):
(BlackBerry::WebKit::DefaultTapHighlight::~DefaultTapHighlight):
(BlackBerry::WebKit::DefaultTapHighlight::draw):
(BlackBerry::WebKit::DefaultTapHighlight::hide):
(BlackBerry::WebKit::DefaultTapHighlight::notifySyncRequired):
(BlackBerry::WebKit::DefaultTapHighlight::paintContents):

  • WebKitSupport/DefaultTapHighlight.h: Added.

(WebKit):
(DefaultTapHighlight):
(BlackBerry::WebKit::DefaultTapHighlight::create):
(BlackBerry::WebKit::DefaultTapHighlight::notifyAnimationStarted):
(BlackBerry::WebKit::DefaultTapHighlight::showDebugBorders):
(BlackBerry::WebKit::DefaultTapHighlight::showRepaintCounter):
(BlackBerry::WebKit::DefaultTapHighlight::contentsVisible):

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::drawTapHighlight):

11:33 Changeset [118700] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

FileWriterSync binding should have no static table
https://bugs.webkit.org/show_bug.cgi?id=87645

Reviewed by George Staikos.

FileWriterSync could be used in filesystem FileWriter in worker thread, so we should add ProgressEvent in idl file.

Covered by existing test: fast/filesystem/workers/sync-operations.html.

  • Modules/filesystem/FileWriterSync.idl:
11:29 Changeset [118699] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[BlackBerry] Add an overlay layer
https://bugs.webkit.org/show_bug.cgi?id=87567

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Antonio Gomes.

The overlay layer allows us to have compositing layers even though the
web page is not currently using accelerated compositing.

These layers can be used to implement tap highlight, inspector overlay
and more.

Source/WebCore:

The WebCore changes support the overlay layer functionality in WebKit
by making it possible to add animations from the compositing thread
without them being instantly overwritten during the next commit.

Also a new custom layer type is added, which allow an overlay layer to
draw itself using raw OpenGL calls. An instance of a custom subclass of
LayerCompositingThread must be provided when creating the
LayerWebKitThread. Then, the custom layer can be used as the content
layer of a GraphicsLayer, or by itself.

Reviewed internally by Filip Spacek.

PR #154335

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::~LayerCompositingThread):
(WebCore::LayerCompositingThread::deleteTextures):
(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::drawMissingTextures):
(WebCore::LayerCompositingThread::updateTextureContentsIfNeeded):
(WebCore::LayerCompositingThread::setVisible):
(WebCore::LayerCompositingThread::scheduleCommit):

  • platform/graphics/blackberry/LayerCompositingThread.h:

(WebCore::LayerCompositingThread::addAnimation):
(WebCore::LayerCompositingThread::setRunningAnimations):
(WebCore::LayerCompositingThread::setSuspendedAnimations):
(LayerCompositingThread):
(WebCore::LayerCompositingThread::drawCustom):

  • platform/graphics/blackberry/LayerData.h:

(LayerData):

  • platform/graphics/blackberry/LayerWebKitThread.cpp:

(WebCore::LayerWebKitThread::LayerWebKitThread):
(WebCore):
(WebCore::LayerWebKitThread::~LayerWebKitThread):
(WebCore::LayerWebKitThread::updateTextureContentsIfNeeded):
(WebCore::LayerWebKitThread::startAnimations):
(WebCore::LayerWebKitThread::commitOnCompositingThread):
(WebCore::LayerWebKitThread::setNeedsDisplayInRect):
(WebCore::LayerWebKitThread::setNeedsDisplay):
(WebCore::LayerWebKitThread::setIsMask):
(WebCore::LayerWebKitThread::setRunningAnimations):
(WebCore::LayerWebKitThread::setSuspendedAnimations):

  • platform/graphics/blackberry/LayerWebKitThread.h:

(LayerWebKitThread):

Source/WebKit/blackberry:

Reviewed internally by Filip Spacek.

PR #154335

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::scheduleRootLayerCommit):
(BlackBerry::WebKit::WebPagePrivate::overlayLayer):
(WebKit):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayer):
(BlackBerry::WebKit::WebPagePrivate::commitRootLayerIfNeeded):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::setOverlayLayer):
(WebKit):
(BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
(BlackBerry::WebKit::WebPageCompositorPrivate::render):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):

  • Api/WebPageCompositor_p.h:

(BlackBerry::WebKit::WebPageCompositorPrivate::overlayLayer):
(WebPageCompositorPrivate):

  • Api/WebPage_p.h:

(WebPagePrivate):

11:17 Changeset [118698] by leo.yang@torchmobile.com.cn
  • 2 edits in trunk/Source/WebCore

ProgressEvent JSC binding should have no static table
https://bugs.webkit.org/show_bug.cgi?id=87365

Reviewed by George Staikos.

ProgressEvent could be used in filesystem FileWriter in worker thread, so we should add ProgressEvent in idl file.

Covered by existing test: fast/filesystem/workers/file-writer-events.html.

  • dom/ProgressEvent.idl:
10:48 Changeset [118697] by noam.rosenthal@nokia.com
  • 3 edits in trunk/Source/WebKit2

Remove unused argument coders for animation
https://bugs.webkit.org/show_bug.cgi?id=87435

Reviewed by Sam Weinig.

Left the used argument coders only, behind a proper USE(UI_SIDE_COMPOSITING) flag.

  • Shared/WebCoreArgumentCoders.cpp:

(CoreIPC):

  • Shared/WebCoreArgumentCoders.h:
10:29 Changeset [118696] by commit-queue@webkit.org
  • 12 edits in trunk/Source

[BlackBerry] Update WebPageCompositor::render() API
https://bugs.webkit.org/show_bug.cgi?id=87565

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

Source/WebCore:

The new API allows the embedder to specify the root transform and many
OpenGL related parameters.

Also refactor the code to allow several sets of layers to be rendered,
and to allow interleaving the rendering of layers with rendering of
buffers and checkerboard.

Reviewed internally by Filip Spacek.

PR #154334

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::drawTextures):
(WebCore::LayerCompositingThread::drawSurface):

  • platform/graphics/blackberry/LayerRenderer.cpp:

(WebCore::LayerRenderer::orthoMatrix):
(WebCore::LayerRenderer::LayerRenderer):
(WebCore::LayerRenderer::prepareFrame):
(WebCore):
(WebCore::LayerRenderer::setViewport):
(WebCore::LayerRenderer::compositeLayers):
(WebCore::LayerRenderer::compositeBuffer):
(WebCore::LayerRenderer::drawCheckerboardPattern):
(WebCore::LayerRenderer::drawLayersOnSurfaces):
(WebCore::LayerRenderer::prepareFrameRecursive):
(WebCore::LayerRenderer::updateLayersRecursive):
(WebCore::LayerRenderer::compositeLayersRecursive):
(WebCore::LayerRenderer::updateScissorIfNeeded):
(WebCore::LayerRenderingResults::addHolePunchRect):

  • platform/graphics/blackberry/LayerRenderer.h:

(LayerRenderer):

Source/WebKit/blackberry:

The new API allows the embedder to specify the root transform and many
OpenGL related parameters to be used when rendering the web page.

To honor the transform, we have to implement a way to composite the
BackingStore output using a generic transform. This method,
BackingStorePrivate::compositeContents(), uses a strategy that differs
from blitContents(), because that one is optimized for software
blitting, while this one is optimized for GPU rendering. Specifically,
instead of drawing the checkerboard first, and the rendered subregions
of the tile afterward, we draw the whole tile in one call, and then
draw checkered regions on top, if any.

Removed the blit generation condvar from the new code paths for drawing
BackingStore output using a transform, since the condvar is ineffective
in preventing flicker when we're not in charge of swapping the window.
Instead, another synchronization solution will be implemented in the
future.

Reviewed internally by Filip Spacek.
Some parts reviewed internally by Jacky Jiang and others by
Mike Lattanzio.

PR #151887, #154334

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::render):
(BlackBerry::WebKit::BackingStorePrivate::blitContents):
(WebKit):
(BlackBerry::WebKit::BackingStorePrivate::compositeContents):

  • Api/BackingStore_p.h:

(WebCore):
(BackingStorePrivate):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::setContext):
(BlackBerry::WebKit::WebPageCompositorPrivate::setRootLayer):
(BlackBerry::WebKit::WebPageCompositorPrivate::prepareFrame):
(BlackBerry::WebKit::WebPageCompositorPrivate::render):
(BlackBerry::WebKit::WebPageCompositorPrivate::drawLayers):
(BlackBerry::WebKit::WebPageCompositor::prepareFrame):
(BlackBerry::WebKit::WebPageCompositor::render):

  • Api/WebPageCompositor.h:
  • Api/WebPageCompositorClient.h:
  • Api/WebPageCompositor_p.h:

(WebPageCompositorPrivate):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:
09:59 Changeset [118695] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Adjust expectations for fast/layers/clip-rects-assertion-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=87671

Unreviewed gardening.
Temporarily adds "MISSING" for this test.

  • platform/chromium/test_expectations.txt:
09:54 Changeset [118694] by lforschler@apple.com
  • 2 edits in branches/safari-536-branch/Source/WebCore

Merged r118399 -> <rdar://problem/11527190>

09:52 Changeset [118693] by lforschler@apple.com
  • 12 edits in branches/safari-536-branch

Merged r118397 -> <rdar://problem/11024330>

09:49 Changeset [118692] by lforschler@apple.com
  • 5 edits
    4 copies in branches/safari-536-branch

Merged r118039 -> <rdar://problem/11348396>

09:41 Changeset [118691] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] http/tests/cache/cancel-in-progress-load.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=87657

Unreviewed gardening.
It should be "MISSING" rather than "IMAGE" (fixes r118683).

  • platform/chromium/test_expectations.txt:
09:28 Changeset [118690] by bulach@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Adds missing expectation after r118577
https://bugs.webkit.org/show_bug.cgi?id=87670

Unreviewed gardening.
A few baselines were already added by r118584. Adds baseline for Windows.

  • platform/chromium-win/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
09:23 Changeset [118689] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Plumb through the return value of makeCurrent to caller
https://bugs.webkit.org/show_bug.cgi?id=87564

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Rob Buis.

This way the caller can take appropriate action if makeCurrent fails,
for example because we're running out of memory.

Reviewed internally by George Staikos.

PR #149721

  • WebKitSupport/GLES2Context.cpp:

(BlackBerry::WebKit::GLES2Context::makeCurrent):

09:22 Changeset [118688] by antti@apple.com
  • 3 edits
    2 adds in trunk

REGRESSION(r96517): Attribute selector fails to match dynamically modified style attribute
https://bugs.webkit.org/show_bug.cgi?id=87349

Source/WebCore:

Reviewed by Andreas Kling.

Selector fast path does not trigger lazy style attribute generation. Since attribute selectors matching
style attribute are rare, disallow them from the fast path rather than making it more branchy.

Test: fast/css/dynamic-style-attribute-query.html

  • css/SelectorChecker.cpp:

(WebCore::isFastCheckableMatch):

LayoutTests:

Reviewed by Andreas Kling.

  • fast/css/dynamic-style-attribute-query-expected.txt: Added.
  • fast/css/dynamic-style-attribute-query.html: Added.
09:05 Changeset [118687] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] [V8] Layout Test fast/js/string-replace-2.html failing following 11594 => 11648 v8 update
https://bugs.webkit.org/show_bug.cgi?id=87423

Unreviewed gardening.

We have rolled v8 and we can now set the expectation for both debug and release back to TEXT.

  • platform/chromium/test_expectations.txt:
08:57 Changeset [118686] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
08:52 Changeset [118685] by commit-queue@webkit.org
  • 16 edits in trunk

Web Inspector: Expose function (closure) scopes in remote protocol
https://bugs.webkit.org/show_bug.cgi?id=86861

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

Source/WebCore:

A data transfer from V8's FunctionMirror via DebuggerScript.js via InjectedScriptHost is built.
Scope field is added to protocol declaration similar to scopes of stack call frame.
Test for function details is extended.
JSC code binging got fixme for implemting the corresponding feature.

  • bindings/js/JSInjectedScriptHostCustom.cpp:

(WebCore::JSInjectedScriptHost::functionDetails):

  • bindings/v8/DebuggerScript.js:
  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::functionScopes):
(WebCore):

  • bindings/v8/ScriptDebugServer.h:

(ScriptDebugServer):

  • bindings/v8/custom/V8InjectedScriptHostCustom.cpp:

(WebCore::V8InjectedScriptHost::functionDetailsCallback):

  • inspector/InjectedScriptHost.cpp:

(WebCore):
(WebCore::InjectedScriptHost::scriptDebugServer):

  • inspector/InjectedScriptHost.h:

(WebCore):
(WebCore::InjectedScriptHost::init):
(InjectedScriptHost):

  • inspector/InjectedScriptSource.js:

(.):

  • inspector/Inspector.json:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

LayoutTests:

Test for function details now checks scopes.

  • inspector/debugger/function-details-expected.txt:
  • inspector/debugger/function-details.html:
  • platform/chromium/inspector/debugger/function-details-expected.txt:
08:45 Changeset [118684] by bulach@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

[chromium] Rebaseline following r118598
https://bugs.webkit.org/show_bug.cgi?id=87669

Unreviewed gardening.

In chromium we print a prefix "line 1:" on one console message.

  • platform/chromium/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt: Added.
  • platform/chromium/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt: Added.
08:07 Changeset [118683] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] http/tests/cache/cancel-in-progress-load.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=87657

Unreviewed gardening.

Adds PASS and IMAGE expectations.

  • platform/chromium/test_expectations.txt:
08:04 Changeset [118682] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Add a constructor to create a Path from an SkPath
https://bugs.webkit.org/show_bug.cgi?id=87566

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-28
Reviewed by Antonio Gomes.

Skia allows the creation of more complex paths than WebCore would
allow. This will be used in the BlackBerry port to implement a default
tap highlight appearance.

Reviewed internally by Mike Lattanzio.

PR #154329

  • platform/graphics/Path.h:

(Path):

  • platform/graphics/skia/PathSkia.cpp:

(WebCore):
(WebCore::Path::Path):

07:54 Changeset [118681] by alexis.menard@openbossa.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for Mac on Lion.

  • inspector/CodeGeneratorInspector.py:
06:49 Changeset [118680] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] http/tests/cache/cancel-in-progress-load.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=87657

Unreviewed gardening.

r118618 added this new test but it's been flaky in chromium.

  • platform/chromium/test_expectations.txt:
06:23 Changeset [118679] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Baseline compositing/geometry/composited-in-columns.html
https://bugs.webkit.org/show_bug.cgi?id=87653

Unreviewed gardening.

r118567 introduced a new test. Chromium is positioning the layers
a few pixels off.
Set the baseline for IMAGE+TEXT temporarily.

  • platform/chromium/test_expectations.txt:
06:16 Changeset [118678] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Build fix for the Android bot, set CXX_target at gyp generation-time
https://bugs.webkit.org/show_bug.cgi?id=87649

Unreviewed build fix.

Chromium Android builds were broken because v8 tried to compile files
for target with the "-m32" flag. This was caused by a v8 check falling
back to using "which g++" to find the right compiler, whereas it should
have used the $CXX_target environment variable. This isn't being set
for Android builds.

  • gyp_webkit: Set the CXX_target environment variable. Annotate the fix with a FIXME comment too.
05:50 Changeset [118677] by keishi@webkit.org
  • 12 edits in trunk/Source

Expose value localization function of HTMLInputElement
https://bugs.webkit.org/show_bug.cgi?id=84356

Reviewed by Kent Tamura.

Source/WebCore:

No new tests.

We want to localize the values that are defined in the datalist element.
This adds HTMLInputElement::localizeValue() which will localize a given
value.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::localizeValue):
(WebCore):
(WebCore::BaseDateAndTimeInputType::visibleValue):

  • html/BaseDateAndTimeInputType.h:

(BaseDateAndTimeInputType):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::localizeValue):
(WebCore):

  • html/HTMLInputElement.h:

(HTMLInputElement):

  • html/InputType.cpp:

(WebCore::InputType::localizeValue):
(WebCore):

  • html/InputType.h:

(InputType):

  • html/NumberInputType.cpp:

(WebCore::NumberInputType::localizeValue):
(WebCore):
(WebCore::NumberInputType::visibleValue):

  • html/NumberInputType.h:

(NumberInputType):

Source/WebKit/chromium:

  • public/WebInputElement.h:

(WebInputElement):

  • src/WebInputElement.cpp:

(WebKit::WebInputElement::localizeValue):
(WebKit):

05:38 Changeset [118676] by bulach@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] LayoutTestController needs DeferredFrameLoading flag
https://bugs.webkit.org/show_bug.cgi?id=87652

Unreviewed gardening.

r118631 introduced a new test and a new API on LayoutTestController
that we need to implement in chromium.
Skip the test temporarily.

  • platform/chromium/test_expectations.txt:
05:15 Changeset [118675] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

fast/tokenizer/entities-01.html & fast/tokenizer/entities-03.html need new baseline after r118672
https://bugs.webkit.org/show_bug.cgi?id=87648

Unreviewed gardening.

r118672 fixed a rendering bug with &AElig but did not update the
expected results for fast/tokenizer/entities-01.html and
fast/tokenizer/entities-03.html.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • fast/tokenizer/entities-01-expected.txt:
  • fast/tokenizer/entities-03-expected.txt:
05:09 Changeset [118674] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Test fix after r118670: saved timeline data may
not have DOM counters data and MemoryStatistics object should
take this into account.

  • inspector/front-end/MemoryStatistics.js:

(WebInspector.MemoryStatistics.prototype._onRecordAdded):

04:13 Changeset [118673] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r118580.
http://trac.webkit.org/changeset/118580
https://bugs.webkit.org/show_bug.cgi?id=87647

Caused webkit_unit_tests to crash on chromium. (Requested by
bulach on #webkit).

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

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::paint):
(WebCore::ContentLayerPainter::ContentLayerPainter):
(ContentLayerPainter):
(WebCore::ContentLayerChromium::createTextureUpdaterIfNeeded):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(UpdatableTile):
(WebCore::UpdatableTile::UpdatableTile):
(WebCore::TiledLayerChromium::updateTiles):

  • platform/graphics/chromium/TiledLayerChromium.h:

(TiledLayerChromium):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore::CCSettings::CCSettings):
(CCSettings):

03:23 Changeset [118672] by peter@chromium.org
  • 5 edits in trunk

&AElig doesn't get rendered as U+00C6
https://bugs.webkit.org/show_bug.cgi?id=87465

Reviewed by Adam Barth.

Source/WebCore:

The if-statement to check whether the first entry of a certain letter
already exists in the index used .get(). The very first alphabetical
entry is in position "0", which evaluates to false, causing the first
entry to be ignored. Instead, use a "x not in y" check here.

Also update WebCore.gyp to list the create-html-entity-table script as
an input for the action, to make sure the table will be recreated.

Test: html5lib/resources/entities02.dat

  • WebCore.gyp/WebCore.gyp:
  • html/parser/create-html-entity-table:

LayoutTests:

Test that the (current) first alphabetical entity in the named entity
table (&AElig, without a semi-colon) renders as expected.

  • html5lib/resources/entities02.dat:
03:21 Changeset [118671] by carlosgc@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Fix make distcheck.

  • GNUmakefile.list.am: Add missing header file.
03:20 Changeset [118670] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: dom counters graphs vanish on switching between timeline views
https://bugs.webkit.org/show_bug.cgi?id=87628

Reviewed by Vsevolod Vlasov.

MemoryStatistics object now listens to the TimelineModel events instead of being
populated by timeline panel. This behavior mathes that of the overview pane.

  • inspector/front-end/MemoryStatistics.js:

(WebInspector.MemoryStatistics.prototype.addTimlineEvent):

  • inspector/front-end/TimelinePanel.js:

(WebInspector.TimelinePanel.prototype._onTimelineEventRecorded):
(WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline):

03:19 Changeset [118669] by commit-queue@webkit.org
  • 2 edits in trunk/WebKitLibraries

Remove obsolete feature define ENABLE_3D_CANVAS from FeatureDefines.vsprops for windows
https://bugs.webkit.org/show_bug.cgi?id=87622

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-05-28
Reviewed by Eric Seidel.

Removed the ENABLE_3D_CANVAS from the property define as this is
obsolete since bug #53041

  • win/tools/vsprops/FeatureDefines.vsprops:
03:14 Changeset [118668] by bulach@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Buildfix: remove obsolete file from gypi.
https://bugs.webkit.org/show_bug.cgi?id=87643

Reviewed by no-reviewer.

Following http://trac.webkit.org/changeset/118610.
Removes reference to platform/graphics/gstreamer/ImageGStreamerCG.mm

  • WebCore.gypi:
03:12 Changeset [118667] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] fast/dom/beforeload/image-object-before-load* need to be skipped after r118618
https://bugs.webkit.org/show_bug.cgi?id=87632

Unreviewed EFL gardening.
fast/dom/beforeload/image-object-before-load* need to be skipped after
r118618. The issue will be addressed in Bug 87631.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • platform/efl/test_expectations.txt:
03:07 Changeset [118666] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] http/tests/appcache/abort-cache* are flaky and should be skipped
https://bugs.webkit.org/show_bug.cgi?id=87634

Unreviewed EFL gardening. Aborting application cache downloads is
flaky on EFL port so we need to skip the corresponding test cases for
now.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • platform/efl/test_expectations.txt:
02:54 Changeset [118665] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Move input element's internal spinner layout tests to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=87629

Unreviewed EFL gardening.

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-28

  • platform/efl/Skipped:
  • platform/efl/test_expectations.txt:
02:54 Changeset [118664] by morrita@google.com
  • 3 edits in trunk/Source/WebCore

HTMLFormControlElement::m_validationMessage shouldn't be cleared on detach()
https://bugs.webkit.org/show_bug.cgi?id=87608

Reviewed by Kent Tamura.

Moved m_validationMessage clearance from detach() to removedFrom() and
remove detach().

No new tests. This change has no visible difference. Upcoming changes rely on this though.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::removedFrom):

02:49 Changeset [118663] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

[EFL] Unreviewed EFL gardening after r118585
https://bugs.webkit.org/show_bug.cgi?id=87621

Unreviewed EFL Gardening.

Two contentSecurityPolicy tests need expectation for EFL port after
r118585 due to line numbers not being printed. Mac and GTK port are
already doing the same.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • platform/efl/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt: Added.
  • platform/efl/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt: Added.
02:44 Changeset [118662] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: "Record CPU profile" button doesn't change its state after finishing profiling
https://bugs.webkit.org/show_bug.cgi?id=87624

Reviewed by Vsevolod Vlasov.

Keep record button state in sync with the current profiling state.

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfilesPanel.prototype.toggleRecordButton):

02:38 Changeset [118661] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Test added in r118577 is failing and should be skipped
https://bugs.webkit.org/show_bug.cgi?id=87620

Unreviewed EFL gardening. Skipping new test introduced in r118577
which is failing on our port.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • platform/efl/test_expectations.txt:
02:14 Changeset [118660] by morrita@google.com
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed Mac Chromium build fix.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::allowStyleScoped):

02:14 Changeset [118659] by zandobersek@gmail.com
  • 7 edits in trunk/Source/WebCore

Unreviewed, rolling out r118650.
http://trac.webkit.org/changeset/118650
https://bugs.webkit.org/show_bug.cgi?id=87639

Patch caused massive failures throughout the builders
(Requested by zdobersek on #webkit).

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

  • css/MediaQuery.cpp:

(WebCore):
(WebCore::MediaQuery::serialize):
(WebCore::MediaQuery::MediaQuery):
(WebCore::MediaQuery::cssText):

  • css/MediaQuery.h:

(WebCore::MediaQuery::expressions):
(WebCore::MediaQuery::mediaType):
(MediaQuery):
(WebCore::MediaQuery::copy):

  • css/MediaQueryEvaluator.cpp:

(WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
(WebCore::MediaQueryEvaluator):
(WebCore::MediaQueryEvaluator::eval):
(WebCore::aspect_ratioMediaFeatureEval):
(WebCore::device_aspect_ratioMediaFeatureEval):
(WebCore::transform_3dMediaFeatureEval):
(WebCore::view_modeMediaFeatureEval):
(WebCore::createFunctionMap):

  • css/MediaQueryEvaluator.h:

(WebCore):
(MediaQueryEvaluator):

  • css/StyleResolver.cpp:

(WebCore):
(WebCore::StyleResolver::collectMatchingRulesForList):

  • css/StyleResolver.h:

(MediaQueryResult):
(WebCore::MediaQueryResult::MediaQueryResult):
(WebCore):
(StyleResolver):

02:08 Changeset [118658] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] New tests added in r118567 should be skipped on EFL port
https://bugs.webkit.org/show_bug.cgi?id=87618

Unreviewed EFL gardening. Move the test added in r118567 to test
expectations since the EFL port lacks support for
LayoutTestController::layerTreeAsText.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-28

  • platform/efl/test_expectations.txt:
02:05 Changeset [118657] by gyuyoung.kim@samsung.com
  • 20 edits in trunk

Move allowRoundingHacks to Internals interface
https://bugs.webkit.org/show_bug.cgi?id=87328

Reviewed by Hajime Morita.

.:

  • Source/autotools/symbols.filter: Add allowRoundingHacks symbol filter.

Source/WebCore:

Add allowRoundingHacks function, because it is able to work in the
cross-port way by means of the Internals interface.

In addition, a function is added in order to restore default setting values.

No new tests, since we are improving here the infra-structure for testing
a specific method.

  • testing/Internals.cpp:

(WebCore::Internals::reset):
(WebCore):
(WebCore::Internals::resetDefaultsToConsistentValues):
(WebCore::Internals::allowRoundingHacks):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def: Add setAllowsRoundingHacks() to symbol filter.

Tools:

Remove allowRoundingHacks functions, because it is able to work in the
cross-port way through the Internals interface.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:
  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
  • DumpRenderTree/win/LayoutTestControllerWin.cpp:
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:

LayoutTests:

Invoke allowRoundingHacks function from internals, because it is able to work in the
cross-port way via the Internals interface.

  • platform/mac/fast/text/rounding-hacks-expansion.html:
  • platform/mac/fast/text/rounding-hacks.html:
02:03 Changeset [118656] by macpherson@chromium.org
  • 2 edits in trunk/Tools

Fix mac build with older XCode by defining NSEC_PER_MSEC.
https://bugs.webkit.org/show_bug.cgi?id=87616

Reviewed by Hajime Morita.

The following patch introduced the use of NSEC_PER_MSEC which is not defined for older XCode versions.
http://trac.webkit.org/changeset/118631/trunk/Tools/DumpRenderTree/mac/FrameLoadDelegate.mm
Patch just adds a #ifndef / #define check.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):

01:53 Changeset [118655] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] http authentication crash the browser when user commit or cancel the http authentication dialog
https://bugs.webkit.org/show_bug.cgi?id=87579

Patch by Jonathan Dong <jonathan.dong@torchmobile.com.cn> on 2012-05-28
Reviewed by George Staikos.

In function NetworkJob::startNewJobWithRequest, We should cancel the
NetworkJob first before we start a new NetworkJob which reuses the
resource handle of the old one. If we only set the m_handle = 0 of the
old NetworkJob without cancelling itself, it will still receives data
notification from network thread and handles the received data with
the released resource handler, which will cause the crash.

No new tests because no behavior has changed.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::startNewJobWithRequest):

01:40 Changeset [118654] by morrita@google.com
  • 4 edits in trunk/Source/WebCore

[Refactoring][ShadowDOM] Some ElementShadow methods can be inlined.
https://bugs.webkit.org/show_bug.cgi?id=87617

Reviewed by Kentaro Hara.

Inlined ElementShadow::attachHost(), ElementShadow::detachHost() and
ElementShadow::reattach()

No new tests. No behavior change.

  • dom/Element.cpp:

(WebCore::Element::attach):
(WebCore::Element::detach):

  • dom/ElementShadow.cpp:

(WebCore::ElememtnShadow::reattachHostChildrenAndShadow):

  • dom/ElementShadow.h:

(ElementShadow):

01:17 Changeset [118653] by morrita@google.com
  • 3 edits in trunk/Source/WebKit/chromium

https://bugs.webkit.org/show_bug.cgi?id=87609
[Chromium] FrameLoaderClient::allowStyleScoped() should be implemented interms of WebPermissionClient

Reviewed by Kent Tamura.

Added allowStyleScoped() implementation which is essentially same as shadowDOMAllowed().

  • src/FrameLoaderClientImpl.cpp:
  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

01:03 Changeset [118652] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: CodeGeneratorInspector.py: protect typed API from C++ implicit float to int cast
https://bugs.webkit.org/show_bug.cgi?id=87183

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

An intermediate C++ class is introduced that uses C++ template technique to control actual type
of its constructor argument.
All input parameters of type "int" now have type ExactlyInt.
All usage sites are fixed accordingly.

  • inspector/CodeGeneratorInspector.py:

(TypeModel.RefPtrBased):
(TypeModel.Enum):
(TypeModel.ValueType):
(TypeModel.ValueType.get_opt_output_type_):
(TypeModel.ValueType.ValueOptional.get_command_return_pass_model):
(TypeModel.ExactlyInt):
(TypeModel.ExactlyInt.init):
(TypeModel.ExactlyInt.get_input_param_type_text):
(TypeModel.ExactlyInt.get_opt_output_type_):
(TypeModel.init_class):
(ExactlyInt):

  • inspector/InspectorAgent.cpp:

(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::didCreateWorker):
(WebCore::InspectorAgent::didDestroyWorker):
(WebCore::InspectorAgent::evaluateForTestInFrontend):

  • inspector/InspectorApplicationCacheAgent.cpp:

(WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
(WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::jsHeapInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::notifyContextCreated):

00:48 Changeset [118651] by haraken@chromium.org
  • 12 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-binding-tests results.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectOwner::finalize):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterOwner::finalize):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorOwner::finalize):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetOwner::finalize):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestExceptionOwner::finalize):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceOwner::finalize):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerOwner::finalize):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorOwner::finalize):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjOwner::finalize):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):

  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::V8TestObj::installPerContextProperties):

00:11 Changeset [118650] by darin@apple.com
  • 7 edits in trunk/Source/WebCore

StyleResolver need not allocate each MediaQueryResult on the heap
https://bugs.webkit.org/show_bug.cgi?id=75223

Reviewed by Daniel Bates.

  • css/MediaQuery.cpp: Removed some comments that pointed to CSS documents.

There is no guarantee these links will be valid over time.
(WebCore::MediaQuery::MediaQuery): Rewrote for clarity, conventional WebKit coding
style, and simplicity.
(WebCore::MediaQuery::copy): Moved out of line; not performance critical, and this
allows us to cut down header dependencies.
(WebCore::MediaQuery::cssText): Updated for change to data member name.

  • css/MediaQuery.h: Removed unneeded includes. Removed non-helpful argument name

"exprs". Changed expressions function to return a reference instead of
a pointer. Changed mediaType and cssText functions to return a reference. Renamed
m_serializationCache to m_serializedQuery. Moved copy function out of header.

  • css/MediaQueryEvaluator.cpp: Renamed EvalFunc to MediaFeatureEvaluationFunction.

Broke a FIXME into three and reworded for clarity.
(WebCore::MediaQueryEvaluator): Updated for name changes.
(WebCore::MediaQueryEvaluator::eval): Rewrote this for clarity and to regularize
the logic a bit.
(WebCore::aspect_ratioMediaFeatureEval): Got rid of a != 0 that is contrary to the
normal WebKit style.
(WebCore::device_aspect_ratioMediaFeatureEval): Ditto.
(WebCore::transform_3dMediaFeatureEval): Fixed mangled #if that was here.
(WebCore::view_modeMediaFeatureEval): Replaced UNUSED_PARAM usage with ASSERT_UNUSED.
(WebCore::createFunctionMap): Changed this so it returns the map so we can use a
cleaner style in the caller.
(WebCore::MediaQueryEvaluator::eval): Updated to take a reference and improved the
comments and coding style a bit.

  • css/MediaQueryEvaluator.h: Updated comment style. Removed unused constructor.

Removed unneeded destructor declaration. Renamed m_expResult to m_mediaFeatureResult.

  • css/StyleResolver.cpp: Moved the MediaQueryResult class into this file

and made it a structure rather than a class.
(WebCore::StyleResolver::addViewportDependentMediaQueryResult): Updated to take
a reference argument instead of a pointer and for the new vector type.
(WebCore::StyleResolver::affectedByViewportChange): Updated for above changes.

  • css/StyleResolver.h: Removed many unneeded includes and forward declarations of

classes, including now-unneeded include of MediaQueryExp.h. Replaced MediaQueryResult
definition with a forward declaration. Changed addViewportDependentMediaQueryResult
to take a reference instead of a pointer. Changed m_viewportDependentMediaQueryResults
to be a vector of values rather than of pointers.

05/27/12:

22:48 Changeset [118649] by darin@apple.com
  • 2 edits in trunk/Source/WTF

Fix an incorrect assertion in Vector::remove
https://bugs.webkit.org/show_bug.cgi?id=87612

Reviewed by Dan Bernstein.

  • wtf/Vector.h: There's no good reason to disallow calling remove

with a size of 0, even when the position is at the end of the vector,
so changed the two-argument Vector::remove assertion to assert that
the position is <= size rather than < size.

22:13 Changeset [118648] by shinyak@chromium.org
  • 3 edits
    4 adds in trunk

cut, copy or paste event won't be fired in Shadow DOM.
https://bugs.webkit.org/show_bug.cgi?id=87352

Reviewed by Dimitri Glazkov.

Source/WebCore:

cut, copy or paste event was not fired in Shadow DOM.
Since event re-targeting has been implemented, it should be safe to fire them in Shadow DOM now.

Tests: fast/dom/shadow/cppevent-in-shadow.html

fast/dom/shadow/cppevent-input-in-shadow.html

  • editing/Editor.cpp:

(WebCore::Editor::findEventTargetFrom):

LayoutTests:

  • fast/dom/shadow/cppevent-in-shadow-expected.txt: Added.
  • fast/dom/shadow/cppevent-in-shadow.html: Added.
  • fast/dom/shadow/cppevent-input-in-shadow-expected.txt: Added.
  • fast/dom/shadow/cppevent-input-in-shadow.html: Added.
22:00 Changeset [118647] by commit-queue@webkit.org
  • 7 edits in trunk

[EFL] Enable blob support for the EFL port
https://bugs.webkit.org/show_bug.cgi?id=85363

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-27
Reviewed by Hajime Morita.

.:

Enable Blob support by default for the EFL port.

  • Source/cmake/OptionsEfl.cmake:

Tools:

Enable Blob support by default for the EFL port.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Unskip tests which require blob support to be enabled.

  • platform/efl/Skipped:
  • platform/efl/test_expectations.txt:
21:56 Changeset [118646] by ggaren@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Weak pointer finalization should be lazy
https://bugs.webkit.org/show_bug.cgi?id=87599

Reviewed by Darin Adler.

  • heap/Heap.cpp:

(JSC::Heap::collect): Don't force immediate finalization -- it will
happen lazily.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::sweep): Sweep a block's weak set when sweeping the
block. The weak set may not have been swept yet, and this is our last
chance to run weak finalizers before we recycle the memory they reference.

  • heap/MarkedBlock.h:
  • heap/MarkedSpace.cpp:

(JSC::MarkedBlock::sweepWeakSets):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::sweepWeakSets): Nixed sweepWeakSets because it's unused
now.

21:39 Changeset [118645] by hayato@chromium.org
  • 5 edits in trunk

Support multiple shadow roots in event dispatching.
https://bugs.webkit.org/show_bug.cgi?id=87470

Reviewed by Dimitri Glazkov.

Source/WebCore:

The current implementation does not set event's target correctly
if an event happens on DOM tree with multiple shadow roots. So
this patch updates an event re-targeting algorithm so that it
works even if it is applied to multiple shadow roots.

Tests: fast/dom/shadow/shadow-dom-event-dispatching.html

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::ComposedShadowTreeWalker::traverseParentIncludingInsertionPointAndShadowRoot):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::ensureEventAncestors):

LayoutTests:

  • fast/dom/shadow/shadow-dom-event-dispatching-expected.txt:
  • fast/dom/shadow/shadow-dom-event-dispatching.html:
21:22 Changeset [118644] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Minor code cleaning for the interface of MainResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=87607

Reviewed by Darin Adler.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::MainResourceLoader):
(WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
(WebCore::MainResourceLoader::handleSubstituteDataLoadSoon):

  • loader/MainResourceLoader.h:

(MainResourceLoader):
-Add the OVERRIDE keyword for the methods inherited from ResourceLoader.
-Remove the useless declaration of handleDataLoad(ResourceRequest&), this method does not exist.
-Rename handleDataLoadNow() to handleSubstituteDataLoadNow() and make the method private. This should

only be used by handleSubstituteDataLoadSoon() and indirectly through the timer.

19:26 Changeset [118643] by yosin@chromium.org
  • 4 edits in trunk/Source

[WTF] Introduce UINT64_C to MathExtras.h
https://bugs.webkit.org/show_bug.cgi?id=87485

Reviewed by Kent Tamura.

Source/WebCore:

This patch introduces UINT64_C for all platforms to avoid using
conditional compilation.

No new tests. This patch doesn't change behavior.

  • Modules/websockets/WebSocketFrame.cpp:

(WebCore::WebSocketFrame::parseFrame): Replace conditional compilation with UINT64_C.

Source/WTF:

  • wtf/MathExtras.h:
19:05 Changeset [118642] by mitz@apple.com
  • 5 copies
    1 add in releases/Apple/Safari 5.1.7

Added a tag for the Safari 5.1.7 release.

Safari 5.1.7 includes JavaScriptCore-x534.57.3, JavaScriptGlue-x534.57.2, WebCore-x534.57.2, WebKit-x534.57.2, and WebKit2-x534.57.2.

18:58 Changeset [118641] by mitz@apple.com
  • 4 copies
    1 add in releases/Apple/OS X Lion Update 10.7.4

Added a tag for the OS X Lion Update 10.7.4 release.

OS X Lion v10.7.4 includes JavaScriptCore-7534.56.6, WebCore-7534.56.5, WebKit-7534.56.5, and WebKit2-7534.56.5.

18:56 Changeset [118640] by rakuco@webkit.org
  • 2 edits in trunk

[CMake] Make WEBKIT_SET_EXTRA_COMPILER_FLAGS work with clang.
https://bugs.webkit.org/show_bug.cgi?id=87597

Reviewed by Daniel Bates.

Building with clang requires at least the -fPIC option being
passed correctly, just like it is needed with gcc. clang is also
compatible with most of gcc's compiler options, so we only need to
check for clang besides g++ in the macro definition.

  • Source/cmake/WebKitHelpers.cmake: Check for "Clang" and use

CMAKE_COMPILER_IS_GNUCXX for the previous check, as it is shorter
and achieves the same effect.

18:53 Changeset [118639] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Use StringBuilder in WebKitCSSTransformValue::customCssText() to allow code reuse with CSS Variables.
https://bugs.webkit.org/show_bug.cgi?id=87462

Reviewed by Dimitri Glazkov.

Factor out strings into a const char* array, and use a StringBuilder instead of String concatenation.
This will allow future code to re-use the array of transform names, and StringBuilder is generally faster.

Covered by existing CSS transform tests.

  • css/WebKitCSSTransformValue.cpp:

(WebCore):
(WebCore::WebKitCSSTransformValue::customCssText):

18:52 Changeset [118638] by mitz@apple.com
  • 5 copies
    1 add in releases/Apple/Safari 5.1.5

Added a tag for the Safari 5.1.5 release.

Safari 5.1.5 includes JavaScriptCore-x534.55.2, JavaScriptGlue-x534.55.2, WebCore-x534.55.3, WebKit-x534.55.3, and WebKit2-x534.55.3.

18:49 Changeset [118637] by mitz@apple.com
  • 5 copies
    1 add in releases/Apple/Safari 5.1.4

Added a tag for the Safari 5.1.4 release.

Safari 5.1.4 includes JavaScriptCore-x534.54.15, JavaScriptGlue-x534.54.5, WebCore-x534.54.17, WebKit-x534.54.16, and WebKit2-x534.54.16.

18:44 Changeset [118636] by mitz@apple.com
  • 4 copies
    1 add in releases/Apple/OS X Lion Update 10.7.3

Added a tag for the OS X Lion Update 10.7.3 release.

OS X Lion v10.7.3 includes JavaScriptCore-x534.53.8, WebCore-x534.53.11, WebKit-x534.53.11, and WebKit2-x534.53.11.

18:24 Changeset [118635] by mitz@apple.com
  • 5 copies
    1 add in releases/Apple/Safari 5.1.2

Added a tag for the Safari 5.1.2 release.

Safari 5.1.2 includes JavaScriptCore-x534.52.7, JavaScriptGlue-x534.51.13, WebCore-x534.52.11, WebKit-x534.52.7, and WebKit2-x534.52.7.

18:17 Changeset [118634] by mitz@apple.com
  • 5 copies
    1 add in releases/Apple/Safari 5.1.1

Added a tag for the Safari 5.1.1 release.

Safari 5.1.1 includes JavaScriptCore-x534.51.21, JavaScriptGlue-x534.51.13, WebCore-x534.51.22, WebKit-x534.51.22, and WebKit2-x534.51.22.

17:28 Changeset [118633] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

fast/dom/shadow/content-element-in-media.html is wrong.
https://bugs.webkit.org/show_bug.cgi?id=81310

Modifying to check() to dump expected and actual text at the same
absolute position, because DumpRenderTree dumps absolute x,y-position
information for a layer which contains RenderVideo. For example,
backgroundClip at (8,163), clip at (8, 163) and so on.

Patch by Takashi Sakamoto <tasak@google.com> on 2012-05-27
Reviewed by Hajime Morita.

  • fast/dom/resources/shadow-test-driver.js:

(check):
Disabled actual block when dumping expected block as text, and vice
versa.

  • platform/chromium/test_expectations.txt:

Removed BUGWK81310.

17:23 Changeset [118632] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Update color for tap highlight and selection
https://bugs.webkit.org/show_bug.cgi?id=87606

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-27
Reviewed by Antonio Gomes.

PR #154813

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::platformTapHighlightColor):
(WebCore::RenderThemeBlackBerry::platformActiveSelectionBackgroundColor):

14:31 Changeset [118631] by benjamin@webkit.org
  • 9 edits
    4 adds in trunk

When pages are loaded from AppCache with DeferredLoading, willSendRequest() is never called
https://bugs.webkit.org/show_bug.cgi?id=87582

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-05-27
Reviewed by Darin Adler.

Source/WebCore:

Previously, there was a shortcut when a deferred MainResourceLoader is resumed: If the data
was coming from AppCache we could jump directly to startDataLoadTimer().

The problem with the shortcut is willSendRequest() is never called in that particular case
(substituteData + deferred-resume). The imbalance between willSendRequest() and didReceiveResponse()
causes problems.

This patch removes the shortcut so that MainResourceLoader::loadNow() is used regardless of
the deferred loading. The method MainResourceLoader::loadNow() handle the substituteData as if the loading
was not deferred.

Test: http/tests/appcache/load-from-appcache-defer-resume-crash.html

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterNavigationPolicy):
(WebCore::MainResourceLoader::handleSubstituteDataLoadSoon):
Rename the method to be consistent with the attribute it uses, making the naming more explicit.
(WebCore::MainResourceLoader::loadNow):
(WebCore::MainResourceLoader::setDefersLoading):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

Tools:

Extend DumpRenderTree to support loading the main resource deferred with a delay. This makes it
possible to test pages in a similar way as they are loaded in Browsers.

  • DumpRenderTree/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(setUseDeferredFrameLoadingCallback):
(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController::useDeferredFrameLoading):
(LayoutTestController::setUseDeferredFrameLoading):
(LayoutTestController):

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):

LayoutTests:

  • http/tests/appcache/load-from-appcache-defer-resume-crash-expected.txt: Added.
  • http/tests/appcache/load-from-appcache-defer-resume-crash.html: Added.
  • http/tests/appcache/resources/load-from-appcache-defer-resume-bounce-back.html: Added.
  • http/tests/appcache/resources/load-from-appcache-defer-resume-crash.manifest: Added.
12:51 Changeset [118630] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening after r118618.

  • platform/gtk/test_expectations.txt:
12:48 Changeset [118629] by hausmann@webkit.org
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Trivial unreviewed build fix with newer Qt

  • Api/qwebpage.cpp:

(QWebPage::javaScriptPrompt): Don't use deprecated QString/QChar functions.

12:27 Changeset [118628] by dbarton@mathscribe.com
  • 2 edits in trunk/Tools

[watchlist] Improve MathML rule
https://bugs.webkit.org/show_bug.cgi?id=87592

Reviewed by Adam Barth.

The old rule "filename": r".*mathml" works fine because "filename" is a prefix match,
but if this changed the rule would be slow. We protect against this, clarify the rule,
and make it more similar to existing rules.

  • Scripts/webkitpy/common/config/watchlist:
07:54 Changeset [118627] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Crash when deleting WebPageCompositor
https://bugs.webkit.org/show_bug.cgi?id=87589

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-05-27
Reviewed by Rob Buis.

The WebPageCompositorPrivate is reference counted, so it may outlive
either the WebPage or the WebPageCompositor, depending on who releases
its reference first.

Fixed by disconnecting the objects properly, regardless of who goes
away first.

Reviewed internally by Mike Lattanzio.

PR #156444

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setCompositor):
(BlackBerry::WebKit::WebPagePrivate::destroyCompositor):

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositor::~WebPageCompositor):
(BlackBerry::WebKit::WebPageCompositor::client):

  • Api/WebPageCompositor_p.h:

(BlackBerry::WebKit::WebPageCompositorPrivate::setPage):

07:41 Changeset [118626] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] BackingStore accesses tiles even though it's not active
https://bugs.webkit.org/show_bug.cgi?id=87563

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-04-18
Reviewed by Antonio Gomes.

There are many scenarios that can call render and cause tile access,
and they used to be rerouted to the direct rendering code when the
backing store was not active. This was thanks to an implicit check for
isActive() by virtue of calling shouldDirectRenderingToWindow() from
render().

If we're using OpenGL for compositing the backing store contents
however, direct rendering is always disabled and we jump right into the
tile based rendering code.

Fixed by adding an explicit check for isActive() in render(), now that
the implicit check in shouldDirectRenderingToWindow() is conditional on
having raster usage.

Since PR136381/bug83131, when OpenGL compositing is used, and the
backing store is not active, it is not in charge of drawing the root
layer. Instead, we switch off the paintingGoesToWindow flag on the root
RenderLayer so no invalidates will reach the ChromeClient or the
BackingStore any more. Instead, invalidations will cause the root
accelerated compositing layer to be repainted. Any BackingStore render
calls while in this state are pointless, and can safely do an early
return.

Reviewed internally by Jakob Petsovits.

PR #150403

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::render):

07:17 Changeset [118625] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Web page fails to render after clicking link with target=_blank
https://bugs.webkit.org/show_bug.cgi?id=87562

Patch by Arvid Nilsson <anilsson@rim.com> on 2012-04-12
Reviewed by Antonio Gomes.

Clicking such a link opens a new tab. The compositor was briefly in
charge of drawing the root layer while the backing store was inactive
and the user was looking at the other tab. The problem was that the
compositor believed it was still painting the root layer even after the
backing store became active again. The flag was not properly cleared
when turning off compositing.

Fixed by returning false from drawsRootLayer() if we don't have a root
layer.

Reviewed internally by Filip Spacek.

PR #149342

  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::drawsRootLayer):

04:35 Changeset [118624] by ddkilzer@apple.com
  • 5 edits in trunk/Source/WebCore

Use xcrun to find gperf path on platforms that use Xcode
<http://webkit.org/b/87587>

Reviewed by Dan Bernstein.

  • WebCore.xcodeproj/project.pbxproj:

(Generate Derived Sources): Set GPERF environment variable using
xcrun.

  • css/makeprop.pl: Use GPERF environment variable if set, else

"gperf".

  • css/makevalues.pl: Ditto.
  • make-hash-tools.pl: Ditto.
00:40 Changeset [118623] by dbarton@mathscribe.com
  • 2 edits in trunk/Tools

[watchlist] Add myself & a rule for MathML
https://bugs.webkit.org/show_bug.cgi?id=87586

Reviewed by Adam Barth.

  • Scripts/webkitpy/common/config/watchlist:
00:35 Applications using WebKit edited by rmoneymunch@yahoo.com
(diff)
00:34 Applications using WebKit edited by rmoneymunch@yahoo.com
(diff)
00:34 Changeset [118622] by commit-queue@webkit.org
  • 5 edits in trunk

[FileAPI] FileReader should fire progress event when blob has been completely read into memory
https://bugs.webkit.org/show_bug.cgi?id=87585

Patch by Li Yin <li.yin@intel.com> on 2012-05-27
Reviewed by Kentaro Hara.

From Spec: http://www.w3.org/TR/FileAPI/#dfn-progress-event
One progress event will fire when blob has been completely read into memory.
Firefox, Opera and IE follows the spec.
Webkit based browser doesn't do that, it only fires progress event at interval of 50ms.
WebKit should add the behavior to make the conformance with the spec.

Source/WebCore:

Tests: fast/files/file-reader-event-listener.html

  • fileapi/FileReader.cpp:

(WebCore::FileReader::didFinishLoading):

LayoutTests:

  • fast/files/file-reader-event-listener-expected.txt:
  • fast/files/file-reader-event-listener.html:

05/26/12:

23:52 Changeset [118621] by ddkilzer@apple.com
  • 3 edits in trunk/Tools

Use xcrun to find path to nm for Mac port
<http://webkit.org/b/87588>

Reviewed by Dan Bernstein.

  • Scripts/webkitpy/layout_tests/port/mac.py:

(MacPort.nm_command): Add. Tries to find a path for the nm
command using xcrun. Falls back to returning 'nm'.

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitPort.nm_command): Add. Returns 'nm'.
(WebKitPort._webcore_symbols_string): Call self.nm_command().

18:51 Changeset [118620] by commit-queue@webkit.org
  • 9 edits in trunk

[FileAPI] The result attribute of FileReader shuold use null to replace empty string
https://bugs.webkit.org/show_bug.cgi?id=87578

Patch by Li Yin <li.yin@intel.com> on 2012-05-26
Reviewed by Kentaro Hara.

Source/WebCore:

From Spec: http://www.w3.org/TR/FileAPI/#filedata-attr
Before read method has been called or an error in reading has occurred,
the result attribute should be null, not empty string.

Currently, Firefox, Opera and IE 10 follows the spec, but Webkit based
browser don't.
WebKit should change the returned value empty string into null to keep
conformance with the spec.

Tests: fast/files/read-file-async.html

fast/files/blob-slice-test.html
fast/files/read-blob-async.html
fast/files/workers/worker-read-blob-async.html
fast/files/workers/worker-read-file-async.html

  • fileapi/FileReader.cpp:

(WebCore::FileReader::stringResult):

LayoutTests:

From Spec: http://www.w3.org/TR/FileAPI/#filedata-attr
Before read method has been called or an error in reading has occurred,
the result attribute should be null, not empty string.
WebKit should change the returned value empty string into null to keep
conformance with the spec.

  • fast/files/blob-slice-test-expected.txt:
  • fast/files/read-blob-async-expected.txt:
  • fast/files/read-file-async-expected.txt:
  • fast/files/resources/read-common.js:

(logResult):

  • fast/files/workers/worker-read-blob-async-expected.txt:
  • fast/files/workers/worker-read-file-async-expected.txt:
18:16 Changeset [118619] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the build when NETSCAPE_PLUGIN_API is disabled by marking a
parameter as unused.

  • plugins/PluginData.cpp:

(WebCore::PluginData::initPlugins):

17:46 Changeset [118618] by japhet@chromium.org
  • 12 edits
    2 adds in trunk

Source/WebCore: Cancel CachedResource loads when the last client is removed.
https://bugs.webkit.org/show_bug.cgi?id=35377

Reviewed by Darin Adler.

Test: http/tests/cache/cancel-in-progress-load.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::errorLoadingResource):

  • loader/cache/CachedCSSStyleSheet.cpp:

(WebCore::CachedCSSStyleSheet::allClientsRemoved):

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::allClientsRemoved):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::allClientsRemoved):

  • loader/cache/CachedRawResource.cpp:

(WebCore):

  • loader/cache/CachedRawResource.h:

(WebCore::CachedRawResource::shouldIgnoreHTTPStatusCodeErrors):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::allClientsRemoved):
(WebCore):

  • loader/cache/CachedResource.h:

(CachedResource):

  • loader/cache/CachedScript.cpp:

(WebCore::CachedScript::allClientsRemoved):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=35377.

Reviewed by Darin Adler.

  • http/tests/cache/cancel-in-progress-load-expected.txt: Added.
  • http/tests/cache/cancel-in-progress-load.html: Added.
  • http/tests/misc/write-while-waiting.html: Add waitUntilDone()/notifyDone().

The slow script will now be cancelled when the script element is removed from the document.
Without waitUntilDone(), LayoutTestController will immediately end the test upon cancellation
of the last resource.

17:43 Changeset [118617] by simon.fraser@apple.com
  • 5 edits
    2 adds in trunk

fast/block/inline-children-root-linebox-crash.html asserts after r118567
https://bugs.webkit.org/show_bug.cgi?id=87544

Source/WebCore:

Reviewed by Darin Adler.

RenderInline::offsetFromContainer() set offsetDependsOnPoint to true based
on the container's flipped writing mode. However, offsetFromContainer() would
then overwrite that, since it only checked for columns.

Fix by having RenderInline::offsetFromContainer() check for flipping on
the container. This fixes the assertion.

The new testcase exercises fixes another issue; unlike mapLocalToAbsolute(),
RenderGeometryMap::absoluteRect() didn't pass the rect center point through
the mapping, which resulted in a different result in some flipping cases.

Test: compositing/geometry/flipped-blocks-inline-mapping.html

  • rendering/RenderGeometryMap.cpp:

(WebCore::RenderGeometryMap::absoluteRect):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::offsetFromContainer):
(WebCore::RenderInline::pushMappingToContainer):

LayoutTests:

Reviewed by Darin Adler.

Remove fast/block/inline-children-root-linebox-crash.html from the skipped
list.

New, more complex writing mode flipping test with compositing.

  • compositing/geometry/flipped-blocks-inline-mapping-expected.txt: Added.
  • compositing/geometry/flipped-blocks-inline-mapping.html: Added.
  • platform/mac/Skipped:
15:40 Changeset [118616] by ggaren@apple.com
  • 47 edits in trunk/Source

WebKit should be lazy-finalization-safe (esp. the DOM) v2
https://bugs.webkit.org/show_bug.cgi?id=87581

Reviewed by Oliver Hunt.

../JavaScriptCore:

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::callDestructor):

  • heap/WeakBlock.h:
  • heap/WeakSetInlines.h:

(JSC::WeakBlock::finalize): Since we don't guarantee destruction order,
it's not valid to access GC pointers like the Structure pointer during
finalization. We NULL out the structure pointer in debug builds to try
to make this programming mistake more obvious.

  • API/JSCallbackConstructor.cpp:

(JSC::JSCallbackConstructor::destroy):

  • API/JSCallbackObject.cpp:

(JSC::::destroy):
(JSC::JSCallbackObjectData::finalize):

  • runtime/Arguments.cpp:

(JSC::Arguments::destroy):

  • runtime/DateInstance.cpp:

(JSC::DateInstance::destroy):

  • runtime/Error.cpp:

(JSC::StrictModeTypeErrorFunction::destroy):

  • runtime/Executable.cpp:

(JSC::ExecutableBase::destroy):
(JSC::NativeExecutable::destroy):
(JSC::ScriptExecutable::destroy):
(JSC::EvalExecutable::destroy):
(JSC::ProgramExecutable::destroy):
(JSC::FunctionExecutable::destroy):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::destroy):

  • runtime/JSPropertyNameIterator.cpp:

(JSC::JSPropertyNameIterator::destroy):

  • runtime/JSStaticScopeObject.cpp:

(JSC::JSStaticScopeObject::destroy):

  • runtime/JSString.cpp:

(JSC::JSString::destroy):

  • runtime/JSVariableObject.cpp:

(JSC::JSVariableObject::destroy):

  • runtime/NameInstance.cpp:

(JSC::NameInstance::destroy):

  • runtime/RegExp.cpp:

(JSC::RegExp::destroy):

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::destroy):

  • runtime/Structure.cpp:

(JSC::Structure::destroy):

  • runtime/StructureChain.cpp:

(JSC::StructureChain::destroy): Use static_cast instead of jsCast because
jsCast does Structure-based validation, and our Structure is not guaranteed
to be alive when we get finalized.

../WebCore:

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::destroy):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::destroy):

  • bindings/js/JSDOMWindowShell.cpp:

(WebCore::JSDOMWindowShell::destroy):

  • bindings/js/JSNodeCustom.cpp:

(WebCore::JSNodeOwner::finalize):

  • bindings/js/JSWorkerContextBase.cpp:

(WebCore::JSWorkerContextBase::destroy):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObject::destroy):
(WebCore::JSTestActiveDOMObjectOwner::finalize):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetter::destroy):
(WebCore::JSTestCustomNamedGetterOwner::finalize):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructor::destroy):
(WebCore::JSTestEventConstructorOwner::finalize):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTarget::destroy):
(WebCore::JSTestEventTargetOwner::finalize):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestException::destroy):
(WebCore::JSTestExceptionOwner::finalize):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterface::destroy):
(WebCore::JSTestInterfaceOwner::finalize):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListener::destroy):
(WebCore::JSTestMediaQueryListListenerOwner::finalize):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructor::destroy):
(WebCore::JSTestNamedConstructorOwner::finalize):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObj::destroy):
(WebCore::JSTestObjOwner::finalize):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterface::destroy):
(WebCore::JSTestSerializedScriptValueInterfaceOwner::finalize):

  • bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcFallbackObjectImp::destroy):

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtRuntimeMethod::destroy):

  • bridge/qt/qt_runtime_qt4.cpp:

(JSC::Bindings::QtRuntimeMethod::destroy):

  • bridge/runtime_array.cpp:

(JSC::RuntimeArray::destroy):

  • bridge/runtime_method.cpp:

(JSC::RuntimeMethod::destroy):

  • bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::destroy):

  • bridge/runtime_root.cpp:

(JSC::Bindings::RootObject::finalize): Use static_cast instead of jsCast because
jsCast does Structure-based validation, and our Structure is not guaranteed
to be alive when we get finalized.

../WebKit2:

  • WebProcess/Plugins/Netscape/JSNPObject.cpp:

(WebKit::JSNPObject::destroy):
(WebKit::JSNPObject::leakNPObject):

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::finalize): Use static_cast instead of jsCast because
jsCast does Structure-based validation, and our Structure is not guaranteed
to be alive when we get finalized.

15:08 Changeset [118615] by mjs@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r116720): Subframe PDF scrolls extremely slowly
https://bugs.webkit.org/show_bug.cgi?id=87557
<rdar://problem/11499408>

Reviewed by Anders Carlsson.

It's not possible to make an automated test for this.

  • WebProcess/Plugins/PDF/BuiltInPDFView.mm:

(WebKit::BuiltInPDFView::wantsWheelEvents): Return true instead of false and delete
misleading comment. While the built-in PDF view would get added to the set of scrollable
areas anyway, there are some code paths that check wantsWheelEvents explicitly, so it seems
necessary to reutrn true.

14:25 Changeset [118614] by dbarton@mathscribe.com
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/committers.py

Move myself to committers.

13:35 Changeset [118613] by dbarton@mathscribe.com
  • 2 edits in trunk/LayoutTests

My first commit - set svn:mime-type to image/png on one .png file.

  • platform/mac/mathml/presentation/mroot-pref-width-expected.png:
13:15 Changeset [118612] by simon.fraser@apple.com
  • 3 edits
    2 adds in trunk

Clip rects assertion when hovering div with transform
https://bugs.webkit.org/show_bug.cgi?id=87580

Source/WebCore:

Reviewed by Eric Seidel.

Hit testing used to use temporary clip rects in composited documents,
until r118562. Now that we cache clip rects for hit testing, we need
to clear the cache on descendant layers when a layer gains or loses
a transform.

Test: fast/layers/clip-rects-assertion.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateTransform):

LayoutTests:

Reviewed by Eric Seidel.

Test that changes transform on hover style, testing for clipRect-related
assertions.

  • fast/layers/clip-rects-assertion-expected.txt: Added.
  • fast/layers/clip-rects-assertion.html: Added.
10:32 WebKit Team edited by noam.rosenthal@nokia.com
(diff)
10:14 Changeset [118611] by mitz@apple.com
  • 3 edits in trunk/Source/WebCore

<rdar://problem/11439771> WebProcess sends many synchronous messages to the UI process while scrolling beneath ScrollView::contentsToScreen()
https://bugs.webkit.org/show_bug.cgi?id=87571

Reviewed by Anders Carlsson.

fakeMouseEventTimerFired() uses the last known mouse position for the fake mouse event, but
calls contentsToScreen() to compute a corresponding position in screen coordinates. Avoid
this by also recording the last known mouse position in screen coordinates, and using that
value.

  • page/EventHandler.cpp:

(WebCore::EventHandler::clear): Added resetting m_currentMouseGlobalPosition.
(WebCore::EventHandler::handleMousePressEvent): Added updating m_currentMouseGlobalPosition
when updating m_currentMousePosition.
(WebCore::EventHandler::handleMouseDoubleClickEvent): Ditto.
(WebCore::EventHandler::handleMouseMoveEvent): Ditto.
(WebCore::EventHandler::handleMouseReleaseEvent): Ditto.
(WebCore::EventHandler::fakeMouseMoveEventTimerFired): Changed to use m_currentMouseGlobalPosition
in the fake event instead of calling contentsToScreen().

  • page/EventHandler.h: Added m_currentMouseGlobalPosition data member.
08:34 Changeset [118610] by philn@webkit.org
  • 2 edits
    1 delete in trunk/Source/WebCore

[GStreamer] Remove ImageGStreamerCG implementation
https://bugs.webkit.org/show_bug.cgi?id=87559

The ImageGStreamerCG abstraction is being removed until I manage to
port my gst-mac WebKit branch over to the WebKit2 mac port. No
need to update the XCode project because this file is not
referenced there anyway.

Reviewed by Martin Robinson.

  • platform/graphics/gstreamer/ImageGStreamer.h:

(ImageGStreamer):

  • platform/graphics/gstreamer/ImageGStreamerCG.mm: Removed.
04:38 Changeset [118609] by rwlbuis@webkit.org
  • 4 edits
    54 adds in trunk

Bug 15799: textPath element does not re-render when referenced path changes
https://bugs.webkit.org/show_bug.cgi?id=15799

Patch by Rob Buis <rwlbuis@webkit.org> on 2012-05-26
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Support textPath updating to changes on the referenced path. To make this possible
use the target reference functionality also used by SVGFEImageElement.

Tests: svg/custom/textPath-change-id-expected.svg

svg/custom/textPath-change-id-pattern-expected.svg
svg/custom/textPath-change-id-pattern.svg
svg/custom/textPath-change-id.svg
svg/custom/textPath-change-id2-expected.svg
svg/custom/textPath-change-id2-pattern-expected.svg
svg/custom/textPath-change-id2-pattern.svg
svg/custom/textPath-change-id2.svg
svg/custom/textPath-change-reference-expected.svg
svg/custom/textPath-change-reference-pattern-expected.svg
svg/custom/textPath-change-reference-pattern.svg
svg/custom/textPath-change-reference-using-baseval-expected.svg
svg/custom/textPath-change-reference-using-baseval-pattern-expected.svg
svg/custom/textPath-change-reference-using-baseval-pattern.svg
svg/custom/textPath-change-reference-using-baseval.svg
svg/custom/textPath-change-reference.svg
svg/custom/textPath-change-reference2-expected.svg
svg/custom/textPath-change-reference2-pattern-expected.svg
svg/custom/textPath-change-reference2-pattern.svg
svg/custom/textPath-change-reference2-using-baseval-expected.svg
svg/custom/textPath-change-reference2-using-baseval-pattern-expected.svg
svg/custom/textPath-change-reference2-using-baseval-pattern.svg
svg/custom/textPath-change-reference2-using-baseval.svg
svg/custom/textPath-change-reference2.svg
svg/custom/textPath-insert-path-expected.svg
svg/custom/textPath-insert-path-pattern-expected.svg
svg/custom/textPath-insert-path-pattern.svg
svg/custom/textPath-insert-path.svg
svg/custom/textPath-modify-child-expected.svg
svg/custom/textPath-modify-child-pattern-expected.svg
svg/custom/textPath-modify-child-pattern.svg
svg/custom/textPath-modify-child.svg
svg/custom/textPath-path-change-expected.svg
svg/custom/textPath-path-change-pattern-expected.svg
svg/custom/textPath-path-change-pattern.svg
svg/custom/textPath-path-change-using-svg-dom-expected.svg
svg/custom/textPath-path-change-using-svg-dom-pattern-expected.svg
svg/custom/textPath-path-change-using-svg-dom-pattern.svg
svg/custom/textPath-path-change-using-svg-dom.svg
svg/custom/textPath-path-change.svg
svg/custom/textPath-path-change2-expected.svg
svg/custom/textPath-path-change2-pattern-expected.svg
svg/custom/textPath-path-change2-pattern.svg
svg/custom/textPath-path-change2.svg
svg/custom/textPath-remove-path-expected.svg
svg/custom/textPath-remove-path-pattern-expected.svg
svg/custom/textPath-remove-path-pattern.svg
svg/custom/textPath-remove-path.svg
svg/custom/textPath-set-id-expected.svg
svg/custom/textPath-set-id.svg
svg/custom/textPath-startoffset-expected.svg
svg/custom/textPath-startoffset-pattern-expected.svg
svg/custom/textPath-startoffset-pattern.svg
svg/custom/textPath-startoffset.svg

  • svg/SVGTextPathElement.cpp:

(WebCore::SVGTextPathElement::~SVGTextPathElement):
(WebCore):
(WebCore::SVGTextPathElement::clearResourceReferences):
(WebCore::SVGTextPathElement::svgAttributeChanged):
(WebCore::SVGTextPathElement::buildPendingResource):
(WebCore::SVGTextPathElement::insertedInto):
(WebCore::SVGTextPathElement::removedFrom):

  • svg/SVGTextPathElement.h:

LayoutTests:

  • textPath-path-change-id.svg, react to change of id attribute on referenced path (makes the xlink:href valid).
  • textPath-path-change-id2.svg, react to change of id attribute on referenced path (makes the xlink:href invalid).
  • textPath-path-set-id.svg, react to setting of id attribute on referenced path (makes the xlink:href valid).
  • textPath-change-reference.svg, <textPath> references existing <path>, change the xlink:href to a non-existing one.
  • textPath-change-reference-using-baseval.svg, <textPath> references existing <path>, change the xlink:href to a non-existing one using SVG DOM.
  • textPath-change-reference2.svg, <textPath> references non-existing <path>, change xlink:href to an existing one.
  • textPath-change-reference2-using-baseval.svg, <textPath> references non-existing <path>, change xlink:href to an existing one using SVG DOM.
  • textPath-insert-path.svg, <textPath> references non-existing <path>, <path> added dynamically.
  • textPath-modify-child.svg, react to change on textPath content.
  • textPath-path-change-using-svg-dom.svg, react to change on pathSegList of referenced path.
  • textPath-path-change.svg, react to change on d attribute of referenced path.
  • textPath-path-change2.svg, react to change on d attribute of path referenced by multiple <textPath>s.
  • textPath-remove-path.svg, <textPath> references existing <path>, <path> is removed from DOM.
  • textPath-startoffset.svg, react to startOffset attribute change on <textPath>.

These tests are duplicated for <textPath> inside a <pattern>.

  • svg/custom/textPath-change-id-expected.svg: Added.
  • svg/custom/textPath-change-id-pattern-expected.svg: Added.
  • svg/custom/textPath-change-id-pattern.svg: Added.
  • svg/custom/textPath-change-id.svg: Added.
  • svg/custom/textPath-change-id2-expected.svg: Added.
  • svg/custom/textPath-change-id2-pattern-expected.svg: Added.
  • svg/custom/textPath-change-id2-pattern.svg: Added.
  • svg/custom/textPath-change-id2.svg: Added.
  • svg/custom/textPath-change-reference-expected.svg: Added.
  • svg/custom/textPath-change-reference-pattern-expected.svg: Added.
  • svg/custom/textPath-change-reference-pattern.svg: Added.
  • svg/custom/textPath-change-reference-using-baseval-expected.svg: Added.
  • svg/custom/textPath-change-reference-using-baseval-pattern-expected.svg: Added.
  • svg/custom/textPath-change-reference-using-baseval-pattern.svg: Added.
  • svg/custom/textPath-change-reference-using-baseval.svg: Added.
  • svg/custom/textPath-change-reference.svg: Added.
  • svg/custom/textPath-change-reference2-expected.svg: Added.
  • svg/custom/textPath-change-reference2-pattern-expected.svg: Added.
  • svg/custom/textPath-change-reference2-pattern.svg: Added.
  • svg/custom/textPath-change-reference2-using-baseval-expected.svg: Added.
  • svg/custom/textPath-change-reference2-using-baseval-pattern-expected.svg: Added.
  • svg/custom/textPath-change-reference2-using-baseval-pattern.svg: Added.
  • svg/custom/textPath-change-reference2-using-baseval.svg: Added.
  • svg/custom/textPath-change-reference2.svg: Added.
  • svg/custom/textPath-insert-path-expected.svg: Added.
  • svg/custom/textPath-insert-path-pattern-expected.svg: Added.
  • svg/custom/textPath-insert-path-pattern.svg: Added.
  • svg/custom/textPath-insert-path.svg: Added.
  • svg/custom/textPath-modify-child-expected.svg: Added.
  • svg/custom/textPath-modify-child-pattern-expected.svg: Added.
  • svg/custom/textPath-modify-child-pattern.svg: Added.
  • svg/custom/textPath-modify-child.svg: Added.
  • svg/custom/textPath-path-change-expected.svg: Added.
  • svg/custom/textPath-path-change-pattern-expected.svg: Added.
  • svg/custom/textPath-path-change-pattern.svg: Added.
  • svg/custom/textPath-path-change-using-svg-dom-expected.svg: Added.
  • svg/custom/textPath-path-change-using-svg-dom-pattern-expected.svg: Added.
  • svg/custom/textPath-path-change-using-svg-dom-pattern.svg: Added.
  • svg/custom/textPath-path-change-using-svg-dom.svg: Added.
  • svg/custom/textPath-path-change.svg: Added.
  • svg/custom/textPath-path-change2-expected.svg: Added.
  • svg/custom/textPath-path-change2-pattern-expected.svg: Added.
  • svg/custom/textPath-path-change2-pattern.svg: Added.
  • svg/custom/textPath-path-change2.svg: Added.
  • svg/custom/textPath-remove-path-expected.svg: Added.
  • svg/custom/textPath-remove-path-pattern-expected.svg: Added.
  • svg/custom/textPath-remove-path-pattern.svg: Added.
  • svg/custom/textPath-remove-path.svg: Added.
  • svg/custom/textPath-set-id-expected.svg: Added.
  • svg/custom/textPath-set-id.svg: Added.
  • svg/custom/textPath-startoffset-expected.svg: Added.
  • svg/custom/textPath-startoffset-pattern-expected.svg: Added.
  • svg/custom/textPath-startoffset-pattern.svg: Added.
  • svg/custom/textPath-startoffset.svg: Added.
02:08 Changeset [118608] by zimmermann@webkit.org
  • 17 edits in trunk/Source/WebCore

Avoid updateFromElement() usage in SVG
https://bugs.webkit.org/show_bug.cgi?id=87573

Stop relying on updateFromElement() - instead rely on addChild/removeChild, which
allows us to optimize the resources re-fetching. When a child is added to the tree
we don't need to remove existing resources from the SVGResourcesCache - the renderer
can't be in the cache yet. Similary, remove the entry from the cache earlier: as soon
as the renderer is removed from the tree, instead of waiting for willBeDestroyed().

No new tests, refactoring only.

  • rendering/svg/RenderSVGBlock.cpp:
  • rendering/svg/RenderSVGBlock.h:

(RenderSVGBlock):

  • rendering/svg/RenderSVGContainer.cpp:

(WebCore::RenderSVGContainer::addChild):
(WebCore):
(WebCore::RenderSVGContainer::removeChild):

  • rendering/svg/RenderSVGContainer.h:

(RenderSVGContainer):

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::addChild):
(WebCore::RenderSVGInline::removeChild):

  • rendering/svg/RenderSVGInline.h:

(RenderSVGInline):

  • rendering/svg/RenderSVGModelObject.cpp:
  • rendering/svg/RenderSVGModelObject.h:

(RenderSVGModelObject):

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::addChild):
(WebCore):
(WebCore::RenderSVGRoot::removeChild):

  • rendering/svg/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::addChild):
(WebCore::RenderSVGText::removeChild):

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::clientStyleChanged):
(WebCore::rendererCanHaveResources):
(WebCore):
(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):

  • rendering/svg/SVGResourcesCache.h:

(SVGResourcesCache):

  • svg/SVGStyledElement.cpp:
  • svg/SVGStyledElement.h:

(SVGStyledElement):

00:16 Changeset [118607] by zandobersek@gmail.com
  • 2 edits
    2 adds in trunk/LayoutTests

Unreviewed GTK gardening after r118577 and r118585.

  • platform/gtk/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt: Added.
  • platform/gtk/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt: Added.
  • platform/gtk/test_expectations.txt:

05/25/12:

23:39 Changeset [118606] by nduca@chromium.org
  • 2 edits in trunk/Source/WebCore

[chromium] Instrument V8 GC with TraceEvent
https://bugs.webkit.org/show_bug.cgi?id=87530

Reviewed by Kentaro Hara.

We sometimes get performance issues where performance stalls can
be attributed to badly timed GC operations, especially ones that
happen just before a frame running. This adds tracing calls around
GC so that we can better understand these kinds of hangs.

  • bindings/v8/V8GCController.cpp:

(WebCore::V8GCController::gcPrologue):
(WebCore::V8GCController::gcEpilogue):

23:09 Changeset [118605] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll chromium DEPS from r139156 to r139184.

  • DEPS:
20:20 Changeset [118604] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

cursor gets trapped when border-style: dashed is used
https://bugs.webkit.org/show_bug.cgi?id=37693

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-05-25
Reviewed by Tony Chang.

This bug has been fixed. Add a test to make sure that it won't regress.

  • editing/selection/move-by-line-006-expected.txt: Added.
  • editing/selection/move-by-line-006.html: Added.
20:09 Changeset [118603] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

weakCompareAndSwap should work on Windows
https://bugs.webkit.org/show_bug.cgi?id=87549

Reviewed by Jessie Berlin.

  • wtf/Atomics.h:

(WTF):
(WTF::weakCompareAndSwap):

19:24 Changeset [118602] by slewis@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed, fix bad copy/paste.

  • platform/mac/Skipped:
19:20 Changeset [118601] by commit-queue@webkit.org
  • 11 edits
    1 copy in trunk/Source

Allow WebTextFieldDecoratorClient to see applied decorations.
https://bugs.webkit.org/show_bug.cgi?id=86557

Patch by Garrett Casto <gcasto@chromium.org> on 2012-05-25
Reviewed by Kent Tamura.

Source/WebCore:

  • html/shadow/TextFieldDecorationElement.cpp:

(WebCore::TextFieldDecorationElement::fromShadowRoot): A function
that will extract a TextFielDecorationElement from a ShadowRoot, if
there is one.

  • html/shadow/TextFieldDecorationElement.h:

(WebCore):
(TextFieldDecorator):

Source/WebKit/chromium:

  • WebKit.gyp: Added new files.
  • public/WebInputElement.h:

(WebKit::WebInputElement::decorationElementFor): Returns the
WebElement attached to the WebInputElement by the given
WebTextFieldDecoratorClient, if one exists.

  • src/TextFieldDecoratorImpl.cpp:

(WebKit):

  • src/TextFieldDecoratorImpl.h:

(TextFieldDecoratorImpl::decoratorClient): Get the
WebTextFieldDecoratorClient owned by this object.

19:07 Changeset [118600] by tony@chromium.org
  • 6 edits in trunk

implement new negative flexing algorithm
https://bugs.webkit.org/show_bug.cgi?id=86528

Reviewed by Ojan Vafai.

Source/WebCore:

Rather than just scale by the negative flexibility, we also take the
flex-basis (preferred size) into consideration. That means items with
a larger preferred size will shrink faster.

Test: css3/flexbox/flex-algorithm.html (new test cases added)

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::preferredMainAxisContentExtentForChild): Handle overflow.
(WebCore::RenderFlexibleBox::layoutFlexItems):
(WebCore::RenderFlexibleBox::computeNextFlexLine): Sum weighted negative flex.
(WebCore::RenderFlexibleBox::freezeViolations):
(WebCore::RenderFlexibleBox::resolveFlexibleLengths): Shrink by weighted amount.
Also handle large values by making sure the flex values are finite.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

  • css3/flexbox/flex-algorithm-expected.txt:
  • css3/flexbox/flex-algorithm.html:
19:05 Changeset [118599] by mihaip@chromium.org
  • 12 edits
    2 adds in trunk

Allow synchronous XHRs to be disabled in documents
https://bugs.webkit.org/show_bug.cgi?id=87540

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/xmlhttprequest/xmlhttprequest-sync-disabled.html

Synchronous XMLHttpRequests are a problematic API, since they result
in blocked UI threads. Some clients may wish to always disable them;
give them a setting to do so (see also r103629 for other cases where
synchronous XHRs are disabled).

  • page/Settings.cpp:

(WebCore):
(WebCore::Settings::Settings):

  • page/Settings.h:

(Settings):
(WebCore::Settings::setSyncXHRInDocumentsEnabled):
(WebCore::Settings::syncXHRInDocumentsEnabled):

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::restoreTo):
(WebCore::InternalSettings::setSyncXHRInDocumentsEnabled):
(WebCore):

  • testing/InternalSettings.h:

(InternalSettings):

  • testing/InternalSettings.idl:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::open):

Source/WebKit/chromium:

Synchronous XMLHttpRequests are a problematic API, since they result
in blocked UI threads. Some clients may wish to always disable them;
give them a setting to do so (see also r103629 for other cases where
synchronous XHRs are disabled).

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setSyncXHRInDocumentsEnabled):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

LayoutTests:

Synchronous XMLHttpRequests are a problematic API, since they result
in blocked UI threads. Some clients may wish to always disable them;
give them a setting to do so (see also r103629 for other cases where
synchronous XHRs are disabled).

  • fast/xmlhttprequest/xmlhttprequest-sync-disabled-expected.txt: Added.
  • fast/xmlhttprequest/xmlhttprequest-sync-disabled.html: Added.
18:53 Changeset [118598] by slewis@apple.com
  • 1 edit
    3 adds in trunk/LayoutTests

See https://bugs.webkit.org/show_bug.cgi?id=87558

Unreviewed, checking in expected failing results.

  • platform/mac/http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt: Added.
  • platform/mac/http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt: Added.
18:43 Changeset [118597] by kinuko@chromium.org
  • 7 edits in trunk/Source

[chromium] Deprecate FileUtilities::getFileSize and getFileModifiedTime in favor of getFileMetadata
https://bugs.webkit.org/show_bug.cgi?id=87492

Reviewed by Adam Barth.

Source/Platform:

  • chromium/public/WebFileUtilities.h:

Source/WebCore:

No new tests: existing tests (http/tests/local/fileapi/* and fast/files/*) should pass.

  • platform/chromium/FileSystemChromium.cpp:

(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::getFileMetadata):

18:25 Changeset [118596] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from r139024 to r139156 in an attempt to fix Chromium Win builds.

  • DEPS:
18:21 Changeset [118595] by slewis@apple.com
  • 2 edits in trunk/LayoutTests

See https://bugs.webkit.org/show_bug.cgi?id=87544

Unreviewed, skipping asserting test

  • platform/mac/Skipped:
18:02 Changeset [118594] by commit-queue@webkit.org
  • 12 edits
    7 adds
    2 deletes in trunk

Source/WebKit/win: Added methods needed to implement backend for DRT's TextInputController on windows, https://bugs.webkit.org/show_bug.cgi?id=32021

Patch by Lynn Neir <lynn.neir@skype.net> on 2012-05-25
Reviewed by Eric Seidel.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp:

(WebView::setCompositionForTesting):
(WebView::hasCompositionForTesting):
(WebView::confirmCompositionForTesting):
(WebView::compositionRangeForTesting):
(WebView::firstRectForCharacterRangeForTesting):
(WebView::selectedRangeForTesting):

  • WebView.h:

(WebView):

Tools: Added windows implementation in DRT for TextInputController, https://bugs.webkit.org/show_bug.cgi?id=32021

Patch by Lynn Neir <lynn.neir@skype.net> on 2012-05-25
Reviewed by Eric Seidel.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(FrameLoadDelegate::FrameLoadDelegate):
(FrameLoadDelegate::didClearWindowObjectForFrameInStandardWorld):

  • DumpRenderTree/win/FrameLoadDelegate.h:

(FrameLoadDelegate):

  • DumpRenderTree/win/TextInputController.cpp: Added.

(setMarkedTextCallback):
(hasMarkedTextCallback):
(unmarkTextCallback):
(markedRangeCallback):
(insertTextCallback):
(firstRectForCharacterRangeCallback):
(selectedRangeCallback):
(TextInputController::makeWindowObject):
(TextInputController::getJSClass):
(TextInputController::staticValues):
(TextInputController::staticFunctions):

  • DumpRenderTree/win/TextInputController.h: Added.

(TextInputController):

  • DumpRenderTree/win/TextInputControllerWin.cpp: Added.

(TextInputController::setMarkedText):
(TextInputController::hasMarkedText):
(TextInputController::unmarkText):
(TextInputController::markedRange):
(TextInputController::insertText):
(TextInputController::firstRectForCharacterRange):
(TextInputController::selectedRange):

LayoutTests: Updated tests as a result of implementing TextInputController in DRT for windows, https://bugs.webkit.org/show_bug.cgi?id=32021

Patch by Lynn Neir <lynn.neir@skype.net> on 2012-05-25
Reviewed by Eric Seidel.

  • platform/win/Skipped:
  • platform/win/editing/selection/5825350-1-expected.txt: Added.
  • platform/win/editing/selection/5825350-2-expected.txt: Added.
  • platform/win/editing/selection/mixed-editability-10-expected.txt:
  • platform/win/editing/selection/move-left-right-expected.txt: Added.
  • platform/win/fast/events/ime-composition-events-001-expected.txt:
  • platform/win/fast/forms/input-maxlength-ime-completed-expected.txt: Removed.
  • platform/win/fast/forms/input-maxlength-ime-preedit-expected.txt: Removed.
  • platform/win/svg/text/caret-in-svg-text-expected.txt: Added.
17:35 Changeset [118593] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Enhance Windows DRT implementation to support platform scroll wheel events.
https://bugs.webkit.org/show_bug.cgi?id=36002

Add another test that uses continuousMouseScrollBy to the Windows Skipped list.

  • platform/win/Skipped:
17:28 Changeset [118592] by inferno@chromium.org
  • 4 edits
    2 adds in trunk

Crash in RenderTableSection::paintCell.
https://bugs.webkit.org/show_bug.cgi?id=87445

Reviewed by Eric Seidel and Julien Chaffraix.

Source/WebCore:

Fix the crash by preventing table parts from being set
as layout root. This prevents us from accessing removed
table cells which can happen if RenderTableSection::layout
is called directly without calling RenderTable::layout first
(in case of cell recalc).

Add ASSERTs to RenderTableSection::layout to prevent
layout to happen when we are already pending cell recalc
or our table is pending section recalc. In those cases,
RenderTable::layout should be called first to relayout
the entire table.

Test: tables/table-section-overflow-clip-crash.html

  • rendering/RenderObject.cpp:

(WebCore::objectIsRelayoutBoundary):

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::layout):

LayoutTests:

  • tables/table-section-overflow-clip-crash-expected.txt: Added.
  • tables/table-section-overflow-clip-crash.html: Added.
17:23 Changeset [118591] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Implement spinbutton support in RenderThemeSafari
https://bugs.webkit.org/show_bug.cgi?id=54662

Add more spinbutton tests to the Windows Skipped list.

  • platform/win/Skipped:
17:22 Changeset [118590] by pilgrim@chromium.org
  • 12 edits
    5 copies in trunk/Source

[Chomium] Move sandboxSupport to Platform.h
https://bugs.webkit.org/show_bug.cgi?id=87518

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/Platform:

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::sandboxSupport):

  • chromium/public/android/WebSandboxSupport.h: Added.

(WebKit):
(WebSandboxSupport):

  • chromium/public/linux/WebFontFamily.h: Added.

(WebKit):
(WebFontFamily):

  • chromium/public/linux/WebSandboxSupport.h: Added.

(WebKit):
(WebSandboxSupport):

  • chromium/public/mac/WebSandboxSupport.h: Added.

(WebKit):
(WebSandboxSupport):

  • chromium/public/win/WebSandboxSupport.h: Added.

(WebKit):
(WebSandboxSupport):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKitPlatformSupport):

  • public/platform/android/WebSandboxSupport.h:
  • public/platform/linux/WebFontFamily.h:
  • public/platform/linux/WebSandboxSupport.h:
  • public/platform/mac/WebSandboxSupport.h:
  • public/platform/win/WebSandboxSupport.h:
  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::ensureFontLoaded):
(WebCore::PlatformSupport::loadFont):
(WebCore::PlatformSupport::getFontFamilyForCharacters):
(WebCore::PlatformSupport::getRenderStyleForStrike):

17:18 Changeset [118589] by pdr@google.com
  • 4 edits
    2 adds in trunk

Fix for self-closing <use> tags
https://bugs.webkit.org/show_bug.cgi?id=87504

Reviewed by Adam Barth.

Source/WebCore:

This change causes self-closing non-html tags to behave the same
as tags immediately followed by the closing tag.

Test: svg/custom/svg-self-closing-use.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::attachLater):
(WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
(WebCore::HTMLConstructionSite::insertForeignElement):

  • html/parser/HTMLConstructionSite.h:

(HTMLConstructionSite):

LayoutTests:

  • svg/custom/svg-self-closing-use-expected.html: Added.
  • svg/custom/svg-self-closing-use.html: Added.
16:59 Changeset [118588] by jberlin@webkit.org
  • 1 edit
    15 adds in trunk/LayoutTests

[Win] ~1/2 of all the iframe seamless tests fail
https://bugs.webkit.org/show_bug.cgi?id=87543

Add failing expected results for Windows in order to get the bots green.

  • platform/win/fast/frames: Added.
  • platform/win/fast/frames/seamless: Added.
  • platform/win/fast/frames/seamless/seamless-basic-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-css-cascade-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-form-get-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-form-get-named-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-form-post-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-form-post-named-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-hyperlink-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-hyperlink-named-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-inherited-document-style-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-window-location-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-window-location-href-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-window-location-sandbox-expected.txt: Added.
  • platform/win/fast/frames/seamless/seamless-window-open-expected.txt: Added.
16:46 Changeset [118587] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Make the ICU-based implementation of NonSharedCharacterBreakIterator work in configurations
that do not have COMPARE_AND_SWAP enabled.

Reviewed by Jessie Berlin.

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::compareAndSwapNonSharedCharacterBreakIterator): Added this helper. It uses
weakCompareAndSwap when COMPARE_AND_SWAP is enabled, and uses a mutex to do the atomic
compare and swap otherwise.
(WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator): Changed to use
compareAndSwapNonSharedCharacterBreakIterator().
(WebCore::NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator): Ditto.

16:31 Changeset [118586] by tommyw@google.com
  • 7 edits in trunk

MediaStream API: Make sure IceCallback is valid for PeerConnection00
https://bugs.webkit.org/show_bug.cgi?id=87480

Reviewed by Adam Barth.

Source/WebCore:

Existing tests have been extended to cover this change.

  • Modules/mediastream/PeerConnection00.cpp:

(WebCore::PeerConnection00::create):

  • Modules/mediastream/PeerConnection00.h:
  • Modules/mediastream/PeerConnection00.idl:

LayoutTests:

  • fast/mediastream/constructors-expected.txt:
  • fast/mediastream/constructors.html:
16:29 Changeset [118585] by commit-queue@webkit.org
  • 28 edits
    1 copy
    9 adds in trunk

Inline script and style blocked by Content Security Policy should provide more detailed console errors.
https://bugs.webkit.org/show_bug.cgi?id=86848

Patch by Mike West <mkwst@chromium.org> on 2012-05-25
Reviewed by Adam Barth.

Source/WebCore:

This change adds a URL and line number for context to each call to
ContentSecurityPolicy::allowInline*, and pipes it through to the
console message generation in CSPDirectiveList::reportViolation.

Line numbers are not added for injected scripts (document.write(...),
document.body.appendChild, and etc.).

Tests: http/tests/security/contentSecurityPolicy/injected-inline-script-allowed.html

http/tests/security/contentSecurityPolicy/injected-inline-script-blocked.html
http/tests/security/contentSecurityPolicy/injected-inline-style-allowed.html
http/tests/security/contentSecurityPolicy/injected-inline-style-blocked.html

  • bindings/ScriptControllerBase.cpp:

(WebCore::ScriptController::executeIfJavaScriptURL):

  • bindings/js/JSLazyEventListener.cpp:

(WebCore::JSLazyEventListener::initializeJSFunction):

  • bindings/v8/V8LazyEventListener.cpp:

(WebCore::V8LazyEventListener::prepareListenerObject):

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::ScriptElement):
(WebCore::ScriptElement::executeScript):

  • dom/ScriptElement.h:

(ScriptElement):

  • dom/StyleElement.cpp:

(WebCore::StyleElement::StyleElement):
(WebCore::StyleElement::createSheet):

  • dom/StyleElement.h:

(StyleElement):

  • dom/StyledElement.cpp:

(WebCore::StyledElement::StyledElement):
(WebCore):
(WebCore::StyledElement::style):
(WebCore::StyledElement::styleAttributeChanged):

  • dom/StyledElement.h:

(StyledElement):

  • page/ContentSecurityPolicy.cpp:

(CSPDirectiveList):
(WebCore::CSPDirectiveList::reportViolation):
(WebCore::CSPDirectiveList::checkInlineAndReportViolation):
(WebCore::CSPDirectiveList::checkEvalAndReportViolation):
(WebCore::CSPDirectiveList::allowJavaScriptURLs):
(WebCore::CSPDirectiveList::allowInlineEventHandlers):
(WebCore::CSPDirectiveList::allowInlineScript):
(WebCore::CSPDirectiveList::allowInlineStyle):
(WebCore::CSPDirectiveList::allowEval):
(WebCore):
(WebCore::isAllowedByAllWithCallStack):
(WebCore::isAllowedByAllWithContext):
(WebCore::ContentSecurityPolicy::allowJavaScriptURLs):
(WebCore::ContentSecurityPolicy::allowInlineEventHandlers):
(WebCore::ContentSecurityPolicy::allowInlineScript):
(WebCore::ContentSecurityPolicy::allowInlineStyle):

  • page/ContentSecurityPolicy.h:

(WTF):

LayoutTests:

  • http/tests/security/contentSecurityPolicy/combine-multiple-policies-expected.txt:
  • http/tests/security/contentSecurityPolicy/default-src-inline-blocked-expected.txt:
  • http/tests/security/contentSecurityPolicy/injected-inline-script-allowed-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-script-allowed.html: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-script-blocked-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/inline-script-blocked-expected.txt.
  • http/tests/security/contentSecurityPolicy/injected-inline-script-blocked.html: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-style-allowed-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-style-allowed.html: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-style-blocked-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/injected-inline-style-blocked.html: Added.
  • http/tests/security/contentSecurityPolicy/inline-script-blocked-expected.txt:
  • http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy-expected.txt:
  • http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt:
  • http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked-expected.txt:
  • http/tests/security/contentSecurityPolicy/inline-style-blocked-expected.txt:
  • http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt:
  • http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
  • http/tests/security/contentSecurityPolicy/report-only-expected.txt:
  • http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt:
  • http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
  • http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
  • http/tests/security/contentSecurityPolicy/resources/inject-script.js: Added.
  • http/tests/security/contentSecurityPolicy/resources/inject-style.js: Added.
  • http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt:
  • http/tests/security/contentSecurityPolicy/srcdoc-doesnt-bypass-script-src-expected.txt:
16:26 Changeset [118584] by jsbell@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

[Chromium] Add missing expectations needed after http://trac.webkit.org/changeset/118577/

Unreviewed gardening.

  • platform/chromium-mac-leopard/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
  • platform/chromium-mac-snowleopard/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
  • platform/chromium-mac/http/tests/media/video-buffered-range-contains-currentTime-expected.png: Added.
16:01 Changeset [118583] by timothy_horton@apple.com
  • 15 edits in trunk/Source/WebCore

ENABLE_CSS3_FLEXBOX is insufficient to disable all web-facing bits of the feature
https://bugs.webkit.org/show_bug.cgi?id=87537
<rdar://problem/11524921>

Reviewed by Simon Fraser.

Allow the feature flag to disable more web-facing parts of the CSS3 flexbox
implementation (primarily fallout from hiding it from computed style).

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/CSSValueKeywords.in:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::asText):

  • css/StylePropertyShorthand.cpp:

(WebCore::shorthandForProperty):

  • css/StylePropertyShorthand.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimation::ensurePropertyMap):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::createObject):

  • rendering/style/RenderStyleConstants.h:
16:00 Changeset [118582] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

DFG CSE should eliminate redundant WeakJSConstants
https://bugs.webkit.org/show_bug.cgi?id=87179

Reviewed by Gavin Barraclough.

Merged r118141 from dfgopt.

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::weakConstantCSE):
(CSEPhase):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGNode.h:

(JSC::DFG::Node::weakConstant):

15:57 Changeset [118581] by kbr@google.com
  • 2 edits in trunk/LayoutTests

New tex-image-and-sub-image-2d-with-video tests from r118565 failing on Mac Lion
https://bugs.webkit.org/show_bug.cgi?id=87541

Unreviewed; skipping tests until bug can be investigated.

  • platform/mac/Skipped:
15:49 Changeset [118580] by enne@google.com
  • 5 edits in trunk/Source/WebCore

[chromium] Add setting for painting debug info onto tiles
https://bugs.webkit.org/show_bug.cgi?id=75763

Reviewed by James Robinson.

Add a compile-time CCSetting to paint debug information onto tiles. This
can help to understand paint counts and layer indices. This setting is
off by default.

  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::paint):
(WebCore::ContentLayerPainter::ContentLayerPainter):
(WebCore::ContentLayerChromium::createTextureUpdater):

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::UpdatableTile::UpdatableTile):
(WebCore::UpdatableTile::setUpdateFrame):
(WebCore::UpdatableTile::incrementPaintCount):
(WebCore::UpdatableTile::updateFrame):
(WebCore::UpdatableTile::paintCount):
(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):
(WebCore::TiledLayerChromium::paintDebugTileInfo):

  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(WebCore::CCSettings::CCSettings):

15:45 Changeset [118579] by fpizlo@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

DFG CSE should do redundant store elimination
https://bugs.webkit.org/show_bug.cgi?id=87161

Reviewed by Oliver Hunt.

Merge r118138 from dfgopt.

This patch adds redundant store elimination. For example, consider this
code:

o.x = 42;
o.x = 84;

If o.x is speculated to be a well-behaved field, the first assignment is
unnecessary, since the second just overwrites it. We would like to
eliminate the first assignment in these cases. The need for this
optimization arises mostly from stores that our runtime requires. For
example:

o = {f:1, g:2, h:3};

This will have four assignments to the structure for the newly created
object - one assignment for the empty structure, one for {f}, one for
{f, g}, and one for {f, g, h}. We would like to only have the last of
those assigments in this case.

Intriguingly, doing so for captured variables breaks the way arguments
simplification used to work. Consider that prior to either arguments
simplification or store elimination we will have IR that looks like:

a: SetLocal(r0, Empty)
b: SetLocal(r1, Empty)
c: GetLocal(r0)
d: CreateArguments(@c)
e: SetLocal(r0, @d)
f: SetLocal(r1, @d)

Then redundant store elimination will eliminate the stores that
initialize the arguments registers to Empty, but then arguments
simplification eliminates the stores that initialize the arguments to
the newly created arguments - and at this point we no longer have any
stores to the arguments register, leading to hilarious crashes. This
patch therefore changes arguments simplification to replace
CreateArguments with JSConstant(Empty) rather than eliminating the
SetLocals. But this revealed bugs where arguments simplification was
being overzealous, so I fixed those bugs.

This is a minor speed-up on V8/early and a handful of other tests.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::uncheckedActivationRegister):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):
(JSC::DFG::ArgumentsSimplificationPhase::observeBadArgumentsUse):
(JSC::DFG::ArgumentsSimplificationPhase::observeBadArgumentsUses):
(JSC::DFG::ArgumentsSimplificationPhase::observeProperArgumentsUse):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::globalVarStoreElimination):
(CSEPhase):
(JSC::DFG::CSEPhase::putStructureStoreElimination):
(JSC::DFG::CSEPhase::putByOffsetStoreElimination):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::setReplacement):
(JSC::DFG::CSEPhase::eliminate):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::uncheckedActivationRegisterFor):
(Graph):

  • dfg/DFGNode.h:

(JSC::DFG::Node::isPhantomArguments):
(Node):
(JSC::DFG::Node::hasConstant):
(JSC::DFG::Node::valueOfJSConstant):
(JSC::DFG::Node::hasStructureTransitionData):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::computeValueRecoveryFor):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

15:36 Changeset [118578] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Remove a bunch of flaky expectations for tests that now pass.

Unreviewed test expectations update.

Also marked some nearby tests as more definitely failing.

  • platform/chromium/test_expectations.txt:
15:30 Changeset [118577] by fischman@chromium.org
  • 2 edits
    3 adds in trunk

[chromium] Default media controls should render only the currentTime-containing buffered range
https://bugs.webkit.org/show_bug.cgi?id=85925

Reviewed by Eric Carlson.

Test: http/tests/media/video-buffered-range-contains-currentTime.html

  • rendering/RenderMediaControlsChromium.cpp:

(WebCore::paintMediaSlider):

15:24 Changeset [118576] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

compositing/overflow/overflow-positioning.html fails with timeout on multiple chromium bots
https://bugs.webkit.org/show_bug.cgi?id=85771

Unreviewed test expectations update.

These tests haven't timed out lately on the Chromium bots, so removing
the suppressions.

  • platform/chromium/test_expectations.txt:
15:22 Changeset [118575] by annacc@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Removing tests from test_expectations.txt that are no longer crashing.

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
15:19 Changeset [118574] by annacc@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Removing media/video-volume-slider.html from test_expectations.txt

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
15:14 Changeset [118573] by adamk@chromium.org
  • 2 edits in trunk/LayoutTests

Mark some "flaky" TypedArray tests more appropriately as DEBUG SLOW

Unreviewed test expectations update.

  • platform/chromium/test_expectations.txt:
15:10 Changeset [118572] by simon.fraser@apple.com
  • 3 edits in trunk/Source/WebCore

Build fix: add TransformationMatrix ctor from an AffineTransform.

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::TransformationMatrix::TransformationMatrix):
(WebCore):

  • platform/graphics/transforms/TransformationMatrix.h:

(TransformationMatrix):

15:07 Changeset [118571] by adamk@chromium.org
  • 2 edits
    1 move
    10 deletes in trunk/LayoutTests

Rebaseline Chromium expectations for fast/box-shadow/shadow-buffer-partial.html

Unreviewed rebaselining.

The same rebaseline was made in r112582, but only got the Linux expectations.

  • fast/box-shadow/shadow-buffer-partial-expected.txt: Renamed from LayoutTests/platform/chromium-linux/fast/box-shadow/shadow-buffer-partial-expected.txt.
  • platform/chromium-linux-x86/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-mac-leopard/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-mac/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-win-vista/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-win-xp/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium-win/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/efl/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/gtk/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
  • platform/mac/fast/box-shadow/shadow-buffer-partial-expected.txt: Removed.
15:02 Changeset [118570] by rniwa@webkit.org
  • 12 edits
    2 adds in trunk

createContextualFragment and insertAdjacentHTML should throw syntax error
https://bugs.webkit.org/show_bug.cgi?id=87454

Reviewed by Darin Adler.

Source/WebCore:

Before this patch, createContextualFragment threw NOT_SUPPORTED_ERR and insertAdjacentHTML didn't throw any errors.
Make them throw SYNTAX_ERR to be consistent with the spec and Firefox:
http://html5.org/specs/dom-parsing.html#parsing
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-xhtml-syntax.html#xml-fragment-parsing-algorithm

Also reduced the code duplication.

Test: fast/dom/xhtml-fragment-parsing-exceptions.xhtml

  • dom/Range.cpp:

(WebCore::Range::createContextualFragment):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::setInnerHTML): Explicitly pass AllowScriptingContent.

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkup):
(WebCore::createFragmentForInnerOuterHTML): Takes ExceptionCode now.
(WebCore::createContextualFragment): Share code with createFragmentForInnerOuterHTML
and propagate the exception code.

  • editing/markup.h:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::setInnerHTML): Explicitly pass AllowScriptingContent.
(WebCore::HTMLElement::setOuterHTML): Ditto.
(WebCore::HTMLElement::insertAdjacentHTML): Ditto; also rename ignoredEc to ignoredEC
per Darin's comment on the bug 87339.

Source/WebKit/qt:

Pass an ExceptionCode to createContextualFragment.

  • Api/qwebelement.cpp:

(QWebElement::appendInside):
(QWebElement::prependInside):
(QWebElement::prependOutside):
(QWebElement::appendOutside):
(QWebElement::encloseContentsWith):
(QWebElement::encloseWith):

LayoutTests:

Add a regression test, and rebaselined the existing tests since we throw
DOMException.SYNTAX_ERR instead of DOMException.INVALID_STATE_ERR.

  • fast/dom/xhtml-fragment-parsing-exceptions-expected.txt: Added.
  • fast/dom/xhtml-fragment-parsing-exceptions.xhtml: Added.
  • fast/innerHTML/innerHTML-changing-document-properties-expected.txt:
  • fast/parser/xhtml-innerhtml-null-byte-first.xhtml:
  • fast/parser/xhtml-innerhtml-null-byte.xhtml:
14:48 Changeset [118569] by jknotten@chromium.org
  • 3 edits
    2 adds in trunk

Body scrollWidth() and scrollHeight() should be page scale-invariant
https://bugs.webkit.org/show_bug.cgi?id=87494

RenderView::documentRect() is calculating the "scaled" document rect by applying
the current transformation matrix to the unscaledDocumentRect() and then
returning the rounded-out IntRect result.

This rounding out is incorrect because it allows the scaled rectangle to
represent an area that is not actually covered by the document.

We fix this by applying the current transform to the document rect
as a FloatRect and then explicitly converting to IntRect, which
takes the floor of the resulting rectangle coordinates instead of
rounding them out.

This is evidenced by the document.body.scrollWidth() and
document.body.scrollHeight() changing under page scale factor when
they are expected to remain invariant.

Reviewed by James Robinson.

Source/WebCore:

Test: fast/dom/window-scroll-scaling.html

  • rendering/RenderView.cpp:

(WebCore::RenderView::documentRect):

LayoutTests:

  • fast/dom/window-scroll-scaling-expected.txt: Added.
  • fast/dom/window-scroll-scaling.html: Added.
14:46 Changeset [118568] by mitz@apple.com
  • 9 edits in trunk/Source/WebCore

characterBreakIterator() is not safe to use reentrantly or from multiple threads
https://bugs.webkit.org/show_bug.cgi?id=87521

Reviewed by Darin Adler.

Replaced characterBreakIterator() with a NonSharedCharacterBreakIterator class, which
obtains a unique TextBreakIterator. Replaced the global shared instance with a single-entry
cache.

  • dom/CharacterData.cpp:

(WebCore::CharacterData::parserAppendData): Changed to use NonSharedCharacterBreakIterator.

  • platform/graphics/StringTruncator.cpp:

(WebCore::centerTruncateToBuffer): Ditto.
(WebCore::rightTruncateToBuffer): Ditto.

  • platform/text/String.cpp:

(WebCore::numGraphemeClusters): Ditto.
(WebCore::numCharactersInGraphemeClusters): Ditto.

  • platform/text/TextBreakIterator.h: Removed the declaration of characterBreakIterator().

(NonSharedCharacterBreakIterator): Added. An instance of this class has a character break
iterator instance that is unique to it for the lifetime of the instance.
(WebCore::NonSharedCharacterBreakIterator::operator TextBreakIterator*): Added.

  • platform/text/TextBreakIteratorICU.cpp:

(WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator): Added. Tries
to swap the m_iterator member variable with the cached instance. If that fails, initializes
m_iterator to a new character break iterator.
(WebCore::NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator): Added. Tries
to put the m_iterator member variable back in the cache. If that fails, meaning there is
already something in the cache, destroys m_iterator.

  • platform/text/gtk/TextBreakIteratorGtk.cpp:

(WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator): Same as in
TextBreakIteratorICU.cpp.
(WebCore::NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator): Ditto.
(WebCore::cursorMovementIterator): Moved the old implementation of characterBreakIterator()
here.

  • platform/text/qt/TextBreakIteratorQt.cpp:

(WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator): Same as in
TextBreakIteratorICU.cpp.
(WebCore::NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator): Ditto.
(WebCore::cursorMovementIterator): Moved the old implementation of characterBreakIterator()
here.

  • platform/text/wince/TextBreakIteratorWinCE.cpp:

(WebCore::NonSharedCharacterBreakIterator::NonSharedCharacterBreakIterator): Same as in
TextBreakIteratorICU.cpp.
(WebCore::NonSharedCharacterBreakIterator::~NonSharedCharacterBreakIterator): Ditto.
(WebCore::cursorMovementIterator): Moved the old implementation of characterBreakIterator()
here.

14:42 Changeset [118567] by simon.fraser@apple.com
  • 32 edits
    8 adds in trunk

Terrible performance on http://alliances.commandandconquer.com/ and http://www.lordofultima.com/
https://bugs.webkit.org/show_bug.cgi?id=84410

Source/WebCore:

Reviewed by Dave Hyatt.

First part of fixing O(N2) issues when walking the RenderLayer tree
for computeCompositingRequirements().

For each layer that goes into the OverlapMap, we were computing an absolute
layer bounds, which requires walking back to the root of the tree.
Optimize this when possible by storing a stack of offsets as we walk
the tree, and using this stack to do the mapping.

The stack of offsets and transforms is managed by RenderGeometryMap.
When visiting a RenderLayer, RenderLayerCompositor pushes onto
the geometry map stack data about offsets and transforms between
the current layer and its stacking-parent. RenderGeometryMap handles
the case where the previous renderer pushed is between the current
renderer and its container. RenderGeometryMap can also handle callers
pushing renderers with multiple containers between them.

RenderGeometryMap stores some flags about whether the set of mapping
steps in the stack involve transforms, fixed position, or special non-uniform
mappings like CSS columns. In some cases, it falls back to mapping via
renderers.

Once constructed, the RenderGeometryMap stack can be used to map multiple
rects or points efficiently. Stacks consisting of simple offsets are
collapsed to a single offset.

Mappings between renderers and their containers are pushed by pushMappingToContainer()
methods, which are similar to mapLocalToContainer() methods. Having this code
in RenderObjects was deemed preferable to handling columns, transforms etc. all in
RenderLayer code.

Tested by assertions in RenderGeometryMap code that its mapping matches
mapping via localToAbsolute() calls.

RenderLayerCompositor::updateCompositingLayers() creates a RenderGeometryMap,
and pushes and pops layer renderers as it visits them. The geometry map is used
by RenderLayerCompositor::addToOverlapMap() when computing absolute layer bounds.

Futher optimizations in RenderGeometryMap are possible, especially with stacks that
have many offsets and a few transforms.

Tests: compositing/geometry/composited-in-columns.html

compositing/geometry/flipped-writing-mode.html

  • CMakeLists.txt: Add RenderGeometryMap
  • GNUmakefile.list.am: Ditt
  • Target.pri: Ditto
  • WebCore.gypi: Ditto
  • WebCore.vcproj/WebCore.vcproj: Ditto
  • WebCore.xcodeproj/project.pbxproj: Ditto
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::absoluteContentBox):
(WebCore::RenderBox::pushMappingToContainer):
(WebCore::RenderBox::offsetFromContainer):

  • rendering/RenderBox.h:
  • rendering/RenderGeometryMap.cpp: Added.

(RenderGeometryMapStep):
(WebCore::RenderGeometryMapStep::RenderGeometryMapStep):
(WebCore::RenderGeometryMapStep::mapPoint):
(WebCore::RenderGeometryMapStep::mapQuad):
(WebCore::RenderGeometryMap::RenderGeometryMap):
(WebCore::RenderGeometryMap::~RenderGeometryMap):
(WebCore::RenderGeometryMap::absolutePoint):
(WebCore::RenderGeometryMap::absoluteRect):
(WebCore::RenderGeometryMap::mapToAbsolute):
(WebCore::RenderGeometryMap::pushMappingsToAncestor):
(WebCore::RenderGeometryMap::push):
(WebCore::RenderGeometryMap::pushView):
(WebCore::RenderGeometryMap::popMappingsToAncestor):
(WebCore::RenderGeometryMap::stepInserted):
(WebCore::RenderGeometryMap::stepRemoved):

  • rendering/RenderGeometryMap.h: Added.

(RenderGeometryMap):
(WebCore::RenderGeometryMap::hasNonUniformStep):
(WebCore::RenderGeometryMap::hasTransformStep):
(WebCore::RenderGeometryMap::hasFixedPositionStep):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::offsetFromContainer):
(WebCore::RenderInline::pushMappingToContainer):

  • rendering/RenderInline.h:

(RenderInline):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateCompositingLayers):
(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
(WebCore::RenderLayerCompositor::computeCompositingRequirements):

  • rendering/RenderLayerCompositor.h:

(RenderLayerCompositor):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::mapLocalToContainer):
(WebCore::RenderObject::pushMappingToContainer):
(WebCore::RenderObject::offsetFromContainer):
(WebCore::RenderObject::container):

  • rendering/RenderObject.h:
  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::offsetFromContainer):

  • rendering/RenderTableCell.h:

(RenderTableCell):

  • rendering/RenderView.cpp:

(WebCore::RenderView::pushMappingToContainer):

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::pushMappingToContainer):

  • rendering/svg/RenderSVGForeignObject.h:

(RenderSVGForeignObject):

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::pushMappingToContainer):

  • rendering/svg/RenderSVGInline.h:

(RenderSVGInline):

  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::pushMappingToContainer):

  • rendering/svg/RenderSVGModelObject.h:

(RenderSVGModelObject):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::pushMappingToContainer):

  • rendering/svg/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::pushMappingToContainer):

  • rendering/svg/RenderSVGText.h:

(RenderSVGText):

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::pushMappingToContainer):

  • rendering/svg/SVGRenderSupport.h:

(SVGRenderSupport):

LayoutTests:

Reviewed by Dave Hyatt.

Basic tests for compositing inside columns, and in a flipped-writing-mode
document.

  • compositing/geometry/composited-in-columns-expected.png: Added.
  • compositing/geometry/composited-in-columns-expected.txt: Added.
  • compositing/geometry/composited-in-columns.html: Added.
  • compositing/geometry/flipped-writing-mode-expected.png: Added.
  • compositing/geometry/flipped-writing-mode-expected.txt: Added.
  • compositing/geometry/flipped-writing-mode.html: Added.
14:41 Changeset [118566] by commit-queue@webkit.org
  • 8 edits
    2 deletes in trunk/LayoutTests

Acid3 fails in WebKit2 regression tests
https://bugs.webkit.org/show_bug.cgi?id=87187

Patch by Andras Becsi <andras.becsi@nokia.com> on 2012-05-25
Reviewed by Alexey Proskuryakov.

Since the link test in the acid3.html relies on visited link tracking
it should call layoutTestController.keepWebHistory() because visited
link tracking is disabled by default to avoid interdependencies between
test.

Update expected files and png's now that the result does not show the
"YOU SHOULD NOT SEE THIS AT ALL" text in red in the top left corner.

  • http/tests/misc/acid3-expected.png:
  • http/tests/misc/acid3-expected.txt:
  • http/tests/misc/acid3.html: Fix test.
  • platform/chromium-mac-leopard/http/tests/misc/acid3-expected.png:
  • platform/chromium-mac-snowleopard/http/tests/misc/acid3-expected.png:
  • platform/chromium-mac/http/tests/misc/acid3-expected.png:
  • platform/chromium-mac/http/tests/misc/acid3-expected.txt:
  • platform/mac-wk2/http/tests/misc/acid3-expected.png: Same as the platform independent result. Removed.
  • platform/mac-wk2/http/tests/misc/acid3-expected.txt: Same as the platform independent result. Removed.
14:38 Changeset [118565] by kbr@google.com
  • 3 edits
    3 copies
    4 adds in trunk/LayoutTests

Incorporate new tex-image-and-sub-image-2d-with-video*.html tests
https://bugs.webkit.org/show_bug.cgi?id=87042

Reviewed by James Robinson.

Incorporated current version of video-related WebGL tests from
Khronos repository testing uploading to all packed pixel formats.

  • fast/canvas/webgl/resources/tex-image-and-sub-image-2d-with-video.js: Added.

(generateTest.runOneIteration):
(generateTest.runTest):

  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-expected.txt:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565-expected.txt: Copied from LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-expected.txt.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html: Added.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444-expected.txt: Copied from LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-expected.txt.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html: Added.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551-expected.txt: Copied from LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-expected.txt.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html: Added.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html:
14:36 Changeset [118564] by jberlin@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Rebaseline the Windows getComputedStyle results to reflect features
turned off on Windows.

  • platform/win/fast/css/getComputedStyle/computed-style-expected.txt: Added.
  • platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.
14:28 Changeset [118563] by danakj@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] WebLayerTreeViewImpl should not hide methods in CCLayerTreeHost with signatures that match the Client interface
https://bugs.webkit.org/show_bug.cgi?id=87301

Reviewed by James Robinson.

Most methods in the CCLayerTreeHostClient interface have a matching
method signature on CCLayerTreeHost that simply calls the client, if
one exists at all. However, CCLayerTreeHost::updateAnimations() does
important work in addition to calling the client.

Currently WebLayerTreeViewImpl itself implements the interface for
CCLayerTreeHostClient as well as CCLayerTreeHost, and simply forwards
any call to a method in the client interface to its own client. This
blocks WebViewImpl from calling CCLayerTreeHost::updateAnimations, since
the method is also in the client interface.

We change WebLayerTreeViewImpl to own a CCLayerTreeHost and a
WebLayerTreeHostClientAdapter. This fixes the shadowing by making
the two interfaces separate, and resolves lifetime issues by
ensuring that the CCLayerTreeHost is destroyed before its client.

  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::setSurfaceReady):
(WebKit::WebLayerTreeView::setRootLayer):
(WebKit::WebLayerTreeView::compositorIdentifier):
(WebKit::WebLayerTreeView::setViewportSize):
(WebKit::WebLayerTreeView::viewportSize):
(WebKit::WebLayerTreeView::setBackgroundColor):
(WebKit::WebLayerTreeView::setVisible):
(WebKit::WebLayerTreeView::setPageScaleFactorAndLimits):
(WebKit::WebLayerTreeView::startPageScaleAnimation):
(WebKit::WebLayerTreeView::setNeedsAnimate):
(WebKit::WebLayerTreeView::setNeedsRedraw):
(WebKit::WebLayerTreeView::commitRequested):
(WebKit::WebLayerTreeView::composite):
(WebKit::WebLayerTreeView::updateAnimations):
(WebKit::WebLayerTreeView::compositeAndReadback):
(WebKit::WebLayerTreeView::finishAllRendering):
(WebKit::WebLayerTreeView::context):
(WebKit::WebLayerTreeView::loseCompositorContext):

  • src/WebLayerTreeViewImpl.cpp:

(WebKit):
(WebLayerTreeViewClientAdapter):
(WebKit::WebLayerTreeViewClientAdapter::WebLayerTreeViewClientAdapter):
(WebKit::WebLayerTreeViewClientAdapter::~WebLayerTreeViewClientAdapter):
(WebKit::WebLayerTreeViewImpl::create):
(WebKit::WebLayerTreeViewImpl::WebLayerTreeViewImpl):
(WebKit::WebLayerTreeViewImpl::~WebLayerTreeViewImpl):

  • src/WebLayerTreeViewImpl.h:

(WebCore):
(WebKit):
(WebKit::WebLayerTreeViewImpl::layerTreeHost):
(WebLayerTreeViewImpl):

14:17 Changeset [118562] by simon.fraser@apple.com
  • 8 edits in trunk/Source/WebCore

Cache absolute clip rects on RenderLayer for compositing overlap testing
https://bugs.webkit.org/show_bug.cgi?id=87212

Reviewed by Dave Hyatt.

Enhance the cache of ClipRects on RenderLayers to store three
different types of ClipRects, rather than just one.

We need to compute clip rects relative to different layers
for different purposes. For painting, we compute relative to
the compositing layer which is acting as a painting root.
For hit testing, we compute relative to the root, except
for transformed layers. For composting overlap testing, we
compute relative to the root ("absolute"). At other times, we do one-off
computation which we never want to cache ("temporary clip rects").

This change allows us to cache rects for hit testing, and for
compositing overlap testing. This has huge performance benefits
on some pages (bug 84410).

This change also makes ClipRects not arena-allocated, so we
can use RefPtr<ClipRect>.

No testable behavior change.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::willBeDestroyed): No need for the
explicit clipRects teardown, since clipRects don't need a live
RenderObject for arena-based destruction.

  • rendering/RenderLayer.cpp: Remove arena-related new and delete.

(WebCore::RenderLayer::RenderLayer): No need to explicitly initialize m_clipRects,
since it's an OwnPtr now.
(WebCore::RenderLayer::~RenderLayer): No explicit clipRect teardown required.
(WebCore::RenderLayer::clippingRootForPainting): Renamed to make its purpose
more obvious.
(WebCore::RenderLayer::paintLayer): Use the TemporaryClipRects type when necessary.
(WebCore::RenderLayer::paintLayerContents): Ditto
(WebCore::RenderLayer::hitTestLayer): No longer need to use temporary clipRects when
hit testing since we cache clip rects for hit testing.
(WebCore::RenderLayer::updateClipRects): Take a ClipRectsType and pass it through.
(WebCore::RenderLayer::calculateClipRects): Ditto
(WebCore::RenderLayer::parentClipRects): Ditto
(WebCore::RenderLayer::backgroundClipRect): Ditto
(WebCore::RenderLayer::calculateRects): Take ClipRectsType, which obviates temporaryClipRects.
(WebCore::RenderLayer::childrenClipRect): Use clippingRootForPainting().
(WebCore::RenderLayer::selfClipRect): Ditto
(WebCore::RenderLayer::localClipRect): Ditto
(WebCore::RenderLayer::clearClipRectsIncludingDescendants): Take a type of clip rect to clear
(include all). Allows us to just clear painting clip rects.
(WebCore::RenderLayer::clearClipRects):

  • rendering/RenderLayer.h:

(WebCore::ClipRects::create): We don't use RefCounted<> in order to use a bit in
the refCount for a flag. Add create() method.
(WebCore::ClipRects::deref): No longer arena-allocated.
(WebCore::ClipRectsCache::ClipRectsCache): Struct that holds a small
array of the 3 types of clipRects (and, in debug, the layer relative
to which they were computed).
(WebCore::RenderLayer::clipRects):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateCompositedBounds): Use AbsoluteClipRects; rootLayer
is always the RenderView's layer here.
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Use TemporaryClipRects.
(WebCore::RenderLayerBacking::setRequiresOwnBackingStore): When this variable changes,
we need to invalidate painting clipRects, since it affects the ancestor relative to which
those rects are computed.

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateBacking): When the composited state
of a layer changes, we have to clear all descendant clip rects, since this
can affect the layers relative to which clip rects are computed.
(WebCore::RenderLayerCompositor::addToOverlapMap): Use AbsoluteClipRects.
(WebCore::RenderLayerCompositor::computeCompositingRequirements): No need
to call updateLayerPosition(), since that should have always happened after
layout. That call cleared clip rects, so removing it is very beneficial.
(WebCore::RenderLayerCompositor::clippedByAncestor): Use TemporaryClipRects.

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeLayers): Use TemporaryClipRects.

14:14 Changeset [118561] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Pasting into contenteditable table cell pastes into adjacent cell instead.
https://bugs.webkit.org/show_bug.cgi?id=53933

Patch by Sukolsak Sakshuwong <sukolsak@google.com> on 2012-05-25
Reviewed by Darin Adler.

This bug has been fixed. Add a test to make sure that it won't regress.

  • editing/pasteboard/paste-into-table-cell-2-expected.txt: Added.
  • editing/pasteboard/paste-into-table-cell-2.html: Added.
14:09 Changeset [118560] by beidson@apple.com
  • 4 edits in trunk/Source/WebKit2

https://bugs.webkit.org/show_bug.cgi?id=87418
WebBackForwardList should separate "has no current index" from the integer value of the current index

This patch also renames "m_current" to "m_currentIndex" for clarity and symmetry with
other variable names that reference "index",

It also removes the m_closed and m_enabled flags which were never actually used.

Reviewed by Darin Adler.

  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::WebBackForwardList):
(WebKit::WebBackForwardList::addItem):
(WebKit::WebBackForwardList::goToItem):
(WebKit::WebBackForwardList::currentItem):
(WebKit::WebBackForwardList::backItem):
(WebKit::WebBackForwardList::forwardItem):
(WebKit::WebBackForwardList::itemAtIndex):
(WebKit::WebBackForwardList::backListCount):
(WebKit::WebBackForwardList::forwardListCount):
(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::clear):

  • UIProcess/WebBackForwardList.h:

(WebKit::WebBackForwardList::currentIndex):
(WebBackForwardList):

  • UIProcess/cf/WebBackForwardListCF.cpp:

(WebKit::WebBackForwardList::createCFDictionaryRepresentation):
(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation):

14:07 Changeset [118559] by bdakin@apple.com
  • 2 edits in trunk/Source/WebKit2

https://bugs.webkit.org/show_bug.cgi?id=87529
Background tabs hosted in window server flash before painting
when they first become active

Reviewed by Anders Carlsson.

Initialize to LayerHostingModeInWindowServer if that is
available to avoid having to re-make the context and re-set
everything later on.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

14:00 Changeset [118558] by jsbell@chromium.org
  • 1 edit
    6 deletes in trunk/LayoutTests

[Chromium] Remove 6 incorrect baselines from http://trac.webkit.org/changeset/117821/

Unreviewed gardening.

  • platform/chromium-win/fast/viewport/viewport-126-expected.txt: Removed.
  • platform/chromium-win/fast/viewport/viewport-127-expected.txt: Removed.
  • platform/chromium-win/fast/viewport/viewport-65-expected.txt: Removed.
  • platform/chromium-win/fast/viewport/viewport-82-expected.txt: Removed.
  • platform/chromium-win/fast/viewport/viewport-84-expected.txt: Removed.
  • platform/chromium-win/fast/viewport/viewport-87-expected.txt: Removed.
13:48 Changeset [118557] by dpranke@chromium.org
  • 6 edits in trunk/Tools

webkitpy: change scm.add(), scm.delete() to accept multiple paths
https://bugs.webkit.org/show_bug.cgi?id=87528

Reviewed by Ojan Vafai.

launching git or svn for individual files can be slow; this
change will hand multiple paths at once to git and svn so they
can be added in a batch.

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.add_list):
(Git.delete_list):

  • Scripts/webkitpy/common/checkout/scm/scm.py:

(SCM.add):
(SCM):
(SCM.add_list):
(SCM.delete):
(SCM.delete_list):

  • Scripts/webkitpy/common/checkout/scm/scm_mock.py:

(MockSCM.add):
(MockSCM):
(MockSCM.add_list):
(MockSCM.delete):
(MockSCM.delete_list):

  • Scripts/webkitpy/common/checkout/scm/scm_unittest.py:

(_shared_test_exists):
(_shared_test_added_files):
(_test_delete_list):

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.add_list):
(SVN.delete_list):

13:28 Changeset [118556] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

2012-05-25 Jessie Berlin <jberlin@apple.com>

Web Timing is not enabled on Windows
https://bugs.webkit.org/show_bug.cgi?id=42435

Add the fast/performance tests to the Windows Skipped list.

  • platform/win/Skipped:
13:19 Changeset [118555] by fpizlo@apple.com
  • 15 edits in trunk/Source/JavaScriptCore

DFG ConvertThis should just be a CheckStructure if the structure is known
https://bugs.webkit.org/show_bug.cgi?id=87057

Reviewed by Gavin Barraclough.

Merged r118021 from dfgopt.

This gives ValueProfile the ability to track singleton values - i.e. profiling
sites that always see the same value.

That is then used to profile the structure in op_convert_this.

This is then used to optimize op_convert_this into a CheckStructure if the
structure is always the same.

That then results in better CSE in inlined code that uses 'this', since
previously we couldn't CSE accesses on 'this' from different inline call frames.

Also fixed a bug where we were unnecessarily flushing 'this'.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):
(JSC::CodeBlock::stronglyVisitStrongReferences):

  • bytecode/LazyOperandValueProfile.cpp:

(JSC::CompressedLazyOperandValueProfileHolder::computeUpdatedPredictions):

  • bytecode/LazyOperandValueProfile.h:

(CompressedLazyOperandValueProfileHolder):

  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::ValueProfileBase):
(JSC::ValueProfileBase::dump):
(JSC::ValueProfileBase::computeUpdatedPrediction):
(ValueProfileBase):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::parseBlock):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_convert_this):
(JSC::JIT::emitSlow_op_convert_this):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_convert_this):
(JSC::JIT::emitSlow_op_convert_this):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
  • runtime/JSValue.h:

(JSValue):

  • runtime/Structure.h:

(JSC::JSValue::structureOrUndefined):
(JSC):

13:11 Changeset [118554] by jhoneycutt@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

2012-05-25 Jessie Berlin <jberlin@apple.com>

File API is not yet supported on Windows
https://bugs.webkit.org/show_bug.cgi?id=37957

Add platform specific results for a test that attempts to use the FileReaderConstructor.

  • platform/win/fast/dom/call-a-constructor-as-a-function-expected.txt: Added.
13:02 Changeset [118553] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r112155.
http://trac.webkit.org/changeset/112155
https://bugs.webkit.org/show_bug.cgi?id=79389
Hitch (due to style recalc?) when starting CSS3 animation

This caused a number of issues, including:
https://bugs.webkit.org/show_bug.cgi?id=87146
https://bugs.webkit.org/show_bug.cgi?id=84194
<rdar://problem/11506629>
<rdar://problem/11267408>
<rdar://problem/11531859>

  • dom/Element.cpp:

(WebCore::Element::recalcStyle):

12:50 Changeset [118552] by hyatt@apple.com
  • 8 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=87525

For the new multi-column layout, create a flow thread and make sure the children get put inside it.

Reviewed by Eric Seidel.

  • rendering/RenderMultiColumnBlock.cpp:

(WebCore::RenderMultiColumnBlock::RenderMultiColumnBlock):
(WebCore::RenderMultiColumnBlock::addChild):
(WebCore):

  • rendering/RenderMultiColumnBlock.h:

(WebCore):
(RenderMultiColumnBlock):
(WebCore::RenderMultiColumnBlock::flowThread):

  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::~RenderMultiColumnFlowThread):
(WebCore):

  • rendering/RenderMultiColumnFlowThread.h:

(RenderMultiColumnFlowThread):

  • rendering/RenderMultiColumnSet.h:
  • rendering/RenderObject.h:

(RenderObject):
(WebCore::RenderObject::isRenderMultiColumnSet):

12:40 Changeset [118551] by eae@chromium.org
  • 4 edits in trunk/Source/WebCore

Change RenderBoxModelObject to compute relativePositionOffset as size
https://bugs.webkit.org/show_bug.cgi?id=87447

Reviewed by Eric Seidel.

Compute relativePositionOffset as size instead of doing one axis at a
time as all call sites uses the size version of the method. This avoids
having to walk the DOM twice to accumulate the offsets.

Also remove the relativePositionOffsetX and Y methods as they are no
longer used.

No new tests, covered by existing tests.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::layoutOverflowRectForPropagation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::accumulateRelativePositionOffsets):
(WebCore::RenderBoxModelObject::relativePositionOffset):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

12:40 Changeset [118550] by zandobersek@gmail.com
  • 2 edits in trunk

configure.ac has duplicated AC_MSG_RESULT([$enable_sandbox]) and nothing for seamless iframes
https://bugs.webkit.org/show_bug.cgi?id=87453

Reviewed by Eric Seidel.

Report the value of $enable_iframe_seamless rather than $enable_sandbox
after checking whether to enable the iframe seamless option.

  • configure.ac:
12:38 WebKit Team edited by dbarton@mathscribe.com
(diff)
12:21 Changeset [118549] by commit-queue@webkit.org
  • 3 edits
    2 deletes in trunk

Unreviewed, rolling out r118395.
http://trac.webkit.org/changeset/118395
https://bugs.webkit.org/show_bug.cgi?id=87526

Breaking sites including GMail and Yahoo mail (Requested by
jsbell on #webkit).

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

Source/WebCore:

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::collapseMargins):

LayoutTests:

  • fast/css/clear-float-sibling-expected.html: Removed.
  • fast/css/clear-float-sibling.html: Removed.
12:06 Changeset [118548] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Skip the Network Information tests on Windows.

  • platform/win/Skipped:
12:05 Changeset [118547] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[NRWT] Add unit testing for perf tests on locked shards
https://bugs.webkit.org/show_bug.cgi?id=87489

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-25
Reviewed by Dirk Pranke.

Adding utests that makes sure that perf tests are running in locked
shards and by passing --no-http won't break NRWT (r118421).

  • Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:

(ShardingTests):
(ShardingTests.test_shard_by_dir):
(ShardingTests.test_shard_every_file):
(ShardingTests.test_shard_in_two):
(ShardingTests.test_multiple_locked_shards):
(LockCheckingManager):
(LockCheckingManager.init):
(LockCheckingManager.handle_finished_list):
(ManagerTest.test_http_locking):
(ManagerTest):
(ManagerTest.test_perf_locking):

  • Scripts/webkitpy/layout_tests/port/test.py:
12:04 Changeset [118546] by jsbell@chromium.org
  • 1 edit
    2 deletes in trunk/LayoutTests

[Chromium] Remove 2 incorrect rebaselines from http://trac.webkit.org/changeset/117818/

Unreviewed gardening.

  • platform/chromium-mac/canvas/philip/tests/2d.imageData.create1.type-expected.txt: Removed.
  • platform/chromium-mac/canvas/philip/tests/2d.imageData.create2.type-expected.txt: Removed.
11:48 Changeset [118545] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Skip more WebGL tests on Windows.

  • platform/win/Skipped:
11:36 Changeset [118544] by zandobersek@gmail.com
  • 2 edits in trunk

[Gtk] Remove configuration options that do not apply anymore
https://bugs.webkit.org/show_bug.cgi?id=87509

Reviewed by Martin Robinson.

Remove configuration options for enabling or disabling HTML5 datagrid,
DOM storage, image resizer API and sandboxed iframe support. These
features were either turned on by default with the feature defines
removed from the code or removed from the source.

  • configure.ac:
11:24 Changeset [118543] by epoger@chromium.org
  • 13 edits
    2 adds
    8 deletes in trunk/LayoutTests

New baselines for http://crbug.com/129184

Unreviewed rebaselining.

Patch by Elliot Poger <epoger@chromium.org> on 2012-05-25

  • platform/chromium-linux/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-linux/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium-linux/svg/transforms/svg-css-transforms-expected.png:
  • platform/chromium-linux/transforms/svg-vs-css-expected.png:
  • platform/chromium-mac/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-mac/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium-mac/svg/transforms/svg-css-transforms-expected.png:
  • platform/chromium-mac/transforms/svg-vs-css-expected.png:
  • platform/chromium-win/svg/filters/subRegion-one-effect-expected.png:
  • platform/chromium-win/svg/filters/subRegion-two-effects-expected.png:
  • platform/chromium-win/svg/transforms/svg-css-transforms-expected.png:
  • platform/chromium-win/transforms/svg-vs-css-expected.png:
  • platform/efl/svg/filters/subRegion-one-effect-expected.txt: Removed.
  • platform/efl/svg/filters/subRegion-two-effects-expected.txt: Removed.
  • platform/gtk/svg/filters/subRegion-one-effect-expected.txt: Removed.
  • platform/gtk/svg/filters/subRegion-two-effects-expected.txt: Removed.
  • platform/mac/svg/filters/subRegion-one-effect-expected.txt: Removed.
  • platform/mac/svg/filters/subRegion-two-effects-expected.txt: Removed.
  • platform/qt/svg/filters/subRegion-one-effect-expected.txt: Removed.
  • platform/qt/svg/filters/subRegion-two-effects-expected.txt: Removed.
  • svg/filters/subRegion-one-effect-expected.txt: Added.
  • svg/filters/subRegion-two-effects-expected.txt: Added.
11:01 Changeset [118542] by kenrb@chromium.org
  • 2 edits in trunk/Source/WebCore

Layout root not getting cleared for anonymous renderers geting destroyed
https://bugs.webkit.org/show_bug.cgi?id=84002

Reviewed by Abhishek Arya.

This is a follow-up to r109406, which added a check to clear layout
roots when they point to a renderer that is being destroyed. The
thinking was that layout roots would never be anonymous renderers,
but there are some cases where this is not true (in particular,
generated content containers with overflow clips can be layout roots).

As in r109406, this patch has no layout test. This is because any test
that exercises this behavior is caused by an existing layout bug where
a child is not properly getting layout (or a renderer is getting dirtied
out of order during layout) and will fail multiple ASSERTs:

in particular, ASSERT(!m_layoutRoot->container()
!m_layoutRoot->

container()->needsLayout()) in FrameView::scheduleRelayoutOfSubtree(),
and ASSERT_NOT_REACHED() in RenderObject::clearLayoutRootIfNeeded().
We are preventing those bugs from manifesting as security issues with
this patch.

This also removes an ASSERT from the RenderObject destructor. This is
redundant with the condition in RenderObject::clearLayoutRootIfNeeded()
which is always called in RenderObject::willBeDestroyed(), so the check
is not needed. It had to be removed because it fails when I try to
adjust the ASSERT condition by removing the !node()
check, due to RenderWidget clearing its node() during destruction.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::~RenderObject):
(WebCore::RenderObject::willBeDestroyed):

10:47 Changeset [118541] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Implement LayoutTest's eventSender.beginDragWithFiles interface in windows platform
https://bugs.webkit.org/show_bug.cgi?id=86296

Add more affected tests to the Windows Skipped list.

  • platform/win/Skipped:
10:47 Changeset [118540] by jberlin@webkit.org
  • 2 edits in trunk/Tools

[Win] fast/events/keydown-leftright-keys.html failing since introduction in r118001
https://bugs.webkit.org/show_bug.cgi?id=87511

Reviewed by Alexey Proskuryakov.

Update the Windows implementation of keyDown to match the Mac one changed in r118001.

  • DumpRenderTree/win/EventSender.cpp:

(keyDownCallback):

10:28 Changeset [118539] by kenrb@chromium.org
  • 2 edits in trunk/Tools

Adding Ken Buchanan to committers.py
https://bugs.webkit.org/show_bug.cgi?id=87443

Unreviewed.

Adding self to committers.py as a Committer.

  • Scripts/webkitpy/common/config/committers.py:
10:26 Changeset [118538] by apavlov@chromium.org
  • 5 edits in trunk

Web Inspector: Hangup when continuously changing a css width value in Inspector
https://bugs.webkit.org/show_bug.cgi?id=85802

Reviewed by Vsevolod Vlasov.

Source/WebCore:

An error in the property whitespace prefix detection algorithm would append the previous line trailing whitespace,
thereby enormously increasing the actual prefix during multiple incremental property changes.

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyle::newLineAndWhitespaceDelimiters):

LayoutTests:

  • inspector/styles/styles-formatting-expected.txt:
  • inspector/styles/styles-formatting.html:
10:24 Changeset [118537] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Widen CRASH expectation for visibility-simple-canvas2d-layer.html to include Mac10.6.

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
10:14 Changeset [118536] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Remove/restore test expectations for html5lib tests.
https://bugs.webkit.org/show_bug.cgi?id=87275

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
10:08 Changeset [118535] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Remove test expectation for video-cookie.html now that the issue
is fixed on the Chromium side.
https://bugs.webkit.org/show_bug.cgi?id=87459

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
09:44 Changeset [118534] by jberlin@webkit.org
  • 1 edit
    2 deletes in trunk/LayoutTests

Remove the Windows platform-specific results for window-domurl-crash.

r115582 changed this test to use Blob instead of WebKitBlobBuilder, so the fact that Windows
doesn't support WebKitBlobBuilder no longer affects this test.

  • platform/chromium-win/fast/dom/window-domurl-crash-expected.txt: Removed.
  • platform/win/fast/dom/window-domurl-crash-expected.txt: Removed.
09:24 Changeset [118533] by apavlov@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: Clean up Inspector.json after r118367
https://bugs.webkit.org/show_bug.cgi?id=87499

Reviewed by Yury Semikhatsky.

This cleans up the semantic inconsistencies introduced into type/field names r118367.

No new tests, as this is a refactoring.

  • inspector/Inspector.json:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::asInspectorStyleSheet):
(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
(WebCore::InspectorCSSAgent::detectOrigin):

  • inspector/InspectorCSSAgent.h:

(InspectorCSSAgent):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::create):
(WebCore::InspectorStyleSheet::InspectorStyleSheet):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::resourceStyleSheetText):
(WebCore::InspectorStyleSheetForInlineStyle::create):
(WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):

  • inspector/InspectorStyleSheet.h:

(InspectorStyleSheet):
(WebCore::InspectorStyleSheet::canBind):
(InspectorStyleSheetForInlineStyle):

09:23 Changeset [118532] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed chromium test expectations update.

  • platform/chromium/test_expectations.txt:
09:19 Changeset [118531] by kinuko@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed; rolling chromium deps.

  • DEPS:
08:49 Changeset [118530] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] History navigation caused google.com scale not kept
https://bugs.webkit.org/show_bug.cgi?id=87438

Reviewed by Antonio Gomes.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 159923
For back/forward history navigation, we were trying to keep the values
set by dispatchViewportDataDidChange. However, when we went back from
the previous page, if the current page didn't contain the meta viewport
tag, then those values set by previous page would never be reset.
Although the current page could get correct saved scale when restoring
view state, the scale would still be clamped by zoomToFitScale which
was based on the virtual viewport of the previous page which could make
the scale incorrect.
Since we know the viewport arguments of the current document before
setLoadState on back/forward history navigation, we can reset these
previous values if the document doesn't have viewport arguments during
setLoadState.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setLoadState):

08:40 Changeset [118529] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: speed-up HeapSnapshot._bfs method.
https://bugs.webkit.org/show_bug.cgi?id=87502

It had containmentEdges.length call in the loop that forced deoptimization.

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._calculateObjectToWindowDistance):
(WebInspector.HeapSnapshot.prototype._bfs):

08:32 Changeset [118528] by loislo@chromium.org
  • 4 edits in trunk

Web Inspector: Speed up edges iteration in heap profiler
https://bugs.webkit.org/show_bug.cgi?id=87286

Add an extra node to nodes array that points to the end of edges array.
It allows to eliminate a check for the last node in iteration code.

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-05-25
Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotNode.prototype._edgeIndexesStart):
(WebInspector.HeapSnapshotNode.prototype._edgeIndexesEnd):
(WebInspector.HeapSnapshotNodeIterator):
(WebInspector.HeapSnapshot.prototype._buildRetainers):
(WebInspector.HeapSnapshot.prototype._bfs):
(WebInspector.HeapSnapshot.prototype._buildAggregates):
(WebInspector.HeapSnapshot.prototype._buildPostOrderIndex):
(WebInspector.HeapSnapshot.prototype._buildDominatorTree):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):

LayoutTests:

  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMockObject):
(initialize_HeapSnapshotTest.InspectorTest._postprocessHeapSnapshotMock):

08:16 Changeset [118527] by caseq@chromium.org
  • 8 edits
    1 add in trunk/Source/WebCore

Web Inspector: put paint and compositing timeline events in a new category of their own
https://bugs.webkit.org/show_bug.cgi?id=86852

Reviewed by Pavel Feldman.

  • add forth timeline category, "Painting"; make it light-purple;
  • assign paint and compositing events to Painting category;
  • WebCore.gypi: added timelineBarLightPurple.png;
  • inspector/front-end/Images/timelineBarLightPurple.png: Added.
  • inspector/front-end/Images/timelineCheckmarks.png: added light-purple icon;
  • inspector/front-end/Images/timelineDots.png: ditto.
  • inspector/front-end/TimelineOverviewPane.js:

(WebInspector.TimelineCategoryStrips.prototype.update.appendRecord): do not merge bars in same raw if these are from different categories;
(WebInspector.TimelineCategoryStrips.prototype.update):

  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.categories):
(WebInspector.TimelinePresentationModel.recordStyle):

  • inspector/front-end/WebKit.qrc: added timelineBarLightPurple.png;
  • inspector/front-end/timelinePanel.css: added styles for painting category;

(.timeline-category-statusbar-item.timeline-category-painting .timeline-category-checkbox):
(.timeline-category-painting .timeline-graph-bar):
(.popover .timeline-painting):
(.timeline-category-scripting .timeline-tree-icon):
(.timeline-category-rendering .timeline-tree-icon):
(.timeline-category-painting .timeline-tree-icon):

08:04 Changeset [118526] by mary.wu@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Pass http headers to loader in download request
https://bugs.webkit.org/show_bug.cgi?id=87449

Reviewed by Rob Buis.

PR# 149283

This is to support byte-range download and we could pass http headers like
"Range" in download request to loader.

Reviewed internally by Lyon Chen.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::download):

07:47 Changeset [118525] by wjmaclean@chromium.org
  • 5 edits in trunk/Source

[chromium] LayerChromium should recognise existing layer active animations when the layer is added.
https://bugs.webkit.org/show_bug.cgi?id=87166

Reviewed by Adrienne Walker.

Source/WebCore:

Unit test added.

LayerChromium needs to correctly recognize if a newly added layer has an existing
active animation.

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::setLayerTreeHost):
(WebCore::LayerChromium::notifyAnimationFinished):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

Source/WebKit/chromium:

  • tests/CCLayerTreeHostTest.cpp:

(WTF::MockLayerTreeHost::didAddAnimationWasCalled):
(MockLayerTreeHost):
(WTF::MockLayerTreeHost::MockLayerTreeHost):
(WTF):
(CCLayerTreeHostTestLayerAddedWithAnimation):
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::CCLayerTreeHostTestLayerAddedWithAnimation):
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):
(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::afterTest):

07:05 Changeset [118524] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening after r118166, r118291 and r118442.

  • platform/gtk/test_expectations.txt:
06:48 Changeset [118523] by loislo@chromium.org
  • 4 edits in trunk

Web Inspector: HeapSnapshot: introduce performance counter for HeapSnapshotConstructorsDataGrid._aggregatesReceived method.
https://bugs.webkit.org/show_bug.cgi?id=87393

Reviewed by Yury Semikhatsky.

PerformanceTests:

  • inspector/heap-snapshot.html:

Source/WebCore:

  • inspector/front-end/HeapSnapshotDataGrids.js:

(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._aggregatesReceived):
(WebInspector.HeapSnapshotConstructorsDataGrid.prototype._populateChildren):

06:45 Changeset [118522] by mario@webkit.org
  • 8 edits
    2 adds in trunk/Source/WebKit2

[GTK][WK2] Implement API for generic permission requests
https://bugs.webkit.org/show_bug.cgi?id=84018

Reviewed by Martin Robinson.

Added new 'permission-request' signal to WebKitWebView, to be
fired when WebKit needs confirmation from the user on whether to
allow or deny certain operations, such as sharing the user's
location with web site through the Geolocation API.

New WebKitPermissionRequest interface, providing allow() and
deny() operations, to be called over the objects implementing it
when emitted along with the new 'permission-request' signal.

  • UIProcess/API/gtk/WebKitPermissionRequest.cpp: Added.

(webkit_permission_request_default_init):
(webkit_permission_request_allow):
(webkit_permission_request_deny):

  • UIProcess/API/gtk/WebKitPermissionRequest.h: Added.

(_WebKitPermissionRequestIface):

  • GNUmakefile.am: Added new files.

Added the new signal to WebKitWebView, providing a default handler
that will just deny the request when the signal is not handled.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewDecidePermissionRequest): Default handler.
(webkit_web_view_class_init): Declare the new signal and connect
to the default handler.
(webkitWebViewMakePermissionRequest): Helper function to create a
make a new permission request and emit the new signal signal.

  • UIProcess/API/gtk/WebKitWebView.h:

(_WebKitWebViewClass):

  • UIProcess/API/gtk/WebKitWebViewPrivate.h: Declare the creational

function webkitWebViewMakePermissionRequest for internal use only.

Updated documentation files.

  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
06:42 Changeset [118521] by loislo@chromium.org
  • 6 edits in trunk

Web Inspector: drop obsolete WebInspector.Uint32Array and adjust snapshot chunk size for better transfer-snapshot metric.
https://bugs.webkit.org/show_bug.cgi?id=87490

Originally WebInspector.Uint32Array was used for dynamic array
reallocation because we had no information about expected arrays sizes.
Now we have these sizes and allocates array precisely.

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • bindings/v8/ScriptHeapSnapshot.cpp:

(WebCore):

  • inspector/front-end/HeapSnapshot.js:
  • inspector/front-end/HeapSnapshotLoader.js:

(WebInspector.HeapSnapshotLoader.prototype._parseUintArray):
(WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):

LayoutTests:

  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest.):

06:10 Changeset [118520] by apavlov@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: cmd-[ shortcut navigates page and is fr-keyboard incompatible
https://bugs.webkit.org/show_bug.cgi?id=85312

Reviewed by Vsevolod Vlasov.

Suppress the handling of panel history navigation events if the corresponding keyboard activities produce
the "keypress" event (which is the case on French keyboards, where AltGr+[ is translated into Ctrl+Alt+[ on Windows).
The event is also told to preventDefault() to avoid browser history navigation on Mac while traversing the Inspector panel history.

  • inspector/front-end/InspectorView.js:

(WebInspector.InspectorView):
(WebInspector.InspectorView.prototype._keyPress):
(WebInspector.InspectorView.prototype._keyDown):
(WebInspector.InspectorView.prototype._keyDownInternal):

  • inspector/front-end/UIUtils.js:

(WebInspector.isWin):

06:08 Changeset [118519] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

2012-05-25 Yury Semikhatsky <yurys@google.com>

Unreviewed. Fixed closure compiler warnings.

  • inspector/front-end/NativeMemorySnapshotView.js: (WebInspector.NativeMemoryProfileType.prototype.buttonClicked): (WebInspector.NativeMemoryProfileHeader.prototype.createView):
06:05 Changeset [118518] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] fix compilation warning in GtkInputMethodFilter.cpp
https://bugs.webkit.org/show_bug.cgi?id=87475

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-05-25
Reviewed by Martin Robinson.

  • platform/gtk/GtkInputMethodFilter.cpp:

(WebCore::GtkInputMethodFilter::setWidget):

06:04 Changeset [118517] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/gtk

[GTK] fix compilation for webkitwebview.cpp
https://bugs.webkit.org/show_bug.cgi?id=87473

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-05-25
Reviewed by Martin Robinson.

When ACCELERATED_COMPOSITING and TEXTURE_MAPPER_GL is not set,
the local variable 'priv' won't be used. Therefore the following warning:

../../../Source/WebKit/gtk/webkit/webkitwebview.cpp: In function ‘void webkit_web_view_realize(GtkWidget*)’:
../../../Source/WebKit/gtk/webkit/webkitwebview.cpp:971:27: warning: unused variable ‘priv’ [-Wunused-variable]

  • webkit/webkitwebview.cpp:

(webkit_web_view_realize):

05:54 Changeset [118516] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] fast/forms/color/input-value-sanitization-color.html can be unskipped
https://bugs.webkit.org/show_bug.cgi?id=87487

Unreviewed EFL gardening. Unskip
fast/forms/color/input-value-sanitization-color.html now that
INPUT_TYPE_COLOR flag has been enabled by default for EFL port in
r114113.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-25

  • platform/efl/Skipped:
05:24 Changeset [118515] by commit-queue@webkit.org
  • 14 edits in trunk/LayoutTests

[EFL] [DRT] Gardening of failing tests and missing results
https://bugs.webkit.org/show_bug.cgi?id=87486

Unreviewed EFL gardening. Some rebaselines after r118448, and updated
expectations for a couple of tests.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-25

  • platform/efl/fast/html/details-position-expected.txt:
  • platform/efl/fast/replaced/width100percent-checkbox-expected.png:
  • platform/efl/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/efl/fast/replaced/width100percent-radio-expected.png:
  • platform/efl/fast/replaced/width100percent-radio-expected.txt:
  • platform/efl/mathml/presentation/fractions-expected.png:
  • platform/efl/mathml/presentation/fractions-expected.txt:
  • platform/efl/mathml/presentation/fractions-vertical-alignment-expected.png:
  • platform/efl/mathml/presentation/fractions-vertical-alignment-expected.txt:
  • platform/efl/mathml/presentation/mo-stretch-expected.png:
  • platform/efl/mathml/presentation/mo-stretch-expected.txt:
  • platform/efl/mathml/presentation/subsup-expected.txt:
  • platform/efl/test_expectations.txt:
05:18 Changeset [118514] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

[Qt] Broken controls rendering when transform is applied.
https://bugs.webkit.org/show_bug.cgi?id=87483

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-25
Reviewed by Simon Hausmann.

.:

  • ManualTests/qt/control_paiting_with_transforms.html: Added.

Source/WebCore:

Use only the scaling transform value to determine the size of
the control to be drawn. When other transforms present such as
rotate or skew, ignore them, unless scaling also involved. In
that case, calculate the scaling value out of the transformation.

  • ManualTests/qt/control_paiting_with_transforms.html: Added.
  • platform/qt/RenderThemeQtMobile.cpp:

(WebCore::painterScale):
(WebCore):
(WebCore::StylePainterMobile::sizeForPainterScale):

05:05 Changeset [118513] by caseq@chromium.org
  • 15 edits
    1 add in trunk/Source

[chromium] add instrumentation for compositing
https://bugs.webkit.org/show_bug.cgi?id=83928

Reviewed by James Robinson.

Source/Platform:

  • added willCommit() and didBeginFrame() methods for instrumentation of compositing.
  • chromium/public/WebLayerTreeViewClient.h:

(WebLayerTreeViewClient):

Source/WebCore:

  • plumb willCommit() and didBeginFrame() from CCSingleThreadProxy and CCThreadProxy to inspector instrumentation;
  • note for threaded case, didBeginFrame() is invoked upon unblocking of main thread;
  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHostClient):
(WebCore::CCLayerTreeHost::didBeginFrame):
(WebCore::CCLayerTreeHost::willCommit):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::commitAndComposite):

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::beginFrame):

Source/WebKit/chromium:

  • plumb willCommit() and didComposite() to inspector instrumentation via WebViewImpl.
  • WebKit.gypi: Added WebLayerTreeViewTest
  • src/WebLayerTreeViewImpl.cpp:

(WebKit::WebLayerTreeViewImpl::didBeginFrame):
(WebKit):
(WebKit::WebLayerTreeViewImpl::willCommit):

  • src/WebLayerTreeViewImpl.h:

(WebLayerTreeViewImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::didBeginFrame):
(WebKit):
(WebKit::WebViewImpl::willCommit):

  • src/WebViewImpl.h:

(WebViewImpl):

  • tests/CCLayerTreeHostTest.cpp:
  • tests/FakeCCLayerTreeHostClient.h:
  • tests/WebLayerTest.cpp:
  • tests/WebLayerTreeViewTest.cpp: Added.
04:20 Changeset [118512] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Gardening. Skip a new test: fast/events/domactivate-sets-underlying-click-event-as-handled.html
because it times out on Qt and GTK platforms.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-25
Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
03:34 Changeset [118511] by ossy@webkit.org
  • 11 edits in trunk

[Qt] Buildfix for newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=87257

Reviewed by Simon Hausmann.

Source/WebKit/qt:

  • Api/qgraphicswebview.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
  • Api/qwebframe.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
  • Api/qwebhistory.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
  • Api/qwebsettings.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
  • Api/qwebview.h: QtWidgets/qicon.h -> QtGui/qicon.h renaming.
  • WebCoreSupport/FrameLoaderClientQt.cpp: Adjust QCoreApplication::translate() parameter list to newer Qt 5.

(WebCore::FrameLoaderClientQt::cancelledError):
(WebCore::FrameLoaderClientQt::blockedError):
(WebCore::FrameLoaderClientQt::cannotShowURLError):
(WebCore::FrameLoaderClientQt::interruptedForPolicyChangeError):
(WebCore::FrameLoaderClientQt::cannotShowMIMETypeError):
(WebCore::FrameLoaderClientQt::fileDoesNotExistError):
(WebCore::FrameLoaderClientQt::pluginWillHandleLoadError):

  • declarative/experimental/plugin.cpp: QDeclarativeExtensionPlugin -> QQmlExtensionPlugin renaming.
  • declarative/plugin.cpp: QDeclarativeExtensionPlugin -> QQmlExtensionPlugin renaming.

(WebKitQmlPlugin):

Tools:

  • MiniBrowser/qt/MiniBrowserApplication.h: QtDeclarative -> QtQml renaming.
03:23 Changeset [118510] by vsevik@chromium.org
  • 10 edits
    1 delete in trunk/Source/WebCore

Web Inspector: Drop InspectorFileSystemInstrumentation
https://bugs.webkit.org/show_bug.cgi?id=87460

Inspector does not need to track DOMFileSystem object now. So we can
drop InspectorFileSystemInstrumentation.

Patch by Taiju Tsuiki <tzik@chromium.org> on 2012-05-25
Reviewed by Vsevolod Vlasov.

  • GNUmakefile.list.am:
  • Modules/filesystem/DOMFileSystem.cpp:

(WebCore::DOMFileSystem::create):

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorFileSystemAgent.cpp:

(WebCore::InspectorFileSystemAgent::enable):

  • inspector/InspectorFileSystemAgent.h:

(InspectorFileSystemAgent):

  • inspector/InspectorFileSystemInstrumentation.h: Removed.
  • inspector/InspectorInstrumentation.cpp:

(WebCore):

  • inspector/InspectorInstrumentation.h:

(WebCore):
(InspectorInstrumentation):

03:15 Changeset [118509] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: HeapProfiler: speed-up _calculateClassesRetainedSize and _buildAggregates.
https://bugs.webkit.org/show_bug.cgi?id=87482

Engine didn't inline node's classIndex method because the switch statement in it wasn't inlineable.

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotNode.prototype.classIndex):

03:09 Changeset [118508] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Dodge style recalc when id attribute is overwritten with same value.
<http://webkit.org/b/87211>

Reviewed by Eric Seidel.

Don't force style recalc when the id attribute is set to the same value it already had.
~3.5% improvement on Dromaeo's "dom-attr" locally.

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):

03:05 Changeset [118507] by kinuko@chromium.org
  • 4 edits in branches/chromium/1132

Merge 118497 - [chromium] DataTransferItem.webkitGetAsEntry() shouldn't be exposed without flag yet
https://bugs.webkit.org/show_bug.cgi?id=87457
BUG=129702
TBR=kinuko@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10448022

03:05 Changeset [118506] by g.czajkowski@samsung.com
  • 2 edits in trunk/Source/WebKit2

[WK2] Fix client interface size for WKPageContextMenuClient.
https://bugs.webkit.org/show_bug.cgi?id=87472

Reviewed by Carlos Garcia Campos.

Add correct offset for version 1 and 2 of WKPageContextMenuClient.
Revision 109750 introduces a new API and increases size of interfaceSizesByVersion
but the table is not properly initialized for newly introduced version 2.

  • Shared/APIClientTraits.cpp:

(WebKit):

03:02 Changeset [118505] by kling@webkit.org
  • 3 edits in trunk/Source/WebKit2

Mac bots crashing under PluginInfo destructor.
<http://webkit.org/b/87414>
<rdar://problem/11527172>

Reviewed by Darin Adler.

We can't safely pass WTF::String to another thread without a deref() race,
so pass the PluginInfo vector by pointer instead of by value.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::sendDidGetPlugins):
(WebKit::WebContext::handleGetPlugins):

  • UIProcess/WebContext.h:
02:49 Changeset [118504] by yurys@chromium.org
  • 8 edits
    1 add in trunk/Source/WebCore

Web Inspector: add profile type for native memory snapshots
https://bugs.webkit.org/show_bug.cgi?id=87400

Reviewed by Vsevolod Vlasov.

Introduced new profile type and view classes for native memory snapshots.
All the stuff is hidden behind an experimental setting.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.py:
  • inspector/front-end/NativeMemorySnapshotView.js: Added.

(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeMemorySnapshotView.prototype.dispose):
(WebInspector.NativeMemorySnapshotView.prototype.get statusBarItems):
(WebInspector.NativeMemorySnapshotView.prototype.get profile):
(WebInspector.NativeMemoryProfileType):
(WebInspector.NativeMemoryProfileType.prototype.get buttonTooltip):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
(WebInspector.NativeMemoryProfileType.prototype.get treeItemTitle):
(WebInspector.NativeMemoryProfileType.prototype.get description):
(WebInspector.NativeMemoryProfileType.prototype.createTemporaryProfile):
(WebInspector.NativeMemoryProfileType.prototype.createProfile):
(WebInspector.NativeMemoryProfileHeader):
(WebInspector.NativeMemoryProfileHeader.prototype.createSidebarTreeElement):
(WebInspector.NativeMemoryProfileHeader.prototype.createView):

  • inspector/front-end/ProfilesPanel.js:
  • inspector/front-end/Settings.js:

(WebInspector.ExperimentsSettings):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.html:
02:44 Changeset [118503] by yurys@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: make some profiler methods private
https://bugs.webkit.org/show_bug.cgi?id=87479

Reviewed by Vsevolod Vlasov.

  • Removed unused methods.
  • Renamed private methods so that their names start with underscore.
  • ProfileLauncherView methods are called directly from ProfilesPanel instead of sending events.
  • inspector/front-end/CPUProfileView.js:
  • inspector/front-end/CSSSelectorProfileView.js:

(WebInspector.CSSSelectorProfileType.prototype.buttonClicked):
(WebInspector.CSSSelectorProfileType.prototype._startRecordingProfile):
(WebInspector.CSSSelectorProfileType.prototype.createTemporaryProfile):

  • inspector/front-end/ProfileLauncherView.js:

(WebInspector.ProfileLauncherView.prototype.profileStarted):
(WebInspector.ProfileLauncherView.prototype.profileFinished):

  • inspector/front-end/ProfilesPanel.js:

(WebInspector.ProfileType.prototype.createProfile):
(WebInspector.ProfilesPanel.prototype.toggleRecordButton):
(WebInspector.ProfilesPanel.prototype._reset):
(WebInspector.ProfilesPanel.prototype._populateProfiles.populateCallback.var):
(WebInspector.ProfilesPanel.prototype._populateProfiles.populateCallback):
(WebInspector.ProfilesPanel.prototype._populateProfiles):
(WebInspector.ProfilesPanel.prototype.setRecordingProfile):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot.done):
(WebInspector.ProfilesPanel.prototype.takeHeapSnapshot):

02:41 Changeset [118502] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][DRT] Gardening. fast/events/option-tab.html does not pass
https://bugs.webkit.org/show_bug.cgi?id=87471

Unreviewed. fast/events/option-tab.html should not pass as the
EFL port uses different keyboard accelerators than Safari (via Chromium).

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-25

  • platform/efl/test_expectations.txt:
02:30 Changeset [118501] by keishi@webkit.org
  • 3 edits
    2 adds in trunk

Bad checkValidity result on recently "enabled" form fields
https://bugs.webkit.org/show_bug.cgi?id=85704

Reviewed by Kent Tamura.

Source/WebCore:

Test: fast/forms/disabled-attr-checkvalidity.html

We were tripping on the assertion m_isValid == validity()->valid()
inside HTMLFormControlElement::isValidFormControlElement.
m_isValid was becoming stale because setNeedsValidityCheck wasn't called
after m_willValidate changed.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::willValidate): We used const_cast
because it was too difficult to remove const. We are checking if the
value from willValidate has changed to avoid an infinite loop.
(WebCore::HTMLFormControlElement::setNeedsWillValidateCheck):

LayoutTests:

  • fast/forms/disabled-attr-checkvalidity-expected.txt: Added.
  • fast/forms/disabled-attr-checkvalidity.html: Added.
02:28 Changeset [118500] by ossy@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r118448. Added rebaseline to 2 tests on Qt platform that
had 1 pixel differences because of rounding mistakes.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-25

  • platform/qt/fast/html/details-position-expected.txt:
  • platform/qt/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
02:21 Changeset [118499] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Pasting text in input field is not available if <body> has visibility:hidden
https://bugs.webkit.org/show_bug.cgi?id=66754

Reviewed by Kent Tamura.

Add a regression test since this bug has been fixed by r99076.

  • editing/pasteboard/input-with-visibility-hidden-expected.txt: Copied from input-with-display-none-div-expected.txt.
  • editing/pasteboard/input-with-visibility-hidden.html: Copied from input-with-display-none-div.html.
02:21 Changeset [118498] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[Chromium] Pull in Android tools from Chromium's repo through the DEPS file
https://bugs.webkit.org/show_bug.cgi?id=87478

Reviewed by Kent Tamura.

Chromium's r122048 added the forwarder tool, which forwards a TCP port
listening on the device to a port on the host. This now is a required
dependency of DumpRenderTree, so pull it in.

Since it's likely that more tools will be required, pull in the entire
tools/android/ directory in case the Chromium port for Android is being
checked out or updated.

  • DEPS: Added Android-specific dependency on tools/android/
02:13 Changeset [118497] by kinuko@chromium.org
  • 4 edits in trunk

[chromium] DataTransferItem.webkitGetAsEntry() shouldn't be exposed without flag yet
https://bugs.webkit.org/show_bug.cgi?id=87457

Reviewed by Kent Tamura.

Source/WebCore:

No new tests, marking some tests SKIP as we stop exposing this by default.

  • Modules/filesystem/DataTransferItemFileSystem.idl: Removed webkitGetAsEntry

LayoutTests:

  • platform/chromium/test_expectations.txt: Marking tests using webkitGetAsEntry SKIP
02:01 Changeset [118496] by loislo@chromium.org
  • 2 edits in trunk/PerformanceTests

Web Inspector: HeapProfiler's perf test: each N-th run pushes the run results N-th times.
https://bugs.webkit.org/show_bug.cgi?id=87476

The time tracking wrappers were attaching on each run.

Reviewed by Yury Semikhatsky.

  • inspector/heap-snapshot.html:
01:51 Changeset [118495] by commit-queue@webkit.org
  • 6 edits in trunk

RadioNodeList does not include a object element
https://bugs.webkit.org/show_bug.cgi?id=87371

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-05-25
Reviewed by Kent Tamura.

Source/WebCore:

As per spec http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.html#category-listed
Object element should also be listed in RadioNodeList object.

Updated existing test.

  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
Compares if test element's name/id and form matches that of the RadioNodeList filter.
(WebCore::RadioNodeList::nodeMatches):
Added support for Object element, check if object elements name/id matches the RadioNodeList filter.

  • html/RadioNodeList.h:

(RadioNodeList): Ditto

LayoutTests:

  • fast/forms/form-collection-radio-node-list-expected.txt:
  • fast/forms/form-collection-radio-node-list.html:

Updated test to include test for object element.

01:41 Changeset [118494] by ossy@webkit.org
  • 2 edits in trunk/Tools

[Qt] Unreviewed fix after r118484.

Enable CSS_EXCLUSIONS and CSS_REGIONS.
They were enabled uncoditinally before r118484.

  • qmake/mkspecs/features/features.pri:
01:29 Changeset [118493] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

[Qt][WK2] Fix failing qmltests::FitToView::test_basic()
https://bugs.webkit.org/show_bug.cgi?id=87236

Patch by Zalan Bujtas <zbujtas@gmail.com> on 2012-05-25
Reviewed by Kenneth Rohde Christiansen.

Rename contentViewportChanged to informVisibleContentChange() to
reflect its functionality better. Centralize m_hadUserInteraction flag
setting and add assertions on it to ensure that designated
functions are called only on user interaction.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewFlickablePrivate::onComponentComplete):
(QQuickWebViewFlickablePrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::_q_onInformVisibleContentChange):
(QQuickWebViewFlickablePrivate::_q_resume):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate::_q_onInformVisibleContentChange):
(QQuickWebViewFlickablePrivate):

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
(WebKit::QtViewportInteractionEngine::flickableMovingPositionUpdate):
(WebKit::QtViewportInteractionEngine::pagePositionRequest):
(WebKit::QtViewportInteractionEngine::touchBegin):
(WebKit::QtViewportInteractionEngine::focusEditableArea):
(WebKit::QtViewportInteractionEngine::zoomToAreaGestureEnded):
(WebKit::QtViewportInteractionEngine::panGestureStarted):
(WebKit::QtViewportInteractionEngine::pinchGestureStarted):

  • UIProcess/qt/QtViewportInteractionEngine.h:

(QtViewportInteractionEngine):

01:09 Changeset [118492] by caseq@chromium.org
  • 4 edits in trunk

Web Inspector: Resource object has no methods getContent and setContent
https://bugs.webkit.org/show_bug.cgi?id=87424

Source/WebCore:

This fixes the extension API so that it uses the new Resource()
constructor, which adds the missing getContent and setContent
methods to a Resource object.

Patch by Jan Keromnes <janx@linux.com> on 2012-05-25
Reviewed by Vsevolod Vlasov.

The tests were fixed accordingly in:
LayoutTests/inspector/extensions/extensions-resources-expected.txt

  • inspector/front-end/ExtensionAPI.js:

(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler.else.callbackWrapper):
(injectedExtensionAPI.Panels.prototype.setOpenResourceHandler):

LayoutTests:

This fixes the expected test result for handleOpenResource(), see fix
for bug #87424 in Source/WebCore/inspector/front-end/ExtensionAPI.js.

Patch by Jan Keromnes <janx@linux.com> on 2012-05-25
Reviewed by Vsevolod Vlasov.

  • inspector/extensions/extensions-resources-expected.txt:
01:00 Changeset [118491] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/efl

[EFL] API for PageGroup visited links hash populating
https://bugs.webkit.org/show_bug.cgi?id=86370

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-25
Reviewed by Kenneth Rohde Christiansen.

Added "populate,visited,links" ewk_view signal that tells to the client managing
persistent history storage to fill the visited links cache.
Added API for the PageGroup visited links hash populating.

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::populateVisitedLinks): Implementation added (sends notification).
(WebCore):

  • WebCoreSupport/ChromeClientEfl.h:

(ChromeClientEfl):

  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(ewk_view_visited_link_add): PageGroup visited links hash populating.

  • ewk/ewk_view.h:
00:56 Changeset [118490] by vsevik@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r118461.
http://trac.webkit.org/changeset/118461
https://bugs.webkit.org/show_bug.cgi?id=87468

Breaks two chromium browser_tests. (Requested by vsevik on
#webkit).

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

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resize):

00:41 Changeset [118489] by vsevik@chromium.org
  • 1 edit
    4 adds in trunk/LayoutTests

Unreviewed chromium test expectations rebaseline.

  • platform/chromium-mac-leopard/editing/spelling/grammar-markers-expected.png: Added.
  • platform/chromium-mac-snowleopard/editing/spelling/grammar-markers-expected.png: Added.
  • platform/chromium-mac/editing/spelling/grammar-markers-expected.png: Added.
  • platform/chromium-win/editing/spelling/grammar-markers-expected.png: Added.
00:31 Changeset [118488] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, unskip now passing tests.

  • platform/qt/Skipped:
00:26 Changeset [118487] by commit-queue@webkit.org
  • 2 edits
    8 adds in trunk/LayoutTests

Add tests for JPEG and PNG images with a non-generic RGB color profile
https://bugs.webkit.org/show_bug.cgi?id=87437

No layout test currently covers a color transform except for the no-op case of a
Generic RGB profile (image) -> Generic RGB profile (screen) color transform. Add
tests for JPEG and PNG images with a non-identity color correction transform, in
particular, use test images with a (non-generic) RGB color profile.

Patch by Tony Payne <tpayne@chromium.org> on 2012-05-25
Reviewed by Kent Tamura.

  • fast/images/jpeg-with-color-profile-expected.txt: Added.
  • fast/images/jpeg-with-color-profile.html: Added.
  • fast/images/png-with-color-profile-expected.txt: Added.
  • fast/images/png-with-color-profile.html: Added.
  • fast/images/resources/red-at-12-oclock-with-color-profile.jpg: Added. The image

has an RGB color profile (non-generic). If color correction is correctly applied,
the image red sector appears at the 12 o'clock position. If color correction fails,
the red sector appears at 4 o'clock.

  • fast/images/resources/red-at-12-oclock-with-color-profile.png: Added, and ditto

for the expected image red sector position and image color profile type.

  • platform/chromium/test_expectations.txt: Add MISSING expectations.
  • platform/mac-snowleopard/fast/images/jpeg-with-color-profile-expected.png: Added.
  • platform/mac-snowleopard/fast/images/png-with-color-profile-expected.png: Added.
00:22 Changeset [118486] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, unskip a now passing test.

  • platform/qt/Skipped:
00:10 Changeset [118485] by ossy@webkit.org
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip a passing test and mark it as SLOW.

  • platform/qt/Skipped:
  • platform/qt/test_expectations.txt:

05/24/12:

23:53 Changeset [118484] by timothy_horton@apple.com
  • 40 edits in trunk

Add feature defines for web-facing parts of CSS Regions and Exclusions
https://bugs.webkit.org/show_bug.cgi?id=87442
<rdar://problem/10887709>

Reviewed by Dan Bernstein.

  • configure.ac:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:
  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h:

(RuntimeEnabledFeatures):
(WebCore::RuntimeEnabledFeatures::setCSSExclusionsEnabled):
(WebCore::RuntimeEnabledFeatures::cssExclusionsEnabled):

  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::isSimpleLengthPropertyID):
(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::detectAtToken):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/CSSRule.cpp:

(WebCore::CSSRule::cssText):
(WebCore::CSSRule::destroy):
(WebCore::CSSRule::reattach):

  • css/CSSRule.h:

(WebCore::CSSRule::isRegionRule):

  • css/CSSRule.idl:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyValue):
(WebCore::StylePropertySet::asText):

  • css/StylePropertyShorthand.cpp:

(WebCore::shorthandForProperty):

  • css/StylePropertyShorthand.h:
  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • css/StyleRule.cpp:

(WebCore::StyleRuleBase::destroy):
(WebCore::StyleRuleBase::copy):
(WebCore::StyleRuleBase::createCSSOMWrapper):

  • css/WebKitCSSRegionRule.cpp:
  • css/WebKitCSSRegionRule.h:
  • css/WebKitCSSRegionRule.idl:
  • dom/Document.cpp:
  • dom/Document.h:
  • dom/Document.idl:
  • page/DOMWindow.idl:
  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setCSSRegionsEnabled):
(WebCore::Settings::cssRegionsEnabled):

  • features.gypi:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Scripts/webkitperl/FeatureList.pm:
23:52 Changeset [118483] by ggaren@apple.com
  • 18 edits in trunk/Source

WebKit should be lazy-finalization-safe (esp. the DOM)
https://bugs.webkit.org/show_bug.cgi?id=87456

Reviewed by Filip Pizlo.

../JavaScriptCore:

Lazy finalization adds one twist to weak pointer use:

A HashMap of weak pointers may contain logically null entries.
(Weak pointers behave as-if null once their payloads die.)
Insertion must not assume that a pre-existing entry is
necessarily valid, and iteration must not assume that all
entries can be dereferenced.

(Previously, I thought that it also added a second twist:

A demand-allocated weak pointer may replace a dead payload
before the payload's finalizer runs. In that case, when the
payload's finalizer runs, the payload has already been
overwritten, and the finalizer should not clear the payload,
which now points to something new.

But that's not the case here, since we cancel the old payload's
finalizer when we over-write it. I've added ASSERTs to verify this
assumption, in case it ever changes.)

  • API/JSClassRef.cpp:

(OpaqueJSClass::prototype): No need to specify null; that's the default.

  • API/JSWeakObjectMapRefPrivate.cpp: Use remove, since take() is gone.
  • heap/PassWeak.h:

(WeakImplAccessor::was): This is no longer a debug-only function, since
it's required to reason about lazily finalized pointers.

  • heap/Weak.h:

(JSC::weakAdd):
(JSC::weakRemove):
(JSC::weakClear): Added these helper functions for the common idioms of
what clients want to do in their weak pointer finalizers.

  • jit/JITStubs.cpp:

(JSC::JITThunks::hostFunctionStub): Use the new idioms. Otherwise, we
would return NULL for a "zombie" executable weak pointer that was waiting
for finalization (item (2)), and finalizing a dead executable weak pointer
would potentially destroy a new, live one (item (1)).

  • runtime/RegExpCache.cpp:

(JSC::RegExpCache::lookupOrCreate):
(JSC::RegExpCache::finalize): Ditto.

(JSC::RegExpCache::invalidateCode): Check for null while iterating. (See
item (2).)

  • runtime/Structure.cpp:

(JSC::StructureTransitionTable::contains):
(JSC::StructureTransitionTable::add): Use get and set instead of add and
contains, since add and contains are not compatible with lazy finalization.

  • runtime/WeakGCMap.h:

(WeakGCMap):
(JSC::WeakGCMap::clear):
(JSC::WeakGCMap::remove): Removed a bunch of code that was incompatible with
lazy finalization because I didn't feel like making it compatible, and I had
no way to test it.

../WebCore:

  • bindings/js/DOMWrapperWorld.cpp:

(WebCore::JSStringOwner::finalize):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::jsStringSlowCase):

  • bindings/js/JSDOMBinding.h:

(WebCore::cacheWrapper):
(WebCore::uncacheWrapper): Use the new idioms.

(WebCore::jsString): Use get instead of find because get is simpler in
the case of entries that are logically null.

(WebCore::domObjectWrapperMapFor): Removed, since it was unused.

  • bindings/js/ScriptWrappable.h:

(WebCore::ScriptWrappable::clearWrapper): Use the new idioms.

  • bridge/runtime_root.cpp:

(JSC::Bindings::RootObject::invalidate): Check for null while iterating,
since that's possible now.

(JSC::Bindings::RootObject::addRuntimeObject):
(JSC::Bindings::RootObject::removeRuntimeObject):
(JSC::Bindings::RootObject::finalize): Use the new idioms.

  • bridge/runtime_root.h:

(RootObject): Clarified the word "need".

../WebKit2:

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::getOrCreateJSObject): Use the new idioms.

(WebKit::NPRuntimeObjectMap::invalidate): Check for null while iterating,
since that's possible now.

(WebKit::NPRuntimeObjectMap::finalize): Use the new idioms.

23:50 Changeset [118482] by tkent@chromium.org
  • 15 edits
    4 copies
    2 adds in trunk

PAGE_POPUP: window.setValueAndClosePopup should be moved to a
per-context property of DOMWindow.
https://bugs.webkit.org/show_bug.cgi?id=87086

Reviewed by Adam Barth.

.:

  • ManualTests/forms/calendar-picker.html:

Introduce pseudo window.pagePopupController.

Source/WebCore:

  • Introduce window.pagePagePopupController property as V8EnabledPerContext.
  • Move window.setValueAndClosePopup() to window.pagePopupController.

So, we can remove ad-hoc ScriptController::installFunctionsForPagePopup().

No behavior change.

Test: fast/forms/date/no-page-popup-controller.html

  • Resources/calendarPicker.js:

(submitValue): Use window.pagePopupController.
(handleCancel): ditto.

  • WebCore.gypi: Add new files.
  • bindings/generic/ContextEnabledFeatures.cpp:

(WebCore::ContextEnabledFeatures::pagePopupEnabled): Added.

  • bindings/generic/ContextEnabledFeatures.h:

(ContextEnabledFeatures): Added.

  • bindings/v8/ScriptController.cpp: Remove installFunctionsForPagePopup().
  • bindings/v8/ScriptController.h: ditto.
  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::allowPagePopup): Added.

  • page/DOMWindowPagePopup.cpp:

(WebCore::DOMWindowPagePopup::DOMWindowPagePopup):
Creates a PagePopupController object for the specified PagePopupClient.
(WebCore::DOMWindowPagePopup::~DOMWindowPagePopup):
Empty destructor to generate the RefPtr<PagePopupController> destructor.
(WebCore::DOMWindowPagePopup::pagePopupController):

  • page/DOMWindowPagePopup.h:

(DOMWindowPagePopup):

  • Remove setValueAndClosePopup()
  • Add pagePopupController()
  • Change the data member from PagePopupClient to PagePopupController.
  • page/DOMWindowPagePopup.idl: Supply per-context window.pagePopupController.
  • page/PagePopupController.cpp: Added. This object is attached to window.
  • page/PagePopupController.h: ditto.
  • page/PagePopupController.idl: ditto.

Source/WebKit/chromium:

  • src/WebPagePopupImpl.cpp:

(WebKit): Add PagePopupFrameLoaderClient, which allows window.pagePopupController.
(WebKit::WebPagePopupImpl::initPage):

  • Use PagePopupFrameLoaderClient
  • Remove the call of ScriptController::installFunctionsForPagePopup().
  • Call DOMWindowPagePopup::install() to inform m_popupClient to a DOMWindowPagePopup object for the DOMWindow.

LayoutTests:

  • fast/forms/date/no-page-popup-controller-expected.txt: Added.
  • fast/forms/date/no-page-popup-controller.html: Added.
23:40 Changeset [118481] by kinuko@chromium.org
  • 19 edits
    1 copy in trunk/Source

Cleanup: add a file system call which captures the file metadata at once.
https://bugs.webkit.org/show_bug.cgi?id=86995

Reviewed by David Levin.

Source/Platform:

  • Platform.gypi: Added an entry for WebFileInfo.h.
  • chromium/public/WebFileInfo.h: Renamed from Source/WebKit/chromium/public/WebFileInfo.h.

(WebKit::WebFileInfo::WebFileInfo):

  • chromium/public/WebFileUtilities.h:

(WebKit):
(WebKit::WebFileUtilities::getFileInfo): Added.

Source/WebCore:

Current File.slice() (webkitSlice()) implementation calls two separate platform calls,
getFileSize() and getFileModificationTime() [both are defined in platform/FileSystem.h],
to capture the file metadata, but we should have a single file system call to get them at once
for two reasons: 1. save additional system call costs, and 2. atomically obtain the file metadata.

No new tests: existing tests (http/tests/local/fileapi/* and fast/files/*) should pass.

  • fileapi/File.cpp:

(WebCore::File::captureSnapshot):

  • platform/FileMetadata.h:
  • platform/FileSystem.h:
  • platform/chromium/FileSystemChromium.cpp:

(WebCore::getFileMetadata): Added.

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

  • platform/gtk/FileSystemGtk.cpp:

(WebCore::getFileMetadata): Added.

  • platform/posix/FileSystemPOSIX.cpp:

(WebCore::getFileMetadata): Added.

  • platform/qt/FileSystemQt.cpp:

(WebCore::getFileMetadata): Added.

  • platform/win/FileSystemWin.cpp:

(WebCore::getFileSizeFromFindData):
(WebCore::getFileModificationTimeFromFindData):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata): Added.

  • platform/wince/FileSystemWinCE.cpp:

(WebCore::getFileSizeFromFileInfo):
(WebCore::getFileModificationTimeFromFileInfo):
(WebCore::getFileSize):
(WebCore::getFileModificationTime):
(WebCore::getFileMetadata): Added.

  • platform/wx/FileSystemWx.cpp:

(WebCore::getFileMetadata): Added.
(WebCore):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::getFileMetadata):
(WebCore):

23:36 Changeset [118480] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, rebaselining fast/multicol/span/clone-flexbox.html.

  • platform/gtk/fast/multicol/span/clone-flexbox-expected.txt:
23:21 Changeset [118479] by hbono@chromium.org
  • 11 edits
    1 copy
    5 adds in trunk

Source/WebCore: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

Test: editing/spelling/grammar-markers.html

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForDocumentMarker): render grammar markers in gray on Windows and Linux or in green on Mac.

Source/WebKit/chromium: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): Show suggestions when we right-click grammatically-misspelled words.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::isGrammarCheckingEnabled): Enable grammar checking when we enable asynchronous spellchecking.
(WebKit::EditorClientImpl::checkGrammarOfString): set badGrammarLocation to -1 to avoid an assertion error.

  • src/WebTextCheckingResult.cpp:

(WebKit::WebTextCheckingResult::operator TextCheckingResult): Fill GrammarDetails for grammatical errors.

Tools: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockGrammarCheck.cpp: Added.

(MockGrammarCheck::checkGrammarOfString):

  • DumpRenderTree/chromium/MockGrammarCheck.h: Added.

(WebKit):
(MockGrammarCheck):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::finishLastTextCheck): Call MockGrammarCheck::checkGrammarOfString to check grammatical errors.

LayoutTests: Enable grammar checking on Chromium when we paste text (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Ryosuke Niwa.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

  • editing/spelling/grammar-markers-expected.txt: Added.
  • editing/spelling/grammar-markers.html: Added.
  • platform/chromium-linux/editing/spelling/grammar-markers-expected.png: Added.
  • platform/chromium/test_expectations.txt:
  • platform/mac/editing/spelling/grammar-markers-expected.png: Added.
22:56 Changeset [118478] by dmazzoni@google.com
  • 4 edits
    2 adds in trunk

Crash in WebCore::AccessibilityTable::isDataTable
https://bugs.webkit.org/show_bug.cgi?id=87409

Reviewed by Abhishek Arya.

Source/WebCore:

Use Node::rendererIsEditable everywhere rather than
Node::isContentEditable because the latter can trigger a layout
and destroy the renderer. New test covers the change to
AccessibilityTable.cpp, changes to AccessibilityRenderObject.cpp
are covered by existing tests.

Test: accessibility/contenteditable-table-check-causes-crash.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::isReadOnly):
(WebCore::AccessibilityRenderObject::contentChanged):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::isDataTable):

LayoutTests:

  • accessibility/contenteditable-table-check-causes-crash-expected.txt: Added.
  • accessibility/contenteditable-table-check-causes-crash.html: Added.
22:46 Changeset [118477] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

[Forms][TextArea] Too long validation message doesn't count LF as CRLF
https://bugs.webkit.org/show_bug.cgi?id=87458

Reviewed by Kent Tamura.

This patch changes current number of characters in "too long" validation message
parameter to counting newline as 2 characters (CR and LF) as submission data.

No new tests. To have test for this change, we need to change localization
text handling during DRT. We'll try.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::validationMessage): Use computeLengthForSubmission instead of numGraphmeClusters.

22:41 Changeset [118476] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

REGRESSION (r118013-r118031): Loops/Reloads under www.yahoo.com, quits after three tries with error
https://bugs.webkit.org/show_bug.cgi?id=87327

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

If you use AbstractValue::filter(StructureSet) to test subset relationships between TOP and a
set containing >=2 elements, you're going to have a bad time.

That's because AbstractValue considers a set with >=2 elements to be equivalent to TOP, in order
to save space and speed up convergence. So filtering has no effect in this case, which made
the code think that the abstract value was proving that the structure check was unnecessary.
The correct thing to do is to use isSubsetOf() on the StructureAbstractValue, which does the
right thingies for TOP and >=2 elements.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Geoffrey Garen.

  • fast/js/dfg-check-two-structures-expected.txt: Added.
  • fast/js/dfg-check-two-structures.html: Added.
  • fast/js/script-tests/dfg-check-two-structures.js: Added.

(foo):

22:08 Changeset [118475] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] [DRT] Add support for WebKitOfflineWebApplicationCacheEnabled preference
https://bugs.webkit.org/show_bug.cgi?id=86842

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-24
Reviewed by Antonio Gomes.

Tools:

Add support for overriding the application cache support preference
through EFL's LayoutTestController.

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::overridePreference):

LayoutTests:

Unskip passing test http/tests/appcache/disabled.html

  • platform/efl/Skipped:
22:00 Changeset [118474] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

[Gtk] Many tests revealed as passing after moving from Skipped to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=85591

Reviewed by Philippe Normand.

Remove CRASH text expectations for plenty of tests that have been
consistently passing on all the Gtk builders.

  • platform/gtk/test_expectations.txt:
22:00 Changeset [118473] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Remove unnecessary extra call to set developer extras setting on the test startup
https://bugs.webkit.org/show_bug.cgi?id=85209

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-24
Reviewed by Antonio Gomes.

Set developer extras setting called twice on the test startup. Hence, removing
an unnecessary extra call which set wrong value.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues):

21:56 Changeset [118472] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed gardening, add expectation for new failure.

  • platform/chromium/test_expectations.txt:
21:38 Changeset [118471] by hayato@chromium.org
  • 3 edits
    2 adds in trunk

Fix crashes caused by a DOMCharacterDataModified event on a text node.
https://bugs.webkit.org/show_bug.cgi?id=86953

Reviewed by Dimitri Glazkov.

Source/WebCore:

TextNode can be released while CharacterData::setData() will dispatch a mutation event.
So protect it.

Mutation event itself should not be dispatched on the test case.
This is being tracked by webkit bug https://bugs.webkit.org/show_bug.cgi?id=87372.

Test: fast/events/dom-character-data-modified-textarea-crash.html

  • dom/CharacterData.cpp:

(WebCore::CharacterData::setData):

LayoutTests:

  • fast/events/dom-character-data-modified-textarea-crash-expected.txt: Added.
  • fast/events/dom-character-data-modified-textarea-crash.html: Added.
21:00 Changeset [118470] by commit-queue@webkit.org
  • 4 edits in trunk

[GTK] Add --enable-css3-flexbox configure option after r118304.
https://bugs.webkit.org/show_bug.cgi?id=87455

Patch by Philippe Normand <pnormand@igalia.com> on 2012-05-24
Reviewed by Xan Lopez.

.:

  • configure.ac:

Source/WebCore:

  • GNUmakefile.am:
20:55 Changeset [118469] by philn@webkit.org
  • 10 edits in trunk/LayoutTests

Unreviewed, GTK rebaselines after r118448 and r118353.

  • platform/gtk/fast/forms/001-expected.txt:
  • platform/gtk/fast/html/details-position-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
  • platform/gtk/fast/multicol/span/clone-flexbox-expected.txt:
  • platform/gtk/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/gtk/fast/replaced/width100percent-radio-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug4527-expected.txt:
20:29 Changeset [118468] by fpizlo@apple.com
  • 9 edits in trunk/Source/JavaScriptCore

new test fast/js/dfg-arguments-mixed-alias.html fails on JSVALUE32_64
https://bugs.webkit.org/show_bug.cgi?id=87378

Reviewed by Gavin Barraclough.

  • Captured variable tracking forgot did not consistently handle arguments, leading to OSR badness.


  • Nodes capable of exiting were tracked in a non-monotonic way, leading to compiler errors.
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::CSEPhase):
(CSEPhase):
(JSC::DFG::performCSE):

  • dfg/DFGCSEPhase.h:

(DFG):

  • dfg/DFGCommon.h:
  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::resetExitStates):
(DFG):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGPhase.h:

(DFG):
(JSC::DFG::runPhase):

20:27 Changeset [118467] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Widen expectations for a couple of tests to include LEOPARD.
https://bugs.webkit.org/show_bug.cgi?id=81638
https://bugs.webkit.org/show_bug.cgi?id=81931

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
20:08 Changeset [118466] by jsbell@chromium.org
  • 6 edits in trunk/LayoutTests

[Chromium] More rebaselines following r118448.

Unreviewed gardening (but I talked to eae about it).

  • platform/chromium-mac-leopard/fast/forms/001-expected.png:
  • platform/chromium-mac-leopard/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac-leopard/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug4527-expected.png:
19:53 Changeset [118465] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Disable all the shadow dom tests on Windows, since the feature isn't enabled there.

  • platform/win/Skipped:
19:33 Changeset [118464] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes in
ScrollView::delegatesScrolling
https://bugs.webkit.org/show_bug.cgi?id=87431

Add another affected test to the Windows Skipped list.

  • platform/win/Skipped:
19:18 Changeset [118463] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Re-enable some layout tests that now pass reliably
https://bugs.webkit.org/show_bug.cgi?id=87064

Patch by Pete Williamson <petewil@google.com> on 2012-05-24
Reviewed by Dmitry Titov.

  • platform/chromium/test_expectations.txt:
19:08 Changeset [118462] by slewis@apple.com
  • 2 edits in branches/safari-536-branch/LayoutTests

See https://bugs.webkit.org/show_bug.cgi?id=87182
Unreviewed, checking in expected results for branch.

  • platform/mac-wk2/plugins/mouse-events-scaled-iframe-expected.txt:
18:56 Changeset [118461] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Support mobile device rotation resizing
https://bugs.webkit.org/show_bug.cgi?id=86819

Patch by Alexandre Elias <aelias@google.com> on 2012-05-24
Reviewed by Adam Barth.

Resizes on a mobile device are caused either by rotation or
on-screen-keyboard bringup, and need different treatment to remain
naturally laid out, scaled and scrolled without disorienting the user.

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::resize):

18:55 Changeset [118460] by morrita@google.com
  • 7 edits in trunk/Source/WebCore

Scoped stylesheet should be per-document-configurable.
https://bugs.webkit.org/show_bug.cgi?id=86985

Reviewed by Kent Tamura.

This change replaced RuntimeEnabledFeatures::styleScopedEnabled() callsites
with newly introduced ContextEnabledFeatures::styleScopedEnabled().
Clients can override the decision by implementing FrameLoaderClient::allowStyleScoped().

No new tests. This isn't testable on DRT.

  • bindings/generic/ContextEnabledFeatures.cpp:

(WebCore):
(WebCore::ContextEnabledFeatures::styleScopedEnabled):

  • bindings/generic/ContextEnabledFeatures.h:

(WebCore):
(ContextEnabledFeatures):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::determineScope):

  • css/StyleResolver.h:

(StyleResolver):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::allowStyleScoped):

18:49 Changeset [118459] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r118452.
http://trac.webkit.org/changeset/118452
https://bugs.webkit.org/show_bug.cgi?id=87446

Causes many tests to assert on Mac, NRWT bails out (Requested
by sundiamonde on #webkit).

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

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::~RenderObject):
(WebCore::RenderObject::clearLayoutRootIfNeeded):

18:42 Changeset [118458] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

ietestcenter/css3/valuesandunits/units-000.htm asserts
https://bugs.webkit.org/show_bug.cgi?id=86176

Add it to the Windows Skipped list to get the bots green.

  • platform/win/Skipped:
18:36 Changeset [118457] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

webkit crashes on debug builds when running IETC flexbox-ordinal-group-001.htm
https://bugs.webkit.org/show_bug.cgi?id=85832

Add it to the Windows Skipped list to get the bots green.

  • platform/win/Skipped:
18:31 Changeset [118456] by kevino@webkit.org
  • 2 edits in trunk/Source/WebCore

[wx] Unreviewed build fix. Add contextMenuItemVector stub.

18:07 Changeset [118455] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Use 32-byte alignment in AudioArray if using WEBAUDIO_FFMPEG
https://bugs.webkit.org/show_bug.cgi?id=87430

Patch by Raymond Toy <rtoy@google.com> on 2012-05-24
Reviewed by Chris Rogers.

Covered by existing tests.

  • platform/audio/AudioArray.h:

(WebCore::AudioArray::allocate):

18:01 Changeset [118454] by piman@chromium.org
  • 12 edits in trunk/Source

[chromium] Add a setForceRenderSurface to WebLayer for test/bench purpose
https://bugs.webkit.org/show_bug.cgi?id=87436

Reviewed by James Robinson.

Source/Platform:

  • chromium/public/WebLayer.h:

(WebLayer):

Source/WebCore:

Tested by CCLayerTreeHostCommonTest.verifyForceRenderSurface

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setForceRenderSurface):
(WebCore):
(WebCore::LayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::forceRenderSurface):
(LayerChromium):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::CCLayerImpl):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(WebCore::CCLayerImpl::forceRenderSurface):
(WebCore::CCLayerImpl::setForceRenderSurface):
(CCLayerImpl):

  • platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:

(WebCore::subtreeShouldRenderToSeparateSurface):

Source/WebKit/chromium:

  • src/WebLayer.cpp:

(WebKit::WebLayer::setForceRenderSurface):
(WebKit):
(WebKit::WebLayer::forceRenderSurface):

  • tests/CCLayerTreeHostCommonTest.cpp:

(WebKitTests::TEST):
(WebKitTests):

  • tests/LayerChromiumTest.cpp:
17:56 Changeset [118453] by jsbell@chromium.org
  • 16 edits in trunk/LayoutTests

[Chromium] Rebaselines following r118448.

Unreviewed gardening (but I talked to eae about it).

  • platform/chromium-mac-snowleopard/fast/forms/001-expected.png:
  • platform/chromium-mac-snowleopard/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac-snowleopard/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug4527-expected.png:
  • platform/chromium-mac/fast/forms/001-expected.png:
  • platform/chromium-mac/fast/forms/001-expected.txt:
  • platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
  • platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
  • platform/chromium-mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
  • platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:
17:46 Changeset [118452] by kenrb@chromium.org
  • 2 edits in trunk/Source/WebCore

Layout root not getting cleared for anonymous renderers geting destroyed
https://bugs.webkit.org/show_bug.cgi?id=84002

Reviewed by Abhishek Arya.

This is a follow-up to r109406, which added a check to clear layout
roots when they point to a renderer that is being destroyed. The
thinking was that layout roots would never be anonymous renderers,
but there are some cases where this is not true (in particular,
generated content containers with overflow clips can be layout roots).

As in r109406, this patch has no layout test. This is because any test
that exercises this behavior is caused by an existing layout bug where
a child is not properly getting layout (or a renderer is getting dirtied
out of order during layout) and will fail multiple ASSERTs:

in particular, ASSERT(!m_layoutRoot->container()
!m_layoutRoot->

container()->needsLayout()) in FrameView::scheduleRelayoutOfSubtree(),
and ASSERT_NOT_REACHED() in RenderObject::clearLayoutRootIfNeeded().
We are preventing those bugs from manifesting as security issues with
this patch.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::~RenderObject):
(WebCore::RenderObject::willBeDestroyed):

17:33 Changeset [118451] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Update test expectation pathnames following r118418.

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
17:30 Changeset [118450] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Corrupted pages rendering when images are zoomed on Google+
https://bugs.webkit.org/show_bug.cgi?id=87439
<rdar://problem/11503078>

Reviewed by Beth Dakin.

The rect that's given to scrollContentsSlowPath is in frame view coordinates, but if we end up
passing them to RenderLayer::setBackingNeedsRepaintInRect we need to account for the frame scale factor.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollContentsSlowPath):

17:28 Changeset [118449] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (r112399): insertHTML doesn't respect current selection range and inserts HTML to incorrect position
https://bugs.webkit.org/show_bug.cgi?id=87195

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by our passing insertionPos.anchorNode() to splitTreeToNode's start node even when
the position's type was an offset in a container. Fixed the bug by passing the node after the insert position
or the container node if the position is at the end of the container.

Test: editing/pasteboard/paste-at-end-of-node-followed-by-inline-element.html

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

LayoutTests:

Add a regression test.

  • editing/pasteboard/paste-at-end-of-node-followed-by-inline-element-expected.txt: Added.
  • editing/pasteboard/paste-at-end-of-node-followed-by-inline-element.html: Added.
17:15 Changeset [118448] by eae@chromium.org
  • 10 edits
    2 adds in trunk

REGRESSION (115573): Incorrect rounding of margins for floats
https://bugs.webkit.org/show_bug.cgi?id=87319

Reviewed by Eric Seidel.

Source/WebCore:

In RenderBlock::computeInlinePreferredLogicalWidths we used a float to
accumulate margins for floating children while the children themselves
represent their margins as LayoutUnits. Due to lack of rounding this can
cause the block to be too small at certain certain zoom levels, causing
unwanted wrapping.

This patch changes computeInlinePreferredLogicalWidths to use a
LayoutUnit to accumulate the margins and thus ensures that the margin
values are rounded the same way.

Test: fast/block/float/floats-with-margin-should-not-wrap.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):

LayoutTests:

Add new test ensuring that using margins with floats doesn't cause
undesired wrapping.

  • fast/block/float/floats-with-margin-should-not-wrap-expected.txt: Added.
  • fast/block/float/floats-with-margin-should-not-wrap.html: Added.
  • platform/mac/fast/forms/001-expected.txt:
  • platform/mac/fast/html/details-position-expected.txt:
  • platform/mac/fast/replaced/width100percent-checkbox-expected.txt:
  • platform/mac/fast/replaced/width100percent-radio-expected.txt:
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug1318-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt:
17:03 Changeset [118447] by dpranke@chromium.org
  • 3 edits in trunk/Tools

garden-o-matic should not fetch from debug bots if it also knows about the release bots
https://bugs.webkit.org/show_bug.cgi?id=86916

Reviewed by Adam Barth.

Note that if release and debug are failing differently, debug
will be ignored ...

Note: also change the use of a fake port name from
"mock-port-name" to "test-mac-leopard" to make it more friendly
to the port factory ("mock" actually is a real port).

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningHTTPRequestHandler._builders_to_fetch_from):
(GardeningHTTPRequestHandler.rebaselineall):

  • Scripts/webkitpy/tool/servers/gardeningserver_unittest.py:

(GardeningServerTest.test_rebaselineall):
(GardeningServerTest.test_rebaseline_new_port):

16:56 Changeset [118446] by lforschler@apple.com
  • 4 edits in branches/safari-536-branch/Source

Versioning.

16:55 Changeset [118445] by commit-queue@webkit.org
  • 8 edits in trunk

postMessage and webkitPostMessage should behave the same way
https://bugs.webkit.org/show_bug.cgi?id=87384

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-24
Reviewed by Adam Barth.

Source/WebCore:

Make postMessage behave the same way as webkitPostMessage, meaning
that it supports transfer of MessagePorts and ArrayBuffers as per
the spec. Both V8 and JSC implementations have been updated.

Test: fast/dom/Window/window-postmessage-args.html

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::handlePostMessage):
(WebCore::JSDOMWindow::postMessage):
(WebCore::JSDOMWindow::webkitPostMessage):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::handlePostMessageCallback):
(WebCore::V8DOMWindow::postMessageCallback):
(WebCore::V8DOMWindow::webkitPostMessageCallback):

  • bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:

(WebCore::handlePostMessageCallback):
(WebCore::V8DedicatedWorkerContext::postMessageCallback):
(WebCore::V8DedicatedWorkerContext::webkitPostMessageCallback):

  • bindings/v8/custom/V8MessagePortCustom.cpp:

(WebCore::handlePostMessageCallback):
(WebCore::V8MessagePort::postMessageCallback):
(WebCore::V8MessagePort::webkitPostMessageCallback):

  • bindings/v8/custom/V8WorkerCustom.cpp:

(WebCore::handlePostMessageCallback):
(WebCore::V8Worker::postMessageCallback):
(WebCore::V8Worker::webkitPostMessageCallback):

LayoutTests:

Update global test expectation for
fast/dom/Window/window-postmessage-args.html now that JSC's
postMessage implementation supports transfer of MessagePorts.

  • fast/dom/Window/window-postmessage-args-expected.txt:
16:51 Changeset [118444] by lforschler@apple.com
  • 1 copy in tags/Safari-536.14

New Tag.

16:47 Changeset [118443] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build after http://trac.webkit.org/changeset/118441
Also fix a glaring bug with the new code, will run it by original reviewer retroactively.

  • UIProcess/cf/WebBackForwardListCF.cpp:

(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): Fix up the types of the ? operands

to appease super-strict compilers. Don't allow negative indexes (besides the -1 "No index" index).

16:36 Changeset [118442] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

Submit button doesn't submit the form if the form is wrapped by an anchor tag
https://bugs.webkit.org/show_bug.cgi?id=86719

Patch by Pablo Flouret <pablof@motorola.com> on 2012-05-24
Reviewed by Ryosuke Niwa.

Source/WebCore:

When a form's button is clicked or activated with the keyboard a
DOMActivate event is dispatched internally and the default handler for
it takes care of processing the form submission, but the underlying
event that prompted it is not set as handled and so it ends up
navigating the anchor, thereby cancelling the form submission.

This patch sets the original click event as handled if the DOMActivate
event was handled. This matches the rest of the browsers for form
controls that submit a form (input type=submit, button type=submit,
input type=image, etc), and matches IE for the rest of the controls
(basically, IE never activates the anchor when clicking on form
controls, Presto and Gecko mostly don't either, except in a few cases.

Test: fast/forms/form-in-anchor-controls-activation.html

  • dom/Node.cpp:

(WebCore::Node::dispatchDOMActivateEvent):
(WebCore::Node::defaultEventHandler):

  • dom/Node.h:

(Node):

  • html/HTMLButtonElement.cpp:

(WebCore::HTMLButtonElement::defaultEventHandler):

LayoutTests:

  • fast/forms/form-in-anchor-controls-activation-expected.txt: Added.
  • fast/forms/form-in-anchor-controls-activation.html: Added.
16:16 Changeset [118441] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/10090764> and https://bugs.webkit.org/show_bug.cgi?id=87417
(Unrepro) Crashes saving session state in WebBackForwardList

Reviewed by Darin Adler.

  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::addItem): Null check the proposed item and also m_page, to make

sure the page hasn't been closed making this list inactive. Be more aggressive about
clearing the current entries out if there is no current item index.

(WebKit::WebBackForwardList::itemAtIndex): Early null return if there is no current index.
(WebKit::WebBackForwardList::clear): Don't put the current item back in the array if there was

no current item.

  • UIProcess/cf/WebBackForwardListCF.cpp:

(WebKit::WebBackForwardList::createCFDictionaryRepresentation): Don't create a meaningless WebURL.

Don't successfully return a dictionary if any of the entries were null. Be more aggressive about
validating the current index we plan to return in the dictionary.

(WebKit::WebBackForwardList::restoreFromCFDictionaryRepresentation): More aggressively validate the

current index read from disk. Replace a meaningless sanity check with our typical ASSERT.

15:46 Changeset [118440] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Assertion failure in replaySavedEvents() when running editing/selection/drag-in-iframe.html
and editing/pasteboard/drop-text-events.html and fast/events/dragging-mouse-moves.html
https://bugs.webkit.org/show_bug.cgi?id=21796

Add yet another affected test to the Windows Skipped list to get the bots green.

  • platform/win/Skipped:
15:39 Changeset [118439] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Make sure that the layer hosting mode is up-to-date when reconnecting to a new web process
https://bugs.webkit.org/show_bug.cgi?id=87421
<rdar://problem/11510337>

Reviewed by Beth Dakin.

Send over the layer hosting mode as part of the web page creation parameters and create the right
layer hosting context based on the mode.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:

(TiledCoreAnimationDrawingArea):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::setLayerHostingMode):
(WebKit):
(WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):

15:37 Changeset [118438] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] InputHandler can hold a ref on an object when document is cleared.
https://bugs.webkit.org/show_bug.cgi?id=87412

Reviewed by Rob Buis.

PR 145234.

When the document data is cleared, notify the InputHandler
of the associated frame being unloaded.

Reviewed Internally by Nima Ghanavatian.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::clearDocumentData):

15:33 Changeset [118437] by imasaki@chromium.org
  • 1 edit in branches/chromium/1132/LayoutTests/platform/chromium/test_expectations.txt

[chromium] update test expectation file.

15:33 Changeset [118436] by commit-queue@webkit.org
  • 8 edits
    5 adds in trunk/Source

[BlackBerry] Implement select popup and remove old hook to air popup
https://bugs.webkit.org/show_bug.cgi?id=87419

Patch by Crystal Zhang <haizhang@rim.com> on 2012-05-24
Reviewed by Rob Buis.

Source/WebCore:

Add new files to make file, add css file for select popup.

  • PlatformBlackBerry.cmake:
  • Resources/blackberry/popupControlBlackBerry.css: Added.

(html):
(body):
(.bottombuttonOK):
(.bottombuttonCancel):
(.tablebutton):

Source/WebKit:

Add new files to make file.

  • PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

Introduce new html select popup client, remove the old hook to air popup.

  • Api/WebPageClient.h:
  • WebCoreSupport/SelectPopupClient.cpp: Added.

(WebCore):
(WebCore::SelectPopupClient::SelectPopupClient):
(WebCore::SelectPopupClient::~SelectPopupClient):
(WebCore::SelectPopupClient::update):
(WebCore::SelectPopupClient::generateHTML):
(WebCore::SelectPopupClient::closePopup):
(WebCore::SelectPopupClient::contentSize):
(WebCore::SelectPopupClient::htmlSource):
(WebCore::SelectPopupClient::setValueAndClosePopup):
(WebCore::SelectPopupClient::didClosePopup):
(WebCore::SelectPopupClient::writeDocument):

  • WebCoreSupport/SelectPopupClient.h: Added.

(WebKit):
(WebCore):
(SelectPopupClient):

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::openSelectPopup):

  • WebKitSupport/InputHandler.h:

(WebCore):
(InputHandler):

  • WebKitSupport/WebPopupType.h: Added.

(BlackBerry):
(WebKit):

15:31 Changeset [118435] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

[Win] LayoutTests/editing/selection/selection-plugin-clear-crash.html crashes
https://bugs.webkit.org/show_bug.cgi?id=87431

Add it to the Windows Skipped list to get the bots green.

  • platform/win/Skipped:
15:30 Changeset [118434] by abarth@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Fix the chromium-android build.

  • features.gypi:
15:28 Changeset [118433] by lforschler@apple.com
  • 2 edits in branches/safari-536-branch/Source/WebKit2

Merged r118245 -> <rdar://problem/11506223>

15:26 Changeset [118432] by lforschler@apple.com
  • 2 edits in branches/safari-536-branch/Source/WebKit2

Merged r118211 -> <rdar://problem/11502720>

15:25 Changeset [118431] by lforschler@apple.com
  • 3 edits
    2 copies in branches/safari-536-branch

Merged r118204 -> <rdar://problem/11510388>

15:22 Changeset [118430] by lforschler@apple.com
  • 7 edits in branches/safari-536-branch/Source

Merged r118086 -> <rdar://problem/11468434>

15:21 Changeset [118429] by dpranke@chromium.org
  • 3 edits in trunk/Tools

nrwt: fix baseline search path for official chrome builders
https://bugs.webkit.org/show_bug.cgi?id=87432

Reviewed by Tony Chang.

The official chrome builders need to use the win7 and SL
baseline paths, not the XP and Leopard paths. Linux is correct.

  • Scripts/webkitpy/layout_tests/port/google_chrome.py:

(GoogleChromeMacPort.determine_full_port_name):
(GoogleChromeWinPort.determine_full_port_name):

  • Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:

(TestGoogleChromePort._verify_baseline_search_path_startswith):
(TestGoogleChromePort.test_get_google_chrome_port):

15:21 Changeset [118428] by jpfau@apple.com
  • 1 edit
    2 adds in trunk/LayoutTests

Test case for focusing readonly elements
https://bugs.webkit.org/show_bug.cgi?id=87429

Reviewed by Joseph Pecoraro.

  • fast/forms/input-readonly-focus-expected.txt: Added.
  • fast/forms/input-readonly-focus.html: Added.
15:19 Changeset [118427] by lforschler@apple.com
  • 2 edits in branches/safari-536-branch/Source/WebKit2

Merged r118066 -> <rdar://problem/11474087>

15:18 Changeset [118426] by lforschler@apple.com
  • 5 edits in branches/safari-536-branch/Source/WebKit2

Merged r118060 -> <rdar://problem/10849258>

15:16 Changeset [118425] by cevans@google.com
  • 3 edits
    1 copy in branches/chromium/1132

Merge 116647
BUG=123631
Review URL: https://chromiumcodereview.appspot.com/10442022

15:16 Changeset [118424] by lforschler@apple.com
  • 5 edits
    2 copies in branches/safari-536-branch

Merged r117869 -> <rdar://problem/11491501>

15:14 Changeset [118423] by lforschler@apple.com
  • 5 edits in branches/safari-536-branch/Source

Merged r117471 -> <rdar://problem/10777218>

15:07 Changeset [118422] by cevans@google.com
  • 2 edits
    1 copy in branches/chromium/1132

Merge 116611
BUG=127424
Review URL: https://chromiumcodereview.appspot.com/10449013

15:03 Changeset [118421] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[NRWT] REGRESSION(r116021): Assertion when running with --no-http
https://bugs.webkit.org/show_bug.cgi?id=86800

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-05-24
Reviewed by Dirk Pranke.

Don't launch a HTTP server with lock based only on the existence of
locked shards since we now run perf on locked shards too.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._run_tests):

14:47 Changeset [118420] by leviw@chromium.org
  • 5 edits
    2 adds in trunk

Avoid creating InlineBoxes for floating and positioned objects in isolates.
https://bugs.webkit.org/show_bug.cgi?id=87277

Reviewed by Eric Seidel.

Source/WebCore:

We currently will create a placeholder run for the first object we encounter inside an isolate. Then
in RenderBlockLineLayout's constructBidiRuns, we replace that run with the contents of the Isolate.
We run into problems when there are no valid contents in the Isolate. We can't simply remove the
placeholder if there's nothing to replace it with since it may be the logically last run, which we
track but can't rebuild by the time we're handling isolates (we've already shuffled the BidiRuns around).

With this change, we avoid creating a placeholder altogether until we hit contents in the isolate
that would warrant a BidiRun in the first place.

Test: fast/text/international/float-as-only-child-of-isolate-crash.html

  • rendering/InlineIterator.h:

(WebCore::IsolateTracker::addFakeRunIfNecessary):

  • rendering/RenderBlock.h:

(RenderBlock):
(WebCore::RenderBlock::shouldSkipCreatingRunsForObject):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::appendRunsForObject):

LayoutTests:

  • fast/text/international/float-as-only-child-of-isolate-crash-expected.txt: Added.
  • fast/text/international/float-as-only-child-of-isolate-crash.html: Added.
14:44 Changeset [118419] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

DOM ClipboardData.setData does not allow writes during clipboard events
https://bugs.webkit.org/show_bug.cgi?id=17645

Add the more affected tests to the Windows Skipped list in order to get the bots green and
clean up the entry in the Skipped list to reference the bugs.webkit.org URL instead of the
Radar URL.

  • platform/win/Skipped:
14:28 Changeset [118418] by commit-queue@webkit.org
  • 2 edits
    8 moves
    6 adds
    22 deletes in trunk/LayoutTests

Move format independent Media Source tests to http/tests/media/media-source
https://bugs.webkit.org/show_bug.cgi?id=86688

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-05-24
Reviewed by Eric Carlson.

  • http/tests/media/media-source/media-source.js: Added. Replaces webm/webm-media-source.js.

(MediaSourceTest.SegmentHelper): Helper class for loading & managing segment data.
(MediaSourceTest.SegmentHelper.prototype.init.getDataCallback):
(MediaSourceTest.SegmentHelper.prototype.init): Initializes helper and starts loading segment data into memory.
(MediaSourceTest.SegmentHelper.prototype.getInitSegmentDone_): Called when the initialization segment has been loaded.
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegment_.getDataCallback):
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegment_): Downloads the i'th media segment.
(MediaSourceTest.SegmentHelper.prototype.downloadMediaSegmentDone_): Called when the media segment is download. Initiates downloading of the next segment if we don't have them all yet.
(MediaSourceTest.SegmentHelper.prototype.getData_.request.onload):
(MediaSourceTest.SegmentHelper.prototype.getData_): Private helper function that downloads data with XHR.
(MediaSourceTest.SegmentHelper.prototype.addSourceId): Helper function that adds a SourceID using the type specified in the segmentInfo.
(MediaSourceTest.SegmentHelper.prototype.appendInitSegment): Append the initialization segment using webkitSourceAppend().
(MediaSourceTest.SegmentHelper.prototype.appendMediaSegment): Appends the i'th media segment using webkitSourceAppend().
(MediaSourceTest.SegmentHelper.prototype.appendUntilEndOfStream): Starts appending at the i'th media segment and continues appending segments until it has appended the last one.
(MediaSourceTest.SegmentHelper.prototype.getTimeForMediaSegment): Gets the starting timestamp for the i'th media segment.
(MediaSourceTest.SegmentHelper.prototype.getMediaSegmentIndexForTimestamp): Gets the media segment index number for the specified timestamp.
(MediaSourceTest.setSrcToMediaSourceTestURL): Helper function that sets src to webkitMediaSourceURL.
(MediaSourceTest.mediaErrorString): Helper function that converts a MediaError code to a string.
(MediaSourceTest.defaultOnErrorChecks): Default event handler for error events.
(MediaSourceTest.runNext_.runNextFunction): Function passed to a test case to trigger moving on to the next test.
(MediaSourceTest.runNext_.errorEventHandler): Error event handler to use for a test case. This allows moving on to the next test if we get an unexpected error.
(MediaSourceTest.runNext_): Private helper function for running a single test case.
(MediaSourceTest.startTesting): Runs the test case harness.
(MediaSourceTest.startSourceOpenTesting.testWrapperFunction): Wraps test case functions so that they will get called when webkitsourceopen event fires.
(MediaSourceTest.startSourceOpenTesting): Runs the test case harness where test case functions are run from the webkitsourceopen event handler.
(MediaSourceTest.runOnSourceOpen.eventHandlerFunction):
(MediaSourceTest.runOnSourceOpen): Helper function that enable Media Source and calls a function when the webkitsourceopen fires.
(MediaSourceTest.logSourceState): Logs the current webkitSourceState to the console.
(MediaSourceTest.expectSourceState): Helper function that verifies a webkitSourceState expectatation.
(MediaSourceTest.getSourceStateName): Converts a sourcestate value into a string.
(MediaSourceTest.expectReadyState): Helper function that verifies a readyState expectation.
(MediaSourceTest.getReadyStateName): Converts a readyState value into a string.

  • http/tests/media/media-source/video-media-source-abort-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-abort.html: Added.
  • http/tests/media/media-source/video-media-source-add-and-remove-ids-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-add-and-remove-ids-expected.txt.
  • http/tests/media/media-source/video-media-source-add-and-remove-ids.html: Added.
  • http/tests/media/media-source/video-media-source-errors-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-errors-expected.txt.
  • http/tests/media/media-source/video-media-source-errors.html: Added.
  • http/tests/media/media-source/video-media-source-event-attributes.html:
  • http/tests/media/media-source/video-media-source-play-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-play-expected.txt.
  • http/tests/media/media-source/video-media-source-play.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-play.html.
  • http/tests/media/media-source/video-media-source-seek-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-seek-expected.txt.
  • http/tests/media/media-source/video-media-source-seek.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-seek.html.
  • http/tests/media/media-source/video-media-source-state-changes-expected.txt: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-state-changes-expected.txt.
  • http/tests/media/media-source/video-media-source-state-changes.html: Renamed from LayoutTests/http/tests/media/media-source/webm/video-media-source-state-changes.html.
  • http/tests/media/media-source/webm/video-media-source-abort-expected.txt: Removed.
  • http/tests/media/media-source/webm/video-media-source-abort.html: Removed.
  • http/tests/media/media-source/webm/video-media-source-add-and-remove-ids.html: Removed.
  • http/tests/media/media-source/webm/video-media-source-errors.html: Removed.
  • http/tests/media/media-source/webm/webm-media-source.js: Removed.
  • http/tests/media/resources/media-source/webm/segment-info.js: Added. Contains segment information for test.webm.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-0: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-1: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-10: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-11: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-12: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-13: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-14: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-15: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-2: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-3: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-4: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-5: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-6: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-7: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-8: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.cluster-9: Removed.
  • http/tests/media/resources/media-source/webm/test.webm.headers: Removed.
14:21 Changeset [118417] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

[Win] ASSERTION FAILED !m_ptr under AccessibilityController::winAddNotificationListener
https://bugs.webkit.org/show_bug.cgi?id=87426

Add the affected tests to the Windows Skipped list in order to get the bots green.

  • platform/win/Skipped:
14:18 Changeset [118416] by ggaren@apple.com
  • 10 edits in trunk/Source/JavaScriptCore

Made WeakSet per-block instead of per-heap
https://bugs.webkit.org/show_bug.cgi?id=87401

Reviewed by Oliver Hunt.

This allows us fast access to the set of all weak pointers for a block,
which is a step toward lazy finalization.

No performance change.

  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::lastChanceToFinalize): Removed the per-heap weak set, since
it's per-block now.

(JSC::Heap::markRoots): Delegate weak set visiting to the marked space,
since it knows how to iterate all blocks.

(JSC::Heap::collect): Moved the reaping outside of markRoots, since it
doesn't mark anything.

Make sure to reset allocators after shrinking, since shrinking may
deallocate the current allocator.

  • heap/Heap.h:

(Heap): No more per-heap weak set, since it's per-block now.

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::MarkedBlock):

  • heap/MarkedBlock.h:

(MarkedBlock):
(JSC::MarkedBlock::lastChanceToFinalize): Migrated finalization logic
here from the heap, so the heap doesn't need to know about our internal
data structures like our weak set.

(JSC::MarkedBlock::heap):
(JSC::MarkedBlock::weakSet):
(JSC::MarkedBlock::shrink):
(JSC::MarkedBlock::resetAllocator):
(JSC::MarkedBlock::visitWeakSet):
(JSC::MarkedBlock::reapWeakSet):
(JSC::MarkedBlock::sweepWeakSet):

  • heap/MarkedSpace.cpp:

(JSC::VisitWeakSet::VisitWeakSet):
(JSC::VisitWeakSet::operator()):
(VisitWeakSet):
(JSC):
(JSC::ReapWeakSet::operator()):
(JSC::SweepWeakSet::operator()):
(JSC::LastChanceToFinalize::operator()):
(JSC::MarkedSpace::lastChanceToFinalize):
(JSC::ResetAllocator::operator()):
(JSC::MarkedSpace::resetAllocators):
(JSC::MarkedSpace::visitWeakSets):
(JSC::MarkedSpace::reapWeakSets):
(JSC::MarkedSpace::sweepWeakSets):
(JSC::Shrink::operator()):
(JSC::MarkedSpace::shrink):

  • heap/MarkedSpace.h:

(MarkedSpace): Make sure to account for our weak sets when sweeping,
shrinking, etc.

  • heap/WeakSet.cpp:

(JSC):

  • heap/WeakSet.h:

(WeakSet):
(JSC::WeakSet::heap):
(JSC):
(JSC::WeakSet::lastChanceToFinalize):
(JSC::WeakSet::visit):
(JSC::WeakSet::reap):
(JSC::WeakSet::shrink):
(JSC::WeakSet::resetAllocator): Inlined some things since they're called
once per block now instead of once per heap.

  • heap/WeakSetInlines.h:

(JSC::WeakSet::allocate): Use the per-block weak set since there is no
per-heap weak set anymore.

14:17 Changeset [118415] by barraclough@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix arm build

Rubber stamped by Geoff Garen

  • dfg/DFGGPRInfo.h:

(GPRInfo):

14:15 Changeset [118414] by rniwa@webkit.org
  • 11 edits in trunk/Source

There are too many poorly named functions to create a fragment from markup
https://bugs.webkit.org/show_bug.cgi?id=87339

Reviewed by Eric Seidel.

Source/WebCore:

Moved all functions that create a fragment from markup to markup.h/cpp.
There should be no behavioral change.

  • dom/Range.cpp:

(WebCore::Range::createContextualFragment):

  • dom/Range.h: Removed createDocumentFragmentForElement.
  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::setInnerHTML):

  • editing/markup.cpp:

(WebCore::createFragmentFromMarkup):
(WebCore::createFragmentForInnerOuterHTML): Renamed from createFragmentFromSource.
(WebCore::createFragmentForTransformToFragment): Moved from XSLTProcessor.
(WebCore::removeElementPreservingChildren): Moved from Range.
(WebCore::createContextualFragment): Ditto.

  • editing/markup.h:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::setInnerHTML):
(WebCore::HTMLElement::setOuterHTML):
(WebCore::HTMLElement::insertAdjacentHTML):

  • inspector/DOMPatchSupport.cpp:

(WebCore::DOMPatchSupport::patchNode): Added a FIXME since this code should be using
one of the functions listed in markup.h

  • xml/XSLTProcessor.cpp:

(WebCore::XSLTProcessor::transformToFragment):

Source/WebKit/qt:

Replace calls to Range::createDocumentFragmentForElement by calls to
createContextualDocumentFragment.

  • Api/qwebelement.cpp:

(QWebElement::appendInside):
(QWebElement::prependInside):
(QWebElement::prependOutside):
(QWebElement::appendOutside):
(QWebElement::encloseContentsWith):
(QWebElement::encloseWith):

14:14 Changeset [118413] by barraclough@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Move cacheFlush from ExecutableAllocator to Assembler classes
https://bugs.webkit.org/show_bug.cgi?id=87420

Reviewed by Oliver Hunt.

Makes more sense there, & remove a pile of #ifdefs.

  • assembler/ARMAssembler.cpp:

(JSC):
(JSC::ARMAssembler::cacheFlush):

  • assembler/ARMAssembler.h:

(ARMAssembler):
(JSC::ARMAssembler::cacheFlush):

  • assembler/ARMv7Assembler.h:

(JSC::ARMv7Assembler::relinkJump):
(JSC::ARMv7Assembler::cacheFlush):
(ARMv7Assembler):
(JSC::ARMv7Assembler::setInt32):
(JSC::ARMv7Assembler::setUInt7ForLoad):

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::cacheFlush):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::performFinalization):

  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::relinkJump):
(JSC::MIPSAssembler::relinkCall):
(JSC::MIPSAssembler::repatchInt32):
(JSC::MIPSAssembler::cacheFlush):
(MIPSAssembler):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::repatchCompact):
(JSC::SH4Assembler::cacheFlush):
(SH4Assembler):

  • assembler/X86Assembler.h:

(X86Assembler):
(JSC::X86Assembler::cacheFlush):

  • jit/ExecutableAllocator.cpp:

(JSC):

  • jit/ExecutableAllocator.h:

(ExecutableAllocator):

13:54 Changeset [118412] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Update test expectation for fast/js/string-replace-2.html on debug
https://bugs.webkit.org/show_bug.cgi?id=87423

  • platform/chromium/test_expectations.txt:
13:41 Changeset [118411] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

MediaControlTimelineElement is adjusting time 3 times per click
https://bugs.webkit.org/show_bug.cgi?id=58160

Reviewed by Eric Carlson.

No new tests; we intentionally throttle timeupdate events for the same
movie time, so there is no way to write a layout test for this case.

Only call setCurrentTime() on mousedown or mousemove events.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlTimelineElement::defaultEventHandler):

13:39 Changeset [118410] by kbr@google.com
  • 5 edits in branches/chromium/1132/Source/WebCore/platform/graphics

Merge 117191 - Assertion failure running Mozilla's WebGL performance regression tests
https://bugs.webkit.org/show_bug.cgi?id=85942

Reviewed by Stephen White.

Fixed incorrect assumptions about source formats and buffer sizes
when uploading to floating-point textures. Added code paths
supporting the necessary conversions.

Tests have been added to the WebGL conformance suite which cover
these new code paths; they verify uploads of HTMLCanvasElement,
HTMLImageElement, HTMLVideoElement, and ImageData to
floating-point textures. However, because floating-point texture
support is optional, and generally only supported on bots which
run with real GPUs and not in virtual machines, it isn't feasible
to incorporate these tests as layout tests.

Ran the new WebGL conformance tests in Chromium on Linux; all
pass.

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore::GraphicsContext3D::extractImageData):
Properly compute size of destination buffer.

(WebCore):
Add pack/unpack routines for converting RGBA8/BGRA8 to floating point.

(WebCore::doFloatingPointPacking):
Support RGBA8 and BGRA8 source formats.

(WebCore::isFloatingPointSource):
Factored out logic for assertions.

(WebCore::GraphicsContext3D::packPixels):
Generalized assertions and logic.

  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::getImageData):
Properly compute size of destination buffer.

  • platform/graphics/cg/GraphicsContext3DCG.cpp:

(WebCore::GraphicsContext3D::getImageData):
Properly compute size of destination buffer.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3D::getImageData):
Properly compute size of destination buffer.

  • platform/graphics/skia/GraphicsContext3DSkia.cpp:

(WebCore::GraphicsContext3D::getImageData):
Properly compute size of destination buffer.

TBR=kbr@google.com
Review URL: https://chromiumcodereview.appspot.com/10444013

13:12 Changeset [118409] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

[Win] Crash under DocumentLoader::didTellClientAboutLoad when running
fast/dom/Window/Location/window-override-location-using-defineGetter.html
fast/dom/Window/Location/set-location-after-close.html

Skip set-location-after-close.html on Windows.

  • platform/win/Skipped:
13:08 Changeset [118408] by jochen@chromium.org
  • 6 edits in trunk/Tools

Add --driver-name option to run_webkit_tests.py to allow for selecting alternative DRT binaries
https://bugs.webkit.org/show_bug.cgi?id=87128

Reviewed by Dirk Pranke.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.driver_name):

  • Scripts/webkitpy/layout_tests/port/chromium_linux.py:

(ChromiumLinuxPort._path_to_driver):

  • Scripts/webkitpy/layout_tests/port/chromium_unittest.py:

(ChromiumPortTest.test_driver_name_option):

  • Scripts/webkitpy/layout_tests/port/chromium_win.py:

(ChromiumWinPort._path_to_driver):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

13:01 Changeset [118407] by commit-queue@webkit.org
  • 25 edits in trunk

Font Boosting: Add compile flag and runtime setting
https://bugs.webkit.org/show_bug.cgi?id=87394

Patch by John Mellor <johnme@chromium.org> on 2012-05-24
Reviewed by Adam Barth.

.:

Add ENABLE_FONT_BOOSTING.

  • configure.ac:

Source/JavaScriptCore:

Add ENABLE_FONT_BOOSTING.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

Add ENABLE_FONT_BOOSTING compile flag and fontBoostingEnabled runtime setting.

No functionality yet, so no new tests.

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:
  • Target.pri:
  • page/Settings.cpp:

(WebCore::Settings::Settings):
(WebCore::Settings::setFontBoostingEnabled):
(WebCore):

  • page/Settings.h:

(Settings):
(WebCore::Settings::fontBoostingEnabled):

Source/WebKit/chromium:

Expose fontBoostingEnabled runtime setting via WebSettings.

  • features.gypi:
  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setFontBoostingEnabled):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

Source/WebKit/mac:

Add ENABLE_FONT_BOOSTING.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

Add ENABLE_FONT_BOOSTING.

  • Configurations/FeatureDefines.xcconfig:

Tools:

Add ENABLE_FONT_BOOSTING.

  • Scripts/webkitperl/FeatureList.pm:
  • qmake/mkspecs/features/features.pri:

WebKitLibraries:

Add ENABLE_FONT_BOOSTING.

  • win/tools/vsprops/FeatureDefines.vsprops:
  • win/tools/vsprops/FeatureDefinesCairo.vsprops:
12:48 Changeset [118406] by rakuco@webkit.org
  • 2 edits in trunk/Source/WebKit

[EFL] Unreviewed, unbreak `make install' after r117046.

  • PlatformEfl.cmake: Remove ewk_auth_soup.h from the list of

installed headers, since it has been made private and renamed.

12:40 Changeset [118405] by tonikitoo@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

Possible missing layout in Iris browser after hiding VKB
https://bugs.webkit.org/show_bug.cgi?id=87408
PR #153056 / MKS_3674963

Reviewed by Adam Treat.
Patch by Antonio Gomes <agomes@rim.com>

Also informally reviewed by Mike Fenton.

If we are not rotating and we've started a viewport resize with
the Render tree in dirty state (i.e. it needs layout), lets
reset the needsLayout flag for now but set our own 'needsLayout'.

Reason: calls like ScrollView::setFixedLayoutSize can trigger a layout
if the render tree needs it. We want to avoid it till the viewport resize
is actually done (i.e. ScrollView::setViewportSize gets called
further down the method) so we do not get render artifacts.

Since our WebPage::setViewportSize calls rely on async Virtual
Keyboard responses, we were getting it called with the render
tree sometimes in a dirty state, sometimes not. It was flaky!
Patch ensures a clear render tree state, and sets it as dirty
afterwards as needed, so layout happens at the proper time.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setViewportSize):

12:38 Changeset [118404] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] [DRT] keyboard-related tests do not pass
https://bugs.webkit.org/show_bug.cgi?id=85369

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-24
Reviewed by Gustavo Noronha Silva.

Tools:

Add SHIFT modifier for capital letters as VK_
codes do not distinguish between lows and caps and also to be consistent
with other ports which send caps as lowercase letters with the shift key down.

  • DumpRenderTree/efl/EventSender.cpp:

(keyNameFromJSValue):

LayoutTests:

  • platform/efl/Skipped: Unskipped keyboard-related tests.
12:29 Changeset [118403] by mifenton@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Padding adjustment for determining the relative distance for a point was backwards.
https://bugs.webkit.org/show_bug.cgi?id=87404

Reviewed by Rob Buis.

Fix padding calculation for handle adjustment.

Reviewed Internally by Mike Lattanzio.

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::directionOfPointRelativeToRect):

12:27 Changeset [118402] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

MHTML files should be loadable from all schemes considered local,
not just "file:"

https://bugs.webkit.org/show_bug.cgi?id=86540

Patch by Greg Spencer <gspencer@chromium.org> on 2012-05-24
Reviewed by Adam Barth.

Existing tests should verify correct function.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::continueAfterContentPolicy):

  • loader/archive/mhtml/MHTMLArchive.cpp:

(WebCore::MHTMLArchive::create):

12:09 Changeset [118401] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Widen test suppressions to include linux crash.
https://bugs.webkit.org/show_bug.cgi?id=87160

Unreviewed gardening.

  • platform/chromium/test_expectations.txt:
12:03 Changeset [118400] by danakj@chromium.org
  • 3 edits in trunk/Source/WebCore

[chromium] Remove some leftover references to LayerTilerChromium
https://bugs.webkit.org/show_bug.cgi?id=87405

Reviewed by James Robinson.

  • platform/graphics/chromium/LayerChromium.h:

(LayerChromium):

  • platform/graphics/chromium/SolidColorLayerChromium.h:
11:57 Changeset [118399] by jberlin@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r109663) All the the dom/html/level2/html/HTMLFrameElement* tests crash on Windows
https://bugs.webkit.org/show_bug.cgi?id=87410

Reviewed by Anders Carlsson.

Do not pass a reference type to va_start (see r75435).

  • platform/LocalizedStrings.cpp:

(WebCore::formatLocalizedString):

11:54 Changeset [118398] by yael.aharon@nokia.com
  • 7 edits in trunk

[Qt] Stop using the flag FIXED_POSITION_CREATES_STACKING_CONTEXT
https://bugs.webkit.org/show_bug.cgi?id=87392

Reviewed by Antonio Gomes.

Source/WebCore:

Remove our dependency on a build flag and use the new setting.

No new tests.

  • css/StyleResolver.cpp:

Source/WebKit2:

Turn on the setting setFixedPositionCreatesStackingContext.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setResizesToContentsUsingLayoutSize):

LayoutTests:

Update test expectations, since now don't turn on the setting when running layout tests.

  • platform/qt/fast/block/positioning/016-expected.txt:
  • platform/qt/fast/block/positioning/025-expected.txt:
11:42 Changeset [118397] by ap@apple.com
  • 12 edits in trunk

[WK2] Let the client give local files universal access on a case by case basis
https://bugs.webkit.org/show_bug.cgi?id=87174
<rdar://problem/11024330>

Reviewed by Maciej Stachowiak.

  • dom/Document.cpp: (WebCore::Document::initSecurityContext): When settings->allowUniversalAccessFromFileURLs() is false, also try asking the client for an indulgence.
  • loader/FrameLoaderClient.h: (WebCore::FrameLoaderClient::shouldForceUniversalAccessFromLocalURL): Default implementation doesn't change anything.
11:35 Changeset [118396] by tony@chromium.org
  • 3 edits in trunk/Source/WebCore

improve StyleRareNonInheritedData bit packing on Windows
https://bugs.webkit.org/show_bug.cgi?id=87322

Reviewed by Eric Seidel.

Accessors for m_runningAcceleratedAnimation and m_hasAspectRatio are on RenderStyle already.

Also reorder the variables in operator== to be consistent with the constructor and header file.
This makes it easier to add or remove values.

No new tests, just refactoring.

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

(StyleRareNonInheritedData):

11:14 Changeset [118395] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Negative margin block doesn't properly clear a float enclosed by a previous sibling
https://bugs.webkit.org/show_bug.cgi?id=10900

Reviewed by David Hyatt.

Source/WebCore:

Tests: fast/css/clear-float-sibling.html

Parent blocks keep a list of child floats that extend out of the parent block and
by implication overhang into the parent's siblings. But this doesn't work if the
sibling has collapsing margins - it will not find the float in the previous block's
list so will ignore the float and fail to clear it.

RenderBlock:collapseMargins() needs to check if a child's collapsing margin has
reduced the height of the parent up past the bottom of its previous sibling's lowest float
and add the now overhanging float to the parent's float list if appropriate.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::collapseMargins):

LayoutTests:

  • fast/css/clear-float-sibling-expected.html: Added.
  • fast/css/clear-float-sibling.html: Added.
11:08 Changeset [118394] by kinuko@chromium.org
  • 12 edits in trunk/Source

Cleanup: introduce toFile() to reduce static cast from Blob to File
https://bugs.webkit.org/show_bug.cgi?id=87234

Reviewed by Eric Seidel.

Source/WebCore:

No new tests as this must have no side effect.

  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::toV8):

  • fileapi/Blob.cpp:

(WebCore::Blob::webkitSlice):

  • fileapi/Blob.h:

(Blob):

  • fileapi/File.h:

(WebCore::toFile): Added.
(WebCore):

  • fileapi/FileReader.cpp:

(WebCore::FileReader::readAsArrayBuffer):
(WebCore::FileReader::readAsBinaryString):
(WebCore::FileReader::readAsText):
(WebCore::FileReader::readAsDataURL):

  • fileapi/WebKitBlobBuilder.cpp:

(WebCore::WebKitBlobBuilder::append):

  • platform/chromium/ClipboardChromium.cpp:

(WebCore::ClipboardChromium::files):

  • platform/network/FormData.cpp:

(WebCore::FormData::appendKeyValuePairItems):

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::send):

Source/WebKit/chromium:

  • src/WebDragData.cpp:

(WebKit::WebDragData::items):

11:03 Changeset [118393] by darin@apple.com
  • 2 edits in trunk/Source/WebCore

SVGElement::addEventListener has peculiar RefPtr usage
https://bugs.webkit.org/show_bug.cgi?id=86497

Reviewed by Andy Estes.

  • svg/SVGElement.cpp:

(WebCore::SVGElement::addEventListener): Switch to a more-standard style of RefPtr usage,
getting rid of some unneeded reference count churn; also removed an unneeded special case
for zero listeners.

10:54 Changeset [118392] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Clean up the Windows Skipped list a bit.

Update it for the renames in r108832 and the test removed in r113532.
Also, replace "" with "#" in a couple comments.

  • platform/win/Skipped:
10:44 Changeset [118391] by rakuco@webkit.org
  • 6 edits in trunk

[EFL] Modify keycode conversion functions to return keycodes with location information after r118001.
https://bugs.webkit.org/show_bug.cgi?id=87203

Reviewed by Andreas Kling.

Source/WebCore:

Add the required changes to make
fast/events/keydown-leftright-keys.html pass after r118001.

  • platform/efl/EflKeyboardUtilities.cpp:

(WebCore::createWindowsKeyMap): Translate the keycodes for
"{left,right}{Shift,Alt,Control}" into the right windows keyboard
definitions.

Tools:

Add the required changes to make
fast/events/keydown-leftright-keys.html pass after r118001.

  • DumpRenderTree/efl/EventSender.cpp:

(keyNameFromJSValue): Translate "{left,right}{Shift,Alt,Control}"
into the proper X11 keysym definitions.

LayoutTests:

  • platform/efl/test_expectations.txt: Unskip fast/events/keydown-leftright-keys.html.
10:24 Changeset [118390] by commit-queue@webkit.org
  • 6 edits
    1 copy in trunk/LayoutTests

[EFL] Update test expectations for layout test fast/events/click-focus-anchor.html
https://bugs.webkit.org/show_bug.cgi?id=87293

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-24
Reviewed by Eric Seidel.

Anchor elements are mouse focusable in EFL port.

  • fast/events/click-focus-anchor-expected.txt:
  • fast/events/click-focus-anchor.html:
  • platform/efl/Skipped:
  • platform/efl/fast/events/click-focus-anchor-expected.txt:
  • platform/gtk/fast/events/click-focus-anchor-expected.txt:
  • platform/qt/fast/events/click-focus-anchor-expected.txt:
10:20 Changeset [118389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Gtk] Wrong cursor used for ne-resize
https://bugs.webkit.org/show_bug.cgi?id=87366

Patch by Claudio Saavedra <csaavedra@igalia.com> on 2012-05-24
Reviewed by Eric Seidel.

  • platform/gtk/CursorGtk.cpp:

(WebCore::Cursor::ensurePlatformCursor): Use GDK_TOP_RIGHT_CORNER
for Cursor::NorthEastPanning.

10:18 Changeset [118388] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/LayoutTests

[EFL] Update test expectations for layout test fast/events/click-focus-control.html
https://bugs.webkit.org/show_bug.cgi?id=87295

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-05-24
Reviewed by Eric Seidel.

HTMLFormControlElement is not mouse focusable in EFL port.

  • platform/efl/Skipped:
  • platform/efl/fast/events/click-focus-control-expected.txt: Added.
10:15 Changeset [118387] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

use built-in data type DashArray
https://bugs.webkit.org/show_bug.cgi?id=87344

Patch by Lu Guanqun <guanqun.lu@intel.com> on 2012-05-24
Reviewed by Eric Seidel.

  • tests/PlatformContextSkiaTest.cpp:

(WebCore::TEST):

10:02 Changeset [118386] by ossy@webkit.org
  • 3 edits
    125 adds in trunk/LayoutTests

[Qt] Unskip and rebase now passing tests from qt-5.0/Skipped list.

Patch by János Badics <jbadics@inf.u-szeged.hu> on 2012-05-24
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk2/editing/pasteboard/4944770-1-expected.png: Added.
  • platform/qt-5.0-wk2/editing/pasteboard/4944770-1-expected.txt: Added.
  • platform/qt-5.0-wk2/editing/pasteboard/4944770-2-expected.png: Added.
  • platform/qt-5.0-wk2/editing/pasteboard/4944770-2-expected.txt: Added.
  • platform/qt-5.0-wk2/editing/selection/select-box-expected.png: Added.
  • platform/qt-5.0-wk2/editing/selection/select-box-expected.txt: Added.
  • platform/qt-5.0-wk2/editing/selection/select-element-paragraph-boundary-expected.png: Added.
  • platform/qt-5.0-wk2/editing/selection/select-element-paragraph-boundary-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png: Added.
  • platform/qt-5.0-wk2/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/dynamic/008-expected.png: Added.
  • platform/qt-5.0-wk2/fast/dynamic/008-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/HTMLOptionElement_label06-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/HTMLOptionElement_label06-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/HTMLOptionElement_label07-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/HTMLOptionElement_label07-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/box-shadow-override-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/box-shadow-override-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/form-element-geometry-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/form-element-geometry-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/input-disabled-color-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/input-disabled-color-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/menulist-separator-painting-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/menulist-separator-painting-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/placeholder-pseudo-style-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/placeholder-pseudo-style-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/select-background-none-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/select-background-none-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/select-baseline-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/selectlist-minsize-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/selectlist-minsize-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/textarea-align-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/textarea-align-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/forms/textarea-setinnerhtml-expected.png: Added.
  • platform/qt-5.0-wk2/fast/forms/textarea-setinnerhtml-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/parser/entity-comment-in-textarea-expected.png: Added.
  • platform/qt-5.0-wk2/fast/parser/entity-comment-in-textarea-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/parser/open-comment-in-textarea-expected.png: Added.
  • platform/qt-5.0-wk2/fast/parser/open-comment-in-textarea-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/replaced/three-selects-break-expected.png: Added.
  • platform/qt-5.0-wk2/fast/replaced/three-selects-break-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/table/003-expected.png: Added.
  • platform/qt-5.0-wk2/fast/table/003-expected.txt: Added.
  • platform/qt-5.0-wk2/fast/text/large-text-composed-char-expected.png: Added.
  • platform/qt-5.0-wk2/fast/text/large-text-composed-char-expected.txt: Added.
  • platform/qt-5.0/Skipped:
  • platform/qt-5.0/editing/pasteboard/4944770-1-expected.png: Added.
  • platform/qt-5.0/editing/pasteboard/4944770-1-expected.txt: Added.
  • platform/qt-5.0/editing/pasteboard/4944770-2-expected.png: Added.
  • platform/qt-5.0/editing/pasteboard/4944770-2-expected.txt: Added.
  • platform/qt-5.0/editing/selection/select-box-expected.png: Added.
  • platform/qt-5.0/editing/selection/select-box-expected.txt: Added.
  • platform/qt-5.0/editing/selection/select-element-paragraph-boundary-expected.png: Added.
  • platform/qt-5.0/editing/selection/select-element-paragraph-boundary-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceMotion/create-event-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceMotion/no-page-cache-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceMotion/optional-event-properties-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceMotion/window-property-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceOrientation/create-event-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceOrientation/no-page-cache-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceOrientation/optional-event-properties-expected.txt: Added.
  • platform/qt-5.0/fast/dom/DeviceOrientation/window-property-expected.txt: Added.
  • platform/qt-5.0/fast/dom/HTMLTextAreaElement/reset-textarea-expected.png: Added.
  • platform/qt-5.0/fast/dom/HTMLTextAreaElement/reset-textarea-expected.txt: Added.
  • platform/qt-5.0/fast/dom/Orientation/create-event-orientationchange-expected.txt: Added.
  • platform/qt-5.0/fast/dom/Window/window-properties-device-orientation-expected.txt: Added.
  • platform/qt-5.0/fast/dynamic/008-expected.png: Added.
  • platform/qt-5.0/fast/dynamic/008-expected.txt: Added.
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label06-expected.png: Added.
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label06-expected.txt: Added.
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label07-expected.png: Added.
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label07-expected.txt: Added.
  • platform/qt-5.0/fast/forms/box-shadow-override-expected.png: Added.
  • platform/qt-5.0/fast/forms/box-shadow-override-expected.txt: Added.
  • platform/qt-5.0/fast/forms/form-element-geometry-expected.png: Added.
  • platform/qt-5.0/fast/forms/form-element-geometry-expected.txt: Added.
  • platform/qt-5.0/fast/forms/input-disabled-color-expected.png: Added.
  • platform/qt-5.0/fast/forms/input-disabled-color-expected.txt: Added.
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.png: Added.
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.txt: Added.
  • platform/qt-5.0/fast/forms/placeholder-pseudo-style-expected.png: Added.
  • platform/qt-5.0/fast/forms/placeholder-pseudo-style-expected.txt: Added.
  • platform/qt-5.0/fast/forms/select-background-none-expected.png: Added.
  • platform/qt-5.0/fast/forms/select-background-none-expected.txt: Added.
  • platform/qt-5.0/fast/forms/select-baseline-expected.png: Added.
  • platform/qt-5.0/fast/forms/select-baseline-expected.txt: Added.
  • platform/qt-5.0/fast/forms/selectlist-minsize-expected.png: Added.
  • platform/qt-5.0/fast/forms/selectlist-minsize-expected.txt: Added.
  • platform/qt-5.0/fast/forms/textarea-align-expected.png: Added.
  • platform/qt-5.0/fast/forms/textarea-align-expected.txt: Added.
  • platform/qt-5.0/fast/forms/textarea-setinnerhtml-expected.png: Added.
  • platform/qt-5.0/fast/forms/textarea-setinnerhtml-expected.txt: Added.
  • platform/qt-5.0/fast/parser/entity-comment-in-textarea-expected.png: Added.
  • platform/qt-5.0/fast/parser/entity-comment-in-textarea-expected.txt: Added.
  • platform/qt-5.0/fast/parser/open-comment-in-textarea-expected.png: Added.
  • platform/qt-5.0/fast/parser/open-comment-in-textarea-expected.txt: Added.
  • platform/qt-5.0/fast/replaced/three-selects-break-expected.png: Added.
  • platform/qt-5.0/fast/replaced/three-selects-break-expected.txt: Added.
  • platform/qt-5.0/fast/table/003-expected.png: Added.
  • platform/qt-5.0/fast/table/003-expected.txt: Added.
  • platform/qt-5.0/fast/text/basic/003-expected.png: Added.
  • platform/qt-5.0/fast/text/basic/003-expected.txt: Added.
  • platform/qt-5.0/fast/text/large-text-composed-char-expected.png: Added.
  • platform/qt-5.0/fast/text/large-text-composed-char-expected.txt: Added.
  • platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.png: Added.
  • platform/qt-5.0/fast/text/letter-spacing-negative-opacity-expected.txt: Added.
  • platform/qt-5.0/fast/xsl/document-function-expected.png: Added.
  • platform/qt-5.0/fast/xsl/document-function-expected.txt: Added.
  • platform/qt-5.0/fast/xsl/xslt-entity-expected.png: Added.
  • platform/qt-5.0/fast/xsl/xslt-entity-expected.txt: Added.
09:39 Changeset [118385] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[Qt] Fix Webkit1 + V8 build.
https://bugs.webkit.org/show_bug.cgi?id=87368

Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-05-24
Reviewed by Eric Seidel.

Source/WebCore:

No new tests, because this is a buildfix.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateImplementation):

  • bindings/v8/npruntime_impl.h:
  • bindings/v8/npruntime_priv.h:

Source/WebKit/qt:

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::evaluateScriptInIsolatedWorld):

09:29 Changeset [118384] by pilgrim@chromium.org
  • 8 edits
    1 copy in trunk/Source

[Chromium] Move queryLocalizedString to Platform.h
https://bugs.webkit.org/show_bug.cgi?id=85762

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/Platform:

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::queryLocalizedString):

  • chromium/public/WebLocalizedString.h: Added.

(WebKit):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/platform/WebKitPlatformSupport.h:

(WebKit::WebKitPlatformSupport::getPluginList):

  • public/platform/WebLocalizedString.h:
  • src/LocalizedStrings.cpp:

(WebCore::query):

09:25 Changeset [118383] by danakj@chromium.org
  • 19 edits in trunk/Source

[chromium] Only display frames created with memory allocations meant to be displayed
https://bugs.webkit.org/show_bug.cgi?id=85108

Reviewed by Adrienne Walker.

Source/WebCore:

In this patch we remove the setVisible() code paths from CCProxy, and
instead commit visiblity state along with a frame. We also commit a
flag with a frame that indicates if the frame is one that can be drawn.

The impl host is set to visible during commit instead of using a
special channel through the proxy, and the scheduler allows
commits when we are waiting to draw our first frame but blocked on
being non-visible.

canDraw is gated on a new flag that indicates if the frame is one meant
for display. A frame is meant for display if the frame was generated
with a memory allocation meant for display. At this time, any non-zero
memory allocation is considered meant for display.

We prevent races by not changing the memory allocation at any time
except during a commit. So we force a commit when the memory
allocation needs to be adjusted and we are not visible. Similarly,
we force a commit when visibility changes so that we are able to
commit the visibility change to the impl tree.

In order to prevent drawing frames that are not meant for display
with a single thread, we prevent compositing when the impl tree
is not visible, with an early out in CCSingleThreadProxy.

Unit tests: CCLayerTreeHostTestVisibilityAndAllocationControlDrawing

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:
  • platform/graphics/chromium/TiledLayerChromium.h:
  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::CCLayerTreeHost):
(WebCore::CCLayerTreeHost::initializeLayerRenderer):
(WebCore::CCLayerTreeHost::finishCommitOnImplThread):
(WebCore::CCLayerTreeHost::setNeedsCommit):
(WebCore):
(WebCore::CCLayerTreeHost::setNeedsForcedCommit):
(WebCore::CCLayerTreeHost::setVisible):
(WebCore::CCLayerTreeHost::setContentsMemoryAllocationLimitBytes):
(WebCore::CCLayerTreeHost::scheduleComposite):
(WebCore::CCLayerTreeHost::updateLayers):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::canDraw):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(WebCore::CCLayerTreeHostImpl::sourceFrameCanBeDrawn):
(WebCore::CCLayerTreeHostImpl::setSourceFrameCanBeDrawn):
(CCLayerTreeHostImpl):

  • platform/graphics/chromium/cc/CCProxy.h:

(CCProxy):

  • platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:

(WebCore::CCSchedulerStateMachine::drawSuspendedUntilCommit):
(WebCore::CCSchedulerStateMachine::scheduledToDraw):
(WebCore::CCSchedulerStateMachine::updateState):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::doCommit):
(WebCore::CCSingleThreadProxy::setNeedsCommit):
(WebCore):
(WebCore::CCSingleThreadProxy::setNeedsForcedCommit):
(WebCore::CCSingleThreadProxy::doComposite):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::CCThreadProxy):
(WebCore::CCThreadProxy::setNeedsForcedCommit):
(WebCore):
(WebCore::CCThreadProxy::setNeedsForcedCommitOnImplThread):
(WebCore::CCThreadProxy::forceBeginFrameOnImplThread):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::scheduledActionCommit):

  • platform/graphics/chromium/cc/CCThreadProxy.h:

(CCThreadProxy):

Source/WebKit/chromium:

Removing code to protect visible textures when a tab becomes invisible,
as we want to reduce our memory limit for invisible tabs and these
textures should not be saved.

  • src/NonCompositedContentHost.cpp:
  • src/NonCompositedContentHost.h:

(NonCompositedContentHost):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setVisibilityState):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::TestHooks::didCommit):
(WTF::CCLayerTreeHostTest::CCLayerTreeHostTest):
(WTF::CCLayerTreeHostTest::scheduleComposite):
(WTF::CCLayerTreeHostTest::dispatchComposite):
(CCLayerTreeHostTest):
(WTF::CCLayerTreeHostTest::doBeginTest):
(CCLayerTreeHostTestTickAnimationWhileBackgrounded):
(WTF::CCLayerTreeHostTestTickAnimationWhileBackgrounded::willAnimateLayers):
(CCLayerTreeHostTestVisibilityAndAllocationControlDrawing):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::beginTest):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::didCommitAndDrawFrame):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::didCommit):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestVisibilityAndAllocationControlDrawing::afterTest):
(WTF):

08:50 Changeset [118382] by pfeldman@chromium.org
  • 5 edits
    2 adds in trunk

Web Inspector: [regression] search in formatted scripts is broken.
https://bugs.webkit.org/show_bug.cgi?id=87377

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Using formatted content in search.

Test: inspector/debugger/script-formatter-search.html

  • inspector/front-end/JavaScriptSource.js:

(WebInspector.JavaScriptSource.prototype.workingCopyCommitted):
(WebInspector.JavaScriptSource.prototype.searchInContent.callbackWrapper):
(WebInspector.JavaScriptSource.prototype.searchInContent):

LayoutTests:

  • inspector/debugger/script-formatter-search-expected.txt: Added.
  • inspector/debugger/script-formatter-search.html: Added.
08:48 Changeset [118381] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Fix the Mac tests after r118353.

  • platform/mac/fast/js/global-constructors-expected.txt:
08:45 Changeset [118380] by ossy@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt5][WK2] Gardening. Skip failing test after r118058.
https://bugs.webkit.org/show_bug.cgi?id=87395

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-05-24
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk2/Skipped: Skip fast/forms/ValidityState-valueMissing-002.html.
08:31 Changeset [118379] by pdr@google.com
  • 3 edits in trunk/Source/WebCore

Refactor SVGAnimateTransformElement to avoid expensive determineAnimatedPropertyType call
https://bugs.webkit.org/show_bug.cgi?id=87309

Reviewed by Nikolas Zimmermann.

This is a simple refactor that matches the work done in
https://bugs.webkit.org/show_bug.cgi?id=87309 to avoid an expensive call.

No new tests, no actual effects beyond performance improvement.

  • svg/SVGAnimateElement.h:

(SVGAnimateElement):

  • svg/SVGAnimateTransformElement.cpp:

(WebCore::SVGAnimateTransformElement::hasValidAttributeType):

08:12 Changeset [118378] by ossy@webkit.org
  • 2 edits
    1 delete in trunk/LayoutTests

[Qt] Gardening. Remove no more required expected file.

[WK2] Skip test that uses unimplemented feature.
https://bugs.webkit.org/show_bug.cgi?id=81042

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-05-24
Reviewed by Csaba Osztrogonác.

  • platform/qt/svg/custom/global-constructors-expected.txt: Removed.
  • platform/wk2/Skipped: editing/spelling/grammar-markers.html.
08:10 Changeset [118377] by ossy@webkit.org
  • 3 edits in trunk/Source/WebCore

[Qt] Unreviewed trvial fixes.

  • Target.pri: Typo fix after r118226.
  • WebCore.pri: Warning fix after r117291.
08:07 Changeset [118376] by antti@apple.com
  • 14 edits
    2 copies in trunk/Source/WebCore

Move StyleRuleImport to a file of its own
https://bugs.webkit.org/show_bug.cgi?id=87386

Rubber-stamped by Andreas Kling.

Move StyleRuleImport out from CSSImportRule.cpp/.h

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSImportRule.cpp:

(WebCore):
(WebCore::CSSImportRule::href):

  • css/CSSImportRule.h:

(WebCore):
(CSSImportRule):

  • css/CSSParser.cpp:
  • css/StyleRuleImport.cpp: Copied from Source/WebCore/css/CSSImportRule.cpp.

(WebCore):

  • css/StyleRuleImport.h: Copied from Source/WebCore/css/CSSImportRule.h.

(WebCore):

  • css/StyleSheetContents.cpp:
07:59 Changeset [118375] by vsevik@chromium.org
  • 11 edits
    6 deletes in trunk

Unreviewed, rolling out r118352.
http://trac.webkit.org/changeset/118352
https://bugs.webkit.org/show_bug.cgi?id=87390

Caused 6 editing/spelling tests crash/fail on chromium in
debug. (Requested by vsevik on #webkit).

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

Source/WebCore:

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForDocumentMarker):

Source/WebKit/chromium:

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::isGrammarCheckingEnabled):

  • src/WebTextCheckingResult.cpp:

(WebKit::WebTextCheckingResult::operator TextCheckingResult):

Tools:

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockGrammarCheck.cpp: Removed.
  • DumpRenderTree/chromium/MockGrammarCheck.h: Removed.
  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::finishLastTextCheck):

LayoutTests:

  • editing/spelling/grammar-markers-expected.txt: Removed.
  • editing/spelling/grammar-markers.html: Removed.
  • platform/chromium-linux/editing/spelling/grammar-markers-expected.png: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/mac/editing/spelling/grammar-markers-expected.png: Removed.
07:54 Changeset [118374] by apavlov@chromium.org
  • 9 edits in trunk/Source/WebCore

Web Inspector: Support hierarchical context menus
https://bugs.webkit.org/show_bug.cgi?id=86847

Reviewed by Pavel Feldman.

This patch makes use of the WebMenuItemInfo SubMenu type to expose the capability of building submenu items
in the Web Inspector's context menu. ContextMenuItems are also passed/stored by reference/value rather than pointer
in order to be consistent with the PlatformMenuDescription typedef.

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::populateContextMenuItems): Enable submenu item population.
(WebCore):
(WebCore::JSInspectorFrontendHost::showContextMenu): Extract the menu population part into populateContextMenuItems().

  • bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:

(WebCore::populateContextMenuItems): Enable submenu item population.
(WebCore):
(WebCore::V8InspectorFrontendHost::showContextMenuCallback): Extract the menu population part into populateContextMenuItems().

  • inspector/InspectorFrontendHost.cpp:

(WebCore::FrontendMenuProvider::create): Use reference instead of pointer for ContextMenuItems.
(WebCore::FrontendMenuProvider::FrontendMenuProvider): Use reference instead of pointer for ContextMenuItems.
(WebCore::FrontendMenuProvider::populateContextMenu): Use reference instead of pointer for ContextMenuItems.
(WebCore::FrontendMenuProvider::contextMenuCleared):
(FrontendMenuProvider):
(WebCore::InspectorFrontendHost::showContextMenu): Use reference instead of pointer for ContextMenuItems.

  • inspector/InspectorFrontendHost.h:

(InspectorFrontendHost):

  • inspector/front-end/ContextMenu.js: Support the tree-like structure of context menus.

(WebInspector.ContextMenuItem):
(WebInspector.ContextMenuItem.prototype.id):
(WebInspector.ContextMenuItem.prototype.type):
(WebInspector.ContextMenuItem.prototype._buildDescriptor):
(WebInspector.ContextSubMenuItem):
(WebInspector.ContextSubMenuItem.prototype.appendItem):
(WebInspector.ContextSubMenuItem.prototype.appendSubMenuItem):
(WebInspector.ContextSubMenuItem.prototype.appendCheckboxItem):
(WebInspector.ContextSubMenuItem.prototype.appendSeparator):
(WebInspector.ContextSubMenuItem.prototype._buildDescriptor):
(WebInspector.ContextMenu):
(WebInspector.ContextMenu.prototype.nextId):
(WebInspector.ContextMenu.prototype.show):
(WebInspector.ContextMenu.prototype._setHandler):
(WebInspector.ContextMenu.prototype._buildDescriptor):

  • inspector/front-end/SoftContextMenu.js:

(.WebInspector.SoftContextMenu): Support sub-menus.
(.WebInspector.SoftContextMenu.prototype.show):
(.WebInspector.SoftContextMenu.prototype._parentGlassPaneElement):
(.WebInspector.SoftContextMenu.prototype._createMenuItem):
(.WebInspector.SoftContextMenu.prototype._createSubMenu):
(.WebInspector.SoftContextMenu.prototype._createSeparator):
(.WebInspector.SoftContextMenu.prototype._menuItemMouseUp):
(.WebInspector.SoftContextMenu.prototype._focus):
(.WebInspector.SoftContextMenu.prototype._triggerAction):
(.WebInspector.SoftContextMenu.prototype._showSubMenu):
(.WebInspector.SoftContextMenu.prototype._buildMouseEventForSubMenu):
(.WebInspector.SoftContextMenu.prototype._hideSubMenu):
(.WebInspector.SoftContextMenu.prototype._menuItemMouseOut):
(.WebInspector.SoftContextMenu.prototype._highlightMenuItem):
(.WebInspector.SoftContextMenu.prototype._menuKeyDown):
(.WebInspector.SoftContextMenu.prototype._glassPaneMouseUp):
(.WebInspector.SoftContextMenu.prototype._discardMenu):
(.WebInspector.SoftContextMenu.prototype._discardSubMenus):

  • inspector/front-end/inspector.css: Support for sub-menus, separator improvement.

(.soft-context-menu-separator):
(.soft-context-menu-separator > .separator-line):
(.soft-context-menu-item-submenu-arrow):

  • platform/chromium/ContextMenuChromium.cpp:

(WebCore::contextMenuItemVector): Implemented.
(WebCore):

07:54 Changeset [118373] by peter@chromium.org
  • 2 edits in trunk/Tools

Add John Mellor as a contributor
https://bugs.webkit.org/show_bug.cgi?id=87389

Reviewed by Kenneth Rohde Christiansen.

John will be working on Font Boosting and is very involved with various
web-facing subjects of Chrome for Android, such as viewport.

  • Scripts/webkitpy/common/config/committers.py:
07:53 Changeset [118372] by ossy@webkit.org
  • 3 edits in trunk/LayoutTests

Unreviewed, rolling out r118256.
http://trac.webkit.org/changeset/118256
https://bugs.webkit.org/show_bug.cgi?id=87388

It still fails on Qt5-WK2 (Requested by Ossy on #webkit).

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

  • platform/qt-5.0-wk1/Skipped:
  • platform/qt-5.0/Skipped:
07:50 Changeset [118371] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Breakpoints Pane should not show context menu with no breakpoints
https://bugs.webkit.org/show_bug.cgi?id=87340

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-05-24
Reviewed by Pavel Feldman.

Removed the method _contextMenu as this would be redundant call
because _breakpointContextMenu would take care of showing the remove
all breakpoints option.

  • inspector/front-end/BreakpointsSidebarPane.js:

(WebInspector.JavaScriptBreakpointsSidebarPane):
(WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointContextMenu):

07:43 Changeset [118370] by commit-queue@webkit.org
  • 2 edits
    72 adds in trunk/LayoutTests

[EFL] [DRT] Add baselines for execCommand tests which are missing expected results
https://bugs.webkit.org/show_bug.cgi?id=84839

Unreviewed gardening, add EFL baselines for execCommand tests and move a
few tests which rely on copy & paste functionality to test_expectations.txt.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-05-24

  • platform/efl/editing/execCommand/4580583-1-expected.png: Added.
  • platform/efl/editing/execCommand/4580583-1-expected.txt: Added.
  • platform/efl/editing/execCommand/4580583-2-expected.png: Added.
  • platform/efl/editing/execCommand/4580583-2-expected.txt: Added.
  • platform/efl/editing/execCommand/4641880-1-expected.png: Added.
  • platform/efl/editing/execCommand/4641880-1-expected.txt: Added.
  • platform/efl/editing/execCommand/4641880-2-expected.png: Added.
  • platform/efl/editing/execCommand/4641880-2-expected.txt: Added.
  • platform/efl/editing/execCommand/4747450-expected.png: Added.
  • platform/efl/editing/execCommand/4747450-expected.txt: Added.
  • platform/efl/editing/execCommand/4916402-expected.png: Added.
  • platform/efl/editing/execCommand/4916402-expected.txt: Added.
  • platform/efl/editing/execCommand/4916541-expected.png: Added.
  • platform/efl/editing/execCommand/4916541-expected.txt: Added.
  • platform/efl/editing/execCommand/4924441-expected.png: Added.
  • platform/efl/editing/execCommand/4924441-expected.txt: Added.
  • platform/efl/editing/execCommand/5080333-1-expected.png: Added.
  • platform/efl/editing/execCommand/5080333-1-expected.txt: Added.
  • platform/efl/editing/execCommand/5080333-2-expected.png: Added.
  • platform/efl/editing/execCommand/5080333-2-expected.txt: Added.
  • platform/efl/editing/execCommand/5136770-expected.png: Added.
  • platform/efl/editing/execCommand/5136770-expected.txt: Added.
  • platform/efl/editing/execCommand/5138441-expected.png: Added.
  • platform/efl/editing/execCommand/5138441-expected.txt: Added.
  • platform/efl/editing/execCommand/5142012-1-expected.png: Added.
  • platform/efl/editing/execCommand/5142012-1-expected.txt: Added.
  • platform/efl/editing/execCommand/5142012-2-expected.png: Added.
  • platform/efl/editing/execCommand/5142012-2-expected.txt: Added.
  • platform/efl/editing/execCommand/5190926-expected.png: Added.
  • platform/efl/editing/execCommand/5190926-expected.txt: Added.
  • platform/efl/editing/execCommand/5481523-expected.png: Added.
  • platform/efl/editing/execCommand/5481523-expected.txt: Added.
  • platform/efl/editing/execCommand/5482023-expected.png: Added.
  • platform/efl/editing/execCommand/5482023-expected.txt: Added.
  • platform/efl/editing/execCommand/5569741-expected.png: Added.
  • platform/efl/editing/execCommand/5569741-expected.txt: Added.
  • platform/efl/editing/execCommand/create-list-with-hr-expected.png: Added.
  • platform/efl/editing/execCommand/create-list-with-hr-expected.txt: Added.
  • platform/efl/editing/execCommand/findString-2-expected.png: Added.
  • platform/efl/editing/execCommand/findString-2-expected.txt: Added.
  • platform/efl/editing/execCommand/findString-expected.png: Added.
  • platform/efl/editing/execCommand/findString-expected.txt: Added.
  • platform/efl/editing/execCommand/format-block-with-trailing-br-expected.png: Added.
  • platform/efl/editing/execCommand/indent-empty-root-expected.png: Added.
  • platform/efl/editing/execCommand/indent-empty-root-expected.txt: Added.
  • platform/efl/editing/execCommand/indent-list-item-expected.png: Added.
  • platform/efl/editing/execCommand/indent-list-item-expected.txt: Added.
  • platform/efl/editing/execCommand/indent-selection-expected.png: Added.
  • platform/efl/editing/execCommand/indent-selection-expected.txt: Added.
  • platform/efl/editing/execCommand/insert-list-and-stitch-expected.png: Added.
  • platform/efl/editing/execCommand/insert-list-and-stitch-expected.txt: Added.
  • platform/efl/editing/execCommand/insertHorizontalRule-expected.png: Added.
  • platform/efl/editing/execCommand/insertHorizontalRule-expected.txt: Added.
  • platform/efl/editing/execCommand/insertImage-expected.png: Added.
  • platform/efl/editing/execCommand/insertImage-expected.txt: Added.
  • platform/efl/editing/execCommand/nsresponder-indent-expected.png: Added.
  • platform/efl/editing/execCommand/nsresponder-indent-expected.txt: Added.
  • platform/efl/editing/execCommand/nsresponder-outdent-expected.png: Added.
  • platform/efl/editing/execCommand/nsresponder-outdent-expected.txt: Added.
  • platform/efl/editing/execCommand/outdent-blockquote-test1-expected.txt: Added.
  • platform/efl/editing/execCommand/outdent-blockquote-test2-expected.txt: Added.
  • platform/efl/editing/execCommand/outdent-blockquote-test3-expected.txt: Added.
  • platform/efl/editing/execCommand/outdent-blockquote-test4-expected.txt: Added.
  • platform/efl/editing/execCommand/print-expected.png: Added.
  • platform/efl/editing/execCommand/print-expected.txt: Added.
  • platform/efl/editing/execCommand/remove-list-from-range-selection-expected.png: Added.
  • platform/efl/editing/execCommand/remove-list-from-range-selection-expected.txt: Added.
  • platform/efl/editing/execCommand/remove-list-item-1-expected.png: Added.
  • platform/efl/editing/execCommand/remove-list-item-1-expected.txt: Added.
  • platform/efl/editing/execCommand/selectAll-expected.png: Added.
  • platform/efl/editing/execCommand/selectAll-expected.txt: Added.
  • platform/efl/test_expectations.txt:
07:41 Changeset [118369] by mifenton@rim.com
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove unused API function touchEventCancelAndClearFocusedNode.
https://bugs.webkit.org/show_bug.cgi?id=87379

Reviewed by Antonio Gomes.

Remove unused API, touchEventCancelAndClearFocusedNode.

Reviewed Internally by Gen Mak.

  • Api/WebPage.cpp:
  • Api/WebPage.h:
  • WebKitSupport/TouchEventHandler.cpp:
  • WebKitSupport/TouchEventHandler.h:

(TouchEventHandler):

07:38 Changeset [118368] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Chromium Mac build fix after r118357.
Use full name specifier instead of "using" directive.

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::jsHeapInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

07:35 Changeset [118367] by pfeldman@chromium.org
  • 22 edits
    2 adds in trunk

Web Inspector: introduce virtual resource for inspector stylesheet.
https://bugs.webkit.org/show_bug.cgi?id=87357

Reviewed by Vsevolod Vlasov.

Source/WebCore:

This change introduces virtual resource that represents inspector stylesheet (that is added for styles added via inspector).
New resource has url of form "inspector://<page url folder>/inspector-stylesheet. It enables live editing and revision
history of the inspector stylesheet.

Test: inspector/styles/edit-inspector-stylesheet.html

  • inspector/Inspector.json:
  • inspector/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::asInspectorStyleSheet):
(WebCore::InspectorCSSAgent::bindStyleSheet):
(WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
(WebCore::InspectorCSSAgent::detectOrigin):

  • inspector/InspectorCSSAgent.h:

(InspectorCSSAgent):

  • inspector/InspectorDOMAgent.h:

(InspectorDOMAgent):
(WebCore::InspectorDOMAgent::pageAgent):

  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::create):
(WebCore::InspectorStyleSheet::InspectorStyleSheet):
(WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
(WebCore::InspectorStyleSheet::buildObjectForRule):
(WebCore::InspectorStyleSheet::resourceStyleSheetText):
(WebCore::InspectorStyleSheetForInlineStyle::create):
(WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle):

  • inspector/InspectorStyleSheet.h:

(WebCore):
(InspectorStyleSheet):
(WebCore::InspectorStyleSheet::canBind):
(InspectorStyleSheetForInlineStyle):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel):
(WebInspector.CSSStyleModel.prototype._undoRedoCompleted):
(WebInspector.CSSStyleModel.prototype.getViaInspectorResourceForRule):
(WebInspector.CSSStyleModelResourceBinding):
(WebInspector.CSSStyleModelResourceBinding.prototype.setContent):
(WebInspector.CSSStyleModelResourceBinding.prototype._inspectedURLChanged):
(WebInspector.CSSStyleModelResourceBinding.prototype._loadStyleSheetHeaders):
(WebInspector.CSSStyleModelResourceBinding.prototype._innerStyleSheetChanged):
(WebInspector.CSSStyleModelResourceBinding.prototype._getViaInspectorResource.hadersLoaded):
(WebInspector.CSSStyleModelResourceBinding.prototype._getViaInspectorResource):
(WebInspector.CSSStyleModelResourceBinding.prototype._viaInspectorResource.overrideRequestContent.callbackWrapper):
(WebInspector.CSSStyleModelResourceBinding.prototype._viaInspectorResource.overrideRequestContent):
(WebInspector.CSSStyleModelResourceBinding.prototype._viaInspectorResource):
(WebInspector.CSSStyleModelResourceBinding.prototype._viaInspectorResourceURL):

  • inspector/front-end/Resource.js:

(WebInspector.Resource):
(WebInspector.Resource.prototype.isHidden):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._onRequestUpdateDropped):
(WebInspector.ResourceTreeModel.prototype._addFramesRecursively):
(WebInspector.ResourceTreeFrame.prototype._navigate):
(WebInspector.ResourceTreeFrame.prototype.addResource):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameTreeElement.prototype.appendResource):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._createSourceFrame):

  • inspector/front-end/StylesPanel.js:

(WebInspector.InspectorStyleSource):

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection.prototype._createRuleOriginNode.callback):
(WebInspector.StylePropertiesSection.prototype._createRuleOriginNode):
(WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted.successCallback):
(WebInspector.BlankStylePropertiesSection.prototype.editingSelectorCommitted):

LayoutTests:

  • inspector/styles/edit-inspector-stylesheet-expected.txt: Added.
  • inspector/styles/edit-inspector-stylesheet.html: Added.
  • inspector/styles/styles-add-new-rule-expected.txt:
  • inspector/styles/styles-add-new-rule.html:
  • inspector/styles/undo-add-new-rule-expected.txt:
07:21 Changeset [118366] by commit-queue@webkit.org
  • 8 edits in trunk

[EFL][DRT] LayoutTestController's setCacheModel() implementation
https://bugs.webkit.org/show_bug.cgi?id=86840

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-24
Reviewed by Csaba Osztrogonác.

Source/WebKit/efl:

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::setDeadDecodedDataDeletionInterval): Aux wrapper function for DRT.

  • WebCoreSupport/DumpRenderTreeSupportEfl.h:

Tools:

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::resetDefaultsToConsistentValues): Reset dead decoded data deletion interval.

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::setCacheModel): Implementation added.

LayoutTests:

  • platform/efl/Skipped: Unskipped fast/dom/HTMLScriptElement/nested-execution.html.
07:20 Changeset [118365] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Possible deadlock in the WebGL code path
https://bugs.webkit.org/show_bug.cgi?id=87375

Patch by Robin Cao <robin.cao@torchmobile.com.cn> on 2012-05-24
Reviewed by Rob Buis.

Fix a deadlock happening in the WebGL code path. The mutex is locked
but is not unlocked afterword. Also fix a possible double delete,
the mutex m_frontBufferLock will be destroyed in the base class.

Covered by tests in fast/canvas/webgl.

  • platform/graphics/blackberry/LayerCompositingThread.cpp:

(WebCore::LayerCompositingThread::releaseTextureResources):

  • platform/graphics/blackberry/WebGLLayerWebKitThread.cpp:

(WebCore::WebGLLayerWebKitThread::~WebGLLayerWebKitThread):

07:13 Changeset [118364] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[chromium] Forcibly sync running animations in the waiting state when synchronized start times are needed.
https://bugs.webkit.org/show_bug.cgi?id=87153

Patch by Ian Vollick <vollick@chromium.org> on 2012-05-24
Reviewed by James Robinson.

Source/WebCore:

Unit test: CCLayerAnimationControllerTest.ForceSyncWhenSynchronizedStartTimeNeeded

  • platform/graphics/chromium/cc/CCLayerAnimationController.cpp:

(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):

Source/WebKit/chromium:

  • tests/CCLayerAnimationControllerTest.cpp:

(WebKitTests::TEST):
(WebKitTests):

07:03 Changeset [118363] by kareng@chromium.org
  • 1 edit
    2 copies in branches/chromium/1132

Merge 117102 - MediaStream API: Setting onended on a LocalMediaStream triggers an assertion in V8
https://bugs.webkit.org/show_bug.cgi?id=86459

Reviewed by Adam Barth.

Source/WebCore:

LocalMediaStream inherits from MediaStream, but only MediaStream have the
EventTarget idl attribute. Adding the attribute to LocalMediaStream as well fixes the issue.

Test: fast/mediastream/LocalMediaStream-onended.html

  • Modules/mediastream/LocalMediaStream.idl:

LayoutTests:

  • fast/mediastream/LocalMediaStream-onended-expected.txt: Added.
  • fast/mediastream/LocalMediaStream-onended.html: Added.

TBR=tommyw@google.com
Review URL: https://chromiumcodereview.appspot.com/10454008

07:03 WebKitGTK/1.8.x edited by kov@webkit.org
(diff)
06:56 Changeset [118362] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed. Update platform specific expectation after r118353

  • platform/qt/fast/js/global-constructors-expected.txt:
06:39 Changeset [118361] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: convert HeapSnapshotGridNode._provider into getter.
https://bugs.webkit.org/show_bug.cgi?id=87382

I found that we create a provider for child nodes for the each DataGrid node in advance.
It cost us one async call to the HeapSnapshot's worker per each such the node.
I converted the property into the getter which is initializing the provider lazily.

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:
  • inspector/front-end/HeapSnapshotGridNodes.js:

(WebInspector.HeapSnapshotGridNode):
(WebInspector.HeapSnapshotGridNode.prototype.createProvider):
(WebInspector.HeapSnapshotGridNode.prototype._provider):
(WebInspector.HeapSnapshotGridNode.prototype.dispose):
(WebInspector.HeapSnapshotGridNode.prototype._populate):
(WebInspector.HeapSnapshotGridNode.prototype.expandWithoutPopulate):
(WebInspector.HeapSnapshotGridNode.prototype._populateChildren.serializeNextChunk):
(WebInspector.HeapSnapshotGridNode.prototype.sort):
(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.updateHasChildren):
(WebInspector.HeapSnapshotObjectNode):
(WebInspector.HeapSnapshotInstanceNode):
(WebInspector.HeapSnapshotConstructorNode):
(WebInspector.HeapSnapshotConstructorNode.prototype.createProvider):
(WebInspector.HeapSnapshotConstructorNode.prototype.revealNodeBySnapshotObjectId):
(WebInspector.HeapSnapshotDiffNode):
(WebInspector.HeapSnapshotDiffNode.prototype.createProvider):
(WebInspector.HeapSnapshotDominatorObjectNode):
(WebInspector.HeapSnapshotDominatorObjectNode.prototype.createProvider):
(WebInspector.HeapSnapshotDominatorObjectNode.prototype.retrieveChildBySnapshotObjectId):

06:32 Changeset [118360] by kkristof@inf.u-szeged.hu
  • 1 edit
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening. Add platform specific expectation.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-05-24

  • platform/qt-5.0-wk2/fast/forms/search-rtl-expected.txt: Added after r117672.
06:25 Changeset [118359] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] r118325 made two inspector tests to fail
https://bugs.webkit.org/show_bug.cgi?id=87385

Unreviewed gardening.

  • platform/qt/Skipped: skip the failing tests
06:19 Changeset [118358] by commit-queue@webkit.org
  • 4 edits in trunk

Filter for RadioNodeList should be case sensitive.
https://bugs.webkit.org/show_bug.cgi?id=87369

Patch by Rakesh KN <rakesh.kn@motorola.com> on 2012-05-24
Reviewed by Kent Tamura.

Source/WebCore:

Element's id/name attribute matching criteria is case sensitive now.

Modified existing test.

  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::nodeMatches):
Element matching criteria is case sensitive.

LayoutTests:

  • fast/forms/form-collection-radio-node-list.html:
06:01 Changeset [118357] by yurys@chromium.org
  • 9 edits in trunk/Source

Web Inspector: add a command to InspectorMemoryAgent for getting process memory break down
https://bugs.webkit.org/show_bug.cgi?id=87263

Reviewed by Pavel Feldman.

Source/WebCore:

Introduced new protocol command Memory.getProcessMemoryDistribution which returns
memory distribution for the inspected process. Currently only JS allocated and used
heap size is included.

  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::jsHeapInfo):
(WebCore):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

Source/WebKit/chromium:

Added an API for retrieving render process private and shared memory in bytes.

  • public/platform/WebKitPlatformSupport.h:

(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::getProcessMemorySize):

  • src/PlatformSupport.cpp:

(WebCore::PlatformSupport::getProcessMemorySize):
(WebCore):

06:00 Changeset [118356] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

new test fast/js/dfg-arguments-mixed-alias.html fail on 32 bit linux
https://bugs.webkit.org/show_bug.cgi?id=87378

Unreviewed gardening.

  • platform/qt/Skipped: skip the failing test
05:49 Changeset [118355] by ahf@0x90.dk
  • 2 edits in trunk/Source/WebKit2

Reorder arguments to compare() in the QML WebView tests
https://bugs.webkit.org/show_bug.cgi?id=87374

Reviewed by Simon Hausmann.

Based on patch by Kenneth Rohde Christiansen.

The reordering is necessary to get correct information printed when
the tests fails. Without this, the test suite will display the bogus
value and not the expected value.

This patch also removes the delayed windowShown since this is not
needed anymore, due to us using the touch events instead of mouse
events.

  • UIProcess/API/qt/tests/qmltests/WebView/tst_doubleTapToZoom.qml:
05:49 Changeset [118354] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/qt

https://bugs.webkit.org/show_bug.cgi?id=67093
[Qt] Default window.alert shows HTML entities in certain cases

Instead of HTML escaping the text of JS alerts (which does not work
consistently because of Qt's automatisms), build message boxes
explicitly to be able set the text format to plain text.
QInputDialog is a bit hacky, because there is no way to access or
control the contained QLabel.

Patch by Steffen Imhof <steffen.imhof@basyskom.com> on 2012-05-24
Reviewed by Simon Hausmann.

  • Api/qwebpage.cpp:

(QWebPage::javaScriptAlert):
(QWebPage::javaScriptConfirm):
(QWebPage::javaScriptPrompt):

05:21 Changeset [118353] by zimmermann@webkit.org
  • 36 edits in trunk

SVGZoomAndPan constants are missing from window object
https://bugs.webkit.org/show_bug.cgi?id=15494

Reviewed by Rob Buis.

Source/WebCore:

Generate the SVGZoomAndPanConstructor, so that the constants defined in the IDL
can be reached from the bindings. Provide a stub-implementation of ref/deref
that's never used, as we don't actually use JSSVGZoomAndPan which needs this, but
only the JSSVGZoomAndPanConstructor.

Add a new IDL flag "SuppressToJSObject" which disables generation of toJS/toV8
methods for classes that are only used in SVGs interfaces via multiple inheritance.
This affects: SVGFitToViewBox, SVGTests, SVGLangSapce, SVGExternalResourcesRequired, etc.

Unlike those classes SVGZoomAndPan defines constants, and thus needs a generated Constructor.
That requires us to build JSSVGZoomAndPan.* (JSSVGFitToViewBox/etc. is generated, but not built!).
Unfortunately this causes compilation problems on Windows, as it builds all sources in a single-file.
MSVC can't decide whether it should call toJS(Node*) or toJS(SVGZoomAndPan*) for a SVGSVGElement.
To avoid these problems stop generating toJS/toV8 completely for all SVG MI types. They were
never used before, so there's no point in actually generating them, as it's now causing problems.

This is a preparation towards bug 15495, which covers implementing
SVGSVGElement.currentView and the SVGViewSpec interface.

No new tests. The SVGZoomAndPan constructor is covered by existing tests, now that its enabled.

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/scripts/CodeGeneratorJS.pm:

(ShouldGenerateToJSDeclaration):
(ShouldGenerateToJSImplementation):
(GenerateHeader):
(GenerateImplementation):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

  • bindings/scripts/IDLAttributes.txt:
  • gyp/WebCore.gyp:
  • page/DOMWindow.idl:
  • svg/SVGDocument.cpp:

(WebCore::SVGDocument::zoomAndPanEnabled):

  • svg/SVGExternalResourcesRequired.idl:
  • svg/SVGFitToViewBox.idl:
  • svg/SVGLangSpace.idl:
  • svg/SVGLocatable.idl:
  • svg/SVGRenderingIntent.idl:
  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::SVGSVGElement):
(WebCore::SVGSVGElement::parseAttribute):
(WebCore::SVGSVGElement::viewBoxToViewTransform):
(WebCore::SVGSVGElement::setupInitialView):
(WebCore::SVGSVGElement::inheritViewAttributes):

  • svg/SVGSVGElement.h:

(SVGSVGElement):
(WebCore::SVGSVGElement::useCurrentView):
(WebCore::SVGSVGElement::setUseCurrentView):
(WebCore::SVGSVGElement::zoomAndPan):
(WebCore::SVGSVGElement::setZoomAndPan):

  • svg/SVGStylable.idl:
  • svg/SVGTests.idl:
  • svg/SVGURIReference.idl:
  • svg/SVGUnitTypes.idl:
  • svg/SVGViewElement.cpp:

(WebCore::SVGViewElement::SVGViewElement):
(WebCore::SVGViewElement::parseAttribute):

  • svg/SVGViewElement.h:

(SVGViewElement):
(WebCore::SVGViewElement::zoomAndPan):
(WebCore::SVGViewElement::setZoomAndPan):

  • svg/SVGViewSpec.cpp:

(WebCore::SVGViewSpec::SVGViewSpec):
(WebCore::SVGViewSpec::setTransformString):
(WebCore::SVGViewSpec::parseViewSpec):

  • svg/SVGViewSpec.h:

(SVGViewSpec):
(WebCore::SVGViewSpec::transformBaseValue):
(WebCore::SVGViewSpec::zoomAndPan):
(WebCore::SVGViewSpec::setZoomAndPanBaseValue):

  • svg/SVGZoomAndPan.cpp:

(WebCore::SVGZoomAndPan::isKnownAttribute):
(WebCore::SVGZoomAndPan::addSupportedAttributes):
(WebCore):
(WebCore::SVGZoomAndPan::parseZoomAndPan):
(WebCore::SVGZoomAndPan::ref):
(WebCore::SVGZoomAndPan::deref):
(WebCore::SVGZoomAndPan::setZoomAndPan):

  • svg/SVGZoomAndPan.h:

(SVGZoomAndPan):
(WebCore::SVGZoomAndPan::parseFromNumber):
(WebCore::SVGZoomAndPan::parseAttribute):
(WebCore::SVGZoomAndPan::zoomAndPan):

  • svg/SVGZoomAndPan.idl:

LayoutTests:

SVGZoomAndPan is now available as global constructor, rebaseline results.

  • svg/custom/global-constructors-expected.txt:
  • svg/custom/js-svg-constructors-expected.txt:
  • svg/custom/js-svg-constructors.svg:
05:04 Changeset [118352] by hbono@chromium.org
  • 11 edits
    1 copy
    5 adds in trunk

Enable grammar checking on Chromium when we paste text.
https://bugs.webkit.org/show_bug.cgi?id=74393

Reviewed by Hajime Morita.

This change enables grammar checking on Chromium and implements a mock grammar
checker to fix a failing test.

Source/WebCore:

Test: editing/spelling/grammar-markers.html

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForDocumentMarker): render grammar markers in gray on Windows and Linux or in green on Mac.

Source/WebKit/chromium:

  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems): Show suggestions when we right-click grammatically-misspelled words.

  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::isGrammarCheckingEnabled): Enable grammar checking when we enable asynchronous spellchecking.

  • src/WebTextCheckingResult.cpp:

(WebKit::WebTextCheckingResult::operator TextCheckingResult): Fill GrammarDetails for grammatical errors.

Tools:

  • DumpRenderTree/DumpRenderTree.gypi:
  • DumpRenderTree/chromium/MockGrammarCheck.cpp: Added.

(MockGrammarCheck::checkGrammarOfString):

  • DumpRenderTree/chromium/MockGrammarCheck.h: Added.

(WebKit):
(MockGrammarCheck):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::finishLastTextCheck): Call MockGrammarCheck::checkGrammarOfString to check grammatical errors.

LayoutTests:

  • editing/spelling/grammar-markers-expected.txt: Added.
  • editing/spelling/grammar-markers.html: Added.
  • platform/chromium-linux/editing/spelling/grammar-markers-expected.png: Added.
  • platform/chromium/test_expectations.txt:
  • platform/mac/editing/spelling/grammar-markers-expected.png: Added.
04:44 Changeset [118351] by caseq@chromium.org
  • 9 edits in trunk

Web Inspector: add inspector instrumentation interface for compositing
https://bugs.webkit.org/show_bug.cgi?id=83842

Reviewed by Pavel Feldman.

Source/WebCore:

  • added instrumentation methods to mark start/end of layer compositing;
  • added associated timeline record type (CompositeLayers);
  • plumbed the calls from instrumentation up to the timeline panel;
  • actual call-sites are platform-specific and will come as separate patches.
  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::willCompositeImpl):
(WebCore):
(WebCore::InspectorInstrumentation::didCompositeImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::willComposite):
(WebCore):
(WebCore::InspectorInstrumentation::didComposite):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineRecordType):
(WebCore::InspectorTimelineAgent::willComposite):
(WebCore):
(WebCore::InspectorTimelineAgent::didComposite):

  • inspector/InspectorTimelineAgent.h:

(InspectorTimelineAgent):

  • inspector/front-end/TimelineModel.js:
  • inspector/front-end/TimelinePresentationModel.js:

(WebInspector.TimelinePresentationModel.recordStyle):

LayoutTests:

  • inspector/timeline/timeline-enum-stability-expected.txt: added CompositeLayers.
04:33 Changeset [118350] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed Web Inspector: remove obsolete isDetailedSnapshot method from HeapSnapshotView.

  • inspector/front-end/HeapSnapshotView.js:
04:28 Changeset [118349] by pfeldman@chromium.org
  • 15 edits
    2 adds in trunk

Web Inspector: localStorage items are not updated when the storage changes
https://bugs.webkit.org/show_bug.cgi?id=83012

Patch by Vivek Galatage <vivekgalatage@gmail.com> on 2012-05-24
Reviewed by Pavel Feldman.

Source/WebCore:

Renamed the inspector protocol UpdateDOMStorage to domStorageUpdated.
Instrumented StorageEventDispatcher to send the update event to the
front-end. Also removed the way DOM Storage Agent used to listen for
the storage events. Added new test to verify the update notifications.

Test: inspector/storage-panel-dom-storage-update.html

  • dom/EventListener.h:
  • inspector/Inspector.json:
  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore):
(WebCore::InspectorDOMStorageAgent::getDOMStorageEntries):
(WebCore::InspectorDOMStorageAgent::storageId):
(WebCore::InspectorDOMStorageAgent::didUseDOMStorage):
(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):

  • inspector/InspectorDOMStorageAgent.h:

(InspectorDOMStorageAgent):

  • inspector/InspectorDOMStorageResource.cpp:

(WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource):
(WebCore::InspectorDOMStorageResource::isSameHostAndType):
(WebCore::InspectorDOMStorageResource::unbind):

  • inspector/InspectorDOMStorageResource.h:

(WebCore):
(InspectorDOMStorageResource):
(WebCore::InspectorDOMStorageResource::create):
(WebCore::InspectorDOMStorageResource::id):
(WebCore::InspectorDOMStorageResource::storageArea):
(WebCore::InspectorDOMStorageResource::frame):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::didDispatchDOMStorageEventImpl):
(WebCore):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):
(WebCore::InspectorInstrumentation::didUseDOMStorage):
(WebCore):
(WebCore::InspectorInstrumentation::didDispatchDOMStorageEvent):

  • inspector/front-end/DOMStorage.js:

(WebInspector.DOMStorageDispatcher.prototype.domStorageUpdated):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.ResourcesPanel.prototype.domStorageUpdated):

  • storage/StorageEventDispatcher.cpp:

(WebCore::StorageEventDispatcher::dispatch):

Source/WebKit/chromium:

Instrumented the DOM Storage Events in order to update the frontend.

  • src/StorageAreaProxy.cpp:

(WebCore::StorageAreaProxy::dispatchLocalStorageEvent):
(WebCore::StorageAreaProxy::dispatchSessionStorageEvent):

LayoutTests:

Test to verify the storage list is updated in the inspector frontend
whenever there is any modifications to dom storage.

  • inspector/storage-panel-dom-storage-update-expected.txt: Added.
  • inspector/storage-panel-dom-storage-update.html: Added.
04:27 Changeset [118348] by loislo@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: introduce console proxy object for HeapSnapshot worker.
https://bugs.webkit.org/show_bug.cgi?id=87346

There is no console object in html5 workers at the moment.
This makes me sad when I'm troubleshooting the HeapSnapshot stuff.
I wrote a simplest proxy object which sends the log, info and error messages
to the WebInspector window.

Reviewed by Pavel Feldman.

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotRealWorker.prototype._messageReceived):

  • inspector/front-end/HeapSnapshotWorker.js:

(WebInspector.WorkerConsole):
(WebInspector.WorkerConsole.prototype.log):
(WebInspector.WorkerConsole.prototype.error):
(WebInspector.WorkerConsole.prototype.info):
(WebInspector.WorkerConsole.prototype._postMessage):

04:17 Changeset [118347] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] REGRESSION(r118291) fast/frames/flattening/iframe-tiny.html fails
https://bugs.webkit.org/show_bug.cgi?id=87363

Unreviewed gardening.

  • platform/qt/Skipped: skip the failing test
04:03 Changeset [118346] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] new test fast/block/positioning/fixed-position-stacking-context.html is failing
https://bugs.webkit.org/show_bug.cgi?id=87367

Unreviewed gardening.

  • platform/qt/Skipped: skip the failing test
03:52 Changeset [118345] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip tests because ENABLE(SHADOW_DOM) is disabled.

Patch by Ádám Kallai <kadam@inf.u-szeged.hu> on 2012-05-24

  • platform/qt/Skipped:
03:50 Changeset [118344] by commit-queue@webkit.org
  • 7 edits in trunk/Source

cti_vm_throw gets kicked out by gcc 4.6 -flto
https://bugs.webkit.org/show_bug.cgi?id=56088

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-05-24
Reviewed by Darin Adler.

Source/JavaScriptCore:

Add REFERENCED_FROM_ASM to functions only referenced from assembler.

  • dfg/DFGOperations.cpp:
  • jit/HostCallReturnValue.h:
  • jit/JITStubs.h:
  • jit/ThunkGenerators.cpp:

Source/WTF:

Define REFERENCED_FROM_ASM to attribute((used)) on GCC.

  • wtf/Compiler.h:
03:30 Changeset [118343] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Several canvas/philip test cases can be unskipped
https://bugs.webkit.org/show_bug.cgi?id=87362

Unreviewed EFL gardening. Unskip several canvas/philip that are now
passing.

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-24

  • platform/efl/Skipped:
  • platform/efl/test_expectations.txt:
03:18 Changeset [118342] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt] Tiles not painted after wheel or keyboard scroll.
https://bugs.webkit.org/show_bug.cgi?id=87358

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

After performing a scroll requested from the WebProcess we also need
to inform the painting layer of the viewport change.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::pagePositionRequest):

03:15 Changeset [118341] by abecsi@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Fix bounce-back animation on pinch->pan
https://bugs.webkit.org/show_bug.cgi?id=87266

Reviewed by Kenneth Rohde Christiansen.

If ending an out-of-bounds pinch gesture with releasing one finger
(transition to a pan gesture) the bounce back animation blinks in
the end position immediately first, then animates the content back
into bounds.

QtViewportInteractionEngine::cancelScrollAnimation should return
early if there is no active kinetic animation.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::cancelScrollAnimation):

03:01 Changeset [118340] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating chromium test expectations.

  • platform/chromium/test_expectations.txt:
02:31 QtWebKitBugs edited by ossy@webkit.org
Add meta bugs (diff)
02:21 Changeset [118339] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][DRT] compositing/repaint/opacity-between-absolute.html does not pass
https://bugs.webkit.org/show_bug.cgi?id=87353

Unreviewed. Gardening of compositing/repaint/opacity-between-absolute.html test.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-05-24

  • platform/efl/compositing/repaint/opacity-between-absolute-expected.txt:
02:17 Changeset [118338] by shinyak@chromium.org
  • 3 edits
    2 adds in trunk

Elements in Shadow DOM are not resizable.
https://bugs.webkit.org/show_bug.cgi?id=87342

Reviewed by Ryosuke Niwa.

Source/WebCore:

In RenderLayer::resize(), shadowAncestorNode() was used but if the ancestor node is used,
it is not possible to resize elements in Shadow DOM.

The comments said it is necessary for textarea, however actually it is not necessary now.
Existing test (fast/css/resize-corner-tracking) covers it.

Test: fast/dom/shadow/resize-in-shadow-dom.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::resize):

LayoutTests:

  • fast/dom/shadow/resize-in-shadow-dom-expected.txt: Added.
  • fast/dom/shadow/resize-in-shadow-dom.html: Added.
02:13 Changeset [118337] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, skipping failing tests on chromium.

  • platform/chromium/test_expectations.txt:
01:54 Changeset [118336] by antti@apple.com
  • 27 edits
    2 copies in trunk/Source

Move StyleSheetContents to a separate file
https://bugs.webkit.org/show_bug.cgi?id=87354

Reviewed by Eric Seidel.

Move StyleSheetContents class to StyleSheetContents.h/cpp.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSFontFaceSrcValue.cpp:
  • css/CSSGrammar.y:
  • css/CSSImportRule.cpp:
  • css/CSSParser.cpp:
  • css/CSSPrimitiveValue.cpp:
  • css/CSSRule.cpp:
  • css/CSSStyleSheet.cpp:

(WebCore::CSSStyleSheet::create):
(WebCore::CSSStyleSheet::href):
(WebCore):
(WebCore::CSSStyleSheet::baseURL):
(WebCore::CSSStyleSheet::isLoading):

  • css/CSSStyleSheet.h:

(WebCore):
(CSSStyleSheet):

  • css/StylePropertySet.cpp:
  • css/StyleResolver.cpp:
  • css/StyleSheetContents.cpp: Copied from css/CSSStyleSheet.cpp.

(WebCore):

  • css/StyleSheetContents.h: Copied from css/CSSStyleSheet.h.

(WebCore):

  • dom/DOMImplementation.cpp:

(WebCore::XMLMIMETypeRegExp::XMLMIMETypeRegExp):

  • dom/Document.cpp:
  • dom/ProcessingInstruction.cpp:
  • dom/StyleElement.cpp:
  • html/HTMLLinkElement.cpp:
  • html/HTMLStyleElement.cpp:
  • inspector/InspectorStyleSheet.cpp:
  • loader/cache/CachedCSSStyleSheet.cpp:
  • page/PageSerializer.cpp:
01:14 Changeset [118335] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/Source/WebCore

[Qt] Buildfix for the minimal build because the r118197 broke it.
https://bugs.webkit.org/show_bug.cgi?id=87096

Reviewed by Csaba Osztrogonác.

  • plugins/PluginData.cpp:

(WebCore):
(WebCore::PluginData::refresh):
(WebCore::PluginData::initPlugins):

00:44 Changeset [118334] by slewis@apple.com
  • 2 edits in trunk/LayoutTests

See https://bugs.webkit.org/show_bug.cgi?id=87347

Unreviewed, skipping newly flaky test.

  • platform/mac/Skipped:
00:35 Changeset [118333] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Incorrect merge of r117542 from dfg opt branch in r118323 is leading to fast/js/dfg-arguments-osr-exit.html failing
https://bugs.webkit.org/show_bug.cgi?id=87350

Reviewed by Maciej Stachowiak.

The dfgopt branch introduced the notion of a local variable being killed because it was aliased
to the Arguments object as in cases like:

var a = arguments;
return a.length;

This required changes to OSR exit handling - if the variable is dead but aliased to arguments, then
OSR exit should reify the arguments. But meanwhile, in tip of tree we introduced special handling for
dead variables on OSR exit. When the two were merged in r118323, the structure of the if/else branches
ended up being such that we would treat dead arguments variables as totally dead as opposed to treating
them as variables that need arguments reification.

This fixes the structure of the relevant if/else block so that variables that are dead-but-arguments
end up being treated as reified arguments objects, while variables that are dead but not aliased to
arguments are treated as tip of tree would have treated them (initialize to Undefined).

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

00:29 Changeset [118332] by ossy@webkit.org
  • 2 edits in trunk/Tools

[Qt] Unreviewed fix, add ENABLE_CSS3_FLEXBOX after r118304.

  • qmake/mkspecs/features/features.pri:
00:20 Changeset [118331] by commit-queue@webkit.org
  • 15 edits in trunk

[EFL] EFL's LayoutTestController needs to implement sendWebIntentResponse
https://bugs.webkit.org/show_bug.cgi?id=86867

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-24
Reviewed by Adam Barth.

Source/WebKit/efl:

ewk_intent_request_failure_post() should call
WebCore::IntentRequest::postFailure(), not
WebCore::IntentRequest::postResult().

  • ewk/ewk_intent_request.cpp:

(ewk_intent_request_failure_post):

Tools:

Add implementation for sendWebIntentResponse() in EFL's
LayoutTestController and add empty implementation for other ports.

  • DumpRenderTree/LayoutTestController.cpp:

(sendWebIntentResponseCallback):
(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:

(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::currentIntentRequest):
(DumpRenderTreeChrome::resetDefaultsToConsistentValues):
(DumpRenderTreeChrome::onFrameIntentNew):

  • DumpRenderTree/efl/DumpRenderTreeChrome.h:

(DumpRenderTreeChrome):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:

(LayoutTestController::sendWebIntentResponse):

  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:

(LayoutTestController::sendWebIntentResponse):

LayoutTests:

Remove from test expectations the webintents tests that require
support for sendWebIntentResponse() in EFL's LayoutTestController.

  • platform/efl/test_expectations.txt:
00:05 Changeset [118330] by ossy@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed 32 bit buildfix after r118325.

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal): Use ASSERT_UNUSED instead ASSERT.

00:03 Changeset [118329] by commit-queue@webkit.org
  • 11 edits in trunk

[EFL] The EFL port has no support for title directionality
https://bugs.webkit.org/show_bug.cgi?id=86462

Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-05-24
Reviewed by Gustavo Noronha Silva.

Source/WebKit/efl:

Define a new Ewk_Text_With_Direction type to store the direction of
the text along with the text itself. This is needed to support text
directionality in EFL port.

Use the new Ewk_Text_With_Direction type for the frame title. Updated
"title,changed" signal, title getter/setter and Ewk_Hit_Test struct.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::dispatchDidReceiveTitle):

  • ewk/ewk_frame.cpp:

(Ewk_Frame_Smart_Data):
(_ewk_frame_smart_del):
(ewk_frame_title_get):
(ewk_frame_hit_test_free):
(ewk_frame_hit_test_new):
(ewk_frame_title_set):

  • ewk/ewk_frame.h:
  • ewk/ewk_frame_private.h:
  • ewk/ewk_view.cpp:

(_Ewk_View_Private_Data):
(ewk_view_title_get):
(ewk_view_title_set):

  • ewk/ewk_view.h:
  • ewk/ewk_view_private.h:

Tools:

Update "title,changed" signal handlers in DRT and EWebLauncher to
reflect the change from const char* to Ewk_Text_With_Direction* type
for the title.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::onTitleChanged):

  • EWebLauncher/main.c:

(title_set):
(on_title_changed):
(on_key_down):

00:00 Changeset [118328] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG operationTearOffActivation should return after handling the null activation case
https://bugs.webkit.org/show_bug.cgi?id=87348
<rdar://problem/11522295>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

  • dfg/DFGOperations.cpp:

LayoutTests:

  • fast/js/dfg-tear-off-arguments-not-activation-expected.txt: Added.
  • fast/js/dfg-tear-off-arguments-not-activation.html: Added.
  • fast/js/script-tests/dfg-tear-off-arguments-not-activation.js: Added.

(bar):

Note: See TracTimeline for information about the timeline view.