Timeline



Nov 28, 2012:

11:46 PM Changeset in webkit [136105] by mkwst@chromium.org
  • 3 edits
    2 adds in trunk

Add a test to ensure that 'seamless' iframes do not inherit contenteditable.
https://bugs.webkit.org/show_bug.cgi?id=95890

Reviewed by Ojan Vafai.

Source/WebCore:

We don't currently support inheriting contenteditable into a seamless
frame. http://html5.org/tools/web-apps-tracker?from=7318&to=7319
brought the spec in line with WebKit's behavior (ha!). This patch
defends the behavior by adding a test, and removes a FIXME comment
now that the question is settled.

It also exposes a brand new bug: https://bugs.webkit.org/show_bug.cgi?id=103539
How exciting.

Test: fast/frames/seamless/seamless-contenteditable-not-inherited.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForDocument):

No functional change, just dropping a FIXME comment.

LayoutTests:

  • fast/frames/seamless/seamless-contenteditable-not-inherited-expected.txt: Added.
  • fast/frames/seamless/seamless-contenteditable-not-inherited.html: Added.
11:28 PM Changeset in webkit [136104] by mkwst@chromium.org
  • 5 edits
    4 adds in trunk

Web Inspector: Console message's anchor element should be trimmed for readability.
https://bugs.webkit.org/show_bug.cgi?id=100095

Reviewed by Pavel Feldman.

Source/WebCore:

We're currently trimming URLs that go through
'WebInspector.linkifyURLAsNode' down to 150 characters total. Not all
URLs go that path, however. We were missing a few cases that dropped
back to the default Linkifier (which especially showed up for "Live"
anchor elements).

This patch ensures that anything using WebInspector.Linkifier is also
trimmed by default. It adds a new constant to do so in order to avoid
magic numbers in the code.

Test: http/tests/inspector/network/script-as-text-loading-long-url.html

  • inspector/front-end/Linkifier.js:

(WebInspector.Linkifier):

Pass the max length into the default formatter that's created and
stored when creating a 'WebInspector.Linkifier' object.

  • inspector/front-end/ResourceUtils.js:

(WebInspector.linkifyURLAsNode):

Use the new maxlength constant rather than hard-coding 150.

LayoutTests:

  • http/tests/inspector/network/resources/script-as-text-with-a-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-very-long-url.php: Added.
  • http/tests/inspector/network/script-as-text-loading-long-url-expected.txt: Added.
  • http/tests/inspector/network/script-as-text-loading-long-url.html: Added.
  • platform/chromium/http/tests/inspector/network/script-as-text-loading-long-url-expected.txt: Added.

JSC vs V8.

11:24 PM WebInspector edited by mousewiki@yahoo.com
(diff)
11:23 PM WebInspector edited by Daniela Lanie
(diff)
11:10 PM Changeset in webkit [136103] by commit-queue@webkit.org
  • 7 edits
    1 delete in trunk/Source

[EFL] Generate big_button_theme.edj
https://bugs.webkit.org/show_bug.cgi?id=103511

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-28
Reviewed by Gyuyoung Kim.

Source/WebKit/efl:

big_button_theme.edj, binary file which is used for test, should be generated.

  • DefaultTheme/CMakeLists.txt:

Introduced macro and new target to share files of default theme instead
of adding many files for big_button_theme.

  • DefaultTheme/widget/button/button.edc:

Implemented for big_button_theme.

Source/WebKit2:

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:

(EWK2UnitTest::EWK2UnitTestEnvironment::pathForTheme):
(EWK2UnitTest):

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:

(EWK2UnitTestEnvironment):

  • UIProcess/API/efl/tests/resources/big_button_theme.edj: Removed.
  • UIProcess/API/efl/tests/test_ewk2_view.cpp: Modified to use generated big_button_theme.edj

(TEST_F):

11:07 PM WebInspector edited by mousewiki@yahoo.com
(diff)
11:00 PM Changeset in webkit [136102] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r135973.
http://trac.webkit.org/changeset/135973
https://bugs.webkit.org/show_bug.cgi?id=103604

It made API test crash on EFL bots (Requested by gyuyoung on
#webkit).

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

  • UIProcess/API/efl/ewk_view.cpp:

(createEwkView):

10:49 PM Changeset in webkit [136101] by apavlov@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

012-11-28 Alexander Pavlov <apavlov@chromium.org>

[Chromium] Unreviewed, rebaseline CSS regions test expectations for Mac 10.8 after r136045.

  • platform/chromium-mac/fast/regions/autoheight-dynamic-update-expected.png: Added.
  • platform/chromium-mac/fast/regions/firstletter-inside-flowthread-expected.png: Added.
  • platform/chromium-mac/fast/regions/listmarker-inside-flowthread-expected.png: Added.
10:44 PM Changeset in webkit [136100] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Rebaselined run-bindings-tests.

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

(WebCore::toV8Fast):

10:24 PM Changeset in webkit [136099] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

IndexedDB: Remove duplicate toWireString() and createFromWire() methods in JSC SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=103554

Patch by Michael Pruett <michael@68k.org> on 2012-11-28
Reviewed by Kentaro Hara.

In r135022, duplicate createFromWire() and toWireString() methods
were added to the JSC version of SerializedScriptValue. In
order to allow the JSC SerializedScriptValue to compile when
ENABLE(INDEXED_DATABASE) is turned on, these new methods have
been removed and the old methods have been moved outside the
ENABLE(INDEXED_DATABASE) guard.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
10:23 PM Changeset in webkit [136098] by shinyak@chromium.org
  • 5 edits in trunk/Source/WebCore

[Shadow] ShadowRoot should cache InsertionPointList.
https://bugs.webkit.org/show_bug.cgi?id=103212

Reviewed by Hajime Morita.

When distributing or invalidating distribution, we used to traverse all descendent nodes in Shadow DOM.
If ShadowRoot has a InsertionPoint list, we can just traverse the list.

No new tests, should be covered by existing tests.

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::insertionPointList):
(WebCore):

  • dom/ShadowRoot.h:

(ShadowRoot):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ShadowRootContentDistributionData::ShadowRootContentDistributionData):
(WebCore::ShadowRootContentDistributionData::invalidateInsertionPointList):
(WebCore):
(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList): Creates InsertionPoint list
if it's not created and return it.
(WebCore::ContentDistributor::distribute): Traverse InsertionPointList instead of all descendent nodes in Shadow DOM.
(WebCore::ContentDistributor::invalidate): ditto.

  • html/shadow/ContentDistributor.h:

(WebCore::ShadowRootContentDistributionData::incrementNumberOfShadowElementChildren): Invalidate InsertionPointList cache.
(WebCore::ShadowRootContentDistributionData::decrementNumberOfShadowElementChildren): ditto.
(WebCore::ShadowRootContentDistributionData::incrementNumberOfContentElementChildren): ditto.
(WebCore::ShadowRootContentDistributionData::decrementNumberOfContentElementChildren): ditto.
(ShadowRootContentDistributionData):

10:21 PM Changeset in webkit [136097] by commit-queue@webkit.org
  • 9 edits in trunk

IndexedDB: Remove duplicate toWireString() and createFromWire() methods in JSC SerializedScriptValue
https://bugs.webkit.org/show_bug.cgi?id=103554

Patch by Michael Pruett <michael@68k.org> on 2012-11-28
Reviewed by Kentaro Hara.

In r135022, duplicate createFromWire() and toWireString() methods
were added to the JSC version of SerializedScriptValue. In
order to allow the JSC SerializedScriptValue to compile when
ENABLE(INDEXED_DATABASE) is turned on, these new methods have
been removed and the old methods have been moved outside the
ENABLE(INDEXED_DATABASE) guard.

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

No new tests. No change in functionality.

  • WebCore.exp.in:
  • bindings/js/SerializedScriptValue.cpp:

(WebCore::SerializedScriptValue::toWireString):
(WebCore):
(WebCore::SerializedScriptValue::createFromWire):

  • bindings/js/SerializedScriptValue.h:

Source/WebKit2:

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
10:01 PM Changeset in webkit [136096] by fpizlo@apple.com
  • 23 edits
    4 adds in trunk/Source

SpeculatedType dumping should not use the static char buffer[thingy] idiom
https://bugs.webkit.org/show_bug.cgi?id=103584

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Changed SpeculatedType to be "dumpable" by saying things like:

dataLog("thingy = ", SpeculationDump(thingy))

Removed the old stringification functions, and changed all code that referred to them
to use the new dataLog()/print() style.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/SpeculatedType.cpp:

(JSC::dumpSpeculation):
(JSC::speculationToAbbreviatedString):
(JSC::dumpSpeculationAbbreviated):

  • bytecode/SpeculatedType.h:
  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::dump):

  • bytecode/VirtualRegister.h:

(WTF::printInternal):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::dump):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::injectLazyOperandSpeculation):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGGraph.h:

(Graph):

  • dfg/DFGStructureAbstractValue.h:
  • dfg/DFGVariableAccessDataDump.cpp: Added.

(JSC::DFG::VariableAccessDataDump::VariableAccessDataDump):
(JSC::DFG::VariableAccessDataDump::dump):

  • dfg/DFGVariableAccessDataDump.h: Added.

(VariableAccessDataDump):

Source/WTF:

Added a StringPrintStream, and made it easy to create dumpers for typedefs to primitives.

  • GNUmakefile.list.am:
  • WTF.gypi:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/PrintStream.cpp:

(WTF::dumpCharacter):

  • wtf/PrintStream.h:

(WTF::printInternal):

  • wtf/StringPrintStream.cpp: Added.

(WTF::StringPrintStream::StringPrintStream):
(WTF::StringPrintStream::~StringPrintStream):
(WTF::StringPrintStream::vprintf):
(WTF::StringPrintStream::toCString):
(WTF::StringPrintStream::increaseSize):

  • wtf/StringPrintStream.h: Added.

(StringPrintStream):
(WTF::toCString):

9:45 PM WebKitEFLLayoutTest edited by gyuyoung.kim@samsung.com
Add --update-efl option (diff)
9:33 PM Changeset in webkit [136095] by weinig@apple.com
  • 12 edits
    4 adds in trunk/Source/WebKit2

Add an objc object graph wrapper and coder for WKConnection message bodies
https://bugs.webkit.org/show_bug.cgi?id=103589

Reviewed by Anders Carlsson.

Adds a new type of UserMessageCoder for objc object graphs that allows encoding/decoding
WKBrowsingContextController across the wire.

  • Shared/APIClient.h:

(APIClient):
(WebKit::APIClient::client):
Add accessor for the ClientInterface.

  • Shared/APIObject.h:

Add new TypeObjCObjectGraph type.

  • Shared/mac/ObjCObjectGraph.h: Added.

(ObjCObjectGraph):
(WebKit::ObjCObjectGraph::create):
(WebKit::ObjCObjectGraph::root):
(WebKit::ObjCObjectGraph::ObjCObjectGraph):
(WebKit::ObjCObjectGraph::type):

  • Shared/mac/ObjCObjectGraph.mm: Added.

Wraps

  • Shared/mac/ObjCObjectGraphCoders.h: Added.

(WebContextObjCObjectGraphEncoder):
(WebContextObjCObjectGraphDecoder):
(InjectedBundleObjCObjectGraphEncoder):
(InjectedBundleObjCObjectGraphDecoder):

  • Shared/mac/ObjCObjectGraphCoders.mm: Added.

(WebKit::typeFromObject):
(ObjCObjectGraphEncoder):
(WebKit::ObjCObjectGraphEncoder::baseEncode):
(WebKit::ObjCObjectGraphEncoder::ObjCObjectGraphEncoder):
(ObjCObjectGraphDecoder):
(WebKit::ObjCObjectGraphDecoder::baseDecode):
(WebKit::ObjCObjectGraphDecoder::ObjCObjectGraphDecoder):
(WebContextObjCObjectGraphEncoderImpl):
(WebKit::WebContextObjCObjectGraphEncoderImpl::WebContextObjCObjectGraphEncoderImpl):
(WebKit::WebContextObjCObjectGraphEncoderImpl::encode):
(WebContextObjCObjectGraphDecoderImpl):
(WebKit::WebContextObjCObjectGraphDecoderImpl::WebContextObjCObjectGraphDecoderImpl):
(WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
(InjectedBundleObjCObjectGraphEncoderImpl):
(WebKit::InjectedBundleObjCObjectGraphEncoderImpl::InjectedBundleObjCObjectGraphEncoderImpl):
(WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode):
(InjectedBundleObjCObjectGraphDecoderImpl):
(WebKit::InjectedBundleObjCObjectGraphDecoderImpl::InjectedBundleObjCObjectGraphDecoderImpl):
(WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
(WebKit::WebContextObjCObjectGraphEncoder::WebContextObjCObjectGraphEncoder):
(WebKit::WebContextObjCObjectGraphEncoder::encode):
(WebKit::WebContextObjCObjectGraphDecoder::WebContextObjCObjectGraphDecoder):
(WebKit::WebContextObjCObjectGraphDecoder::decode):
(WebKit::InjectedBundleObjCObjectGraphEncoder::InjectedBundleObjCObjectGraphEncoder):
(WebKit::InjectedBundleObjCObjectGraphEncoder::encode):
(WebKit::InjectedBundleObjCObjectGraphDecoder::InjectedBundleObjCObjectGraphDecoder):
(WebKit::InjectedBundleObjCObjectGraphDecoder::decode):
Added.

  • UIProcess/API/mac/WKBrowsingContextController.mm:

(+[WKBrowsingContextController _browsingContextControllerForPageRef:]):

  • UIProcess/API/mac/WKBrowsingContextControllerInternal.h:

Expose the accessor to get the WKPageRef from a WKBrowsingContextController and add a
new method to get a WKBrowsingContextController from a WKPageRef.

  • UIProcess/API/mac/WKConnection.mm:

(-[WKConnection sendMessageWithName:body:]):
(didReceiveMessage):
Switch WKConnection to use ObjCObjectGraph to encode the messageBody.

  • UIProcess/WebContextUserMessageCoders.h:

(WebKit::WebContextUserMessageEncoder::encode):
(WebKit::WebContextUserMessageDecoder::decode):

  • WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:

(WebKit::InjectedBundleUserMessageEncoder::encode):
(WebKit::InjectedBundleUserMessageDecoder::decode):
Proxy to ObjCObjectGraph coders when user message encoding/decoding ObjCObjectGraph APIObjects.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:

(-[WKWebProcessPlugInController _browserContextControllerForBundlePageRef:]):

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:

Add method to get WKWebProcessPlugInController from the WKBundlePageRef.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

9:29 PM Changeset in webkit [136094] by inferno@chromium.org
  • 2 edits in branches/chromium/1312/Source/WebCore/rendering/mathml

Merge 133221 - REGRESSION (r128837): mathml/presentation/subsup.xhtml became flaky
BUG=152430
Review URL: https://codereview.chromium.org/11418230

9:27 PM Changeset in webkit [136093] by inferno@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/platform/graphics/skia/SimpleFontDataSkia.cpp

Merge 133494 - Implement SimpleFontData::platformBoundsForGlyph on skia
BUG=152430
Review URL: https://codereview.chromium.org/11419217

9:27 PM Changeset in webkit [136092] by morrita@google.com
  • 4 edits in trunk

[Shadow DOM] Element.createShadowRoot() should be prefixed.
https://bugs.webkit.org/show_bug.cgi?id=103595

Reviewed by Kentaro Hara.

Source/WebCore:

No new tests, updated shadow-aware-create-shadow-root.html to follow the change.

  • dom/Element.idl:

LayoutTests:

  • fast/dom/shadow/shadow-aware-create-shadow-root.html:
9:20 PM Changeset in webkit [136091] by tkent@chromium.org
  • 14 edits in branches/chromium/1312

Merge 135829 - :read-only selector should match to date/time input types
https://bugs.webkit.org/show_bug.cgi?id=103350

Reviewed by Kentaro Hara.

Source/WebCore:

We supported :read-only and :read-write only for text form controls;
i.e. <textarea> and text-field <input>. According to [1], we should
support them for date/time types. So, this patch removes
isTextFormControl check in SelectorChecker, and just relies on
shouldMatchRead{Only,Write}Selector virtual functions.

Tests: Update fast/forms/*/*-appearance-pseudo-classes.html.

[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):
Remove isFormControlElement check and isTextFormControl check.

  • html/HTMLFormControlElement.cpp:

Remove shouldMatchRead{Only,Write}Selector functions. We don't need
common implementations any more.

  • html/HTMLFormControlElement.h: Ditto.
  • html/HTMLTextAreaElement.h:

(HTMLTextAreaElement): Add shouldMatchRead{Only,Write}Selector overrides.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::shouldMatchReadOnlySelector): Added.
(WebCore::HTMLTextAreaElement::shouldMatchReadWriteSelector): Added.

  • html/HTMLInputElement.h:

(HTMLInputElement): Add shouldMatchRead{Only,Write}Selector overrides.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::shouldMatchReadOnlySelector):
Added. This checks InputType::supportsReadOnly and readOnly.
(WebCore::HTMLInputElement::shouldMatchReadWriteSelector): Ditto.

  • html/InputType.h:

(InputType): Add supportsReadOnly.

  • html/InputType.cpp:

(WebCore::InputType::supportsReadOnly): Added. Returns false by default.

  • html/BaseDateAndTimeInputType.h:

(BaseDateAndTimeInputType): Add supportsReadOnly.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::supportsReadOnly): Added. Returns true.

  • html/TextFieldInputType.h:

(TextFieldInputType): Add supportsReadOnly.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::supportsReadOnly): Added. Returns true.

LayoutTests:

The text color becomes yellow as specified for :read-only in
*-appearance-pseudo-classes.html

  • platform/chromium-mac/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium/TestExpectations:

TBR=tkent@chromium.org
Review URL: https://codereview.chromium.org/11415195

9:17 PM BuildingQtOnLinux edited by luxtella@company100.net
(diff)
9:15 PM Changeset in webkit [136090] by hayato@chromium.org
  • 3 edits in trunk/LayoutTests

Test the return value from Node::compareDocumentPositionMake more strictly.
https://bugs.webkit.org/show_bug.cgi?id=103590

Reviewed by Dimitri Glazkov.

  • fast/dom/shadow/compare-document-position-expected.txt:
  • fast/dom/shadow/compare-document-position.html:
9:10 PM Changeset in webkit [136089] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Adding secondary email.

9:02 PM Changeset in webkit [136088] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL][WK2] input-with-validation-without-shadow.html makes following tests crash after r135935
https://bugs.webkit.org/show_bug.cgi?id=103508

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-28
Reviewed by Kent Tamura.

Do not submit the form in the ref test, as it is also not submitted by the
original test. This also fixes the timeout in EFL's tests.
Remove the test from TestEexpectations as the test is passing now.

  • fast/dom/shadow/input-with-validation-without-shadow-expected.html:
  • platform/efl-wk2/TestExpectations:
7:17 PM Changeset in webkit [136087] by hayato@chromium.org
  • 3 edits
    2 adds in trunk

Node::compareDocumentPosition returns wrong value for a node in the different shadow tree.
https://bugs.webkit.org/show_bug.cgi?id=103502

Reviewed by Dimitri Glazkov.

Source/WebCore:

Make Node::compareDocumentPosition() return the correct value when two nodes are in the different shadow trees.

Test: fast/dom/shadow/compare-document-position.html

  • dom/Node.cpp:

(WebCore::Node::compareDocumentPosition):

LayoutTests:

  • fast/dom/shadow/compare-document-position-expected.txt: Added.
  • fast/dom/shadow/compare-document-position.html: Added.
7:16 PM Changeset in webkit [136086] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Change Bytecompiler s_dumpsGeneratedCode to an Options value
https://bugs.webkit.org/show_bug.cgi?id=103588

Reviewed by Filip Pizlo.

Moved the control of dumping bytecodes to Options::dumpGeneratedBytecodes.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecompiler/BytecodeGenerator.cpp:
  • bytecompiler/BytecodeGenerator.h:
  • jsc.cpp:

(runWithScripts):

  • runtime/Options.h:
6:49 PM Changeset in webkit [136085] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed test fix: chromium/fast/storage/serialized-script-value.html

This test produces an undefined error if the test fails.

  • platform/chromium/fast/storage/serialized-script-value.html: Use bufferView

instead of view (view is not defined).

6:24 PM Changeset in webkit [136084] by jsbell@chromium.org
  • 6 edits in trunk

[Chromium] IndexedDB: Assert/crash in indexing layout tests in content_shell
https://bugs.webkit.org/show_bug.cgi?id=103562

Reviewed by Tony Chang.

Source/WebCore:

In multi-process ports, an commit request or setIndexesReady request may arrive from the
front-end after the back-end has already aborted. Don't freak out if those occur.

Tests: storage/indexeddb/index-population.html

storage/indexeddb/lazy-index-population.html
storage/indexeddb/transaction-error.html

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::setIndexKeys): Ensure transaction hasn't finished before continuing.
(WebCore::IDBObjectStoreBackendImpl::setIndexesReady): Ditto.

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::commit): Ignore a commit request if already aborted.

LayoutTests:

Fix an expectation glitch that may arise in multi-process ports (an error on
the open request may arrive before logging has stopped; safe to ignore it).

  • storage/indexeddb/resources/transaction-error.js:
6:24 PM Changeset in webkit [136083] by sergio@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][Qt] Add drag&drop support to Flickable webView
https://bugs.webkit.org/show_bug.cgi?id=100778

Reviewed by Jocelyn Turcotte.

Enable the ItemAcceptsDrops flag in the flickable WebView. This
will allow the WebView to receive drag&drop events.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

6:21 PM Changeset in webkit [136082] by msaboff@apple.com
  • 2 edits in trunk/Source/WTF

Update String Stats for recent dataLog changes and add summary
https://bugs.webkit.org/show_bug.cgi?id=103583

Reviewed by Filip Pizlo.

Updated calls to dataLog() to dataLogF() as a results of r135469.
Added total savings from 8 bit strings in bytes and as a percentage.

  • wtf/text/StringImpl.cpp:

(WTF::StringStats::printStats):

6:18 PM Changeset in webkit [136081] by shinyak@chromium.org
  • 11 edits in trunk

.: [Shadow] Move Distribution stuffs from ShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=103481

Reviewed by Hajime Morita.

  • Source/autotools/symbols.filter:

Source/WebCore: [Shadow] Move Distribution requirements from ShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=103481

Reviewed by Hajime Morita.

We would like to shrink the ShadowRoot memory size in this patch. ShadowRoot had several distribution related members,
however they were used only if ShadowRoot has <content>, <shadow>, or nested ShadowRoot.
Since <input> or <textarea> do not have such requirements, the members consume a few amount of memory.

We remove them from ShadowRoot and introduce some RareData-like data structure for ShadowRoot.
This will reduce memory footprint in most cases.

No new tests, refactoring.

  • WebCore.exp.in:
  • dom/ShadowRoot.cpp:

(SameSizeAsShadowRoot): Reduced 3 * sizeof(unsigned) bytes from ShadowRoot.
(WebCore::ShadowRoot::ShadowRoot): DistributionData is created only when necessary. <input> or <textarea> won't
create such data.
(WebCore::ShadowRoot::assignedTo):
(WebCore):
(WebCore::ShadowRoot::setAssignedTo):
(WebCore::ShadowRoot::ensureDistributionData):
(WebCore::ShadowRoot::registerShadowElement):
(WebCore::ShadowRoot::unregisterShadowElement):
(WebCore::ShadowRoot::hasShadowInsertionPoint):
(WebCore::ShadowRoot::registerContentElement):
(WebCore::ShadowRoot::unregisterContentElement):
(WebCore::ShadowRoot::hasContentElement):
(WebCore::ShadowRoot::registerElementShadow):
(WebCore::ShadowRoot::unregisterElementShadow):
(WebCore::ShadowRoot::hasElementShadow):
(WebCore::ShadowRoot::countElementShadow):
(WebCore::ShadowRoot::reportMemoryUsage):

  • dom/ShadowRoot.h:

(WebCore):
(ShadowRoot):
(WebCore::ShadowRoot::distributionData):

  • html/shadow/ContentDistributor.cpp:

(WebCore::ShadowRootContentDistributionData::ShadowRootContentDistributionData):
(WebCore):

  • html/shadow/ContentDistributor.h:

(ShadowRootContentDistributionData): Distribution related fields in ShadowRoot are moved to here.
(WebCore::ShadowRootContentDistributionData::insertionPointAssignedTo):
(WebCore::ShadowRootContentDistributionData::setInsertionPointAssignedTo):
(WebCore::ShadowRootContentDistributionData::incrementNumberOfShadowElementChildren):
(WebCore::ShadowRootContentDistributionData::decrementNumberOfShadowElementChildren):
(WebCore::ShadowRootContentDistributionData::numberOfShadowElementChildren):
(WebCore::ShadowRootContentDistributionData::incrementNumberOfContentElementChildren):
(WebCore::ShadowRootContentDistributionData::decrementNumberOfContentElementChildren):
(WebCore::ShadowRootContentDistributionData::numberOfContentElementChildren):
(WebCore::ShadowRootContentDistributionData::incrementNumberOfElementShadowChildren):
(WebCore::ShadowRootContentDistributionData::decrementNumberOfElementShadowChildren):
(WebCore::ShadowRootContentDistributionData::numberOfElementShadowChildren):
(WebCore):

Source/WebKit2: [Shadow] Move Distribution stuffs from ShadowRoot
https://bugs.webkit.org/show_bug.cgi?id=103481

Reviewed by Hajime Morita.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
6:03 PM Changeset in webkit [136080] by krit@webkit.org
  • 17 edits in trunk

Remove -webkit-mask-attachment
https://bugs.webkit.org/show_bug.cgi?id=67137

Reviewed by David Hyatt.

Source/WebCore:

Remove CSS property '-webkit-attachment'. The CSS WG agreed that this should not be
part of the CSS Masking specification. WebKit never implemented the behavior of
attached masks either. The property was just exposed in CSSOM.

Test: Added negative tests to fast/masking/parsing-mask.html.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillProperty):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::asText):

  • css/StylePropertyShorthand.cpp:

(WebCore::webkitMaskShorthand):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

  • rendering/style/RenderStyle.h:

LayoutTests:

Added negative tests for '-webkit-mask' shorthand property attachment keywords.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • fast/css/remove-shorthand.html: Corrected syntax for -webkit-mask test.
  • fast/masking/parsing-mask-expected.txt:
  • fast/masking/parsing-mask.html: Added negative tests for attachment property keywords.
  • svg/css/getComputedStyle-basic-expected.txt:
5:46 PM Changeset in webkit [136079] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

IndexedDB: Add forward declaration of SecurityOrigin to IDBBackingStore.h
https://bugs.webkit.org/show_bug.cgi?id=103578

Patch by Michael Pruett <michael@68k.org> on 2012-11-28
Reviewed by Kentaro Hara.

Add forward declaration of SecurityOrigin to IDBBackingStore.h
in order to enable compilation of IndexedDB for JSC.

Tests: storage/indexeddb/*

  • Modules/indexeddb/IDBBackingStore.h:

(WebCore):

5:21 PM Changeset in webkit [136078] by tkent@chromium.org
  • 3 edits in trunk/Tools

garden-o-matic: Use indeterminate <progress> in the status area
https://bugs.webkit.org/show_bug.cgi?id=103494

Reviewed by Adam Barth.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:

Wrap the "Processing..." message with an indeterminate progress bar.
We keep the message as a fallback content.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:

Follow the above change.

5:03 PM Changeset in webkit [136077] by mhahnenberg@apple.com
  • 16 edits
    2 adds in trunk/Source/JavaScriptCore

Copying phase should use work lists
https://bugs.webkit.org/show_bug.cgi?id=101390

Reviewed by Filip Pizlo.

(JSC::BlockAllocator::BlockAllocator):

  • heap/BlockAllocator.h: New RegionSet for CopyWorkListSegments.

(BlockAllocator):
(JSC::CopyWorkListSegment):

  • heap/CopiedBlock.h: Added a per-block CopyWorkList to keep track of the JSCells that need to be revisited during the copying

phase to copy their backing stores.
(CopiedBlock):
(JSC::CopiedBlock::CopiedBlock):
(JSC::CopiedBlock::didSurviveGC):
(JSC::CopiedBlock::didEvacuateBytes): There is now a one-to-one relationship between GCThreads and the CopiedBlocks they're
responsible for evacuating, we no longer need any of that fancy compare and swap stuff.
(JSC::CopiedBlock::pin):
(JSC::CopiedBlock::hasWorkList):
(JSC::CopiedBlock::workList):

  • heap/CopiedBlockInlines.h: Added.

(JSC::CopiedBlock::reportLiveBytes): Since we now have to grab a SpinLock to perform operations on the CopyWorkList during marking,
we don't need to do any of that fancy compare and swap stuff we were doing for tracking live bytes.

  • heap/CopiedSpace.h:

(CopiedSpace):

  • heap/CopiedSpaceInlines.h:

(JSC::CopiedSpace::pin):

  • heap/CopyVisitor.cpp:

(JSC::CopyVisitor::copyFromShared): We now iterate over a range of CopiedBlocks rather than MarkedBlocks and revisit the cells in those
blocks' CopyWorkLists.

  • heap/CopyVisitor.h:

(CopyVisitor):

  • heap/CopyVisitorInlines.h:

(JSC::CopyVisitor::visitCell): The function responsible for calling the correct copyBackingStore() function for each JSCell from
a CopiedBlock's CopyWorkList.
(JSC::CopyVisitor::didCopy): We no longer need to check if the block is empty here because we know exactly when we're done
evacuating a CopiedBlock, which is when we've gone through all of the CopiedBlock's CopyWorkList.

  • heap/CopyWorkList.h: Added.

(CopyWorkListSegment): Individual chunk of a CopyWorkList that is allocated from the BlockAllocator.
(JSC::CopyWorkListSegment::create):
(JSC::CopyWorkListSegment::size):
(JSC::CopyWorkListSegment::isFull):
(JSC::CopyWorkListSegment::get):
(JSC::CopyWorkListSegment::append):
(JSC::CopyWorkListSegment::CopyWorkListSegment):
(JSC::CopyWorkListSegment::data):
(JSC::CopyWorkListSegment::endOfBlock):
(CopyWorkListIterator): Responsible for giving CopyVisitors a contiguous notion of access across the separate CopyWorkListSegments
that make up each CopyWorkList.
(JSC::CopyWorkListIterator::get):
(JSC::CopyWorkListIterator::operator*):
(JSC::CopyWorkListIterator::operator->):
(JSC::CopyWorkListIterator::operator++):
(JSC::CopyWorkListIterator::operator==):
(JSC::CopyWorkListIterator::operator!=):
(JSC::CopyWorkListIterator::CopyWorkListIterator):
(CopyWorkList): Data structure that keeps track of the JSCells that need copying in a particular CopiedBlock.
(JSC::CopyWorkList::CopyWorkList):
(JSC::CopyWorkList::~CopyWorkList):
(JSC::CopyWorkList::append):
(JSC::CopyWorkList::begin):
(JSC::CopyWorkList::end):

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::GCThreadSharedData): We no longer use the m_blockSnapshot from the Heap during the copying phase.
(JSC::GCThreadSharedData::didStartCopying): We now copy the set of all blocks in the CopiedSpace to a separate vector for
iterating over during the copying phase since the set stored in the CopiedSpace will change as blocks are evacuated and
recycled throughout the copying phase.

  • heap/GCThreadSharedData.h:

(GCThreadSharedData):

  • heap/Heap.h:

(Heap):

  • heap/SlotVisitor.h: We now need to know the object who is being marked that has a backing store so that we can store it

in a CopyWorkList to revisit later during the copying phase.

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::copyLater):

  • runtime/JSObject.cpp:

(JSC::JSObject::visitButterfly):

4:51 PM Changeset in webkit [136076] by morrita@google.com
  • 5 edits in trunk/Source/WebCore

checkAcceptChild() needs fewer virtual calls
https://bugs.webkit.org/show_bug.cgi?id=103372

Reviewed by Ojan Vafai.

This change reorganizes checkAcceptChild family for speed.

  • Made Node::checkAddChild and Node::checkReplaceChild() static inline functions in ContainerNode.cpp. checkAcceptChild() was also moved to the same file. This allows us more aggressive inlining.
  • Added a fast path in checkAcceptChild(), where we can assume that the parent is element and the new child is element or text. Under this assumption, we need no extra type checks and just needs a cycle prevention through Node::contains(). This is faster than current generic version.
  • Moved extra checks from checkAddChild() and checkReplaceChild() to checkAcceptChild(). This allows the fast path skips even these extra checks.
  • Node::canReplaceChild() is devirtualized. Since the only override is on Document, we can check isDocumentNode() to call it directly.
  • The default implemenation of Node::canReplaceChild() just calls isChildTypeAllowed(). That is what an extra check for checkAddChild() did. So we can share these code path in checkAcceptChild().

This gains 2-3% win on Dromaeo dom-modify.html.

No new tests, covered by existing tests.

  • dom/ContainerNode.cpp:

(WebCore::isChildTypeAllowed): Moved from Node.cpp
(WebCore::checkAcceptChild): Moved from Node.cpp, Added a fast path.
(WebCore::checkAddChild): Moved from Node.cpp
(WebCore::checkReplaceChild): Moved from Node.cpp
(WebCore::ContainerNode::insertBefore): Followed the signature change.
(WebCore::ContainerNode::replaceChild): Followed the signature change, moved null check from checkReplaceChild to here.
(WebCore::ContainerNode::appendChild): Followed the signature change.

  • dom/Document.h:

(Document):

  • dom/Node.cpp:
  • dom/Node.h:

(WebCore::Node::isDocumentTypeNode): Added for better readability of call sites.

4:20 PM Changeset in webkit [136075] by timothy_horton@apple.com
  • 10 edits in trunk/Source/WebKit2

[mac] Dictionary lookup bubble loses intrarange formatting
https://bugs.webkit.org/show_bug.cgi?id=103496
<rdar://problem/12762172>

Reviewed by Alexey Proskuryakov.

Pass an NSAttributedString (made via WebHTMLConverter on the WebProcess side) through
when showing dictionary popups, so that we preserve more formatting in the yellow dictionary
highlight. Also, remove the fontInfo member from DictionaryPopupInfo, since we don't need it anymore.

  • Shared/DictionaryPopupInfo.cpp:

(WebKit::DictionaryPopupInfo::encode): Don't encode the now-removed fontInfo member.
(WebKit::DictionaryPopupInfo::decode): Don't decode the now-removed fontInfo member.

  • Shared/DictionaryPopupInfo.h: Remove the fontInfo member.
  • UIProcess/API/mac/PageClientImpl.h:

(PageClientImpl): didPerformDictionaryLookup should take an AttributedString instead of a plain String, and
no longer needs to take the page scale factor.

  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::didPerformDictionaryLookup): Use the AttributedString we're handed from the WebProcess
instead of constructing one ourselves; this way, we have all the attributes instead of just a single font.

  • UIProcess/PageClient.h:

(PageClient): didPerformDictionaryLookup should take an AttributedString instead of a plain String.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): didPerformDictionaryLookup should take an AttributedString instead of a plain String.

  • UIProcess/WebPageProxy.messages.in: DidPerformDictionaryLookup should take an AttributedString instead of a plain String.
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::didPerformDictionaryLookup): didPerformDictionaryLookup should take an AttributedString instead of a plain String.

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performDictionaryLookupForRange): performDictionaryLookupForRange should hand WebPageProxy an AttributedString
constructed via WebHTMLConverter instead of a plain text string paired with a single font descriptor.
Also, scale the size of every font attribute by the current pageScaleFactor.

4:14 PM Changeset in webkit [136074] by bashi@chromium.org
  • 3 edits
    2 adds in trunk

StyleResolver should not set NaN to font size
https://bugs.webkit.org/show_bug.cgi?id=99506

Reviewed by Abhishek Arya.

Source/WebCore:

fixedScaleFactor could be NaN since settings->defaultFixedFontSize()
and settings->defaultFontSize() are zero in some case. This turns
out setting NaN to font size. Add a zero checks so that
fixedScaleFactor won't be NaN.

Test: fast/css/font-size-nan.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::checkForGenericFamilyChange):

LayoutTests:

  • fast/css/font-size-nan-expected.txt: Added.
  • fast/css/font-size-nan.svg: Added.
4:13 PM Changeset in webkit [136073] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

[mac] WebHTMLConverter should maintain font size even when there is no related NSFont
https://bugs.webkit.org/show_bug.cgi?id=103568

Reviewed by Alexey Proskuryakov.

WebHTMLConverter should use the default font at the correct size when it
encounters a font that cannot be backed by an NSFont (e.g. a WebFont).

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

4:11 PM Changeset in webkit [136072] by krit@webkit.org
  • 7 edits in trunk

CSS parser does not support -webkit-mask-size for -webkit-mask shorthand
https://bugs.webkit.org/show_bug.cgi?id=103020

Reviewed by David Hyatt.

Source/WebCore:

Harmonize the syntax of '-webkit-mask' property with 'background' according to the
CSS Masking specification[1]. This should make it easier to maintain both shorthand
properties in the long term.
It is very unlikely that a lot of content (if any) is affected by this change. The
computed style still is not implemented and this change should rather make it easier
for developers.

With the harmonization, the '-webkit-mask-size' property is part of the shorthand as
well now.

parsing-mask.html covers all the changes. Added new tests for the changed syntax and
'-webkit-mask-size'

[1] http://dvcs.w3.org/hg/FXTF/raw-file/tip/masking/index.html#mask-property

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseFillShorthand):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getLayeredShorthandValue):

  • css/StylePropertyShorthand.cpp:

(WebCore::webkitMaskShorthand):

LayoutTests:

Added new subtests to exisiting test for the changed syntax of '-webkit-mask' shorthand property.

  • fast/masking/parsing-mask-expected.txt:
  • fast/masking/parsing-mask.html:
3:42 PM Changeset in webkit [136071] by alecflett@chromium.org
  • 7 edits in trunk/Source

IndexedDB: Change frontend to call IDBDatabaseBackendInterface::createTransaction()
https://bugs.webkit.org/show_bug.cgi?id=102732

Reviewed by Tony Chang.

Use the new createTransaction, now that it has been stubbed
out. This is part 2 of 3 of a refactor. See
https://bugs.webkit.org/show_bug.cgi?id=102733 for part 3.

No new tests as this refactor simply keeps and propagates a
counter that is currently unused.

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::nextTransactionId):
(WebCore):
(WebCore::IDBDatabase::transaction):

  • Modules/indexeddb/IDBDatabase.h:

(IDBDatabase):

  • Modules/indexeddb/IDBOpenDBRequest.cpp:

(WebCore::IDBOpenDBRequest::onUpgradeNeeded):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::create):
(WebCore::IDBTransaction::IDBTransaction):

  • Modules/indexeddb/IDBTransaction.h:

(IDBTransaction):

3:39 PM Changeset in webkit [136070] by roger_fong@apple.com
  • 2 edits in trunk/Source/WTF

Make DataLog work/compile properly on Windows.
https://bugs.webkit.org/show_bug.cgi?id=103544

Reviewed by Filip Pizlo.

  • wtf/DataLog.cpp:

(WTF::initializeLogFileOnce):

3:37 PM Changeset in webkit [136069] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Disassembly methods should be able to disassemble to any PrintStream& rather than always using WTF::dataFile()
https://bugs.webkit.org/show_bug.cgi?id=103492

Reviewed by Mark Hahnenberg.

Switched disassembly code to use PrintStream&, and to use print() rather than printf().

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::dump):
(DFG):
(JSC::DFG::Disassembler::dumpDisassembly):

  • dfg/DFGDisassembler.h:

(Disassembler):

  • dfg/DFGGraph.cpp:

(JSC::DFG::printWhiteSpace):
(JSC::DFG::Graph::dumpCodeOrigin):
(JSC::DFG::Graph::printNodeWhiteSpace):
(JSC::DFG::Graph::dump):
(DFG):
(JSC::DFG::Graph::dumpBlockHeader):

  • dfg/DFGGraph.h:

(Graph):

  • jit/JITDisassembler.cpp:

(JSC::JITDisassembler::dump):
(JSC::JITDisassembler::dumpForInstructions):
(JSC::JITDisassembler::dumpDisassembly):

  • jit/JITDisassembler.h:

(JITDisassembler):

3:32 PM Changeset in webkit [136068] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

HTMLFontElement font size parsing should directly handle 8 bit strings
https://bugs.webkit.org/show_bug.cgi?id=103315

Reviewed by Oliver Hunt.

Split parseFontSize() into a templated function based on character type and a wrapper that determines
a string's bitness before calling the template.

No new tests. No change in functionality.

  • html/HTMLFontElement.cpp:

(WebCore::parseFontSize):

3:21 PM Changeset in webkit [136067] by nghanavatian@rim.com
  • 2 edits in trunk/Tools

2012-11-28 Nima Ghanavatian <nghanavatian@rim.com>

Adding Nima Ghanavatian to committers.py
https://bugs.webkit.org/show_bug.cgi?id=103533

Reviewed by Rob Buis.

Adding myself to committers.py as a Committer.

  • Scripts/webkitpy/common/config/committers.py:
2:59 PM Changeset in webkit [136066] by fpizlo@apple.com
  • 14 edits
    1 add in trunk/Source

It should be possible to say dataLog("count = ", count, "\n") instead of dataLogF("count = %d\n", count)
https://bugs.webkit.org/show_bug.cgi?id=103009

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Instead of converting all of JSC to use the new dataLog()/print() methods, I just changed
one place: dumping of abstract values. This is mainly just to ensure that the code I
added to WTF is actually doing things.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dump):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::dump):
(WTF):
(WTF::printInternal):

  • dfg/DFGStructureAbstractValue.h:

(JSC::DFG::StructureAbstractValue::dump):
(WTF):
(WTF::printInternal):

Source/WTF:

Added the ability to use out.print(...) and dataLog(...) variadically and with
WTF::printInternal(PrintStream&, const T&) overloads for any type T that you want
to be able to pass as an argument to out.print() or dataLog(). Also added one
example class for doing this: RawPointer, which can be used to force a pointer
to be printed as "%p" rather than matching any overloads that you might want to
introduce.

  • GNUmakefile.list.am:
  • WTF.gypi:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/DataLog.h:

(WTF):
(WTF::dataLog):

  • wtf/PrintStream.cpp:

(WTF::printInternal):
(WTF):

  • wtf/PrintStream.h:

(PrintStream):
(WTF::PrintStream::print):
(WTF):

  • wtf/RawPointer.h: Added.

(WTF):
(RawPointer):
(WTF::RawPointer::RawPointer):
(WTF::RawPointer::value):

2:59 PM Changeset in webkit [136065] by kareng@chromium.org
  • 1 edit
    4 copies in branches/chromium/1312

Merge 135874 - freeV8NPObject: Skip trying to remove object from per context data's ObjectMap if the object does not exist in the map.
https://bugs.webkit.org/show_bug.cgi?id=103356

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-27
Reviewed by Adam Barth.

Before introducing per context data, it used to be the case that we would ignore removing v8 object
from context data's map if we couldn't find it. With perContextData change, this turned into an ASSERT
instead and we had crash reports.
Related crbug.com/154462.

Source/WebCore:

Test: platform/chromium/plugins/release-frame-content-window.html

  • bindings/v8/NPV8Object.cpp:

(WebCore::freeV8NPObject):

LayoutTests:

  • platform/chromium/plugins/release-frame-content-window-expected.txt: Added.
  • platform/chromium/plugins/release-frame-content-window.html: Added.
  • platform/chromium/plugins/resources/empty.html: Added.
  • platform/chromium/plugins/resources/empty2.html: Added.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/11434015

2:57 PM Changeset in webkit [136064] by kareng@chromium.org
  • 1 edit
    3 copies in branches/chromium/1312

Merge 135804 - Check for empty perContextData while creating NP V8 Object.
https://bugs.webkit.org/show_bug.cgi?id=98448

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-26
Reviewed by Adam Barth.

Fixes crash in npCreateV8ScriptObject(), if NP Invoke is called from a document
that is no longer displayed in frame (isCurrentlyDisplayedInFrame() ==
false), we have empty perContextData and this results in invalid memory access.

Source/WebCore:

Test: platform/chromium/plugins/empty-per-context-data.html

  • bindings/v8/NPV8Object.cpp:

(WebCore::npCreateV8ScriptObject):

LayoutTests:

  • platform/chromium/plugins/empty-per-context-data-expected.txt: Added.
  • platform/chromium/plugins/empty-per-context-data.html: Added.
  • platform/chromium/plugins/resources/script-container.html: Added.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/11411245

2:56 PM Changeset in webkit [136063] by rjkroege@chromium.org
  • 8 edits
    12 deletes in trunk/Source

remove unused PlatformGestureCurve code
https://bugs.webkit.org/show_bug.cgi?id=103296

Reviewed by Adam Barth.

Previous CLs have made the Chromium embedder provide gesture fling
curve implementation to WebKit. Consequently no platform uses the
gestural fling code currently found in WebKit. This CL removes this code.

Code removal only: covered by existing tests.

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • platform/ActivePlatformGestureAnimation.cpp: Removed.
  • platform/ActivePlatformGestureAnimation.h: Removed.
  • platform/PlatformGestureCurve.h: Removed.
  • platform/PlatformGestureCurveTarget.h: Removed.
  • platform/ScrollAnimatorNone.cpp: References to removed code removed.
  • platform/ScrollAnimatorNone.h:
  • platform/TouchFlingPlatformGestureCurve.cpp: Removed.
  • platform/TouchFlingPlatformGestureCurve.h: Removed.
  • platform/WheelFlingPlatformGestureCurve.cpp: Removed.
  • platform/WheelFlingPlatformGestureCurve.h: Removed.
  • platform/chromium/support/PlatformGestureCurveFactory.cpp: Removed.
  • platform/chromium/support/PlatformGestureCurveFactory.h: Removed.
  • platform/chromium/support/WebFlingAnimatorToGestureCurveAdapter.h: Removed.

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/PlatformGestureCurveTest.cpp: Removed.
2:53 PM Changeset in webkit [136062] by inferno@chromium.org
  • 2 edits in trunk/Source/WebCore

Heap-use-after-free in WebCore::EventHandler::handleMousePressEvent
https://bugs.webkit.org/show_bug.cgi?id=101098

Reviewed by Adam Barth.

|subframe| can be blown away inside passMousePressEventToSubframe
call. Use RefPtr to protect it in handleMousePressEvent function.
We use similar approach in handleMouseMoveEvent function.

No new tests. Test is extremely time dependent and needs to trigger
interaction gesture. Reproduced on ClusterFuzz.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):

2:52 PM Changeset in webkit [136061] by tsepez@chromium.org
  • 3 edits
    2 adds in trunk

XSSAuditor bypass with script src=data: URL ending in <!--
https://bugs.webkit.org/show_bug.cgi?id=103548

Reviewed by Adam Barth.

Source/WebCore:

This fixes an additional case where characters from the page itself are
included with the snippet to match against the reflected vector, and the
JS remains legitimate because of a <!--- comment. Truncate the snippet at
such a comment.

Test: http/tests/security/xssAuditor/script-tag-with-source-data-url3.html

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::decodedSnippetForAttribute):

LayoutTests:

  • http/tests/security/xssAuditor/script-tag-with-source-data-url3-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-with-source-data-url3.html: Added.
2:46 PM Changeset in webkit [136060] by inferno@chromium.org
  • 5 edits
    2 adds in trunk

Source/WebCore: Heap-use-after-free in WebCore::RenderLayerModelObject::hasSelfPaintingL

LayoutTests: Heap-use-after-free in WebCore::RenderLayerModelObject::hasSelfPaintingLayer
https://bugs.webkit.org/show_bug.cgi?id=101970

Reviewed by David Hyatt.

  • fast/block/float/float-not-removed-from-pre-block-expected.txt: Added.
  • fast/block/float/float-not-removed-from-pre-block.html: Added.
2:39 PM Changeset in webkit [136059] by pilgrim@chromium.org
  • 7 edits in trunk/Source

[Chromium] Remove pluginsScriptableObject from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=103542

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/WebCore:

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::createScriptInstanceForWidget):

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

  • plugins/PluginViewBase.h:

(PluginViewBase):
(WebCore::PluginViewBase::scriptableObject):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

2:37 PM Changeset in webkit [136058] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[BlackBerry] CookieJarBlackBerry will use document settings for cookiesEnabled
https://bugs.webkit.org/show_bug.cgi?id=103560

Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-11-28
Reviewed by Rob Buis.

PR 253490

Source/WebCore:

CookieJarBlackBerry will now use page settings to check whether
cookie is enabled.

Tested setting/reading cookies on different client cookie settings using
javascript and HTTP. Cookie behaviour is now back to spec.

  • loader/blackberry/CookieJarBlackBerry.cpp:

(WebCore::cookies):
(WebCore::cookieRequestHeaderFieldValue):

Source/WebKit/blackberry:

Syncing platform Websetting's cookieEnabled value with Page->setting's cookieEnabled
value.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):

2:35 PM Changeset in webkit [136057] by pilgrim@chromium.org
  • 12 edits in trunk/Source

[Chromium][Win] Remove ensureFontLoaded from PlatformSupport
https://bugs.webkit.org/show_bug.cgi?id=97696

Reviewed by Adam Barth.

Move ensureFontLoaded() from PlatformSupport to
FontPlatformDataChromiumWin. Part of a refactoring series; see
tracking bug 82948.

Source/WebCore:

  • platform/chromium/PlatformSupport.h:

(PlatformSupport):

  • platform/graphics/chromium/FontCacheChromiumWin.cpp:

(WebCore::fontContainsCharacter):

  • platform/graphics/chromium/FontChromiumWin.cpp:

(WebCore::drawGlyphsWin):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::FontPlatformData::scriptFontProperties):
(WebCore):
(WebCore::FontPlatformData::ensureFontLoaded):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.h:

(FontPlatformData):

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::getGlyphIndices):
(WebCore::fillBMPGlyphs):

  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:

(WebCore::SimpleFontData::platformInit):
(WebCore::SimpleFontData::determinePitch):
(WebCore::SimpleFontData::platformBoundsForGlyph):
(WebCore::SimpleFontData::platformWidthForGlyph):

  • platform/graphics/chromium/UniscribeHelperTextRun.cpp:

(WebCore::UniscribeHelperTextRun::tryToPreloadFont):

  • platform/graphics/skia/SkiaFontWin.cpp:

(WebCore::paintSkiaText):

Source/WebKit/chromium:

  • src/PlatformSupport.cpp:

(WebCore):

2:21 PM Changeset in webkit [136056] by bfulgham@webkit.org
  • 9 edits
    2 adds in trunk

[WinCairo] Crash when requesting favicon.
https://bugs.webkit.org/show_bug.cgi?id=102689

Patch by peavo@outlook.com <peavo@outlook.com> on 2012-11-28
Reviewed by Brent Fulgham.

Source/WebCore:

  • platform/graphics/BitmapImage.h: Made frameCount() method virtual, subclasses made for testing can then override it.
  • platform/graphics/win/ImageCairoWin.cpp:

(WebCore::BitmapImage::getHBITMAPOfSize): Added NULL pointer check.
(WebCore::BitmapImage::drawFrameMatchingSourceSize): Added NULL pointer check.

Source/WebKit2:

  • win/WebKit2CFLite.def: Link fixes.
  • win/WebKit2.def: Link fixes.

Tools:

  • TestWebKitAPI/Tests/WebCore/win: Added.
  • TestWebKitAPI/Tests/WebCore/win/BitmapImage.cpp: Added.

(TestWebKitAPI::BitmapImageTest::BitmapImageTest): Allocate frame in constructor.
(TestWebKitAPI::BitmapImageTest::frameCount): Override frameCount() method.
(TestWebKitAPI::TEST): Added new test.

  • TestWebKitAPI/config.h: Make sure defines are correct for WinCairo.
    • TestWebKitAPI/win/TestWebKitAPI.vcproj: Added new test.
2:14 PM Changeset in webkit [136055] by tony@chromium.org
  • 49 edits in trunk

Move internals.settings.setPageScaleFactor to internals.setPageScaleFactor
https://bugs.webkit.org/show_bug.cgi?id=103559

Reviewed by Jochen Eisinger.

Source/WebCore:

This method doesn't alter the Settings object, so move it to internals.

No new tests, this is a refactor.

  • testing/InternalSettings.cpp: Remove.
  • testing/InternalSettings.h: Remove.
  • testing/InternalSettings.idl: Remove.
  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState): Add reset code.
(WebCore::Internals::setPageScaleFactor): Add method.

  • testing/Internals.h: Add method.
  • testing/Internals.idl: Add method.

LayoutTests:

This method doesn't alter the Settings object, so move it to internals.
Update the tests to call the right version.

  • compositing/geometry/fixed-position-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-composited-page-scale-scroll.html:
  • compositing/geometry/fixed-position-composited-page-scale.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-iframe-composited-page-scale.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
  • compositing/geometry/fixed-position-transform-composited-page-scale.html:
  • compositing/overflow/overflow-scaled-descendant-overlapping.html:
  • compositing/repaint/page-scale-repaint.html:
  • compositing/scaling/tiled-layer-recursion.html:
  • fast/dom/Element/scale-page-bounding-client-rect-in-frame.html:
  • fast/dom/Element/scale-page-bounding-client-rect.html:
  • fast/dom/Element/scale-page-client-rects-in-frame.html:
  • fast/dom/Element/scale-page-client-rects.html:
  • fast/dom/Range/scale-page-bounding-client-rect.html:
  • fast/dom/Range/scale-page-client-rects.html:
  • fast/dom/elementFromPoint-scaled-scrolled.html:
  • fast/dom/iframe-inner-size-scaling.html:
  • fast/dom/window-inner-size-scaling.html:
  • fast/dom/window-scroll-scaling.html:
  • fast/events/scale-and-scroll-body.html:
  • fast/events/scale-and-scroll-iframe-body.html:
  • fast/events/scale-and-scroll-iframe-window.html:
  • fast/events/scale-and-scroll-window.html:
  • fast/events/script-tests/page-scaled-mouse-click-iframe.js:

(iframeLoaded):

  • fast/events/script-tests/page-scaled-mouse-click.js:
  • fast/events/scroll-in-scaled-page-with-overflow-hidden.html:
  • fast/events/touch/page-scaled-touch-gesture-click.html:
  • fast/events/touch/touch-scaled-scrolled.html:
  • fast/frames/frame-set-rotation-hit.html:
  • fast/frames/frame-set-scaling-hit.html:
  • fast/frames/iframe-double-scale-contents.html:
  • fast/repaint/background-scaling.html:
  • fast/repaint/scale-page-shrink.html:
  • fast/text/descent-clip-in-scaled-page-expected.html:
  • fast/text/descent-clip-in-scaled-page.html:
  • fast/transforms/selection-bounds-in-transformed-view.html:
  • inspector/elements/highlight-node-scaled.html:
  • platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaled-document.html:
  • svg/as-image/image-respects-pageScaleFactor-change.html:
  • svg/as-image/image-respects-pageScaleFactor.html:
1:38 PM Changeset in webkit [136054] by Alexandru Chiculita
  • 2 edits in trunk/Source/WebCore

[CSS Regions] Elements using transforms are not repainted correctly when rendered in a region
https://bugs.webkit.org/show_bug.cgi?id=102826

Reviewed by Dave Hyatt.

Follow up update of a comment after the patch was landed by the commit queue in r135921.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

1:30 PM Changeset in webkit [136053] by Christophe Dumez
  • 10 edits in trunk

CSS3 Multicolumn: column-span should accept value 'none' (instead of '1')
https://bugs.webkit.org/show_bug.cgi?id=101462

Reviewed by David Hyatt.

Source/WebCore:

According to the latest CSS3 Multi-column specification:
http://www.w3.org/TR/2011/CR-css3-multicol-20110412/#column-span

column-span should accept values [ none | all ], instead of
[ 1 | all ]. This patch updates WebKit implementation to reflect
this change in the specification. The value 1 is still supported
for compatibility reasons and is mapped to none.

No new tests, already covered by existing tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator ColumnSpan):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

Update expected results for several test cases now that the
default value for column-span property was renamed from 1
to none.

  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
1:24 PM Changeset in webkit [136052] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Chromium TestExpectations minor changes.
https://bugs.webkit.org/show_bug.cgi?id=103148

Unreviewed test expectations changes.

Making some tests flakey rather than actually failing.

  • platform/chromium/TestExpectations:
1:21 PM Changeset in webkit [136051] by eric@webkit.org
  • 5 edits
    2 adds in trunk/Tools

run-perf-tests should have a --profile option for easy profiling
https://bugs.webkit.org/show_bug.cgi?id=99517

Reviewed by Adam Barth.

This is a very basic implementation which works on Mac and Linux
and makes it trivial for anyone to profile a PerformanceTest.

Currently it's not "hard" to profile a PerformanceTest
but lowering the barriers to entry here allows all of us to focus
less on the tools and more on the code.

This also paves the way for adding easy mobile-profiling (e.g. chromium-android)
which is actually "hard", and this option will make much easier.

  • Scripts/webkitpy/common/system/profiler.py: Added.

(ProfilerFactory):
(ProfilerFactory.create_profiler):
(Profiler):
(Profiler.init):
(Profiler.adjusted_environment):
(Profiler.attach_to_pid):
(Profiler.did_stop):
(SingleFileOutputProfiler):
(SingleFileOutputProfiler.init):
(GooglePProf):
(GooglePProf.init):
(GooglePProf.adjusted_environment):
(GooglePProf.did_stop):
(Instruments):
(Instruments.init):
(Instruments.attach_to_pid):

  • Scripts/webkitpy/common/system/profiler_unittest.py: Added.

(ProfilerFactoryTest):
(ProfilerFactoryTest.test_basic):

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

(Driver.init):
(Driver._start):
(Driver.stop):
(Driver.cmd_line):

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest.parse_output):

  • Scripts/webkitpy/performance_tests/perftest_unittest.py:

(MainTest.test_parse_output):
(MainTest.test_parse_output_with_failing_line):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):

1:18 PM Changeset in webkit [136050] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip flaky video test media/W3C/video/readyState/readyState_during_loadedmetadata.html.
https://bugs.webkit.org/show_bug.cgi?id=103442

  • platform/win/TestExpectations:
1:11 PM Changeset in webkit [136049] by oliver@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Make source cache include more information about the function extent.
https://bugs.webkit.org/show_bug.cgi?id=103552

Reviewed by Gavin Barraclough.

Add a bit more information to the source cache.

  • parser/Parser.cpp:

(JSC::::parseFunctionInfo):

Store the function start offset

  • parser/SourceProviderCacheItem.h:

(JSC::SourceProviderCacheItem::SourceProviderCacheItem):
(SourceProviderCacheItem):

Add additional field for the start of the real function string, and re-arrange
fields to avoid growing the struct.

1:04 PM Changeset in webkit [136048] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Windows build fix.

  • win/WebKit2.def:
1:02 PM Changeset in webkit [136047] by commit-queue@webkit.org
  • 8 edits
    3 copies
    7 adds in trunk

Text Autosizing: Clusters should use width of LCA of their text nodes
https://bugs.webkit.org/show_bug.cgi?id=102562

Patch by Anton Vayvod <avayvod@chromium.org> on 2012-11-28
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Many pages set a max-width on their content. So especially for the
RenderView, instead of just taking the width of |cluster| we find
the lowest common ancestor of the first and last descendant text node of
the cluster (i.e. the deepest wrapper block that contains all the text),
and use its width instead.

Tests: fast/text-autosizing/cluster-with-narrow-lca-and-cluster.html

fast/text-autosizing/cluster-with-narrow-lca.html
fast/text-autosizing/cluster-with-wide-lca.html
fast/text-autosizing/list-item-out-of-flow.html
fast/text-autosizing/wide-in-narrow-overflow-scroll.html

  • rendering/TextAutosizer.cpp:

(WebCore::TextAutosizer::processCluster): use text nodes LCA instead of cluster for width calculation
(WebCore::TextAutosizer::isAutosizingContainer): list items that are out of parent list element's flow are valid containers (that therefore become clusters in isAutosizingCluster)
(WebCore::TextAutosizer::findDeepestBlockContainingAllText): searches for LCA of text nodes ignoring descendant clusters
(WebCore::TextAutosizer::findFirstTextLeafNotInCluster): searches for the first or the last (depending on specified direction) text leaf node in-order ignoring any descendant clusters

  • rendering/TextAutosizer.h: new private methods declarations and an enum for tree traversal direction.

LayoutTests:

Many pages set a max-width on their content. So especially for the
RenderView, instead of just taking the width of |cluster| we find
the lowest common ancestor of the first and last descendant text node of
the cluster (i.e. the deepest wrapper block that contains all the text),
and use its width instead.
Had to update a couple of existing tests since the actual width for font
size multiplier calculation has been changed by the patch.

  • fast/text-autosizing/cluster-wide-in-narrow-expected.html:
  • fast/text-autosizing/cluster-wide-in-narrow.html:
  • fast/text-autosizing/cluster-with-narrow-lca-and-cluster-expected.html: Added.
  • fast/text-autosizing/cluster-with-narrow-lca-and-cluster.html: Added.
  • fast/text-autosizing/cluster-with-narrow-lca-expected.html: Added.
  • fast/text-autosizing/cluster-with-narrow-lca.html: Added.
  • fast/text-autosizing/cluster-with-wide-lca-expected.html: Added.
  • fast/text-autosizing/cluster-with-wide-lca.html: Added.
  • fast/text-autosizing/em-margin-border-padding-expected.html:
  • fast/text-autosizing/em-margin-border-padding.html:
  • fast/text-autosizing/list-item-out-of-flow-expected.html: Added.
  • fast/text-autosizing/list-item-out-of-flow.html: Added.
  • fast/text-autosizing/wide-child-expected.html:
  • fast/text-autosizing/wide-child.html:
  • fast/text-autosizing/wide-in-narrow-overflow-scroll-expected.html: Added.
  • fast/text-autosizing/wide-in-narrow-overflow-scroll.html: Added.
12:59 PM Changeset in webkit [136046] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

cleanup: Change some code to be cleaner, more readable and style conforming
https://bugs.webkit.org/show_bug.cgi?id=103543

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-11-28
Reviewed by Antonio Gomes.

Use more appropriate function name and more meaningful variable names to make the code cleaner.
This is covered by existing tests. This does not make any behavioural changes, so no new tests.

  • page/EventHandler.cpp:

(WebCore::closestScrollableNodeInDocumentIfPossible):
(WebCore::EventHandler::handleWheelEvent):

12:39 PM Changeset in webkit [136045] by Alexandru Chiculita
  • 4 edits
    4 adds in trunk

[CSS Regions] Crash when using hover and first-letter inside a flow-thread
https://bugs.webkit.org/show_bug.cgi?id=102957

Reviewed by David Hyatt.

Source/WebCore:

Some RenderObjects use a different path when they are destroyed. That's because they are dynamically
added just before layout happens and their parent is usually not their actual owner. In those cases the parent
will remove the object from the tree, but it's actually the owner that will destroy the object and all its
children.

RenderFlowThread maintains a RenderBoxRegionInfo object for each RenderObject that is rendered inside the
flow-thread. When the RenderObject is removed from the RenderFlowThread, the associated RenderBoxRegionInfo object
also needs to be removed.

In these special cases (list-marker, first-letter), the object itself was removed from the RenderFlowThread,
but its children were still left in the flow-thread. When the these special objects were later destroyed,
they will remove their own children. Removing their children means it will try to remove them from the
associated RenderFlowThread. However, in this cases there would be no link back to the parent flow-thread,
as the tree is now detached from the enclosing RenderFlowThread.

Added code that recursively removes the whole children tree from the RenderFlowThread when the root is removed.

Tests: fast/regions/firstletter-inside-flowthread.html

fast/regions/listmarker-inside-flowthread.html

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::willBeRemovedFromTree):
(WebCore::RenderObject::removeFromRenderFlowThread):
(WebCore):
(WebCore::RenderObject::removeFromRenderFlowThreadRecursive):

  • rendering/RenderObject.h:

(RenderObject):

LayoutTests:

Added CSS Regions tests for the firstLetter and listMarker render objects that use
different destroy paths in the code.

  • fast/regions/firstletter-inside-flowthread-expected.html: Added.
  • fast/regions/firstletter-inside-flowthread.html: Added.
  • fast/regions/listmarker-inside-flowthread-expected.html: Added.
  • fast/regions/listmarker-inside-flowthread.html: Added.
12:32 PM Changeset in webkit [136044] by pfeldman@chromium.org
  • 13 edits in branches/chromium/1312

Merge 135720 - Web Inspector: object preview does not render node id, className; logs too many functions for jQuery.
https://bugs.webkit.org/show_bug.cgi?id=103222

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • Added node class name and id into the preview
  • Now keeps track of properties separately from array indexes.
  • inspector/InjectedScriptSource.js:

(.):

  • inspector/InspectorOverlayPage.html:
  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):
(WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreview):

LayoutTests:

  • inspector/console/command-line-api-expected.txt:
  • inspector/console/command-line-api-inspect-expected.txt:
  • inspector/console/console-dir-expected.txt:
  • inspector/console/console-format-collections-expected.txt:
  • inspector/console/console-format-expected.txt:
  • inspector/elements/event-listener-sidebar-expected.txt:
  • inspector/elements/event-listeners-about-blank-expected.txt:
  • platform/chromium-linux/inspector/console/console-format-collections-expected.txt: Removed.
  • platform/chromium/inspector/console/command-line-api-inspect-expected.txt:
  • platform/chromium/inspector/console/console-dir-expected.txt:
  • platform/chromium/inspector/console/console-format-collections-expected.txt:

TBR=pfeldman@chromium.org
BUG=135720
Review URL: https://chromiumcodereview.appspot.com/11434008

12:30 PM Changeset in webkit [136043] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebCore

Windows build fix after r134704.

  • WebCore.vcproj/WebCore.vcproj:
12:20 PM Changeset in webkit [136042] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, fix duplicate expectation.

  • platform/efl-wk1/TestExpectations:
12:13 PM Changeset in webkit [136041] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

LayoutTests/fast/table/css-table-max-height.html failing on Qt Linux
https://bugs.webkit.org/show_bug.cgi?id=103453

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-11-28
Reviewed by Julien Chaffraix.

The testcase failure was due to the difference in the default line-height value
used by Qt-linux port from other ports.

  • fast/table/css-table-max-height.html:
  • platform/qt/TestExpectations:
12:12 PM Changeset in webkit [136040] by pfeldman@chromium.org
  • 8 edits
    1 copy in branches/chromium/1312

Merge 134053 - Web Inspector: wrong output for empty object {}
https://bugs.webkit.org/show_bug.cgi?id=101356

Reviewed by Vsevolod Vlasov.

Changed preview formatting to iterate over enumerable properties only + visit the prototypes.

Source/WebCore:

  • inspector/InjectedScriptSource.js:

(.):

  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):

LayoutTests:

  • inspector/console/command-line-api-expected.txt:
  • inspector/console/command-line-api-inspect-expected.txt:
  • inspector/console/console-format-collections-expected.txt:
  • inspector/console/console-format-expected.txt:
  • platform/chromium/inspector/console/console-format-collections-expected.txt:

TBR=pfeldman@chromium.org
BUG=162570
Review URL: https://chromiumcodereview.appspot.com/11415185

12:05 PM Changeset in webkit [136039] by Alexandru Chiculita
  • 3 edits
    2 adds in trunk

[CSS Regions] Auto-height regions will not calculate the height correctly when the content changes dynamically
https://bugs.webkit.org/show_bug.cgi?id=102954

Reviewed by David Hyatt.

Source/WebCore:

Whenever the flow changes, we need to reset the region computed auto-heights.
However, when we reset the region heights to "auto" or "un-computed", we also need to make
sure that all the region breaks are counted again, so that we split regions correctly during the new layout.
I've reused the m_regionsInvalidated property to force the flow do a complete layout.

Test: fast/regions/autoheight-dynamic-update.html

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::resetRegionsOverrideLogicalContentHeight):

LayoutTests:

Added test to check for auto-height region size update after an element is added to the flow.
In this case the first region will need to resize to accommodate the size of the added elements.

  • fast/regions/autoheight-dynamic-update-expected.html: Added.
  • fast/regions/autoheight-dynamic-update.html: Added.
12:00 PM Changeset in webkit [136038] by scherkus@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed. Fixing lint errors introduced in r136030.

  • platform/chromium/TestExpectations:
11:55 AM Changeset in webkit [136037] by Alexandru Chiculita
  • 3 edits
    2 adds in trunk

[CSS Regions] InRenderFlowThread returns false in the first setStyle
https://bugs.webkit.org/show_bug.cgi?id=102839

Reviewed by Dave Hyatt.

Source/WebCore:

Some render objects use the "inRenderFlowThread" during the first styleWillChange/styleDidChange.
The first call to these methods comes from NodeRendererFactory::createRenderer. That happens before the RenderObject is
attached to the parent renderer, meaning that inRenderFlowThread is false. That means a RenderLayerBacking will be
created for renderers inside the RenderFlowThread, but composited layers inside the RenderFlowThread are not supported yet.
https://bugs.webkit.org/show_bug.cgi?id=84900

Test: fast/repaint/region-painting-composited-element.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRendererFactory::createRenderer):
Added code to propagate the inRenderFlowThread flag from the parent node before the style is set for the first time.

LayoutTests:

Added test to check that the composited elements added to a RenderFlowThread are painted correctly.

  • fast/repaint/region-painting-composited-element-expected.html: Added.
  • fast/repaint/region-painting-composited-element.html: Added.
11:54 AM Changeset in webkit [136036] by zandobersek@gmail.com
  • 3 edits in trunk/Tools

Remove deprecated logging usage from QueueEngine
https://bugs.webkit.org/show_bug.cgi?id=103532

Reviewed by Dirk Pranke.

Replace usage of deprecated logging in webkitpy.tool.bot.queueengine with
logging through the Logger object. The unit test is modified to reflect
these changes.

After these changes the deprecated logging (i.e. logging to stderr) is not
used anymore through webkitpy and can be removed.

  • Scripts/webkitpy/tool/bot/queueengine.py:

(QueueEngine.exit_after_handled_error):
(QueueEngine.run):
(QueueEngine._stopping):
(QueueEngine._sleep):

  • Scripts/webkitpy/tool/bot/queueengine_unittest.py:

(QueueEngineTest._run_engine):

11:47 AM Changeset in webkit [136035] by tony@chromium.org
  • 23 edits in trunk/LayoutTests

Unreviewed, land updated Mac results after track limiter removal.

  • fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
  • fast/forms/range/input-appearance-range-expected.txt:
  • fast/forms/range/slider-padding-expected.txt:
  • fast/forms/range/slider-thumb-stylability-expected.txt:
  • fast/multicol/client-rects-expected.txt:
  • fast/repaint/slider-thumb-drag-release-expected.txt:
  • fast/repaint/slider-thumb-float-expected.txt:
  • platform/mac/TestExpectations:
  • platform/mac/fast/forms/box-shadow-override-expected.txt:
  • platform/mac/fast/forms/input-appearance-height-expected.txt:
  • platform/mac/fast/forms/range/range-thumb-height-percentage-expected.txt:
  • platform/mac/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/mac/media/audio-controls-rendering-expected.txt:
  • platform/mac/media/controls-after-reload-expected.txt:
  • platform/mac/media/controls-strict-expected.txt:
  • platform/mac/media/controls-styling-strict-expected.txt:
  • platform/mac/media/controls-without-preload-expected.txt:
  • platform/mac/media/video-controls-rendering-expected.txt:
  • platform/mac/media/video-display-toggle-expected.txt:
  • platform/mac/media/video-no-audio-expected.txt:
  • platform/mac/media/video-playing-and-pause-expected.txt:
11:43 AM Changeset in webkit [136034] by mitz@apple.com
  • 3 edits
    2 adds in trunk

<rdar://problem/12645085> REGRESSION (r130851): With kerning enabled, a white-space: pre-wrap inline starting with tab+space has the wrong width
https://bugs.webkit.org/show_bug.cgi?id=103541

Reviewed by Anders Carlsson.

Source/WebCore:

Test: fast/text/tab-with-kerning.html

When kerning is enabled, words are measured with their trailing space, then the width of a
space is subtracted. The logic to do this was incorrectly being invoked even when the
trailing whitespace character was a tab or a newline.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::nextLineBreak): Changed to check only for the space
character, not other space-like characters.

LayoutTests:

  • fast/text/tab-with-kerning-expected.html: Added.
  • fast/text/tab-with-kerning.html: Added.
11:37 AM Changeset in webkit [136033] by Beth Dakin
  • 2 edits in trunk/Source/WebKit/mac

https://bugs.webkit.org/show_bug.cgi?id=102970
[WK1] REGRESSION (r129545): Main frame doesn't rubberband unless
WebFrameLoadDelegate implements -webView:didFirstLayoutInFrame:

Reviewed by Sam Weinig.

We should always register for DidFirstLayout in WK1 since we do work
at that time besides just calling the delegate function.

  • WebView/WebView.mm:

(-[WebView _cacheFrameLoadDelegateImplementations]):

11:30 AM Changeset in webkit [136032] by ericu@chromium.org
  • 3 edits
    1 add in trunk/Source/WebKit/chromium

[chromium] Add unit tests for ChromeClientImpl::getNavigationPolicy
https://bugs.webkit.org/show_bug.cgi?id=102424

Reviewed by Adam Barth.

This tests a bunch of basic scenarios regarding what will produce a
popup, a new foreground/background tab, or a new window.

  • WebKit.gypi: Added test file.
  • src/WebViewImpl.h:

(WebViewImpl): Added friend declaration for setCurrentInputEventForTest.

  • tests/ChromeClientImplTest.cpp: Added.
11:30 AM Changeset in webkit [136031] by Nate Chapin
  • 17 edits in trunk

Move empty loading to DocumentLoader, simplify FrameLoader::init()
https://bugs.webkit.org/show_bug.cgi?id=101512

Reviewed by Adam Barth.

Source/WebCore:

No new tests, though several outputs changed because we no longer send resource

load callbacks for empty loads.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::DocumentLoader):
(WebCore::DocumentLoader::~DocumentLoader):
(WebCore::DocumentLoader::finishedLoading):
(WebCore::DocumentLoader::commitData):
(WebCore::DocumentLoader::clearMainResourceLoader):
(WebCore::DocumentLoader::isLoadingInAPISense):
(WebCore::DocumentLoader::documentURL):
(WebCore::DocumentLoader::isLoadingMainResource):
(WebCore::DocumentLoader::maybeLoadEmpty):
(WebCore):
(WebCore::DocumentLoader::startLoadingMainResource): Handle empty main resource

loads directly here.

  • loader/DocumentLoader.h:

(WebCore::DocumentLoader::serverRedirectSourceForHistory):
(DocumentLoader):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader): Initialize some variables whose values

were previously being reset in init(). Given that the FrameLoader is in
an inconsistent state before init() is called anyway, there doesn't seem
to be a disadvantage to just initializing them to their post-init() values.

(WebCore::FrameLoader::init): Just call startLoadingMainResource(), instead of

doing a bunch of direct calls to functions FrameLoader shouldn't know about.

  • loader/FrameLoaderStateMachine.cpp:

(WebCore::FrameLoaderStateMachine::FrameLoaderStateMachine):

  • loader/FrameLoaderStateMachine.h:
  • loader/MainResourceLoader.cpp: Throughout, remove the concept of an empty load.

(WebCore::MainResourceLoader::loadNow): This only returned true when an empty

load got deferred, which won't happen now. Return void and always treat
as returning false.

  • loader/MainResourceLoader.h:

(MainResourceLoader):

Tools:

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::updateForCommittedLoad): This function doesn't play nicely with empty urls and incorrectly

interprets them as a non-empty load. This change is required for

http/tests/navigation/new-window-redirect-history.html to continue to pass in chromium.

  • TestWebKitAPI/Tests/WebKit2/AboutBlankLoad.cpp: This test relies on a callback that no longer

is sent for about:blank loads. Hook into didFinishLoadForFrame() instead.

(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):

LayoutTests:

Don't expect resource load callbacks for empty loads.

  • http/tests/inspector/network/network-iframe-load-and-delete.html:
  • http/tests/loading/redirect-methods-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt:
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt:
11:16 AM Changeset in webkit [136030] by scherkus@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed. Mark http/tests/media/video-buffered-range-contains-currentTime.html as requiring an image rebaseline.

  • platform/chromium/TestExpectations:
11:11 AM Changeset in webkit [136029] by aelias@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Handle pinch correctly in slow-scrolling area
https://bugs.webkit.org/show_bug.cgi?id=102740

Reviewed by James Robinson.

With the nonmodal gesture event model, pinch zoom gestures involve
interleaved pinch and scroll events. This caused a bug on slow-scroll
areas: the scroll events were sent to the main thread and
the pinch events were handled in the impl thread.

This patch makes it so that scroll events are always handled in the impl
thread if a pinch is active.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::WebCompositorInputHandlerImpl):
(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):

  • src/WebCompositorInputHandlerImpl.h:
  • tests/WebCompositorInputHandlerImplTest.cpp:

(WebKit::TEST_F):
(WebKit):

11:01 AM Changeset in webkit [136028] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebCore

Merged r135992. <rdar://problem/12767522>

11:00 AM Changeset in webkit [136027] by tony@chromium.org
  • 41 edits
    1 copy
    3 moves
    7 adds
    10 deletes in trunk/LayoutTests

Unreviewed, land updated Chromium results after track limiter removal.

  • fast/forms/range/range-thumb-height-percentage-expected.txt:
  • platform/chromium-mac-lion/media/video-empty-source-expected.png:
  • platform/chromium-mac-snowleopard/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/range/slider-thumb-stylability-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/fast/repaint/slider-thumb-float-expected.txt: Removed.
  • platform/chromium-mac-snowleopard/media/video-empty-source-expected.png:
  • platform/chromium-mac/fast/dom/HTMLInputElement/input-slider-update-expected.txt: Added.
  • platform/chromium-mac/fast/forms/box-shadow-override-expected.txt:
  • platform/chromium-mac/fast/forms/input-appearance-height-expected.txt:
  • platform/chromium-mac/fast/forms/range/input-appearance-range-expected.txt: Added.
  • platform/chromium-mac/fast/forms/range/range-thumb-height-percentage-expected.txt: Renamed from LayoutTests/platform/chromium/fast/forms/range/range-thumb-height-percentage-expected.txt.
  • platform/chromium-mac/fast/forms/range/slider-padding-expected.txt: Added.
  • platform/chromium-mac/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/chromium-mac/fast/forms/range/slider-thumb-stylability-expected.txt:
  • platform/chromium-mac/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/chromium-mac/fast/layers/video-layer-expected.txt:
  • platform/chromium-mac/fast/repaint/slider-thumb-drag-release-expected.txt: Added.
  • platform/chromium-mac/fast/repaint/slider-thumb-float-expected.txt: Removed.
  • platform/chromium-mac/media/audio-controls-rendering-expected.txt:
  • platform/chromium-mac/media/audio-repaint-expected.txt:
  • platform/chromium-mac/media/controls-after-reload-expected.txt:
  • platform/chromium-mac/media/controls-strict-expected.txt:
  • platform/chromium-mac/media/controls-styling-expected.txt:
  • platform/chromium-mac/media/controls-styling-strict-expected.txt:
  • platform/chromium-mac/media/controls-without-preload-expected.txt:
  • platform/chromium-mac/media/media-controls-clone-expected.txt:
  • platform/chromium-mac/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-mac/media/video-controls-rendering-expected.txt:
  • platform/chromium-mac/media/video-display-toggle-expected.txt:
  • platform/chromium-mac/media/video-empty-source-expected.png:
  • platform/chromium-mac/media/video-empty-source-expected.txt:
  • platform/chromium-mac/media/video-no-audio-expected.txt:
  • platform/chromium-mac/media/video-playing-and-pause-expected.txt:
  • platform/chromium-mac/media/video-zoom-controls-expected.txt:
  • platform/chromium-mac/platform/chromium/virtual/gpu/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/chromium-win-xp/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Removed.
  • platform/chromium-win-xp/fast/forms/range/slider-thumb-stylability-expected.txt: Removed.
  • platform/chromium-win-xp/fast/repaint/slider-thumb-float-expected.txt: Removed.
  • platform/chromium-win/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • platform/chromium-win/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
  • platform/chromium-win/fast/forms/box-shadow-override-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-height-expected.txt:
  • platform/chromium-win/fast/forms/range/input-appearance-range-expected.txt:
  • platform/chromium-win/fast/forms/range/range-thumb-height-percentage-expected.txt:
  • platform/chromium-win/fast/forms/range/slider-padding-expected.txt:
  • platform/chromium-win/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/chromium-win/fast/forms/range/slider-thumb-stylability-expected.txt:
  • platform/chromium-win/fast/multicol/client-rects-expected.txt:
  • platform/chromium-win/fast/repaint/slider-thumb-drag-release-expected.txt:
  • platform/chromium-win/fast/repaint/slider-thumb-float-expected.txt:
  • platform/chromium-win/media/video-empty-source-expected.txt:
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt.
  • platform/chromium/fast/forms/range/slider-thumb-shared-style-expected.txt: Removed.
  • platform/chromium/fast/multicol/client-rects-expected.txt: Added.
  • platform/chromium/fast/repaint/slider-thumb-float-expected.txt: Renamed from LayoutTests/platform/mac/fast/repaint/slider-thumb-float-expected.txt.
  • platform/mac/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Removed.
  • platform/mac/fast/forms/range/slider-thumb-stylability-expected.txt: Removed.
  • platform/win-future/fast/forms/range/range-thumb-height-percentage-expected.txt: Copied from LayoutTests/fast/forms/range/range-thumb-height-percentage-expected.txt.
10:55 AM Changeset in webkit [136026] by commit-queue@webkit.org
  • 5 edits in trunk

Calling .removeCue() for a cue that was never added should raise a NOT_FOUND_ERR
https://bugs.webkit.org/show_bug.cgi?id=103412

Patch by Antoine Quint <Antoine Quint> on 2012-11-28
Reviewed by Eric Carlson.

Source/WebCore:

Updating the .removeCue() implementation to match the latest spec. This means we now
raise a NOT_FOUND_ERR exception when trying to remove a cue that wasn't present in the
cue list instead of a INVALID_STATE_ERR exception like the spec used to mandate.

  • html/track/TextTrack.cpp:

(WebCore::TextTrack::removeCue):

LayoutTests:

Updating the .removeCue() test checking on the exception to be NOT_FOUND_ERR instead
of INVALID_STATE_ERR.

  • media/track/track-add-remove-cue-expected.txt:
  • media/track/track-add-remove-cue.html:
10:55 AM Changeset in webkit [136025] by Lucas Forschler
  • 6 edits in branches/safari-536.28-branch/Source

Merged r119546. <rdar://problem/12765110>

10:29 AM Changeset in webkit [136024] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test svg/animations/mpath-remove-from-dependents-on-delete-crash.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=103375

Unreviewed test update.

According to the original bug, at least 4 iterations were required to
crash (without the fix). To make the test faster, I've reduced the max
iteration count to 5, rather than 10. This may not fix the timeoout
issue because it might be a real timeout, not just a slow test.

  • svg/animations/mpath-remove-from-dependents-on-delete-crash.html:
10:21 AM Changeset in webkit [136023] by senorblanco@chromium.org
  • 2 edits in branches/chromium/1312/Source/WebCore/platform/graphics

Merge 135809 - [Chromium] Shared graphics context should only pushGroupMarker() once
https://bugs.webkit.org/show_bug.cgi?id=103082

Reviewed by James Robinson.

GraphicsContext3D's pushGroupMarkerEXT() is being called every time
an ImageBuffer is created, leading to unlimited memory growth, since
they share a common GraphicsContext3D. It should be called only once,
on context creation.

See also http://crbug.com/160411.

Tested by manually checking the memory usage in Chrome's TaskManager.
(Sorry, I can't think of a way to test this automatically.)

  • platform/graphics/gpu/SharedGraphicsContext3D.cpp:

(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::createAcceleratedCanvas):

TBR=senorblanco@chromium.org
Review URL: https://codereview.chromium.org/11308248

9:53 AM Changeset in webkit [136022] by Lucas Forschler
  • 1 copy in tags/Safari-536.27.4/safari-536.27-branch

New Tag.

9:53 AM Changeset in webkit [136021] by Lucas Forschler
  • 4 edits in branches/safari-536.27-branch/Source

Versioning.

9:48 AM Changeset in webkit [136020] by Lucas Forschler
  • 1 copy in tags/Safari-536.27.4

New Tag.

9:46 AM Changeset in webkit [136019] by Lucas Forschler
  • 4 edits in branches/safari-536.27-branch/Source

Versioning.

9:44 AM Changeset in webkit [136018] by Lucas Forschler
  • 2 edits in branches/safari-536.27-branch/Source/WebCore

Merged r135992 -> <rdar://problem/12767505>

8:58 AM Changeset in webkit [136017] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt][Win] Enable usage of QTWEBKIT_PLUGIN_PATH.
https://bugs.webkit.org/show_bug.cgi?id=103529

This patch enables the same behavior for Windows
as it is currently implemented for all other operating
systems supported by Qt.
Directories listed in the environment variable
QTWEBKIT_PLUGIN_PATH are being searched for additional
plugins.
The only difference is that directories on Windows
need to be separated by a semicolon instead of a colon.

Reviewed by Kenneth Rohde Christiansen.

  • plugins/win/PluginDatabaseWin.cpp:

(WebCore):
(WebCore::addQtWebKitPluginPath):
(WebCore::PluginDatabase::defaultPluginDirectories):

8:54 AM Changeset in webkit [136016] by Christophe Dumez
  • 2 edits in trunk/Source/WebKit2

Regression(r135962): m_pendingSyncBackingStores needs to be cleared in LayerTreeRenderer::purgeGLResources()
https://bugs.webkit.org/show_bug.cgi?id=103527

Reviewed by Jocelyn Turcotte.

Make sure m_pendingSyncBackingStores is cleared in
LayerTreeRenderer::purgeGLResources() to avoid trying to assign
backing store to layers after everything has been invalidated.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::purgeGLResources):

8:50 AM Changeset in webkit [136015] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

[v8] 4% regression in dom_traverse tests
https://bugs.webkit.org/show_bug.cgi?id=102858

Unreviewed.

This patch is a manual rollout of
http://trac.webkit.org/changeset/134729. We can't do a mechanical
rollout because V8DOMWrapper::getCachedWrapper no longer exists.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

8:41 AM Changeset in webkit [136014] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Removed extra definition of GLXContext.
https://bugs.webkit.org/show_bug.cgi?id=103500

Patch by Denis Nomiyama <d.nomiyama@samsung.com> on 2012-11-28
Reviewed by Martin Robinson.

A minor cleanup to remove a spare definition of GLXContext in GLContextGLX.h.

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

  • platform/graphics/glx/GLContextGLX.h:
8:28 AM Changeset in webkit [136013] by commit-queue@webkit.org
  • 13 edits
    1 copy
    1 add in trunk

[chromium] Allow plugins to opt-in to receive synthetic mouse events out of touch events.
https://bugs.webkit.org/show_bug.cgi?id=103092

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-11-28
Reviewed by Tony Chang.

Source/WebKit/chromium:

A plugin can now request to receive raw touch events, or to receive mouse events synthesized
from the touch events, or to not receive any touch events at all.

  • public/WebPluginContainer.h:

(WebPluginContainer):

  • src/WebInputEventConversion.cpp:

(WebKit::updateWebMouseEventFromWebCoreMouseEvent):
(WebKit::WebMouseEventBuilder::WebMouseEventBuilder):
(WebKit):

  • src/WebInputEventConversion.h:

(WebMouseEventBuilder):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::setIsAcceptingTouchEvents):
(WebKit):
(WebKit::WebPluginContainerImpl::requestTouchEventType):
(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

  • src/WebPluginContainerImpl.h:

(WebPluginContainerImpl):

Tools:

Update the test web-plugin to be able to opt-in to receive synthesized mouse events created
from touch events.

  • DumpRenderTree/chromium/TestWebPlugin.cpp:

(parseTouchEventRequestType):
(TestWebPlugin::TestWebPlugin):
(TestWebPlugin::initialize):

  • DumpRenderTree/chromium/TestWebPlugin.h:

(TestWebPlugin):

LayoutTests:

Add test for synthesized mouse events from touch (and update existing tests).

  • platform/chromium/plugins/touch-events-details.html:
  • platform/chromium/plugins/touch-events-synthesized-expected.txt: Added.
  • platform/chromium/plugins/touch-events-synthesized.html: Copied from LayoutTests/platform/chromium/plugins/touch-events.html.
  • platform/chromium/plugins/touch-events.html:
  • platform/chromium/plugins/transformed-events.html:
8:06 AM Changeset in webkit [136012] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Fix gesture scrolling when the target-element of scroll-begin is removed
https://bugs.webkit.org/show_bug.cgi?id=103355

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-11-28
Reviewed by Antonio Gomes.

Source/WebCore:

When a touch-scroll starts, the node under the touch-point gets latched, and
subsequent scroll-update events are dispatched to that node. But if the node is
removed while the gesture event is in progress (e.g. in a dynamically updated
list), then the scrolling stops, although there are enough elements to still
enable scrolling. So instead of latching on to the node immediately under the
touch point, latch on to the scrollable node under the touch point.

Test: fast/events/touch/gesture/touch-gesture-scroll-remove-node.html

  • page/EventHandler.cpp:

(WebCore::getClosestScrollableNodeInDocumentIfPossible):
(WebCore):
(WebCore::EventHandler::handleWheelEvent):

LayoutTests:

Added a test that starts a touch-scroll, removes the initial element under the
touch-point, and scrolls some more, to test that the scrolling happens correctly
after the element is removed.

  • fast/events/touch/gesture/touch-gesture-scroll-remove-node-expected.txt: Added.
  • fast/events/touch/gesture/touch-gesture-scroll-remove-node.html: Added.
8:05 AM Changeset in webkit [136011] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[EFL][WK2] Add support for PlatformWebView::simulateSpacebarKeyPress() in TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=103123

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-11-28
Reviewed by Laszlo Gombos.

Add support for PlatformWebView::simulateSpacebarKeyPress().
This functionality is needed by WebKit2 API test MouseMoveAfterCrash
which is going to be unskipped in bug #103252.

  • TestWebKitAPI/efl/PlatformUtilities.cpp:

(TestWebKitAPI::Util::sleep):

  • TestWebKitAPI/efl/PlatformWebView.cpp: Use usleep() instead of

sleep().
(TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
(TestWebKitAPI):

8:03 AM Changeset in webkit [136010] by Philippe Normand
  • 2 edits in trunk/Source/WebCore

Fix .libs/libwebkitgtk-3.0.so: undefined reference to `WebCore::validationMessageBadInputForNumberText().
https://bugs.webkit.org/show_bug.cgi?id=103509

Patch by Anton Obzhirov <Anton Obzhirov> on 2012-11-28
Reviewed by Philippe Normand.

GTK build fix after r136001.

  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore::validationMessageBadInputForNumberText):
(WebCore):

6:51 AM Changeset in webkit [136009] by Christophe Dumez
  • 3 edits in trunk/Source/WebKit2

Regression(r135962): ASSERTION FAILED: !m_pedningSyncBackingStores.contains(layer)
https://bugs.webkit.org/show_bug.cgi?id=103498

Reviewed by Kenneth Rohde Christiansen.

We hit the !m_pedningSyncBackingStores.contains(layer) assertion
in LayerTreeRenderer when 2 asynchronous backing store operations
are pending. The current code checks if the layer already has a
backing store in its guard but this is insufficient as it is not
checking the m_pendingSyncBackingStores hash for pending backing
store changes.

In this patch, we improve the guards in createBackingStoreIfNeeded()
and removeBackingStoreIfNeeded() to check not only if the layer has
already a backing store but also check m_pendingSyncBackingStores
for pending changes. This is safer and it allows for optimizations
in the cases where we have both a removal and a creation pending.
In those cases, we can simply cancel the pending operation instead
of queueing a new one.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::getBackingStore):
(WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
6:42 AM Changeset in webkit [136008] by dgrogan@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

IndexedDB: Remove setVersion from WK API
https://bugs.webkit.org/show_bug.cgi?id=103456

Reviewed by Darin Fisher.

These are the last vestiges of this ancient API. The bulk of the
removal was done in bug 94972.

  • public/WebIDBCallbacks.h:
  • public/WebIDBDatabase.h:
6:38 AM Changeset in webkit [136007] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL][WK2] add flaky results after r135935
https://bugs.webkit.org/show_bug.cgi?id=103514

Unreviewed gardening: add flaky results after r135935 enabled
loads of reftests. Also move the existing flaky results from efl
to efl-wk2 since this does not concern WK1.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-28

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
6:38 AM Changeset in webkit [136006] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Use mutex locker in wakeUp() to ensure thread-safety.
https://bugs.webkit.org/show_bug.cgi?id=101132

Patch by Byungwoo Lee <bw80.lee@samsung.com> on 2012-11-28
Reviewed by Gyuyoung Kim.

Add mutex locker for the ecore pipe to ensure thread-safety of
RunLoop::wakeUp().

RunLoop::wakeUp() can be called by multiple thread. It uses
ecore_pipe_write() function but the function is not thread-safe.

  • platform/RunLoop.h:

(RunLoop):

  • platform/efl/RunLoopEfl.cpp:

(WebCore::RunLoop::wakeUp):

6:23 AM Changeset in webkit [136005] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[EFL] Refactor theme to choose whether to support foreground color of selection
https://bugs.webkit.org/show_bug.cgi?id=102037

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-28
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

If foreground selection color is supported, selected text is painted to
SelectionForegroundColor instead of text color. If not, text can be painted
to text color.

However, EFL port does not have a way to disable support of foreground
selection color. So this patch refactors color classes of theme from
active and inactive to foreground and background in order to disable support
of foreground selection color when foreground color class is not specified.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::fillColorsFromEdjeClass):
Returned false without error message when colorClass is not specified.
(WebCore::RenderThemeEfl::setColorFromThemeClass):
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::supportsSelectionForegroundColors):
(WebCore):

  • platform/efl/RenderThemeEfl.h:

(RenderThemeEfl):

Source/WebKit/efl:

  • DefaultTheme/default.edc:

Refactored color classes from active/inactive to foreground/background.

6:12 AM Changeset in webkit [136004] by commit-queue@webkit.org
  • 5 edits in trunk/Tools

Minor cleanup in TestInvocation
https://bugs.webkit.org/show_bug.cgi?id=103512

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-28
Reviewed by Kenneth Rohde Christiansen.

Remove a function declaration that is not defined and not used.
Fix spelling error in m_webProcessIsUnresponsive.

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::TestInvocation):
(WTR::TestInvocation::invoke):

  • WebKitTestRunner/TestInvocation.h:

(TestInvocation):

  • WebKitTestRunner/cairo/TestInvocationCairo.cpp:

(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):

  • WebKitTestRunner/qt/TestInvocationQt.cpp:

(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):

6:05 AM Changeset in webkit [136003] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

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

  • DEPS:
5:44 AM Changeset in webkit [136002] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

Move childrenAffectedBy bits from RenderStyle to Element
https://bugs.webkit.org/show_bug.cgi?id=101448

Unreviewed buildfix.

To use renderStyle() on some Macs we need to include NodeRenderStyle.h.

  • dom/ContainerNode.cpp:
5:09 AM Changeset in webkit [136001] by allan.jensen@digia.com
  • 17 edits
    2 adds in trunk

Move childrenAffectedBy bits from RenderStyle to Element
https://bugs.webkit.org/show_bug.cgi?id=101448
https://bugs.webkit.org/show_bug.cgi?id=98021

Source/WebCore:

Reviewed by Antti Koivisto.

Moves facts observed about restyling dependencies out of RenderStyle and
into RareData for Node and Element. This also enables further cleanup
in related code that tried to deal with problems caused with the placement
of the data.

Test: fast/css/nth-child-not-in-rightmost.html

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkSelector):
(WebCore::SelectorChecker::checkOneSelector):

  • css/SiblingTraversalStrategies.h:

(WebCore::DOMSiblingTraversalStrategy::countElementsBefore):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::sortAndTransferMatchedRules):
(WebCore::StyleResolver::canShareStyleWithElement):
(WebCore::parentElementPreventsSharing):
(WebCore::StyleResolver::locateSharedStyle):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::setActive):
(WebCore::ContainerNode::setHovered):

  • dom/Element.cpp:

(WebCore::Element::detach):
(WebCore::Element::recalcStyle):
(WebCore::checkForEmptyStyleChange):
(WebCore::checkForSiblingStyleChanges):
(WebCore::Element::setChildrenAffectedByHover):
(WebCore::Element::setChildrenAffectedByActive):
(WebCore::Element::setChildrenAffectedByDrag):
(WebCore::Element::setChildrenAffectedByFirstChildRules):
(WebCore::Element::setChildrenAffectedByLastChildRules):
(WebCore::Element::setChildrenAffectedByDirectAdjacentRules):
(WebCore::Element::setChildrenAffectedByForwardPositionalRules):
(WebCore::Element::setChildrenAffectedByBackwardPositionalRules):
(WebCore::Element::setChildIndex):
(WebCore::Element::rareDataStyleAffectedByEmpty):
(WebCore::Element::rareDataChildrenAffectedByHover):
(WebCore::Element::rareDataChildrenAffectedByActive):
(WebCore::Element::rareDataChildrenAffectedByDrag):
(WebCore::Element::rareDataChildrenAffectedByFirstChildRules):
(WebCore::Element::rareDataChildrenAffectedByLastChildRules):
(WebCore::Element::rareDataChildrenAffectedByDirectAdjacentRules):
(WebCore::Element::rareDataChildrenAffectedByForwardPositionalRules):
(WebCore::Element::rareDataChildrenAffectedByBackwardPositionalRules):
(WebCore::Element::rareDataChildIndex):

  • dom/Element.h:

(Element):
(WebCore::Element::styleAffectedByEmpty):
(WebCore::Element::childrenAffectedByHover):
(WebCore::Element::childrenAffectedByActive):
(WebCore::Element::childrenAffectedByDrag):
(WebCore::Element::childrenAffectedByPositionalRules):
(WebCore::Element::childrenAffectedByFirstChildRules):
(WebCore::Element::childrenAffectedByLastChildRules):
(WebCore::Element::childrenAffectedByDirectAdjacentRules):
(WebCore::Element::childrenAffectedByForwardPositionalRules):
(WebCore::Element::childrenAffectedByBackwardPositionalRules):
(WebCore::Element::childIndex):

  • dom/ElementRareData.h:

(ElementRareData):
(WebCore::ElementRareData::resetComputedStyle):
(WebCore::ElementRareData::resetDynamicRestyleObservations):

  • dom/Node.cpp:

(WebCore::Node::diff):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(WebCore::NodeRareData::childrenAffectedByHover):
(WebCore::NodeRareData::setChildrenAffectedByHover):
(WebCore::NodeRareData::childrenAffectedByActive):
(WebCore::NodeRareData::setChildrenAffectedByActive):
(WebCore::NodeRareData::childrenAffectedByDrag):
(WebCore::NodeRareData::setChildrenAffectedByDrag):
(NodeRareData):
(WebCore::NodeRareData::childrenAffectedByFirstChildRules):
(WebCore::NodeRareData::setChildrenAffectedByFirstChildRules):
(WebCore::NodeRareData::childrenAffectedByLastChildRules):
(WebCore::NodeRareData::setChildrenAffectedByLastChildRules):
(WebCore::NodeRareData::childrenAffectedByDirectAdjacentRules):
(WebCore::NodeRareData::setChildrenAffectedByDirectAdjacentRules):
(WebCore::NodeRareData::childrenAffectedByForwardPositionalRules):
(WebCore::NodeRareData::setChildrenAffectedByForwardPositionalRules):
(WebCore::NodeRareData::childrenAffectedByBackwardPositionalRules):
(WebCore::NodeRareData::setChildrenAffectedByBackwardPositionalRules):
(WebCore::NodeRareData::childIndex):
(WebCore::NodeRareData::setChildIndex):

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):

  • page/TouchAdjustment.cpp:

(WebCore::TouchAdjustment::nodeRespondsToTapGesture):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::updateDragState):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::copyNonInheritedFrom):

  • rendering/style/RenderStyle.h:

LayoutTests:

Reviewed by Antti Koivisto.
New test-case by Takashi Sakamoto

  • fast/css/nth-child-not-in-rightmost-expected.html: Added.
  • fast/css/nth-child-not-in-rightmost.html: Added.
  • touchadjustment/event-triggered-widgets.html: Fix bug exposed by patch.
5:09 AM Changeset in webkit [136000] by kenneth@webkit.org
  • 6 edits in trunk/Source/WebKit2

[EFL][WK2] MiniBrowser rendering should not get blurry when scrolled down with different scale values
https://bugs.webkit.org/show_bug.cgi?id=103079

Reviewed by Simon Hausmann.

The problem was caused because we moved the page inside our viewport
in non-discrete units.

Now instead of changing the content visible in our viewport by
applying scale, and then transforming the CSS offset, we now first
discretely position the page in UI coordinates.

This patch also removes some dead code.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::transformFromScene):
(EwkViewImpl::displayTimerFired):

Transform according to the page position.

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl::setPagePosition): Now stores a float.
(EwkViewImpl::discretePagePosition): Returns the discrete page position.
(EwkViewImpl):

  • UIProcess/efl/PageClientLegacyImpl.cpp:

(WebKit::PageClientLegacyImpl::updateViewportSize):
(WebKit::PageClientLegacyImpl::pageDidRequestScroll):

  • UIProcess/efl/PageViewportControllerClientEfl.cpp:

(WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl):
(WebKit::PageViewportControllerClientEfl::setViewportPosition): Convert to page position.
(WebKit::PageViewportControllerClientEfl::setContentsScale):
(WebKit::PageViewportControllerClientEfl::didResumeContent):

  • UIProcess/efl/PageViewportControllerClientEfl.h:

(WebKit::PageViewportControllerClientEfl::scaleFactor): Use the value
from the view directly.
(WebKit::PageViewportControllerClientEfl::contentPosition):
(PageViewportControllerClientEfl):

4:56 AM Changeset in webkit [135999] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2][AC] No need to export GL properties from EwkViewImpl class
https://bugs.webkit.org/show_bug.cgi?id=103505

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-28
Reviewed by Kenneth Rohde Christiansen.

No need to export GL data members from EwkViewImpl class,
those are internal implementation objects not used by anyone outside the class.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::displayTimerFired):
(EwkViewImpl::createGLSurface):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):
(EwkViewImpl::evasGLContext):
(EwkViewImpl::evasGLSurface):

4:49 AM Changeset in webkit [135998] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

GraphicsSurface: Implement usage of GraphicsSurface for WebGL in WK1.
https://bugs.webkit.org/show_bug.cgi?id=103497

Unreviewed buildfix.

Any usage of GraphicsSurface needs to be wrapped with USE(GRAPHICS_SURFACE).

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

4:45 AM Changeset in webkit [135997] by joone.hur@intel.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2][AC] Clear the viewport with white color
https://bugs.webkit.org/show_bug.cgi?id=103495

When initializing a GL surface, we should clear the buffer with white color.

Reviewed by Kenneth Rohde Christiansen.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::createGLSurface):

4:15 AM WebKit Team edited by thiago.santos@intel.com
(diff)
4:07 AM Changeset in webkit [135996] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

GraphicsSurface: Implement usage of GraphicsSurface for WebGL in WK1.
https://bugs.webkit.org/show_bug.cgi?id=103497

This is a temporary workaround for an issue with GraphicsSurfaceMac.
GraphicsSurfaceMac is currently implemented using CGL only.
CGL does not allow us to properly restore the NSView a context was made current with.
Therefore we have to go through QOpenGLContext to ensure the context
is being restored correctly.
As soon as we are updating GraphicsSurfaceMac to use NSOpenGL,
we should revert this patch.

Reviewed by Simon Hausmann.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

4:07 AM Changeset in webkit [135995] by zeno.albisser@digia.com
  • 4 edits in trunk/Source/WebCore

GraphicsSurface: Implement usage of GraphicsSurface for WebGL in WK1.
https://bugs.webkit.org/show_bug.cgi?id=103497

Using GraphicsSurface for WebGL in WK1 allows us to share
the code with the WK2 implementation.

Reviewed by Simon Hausmann.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):

Remove obsolete code.

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

After blitting the multisample framebuffer,
we can copy the contents onto the GraphicsSurface.
Right after that we can use the GraphicsSurface
as a texture origin to paint to the TextureMapper.
Flags related to flipping and blending are being resolved
by GraphicsSurface, and do not need to be handled here anymore.

(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):

Remove a redundant makeCurrentIfNeeded call.
The original context is being restored by
blitMultisampleFramebufferAndRestoreContext anyway.
Instead of explicitly calling swapBuffers here,
we call swapBuffers on the GraphicsSurface implicitly
after in GraphicsSurfacePrivate::copyFromTexture().

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

Add members to hold the reading end texture IDs.
The texture on the reading side are in a different
context than the texture on the writing side.
By using GraphicsSurface in WK1 we have to distinguish
between these textures, as a single instance serves
for reading and writing.

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::swapBuffers):
(WebCore::GraphicsSurfacePrivate::copyFromTexture):

Add an implicit call to swapBuffers().

(WebCore::GraphicsSurfacePrivate::frontBufferTextureID):
(GraphicsSurfacePrivate):

  • platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):

Add a flag to distinguish between sending and receiving/reading
side of the surface. This flag is being initialized in the constructor
which is the only place where we know if an instance will be used for
writing or reading.
The purpose of this flag is to avoid erroneously swapping the buffers
on the reading side. We can no longer rely on m_xPixmap for this purpose.

(WebCore::GraphicsSurfacePrivate::swapBuffers):
(WebCore::GraphicsSurfacePrivate::copyFromTexture):
(WebCore::GraphicsSurfacePrivate::glxPixmap):

Lazily create the GLX pixmap on demand.

(GraphicsSurfacePrivate):
(WebCore::GraphicsSurface::platformImport):

3:48 AM Changeset in webkit [135994] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix extra spaces in SimpleFontData::initGDIFont().

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::initGDIFont):

3:33 AM Changeset in webkit [135993] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[V8] Crash wrapping media element when MediaPlayer isn't available
https://bugs.webkit.org/show_bug.cgi?id=103431

Patch by Dan Carney <dcarney@google.com> on 2012-11-28
Reviewed by Kentaro Hara.

Call HTMLElement::createWrapper directly when dispatching a
disabled MediaElement wrap.

No new tests. Testing this must apparently be manual.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateHeader):

  • dom/make_names.pl:

(printWrapperFunctions):
(printWrapperFactoryHeaderFile):

3:31 AM Changeset in webkit [135992] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Initialize identity matrix in SimpleFontData::initGDIFont() properly.
https://bugs.webkit.org/show_bug.cgi?id=103499
<rdar://problem/12400700>

Reviewed by Timothy Horton.

We are incorrectly initializing the matrix passed into GetGlyphOutline.
This patch fixes MAT2 initialization to match the way we initialize the
identity matrix in SimpleFontData::boundsForGDIGlyph and SimpleFontData::widthForGDIGlyph.

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::initGDIFont):

2:26 AM Changeset in webkit [135991] by thiago.santos@intel.com
  • 2 edits in trunk/Tools

Unreviewed. Use my personal email as bugzilla email.

  • Scripts/webkitpy/common/config/committers.py:
2:17 AM WebKit Team edited by thiago.santos@intel.com
(diff)
2:15 AM Changeset in webkit [135990] by thiago.santos@intel.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
2:05 AM WebKit Team edited by aandrey@chromium.org
(diff)
2:05 AM Changeset in webkit [135989] by tkent@chromium.org
  • 12 edits
    3 adds
    7 deletes in trunk/LayoutTests

Merge tests for date pseudo classes into one
https://bugs.webkit.org/show_bug.cgi?id=103489

Reviewed by Kentaro Hara.

date-appearance-pseudo-classes.html doesn't need to be a pixel
test because "how css properties are applied" is tested in
date-appearance-basic.html. Checking querySelectorAll result is
enough to check pseudo classes support, and we can convert the
test to a dumpAsText test.

Also, we should remove type=date dependencies in
fast/css/pseudo-*.html because some platforms don't enable
INPUT_TYPE_DATE and we had better put such tests into one place,
fast/forms/date/.

  • fast/css/pseudo-in-range-expected.txt:
  • fast/css/pseudo-in-range-invalid-value-expected.txt:
  • fast/css/pseudo-out-of-range-expected.txt:
  • fast/css/script-tests/pseudo-in-range-invalid-value.js:
  • fast/css/script-tests/pseudo-in-range.js:
  • fast/css/script-tests/pseudo-out-of-range.js:
  • fast/forms/date/date-appearance-pseudo-classes-expected.txt: Removed.
  • fast/forms/date/date-appearance-pseudo-classes.html: Removed.
  • fast/forms/date/date-pseudo-classes-expected.txt: Added.
  • fast/forms/date/date-pseudo-classes.html: Added.
  • fast/forms/resources/common-pseudo-classes.js: Added.
  • platform/chromium-linux/fast/forms/date/date-appearance-pseudo-classes-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-pseudo-classes-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-pseudo-classes-expected.png: Removed.
  • platform/chromium-mac/fast/forms/date/date-appearance-pseudo-classes-expected.png: Removed.
  • platform/chromium-win/fast/forms/date/date-appearance-pseudo-classes-expected.png: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
1:54 AM Changeset in webkit [135988] by aandrey@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
1:43 AM Changeset in webkit [135987] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Texmap] REGRESSION(r135620) QtTestBrowser crashes on Google-gravity.
https://bugs.webkit.org/show_bug.cgi?id=103410

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-28
Reviewed by Noam Rosenthal.

TextureMapperLayerClientQt::setTextureMapper() must call
flushCompositingStateForThisLayerOnly() of the root layer.

Currently, PageClientQGraphicsWidget::setRootGraphicsLayer does not flush layer
states of the root layer after setting TextureMapper while
PageClientQWidget::setRootGraphicsLayer() flushes them of the root layer. If
not flushing states, descendant layers can not reach the root layer. It means
descendant layers can not reach the TextureMapper that the root layer has.

This is already the behavior for PageClientQWidget, which should be the case
for PageClientQGraphicsWidget as well.

  • WebCoreSupport/PageClientQt.cpp:

(WebCore::TextureMapperLayerClientQt::setTextureMapper):
(WebCore::PageClientQWidget::setRootGraphicsLayer):

1:43 AM Changeset in webkit [135986] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Texmap] REGRESSION(r135620) QtTestBrowser crashes on Google-gravity.
https://bugs.webkit.org/show_bug.cgi?id=103410

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-28
Reviewed by Noam Rosenthal.

GraphicsLayerTextureMapper::updateBackingStore() should return early
before TextureMapper is set.

GraphicsLayer::FlushCompositingState() can be called by RenderLayerBacking. It
means this method can be called before creating TextureMapper. So
TextureMapperLayer::flushCompositingState() checks and returns early if
TextureMapper was not created.

However, GraphicsLayerTextureMapper::updateBackingStore() expects that TextureMapper
always exists. updateBackingStore should also return early when TextureMapper
was not created.

No new tests. Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::didFlushCompositingState):
(WebCore::GraphicsLayerTextureMapper::prepareBackingStore):

1:13 AM WebKit Team edited by falken@chromium.org
Add myself as a committer. (diff)
1:04 AM Changeset in webkit [135985] by tommyw@google.com
  • 14 edits
    1 copy
    6 adds in trunk

Add basic implementation for MediaStreamAudioDestinationNode
https://bugs.webkit.org/show_bug.cgi?id=101815

Reviewed by Chris Rogers.

Source/Platform:

Adds the consumer interface and related functionality to WebMediaStreamSource.

  • chromium/public/WebAudioDestinationConsumer.h: Added.

(WebKit):
(WebAudioDestinationConsumer):
(WebKit::WebAudioDestinationConsumer::~WebAudioDestinationConsumer):

  • chromium/public/WebMediaStreamSource.h:

(WebKit):
(WebMediaStreamSource):

Source/WebCore:

Implements an audio destination node which has a MediaStream.
This can be added to a PeerConnection with peerConnection.addStream().
Please see use case (3):
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/webrtc-integration.html

Test: webaudio/mediastreamaudiodestinationnode.html

  • Modules/webaudio/AudioContext.cpp:

(WebCore):
(WebCore::AudioContext::createMediaStreamDestination):

  • Modules/webaudio/AudioContext.h:

(WebCore):
(AudioContext):

  • Modules/webaudio/AudioContext.idl:
  • Modules/webaudio/AudioNode.h:
  • Modules/webaudio/MediaStreamAudioDestinationNode.cpp: Added.

(WebCore):
(WebCore::MediaStreamAudioDestinationNode::create):
(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
(WebCore::MediaStreamAudioDestinationNode::mediaStreamSource):
(WebCore::MediaStreamAudioDestinationNode::~MediaStreamAudioDestinationNode):
(WebCore::MediaStreamAudioDestinationNode::process):
(WebCore::MediaStreamAudioDestinationNode::reset):

  • Modules/webaudio/MediaStreamAudioDestinationNode.h: Added.

(WebCore):
(MediaStreamAudioDestinationNode):
(WebCore::MediaStreamAudioDestinationNode::stream):

  • Modules/webaudio/MediaStreamAudioDestinationNode.idl: Added.
  • WebCore.gypi:
  • platform/audio/AudioDestinationConsumer.h: Copied from Source/WebCore/platform/mediastream/MediaStreamSource.cpp.

(WebCore):
(AudioDestinationConsumer):
(WebCore::AudioDestinationConsumer::~AudioDestinationConsumer):

  • platform/chromium/support/WebMediaStreamSource.cpp:

(WebKit::WebMediaStreamSource::extraData):
(WebKit::WebMediaStreamSource::setExtraData):
(WebKit::WebMediaStreamSource::requiresAudioConsumer):
(WebKit):
(ConsumerWrapper):
(WebKit::ConsumerWrapper::create):
(WebKit::ConsumerWrapper::consumer):
(WebKit::ConsumerWrapper::ConsumerWrapper):
(WebKit::ConsumerWrapper::consumeAudio):
(WebKit::WebMediaStreamSource::addAudioConsumer):
(WebKit::WebMediaStreamSource::removeAudioConsumer):

  • platform/mediastream/MediaStreamSource.cpp:

(WebCore::MediaStreamSource::create):
(WebCore::MediaStreamSource::MediaStreamSource):
(WebCore::MediaStreamSource::addAudioConsumer):
(WebCore):
(WebCore::MediaStreamSource::removeAudioConsumer):
(WebCore::MediaStreamSource::consumeAudio):

  • platform/mediastream/MediaStreamSource.h:

(WebCore):
(MediaStreamSource):
(WebCore::MediaStreamSource::requiresAudioConsumer):
(WebCore::MediaStreamSource::audioConsumers):

Tools:

Adds a bit of code that exercises the WebKit API.

  • DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:

(MockWebMediaStreamSourceConsumer):
(MockWebMediaStreamSourceConsumer::~MockWebMediaStreamSourceConsumer):
(MockWebMediaStreamCenter::didCreateMediaStream):

LayoutTests:

  • webaudio/mediastreamaudiodestinationnode-expected.txt: Added.
  • webaudio/mediastreamaudiodestinationnode.html: Added.
1:00 AM Changeset in webkit [135984] by falken@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

  • Scripts/webkitpy/common/config/committers.py:
12:32 AM Changeset in webkit [135983] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL][WK1] Gardening AC testcases in efl-wk1
https://bugs.webkit.org/show_bug.cgi?id=103488

Unreviewed, EFL gardening.

efl-wk1 doesn't fully support AC.

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-11-28

  • platform/efl-wk1/TestExpectations:
12:31 AM Changeset in webkit [135982] by li.yin@intel.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

  • Scripts/webkitpy/common/config/committers.py:

Nov 27, 2012:

11:58 PM Changeset in webkit [135981] by mkwst@chromium.org
  • 37 edits in trunk

Improve WebSocketChannel connection failure console messages.
https://bugs.webkit.org/show_bug.cgi?id=103448

Reviewed by Adam Barth.

Source/WebCore:

When a WebSocket connection fails, the current implementation of
WebSocketChannel::fail binds the generated console message to the
document's URL, but doesn't give much indication as to the connection
itself. This patch adjusts the console message to explicitly show the
URL of the failed connection to give developers a better chance of
debugging and resolving errors.

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::fail):

Drop the URL parameter from addConsoleMessage, in favour of adding
the WebSocketHandshake's URL to the message text.

LayoutTests:

  • http/tests/websocket/tests/hybi/bad-handshake-crash-expected.txt:
  • http/tests/websocket/tests/hybi/broken-utf8-expected.txt:
  • http/tests/websocket/tests/hybi/close-before-open-expected.txt:
  • http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt:
  • http/tests/websocket/tests/hybi/close-expected.txt:
  • http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt:
  • http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt:
  • http/tests/websocket/tests/hybi/fragmented-control-frame-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-error-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-maxlength-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-cr-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null-expected.txt:
  • http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header-expected.txt:
  • http/tests/websocket/tests/hybi/interleaved-fragments-expected.txt:
  • http/tests/websocket/tests/hybi/invalid-continuation-expected.txt:
  • http/tests/websocket/tests/hybi/invalid-encode-length-expected.txt:
  • http/tests/websocket/tests/hybi/invalid-masked-frames-from-server-expected.txt:
  • http/tests/websocket/tests/hybi/long-control-frame-expected.txt:
  • http/tests/websocket/tests/hybi/long-invalid-header-expected.txt:
  • http/tests/websocket/tests/hybi/reserved-bits-expected.txt:
  • http/tests/websocket/tests/hybi/reserved-opcodes-expected.txt:
  • http/tests/websocket/tests/hybi/send-file-blob-fail-expected.txt:
  • http/tests/websocket/tests/hybi/too-long-payload-expected.txt:
  • http/tests/websocket/tests/hybi/websocket-event-target-expected.txt:
  • http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt:
  • http/tests/websocket/tests/hybi/workers/close-expected.txt:

Update test expectations with the new error messages.

11:42 PM Changeset in webkit [135980] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebCore

Unreviewed functionality fix, return the height in ImageFrame::height()
on non-Skia platforms.

  • platform/image-decoders/ImageDecoder.h:

(WebCore::ImageFrame::height):

11:09 PM WebKit Team edited by Christophe Dumez
Add myself to the committers list (diff)
10:59 PM Changeset in webkit [135979] by Christophe Dumez
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers.py.

  • Scripts/webkitpy/common/config/committers.py:
10:50 PM Changeset in webkit [135978] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark http/tests/inspector/indexeddb/database-data.html as flaky on Linux, too.

  • platform/chromium/TestExpectations:
10:07 PM Changeset in webkit [135977] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark http/tests/canvas/canvas-slow-font-loading.html as failing on all of Mac.

  • platform/chromium/TestExpectations:
9:41 PM Changeset in webkit [135976] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

Optimization in image decoding
https://bugs.webkit.org/show_bug.cgi?id=88424

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-27
Reviewed by Brent Fulgham.

Optimization in image decoding.
Reduce branching and multiplications in GIF image decoding loops and functions.
Rebase and update of original patch by Misha Tyutyunik <michael.tyuytunik@nokia.com>

Covered by existing tests.

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::haveDecodedRow):

9:39 PM Changeset in webkit [135975] by vivek.vg@samsung.com
  • 2 edits in trunk/Tools

Unreviewed. Adding myself to committers list.

9:35 PM Changeset in webkit [135974] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Test expectation update
https://bugs.webkit.org/show_bug.cgi?id=96720

  • platform/chromium/TestExpectations:

datetimelocal-multiple-fields-preserve-value-after-history-back.html is flaky.

9:28 PM Changeset in webkit [135973] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Duplicated WebPageGroup initialization
https://bugs.webkit.org/show_bug.cgi?id=103229

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2012-11-27
Reviewed by Gyuyoung Kim.

WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.

As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
is created with default context.

  • UIProcess/API/efl/ewk_view.cpp:

(createEwkView):

9:27 PM WebKit Team edited by li.yin@intel.com
(diff)
9:27 PM Changeset in webkit [135972] by msaboff@apple.com
  • 8 edits in trunk/Source

TextIterator unnecessarily converts 8 bit strings to 16 bits
https://bugs.webkit.org/show_bug.cgi?id=103295

Reviewed by Brent Fulgham.

Source/WebCore:

Changed TextIterator to use the contained string instead of calling characters() on that string.
Other sources of text, like emitCharacter() still use the contained UChar* buffer.
Added appendTextToStringBuilder() to append the text contents of the current iterator to a string builder
irrespective of the source of the text.

No new tests as functionality covered by existing tests.

  • WebCore.exp.in: Updated plainText export and eliminated plainTextToMallocAllocatedBuffer export
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::stringForVisiblePositionRange): Updated to use TextIterator::appendTextToStringBuilder()

  • editing/TextIterator.cpp:

(WebCore::TextIterator::characterAt): New function to return the indexed character of the current TextIterator
(WebCore::TextIterator::appendTextToStringBuilder): Added method to append whatever the current text to a StringBuilder
(WebCore::TextIterator::emitText): Eliminated accessing the character data via characters().
(WebCore::TextIterator::rangeFromLocationAndLength): Changed to use characterAt().
(WebCore::plainText): Combined with plainTextToMallocAllocatedBuffer().

  • editing/TextIterator.h:

(WebCore::TextIterator::startOffset): New getter.
(WebCore::TextIterator::string): New getter.
(WebCore::TextIterator::characters): Updated to use correct test source.

  • page/ContextMenuController.cpp:

(WebCore::selectionContainsPossibleWord): Changed to use characterAt().

Source/WebKit/mac:

Updated _stringForRange to use plainText() instead of removed plainTextToMallocAllocatedBuffer().

  • WebView/WebFrame.mm:

(-[WebFrame _stringForRange:]):

9:24 PM Changeset in webkit [135971] by noel.gordon@gmail.com
  • 4 edits in trunk/Source/WebCore

Inline ImageFrame width() and height()
https://bugs.webkit.org/show_bug.cgi?id=103401

Reviewed by Brent Fulgham.

Inline ImageFrame width() and height() to improve the performance of ImageFrame
function getAddr(x,y) per https://bugs.webkit.org/show_bug.cgi?id=88424#c38

No new tests. Covered by many existing tests.

  • platform/image-decoders/ImageDecoder.cpp: Remove width() and height() routines

since they now inlined in the ImageFrame class definition in ImageDecoder.h.

  • platform/image-decoders/ImageDecoder.h: Add inline definitions of width() and

height() for all ports.

  • platform/image-decoders/skia/ImageDecoderSkia.cpp:

(WebCore::ImageFrame::width): Remove.
(WebCore::ImageFrame::height): Remove.

9:13 PM Changeset in webkit [135970] by tony@chromium.org
  • 2 edits in trunk/Tools

Bring back partytime!
https://bugs.webkit.org/show_bug.cgi?id=103466

Reviewed by Adam Barth.

"code 404, message Unknown function images/partytime_gif" since we didn't
allow .gif or .png files to be served.

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningHTTPRequestHandler):

8:54 PM Changeset in webkit [135969] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove ASSERT_NOT_REACHED() from IDBCursorBackendImpl::postSuccessHandlerCallback()
https://bugs.webkit.org/show_bug.cgi?id=103461

Patch by Michael Pruett <michael@68k.org> on 2012-11-27
Reviewed by Kentaro Hara.

The assertion is applicable only to the Chromium port.

Tests: storage/indexeddb/*

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore::IDBCursorBackendImpl::postSuccessHandlerCallback):

8:48 PM Changeset in webkit [135968] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: http/tests/inspector/network/network-xhr-replay.html times-out on win release
https://bugs.webkit.org/show_bug.cgi?id=96953

  • platform/chromium/TestExpectations:
8:37 PM Changeset in webkit [135967] by shinyak@chromium.org
  • 2 edits in trunk/Source/WebCore

[Refactoring] HasSelectorForClassStyleFunctor in Element.cpp seems verbose
https://bugs.webkit.org/show_bug.cgi?id=103474

Reviewed by Hajime Morita.

The code introduced in r135174 looks verbose. We would like to make it simpler.
We have removed several inline functions and unnecessary structs.

No new tests, simple refactoring.

  • dom/Element.cpp:

(WebCore):
(WebCore::checkSelectorForClassChange):
(WebCore::Element::classAttributeChanged):
(WebCore::Element::shouldInvalidateDistributionWhenAttributeChanged):

7:18 PM Changeset in webkit [135966] by tkent@chromium.org
  • 40 edits
    26 adds in trunk/LayoutTests

[Chromium] Update test results for recent forms changes

  • platform/chromium-linux/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-linux/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-linux/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-linux/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-linux/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-linux/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-linux/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-linux/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-linux/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-lion/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-lion/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-lion/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac-lion/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png:
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png:
  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt: Added.
  • platform/chromium-win/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-win/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-win/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-win/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-win/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium/TestExpectations:
6:50 PM WebKit Team edited by james.wei@intel.com
(diff)
6:42 PM CommitterTips edited by james.wei@intel.com
(diff)
6:16 PM Changeset in webkit [135965] by jchaffraix@webkit.org
  • 5 edits
    8 adds in trunk

Support proper <percent> / calc() resolution for grid items
https://bugs.webkit.org/show_bug.cgi?id=102968

Reviewed by Ojan Vafai.

Source/WebCore:

This change introduces a mechanism similar to logical height / width override
but for containing block. This is required as we don't have a renderer for the
grid area but any <percent> or calc() size should be resolved against the grid
area size (which is sized after the grid tracks).

Tests: fast/css-grid-layout/calc-resolution-grid-item.html

fast/css-grid-layout/percent-resolution-grid-item.html
fast/css-grid-layout/percent-grid-item-in-percent-grid-track.html
fast/css-grid-layout/percent-grid-item-in-percent-grid-track-in-percent-grid.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
Remove any containing block size override.

(WebCore::RenderBox::overrideContainingBlockContentLogicalWidth):
(WebCore::RenderBox::overrideContainingBlockContentLogicalHeight):
(WebCore::RenderBox::hasOverrideContainingBlockLogicalWidth):
(WebCore::RenderBox::hasOverrideContainingBlockLogicalHeight):
(WebCore::RenderBox::setOverrideContainingBlockContentLogicalWidth):
(WebCore::RenderBox::setOverrideContainingBlockContentLogicalHeight):
(WebCore::RenderBox::clearContainingBlockOverrideSize):
Containing block override size functions.

(WebCore::RenderBox::containingBlockLogicalWidthForContent):
Updated the function to check for any override logical width.

(WebCore::RenderBox::containingBlockLogicalHeightForContent):
New function, similar to RenderBox::containingBlockLogicalWidthForContent.

(WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
Updated these function to return overrideContainingBlockContentLogicalHeight as needed.

(WebCore::RenderBox::computeReplacedLogicalHeightUsing):
(WebCore::RenderBox::availableLogicalHeightUsing):
Updated these functions to use the new containingBlockLogicalHeightForContent instead
of availableLogicalHeight.

  • rendering/RenderBox.h:

Added the previous new functions.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutGridItems):
Updated to override the containing block size so that we properly size our grid items.

LayoutTests:

  • fast/css-grid-layout/calc-resolution-grid-item-expected.txt: Added.
  • fast/css-grid-layout/calc-resolution-grid-item.html: Added.
  • fast/css-grid-layout/percent-resolution-grid-item-expected.txt: Added.
  • fast/css-grid-layout/percent-resolution-grid-item.html: Added.

Test that checks that our override containing block's logical width / height logic
works as expected.

  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track-expected.txt: Added.
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track.html: Added.
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track-in-percent-grid.html: Added.
  • fast/css-grid-layout/percent-grid-item-in-percent-grid-track-in-percent-grid-expected.txt: Added.

Those test cases covers the cases of percentage sized grid items with percentage sized grid tracks
inside a fixed or percentage sized grid element. They don't pass yet as we don't support percentage
sized grid tracks (see bug 103335).

6:08 PM Changeset in webkit [135964] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Add more tests that started failing after http://trac.webkit.org/changeset/135935
to TestExpectations. Mark pailures as [ ImageOnlyFailure Pass ] because
the failures on Release and Debug bots are not the same.

  • platform/efl/TestExpectations:
6:03 PM Changeset in webkit [135963] by tkent@chromium.org
  • 3 edits in trunk/Source/WebCore

Fix build errors by r135955.

  • dom/ShadowRoot.cpp: Use struct instead of class.
  • dom/TreeScope.cpp: Ditto.
5:52 PM Changeset in webkit [135962] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

REGRESSION(r135620): ASSERT(m_state.drawsContent && m_state.contentsVisible && !m_size.isEmpty()) hits in TextureMapperLayer::paintSelf().
https://bugs.webkit.org/show_bug.cgi?id=103171

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-27
Reviewed by Noam Rosenthal.

Ensure that TextureMapperLayer has a backing store when the layer has
drawsContent and contentsVisible properties and the size of the layer is not
empty.

LayerTreeRenderer::setLayerState() must not set a backing store to
TextureMapperLayer because setLayerState() just changes states of
GraphicsLayerTextureMapper instead of TextureMapperLayer.

Now LayerTreeRenderer::flushLayerChanges() sets a backing store as well as layer
states to TextureMapperLayer.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::getBackingStore):
(WebKit::LayerTreeRenderer::prepareContentBackingStore):
(WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
(WebKit::LayerTreeRenderer::flushLayerChanges):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebCore):

5:48 PM Changeset in webkit [135961] by danakj@chromium.org
  • 4 edits in trunk/LayoutTests

Rebaseline and remove expectations for deferred virtual test suite
https://bugs.webkit.org/show_bug.cgi?id=102294

Unreviewed gardening.

These three tests are failing on mac, but other platforms are fine.
Rebaseline windows, and mark as failing only for Mac.

  • platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-css-expected.png:
  • platform/chromium-win/platform/chromium/virtual/deferred/fast/images/exif-orientation-expected.png:
  • platform/chromium/TestExpectations:
5:44 PM Changeset in webkit [135960] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: crashing on XP
fast/frames/sandboxed-iframe-navigation-parent.html
https://bugs.webkit.org/show_bug.cgi?id=103472

  • platform/chromium/TestExpectations:
5:43 PM Changeset in webkit [135959] by caseq@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: [Timeline] "Show CPU activity on the ruler" settings checkbox does not take effect until Inspector restart
https://bugs.webkit.org/show_bug.cgi?id=102210

Patch by Eugene Klyuchnikov <eustas@chromium.com> on 2012-11-27
Reviewed by Pavel Feldman.

The checkbox changes should take effect in the real time.

  • inspector/front-end/SettingsScreen.js:

(WebInspector.GenericSettingsTab):
Do not show checkpox if browser is not capable.

  • inspector/front-end/TimelinePanel.js:

Added setting change listener.

5:33 PM Changeset in webkit [135958] by timothy_horton@apple.com
  • 4 edits
    1 add in trunk/Source/WebKit2

PDFPlugin: Should not be able to edit read-only text annotations
https://bugs.webkit.org/show_bug.cgi?id=103387
<rdar://problem/12752313>

Reviewed by Alexey Proskuryakov.

Don't allow read-only annotations to become active.

  • WebKit2.xcodeproj/project.pbxproj: Add PDFAnnotationTextWidgetDetails.h.
  • WebProcess/Plugins/PDF/PDFAnnotationTextWidgetDetails.h: Added.
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::setActiveAnnotation): Bail if the annotation is read-only.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm: Move PDFAnnotationTextWidget details category to PDFAnnotationTextWidgetDetails.h
5:29 PM Changeset in webkit [135957] by fpizlo@apple.com
  • 8 edits in trunk/Source

Convert some remaining uses of FILE* to PrintStream&.

Rubber stamped by Mark Hahnenberg.

Source/JavaScriptCore:

  • bytecode/ValueProfile.h:

(JSC::ValueProfileBase::dump):

  • bytecode/ValueRecovery.h:

(JSC::ValueRecovery::dump):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseCodeBlock):

  • dfg/DFGNode.h:

(JSC::DFG::Node::dumpChildren):

Source/WTF:

  • wtf/BitVector.cpp:

(WTF::BitVector::dump):

  • wtf/BitVector.h:

(BitVector):

5:21 PM Changeset in webkit [135956] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

Coordinated Graphics: Refactor code managing a backing store in LayerTreeRenderer.
https://bugs.webkit.org/show_bug.cgi?id=103298

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-27
Reviewed by Noam Rosenthal.

This patch makes LayerTreeRenderer assign a content backing store to
TextureMapperLayer only in setLayerState(). Currently, createTile() can assign
the backing store to TextureMapperLayer and it can break the invariant condition
of TextureMapperLayer: TextureMapperLayer can have its own backing store only if
the layer has following conditions: drawsContent, contentsVisible and non empty
size.

In addition, the modified code about creating and removing a backing store
matches the same purpose code of CoordinatedGraphicsLayer and
GraphicsLayerTextureMapepr.

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:

(CoordinatedBackingStore):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::layerShouldHaveBackingStore):
(WebKit):
(WebKit::LayerTreeRenderer::setLayerState):
(WebKit::LayerTreeRenderer::getBackingStore):
(WebKit::LayerTreeRenderer::prepareContentBackingStore):
(WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
(WebKit::LayerTreeRenderer::removeBackingStore):
(WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
(WebKit::LayerTreeRenderer::createTile):
(WebKit::LayerTreeRenderer::removeTile):
(WebKit::LayerTreeRenderer::updateTile):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::adjustContentsScale):

This method does not create a backing store anymore because flushCompositingStateForThisLayerOnly()
can create a backing store if needed. Moreover, we must sync a layer state prior to creating a backing store
after this patch, because LayerTreeRenderer::createTile() does not create a backing store anymore.

5:15 PM Changeset in webkit [135955] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Compile time size assertions for TreeScope, ShadowRoot and ElementAttributeData.

Rubber-stamped by Anders Carlsson.

  • dom/ShadowRoot.cpp:

(SameSizeAsShadowRoot):

  • dom/TreeScope.cpp:

(SameSizeAsTreeScope):

  • dom/ElementAttributeData.cpp: Derp.
5:14 PM Changeset in webkit [135954] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening:
Layout Test http/tests/navigation/slowmetaredirect-basic.html is failing
https://bugs.webkit.org/show_bug.cgi?id=103471

  • platform/chromium/TestExpectations:
5:09 PM Changeset in webkit [135953] by tony@chromium.org
  • 29 edits
    2 moves
    1 add
    2 deletes in trunk/LayoutTests

Unreviewed, land updated Gtk results after track limiter removal.

  • fast/dom/HTMLInputElement/input-slider-update-expected.txt: Renamed from LayoutTests/platform/chromium/fast/dom/HTMLInputElement/input-slider-update-expected.txt.
  • fast/forms/range/input-appearance-range-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/forms/range/input-appearance-range-expected.txt.
  • platform/gtk/TestExpectations:
  • platform/gtk/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • platform/gtk/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
  • platform/gtk/fast/forms/box-shadow-override-expected.txt:
  • platform/gtk/fast/forms/input-appearance-height-expected.txt:
  • platform/gtk/fast/forms/range/input-appearance-range-expected.txt:
  • platform/gtk/fast/forms/range/range-thumb-height-percentage-expected.txt: Added.
  • platform/gtk/fast/forms/range/slider-padding-expected.txt:
  • platform/gtk/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/gtk/fast/forms/range/slider-thumb-stylability-expected.txt:
  • platform/gtk/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/gtk/fast/layers/video-layer-expected.txt:
  • platform/gtk/fast/multicol/client-rects-expected.txt:
  • platform/gtk/fast/repaint/slider-thumb-drag-release-expected.txt:
  • platform/gtk/fast/repaint/slider-thumb-float-expected.txt:
  • platform/gtk/media/audio-controls-rendering-expected.txt:
  • platform/gtk/media/audio-repaint-expected.txt:
  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-expected.txt:
  • platform/gtk/media/controls-styling-strict-expected.txt:
  • platform/gtk/media/controls-without-preload-expected.txt:
  • platform/gtk/media/media-controls-clone-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt:
  • platform/gtk/media/video-display-toggle-expected.txt:
  • platform/gtk/media/video-empty-source-expected.txt:
  • platform/gtk/media/video-no-audio-expected.txt:
  • platform/gtk/media/video-volume-slider-expected.txt:
  • platform/gtk/media/video-zoom-controls-expected.txt:
  • platform/mac/fast/dom/HTMLInputElement/input-slider-update-expected.txt: Removed.
  • platform/mac/fast/forms/range/input-appearance-range-expected.txt: Removed.
5:07 PM Changeset in webkit [135952] by simonjam@chromium.org
  • 40 edits
    1 add in trunk/Source

Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
https://bugs.webkit.org/show_bug.cgi?id=102151

Reviewed by Adam Barth.

Source/WebCore:

There's a FIXME that we have too many FrameLoader::load*() functions. This patch consolidates 3 into 1.
There are still a few more load functions that will be consolidated later. Using FrameLoadRequest as
the interface into FrameLoader will also provide a place to pass in the initiator. Finally, this matches
the refactoring done with CachedResourceRequest and CachedResourceLoader.

No new tests. No change in functionality.

  • WebCore.exp.in:
  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::setLockHistory): These are former arguments to load().
(WebCore::FrameLoadRequest::lockHistory): Ditto.
(FrameLoadRequest):
(WebCore::FrameLoadRequest::setShouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::shouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::substituteData): Ditto.
(WebCore::FrameLoadRequest::setSubstituteData): Ditto.
(WebCore::FrameLoadRequest::hasSubstituteData): Ditto.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load): No change in behavior, just merged it all into one function.

  • loader/FrameLoader.h:

(FrameLoader):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

  • Plugins/WebPluginController.mm:
  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::QWebFrame):
(QWebFrame::load):
(QWebFrame::setHtml):
(QWebFrame::setContent):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setAlternateHtml):
(qt_dump_set_accepts_editing):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callErrorPageExtension):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

  • WebView.cpp:

(WebView::load):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):

5:03 PM Changeset in webkit [135951] by commit-queue@webkit.org
  • 2 edits
    20 adds in trunk/LayoutTests

Add behavior tests for input[type=datetime-local] with multiple fields
https://bugs.webkit.org/show_bug.cgi?id=103386

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-27
Reviewed by Kent Tamura.

  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-ax-aria-attributes-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-ax-aria-attributes.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-ax-value-changed-notification-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-ax-value-changed-notification.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-blur-and-focus-events-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-blur-and-focus-events.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-change-layout-by-value-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-change-layout-by-value.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-mouse-events-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-mouse-events.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-preserve-value-after-history-back-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-preserve-value-after-history-back.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-reset-value-after-reloads-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-reset-value-after-reloads.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-spinbutton-change-and-input-events-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-spinbutton-change-and-input-events.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-wheel-event-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-wheel-event.html: Added.
  • fast/forms/resources/multiple-fields-blur-and-focus-events.js:

(startTestFor): Support datetime and datetime-local.

5:00 PM Changeset in webkit [135950] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening:
media/video-currentTime-set.html crashes
https://bugs.webkit.org/show_bug.cgi?id=103183

  • platform/chromium/TestExpectations:
4:57 PM Changeset in webkit [135949] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Add tests that started failing after http://trac.webkit.org/changeset/135935
to TestExpectations.

  • platform/efl/TestExpectations:
4:54 PM Changeset in webkit [135948] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening:
http/tests/inspector/network/network-xhr-replay.html times out crashes
https://bugs.webkit.org/show_bug.cgi?id=96953

  • platform/chromium/TestExpectations:
4:53 PM Changeset in webkit [135947] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix; NSSize is not a CGSize in 32-bit.

  • platform/mac/WebCoreFullScreenWarningView.mm:
4:48 PM Changeset in webkit [135946] by tony@chromium.org
  • 11 edits
    3 moves
    4 deletes in trunk/LayoutTests

Unreviewed, land updated Qt results after track limiter removal.

  • fast/forms/range/slider-padding-expected.txt: Renamed from LayoutTests/platform/chromium/fast/forms/range/slider-padding-expected.txt.
  • fast/multicol/client-rects-expected.txt: Renamed from LayoutTests/platform/chromium-mac/fast/multicol/client-rects-expected.txt.
  • fast/repaint/slider-thumb-drag-release-expected.txt: Renamed from LayoutTests/platform/chromium/fast/repaint/slider-thumb-drag-release-expected.txt.
  • platform/gtk/fast/forms/range/range-thumb-height-percentage-expected.txt: Removed.
  • platform/mac/fast/forms/range/slider-padding-expected.txt: Removed.
  • platform/mac/fast/multicol/client-rects-expected.txt: Removed.
  • platform/mac/fast/repaint/slider-thumb-drag-release-expected.txt: Removed.
  • platform/qt/TestExpectations:
  • platform/qt/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • platform/qt/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
  • platform/qt/fast/forms/box-shadow-override-expected.txt:
  • platform/qt/fast/forms/range/input-appearance-range-expected.txt:
  • platform/qt/fast/forms/range/range-thumb-height-percentage-expected.txt:
  • platform/qt/fast/forms/range/slider-padding-expected.txt:
  • platform/qt/fast/multicol/client-rects-expected.txt:
  • platform/qt/fast/repaint/slider-thumb-drag-release-expected.txt:
  • platform/qt/fast/repaint/slider-thumb-float-expected.txt:
4:42 PM Changeset in webkit [135945] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Attempted build fix for my last commit. The private member variable
is only used on MAC (at the moment) so guard it with #if PLATFORM.
I did this rather than having another constructor, because I expect
other platforms will follow the MAC code soon.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):

  • html/shadow/MediaControlElements.h:
4:40 PM Changeset in webkit [135944] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebKit2

[WK2] [Mac] WebKit Full Screen API should use NSWindow full screen API.
https://bugs.webkit.org/show_bug.cgi?id=100025

Reviewed by Dan Bernstein.

Use the NSWindow full screen API when taking the WebView full screen. To facility the case where the browser window is already
in full screen mode, no longer hide the browser window when entering full screen. Instead, provide a placeholder view with
instructions to click the placeholder to exit full screen.

  • UIProcess/mac/WKFullScreenWindowController.h:
  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController init]): Set self as the window's delegate; enable window's full screen action.
(-[WKFullScreenWindowController dealloc]): Clear our window's delegate.
(-[WKFullScreenWindowController applicationDidChangeScreenParameters:]): Remove reference to _updateWindowAndDockForFullScreen.
(-[WKFullScreenWindowController enterFullScreen:]): Ditto. Create a WKFullScreenPlaceholderView instead of generic NSImageView.
(-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]): Ditto. Call NSWindow enterFullScreen: API.
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Show the warning view.
(-[WKFullScreenWindowController exitFullScreen]): Hide the warning view.
(-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]): Add special case where we are exiting

from full screen mode when the full screen window is not on screen.

(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Remove reference to _updateMenuAndDockForFullScreen.
(-[WKFullScreenWindowController customWindowsToEnterFullScreenForWindow:]): Added. Return the background window and the full screen window.
(-[WKFullScreenWindowController customWindowsToExitFullScreenForWindow:]): Ditto.
(-[WKFullScreenWindowController window:startCustomAnimationToEnterFullScreenWithDuration:]): Added. Call through to _startEnterFullScreenAnimationWithDuration:
(-[WKFullScreenWindowController window:startCustomAnimationToExitFullScreenWithDuration:]): Added. Call through to _startExitFullScreenAnimationWithDuration:

4:40 PM Changeset in webkit [135943] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Versioning.

4:40 PM Changeset in webkit [135942] by abarth@webkit.org
  • 2 edits in trunk/Tools

run-perf-tests fails on Android because of stderr output
https://bugs.webkit.org/show_bug.cgi?id=103462

Reviewed by Ryosuke Niwa.

The chromium-android port produces some stderr output that causes
run-perf-tests to get sad and not record the results of the performance
test. This patch teaches run-perf-test to ignore this output much in
the same way that it currently ignores some stdout messages.

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest.run):
(PerfTest._should_ignore_line):
(PerfTest):
(PerfTest._should_ignore_line_in_stderr):
(PerfTest._filter_stderr):
(PerfTest._should_ignore_line_in_parser_test_result):

4:38 PM Changeset in webkit [135941] by jer.noble@apple.com
  • 6 edits
    2 adds in trunk/Source/WebCore

Add a new shared class WebCoreFullScreenPlaceholderView, for use in WebKit and WebKit2.
https://bugs.webkit.org/show_bug.cgi?id=102300

Reviewed by Anders Carlsson.

Add a new shared class WebCoreFullScreenPlaceholderView, which presents the contents of the
WebView prior to full screen with a message informing the user how to exit from full screen mode.

  • platform/mac/WebCoreFullScreenPlaceholderView.mm:

(-[WebCoreFullScreenPlaceholderView initWithFrame:]): Create the warning view and set up the placeholder layer.
(-[WebCoreFullScreenPlaceholderView setContents:]): Pass along to content view layer.
(-[WebCoreFullScreenPlaceholderView contents]): Ditto.
(-[WebCoreFullScreenPlaceholderView setExitWarningVisible:]): Show or hide the exit warning.
(-[WebCoreFullScreenPlaceholderView mouseDown:]): Call the target with action.

Add a localized string entry for the "click to exit" text:

  • English.lproj/Localizable.strings:
  • platform/LocalizedStrings.cpp:

(WebCore::clickToExitFullScreenText):

  • platform/LocalizedStrings.h:
  • English.lproj/Localizable.strings:

Add the new files to the project and exports list:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
4:37 PM Changeset in webkit [135940] by Lucas Forschler
  • 1 copy in tags/Safari-536.28.2

New Tag.

4:34 PM Changeset in webkit [135939] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Shrink ShadowRoot and TreeScope.
<http://webkit.org/b/103459>

Reviewed by Antti Koivisto.

We're creating ~1500 ShadowRoots on Apple's PLT3 content (from <input> and <textarea> elements)
and a lot of this is wasted space.

Shrink ShadowRoot and TreeScope a bit by making TreeScope's DocumentOrderedMaps heap-allocated
and packing the counters on ShadowRoot harder together with the bits.

202kB progression on Membuster3.

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::ShadowRoot):

  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::countElementShadow):
(ShadowRoot):

  • dom/TreeScope.cpp:

(WebCore::TreeScope::TreeScope):
(WebCore::TreeScope::getElementById):
(WebCore::TreeScope::addElementById):
(WebCore::TreeScope::removeElementById):
(WebCore::TreeScope::addImageMap):
(WebCore::TreeScope::removeImageMap):
(WebCore::TreeScope::getImageMap):
(WebCore::TreeScope::addLabel):
(WebCore::TreeScope::removeLabel):
(WebCore::TreeScope::labelElementForId):

  • dom/TreeScope.h:

(WebCore::TreeScope::shouldCacheLabelsByForAttribute):
(TreeScope):
(WebCore::TreeScope::hasElementWithId):
(WebCore::TreeScope::containsMultipleElementsWithId):

4:24 PM Changeset in webkit [135938] by tony@chromium.org
  • 22 edits
    4 adds in trunk/LayoutTests

Unreviewed, land updated EFL results after track limiter removal.

  • platform/efl/TestExpectations:
  • platform/efl/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • platform/efl/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt: Added.
  • platform/efl/fast/forms/box-shadow-override-expected.txt:
  • platform/efl/fast/forms/input-appearance-height-expected.txt:
  • platform/efl/fast/forms/range/input-appearance-range-expected.txt:
  • platform/efl/fast/forms/range/range-thumb-height-percentage-expected.txt: Added.
  • platform/efl/fast/forms/range/slider-padding-expected.txt:
  • platform/efl/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/efl/fast/forms/range/slider-thumb-stylability-expected.txt: Added.
  • platform/efl/fast/layers/video-layer-expected.txt:
  • platform/efl/fast/multicol/client-rects-expected.txt:
  • platform/efl/fast/repaint/slider-thumb-drag-release-expected.txt:
  • platform/efl/fast/repaint/slider-thumb-float-expected.txt: Added.
  • platform/efl/media/audio-controls-rendering-expected.txt:
  • platform/efl/media/controls-strict-expected.txt:
  • platform/efl/media/controls-styling-strict-expected.txt:
  • platform/efl/media/controls-without-preload-expected.txt:
  • platform/efl/media/media-controls-clone-expected.txt:
  • platform/efl/media/track/track-cue-rendering-horizontal-expected.txt:
  • platform/efl/media/track/track-cue-rendering-vertical-expected.txt:
  • platform/efl/media/video-display-toggle-expected.txt:
  • platform/efl/media/video-empty-source-expected.txt:
  • platform/efl/media/video-no-audio-expected.txt:
  • platform/efl/media/video-zoom-controls-expected.txt:
4:23 PM Changeset in webkit [135937] by jer.noble@apple.com
  • 3 edits
    2 adds in trunk/Source/WebCore

Add a new shared class WebCoreFullScreenWarningView which presents a styled warning message.
https://bugs.webkit.org/show_bug.cgi?id=102299

Reviewed by Alexey Proskuryakov.

Add a shared implementation of a warning view for use in WebKit and WebKit2.

  • platform/mac/WebCoreFullScreenWarningView.h: Added.
  • platform/mac/WebCoreFullScreenWarningView.mm: Added.

(-[WebCoreFullScreenWarningView initWithTitle:]): Create the view.

Add the new files to the project and exports list:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
4:22 PM Changeset in webkit [135936] by tony@chromium.org
  • 2 edits in trunk/Tools

Fix garden-o-matic for non-chromium ports
https://bugs.webkit.org/show_bug.cgi?id=103458

Reviewed by Adam Barth.

I was getting a 403 error when trying to select any non-chromium port.

  • Scripts/webkitpy/tool/servers/reflectionhandler.py:

(ReflectionHandler._handle_request): Use the path without query params.

3:56 PM Changeset in webkit [135935] by commit-queue@webkit.org
  • 10 edits
    2 adds in trunk

[EFL][WK2] 3D pixel tests are failing
https://bugs.webkit.org/show_bug.cgi?id=102833

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-27
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Added an API for generating a snapshot, to be used from WebKitTestRunner.

  • PlatformEfl.cmake:
  • UIProcess/API/C/efl/WKView.cpp:

(WKViewGetSnapshot):

  • UIProcess/API/C/efl/WKView.h:
  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::onFaviconChanged):
(EwkViewImpl::takeSnapshot):

  • UIProcess/API/efl/EwkViewImpl.h:

(EwkViewImpl):

  • UIProcess/API/efl/SnapshotImageGL.cpp: Added.

(getImageFromCurrentTexture):

  • UIProcess/API/efl/SnapshotImageGL.h: Added.

Tools:

Generate a snapshot of the view in the UI process instead of the web process.
We have to use Texture Mapper in order to correctly paint 3D transforms etc.

  • WebKitTestRunner/TestInvocation.h:

(TestInvocation):

  • WebKitTestRunner/cairo/TestInvocationCairo.cpp:

(WTR::writeFunction):
(WTR::paintRepaintRectOverlay):
(WTR):
(WTR::TestInvocation::forceRepaintDoneCallback):
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):

  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

(WTR::PlatformWebView::windowSnapshotImage):

3:45 PM Changeset in webkit [135934] by dino@apple.com
  • 14 edits
    2 adds in trunk

Make track list control active
https://bugs.webkit.org/show_bug.cgi?id=101670

Reviewed by Eric Carlson.

Source/WebCore:

Hook up the event handler for the captions menu so that it enables or
disables tracks in the associated HTMLMediaElement.

Test: media/video-controls-captions-trackmenu.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::toggleTrackAtIndex): New method to toggle the state of a track, by index.

  • html/HTMLMediaElement.h:

(HTMLMediaElement): Ditto.
(WebCore::HTMLMediaElement::textTracksOffIndex): Static method to return the "Off" value.

  • html/shadow/MediaControlElements.cpp:

(WebCore::trackListIndexForElement): Helper function to take a track list <li> element and return the value of the custom attribute.
(WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType): Toggle the state of the button based on captions visibility.
(WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler): On Mac platforms show the captions menu. On other platforms, toggle captions.
(WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): Now has a reference to the controls.
(WebCore::MediaControlClosedCaptionsTrackListElement::create):
(WebCore::MediaControlClosedCaptionsTrackListElement::defaultEventHandler): When the user clicks on a track list item, look
for the custom attribute that identifies the associated track, and then toggle that track.
(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Set a class on the track list elements so they can be
styled by the injected CSS (with tick marks to represent visibility).
(WebCore::MediaControlClosedCaptionsTrackListElement::resetTrackListMenu): When building the list of track menu items, add
a custom HTML attribute to the element so that the corresponding track can be found in the event handler.

  • html/shadow/MediaControlElements.h:

(MediaControlClosedCaptionsTrackListElement): Add a list of elements representing the track list.

  • html/shadow/MediaControlsApple.cpp:

(WebCore::MediaControlsApple::createControls):
(WebCore::MediaControlsApple::changedClosedCaptionsVisibility): Make sure to update the track menu.
(WebCore::MediaControlsApple::reset):

  • html/shadow/MediaControlsApple.h:

(MediaControlsApple):

LayoutTests:

New test that exercises the track list menu, and how it can be used
to enable specific tracks. Since this is only enabled for Mac, it is
skipped on all other platforms.

Meanwhile, the existing test for a on/off captions button now
does not work on Mac, so skip it there. I copied the functionality
into the new test so we still have coverage.

  • media/video-controls-captions-trackmenu-expected.txt: Added.
  • media/video-controls-captions-trackmenu.html: Added.
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
3:39 PM Changeset in webkit [135933] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix indentation in JSValue.h

Rubber stamped by Mark Hahnenberg.

  • runtime/JSValue.h:
3:35 PM Changeset in webkit [135932] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1312

Merge 135906
BUG=162835
Review URL: https://codereview.chromium.org/11415160

3:33 PM Changeset in webkit [135931] by cevans@google.com
  • 2 edits
    2 copies in branches/chromium/1271

Merge 135906
BUG=162835
Review URL: https://codereview.chromium.org/11415159

3:27 PM Changeset in webkit [135930] by abarth@webkit.org
  • 4 edits in trunk/Tools

Make it possible to run performance tests on Chromium Android
https://bugs.webkit.org/show_bug.cgi?id=103268

Reviewed by Ryosuke Niwa.

Based on a patch by Peter Beverloo.

This patch (almost) makes it possible to run WebKit performance tests
on the Chromium port for Android. There are a few things I had to do
in order to make this happen:

1) The worker number when creating a driver for a port is zero-based

for layout tests and elsewhere. Android uses this to determine
which device it has to run on, so make it zero based for performance
tests as well.

2) Tests aren't available on the Android device, so we start an HTTP

server that serves the tests to the device or emulator.

The one shortcoming of this patch is that chromium-android produces
some stderr output that confuses run-perf-tests. I'll address that
issue in a subsequent CL. This patch also depends on
https://codereview.chromium.org/11416182 in order to work.

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

(ChromiumAndroidPort.start_http_server):
(ChromiumAndroidDriver._command_from_driver_input):

  • Scripts/webkitpy/performance_tests/perftest.py:

(ReplayPerfTest.prepare):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner._parse_args):
(PerfTestsRunner._start_servers):
(PerfTestsRunner):
(PerfTestsRunner._stop_servers):
(PerfTestsRunner.run):
(PerfTestsRunner._run_tests_set):

3:17 PM Changeset in webkit [135929] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[chromium] Add WebLayerTreeViewClient API to request font atlas
https://bugs.webkit.org/show_bug.cgi?id=102958

Patch by Eberhard Graether <egraether@google.com> on 2012-11-27
Reviewed by James Robinson.

This change makes the font atlas creation accessible to the WebLayerTreeView.

Source/Platform:

  • chromium/public/WebLayerTreeViewClient.h:

(WebKit):
(WebLayerTreeViewClient):
(WebKit::WebLayerTreeViewClient::createFontAtlas):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::createFontAtlas):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

3:13 PM Changeset in webkit [135928] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating TestExpectations after input slider change.

  • platform/chromium/TestExpectations:
3:08 PM Changeset in webkit [135927] by jsbell@chromium.org
  • 13 edits in trunk/Source

IndexedDB: Simplify transaction timers and event tracking
https://bugs.webkit.org/show_bug.cgi?id=102984

Reviewed by Tony Chang.

Source/WebCore:

Now that the transaction "commit" decision is made on the front-end, the back end no-longer
needs to be aware of when individual IDBRequests have dispatched to script or track pending
events (except for preemptive ones like createIndex). This also lets two timers be collapsed
into one which significantly simplifies the code flow in IDBTransactionBackendImpl.

No new tests - just simplification. Exercised by storage/indexeddb/transaction-*.html etc.

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::prefetchContinueInternal): No more tracking.
(WebCore::IDBCursorBackendImpl::prefetchReset): No more tracking.

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal): No more tracking.
(WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal): No more tracking.

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::setIndexesReadyInternal): No more tracking.
(WebCore::IDBObjectStoreBackendImpl::createIndexInternal): No more tracking.
(WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal): No more tracking.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::dispatchEvent): Order must be:

  1. request is unregistered from transaction (so request list may be empty)
  2. abort transaction if event being dispatched was an error
  3. deactivate transaction (which may commit if #1 left it empty and #2 didn't abort)
  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl): Need to track if commit
was requested; previously the front end would have triggered an event timer which, on
completion, would be the signal that the front end was finished.
(WebCore::IDBTransactionBackendImpl::scheduleTask): Schedule a timer to service the new
task, if necessary.
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::hasPendingTasks):
(WebCore::IDBTransactionBackendImpl::commit):
(WebCore::IDBTransactionBackendImpl::taskTimerFired): Picks up "commit" responsibilities
from the now deleted taskEventTimerFired, if everything is truly complete done.

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(IDBTransactionBackendImpl):

  • Modules/indexeddb/IDBTransactionBackendInterface.h:

(WebCore::IDBTransactionBackendInterface::didCompleteTaskEvents): Removed from interface.

Source/WebKit/chromium:

Remove now-unused didCompleteTaskEvents() method.

  • src/IDBTransactionBackendProxy.cpp:
  • src/IDBTransactionBackendProxy.h:

(IDBTransactionBackendProxy):

  • src/WebIDBTransactionImpl.cpp:
  • src/WebIDBTransactionImpl.h:
3:01 PM Changeset in webkit [135926] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating TestExpectations after input slider change.

  • platform/gtk/TestExpectations:
2:45 PM Changeset in webkit [135925] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

PDFPlugin: Page scale factor should affect subframe PDFs
https://bugs.webkit.org/show_bug.cgi?id=103291
<rdar://problem/12555249>

Reviewed by Darin Adler.

For subframe PDFs, hand PDFKit the pageScaleFactor for the parent page
so it can scale its drawing appropriately.

  • WebProcess/Plugins/PDF/PDFPlugin.h: Add updatePageAndDeviceScaleFactors.
  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::pdfDocumentDidLoad): Call updatePageAndDeviceScaleFactors
instead of manually updating PDFLayerController's device scale factor.
(WebKit::PDFPlugin::updatePageAndDeviceScaleFactors): Hand PDFLayerController
the "underlying" (non-zoom) content scale, which is the product of the
device scale and the page scale.
(WebKit::PDFPlugin::contentsScaleFactorChanged): Use updatePageAndDeviceScaleFactors.
(WebKit::PDFPlugin::geometryDidChange): Use updatePageAndDeviceScaleFactors to keep
PDFLayerController's notion of the page scale up to date when the plugin's
geometry changes.

2:42 PM Changeset in webkit [135924] by Lucas Forschler
  • 6 edits in branches/safari-536.28-branch/Source/WebKit2

Merged r128205 and parts of 127334 for <rdar://problem/12516355>

2:34 PM Changeset in webkit [135923] by fpizlo@apple.com
  • 10 edits
    6 adds in trunk

DFG SetLocal should use forwardSpeculationCheck instead of its own half-baked version of same
https://bugs.webkit.org/show_bug.cgi?id=103353

Reviewed by Oliver Hunt and Gavin Barraclough.

Source/JavaScriptCore:

Made it possible to use forward speculations for most of the operand classes. Changed the conditional
direction parameter from being 'bool isForward' to an enum (SpeculationDirection). Changed SetLocal
to use forward speculations and got rid of its half-baked version of same.

Also added the ability to force the DFG's disassembler to dump all nodes, even ones that are dead.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGDisassembler.cpp:

(JSC::DFG::Disassembler::dump):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::convertLastOSRExitToForward):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):
(JSC::DFG::SpeculativeJIT::fillStorage):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):
(JSC::DFG::SpeculateIntegerOperand::SpeculateIntegerOperand):
(JSC::DFG::SpeculateIntegerOperand::gpr):
(SpeculateIntegerOperand):
(JSC::DFG::SpeculateDoubleOperand::SpeculateDoubleOperand):
(JSC::DFG::SpeculateDoubleOperand::fpr):
(SpeculateDoubleOperand):
(JSC::DFG::SpeculateCellOperand::SpeculateCellOperand):
(JSC::DFG::SpeculateCellOperand::gpr):
(SpeculateCellOperand):
(JSC::DFG::SpeculateBooleanOperand::SpeculateBooleanOperand):
(JSC::DFG::SpeculateBooleanOperand::gpr):
(SpeculateBooleanOperand):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateInt):
(JSC::DFG::SpeculativeJIT::fillSpeculateIntStrict):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):

  • runtime/Options.h:

(JSC):

LayoutTests:

  • fast/js/dfg-intrinsic-side-effect-assignment-osr-exit-expected.txt: Added.
  • fast/js/dfg-intrinsic-side-effect-assignment-osr-exit.html: Added.
  • fast/js/dfg-side-effect-assignment-osr-exit-expected.txt: Added.
  • fast/js/dfg-side-effect-assignment-osr-exit.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-intrinsic-side-effect-assignment-osr-exit.js: Added.

(foo):

  • fast/js/script-tests/dfg-side-effect-assignment-osr-exit.js: Added.

(foo):
(bar):

2:29 PM Changeset in webkit [135922] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Replace toWebCoreString()/toWebCoreAtomicString() in CodeGeneratorV8.pm with V8StringResource
https://bugs.webkit.org/show_bug.cgi?id=103391

Reviewed by Adam Barth.

This is an incremental effort for fixing bug 103331.
I confirmed that this patch causes no performance regression
for the micro benchmarks (https://bugs.webkit.org/attachment.cgi?id=176178).

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrSetter):
(GenerateEventListenerCallback):

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

(WebCore::TestEventTargetV8Internal::addEventListenerCallback):
(WebCore::TestEventTargetV8Internal::removeEventListenerCallback):

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

(WebCore::TestObjV8Internal::addEventListenerCallback):
(WebCore::TestObjV8Internal::removeEventListenerCallback):

2:23 PM Changeset in webkit [135921] by Alexandru Chiculita
  • 3 edits
    2 adds in trunk

[CSS Regions] Elements using transforms are not repainted correctly when rendered in a region
https://bugs.webkit.org/show_bug.cgi?id=102826

Reviewed by David Hyatt.

Source/WebCore:

When the page is composited, all the elements will have a composited repaint container. In that case we will
never catch the repaints in the RenderFlowThread, but they will go directly to the RenderView.
There's a single case when the parent composited layer of an element inside the RenderFlowThread will get
its own repaints. That case only happens when the parent composited layer is also part of the same flow thread.
Right now compositing is disabled for elements inside the RenderFlowThread, so that case doesn't even happen yet.
That will be fixed in https://bugs.webkit.org/show_bug.cgi?id=84900.

Test: fast/repaint/region-painting-in-composited-view.html

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

LayoutTests:

Added test file to check for repainting inside a RenderFlowThread when the page is in composited mode.

  • fast/repaint/region-painting-in-composited-view-expected.html: Added.
  • fast/repaint/region-painting-in-composited-view.html: Added.
2:19 PM EFLWebKitBuildBots edited by laszlo.gombos@gmail.com
fix spelling (diff)
2:17 PM Changeset in webkit [135920] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, win compile fix take 2.

Try again to force this file to recompile.

  • rendering/RenderingAllInOne.cpp:
2:11 PM Changeset in webkit [135919] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed, updating TestExpectations after input slider change.

  • platform/efl/TestExpectations:
  • platform/mac/TestExpectations:
2:01 PM Changeset in webkit [135918] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, win compile fix.

Touch RenderingAllInOne.cpp to force it to rebuild.

  • rendering/RenderingAllInOne.cpp:
1:58 PM Changeset in webkit [135917] by jchaffraix@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed Qt gardening.

  • platform/qt/TestExpectations:

Skipped fast/table/css-table-max-height.html as it is showing a 12px difference.
The test is actually passing but the output wouldn't make it obvious that it is the case.

1:56 PM Changeset in webkit [135916] by timothy_horton@apple.com
  • 5 edits in trunk/Source

PDFPlugin: Scroll bars do not grow on hover
https://bugs.webkit.org/show_bug.cgi?id=103382
<rdar://problem/12555262>

Reviewed by Beth Dakin.

PDFPlugin needs to forward relevant mouse events to the scrollbars.
In addition, it needs to implement currentMousePosition so ScrollableArea and friends
can find the mouse position at arbitrary times.

I also took this opportunity to factor some coordinate space conversion functions out.

  • WebProcess/Plugins/PDF/PDFPlugin.h:

(WebKit::PDFPlugin::currentMousePosition): Added. Return the last mouse position in our coordinate space.
(WebKit::PDFPlugin::convertFromRootViewToPlugin): Added.
(WebKit::PDFPlugin::convertFromPluginToPDFView): Added.
(PDFPlugin):

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::convertFromRootViewToPlugin): Convert a point from content space to plugin space, via the transform we get in geometryDidChange.
(WebKit::PDFPlugin::convertFromPluginToPDFView): Convert a point from plugin space to PDFLayerController's flipped coordinate space.
(WebKit::PDFPlugin::geometryDidChange): Use convertFromPluginToPDFView.
(WebKit::PDFPlugin::nsEventForWebMouseEvent): Cache the mouse position in plugin space instead of PDFLayerController space. Use our new conversion functions.
(WebKit::PDFPlugin::handleMouseEvent): Forward relevant mouse events to scrollbars:
Determine which scrollbar the mouse is over now, and which it was previously over, and use that to:
If the mouse is moved over a scrollbar, send mouseEntered to the scrollbar.
If the mouse is moved out of a scrollbar, send mouseExited to the scrollbar.
If the mouse is currently over a scrollbar, send mouseMoved/Up/Down to the scrollbar instead of PDFLayerController.
If the mouse is currently over the scroll corner, bail, because nobody should get those events.

Export a few WebCore::Scrollbar methods to WebKit(2).

  • WebCore.exp.in:
1:52 PM Changeset in webkit [135915] by mitz@apple.com
  • 10 edits in trunk/Source/WebKit2

Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
https://bugs.webkit.org/show_bug.cgi?id=103358

Reviewed by Adele Peterson.

To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
prevent media from starting automatically when the view is put in a window.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
(WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.

  • UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
to true, the value matching the current behavior.
(WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
(WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
process creation parameters.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
m_mayStartMediaWhenInWindow.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
parameters.
(WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
conditional on m_mayStartMediaWhenInWindow.
(WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
already in a window when changing from false to true, starts m_setCanStartMediaTimer.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.

  • WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.
1:50 PM Changeset in webkit [135914] by tsepez@chromium.org
  • 3 edits
    2 adds in trunk

Regression(r129406): Fix the scope of the WidgetHierarchyUpdateSuspensionScope in Element::Attach().
https://bugs.webkit.org/show_bug.cgi?id=100803

Reviewed by Abhishek Arya.

Source/WebCore:

Ensures that the suspension scope has gone out of scope before calling into
resumePostAttachCallbacks().

Test: fast/dom/adopt-node-crash-2.html

  • dom/Element.cpp:

(WebCore::Element::attach):

LayoutTests:

  • fast/dom/adopt-node-crash-2-expected.txt: Added.
  • fast/dom/adopt-node-crash-2.html: Added.
1:39 PM Changeset in webkit [135913] by tony@chromium.org
  • 44 edits in trunk

Remove hidden limiter div in the input slider shadow DOM
https://bugs.webkit.org/show_bug.cgi?id=102993

Reviewed by Ojan Vafai.

Source/WebCore:

The shadow DOM for input sliders would have a hidden div (the TrackLimiterElement)
the size of the thumb which would limit the position of thumb since the width of
the thumb takes up space in the track. This patch simplifies the shadow DOM by
removing this hidden div and computing the position of the thumb taking the size of
the thumb into account.

No new tests, covered by existing tests in fast/forms.

  • css/mediaControlsChromium.css:

(input[type="range"]::-webkit-media-slider-container > div): We were depending on the behavior of the limiter having negative margins, causing the slider div
to overflow. Moving the negative margin to the slider produces the same effect.

  • css/mediaControlsChromiumAndroid.css:

(input[type="range"]::-webkit-media-slider-container > div): Ditto.

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::createShadowSubtree): Remove limiter div.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::RenderSliderContainer::layout): Adjust the available space for the thumb and correctly position in the vertical case.
(WebCore::SliderThumbElement::setPositionFromPoint): Adjust the usable track size and simplify RTL code (no need to account for the limiter).
(WebCore): Delete limiter code.

  • html/shadow/SliderThumbElement.h:

(WebCore): Delete limiter code.

  • rendering/RenderSlider.cpp:

(WebCore::RenderSlider::layout): Delete limiter code.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paintSliderTicks): Simplify code for painting tick marks.

LayoutTests:

Pixel results should be the same, but the render tree for RenderSlider has one less div.

  • platform/chromium-linux/fast/dom/HTMLInputElement/input-slider-update-expected.txt:
  • platform/chromium-linux/fast/dom/HTMLInputElement/input-slider-update-styled-expected.txt:
  • platform/chromium-linux/fast/forms/box-shadow-override-expected.txt:
  • platform/chromium-linux/fast/forms/input-appearance-height-expected.txt:
  • platform/chromium-linux/fast/forms/range/input-appearance-range-expected.txt:
  • platform/chromium-linux/fast/forms/range/range-thumb-height-percentage-expected.txt:
  • platform/chromium-linux/fast/forms/range/slider-padding-expected.txt:
  • platform/chromium-linux/fast/forms/range/slider-thumb-shared-style-expected.txt:
  • platform/chromium-linux/fast/forms/range/slider-thumb-stylability-expected.txt:
  • platform/chromium-linux/fast/multicol/client-rects-expected.txt:
  • platform/chromium-linux/fast/repaint/slider-thumb-drag-release-expected.txt:
  • platform/chromium-linux/fast/repaint/slider-thumb-float-expected.txt:
  • platform/chromium-win/fast/hidpi/video-controls-in-hidpi-expected.txt:
  • platform/chromium-win/fast/layers/video-layer-expected.txt:
  • platform/chromium-win/media/audio-controls-rendering-expected.txt:
  • platform/chromium-win/media/audio-repaint-expected.txt:
  • platform/chromium-win/media/controls-after-reload-expected.txt:
  • platform/chromium-win/media/controls-strict-expected.txt:
  • platform/chromium-win/media/controls-styling-expected.txt:
  • platform/chromium-win/media/controls-styling-strict-expected.txt:
  • platform/chromium-win/media/controls-without-preload-expected.txt:
  • platform/chromium-win/media/media-controls-clone-expected.txt:
  • platform/chromium-win/media/media-document-audio-repaint-expected.txt:
  • platform/chromium-win/media/video-controls-rendering-expected.txt:
  • platform/chromium-win/media/video-display-toggle-expected.txt:
  • platform/chromium-win/media/video-no-audio-expected.txt:
  • platform/chromium-win/media/video-playing-and-pause-expected.txt:
  • platform/chromium-win/media/video-zoom-controls-expected.txt:
  • platform/chromium-win/platform/chromium/virtual/gpu/fast/hidpi/video-controls-in-hidpi-expected.txt:
1:32 PM Changeset in webkit [135912] by zandobersek@gmail.com
  • 61 edits in trunk/Tools

Remove use of deprecated logging from webkitpy.common and webkitpy.layout_tests
https://bugs.webkit.org/show_bug.cgi?id=103408

Reviewed by Dirk Pranke.

Remove the use of the deprecated log and error methods by replacing them with
logging through Python's logging.Logger objects.

This patch covers such changes in webkitpy.common and webkitpy.layout_tests and also
updates any affected unit test.

  • Scripts/webkitpy/common/checkout/changelog.py:

(ChangeLogEntry._parse_entry):

  • Scripts/webkitpy/common/checkout/checkout.py:
  • Scripts/webkitpy/common/checkout/checkout_unittest.py:

(CheckoutTest.test_apply_patch):

  • Scripts/webkitpy/common/checkout/deps_mock.py:

(MockDEPS.write_variable):

  • Scripts/webkitpy/common/checkout/scm/detection.py:

(SCMDetector.default_scm):

  • Scripts/webkitpy/common/checkout/scm/detection_unittest.py:

(SCMDetectorTest.test_detect_scm_system):

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git._check_git_architecture):
(Git._commit_on_branch):

  • Scripts/webkitpy/common/checkout/scm/scm.py:

(SCM.ensure_clean_working_directory):
(SCM.ensure_no_local_commits):
(SCM.will.commit_locally_with_message):

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.apply_reverse_diff):

  • Scripts/webkitpy/common/net/bugzilla/attachment.py:

(Attachment._validate_flag_value):

  • Scripts/webkitpy/common/net/bugzilla/bugzilla.py:

(Bugzilla._fetch_bug_page):
(Bugzilla.bug_id_for_attachment_id):
(Bugzilla.authenticate):
(Bugzilla._commit_queue_flag):
(Bugzilla.add_attachment_to_bug):
(Bugzilla.add_patch_to_bug):
(Bugzilla.create_bug):
(Bugzilla.clear_attachment_flags):
(Bugzilla.set_flag_on_attachment):
(Bugzilla.obsolete_attachment):
(Bugzilla.add_cc_to_bug):
(Bugzilla.post_comment_to_bug):
(Bugzilla.close_bug_as_fixed):
(Bugzilla.reassign_bug):
(reopen_bug):

  • Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:

(MockBugzilla.create_bug):
(MockBugzilla.reassign_bug):
(MockBugzilla.set_flag_on_attachment):
(MockBugzilla.post_comment_to_bug):
(MockBugzilla.add_attachment_to_bug):
(MockBugzilla.add_patch_to_bug):
(MockBugzilla.reopen_bug):

  • Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:

(test_add_cc_to_bug):
(_assert_reopen):
(test_reopen_bug):

  • Scripts/webkitpy/common/net/buildbot/buildbot_mock.py:

(MockBuilder.force_build):

  • Scripts/webkitpy/common/net/credentials.py:

(Credentials._run_security_tool):

  • Scripts/webkitpy/common/net/credentials_unittest.py:

(_assert_security_call):

  • Scripts/webkitpy/common/net/irc/irc_mock.py:

(MockIRC.post):
(MockIRC.disconnect):

  • Scripts/webkitpy/common/net/irc/ircproxy.py:

(IRCProxy.init):
(IRCProxy.disconnect):

  • Scripts/webkitpy/common/net/irc/ircproxy_unittest.py:

(IRCProxyTest.test_trivial):

  • Scripts/webkitpy/common/net/layouttestresults.py:

(ORWTResultsHTMLParser._failures_from_fail_row):

  • Scripts/webkitpy/common/net/layouttestresults_unittest.py:

(test_failures_from_fail_row):

  • Scripts/webkitpy/common/net/networktransaction.py:
  • Scripts/webkitpy/common/net/resultsjsonparser.py:

(JSONTestResult._tokenize):
(JSONTestResult._failure_types_from_actual_result):

  • Scripts/webkitpy/common/net/statusserver.py:

(StatusServer.update_status):
(StatusServer.update_svn_revision):

  • Scripts/webkitpy/common/net/statusserver_mock.py:

(MockStatusServer.release_work_item):
(MockStatusServer.update_work_items):
(MockStatusServer.submit_to_ews):
(MockStatusServer.update_status):

  • Scripts/webkitpy/common/net/unittestresults.py:

(UnitTestResults.results_from_string):

  • Scripts/webkitpy/common/system/executive_mock.py:

(MockExecutive.running_pids):
(MockExecutive.run_and_throw_if_fail):
(MockExecutive.run_command):
(MockExecutive.popen):

  • Scripts/webkitpy/common/system/user_mock.py:

(MockUser.confirm):
(MockUser.open_url):

  • Scripts/webkitpy/common/system/workspace_unittest.py:

(WorkspaceTest.test_create_zip):
(WorkspaceTest.test_create_zip_exception):

  • Scripts/webkitpy/common/watchlist/watchlist_mock.py:

(MockWatchList.determine_cc_and_messages):

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

(ChromiumWinTest.test_setup_environ_for_server_register_cygwin):

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

(EflPortTest.test_show_results_html_file):

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

(GtkPortTest.test_show_results_html_file):

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

(test_show_results_html_file):

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

(test_build_driver):

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

(QtPortTest.test_show_results_html_file):

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

(WinPortTest.test_show_results_html_file):

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

(XvfbDriverTest.assertDriverStartSuccessful):
(XvfbDriverTest.test_start_no_pixel_tests):
(XvfbDriverTest.test_start_pixel_tests):
(XvfbDriverTest.test_start_arbitrary_worker_number):
(XvfbDriverTest.test_start_next_worker):
(XvfbDriverTest.test_stop):

  • Scripts/webkitpy/layout_tests/servers/apache_http_server_unittest.py:

(TestLayoutTestApacheHttpd.test_start_cmd):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_run_test_pause_before_testing):
(test_run_memory_test):
(_test_run_with_json_output):
(test_run_respects_no_results):
(test_run_generates_and_show_results_page):
(test_run_respects_no_show_results):

  • Scripts/webkitpy/tool/bot/feeders_unittest.py:

(FeedersTest.test_commit_queue_feeder):

  • Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:

(FlakyTestReporterTest.test_create_bug_for_flaky_test):
(test_report_flaky_tests_creating_bug):

  • Scripts/webkitpy/tool/bot/irc_command_unittest.py:

(IRCCommandTest.test_rollout_updates_working_copy):

  • Scripts/webkitpy/tool/bot/ircbot_unittest.py:

(IRCBotTest.test_exception_during_command):
(IRCBotTest.test_hi):
(IRCBotTest.test_help):
(IRCBotTest.test_restart):
(IRCBotTest.test_rollout):
(IRCBotTest.test_revert):
(IRCBotTest.test_roll_chromium_deps):
(IRCBotTest.test_roll_chromium_deps_to_lkgr):
(IRCBotTest.test_multi_rollout):
(IRCBotTest.test_rollout_with_r_in_svn_revision):
(IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
(IRCBotTest.test_rollout_bananas):
(IRCBotTest.test_rollout_invalidate_revision):
(IRCBotTest.test_rollout_invalidate_reason):
(test_multi_rollout_invalidate_reason):
(test_rollout_no_reason):
(test_multi_rollout_no_reason):

  • Scripts/webkitpy/tool/bot/sheriff_unittest.py:

(SheriffTest.test_post_blame_comment_on_bug):

  • Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py:

(ApplyWatchListLocalTest.test_args_parsing):
(test_args_parsing_with_bug):

  • Scripts/webkitpy/tool/commands/download_unittest.py:

(test_land_cowboy):
(test_check_style):
(test_create_rollout):
(test_create_rollout_resolved):
(test_rollout):

  • Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:

(AbstractEarlyWarningSystemTest.test_failing_tests_message):
(EarlyWarningSytemTest._default_expected_logs):
(EarlyWarningSytemTest._test_builder_ews):
(EarlyWarningSytemTest._test_testing_ews):

  • Scripts/webkitpy/tool/commands/openbugs_unittest.py:

(OpenBugsTest.test_args_parsing):

  • Scripts/webkitpy/tool/commands/queries_unittest.py:

(QueryCommandsTest.test_bugs_to_commit):
(QueryCommandsTest.test_patches_in_commit_queue):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

(FeederQueueTest.test_feeder_queue):
(AbstractPatchQueueTest.test_next_patch):
(AbstractPatchQueueTest.test_upload_results_archive_for_patch):
(CommitQueueTest.test_commit_queue):
(test_commit_queue_failure):
(test_commit_queue_failure_with_failing_tests):
(test_rollout):
(test_rollout_lands):
(test_auto_retry):
(test_manual_reject_during_processing):
(test_report_flaky_tests):
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):

  • Scripts/webkitpy/tool/commands/queuestest.py:

(QueuesTest._default_begin_work_queue_logs):

  • Scripts/webkitpy/tool/commands/roll_unittest.py:

(RollCommandsTest.test_update_chromium_deps):

  • Scripts/webkitpy/tool/commands/upload_unittest.py:

(UploadCommandsTest.test_assign_to_committer):
(test_post):
(test_attach_to_bug):
(test_attach_to_bug_no_description_or_comment):
(test_land_safely):
(test_prepare):
(test_upload):
(test_mark_bug_fixed):

  • Scripts/webkitpy/tool/steps/applywatchlist_unittest.py:

(ApplyWatchListTest.test_apply_watch_list_local):

  • Scripts/webkitpy/tool/steps/commit_unittest.py:

(CommitTest._test_check_test_expectations):

  • Scripts/webkitpy/tool/steps/runtests_unittest.py:

(RunTestsTest.test_webkit_run_unit_tests):

  • Scripts/webkitpy/tool/steps/steps_unittest.py:

(StepsTest._assert_step_output_with_bug):
(StepsTest._assert_post_diff_output_for_bug):
(StepsTest.test_post_diff):
(StepsTest.test_post_diff_for_commit):
(StepsTest.test_ensure_bug_is_open_and_assigned):
(StepsTest.test_runtests_args):

  • Scripts/webkitpy/tool/steps/suggestreviewers_unittest.py:

(SuggestReviewersTest.test_basic):

  • Scripts/webkitpy/tool/steps/validatechangelogs_unittest.py:

(ValidateChangeLogsTest._assert_start_line_produces_output):

1:22 PM Changeset in webkit [135911] by hclam@chromium.org
  • 17 edits
    2 adds in trunk/Source

[chromium] Implement full-featured image cache
https://bugs.webkit.org/show_bug.cgi?id=99784

Reviewed by Stephen White.

Source/WebCore:

Implement a thread-safe image cache to be used with deferred image
decoding. Image cache can now be accessed on any thread.

The patch implements the following logic:

  1. Mutex to protect all cache operations.
  2. Cache indexing using key (ImageFrameGenerator*, SkISize scaledSize)
  3. Cache lookup.
  4. Cache insertion.
  5. Generation of cache entry by scaling full size image.
  6. Generation of cache entries by decoding and scaling.

Classes involved:

ImageDecodingStore

Responsible for owning cache entries and indexing. Pruning and memory
management will be added later.

ImageFrameGenerator

Responsible for generating new cache enties and insert them into
ImageDecodingStore.

LazyDecodingPixelRef

Responsible for cache lookup and lazy generation of cache entries
using ImageFrameGenerator. There is a mutex to protect concurrent
lock operations.

These items are not implemented in this patch:

  1. Cache pruning.
  2. Setting cache memory limit.
  3. Cache deletion.
  4. Caching incomplete images and ImageDecoder.

Unit tests added in ImageFrameGeneratorTest.cpp.
Layout tests are under platform/chromium/virtual/fast/images.

  • platform/graphics/chromium/DeferredImageDecoder.cpp:

(WebCore::DeferredImageDecoder::~DeferredImageDecoder):
(WebCore::DeferredImageDecoder::createResizedLazyDecodingBitmap):
(WebCore::DeferredImageDecoder::setEnabled):
(WebCore):
(WebCore::DeferredImageDecoder::frameBufferAtIndex):
(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):

  • platform/graphics/chromium/DeferredImageDecoder.h:

(DeferredImageDecoder):

  • platform/graphics/chromium/ImageDecodingStore.cpp:

(WebCore::ImageDecodingStore::instance):
(WebCore::ImageDecodingStore::initializeOnce):
(WebCore::ImageDecodingStore::shutdown):
(WebCore::ImageDecodingStore::lockCompleteCache):
Lookup complete cache entry using hash key, increment use count.
(WebCore::ImageDecodingStore::lockIncompleteCache): TODO.
(WebCore::ImageDecodingStore::unlockCache):
Lookup cache entry using hash key, decrement use count.
(WebCore):
(WebCore::ImageDecodingStore::insertAndLockCache):
Insert new cache entry and increment use count.
(WebCore::ImageDecodingStore::prune): TODO.

  • platform/graphics/chromium/ImageDecodingStore.h:

(WebCore):
(ImageDecodingStore):
(WebCore::ImageDecodingStore::CacheEntry::create):
(WebCore::ImageDecodingStore::CacheEntry::createAndUse):
(CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::~CacheEntry):

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):
Method for creating new cache entries. This is protected by a mutex
to prevent concurrent operations. Which means only one thread can
generate new cache entries for a set of encoded data.
(WebCore):
(WebCore::ImageFrameGenerator::tryToLockCache):
Tries to lookup a cache entry.
(WebCore::ImageFrameGenerator::tryToScale):
Tries to lookup a full size cache entry and generate a scaled version.
(WebCore::ImageFrameGenerator::tryToDecodeAndScale):
Tries to decode and scale.

  • platform/graphics/chromium/ImageFrameGenerator.h:

(WebCore):
(ImageDecoderFactory):
(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setImageDecoderFactoryForTesting):

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::LazyDecodingPixelRef):
(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):

  • platform/graphics/chromium/LazyDecodingPixelRef.h:

(WebCore):
(LazyDecodingPixelRef):

  • platform/graphics/chromium/ScaledImageFragment.cpp:

(WebCore::ScaledImageFragment::ScaledImageFragment):

  • platform/graphics/chromium/ScaledImageFragment.h:

(WebCore):
(WebCore::ScaledImageFragment::create):
(ScaledImageFragment):
(WebCore::ScaledImageFragment::scaledSize):

  • platform/graphics/chromium/SkSizeHash.h: Added.

(WTF):

Source/WebKit/chromium:

Added ImageFrameGeneratorTest to test cache logic and generation
of new cache entries.

ImageFrameGeneratorTest.cacheHit
Test that a complete cached entry is reused.

ImageFrameGeneratorTest.cacheMissWithScale
Cache miss for a scaled image but cache hit on a full size image.
Scaled image is created from cached full size image.

ImageFrameGeneratorTest.cacheMissWithDecodeAndScale
Cache miss for both scaled image and full size image.

ImageFrameGeneratorTest.cacheMissWithIncompleteDecode
Test the logic for handling incomplete cache objects.

  • WebKit.gypi:
  • src/WebKit.cpp:

(WebKit::initializeWithoutV8):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setDeferredImageDecodingEnabled):

  • tests/DeferredImageDecoderTest.cpp:

(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):
(WebCore::DeferredImageDecoderTest::frameBufferRequested):
(DeferredImageDecoderTest):
(WebCore::DeferredImageDecoderTest::frameStatus):

  • tests/ImageFrameGeneratorTest.cpp: Added.

(WebCore):
(WebCore::fullSize):
(WebCore::scaledSize):
(MockImageDecoderFactory):
(WebCore::MockImageDecoderFactory::create):
(WebCore::MockImageDecoderFactory::MockImageDecoderFactory):
(ImageFrameGeneratorTest):
(WebCore::ImageFrameGeneratorTest::SetUp):
(WebCore::ImageFrameGeneratorTest::TearDown):
(WebCore::ImageFrameGeneratorTest::decoderBeingDestroyed):
(WebCore::ImageFrameGeneratorTest::frameBufferRequested):
(WebCore::ImageFrameGeneratorTest::frameStatus):
(WebCore::ImageFrameGeneratorTest::createCompleteImage):
(WebCore::ImageFrameGeneratorTest::setFrameStatus):
(WebCore::TEST_F):

  • tests/MockImageDecoder.h:

(MockImageDecoderClient):
(WebCore::MockImageDecoder::frameBufferAtIndex):

1:22 PM Changeset in webkit [135910] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: fast/frames/frame-name-reset.html crashing intermittently
https://bugs.webkit.org/show_bug.cgi?id=103451

  • platform/chromium/TestExpectations:
1:14 PM Changeset in webkit [135909] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: platform/chromium/virtual/gpu/fast/canvas/font-update.html
https://bugs.webkit.org/show_bug.cgi?id=103449

  • platform/chromium/TestExpectations:
1:05 PM Changeset in webkit [135908] by mkwst@chromium.org
  • 3 edits in trunk/Source/WebCore

Expanding variable names in ConsoleMessage.
https://bugs.webkit.org/show_bug.cgi?id=103436

Reviewed by Adam Barth.

Variable names like 'm' should be replaced with full words, like
'myOhMyThisIsAnAwesomeVariable' (or something more descriptive).

  • inspector/ConsoleMessage.cpp:

(WebCore::ConsoleMessage::ConsoleMessage):

  • inspector/ConsoleMessage.h:

(ConsoleMessage):

1:05 PM Changeset in webkit [135907] by Lucas Forschler
  • 5 edits in branches/safari-536.28-branch/Source/WebKit2

Merge patch for <rdar://problem/11755093>

1:00 PM Changeset in webkit [135906] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Use-after-free in media player handling
https://bugs.webkit.org/show_bug.cgi?id=103426

Patch by Aaron Colwell <acolwell@chromium.org> on 2012-11-27
Reviewed by Eric Carlson.

Source/WebCore:

Fixed use-after-free bugs caused by the MediaSource not being closed before the HTMLMediaElement or the MediaPlayer
is destroyed. Closing the MediaSource causes it to clear its reference to the MediaPlayer which prevents
the use-after-free problems from happening.

Test: http/tests/media/media-source/video-media-source-closed-on-htmlmediaelement-destruction.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::~HTMLMediaElement):
(WebCore::HTMLMediaElement::clearMediaPlayer):

LayoutTests:

  • Added a test to verify that the MediaSource gets closed when the HTMLMediaElement is destroyed after it is removed from the DOM.
  • Updated video-media-source-state-changes-expected.txt to reflect a slight change in event dispatch ordering.
  • http/tests/media/media-source/video-media-source-closed-on-htmlmediaelement-destruction-expected.txt: Added.
  • http/tests/media/media-source/video-media-source-closed-on-htmlmediaelement-destruction.html: Added.
  • http/tests/media/media-source/video-media-source-state-changes-expected.txt:
12:47 PM Changeset in webkit [135905] by Lucas Forschler
  • 8 edits in branches/safari-536.28-branch

Merged r133702. <rdar://problem/12679814>

12:45 PM Changeset in webkit [135904] by dgrogan@chromium.org
  • 24 edits in trunk

IndexedDB: Remove IDBDatabase.setVersion API
https://bugs.webkit.org/show_bug.cgi?id=94972

Reviewed by Tony Chang.

Source/WebCore:

This has been out of the spec for over a year. No other browser has
implemented it for close to a year.

Tests - removed.html

  • Modules/indexeddb/IDBCallbacks.h:

(IDBCallbacks):

  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::IDBDatabase):

  • Modules/indexeddb/IDBDatabase.h:

(IDBDatabase):

  • Modules/indexeddb/IDBDatabase.idl:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseBackendInterface.h:

(IDBDatabaseBackendInterface):

  • Modules/indexeddb/IDBRequest.cpp:
  • Modules/indexeddb/IDBRequest.h:

Source/WebKit/chromium:

  • src/IDBCallbacksProxy.cpp:
  • src/IDBCallbacksProxy.h:

(IDBCallbacksProxy):

  • src/IDBDatabaseBackendProxy.cpp:
  • src/IDBDatabaseBackendProxy.h:

(IDBDatabaseBackendProxy):

  • src/WebIDBCallbacksImpl.cpp:
  • src/WebIDBCallbacksImpl.h:

(WebIDBCallbacksImpl):

  • src/WebIDBDatabaseImpl.cpp:
  • src/WebIDBDatabaseImpl.h:

(WebIDBDatabaseImpl):

LayoutTests:

  • storage/indexeddb/removed-expected.txt:
  • storage/indexeddb/resources/removed.js:

(test):

12:44 PM Changeset in webkit [135903] by mkwst@chromium.org
  • 3 edits
    2 adds in trunk

Log to console when autofocus is blocked by sandbox attribute.
https://bugs.webkit.org/show_bug.cgi?id=103255

Reviewed by Ojan Vafai.

Source/WebCore:

Adding a short log message when autofocus is blocked by a document's
sandbox flags, as it's currently a black box.

Test: fast/forms/autofocus-in-sandbox-without-allow-scripts.html

  • html/HTMLFormControlElement.cpp:

(WebCore::shouldAutofocus):

LayoutTests:

  • fast/forms/autofocus-in-sandbox-without-allow-scripts-expected.txt: Added.
  • fast/forms/autofocus-in-sandbox-without-allow-scripts.html: Added.
12:40 PM Changeset in webkit [135902] by Lucas Forschler
  • 19 edits in branches/safari-536.28-branch

Merged r133371. <rdar://problem/12632316>

12:40 PM Changeset in webkit [135901] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: ImageOnlyFailure in fast/canvas/font-update.html
https://bugs.webkit.org/show_bug.cgi?id=103447

  • platform/chromium/TestExpectations:
12:32 PM Changeset in webkit [135900] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] http:// origins can navigate to privileged local:// origins
https://bugs.webkit.org/show_bug.cgi?id=103437

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Yong Li.

PR: 251489
When we aren't allowed to display the destination origin, we shouldn't
even create the window for it. In this way we can block the remote
origins(like http://) window.open local origins(like file:// and
local://) and avoid further security issues.
Chrome and Safari will open a blank window and fail to load. Firefox
will fail to open the window and report a load failure error which has
the same behavior as us. I would prefer this way as the window would
be useless and the calls after that would be harmful to us.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::createWindow):

12:27 PM Changeset in webkit [135899] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Add bug numbers to flaky tests.

  • platform/efl/TestExpectations:
12:27 PM Changeset in webkit [135898] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Remove unnecessary backing store suspension in InputHandler::ensureFocusTextElementVisible
https://bugs.webkit.org/show_bug.cgi?id=103441

Patch by Andrew Lo <anlo@rim.com> on 2012-11-27
Reviewed by Rob Buis.
Internally reviewed by Mike Fenton.

Remove unnecessary backing store suspension in
InputHandler::ensureFocusTextElementVisible.

Not necessary anymore since both zoom and scroll adjustments
happen in an animation.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

12:21 PM Changeset in webkit [135897] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Gardening: Updated TestExpecations for failure in
http/tests/canvas/canvas-slow-font-loading.html
https://bugs.webkit.org/show_bug.cgi?id=103446

  • platform/chromium/TestExpectations:
12:09 PM Changeset in webkit [135896] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Attempted build fix after http://trac.webkit.org/changeset/135888.

  • WebCore.exp.in:
  • WebCore.order:
12:00 PM Changeset in webkit [135895] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix after r135890. #else, not #elif.

  • platform/graphics/ca/PlatformCALayer.h:

(PlatformCALayer):

11:59 AM Changeset in webkit [135894] by Lucas Forschler
  • 7 edits in branches/safari-536.28-branch/Source

Merged 133338 for <rdar://problem/12632316>

11:58 AM Changeset in webkit [135893] by rniwa@webkit.org
  • 21 edits in trunk/Source/WebCore

HTMLCollection on Document should be stored on NodeListsNodeData like other HTMLCollections and LiveNodeLists
https://bugs.webkit.org/show_bug.cgi?id=103364

Reviewed by Anders Carlsson.

Replaced the HTMLCollection storage in Document by NodeListsNodeData used by other HTMLCollection's
and LiveNodeList's. Now NodeListsNodeData is the only storage for HTMLCollection and LiveNodeList.

  • dom/Document.cpp:

(WebCore::Document::Document): Removed code for m_collection since it has been removed.
(WebCore::Document::~Document): Ditto.
(WebCore::Document::registerNodeList): Renamed.
(WebCore::Document::unregisterNodeList): Ditto.
(WebCore::Document::ensureCachedCollection): Renamed from cachedCollection to match the convetion
used elsewhere. Also use NodeListNodeData::addCacheWithAtomicName now that m_collection is gone.
(WebCore::Document::images):
(WebCore::Document::applets):
(WebCore::Document::embeds):
(WebCore::Document::plugins):
(WebCore::Document::scripts):
(WebCore::Document::links):
(WebCore::Document::forms):
(WebCore::Document::anchors):
(WebCore::Document::all):
(WebCore::Document::windowNamedItems): Use addCacheWithAtomicName.
(WebCore::Document::documentNamedItems): Ditto.
(WebCore::Document::reportMemoryUsage): Removed code for m_collection since it has been removed.

  • dom/Document.h:

(WebCore::Document): Removed m_collections, m_documentNamedItemCollections, and
m_windowNamedItemCollections.

  • dom/Element.cpp:

(WebCore::Element::ensureCachedHTMLCollection): Merged ElementRareData::ensureCachedHTMLCollection.
(WebCore::Element::cachedHTMLCollection): Merged ElementRareData::cachedHTMLCollection.

  • Source/WebCore/dom/ElementRareData.h: Removed ensureCachedHTMLCollection, cachedHTMLCollection,

and removeCachedHTMLCollection since they're no longer used.

  • dom/LiveNodeList.h:

(WebCore::LiveNodeListBase::LiveNodeListBase): Call registerNodeList now that LiveNodeList
and HTMLCollection share the same storage in all nodes.
(WebCore::LiveNodeListBase::~LiveNodeListBase): Ditto about unregisterNodeList.
(WebCore::LiveNodeList): Removed the calls to registerNodeList and unregisterNodeList since they
are now called in the base class.

  • dom/NameNodeList.h:

(WebCore::NameNodeList::create):

  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::addCacheWithAtomicName): Pass in CollectionType as the second argument
to T::create. This is used in HTMLNameCollection::create. Sevearl LiveNodeList constructors and
create functions have been modified to support this.
(WebCore::NodeListsNodeData::adoptTreeScope):
(WebCore::NodeListsNodeData::namedNodeListKey): CollectionType is no longer restricted in its range.

  • dom/TagNodeList.h:

(WebCore::TagNodeList::create):
(WebCore::HTMLTagNodeList::create):

  • html/CollectionType.h: Deleted a bunch of unused inline functions and constants, and cleanup enum.
  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection): Removed the call to registerNodeListCache since it's called
in LiveNodeListBase now.
(WebCore::HTMLCollection::~HTMLCollection): Ditto. Also replaced calls to removeCachedHTMLCollection
of Element and Document by a call to NodeListsNodeData::removeCacheWithAtomicName.

  • html/HTMLFormControlsCollection.cpp:

(WebCore::HTMLFormControlsCollection::HTMLFormControlsCollection):
(WebCore::HTMLFormControlsCollection::create):

  • html/HTMLFormControlsCollection.h:

(HTMLFormControlsCollection):

  • html/HTMLNameCollection.cpp:

(WebCore::HTMLNameCollection::HTMLNameCollection):
(WebCore::HTMLNameCollection::~HTMLNameCollection):

  • html/HTMLNameCollection.h:

(WebCore::HTMLNameCollection::create):
(HTMLNameCollection):

  • html/HTMLOptionsCollection.cpp:

(WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
(WebCore::HTMLOptionsCollection::create):

  • html/HTMLOptionsCollection.h:

(HTMLOptionsCollection):

  • html/HTMLTableRowsCollection.cpp:

(WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
(WebCore::HTMLTableRowsCollection::create):

  • html/HTMLTableRowsCollection.h:

(HTMLTableRowsCollection):

  • html/LabelsNodeList.h:

(WebCore::LabelsNodeList::create):

  • html/RadioNodeList.h:

(WebCore::RadioNodeList::create):

11:56 AM Changeset in webkit [135892] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip some flaky video tests on Windows.
https://bugs.webkit.org/show_bug.cgi?id=103442

  • platform/win/TestExpectations:
11:52 AM Changeset in webkit [135891] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

max-height property not respected in case of tables
https://bugs.webkit.org/show_bug.cgi?id=98633

Patch by Pravin D <pravind.2k4@gmail.com> on 2012-11-27
Reviewed by Julien Chaffraix.

Source/WebCore:

The max-height property determines the maximum computed height an element can have. In case of tables
the computed height was not being limited by the max-height property. The current patch fixes the same.

Test: fast/table/css-table-max-height.html

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):

Helper function to compute height from the given style height.
This function handles style height of type fixed, percent and viewport percent.
As height of type 'calculated' gets internally resolved to either fixed or percent
there is no special handling required for the same.

(WebCore):
(WebCore::RenderTable::layout):

Logic to compute the logical height of an element such that it does not exceed the max-height value given that
min-width < Content height < max-height, when min-height < max-height.
However max-height value is not respected if either min-height > max-height or Content height > max-height.

  • rendering/RenderTable.h:

(RenderTable):

Function definition for the newly add function convertStyleLogicalHeightToComputedHeight().

LayoutTests:

  • fast/table/css-table-max-height-expected.txt: Added.
  • fast/table/css-table-max-height.html: Added.
11:34 AM Changeset in webkit [135890] by roger_fong@apple.com
  • 4 edits
    2 adds in trunk

Windows specific implementation of usesTileCacheLayer needed after r133056.
https://bugs.webkit.org/show_bug.cgi?id=103321

Reviewed by Simon Fraser.

After r133056 it no longer suffices to use the existing usesTileCacheLayer method on Windows.
The change resulted in 3 crashing tests:
compositing/rotated-tiled-clamped
compositing/rotated-tiled-preserve3d-clamped
fast/events/tabindex-focus-blur-all

  • platform/win/TestExpectations:

Remove the tests below from the Windows skip list.

  • platform/win/compositing/tiling/rotated-tiled-clamped-expected.txt: Added.
  • platform/win/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt: Added.

Add Windows specific results for tests added in r133056.

  • platform/graphics/ca/PlatformCALayer.h:

(WebCore::PlatformCALayer::usesTileCacheLayer):
(PlatformCALayer):
Adding in platform specific method for Windows that returns false for this method.

11:31 AM Changeset in webkit [135889] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] Gardening of failing tests
https://bugs.webkit.org/show_bug.cgi?id=103434

Unreviewed gardening.

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-27

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/efl/fast/js/global-constructors-expected.txt:
11:25 AM Changeset in webkit [135888] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Canvas does not draw any text if the font is not fully loaded yet
https://bugs.webkit.org/show_bug.cgi?id=103392

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-27
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Update CanvasRenderingContext2D::drawTextInternal() so that the
text is being drawn, even if custom fonts are still being loaded.
Without this, WebKit was not drawing any text on the canvas if
the needed font is custom and is not fully loaded yet. This seems
broken.

The new behavior is according to specification:
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html

The specification says: "If a font is used before it is fully
loaded, or if the font style source object does not have that
font in scope at the time the font is to be used, then it must be
treated as if it was an unknown font, falling back to another as
described by the relevant CSS specifications."

Test: http/tests/canvas/canvas-slow-font-loading.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::drawTextInternal):

  • platform/graphics/Font.cpp:

(WebCore::Font::drawText): Add argument to specify the behavior
when custom fonts are not ready. By default, it will not draw
anything (same behavior as before). However, the Canvas code
can now request that a fallback font is used if the custom
font is not fully loaded yet.

  • platform/graphics/Font.h: #undef Complex if defined to avoid

conflicting with Complex value in CodePath enum. X11/X.h is
defining Complex to 0.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawBidiText):

  • platform/graphics/GraphicsContext.h:

(WebCore):
(GraphicsContext):

LayoutTests:

Add canvas test to check that text is drawn using a fallback font
if the primary font is not fully loaded yet.

  • http/tests/canvas/canvas-slow-font-loading-expected.html: Added.
  • http/tests/canvas/canvas-slow-font-loading.html: Added.
11:23 AM Changeset in webkit [135887] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. fast/loader/submit-form-while-parsing-2.html is still flaky
so put it back in TestExpectations.

  • platform/efl/TestExpectations:
11:19 AM Changeset in webkit [135886] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

No need for ExceptionCode in HTMLMediaElement::load
https://bugs.webkit.org/show_bug.cgi?id=103438

Reviewed by Eric Carlson.

After https://bugs.webkit.org/show_bug.cgi?id=103318, there is no
need for the ExceptionCode parameter in load(). The HTML5 spec says
that all errors in loading are communicated via state.
http://dev.w3.org/html5/spec/media-elements.html#dom-media-load

Of the 29 tests exercising load(), none of them were exercising
exceptions (obviously).

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::load):
(WebCore::HTMLMediaElement::resume):

  • html/HTMLMediaElement.h:
  • html/HTMLMediaElement.idl:
11:16 AM Changeset in webkit [135885] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Layout Test transitions/transition-shorthand-delay.html should usePauseAPI
https://bugs.webkit.org/show_bug.cgi?id=103402

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-27
Reviewed by Simon Fraser.

PauseAPI works when pausing during delay in transitions now, using it
should fix the flakiness.

  • platform/efl/TestExpectations:
  • transitions/transition-shorthand-delay.html:
11:15 AM Changeset in webkit [135884] by robert@webkit.org
  • 3 edits
    2 adds in trunk

REGRESSION (r125578): word-wrapping in absolute position with nbsp, word-spacing and custom font
https://bugs.webkit.org/show_bug.cgi?id=101443

Reviewed by David Hyatt.

Source/WebCore:

Leading non-breaking space in a text run should always get word-spacing applied. When RenderText
calculates the preferred with of a run of text it breaks it up into word segments that contain
no breaking spaces and calculates the width of each. So when calculating the width of '&nbsp;b'
it needs to add word-spacing to the leading non-breaking space as it does not get collapsed away.

Test: fast/text/word-space-nbsp.html

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advanceInternal):

LayoutTests:

  • fast/text/word-space-nbsp-expected.html: Added.
  • fast/text/word-space-nbsp.html: Added.
11:08 AM Changeset in webkit [135883] by yoli@rim.com
  • 2 edits in trunk/Source/WebCore

[BlackBerry] EventLoop should end when WebKit thread is exiting
https://bugs.webkit.org/show_bug.cgi?id=103301

Reviewed by Rob Buis.
RIM PR# 194379.
Internally reviewed by Joe Mason.

Break the nested event loop when WebKit thread has been asked to quit.

  • platform/blackberry/EventLoopBlackBerry.cpp:

(WebCore::EventLoop::cycle):

10:58 AM Changeset in webkit [135882] by psolanki@apple.com
  • 33 edits in trunk

objc/objc-runtime.h does not exist on all PLATFORM(MAC)
https://bugs.webkit.org/show_bug.cgi?id=101780

Reviewed by Brent Fulgham.

Clean up header includes so we don't include objc/objc-runtime.h.

Source/WebCore:

No new tests because no functional changes.

  • bridge/objc/objc_header.h:
  • page/mac/EventHandlerMac.mm:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
  • platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
  • platform/graphics/mac/WebLayer.mm:
  • platform/mac/WebCoreObjCExtras.mm:
  • platform/mac/WebVideoFullscreenController.mm:

Source/WebKit/mac:

  • Carbon/HIWebView.mm:

(UpdateCommandStatus): Use wtfObjcMsgSend template instead of objc_msgSend.

  • Plugins/WebNetscapePluginView.mm:
  • Plugins/WebPluginContainerCheck.mm:

(-[WebPluginContainerCheck _continueWithPolicy:]): Use wtfObjcMsgSend template instead of objc_msgSend.

  • Plugins/WebPluginController.mm:
  • WebCoreSupport/WebCachedFramePlatformData.h:
  • WebCoreSupport/WebDeviceOrientationClient.mm:
  • WebView/WebDelegateImplementationCaching.mm:
  • WebView/WebHTMLView.mm:
  • WebView/WebPDFDocumentExtras.mm:
  • WebView/WebPolicyDelegate.mm:

(-[WebPolicyDecisionListener _usePolicy:]): Use wtfObjcMsgSend template instead of objc_msgSend.

  • WebView/WebView.mm:

Source/WebKit2:

  • PluginProcess/mac/PluginProcessShim.mm:
  • UIProcess/API/mac/PDFViewController.mm:

Source/WTF:

  • wtf/Functional.h:
  • wtf/ObjcRuntimeExtras.h: Include objc/message.h here so we don't rely on proper ordering

of includes in files that include this header.

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm:
  • DumpRenderTree/mac/ObjCPlugin.m:
  • TestWebKitAPI/mac/InstanceMethodSwizzler.h:
  • WebKitTestRunner/InjectedBundle/mac/ActivateFonts.mm:
10:52 AM Changeset in webkit [135881] by commit-queue@webkit.org
  • 11 edits in trunk/Source

Plumbing showPaintRects out of InspectorPageAgent to use a different drawing implementation if available.
https://bugs.webkit.org/show_bug.cgi?id=102452

Patch by Eberhard Graether <egraether@google.com> on 2012-11-27
Reviewed by Pavel Feldman.

This change makes the showPaintRects setting in the Web Inspector's settings notify InspectorClient
when changed. And the default paint rects drawing is not used if an alternative is available.
This allows Chromium to draw the paint rects in the compositor's HUDLayer.

Source/Platform:

  • chromium/public/WebLayerTreeView.h:

(WebLayerTreeView):
(WebKit::WebLayerTreeView::setShowPaintRects):

Source/WebCore:

No new tests.

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::overridesShowPaintRects):
(WebCore::InspectorClient::setShowPaintRects):
(InspectorClient):

  • inspector/InspectorPageAgent.cpp:

(PageAgentState):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::didPaint):

Source/WebKit/chromium:

  • public/WebView.h:

(WebView):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::overridesShowPaintRects):
(WebKit):
(WebKit::InspectorClientImpl::setShowPaintRects):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setShowPaintRects):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

10:45 AM Changeset in webkit [135880] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

Unreviewed gardening, fixing lint errors in TestExpectations.

  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
10:36 AM Changeset in webkit [135879] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2] WebPageProxy::relatedPages() cannot assume that this page is known to process
https://bugs.webkit.org/show_bug.cgi?id=103433
<rdar://problem/12543513>

Reviewed by Jessie Berlin.

  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::relatedPages): Removed an incorrect assertion, and modified code to not rely on its condition being true.
10:36 AM Changeset in webkit [135878] by Lucas Forschler
  • 3 edits in branches/safari-536.28-branch/Source/WebCore

Merge 134495 & 134666 for <rdar://problem/12696290> & <rdar://problem/12704510>

10:32 AM Changeset in webkit [135877] by tony@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Unreviewed build fix on Linux clang.

../../third_party/WebKit/Source/WebKit/chromium/src/FrameLoaderClientImpl.cpp:1055:63: error:
C++98 requires an accessible copy constructor for class 'WebKit::WebCachedURLRequest' when binding
a reference to a temporary; was private [-Werror,-Wbind-to-temporary-copy]

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchWillRequestResource):

10:30 AM Changeset in webkit [135876] by allan.jensen@digia.com
  • 1 edit
    1 delete in trunk/Source/WebCore

Unreviewed cleanup.

Remove leftover file that was replaced by PlatformScreenQt.cpp 4 years ago.

  • platform/qt/ScreenQt.cpp: Removed.
10:16 AM Changeset in webkit [135875] by yael@webkit.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Remove from TestExpectations tests that are passing.

  • platform/efl/TestExpectations:
10:14 AM Changeset in webkit [135874] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

freeV8NPObject: Skip trying to remove object from per context data's ObjectMap if the object does not exist in the map.
https://bugs.webkit.org/show_bug.cgi?id=103356

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-27
Reviewed by Adam Barth.

Before introducing per context data, it used to be the case that we would ignore removing v8 object
from context data's map if we couldn't find it. With perContextData change, this turned into an ASSERT
instead and we had crash reports.
Related crbug.com/154462.

Source/WebCore:

Test: platform/chromium/plugins/release-frame-content-window.html

  • bindings/v8/NPV8Object.cpp:

(WebCore::freeV8NPObject):

LayoutTests:

  • platform/chromium/plugins/release-frame-content-window-expected.txt: Added.
  • platform/chromium/plugins/release-frame-content-window.html: Added.
  • platform/chromium/plugins/resources/empty.html: Added.
  • platform/chromium/plugins/resources/empty2.html: Added.
10:11 AM Changeset in webkit [135873] by junov@google.com
  • 2 edits in trunk/LayoutTests

Skipping fast/backgrounds/background-opaque-images-over-color.html on mac
https://bugs.webkit.org/show_bug.cgi?id=103435

Unreviewed

  • platform/mac/TestExpectations:
10:00 AM Changeset in webkit [135872] by commit-queue@webkit.org
  • 15 edits
    4 adds in trunk

Add callbacks to the FrameLoaderClient when a resource is requested
https://bugs.webkit.org/show_bug.cgi?id=92761

Patch by Marja Hölttä <marja@chromium.org> on 2012-11-27
Reviewed by Adam Barth.

In Chromium, when an extension script cancels a network
request (which happens out of process), we'd like to
notify content scripts running on the current page about
which elements failed to load because the requests were
cancelled (as opposed to e.g. the network request just
didn't work). Since the resource request itself does not
carry any information what DOM element is was made for,
currently a content script has to search the DOM tree and
guess which requests will be cancelled by its counter
part. By adding these callbacks, the embedder can make
this connection explictly.

Source/WebCore:

Test: platform/chromium/fast/loader/resource-request-callbacks.html

  • loader/FrameLoaderClient.h:

(WebCore):
(WebCore::FrameLoaderClient::dispatchWillRequestResource):
(FrameLoaderClient):

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):

Source/WebKit/chromium:

  • WebKit.gyp:
  • public/WebCachedURLRequest.h: Added.

(WebKit):
(WebCachedURLRequest):
(WebKit::WebCachedURLRequest::~WebCachedURLRequest):

  • public/WebFrameClient.h:

(WebKit):
(WebFrameClient):
(WebKit::WebFrameClient::willRequestResource):

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchWillRequestResource):
(WebKit):

  • src/FrameLoaderClientImpl.h:

(FrameLoaderClientImpl):

  • src/WebCachedURLRequest.cpp: Added.

(WebKit):
(WebKit::WebCachedURLRequest::reset):
(WebKit::WebCachedURLRequest::urlRequest):
(WebKit::WebCachedURLRequest::charset):
(WebKit::WebCachedURLRequest::forPreload):
(WebKit::WebCachedURLRequest::initiatorName):
(WebKit::WebCachedURLRequest::initiatorElement):
(WebKit::WebCachedURLRequest::WebCachedURLRequest):

Tools:

  • DumpRenderTree/chromium/DRTTestRunner.cpp:

(DRTTestRunner::DRTTestRunner):
(DRTTestRunner::dumpResourceRequestCallbacks):
(DRTTestRunner::reset):

  • DumpRenderTree/chromium/DRTTestRunner.h:

(DRTTestRunner):
(DRTTestRunner::setShouldDumpResourceRequestCallbacks):
(DRTTestRunner::shouldDumpResourceRequestCallbacks):

  • DumpRenderTree/chromium/TestShell.h:

(TestShell::shouldDumpResourceRequestCallbacks):

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::willRequestResource):

  • DumpRenderTree/chromium/WebViewHost.h:

(WebViewHost):

LayoutTests:

  • platform/chromium/fast/loader/resource-request-callbacks-expected.txt: Added.
  • platform/chromium/fast/loader/resource-request-callbacks.html: Added.
9:59 AM Changeset in webkit [135871] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

Fix world-reuse test for mac build
https://bugs.webkit.org/show_bug.cgi?id=103385

Patch by Dan Carney <dcarney@google.com> on 2012-11-27
Reviewed by Jochen Eisinger.

Mac and chrome builds have different expectations for where
an isolated world is executed.

  • http/tests/security/isolatedWorld/world-reuse.html:
9:57 AM Changeset in webkit [135870] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: updated TestExpectations for crashes in
media/video-duration-known-after-eos.html
https://bugs.webkit.org/show_bug.cgi?id=103183

  • platform/chromium/TestExpectations:
9:53 AM Changeset in webkit [135869] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for r135866.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::load):

9:45 AM Changeset in webkit [135868] by dgrogan@chromium.org
  • 2 edits in trunk/LayoutTests

IndexedDB: Make test resilient to different event ordering
https://bugs.webkit.org/show_bug.cgi?id=103344

Reviewed by Tony Chang.

This test was failing in multi-process chromium because the blocked
event can arrive before the versionchange event.

  • storage/indexeddb/pending-version-change-on-exit.html:
9:40 AM Changeset in webkit [135867] by leoyang@rim.com
  • 5 edits in trunk/Source/WebCore

[BlackBerry] Adapt to the change of BlackBerry::Platform::FilterStream::notifyHeadersReceived
https://bugs.webkit.org/show_bug.cgi?id=103425

Reviewed by Yong Li.

A const has been added for HeaderList parameter of BlackBerry::Platform::FilterStream::notifyHeadersReceived.
The patch is adapting to this change.

No functionalities changed no new tests.

  • platform/network/blackberry/NetworkJob.cpp:

(WebCore::NetworkJob::notifyHeadersReceived):

  • platform/network/blackberry/NetworkJob.h:

(NetworkJob):

  • platform/network/blackberry/rss/RSSFilterStream.cpp:

(WebCore::RSSFilterStream::notifyHeadersReceived):

  • platform/network/blackberry/rss/RSSFilterStream.h:
9:39 AM Changeset in webkit [135866] by commit-queue@webkit.org
  • 5 edits in trunk

Don't throw an exception if user gesture is required for load
https://bugs.webkit.org/show_bug.cgi?id=103318

Patch by Min Qin <qinmin@chromium.org> on 2012-11-27
Reviewed by Eric Carlson.

Source/WebCore:

There is no need to throw an exception if media load requires user gesture.
Since chrome does not render the poster and media control after an exception is thrown, throwing an exception may break a lot of sites on android.
Change a current test to match the new behavior: media/video-load-require-user-gesture.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::load):

LayoutTests:

Check that exception is not thrown and metadata is not loaded if media load requires user gesture.

  • media/video-load-require-user-gesture-expected.txt:
  • media/video-load-require-user-gesture.html:
9:11 AM Changeset in webkit [135865] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip a new failing test to paint the bots green.

  • platform/qt/TestExpectations:
9:02 AM Changeset in webkit [135864] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][Qt][WK2] Tiles not always painted
https://bugs.webkit.org/show_bug.cgi?id=103271

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-27
Reviewed by Kenneth Rohde Christiansen.

The problem turned up because visible content was synchromized before the new fixed
layout size had been applied in the web process.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::didChangeViewportSize):
(WebKit::PageViewportController::didChangeViewportAttributes):

7:58 AM Changeset in webkit [135863] by commit-queue@webkit.org
  • 5 edits in trunk

[GStreamer] Verify if GStreamer was previously initialized
https://bugs.webkit.org/show_bug.cgi?id=103151

Patch by Víctor Manuel Jáquez Leal <vjaquez@igalia.com> on 2012-11-27
Reviewed by Philippe Normand.

Source/WebCore:

This patch calls gst_is_initialized() before calling gst_init_check()
in order to verify if GStreamer has not been initialized before.

This is useful particularly for WebKit1 so the applications could
initialize GStreamer before.

As the API call was added in GStreamer v0.10.31, the patch fences the
call only in that version of GStreamer or above.

No new tests, existing media tests cover this change.

  • platform/graphics/gstreamer/GStreamerUtilities.cpp:

(WebCore::initializeGStreamer):

Tools:

This patch adds the gst_init() in GtkLauncher, so we can add the
GStreamer options in the command line through
gst_init_get_option_group().

This approach is not valid for MiniBrowser because it uses WebKit2,
where the GStreamer backend lives in the web process, which is
different from the UI process.

  • GNUmakefile.am:
  • GtkLauncher/main.c:

(main):

7:50 AM Changeset in webkit [135862] by haraken@chromium.org
  • 4 edits in trunk/Source/WebCore

[V8] Remove V8StringResource::m_string
https://bugs.webkit.org/show_bug.cgi?id=103367

Reviewed by Adam Barth.

This patch cleans up V8StringResource and removes V8StringResource::m_string.
This patch won't change performance. (This patch just adds one redundant IsString()
check and one IsInt32() check.) I confirmed no performance regression in micro benchmarks
(https://bugs.webkit.org/attachment.cgi?id=176178).

No tests. No change in behavior.

  • bindings/v8/V8Binding.cpp:

(WebCore::v8NonStringValueToWebCoreString):

  • bindings/v8/V8StringResource.cpp:

(WebCore::int32ToWebCoreStringFast):
(WebCore::String):
(WebCore::AtomicString):
(WebCore):

  • bindings/v8/V8StringResource.h:

(WebCore::V8StringResource::V8StringResource):
(WebCore::V8StringResource::prepareBase):
(WebCore::V8StringResource::toString):
(V8StringResource):
(WebCore::::prepare):

7:45 AM Changeset in webkit [135861] by junov@google.com
  • 2 edits in trunk/LayoutTests

Correcting baseline for fast/backgrounds/background-opaque-images-over-color.html
https://bugs.webkit.org/show_bug.cgi?id=103275

Unreviewed

Fixing small error in ref test baseline.

  • fast/backgrounds/background-opaque-images-over-color-expected.html:
7:06 AM Changeset in webkit [135860] by keishi@webkit.org
  • 4 edits in trunk/Source

Add WebLocalizedString for validation type badinput
https://bugs.webkit.org/show_bug.cgi?id=103381

Reviewed by Kent Tamura.

Source/Platform:

Adding WebLocalizedString enums for validation type badinput text.

  • chromium/public/WebLocalizedString.h:

Source/WebKit/chromium:

  • src/LocalizedStrings.cpp:

(WebCore::validationMessageBadInputForNumberText): Using the newly added WebLocalizedString enum.
(WebCore::validationMessageBadInputForDateTimeText): Ditto.

6:56 AM Changeset in webkit [135859] by junov@google.com
  • 2 edits
    1 add
    3 deletes in trunk/LayoutTests

Convert test fast/backgrounds/background-opaque-images-over-color.html to a ref test
https://bugs.webkit.org/show_bug.cgi?id=103275

Reviewed by Simon Fraser

Removing existing baselines, and adding an -expecte.html to make
fast/backgrounds/background-opaque-images-over-color.html a ref test

  • fast/backgrounds/background-opaque-images-over-color-expected.html: Added.
  • fast/backgrounds/background-opaque-images-over-color-expected.txt: Removed.
  • fast/backgrounds/background-opaque-images-over-color.html:
  • platform/chromium-mac/fast/backgrounds/background-opaque-images-over-color-expected.png: Removed.
  • platform/chromium-win/fast/backgrounds/background-opaque-images-over-color-expected.png: Removed.
6:42 AM Changeset in webkit [135858] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL] Graphics layer edges are sometimes very pixelated
https://bugs.webkit.org/show_bug.cgi?id=103302

Patch by Yael Aharon <yael.aharon@intel.com> on 2012-11-27
Reviewed by Kenneth Rohde Christiansen.

The call setEnableEdgeDistanceAntialiasing(true) was lost in the refactoring of
http://trac.webkit.org/changeset/135401.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::paintToCurrentGLContext):

6:11 AM Changeset in webkit [135857] by abecsi@webkit.org
  • 4 edits in trunk/Tools

[Qt] Fix the build with new Qt5 hash
https://bugs.webkit.org/show_bug.cgi?id=103406

Reviewed by Csaba Osztrogonác.

Remove references to deprecated QApplication::GuiServer which
has been removed, and use QStyleFactory::create instead of
instantiating a QWindowsStyle directly since it is about to
become an internal class.

  • DumpRenderTree/qt/DumpRenderTreeMain.cpp:

(main):

  • QtTestBrowser/qttestbrowser.cpp:

(LauncherApplication::LauncherApplication):

  • WebKitTestRunner/InjectedBundle/qt/InjectedBundleQt.cpp:

(WTR::InjectedBundle::platformInitialize):

6:10 AM Changeset in webkit [135856] by alecflett@chromium.org
  • 14 edits in trunk/Source

IndexedDB: stub out IDBDatabaseBackendInterface::createTransaction
https://bugs.webkit.org/show_bug.cgi?id=102730

Reviewed by Darin Fisher.

Source/WebCore:

Stub out and support passing a 64-bit transaction id
so the frontend can refer to transactions by id rather than
a proxy object or a direct pointer reference. This will ultimately
loosen ownership and lifetime of transactions from the frontend
and backend.

No new tests, this is just part of a refactor.

  • Modules/indexeddb/IDBDatabase.cpp:
  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore):
(WebCore::IDBDatabaseBackendImpl::transaction):
(WebCore::IDBDatabaseBackendImpl::createTransaction):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBDatabaseBackendInterface.h:

(IDBDatabaseBackendInterface):

  • Modules/indexeddb/IDBTransactionBackendImpl.cpp:

(WebCore::IDBTransactionBackendImpl::create):
(WebCore::IDBTransactionBackendImpl::IDBTransactionBackendImpl):

  • Modules/indexeddb/IDBTransactionBackendImpl.h:

(IDBTransactionBackendImpl):
(WebCore::IDBTransactionBackendImpl::id):

Source/WebKit/chromium:

Add support for new createTransaction() method in both sides
of the WebKit API.

  • public/WebIDBDatabase.h:

(WebIDBDatabase):
(WebKit::WebIDBDatabase::createTransaction):

  • src/IDBDatabaseBackendProxy.cpp:

(WebKit):
(WebKit::IDBDatabaseBackendProxy::createTransaction):

  • src/IDBDatabaseBackendProxy.h:

(IDBDatabaseBackendProxy):

  • src/WebIDBDatabaseImpl.cpp:

(WebKit::WebIDBDatabaseImpl::createTransaction):
(WebKit):

  • src/WebIDBDatabaseImpl.h:

(WebIDBDatabaseImpl):

5:56 AM Changeset in webkit [135855] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[EFL] Mark tests flaky
https://bugs.webkit.org/show_bug.cgi?id=103403

Unreviewed expectations update for EFL: Mark tests flaky based on
flakiness dashboard and testing. Also rearrange efl/TestExpectations
so all media flakes are next to each other.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-27

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
5:52 AM Changeset in webkit [135854] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WTF

Unreviewed, rolling out r135828.
http://trac.webkit.org/changeset/135828
https://bugs.webkit.org/show_bug.cgi?id=103405

[Chromium] Multiple ASAN errors after a WebKit roll due to
mismatched malloc/delete (not free) resulting from
StringImpl::deref() (Requested by apavlov on #webkit).

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

  • wtf/FastAllocBase.h:
  • wtf/Platform.h:
5:49 AM Changeset in webkit [135853] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[CSS Regions] Crash when dispatching regionlayoutupdate
https://bugs.webkit.org/show_bug.cgi?id=102944

Patch by Andrei Bucur <abucur@adobe.com> on 2012-11-27
Reviewed by Andreas Kling.

Source/WebCore:

The event dispatch function was incorrectly assuming the RenderNamedFlowThread is valid. Because the event is asynchronous it's
possible for the flow to be in the "NULL" state (the renderer is 0) while the regionlayoutupdate event is dispatched.

Test: fast/regions/webkit-named-flow-event-crash.html

  • dom/WebKitNamedFlow.cpp:

(WebCore::WebKitNamedFlow::dispatchRegionLayoutUpdateEvent): Remove the ASSERT and don't dispatch the event if the flow is

in the "NULL" state.

LayoutTests:

The test modifies the layout, forces a regionlayoutupdate event to be scheduled and then removes the content and the regions.
The event is dispatched on a named flow in the "NULL" state. Without this patch a crash occurs.

  • fast/regions/webkit-named-flow-event-crash-expected.txt: Added.
  • fast/regions/webkit-named-flow-event-crash.html: Added.
5:27 AM Changeset in webkit [135852] by allan.jensen@digia.com
  • 5 edits in trunk/LayoutTests

Reduce XHR timeout tests execution time
https://bugs.webkit.org/show_bug.cgi?id=102184

Reviewed by Csaba Osztrogonác.

Reduce all timeouts by five.

  • http/tests/resources/load-and-stall.cgi:
  • http/tests/resources/load-and-stall.php:
  • http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout-runner.js:
  • http/tests/xmlhttprequest/timeout/xmlhttprequest-timeout.js:

(RequestTracker.prototype.startXHR):
(RequestTracker.prototype.handleEvent):
(AbortedRequest.prototype.getMessage):
(AbortedRequest.prototype.handleEvent):
(SyncRequestSettingTimeoutAfterOpen.startXHR):
(SyncRequestSettingTimeoutBeforeOpen.startXHR):
(TestCounter.testComplete):

5:23 AM Changeset in webkit [135851] by mihnea@adobe.com
  • 9 edits
    4 adds in trunk

[CSS Regions] Absolutely positioned regions do not expand to fill their container
https://bugs.webkit.org/show_bug.cgi?id=102385

Reviewed by Julien Chaffraix.

Source/WebCore:

In the case of an absolutely positioned region with height auto, height computation should follow
the path of block elements instead of replaced elements.

Tests: fast/regions/autosize-abspos-anchoredregion-vertlr.html

fast/regions/autosize-abspos-anchoredregion.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePositionedLogicalHeight): Skip replaced element height computation when a region has height auto.

  • rendering/RenderRegion.h:

(WebCore::RenderRegion::shouldHaveAutoLogicalHeight): Make it private since it is not accessed from outside.

LayoutTests:

Added new tests for the case of an absolutely positioned region inside a container. The region is anchored and it should expand to the container limits
in the anchored direction.
Also modified expectations for another test that has absolutely positioned auto-height regions, which now have height computed properly.

  • fast/regions/autosize-abspos-anchoredregion-expected.txt: Added.
  • fast/regions/autosize-abspos-anchoredregion-vertlr-expected.txt: Added.
  • fast/regions/autosize-abspos-anchoredregion-vertlr.html: Added.
  • fast/regions/autosize-abspos-anchoredregion.html: Added.
  • platform/chromium/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/efl/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/gtk/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/mac/fast/regions/autoheight-regions-mark-expected.txt:
  • platform/qt/fast/regions/autoheight-regions-mark-expected.txt:
5:20 AM Changeset in webkit [135850] by kadam@inf.u-szeged.hu
  • 2 edits
    3 adds in trunk/LayoutTests

[Qt] Gardening after r135723, r135740 and r135789. Skipped 3 tests and added rebaseline to a test.

Patch by János Badics <János Badics> on 2012-11-27
Reviewed by Csaba Osztrogonác.

r135723: Added Qt baseline to http/tests/inspector/network/script-as-text-loading-with-caret.html
r135740: Skipped fast/frames/page-visibility-crash.html because Page Visibility API is disabled.
r135789: Skipped fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html because gestureLongTap is not supported on Qt, and

fast/events/touch/gesture/context-menu-on-long-tap.html because Drag and Drop support is disabled on Qt.

  • platform/qt/TestExpectations:
  • platform/qt/http/tests/inspector/network/script-as-text-loading-with-caret-expected.txt: Added.
5:19 AM Changeset in webkit [135849] by kov@webkit.org
  • 9 edits in releases/WebKitGTK/webkit-1.10

Merge 135538 - [GTK] Split SVG from WebCore to work-around make limitation
https://bugs.webkit.org/show_bug.cgi?id=97735

Reviewed by Carlos Garcia Campos.

Add a new libtool convenience library, libWebCoreSVG.la, to work-around
make limitation when linking libWebCore.

.:

  • GNUmakefile.am: variables for the new library.

Source/WebCore:

  • GNUmakefile.am: new libWebCoreSVG.la library.
  • GNUmakefile.list.am: move SVG-related files to be part of the new library.

Source/WebKit/gtk:

  • GNUmakefile.am: link libWebCoreSVG.la into libwebkitgtk.

Source/WebKit2:

  • GNUmakefile.am: link libWebCoreSVG.la into libwebkit2gtk.

Conflicts:

Source/WebCore/GNUmakefile.am
Source/WebCore/GNUmakefile.list.am

4:39 AM Changeset in webkit [135848] by apavlov@chromium.org
  • 10 edits
    2 adds in trunk

Incorrect value of CSSStyleDeclaration#length when a shorthand property is inherit or initial
https://bugs.webkit.org/show_bug.cgi?id=73002

Reviewed by Alexis Menard.

Source/WebCore:

Before the patch, "inherit" and "initial" shorthands would get added to the StylePropertySet as-is, their longhands unspecified.
This patch tackles two aspects of the problem:

  • When parsing "initial" and "inherit" shorthands, their longhands are added to the property set with the corresponding values.
  • When querying "initial" and "inherit" shorthands, their values are reconstructed from the longhands as usual, but if all of the longhands are found to have the same explicit "initial" or "inherit" value, the respective single value is returned as the shorthand value.

When reconstructing shorthands, a "common value" is tracked. If all longhands involved have the same explicit value, it becomes the
"common value", otherwise it is a String(). The "inherit" or "initial" common value ultimately becomes the shorthand value
(except for the "background-position" shorthand, which is a special case).

  • css/CSSParser.cpp:

(WebCore::parseKeywordValue): Parse shorthands' "initial" and "inherit" values using the CSSParser.
(WebCore::CSSParser::addExpandedPropertyForValue): Add simple property or all sharthand's longhands with given value and priority.
(WebCore::CSSParser::parseValue): For "initial" and "inherit" shorthands, add their longhands with the respective value, not the shorthands proper.

  • css/CSSParser.h: Add addExpandedPropertyForValue().
  • css/StylePropertySet.cpp:

(WebCore::isInitialOrInherit): Check if the value is "initial" or "inherit".
(WebCore):
(WebCore::StylePropertySet::appendFontLonghandValueIfExplicit): Modified to track the common value for the "font" shorthand.
(WebCore::StylePropertySet::fontValue): Ditto.
(WebCore::StylePropertySet::get4Values): Return "inherit" or "initial" if all 4 values are explicitly "inherit" or "initial".
(WebCore::StylePropertySet::getLayeredShorthandValue): Use the common value approach for layered shorthands.
(WebCore::StylePropertySet::getShorthandValue): Ditto for ordinary shorthands.
(WebCore::StylePropertySet::borderPropertyValue): Ditto for the "border" shorthand.

  • css/StylePropertySet.h: Modify the appendFontLonghandValueIfExplicit() signature.
  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setFont): Now that "inherit" and "initial" shorthands are represented by their longhands,
we need to check the string value of the "font" shorthand for being "inherit" or "initial" instead: getPropertyCSSValue() no longer works,
since the shorthand itself is no longer added to the StylePropertySet.

LayoutTests:

Expectations get fixed in some cases.

  • css3/flexbox/flex-property-parsing-expected.txt:
  • fast/css/inherit-initial-shorthand-values-expected.txt: Added.
  • fast/css/inherit-initial-shorthand-values.html: Added.
  • fast/css/parsing-text-emphasis-expected.txt:
  • fast/css/parsing-text-emphasis.html:
4:18 AM Changeset in webkit [135847] by haraken@chromium.org
  • 30 edits in trunk/Source/WebCore

Unreviewed. Renamed TRYCATCH => V8TRYCATCH.
(I forgot to apply reviewer's comment in bug 103352 when landing r135817.)

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(ConvertToV8StringResource):

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

(WebCore::Float64ArrayV8Internal::fooCallback):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):

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

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):

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

(WebCore::V8TestEventConstructor::constructorCallback):

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

(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventCallback):

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

(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):

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

(WebCore::TestMediaQueryListListenerV8Internal::methodCallback):

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

(WebCore::V8TestNamedConstructorConstructorCallback):

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

(WebCore::TestObjV8Internal::staticStringAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::idbKeyCallback):
(WebCore::TestObjV8Internal::optionsObjectCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod2Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod4Callback):
(WebCore::TestObjV8Internal::overloadedMethod6Callback):
(WebCore::TestObjV8Internal::overloadedMethod7Callback):
(WebCore::TestObjV8Internal::overloadedMethod8Callback):
(WebCore::TestObjV8Internal::overloadedMethod9Callback):
(WebCore::TestObjV8Internal::overloadedMethod10Callback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::classMethodWithOptionalCallback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::classMethodWithClampCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2Callback):
(WebCore::TestObjV8Internal::stringArrayFunctionCallback):
(WebCore::TestObjV8Internal::convert1Callback):
(WebCore::TestObjV8Internal::convert2Callback):
(WebCore::TestObjV8Internal::convert4Callback):
(WebCore::TestObjV8Internal::convert5Callback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::TestObjV8Internal::variadicStringMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodCallback):

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

(WebCore::V8TestOverloadedConstructors::constructor1Callback):
(WebCore::V8TestOverloadedConstructors::constructor2Callback):
(WebCore::V8TestOverloadedConstructors::constructor3Callback):
(WebCore::V8TestOverloadedConstructors::constructor4Callback):

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

(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

  • bindings/v8/V8Binding.h:

(WebCore::toV8Sequence):

  • bindings/v8/V8BindingMacros.h:
  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallbackCustom):

  • bindings/v8/custom/V8ConsoleCustom.cpp:

(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::handlePostMessageCallback):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::getInt8Callback):
(WebCore::V8DataView::getUint8Callback):
(WebCore::V8DataView::setInt8Callback):
(WebCore::V8DataView::setUint8Callback):

  • bindings/v8/custom/V8DeviceMotionEventCustom.cpp:

(WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::V8Document::evaluateCallback):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::addCallback):

  • bindings/v8/custom/V8HistoryCustom.cpp:

(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):

  • bindings/v8/custom/V8IntentCustom.cpp:

(WebCore::V8Intent::constructorCallbackCustom):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlCallback):

  • bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:

(WebCore::V8SQLTransactionSync::executeSqlCallback):

  • bindings/v8/custom/V8SVGLengthCustom.cpp:

(WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::V8WebGLRenderingContext::getExtensionCallback):

  • bindings/v8/custom/V8WorkerContextCustom.cpp:

(WebCore::V8WorkerContext::importScriptsCallback):

3:52 AM Changeset in webkit [135846] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[V8] add contextForWorld helper function to ScriptController
https://bugs.webkit.org/show_bug.cgi?id=103376

Patch by Dan Carney <dcarney@google.com> on 2012-11-27
Reviewed by Kentaro Hara.

Reducing some commonly occuring code with an inline function.

No new tests. No change in functionality.

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::contextForWorld):
(WebCore):
(WebCore::ScriptController::currentWorldContext):
(WebCore::ScriptController::mainWorldContext):

  • bindings/v8/ScriptController.h:

(ScriptController):

3:41 AM Changeset in webkit [135845] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[X11] Allow empty plugin name and description during scan plugin
https://bugs.webkit.org/show_bug.cgi?id=103234

Patch by KwangYong Choi <ky0.choi@samsung.com> on 2012-11-27
Reviewed by Simon Hausmann.

Empty entries should be allowed when split the output string of scan plugin
because the plugin name and the description can be empty string.

  • UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:

(WebKit::PluginProcessProxy::scanPlugin):

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:

(WebKit::PluginProcessProxy::scanPlugin):

3:31 AM Changeset in webkit [135844] by Csaba Osztrogonác
  • 10 edits in trunk/Source/WebKit2

Unreviewed, rolling out r135819.
http://trac.webkit.org/changeset/135819
https://bugs.webkit.org/show_bug.cgi?id=103388

It broke many tests on Qt and EFL WK2 platforms (Requested by
Ossy on #webkit).

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

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters):

  • UIProcess/API/C/WKPage.cpp:

(WKPageCopyRelatedPages):

  • UIProcess/API/C/WKPagePrivate.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::creationParameters):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::setIsInWindow):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/WebPage.messages.in:
3:20 AM Changeset in webkit [135843] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=103008

Patch by Kyungjin Kim <gen.kim@samsung.com> on 2012-11-27
Reviewed by Gyuyoung Kim.

Fix API names in WKPreferences from 2d to 2D.

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetAccelerated2DCanvasEnabled):
(WKPreferencesGetAccelerated2DCanvasEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
3:15 AM Changeset in webkit [135842] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

[Qt] Implement the mimetype icon methods
https://bugs.webkit.org/show_bug.cgi?id=103260

Reviewed by Simon Hausmann.

  • platform/graphics/Icon.h:

(Icon):

  • platform/graphics/qt/IconQt.cpp:

(WebCore::Icon::createIconForFiles):
(WebCore::Icon::paint):

3:03 AM Changeset in webkit [135841] by allan.jensen@digia.com
  • 10 edits
    1 copy
    3 adds in trunk

Incorrect rect-based hit-test result when hit-test region includes culled inlines
https://bugs.webkit.org/show_bug.cgi?id=88376

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-09-17
Reviewed by Dave Hyatt.

Source/WebCore:

Move the handling of culled inlines from HitTestResult::addNodeToRectBasedTestResult to
InlineFlowBox::nodeAtPoint. This makes it possible to fix a number of bugs with how
culled inlines were handled. They are now checked after all their children, and may
terminate area-based hit-testing if they contain the whole area.

Tests: fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html

fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html

  • rendering/HitTestResult.cpp:

(WebCore::HitTestLocation::HitTestLocation):
(WebCore::HitTestResult::addNodeToRectBasedTestResult):

  • rendering/HitTestResult.h:

(HitTestLocation):

  • rendering/InlineFlowBox.cpp:

(WebCore::InlineFlowBox::nodeAtPoint):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::hitTestCulledInline):

  • rendering/RenderInline.h:

(RenderInline):

LayoutTests:

Renames the existing nodesFromRect-culled-inlines.html test to nodesFromRect-inline-image.html,
because it did not test any culled inlines anymore, and replace it with two new tests that does
test culled inlines.

  • fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak-expected.txt: Copied from LayoutTests/fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt.
  • fast/dom/nodesFromRect/nodesFromRect-culled-inline-with-linebreak.html: Added.
  • fast/dom/nodesFromRect/nodesFromRect-culled-inlines-expected.txt:
  • fast/dom/nodesFromRect/nodesFromRect-culled-inlines.html:
  • fast/dom/nodesFromRect/nodesFromRect-inline-image-expected.txt: Added.
  • fast/dom/nodesFromRect/nodesFromRect-inline-image.html: Added.
  • fast/dom/nodesFromRect/resources/nodesFromRect.js:

(checkRect):
(nodesFromRectAsString):

2:37 AM Changeset in webkit [135840] by tkent@chromium.org
  • 14 edits
    35 deletes in trunk/LayoutTests

Reduce the number of pixel tests for date/time input types
https://bugs.webkit.org/show_bug.cgi?id=103373

Reviewed by Kentaro Hara.

Merge fast/forms/<type>/<type>-appearance-style.html and
<type>-appearance-disabled-readonly.html into
<type>-appearance-basic.html, and add tests for font-weight, height, and
-webkit-appearance:none.

  • fast/forms/date/date-appearance-basic-expected.txt:
  • fast/forms/date/date-appearance-basic.html:
  • fast/forms/date/date-appearance-style-expected.txt: Removed.
  • fast/forms/date/date-appearance-style.html: Removed.
  • fast/forms/month/month-appearance-basic-expected.txt:
  • fast/forms/month/month-appearance-basic.html:
  • fast/forms/month/month-appearance-style-expected.txt: Removed.
  • fast/forms/month/month-appearance-style.html: Removed.
  • fast/forms/time/time-appearance-basic-expected.txt:
  • fast/forms/time/time-appearance-basic.html:
  • fast/forms/time/time-appearance-disabled-readonly-expected.txt: Removed.
  • fast/forms/time/time-appearance-disabled-readonly.html: Removed.
  • fast/forms/time/time-appearance-style-expected.txt: Removed.
  • fast/forms/time/time-appearance-style.html: Removed.
  • fast/forms/week/week-appearance-basic-expected.txt:
  • fast/forms/week/week-appearance-basic.html:
  • fast/forms/week/week-appearance-style-expected.txt: Removed.
  • fast/forms/week/week-appearance-style.html: Removed.
  • platform/chromium-linux/fast/forms/date/date-appearance-style-expected.png: Removed.
  • platform/chromium-linux/fast/forms/month/month-appearance-style-expected.png: Removed.
  • platform/chromium-linux/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
  • platform/chromium-linux/fast/forms/time/time-appearance-style-expected.png: Removed.
  • platform/chromium-linux/fast/forms/week/week-appearance-style-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/date/date-appearance-style-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/month/month-appearance-style-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/time/time-appearance-style-expected.png: Removed.
  • platform/chromium-mac-lion/fast/forms/week/week-appearance-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/date/date-appearance-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/month/month-appearance-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/time/time-appearance-style-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/forms/week/week-appearance-style-expected.png: Removed.
  • platform/chromium-mac/fast/forms/date/date-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/date/date-appearance-style-expected.png: Removed.
  • platform/chromium-mac/fast/forms/month/month-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-style-expected.png: Removed.
  • platform/chromium-mac/fast/forms/time/time-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
  • platform/chromium-mac/fast/forms/time/time-appearance-style-expected.png: Removed.
  • platform/chromium-mac/fast/forms/week/week-appearance-basic-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-style-expected.png: Removed.
  • platform/chromium-win/fast/forms/date/date-appearance-style-expected.png: Removed.
  • platform/chromium-win/fast/forms/month/month-appearance-style-expected.png: Removed.
  • platform/chromium-win/fast/forms/time/time-appearance-disabled-readonly-expected.png: Removed.
  • platform/chromium-win/fast/forms/time/time-appearance-style-expected.png: Removed.
  • platform/chromium-win/fast/forms/week/week-appearance-style-expected.png: Removed.
  • platform/chromium/TestExpectations:
2:27 AM Changeset in webkit [135839] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(134887) [Qt][EFL][WK2] Repaint counter not working
https://bugs.webkit.org/show_bug.cgi?id=103261

Reviewed by Noam Rosenthal.

Fixed regression introduced in 134887, which introduced the
updateContentsNoSwizzle method and called it directly from
the repaint counter.

This method obviously needs to bind the texture.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::BitmapTextureGL::updateContentsNoSwizzle):

2:05 AM Changeset in webkit [135838] by tkent@chromium.org
  • 5 edits in trunk/LayoutTests

A followup of r135836
https://bugs.webkit.org/show_bug.cgi?id=102861

I landed an old revision of the patch in r135836.

  • fast/forms/ValidityState-001.html:
  • fast/forms/number/number-validity-badinput-expected.txt:
  • fast/forms/number/number-validity-badinput.html:
  • fast/forms/resources/multiple-fields-validity-badinput.js:

(testBadInput):

1:40 AM Changeset in webkit [135837] by Csaba Osztrogonác
  • 40 edits
    1 delete in trunk/Source

Unreviewed, rolling out r135786.
http://trac.webkit.org/changeset/135786
https://bugs.webkit.org/show_bug.cgi?id=103379

It made 3 plugin tests timeout on several platforms (Requested
by Ossy on #webkit).

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

Source/WebCore:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/FrameLoadRequest.cpp: Removed.
  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(FrameLoadRequest):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load):

  • loader/FrameLoader.h:

(FrameLoader):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

  • plugins/PluginView.cpp:

(WebCore::PluginView::performRequest):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(ewk_frame_uri_set):
(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

  • Plugins/WebPluginController.mm:
  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::setHtml):
(QWebFrame::setContent):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setAlternateHtml):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callErrorPageExtension):

  • WebCoreSupport/QWebFrameAdapter.cpp:

(QWebFrameAdapter::load):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

  • WebView.cpp:

(WebView::load):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):
(WebKit::WebPage::linkClicked):

1:26 AM WebKitGTK/WebKit2Roadmap edited by zandobersek@gmail.com
Add the isolated worlds API as a todo target for WebKitGTK+ 2.0 (diff)
1:09 AM Changeset in webkit [135836] by tkent@chromium.org
  • 25 edits
    1 move
    14 adds
    1 delete in trunk

Implement ValidityState::badInput
https://bugs.webkit.org/show_bug.cgi?id=102861

Reviewed by Hajime Morita.

Source/WebCore:

Add ValidityState::badInput, add hasBadInput, which always returns
false, to FormAssociatedElement, HTMLInputElement, and InputType.

For NumberInputType, we had hasUnacceptableValue, which was a hack to
make an input element match to :invalid if the element had non-number
strings. We don't need the hack any more because badInput affects :invalid
style. hasUnacceptableValue is re-used for hasBadInput implementation.
We cleared invalid numbers when elements lost focus to tell users that
the element had invalid numbers. We don't need this behavior because the
interactive validation tells it.

For date/time input types, we should make an input badInput when the
input has empty value but its sub-fields have values. It covers both of
partial input cases such as 12/--/2012 and invalid dates such as
02/31/2012.

For other types, ValidityState::badInput always returns false.

This patch doesn't contain tests for badInput validation messages. They
will be added later.

Tests: fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html

fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html
fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html
fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html
fast/forms/number/number-validity-badinput.html
fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html
fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html

  • html/ValidityState.idl: Add badInput IDL attribute.
  • html/ValidityState.h:

(ValidityState): Add badInput.

  • html/ValidityState.cpp:

(WebCore::ValidityState::badInput):
Added. Calls FormAssociatedElement::hasBadInput.

  • html/FormAssociatedElement.h:

(FormAssociatedElement): Add hasBadInput.

  • html/FormAssociatedElement.cpp:

(WebCore::FormAssociatedElement::hasBadInput):
Added. It always returns false.
(WebCore::FormAssociatedElement::valid): Takes account of hasBadInput().

  • html/HTMLInputElement.h:

(HTMLInputElement):
Remove hasUnacceptableValue, and add hasBadInput override.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::hasBadInput):
Added. Delegate to InputType::hasBadInput.
(WebCore): Remove hasUnacceptableValue.

  • html/InputType.h:

(InputType): Add hasBadInput and badInputText, and remove
hasUnacceptableValue.

  • html/InputType.cpp:

(WebCore::InputType::hasBadInput): Added. Returns false.
(WebCore::InputType::badInputText):
Added. This function should not be called because hasBadInput always
returns false.
(WebCore::InputType::validationMessage):
Supports badInput. This returns badInputText if hasBadInput is true.

  • html/NumberInputType.h:

(NumberInputType): Add hasBadInput and badInputTest. Remove
handleBlurEvent and hasUnacceptableValue.

  • html/NumberInputType.cpp:

Remove handleBlurEvent, which cleared invalid number strings.
(WebCore::NumberInputType::hasBadInput):
Added. We don't need to check existence of a renderer. The standard form
validation feature doesn't care of it.
(WebCore::NumberInputType::badInputText): Returns
validationMessageBadInputForNumberText defined in LocalizedStrings.h.

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):
Remove a hack for hasUnacceptableValue. isValidFormControlElement takes
account of badInput.

  • dom/Element.h: Remove hasUnacceptableValue.
  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Add hasBadInput and badInputText.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp:

(WebCore::BaseMultipleFieldsDateAndTimeInputType::badInputText):
Returns validationMessageBadInputForDateTimeText defined in LocalizedStrings.h.
(WebCore::BaseMultipleFieldsDateAndTimeInputType::hasBadInput):
Added.
(WebCore::BaseMultipleFieldsDateAndTimeInputType::setValue):
Add setNeedsValidityCheck call. It is needed because
updateInnerTextValue can modify subfields empty state.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::subtreeHasChanged): Update a comment.

  • platform/LocalizedStrings.h:

(WebCore): Add validationMessageBadInputForNumberText and
validationMessageBadInputForDateTimeText.

  • platform/LocalizedStrings.cpp:

(WebCore::validationMessageBadInputForNumberText):
Added a placeholder implementation. This should be fixed later.

  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::validationMessageBadInputForNumberText): Ditto.

  • platform/efl/LocalizedStringsEfl.cpp:

(WebCore::validationMessageBadInputForNumberText): Ditto.

  • platform/qt/LocalizedStringsQt.cpp:

(WebCore::validationMessageBadInputForNumberText): Ditto.

Source/WebKit/chromium:

  • src/LocalizedStrings.cpp:

Add placeholder implementations for new localized string functions.
We'll update them in another patch.
(WebCore::validationMessageBadInputForNumberText):
(WebCore::validationMessageBadInputForDateTimeText):

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/date-multiple-fields/date-multiple-fields-validity-badinput.html: Added.
  • fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/datetime-multiple-fields/datetime-multiple-fields-validity-badinput.html: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-validity-badinput.html: Added.
  • fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/month-multiple-fields/month-multiple-fields-validity-badinput.html: Added.
  • fast/forms/number/number-unacceptable-style-expected.txt: Removed.
  • fast/forms/number/number-validity-badinput-expected.txt: Added.
  • fast/forms/number/number-validity-badinput.html: Renamed from LayoutTests/fast/forms/number/number-unacceptable-style.html.
  • fast/forms/resources/multiple-fields-validity-badinput.js: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/time-multiple-fields/time-multiple-fields-validity-badinput.html: Added.
  • fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput-expected.txt: Added.
  • fast/forms/week-multiple-fields/week-multiple-fields-validity-badinput.html: Added.
12:58 AM Changeset in webkit [135835] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark svg/animations/mpath-remove-from-dependents-on-delete-crash.html as flaky.

  • platform/chromium/TestExpectations:
12:52 AM Changeset in webkit [135834] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Cleaning up expectations, removing those that cover tests
that are now passing.

  • platform/gtk/TestExpectations:
12:49 AM Changeset in webkit [135833] by morrita@google.com
  • 6 edits in trunk/Source/WebCore

[Refactoring] NodeFlags::IsShadowRootFlag should be Node::IsDocumentFragmentFlag
https://bugs.webkit.org/show_bug.cgi?id=103370

Reviewed by Kentaro Hara.

This chagne introduces Node::IsDocumentFragmentFlag so that we can
have fast Node::isDocumentFragment().

Note that Node::isShadowRoot() can become slightly slower when it
returns true, but that is minor in terms of the number of calls at runtime.

No new tests. No behavior change.

  • dom/DocumentFragment.cpp:

(WebCore::DocumentFragment::create):

  • dom/DocumentFragment.h:
  • dom/Node.cpp:

(WebCore::Node::documentFragmentIsShadowRoot):
(WebCore):

  • dom/Node.h:

(Node):
(WebCore::Node::isDocumentFragment):
(WebCore::Node::isShadowRoot):
(WebCore::Node::parentNode):
(WebCore::Node::parentNodeGuaranteedHostFree):

  • dom/ShadowRoot.h:
12:38 AM Changeset in webkit [135832] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[style] Add a style-check for enum-member names
https://bugs.webkit.org/show_bug.cgi?id=103157

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-11-27
Reviewed by Daniel Bates.

  • Scripts/webkitpy/style/checkers/cpp.py:

(_EnumState):
(_EnumState.init):
(_EnumState.process_clean_line):
(check_enum_casing):
(check_style):
(process_line):
(_process_lines):
(CppChecker):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(NoNonVirtualDestructorsTest.test_enum_casing):
(NoNonVirtualDestructorsTest.test_internal_braces.Foo):

12:24 AM Changeset in webkit [135831] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding timeout expectations for three plugins tests timing out after r135786.

  • platform/gtk/TestExpectations:
12:21 AM Changeset in webkit [135830] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Coordinated Graphics: Remove the maskTarget member of CoordinatedGraphicsLayer.
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-27
Reviewed by Noam Rosenthal.

Remove the maskTarget member of CoordinatedGraphicsLayer, which is not used.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:

(CoordinatedGraphicsLayer):

Nov 26, 2012:

11:53 PM Changeset in webkit [135829] by tkent@chromium.org
  • 20 edits in trunk

:read-only selector should match to date/time input types
https://bugs.webkit.org/show_bug.cgi?id=103350

Reviewed by Kentaro Hara.

Source/WebCore:

We supported :read-only and :read-write only for text form controls;
i.e. <textarea> and text-field <input>. According to [1], we should
support them for date/time types. So, this patch removes
isTextFormControl check in SelectorChecker, and just relies on
shouldMatchRead{Only,Write}Selector virtual functions.

Tests: Update fast/forms/*/*-appearance-pseudo-classes.html.

[1] http://www.whatwg.org/specs/web-apps/current-work/multipage/the-input-element.html#input-type-attr-summary

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::checkOneSelector):
Remove isFormControlElement check and isTextFormControl check.

  • html/HTMLFormControlElement.cpp:

Remove shouldMatchRead{Only,Write}Selector functions. We don't need
common implementations any more.

  • html/HTMLFormControlElement.h: Ditto.
  • html/HTMLTextAreaElement.h:

(HTMLTextAreaElement): Add shouldMatchRead{Only,Write}Selector overrides.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::shouldMatchReadOnlySelector): Added.
(WebCore::HTMLTextAreaElement::shouldMatchReadWriteSelector): Added.

  • html/HTMLInputElement.h:

(HTMLInputElement): Add shouldMatchRead{Only,Write}Selector overrides.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::shouldMatchReadOnlySelector):
Added. This checks InputType::supportsReadOnly and readOnly.
(WebCore::HTMLInputElement::shouldMatchReadWriteSelector): Ditto.

  • html/InputType.h:

(InputType): Add supportsReadOnly.

  • html/InputType.cpp:

(WebCore::InputType::supportsReadOnly): Added. Returns false by default.

  • html/BaseDateAndTimeInputType.h:

(BaseDateAndTimeInputType): Add supportsReadOnly.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::supportsReadOnly): Added. Returns true.

  • html/TextFieldInputType.h:

(TextFieldInputType): Add supportsReadOnly.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::supportsReadOnly): Added. Returns true.

LayoutTests:

The text color becomes yellow as specified for :read-only in
*-appearance-pseudo-classes.html

  • platform/chromium-mac/fast/forms/date/date-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/month/month-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/time/time-appearance-pseudo-classes-expected.png:
  • platform/chromium-mac/fast/forms/week/week-appearance-pseudo-classes-expected.png:
  • platform/chromium/TestExpectations:
11:43 PM FeatureFlags edited by zherczeg@inf.u-szeged.hu
(diff)
11:34 PM Changeset in webkit [135828] by abarth@webkit.org
  • 3 edits in trunk/Source/WTF

[Chromium] fastMalloc has an extra branch on Windows
https://bugs.webkit.org/show_bug.cgi?id=103027

Reviewed by Eric Seidel.

There's no need to override the new/delete operators on non-Mac
platform because:

1) We use the system malloc anyway.
2) We've modified the system malloc to crash in out-of-memory conditions.

This patch removes a branch (and a call) from malloc, which will
hopefully improve performance. I haven't measured the performance
characteristics of this patch, but I will look at the graphs closely
when landing.

  • wtf/FastAllocBase.h:
  • wtf/Platform.h:
11:24 PM Changeset in webkit [135827] by Simon Fraser
  • 2 edits in branches/safari-536.28-branch/Source/WebCore

<rdar://problem/12755408>
Merge r135080

2012-11-18 Simon Fraser <Simon Fraser>

Make convertToLayerCoords iterative, rather than recursive
https://bugs.webkit.org/show_bug.cgi?id=102618

Reviewed by Antti Koivisto.

RenderLayer::convertToLayerCoords() is a hot function on profiles.
Change it to be iterative, rather than recursive, so that the
bulk of the function can be inlined.

Was tested with assertions against the old code during development.

  • rendering/RenderLayer.cpp: (WebCore::accumulateOffsetTowardsAncestor): (WebCore::RenderLayer::convertToLayerCoords):
11:22 PM Changeset in webkit [135826] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Unreviewed, rolling out r135822.
http://trac.webkit.org/changeset/135822
https://bugs.webkit.org/show_bug.cgi?id=103369

Undo the revert of r135818, since that change does not affect
code used by Chromium (Requested by apavlov on #webkit).

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

Source/WebCore:

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

11:20 PM Changeset in webkit [135825] by junov@google.com
  • 2 edits in trunk/LayoutTests

[Qt] new fast/backgrounds/background-opaque-images-over-color.html fails since r135629
https://bugs.webkit.org/show_bug.cgi?id=103227

Reviewed by Simon Hausmann.

Unskipping test now that baseline has been fixed.

  • platform/qt/TestExpectations:
11:14 PM WebKitIDL edited by haraken@chromium.org
(diff)
11:09 PM Changeset in webkit [135824] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Fix build error on GTK due to r135749
https://bugs.webkit.org/show_bug.cgi?id=103365

Patch by Michael Pruett <michael@68k.org> on 2012-11-26
Reviewed by Dean Jackson.

In r135749, many files which were already included
in webcore_built_sources were erroneously added to
webcore_svg_built_sources in GNUmakefile.list.am.

  • GNUmakefile.list.am:
11:02 PM Changeset in webkit [135823] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL][jhbuild] Disable unnecessary options of elementary module
https://bugs.webkit.org/show_bug.cgi?id=103360

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

When jhbuild configures elementary, unnecessary options may be enabled by
user installed modules and it causes build break.

  • efl/jhbuild.modules:

Added --disable-emap --disable-ethumb --disable-eweather to elementary.

10:58 PM Changeset in webkit [135822] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Unreviewed, rolling out r135818.
http://trac.webkit.org/changeset/135818
https://bugs.webkit.org/show_bug.cgi?id=103368

platform/chromium/virtual/threaded/compositing/visibility
/visibility-simple-webgl-layer.html crash on Mountain Lion
(Requested by apavlov on #webkit).

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

Source/WebCore:

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

10:45 PM Changeset in webkit [135821] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[chromium mac] Layout Test touchadjustment/touch-links-longpress.html is failing
https://bugs.webkit.org/show_bug.cgi?id=103363

Unreviewed test expectations update.

  • platform/chromium/TestExpectations: Add failing expection for Mac.
10:34 PM Changeset in webkit [135820] by apavlov@chromium.org
  • 3 edits in branches/chromium/1312/Source/WebCore/inspector

Merge 135571 - Web Inspector: inspector overlay is always updated when inspector is open
https://bugs.webkit.org/show_bug.cgi?id=103106

Reviewed by Pavel Feldman.

Provide empty size into the InspectorOverlay if the metrics emulation is disabled,
so that it will not get painted in all cases.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::webViewResized): Call InspectorPageAgent::webViewResized() rather than InspectorOverlay::resize().

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::webViewResized): Provide empty size into InspectorOverlay::resize() if device metrics are not emulated.

  • inspector/InspectorPageAgent.h:

TBR=apavlov@chromium.org
Review URL: https://codereview.chromium.org/11415147

10:34 PM Changeset in webkit [135819] by mitz@apple.com
  • 10 edits in trunk/Source/WebKit2

<rdar://problem/11931191> Entering Tab View after a bunch of YouTube pages were opened in background tabs makes all of them start playing simultaneously
https://bugs.webkit.org/show_bug.cgi?id=103358

Reviewed by Adele Peterson.

To fix this, this patch adds WKPageSetMayStartMediaWhenInWindow(), which allows the client to
prevent media from starting automatically when the view is put in a window.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Encode mayStartMediaWhenInWindow.
(WebKit::WebPageCreationParameters::decode): Decode mayStartMediaWhenInWindow.

  • Shared/WebPageCreationParameters.h:

(WebPageCreationParameters): Added boolean member mayStartMediaWhenInWindow.

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetMayStartMediaWhenInWindow): Added. Calls through to WebPageProxy.

  • UIProcess/API/C/WKPagePrivate.h: Declared WKPageSetMayStartMediaWhenInWindow.
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy): Added initializiation of m_mayStartMediaWhenInWindow
to true, the value matching the current behavior.
(WebKit::WebPageProxy::setMayStartMediaWhenInWindow): Added. Updates
m_mayStartMediaWhenInWindow and sends a message to the Web process to do the same.
(WebKit::WebPageProxy::creationParameters): Changed to set mayStartMediaWhenInWindow in the
process creation parameters.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Declared setMayStartMediaWhenInWindow() and added member variable
m_mayStartMediaWhenInWindow.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialized m_mayStartMediaWhenInWindow from the creation
parameters.
(WebKit::WebPage::setIsInWindow): Made starting of media upon being added to a window
conditional on m_mayStartMediaWhenInWindow.
(WebKit::WebPage::setMayStartMediaWhenInWindow): Added. Sets m_mayStartMediaWhenInWindow. If
already in a window when changing from false to true, starts m_setCanStartMediaTimer.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Declared setMayStartMediaWhenInWindow() and added member variable m_mayStartMediaWhenInWindow.

  • WebProcess/WebPage/WebPage.messages.in: Added SetMayStartMediaWhenInWindow.
10:15 PM Changeset in webkit [135818] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Coordinated Graphics: Set visibility to a mask layer in GraphicsLayer::setContentsVisible().
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

GraphicsLayerTextureMapper and CoordinatedGraphicsLayer set the visibility of a
mask layer in setContentsVisible() and setMaskLayer() like setting a size.
This patch is needed because RenderLayerBacking does not set the visibility to a
mask layer like the size.

This patch does not change user experience because an invisible layer is not
rendered although the mask layer is rendered. In that sense, it is an
optimization patch.

Source/WebCore:

No new tests. It is an optimization patch.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setContentsVisible):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:

(WebCore::CoordinatedGraphicsLayer::setContentsVisible):
(WebCore::CoordinatedGraphicsLayer::setMaskLayer):

9:33 PM Changeset in webkit [135817] by haraken@chromium.org
  • 30 edits in trunk/Source/WebCore

[V8] Rename EXCEPTION_BLOCK() macros
https://bugs.webkit.org/show_bug.cgi?id=103352

Reviewed by Adam Barth.

Since V8Parameter was renamed to V8StringResource,
we rename macros that use V8Parameter.

EXCEPTION_BLOCK() => V8TRYCATCH()
STRING_TO_V8PARAMETER_EXCEPTION_BLOCK() => V8TRYCATCH_FOR_V8STRINGRESOURCE()
STRING_TO_V8PARAMETER_EXCEPTION_BLOCK_VOID() => V8TRYCATCH_FOR_V8STRINGRESOURCE_VOID()

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(ConvertToV8StringResource):

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

(WebCore::Float64ArrayV8Internal::fooCallback):

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

(WebCore::TestActiveDOMObjectV8Internal::excitingFunctionCallback):
(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):

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

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):

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

(WebCore::V8TestEventConstructor::constructorCallback):

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

(WebCore::TestEventTargetV8Internal::itemCallback):
(WebCore::TestEventTargetV8Internal::dispatchEventCallback):

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

(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):

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

(WebCore::TestMediaQueryListListenerV8Internal::methodCallback):

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

(WebCore::V8TestNamedConstructorConstructorCallback):

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

(WebCore::TestObjV8Internal::staticStringAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodWithSequenceArgCallback):
(WebCore::TestObjV8Internal::methodReturningSequenceCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::idbKeyCallback):
(WebCore::TestObjV8Internal::optionsObjectCallback):
(WebCore::TestObjV8Internal::methodWithOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndOptionalArgCallback):
(WebCore::TestObjV8Internal::methodWithNonOptionalArgAndTwoOptionalArgsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::methodWithNonCallbackArgAndCallbackArgCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod2Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod4Callback):
(WebCore::TestObjV8Internal::overloadedMethod6Callback):
(WebCore::TestObjV8Internal::overloadedMethod7Callback):
(WebCore::TestObjV8Internal::overloadedMethod8Callback):
(WebCore::TestObjV8Internal::overloadedMethod9Callback):
(WebCore::TestObjV8Internal::overloadedMethod10Callback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::classMethodWithOptionalCallback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::classMethodWithClampCallback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod1Callback):
(WebCore::TestObjV8Internal::enabledAtRuntimeMethod2Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod1Callback):
(WebCore::TestObjV8Internal::enabledPerContextMethod2Callback):
(WebCore::TestObjV8Internal::stringArrayFunctionCallback):
(WebCore::TestObjV8Internal::convert1Callback):
(WebCore::TestObjV8Internal::convert2Callback):
(WebCore::TestObjV8Internal::convert4Callback):
(WebCore::TestObjV8Internal::convert5Callback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::TestObjV8Internal::variadicStringMethodCallback):
(WebCore::TestObjV8Internal::variadicDoubleMethodCallback):
(WebCore::TestObjV8Internal::variadicNodeMethodCallback):

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

(WebCore::V8TestOverloadedConstructors::constructor1Callback):
(WebCore::V8TestOverloadedConstructors::constructor2Callback):
(WebCore::V8TestOverloadedConstructors::constructor3Callback):
(WebCore::V8TestOverloadedConstructors::constructor4Callback):

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

(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

  • bindings/v8/V8Binding.h:

(WebCore::toV8Sequence):

  • bindings/v8/V8BindingMacros.h:
  • bindings/v8/custom/V8BlobCustom.cpp:

(WebCore::V8Blob::constructorCallbackCustom):

  • bindings/v8/custom/V8ConsoleCustom.cpp:

(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::handlePostMessageCallback):

  • bindings/v8/custom/V8DataViewCustom.cpp:

(WebCore::V8DataView::getInt8Callback):
(WebCore::V8DataView::getUint8Callback):
(WebCore::V8DataView::setInt8Callback):
(WebCore::V8DataView::setUint8Callback):

  • bindings/v8/custom/V8DeviceMotionEventCustom.cpp:

(WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):

  • bindings/v8/custom/V8DocumentCustom.cpp:

(WebCore::V8Document::evaluateCallback):

  • bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:

(WebCore::V8HTMLOptionsCollection::addCallback):

  • bindings/v8/custom/V8HistoryCustom.cpp:

(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):

  • bindings/v8/custom/V8IntentCustom.cpp:

(WebCore::V8Intent::constructorCallbackCustom):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlCallback):

  • bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:

(WebCore::V8SQLTransactionSync::executeSqlCallback):

  • bindings/v8/custom/V8SVGLengthCustom.cpp:

(WebCore::V8SVGLength::convertToSpecifiedUnitsCallback):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::V8WebGLRenderingContext::getExtensionCallback):

  • bindings/v8/custom/V8WorkerContextCustom.cpp:

(WebCore::V8WorkerContext::importScriptsCallback):

9:13 PM Changeset in webkit [135816] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

Node: Move AreSVGAttributesValidFlag to ElementAttributeData.
<http://webkit.org/b/103349>

Reviewed by Anders Carlsson.

Moved AreSVGAttributesValidFlag to ElementAttributeData and change it to use "dirty" semantics.
This frees up a bit on Node, and we will always have ElementAttributeData if the animated
attributes are dirty anyway.

  • dom/Element.cpp:

(WebCore::Element::getAttribute):

  • dom/Element.h:

(WebCore::Element::updateInvalidAttributes):

  • dom/ElementAttributeData.cpp:

(WebCore::ElementAttributeData::ElementAttributeData):

  • dom/ElementAttributeData.h:

(WebCore::ElementAttributeData::ElementAttributeData):
(ElementAttributeData):

  • dom/Node.h:

(Node):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::updateAnimatedSVGAttribute):

  • svg/SVGElement.h:

(WebCore::SVGElement::invalidateSVGAttributes):

9:06 PM Changeset in webkit [135815] by haraken@chromium.org
  • 17 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r135798.
http://trac.webkit.org/changeset/135798
https://bugs.webkit.org/show_bug.cgi?id=103354

Broke the chrome mac build (Requested by noel_ on #webkit).

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

Source/WebCore:

  • platform/graphics/chromium/DeferredImageDecoder.cpp:

(WebCore::DeferredImageDecoder::~DeferredImageDecoder):
(WebCore::DeferredImageDecoder::createResizedLazyDecodingBitmap):
(WebCore::DeferredImageDecoder::frameBufferAtIndex):
(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):

  • platform/graphics/chromium/DeferredImageDecoder.h:

(DeferredImageDecoder):

  • platform/graphics/chromium/ImageDecodingStore.cpp:

(WebCore::ImageDecodingStore::instanceOnMainThread):
(WebCore::ImageDecodingStore::initializeOnMainThread):
(WebCore::ImageDecodingStore::shutdown):
(WebCore::ImageDecodingStore::calledOnValidThread):
(WebCore::ImageDecodingStore::lookupFrameCache):
(WebCore::ImageDecodingStore::deleteFrameCache):

  • platform/graphics/chromium/ImageDecodingStore.h:

(WebCore):
(ImageDecodingStore):

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::~ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):

  • platform/graphics/chromium/ImageFrameGenerator.h:

(WebCore):
(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::LazyDecodingPixelRef):
(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):

  • platform/graphics/chromium/LazyDecodingPixelRef.h:

(WebCore):
(LazyDecodingPixelRef):

  • platform/graphics/chromium/ScaledImageFragment.cpp:

(WebCore::ScaledImageFragment::ScaledImageFragment):
(WebCore::ScaledImageFragment::isEqual):
(WebCore):

  • platform/graphics/chromium/ScaledImageFragment.h:

(WebCore):
(WebCore::ScaledImageFragment::create):
(ScaledImageFragment):

  • platform/graphics/chromium/SkSizeHash.h: Removed.

Source/WebKit/chromium:

  • WebKit.gypi:
  • src/WebKit.cpp:

(WebKit::initializeWithoutV8):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setDeferredImageDecodingEnabled):

  • tests/DeferredImageDecoderTest.cpp:

(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):

  • tests/ImageFrameGeneratorTest.cpp: Removed.
  • tests/MockImageDecoder.h:

(MockImageDecoderClient):
(WebCore::MockImageDecoder::frameBufferAtIndex):

8:41 PM Changeset in webkit [135814] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[TexMap] GraphicsLayerTextureMapper::setSize() sets the size of a mask layer.
https://bugs.webkit.org/show_bug.cgi?id=103297

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

Currently, CoordinatedGraphicsLayer sets the size of a mask layer in setSize()
and setMaksLayer(). GraphicsLayerTextureMapper follows the behavior. If so we
don't have to check the size of the mask layer in TextureMapperLayer::flushCompositingState().

No new tests. Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::setMaskLayer):
(WebCore::GraphicsLayerTextureMapper::setSize):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingState):

8:37 PM Changeset in webkit [135813] by commit-queue@webkit.org
  • 3 edits in trunk

[EFL] CMake shows ENABLE_3D_RENDERING and ENABLE_WEBGL is still OFF when AC is enabled
https://bugs.webkit.org/show_bug.cgi?id=100829

Patch by Halton Huo <halton.huo@intel.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

In WebKitFeatures.cmake, only use ${_name} for condition to print
a option as ON will prevent the overridden ones in OptionsXXX.cmake,
should use ${_WEBKIT_AVAILABLE_OPTIONS_INITALVALUE_${_name}} instead.

  • Source/cmake/OptionsEfl.cmake: Turn on ENABLE_3D_RENDERING and

ENABLE_WEBGL

  • Source/cmake/WebKitFeatures.cmake: Use

${_WEBKIT_AVAILABLE_OPTIONS_INITALVALUE_${_name}} to as value of
a feature is enabled. Adjust options in lexicographical order.

8:30 PM Changeset in webkit [135812] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[V8] Remove V8Parameter::object()
https://bugs.webkit.org/show_bug.cgi?id=103340

Reviewed by Adam Barth.

V8Parameter can use m_v8Object directly.

No tests. No change in behavior.

  • bindings/v8/V8StringResource.h:

(WebCore::::prepare):

8:28 PM Changeset in webkit [135811] by haraken@chromium.org
  • 20 edits in trunk/Source/WebCore

[V8] Rename V8Parameter to V8StringResource
https://bugs.webkit.org/show_bug.cgi?id=103341

Reviewed by Adam Barth.

We can rename V8Parameter to V8StringResource. In a follow-up patch,
I will rename macros around V8Parameter.

No tests. No change in behavior.

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateParametersCheck):
(GenerateEventConstructorCallback):
(GetNativeTypeFromSignature):
(GetNativeType):
(ConvertToV8StringResource):

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

(WebCore::TestActiveDOMObjectV8Internal::postMessageCallback):

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

(WebCore::TestCustomNamedGetterV8Internal::anotherFunctionCallback):

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

(WebCore::V8TestEventConstructor::constructorCallback):

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

(WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetter):
(WebCore::TestInterfaceV8Internal::supplementalMethod2Callback):
(WebCore::V8TestInterface::constructorCallback):

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

(WebCore::V8TestNamedConstructorConstructorCallback):

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

(WebCore::TestObjV8Internal::staticStringAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedStringAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedURLAttrAttrSetter):
(WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetter):
(WebCore::TestObjV8Internal::voidMethodWithArgsCallback):
(WebCore::TestObjV8Internal::longMethodWithArgsCallback):
(WebCore::TestObjV8Internal::objMethodWithArgsCallback):
(WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsUndefinedCallback):
(WebCore::TestObjV8Internal::methodWithOptionalStringIsNullStringCallback):
(WebCore::TestObjV8Internal::overloadedMethod1Callback):
(WebCore::TestObjV8Internal::overloadedMethod3Callback):
(WebCore::TestObjV8Internal::overloadedMethod11Callback):
(WebCore::TestObjV8Internal::overloadedMethod12Callback):
(WebCore::TestObjV8Internal::strictFunctionCallback):
(WebCore::TestObjV8Internal::variadicStringMethodCallback):

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

(WebCore::V8TestOverloadedConstructors::constructor4Callback):

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

(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):

  • bindings/v8/V8StringResource.h:

(WebCore::V8StringResource::V8StringResource):
(WebCore::::prepare):

  • bindings/v8/custom/V8ConsoleCustom.cpp:

(WebCore::V8Console::profileCallback):
(WebCore::V8Console::profileEndCallback):

  • bindings/v8/custom/V8DOMWindowCustom.cpp:

(WebCore::handlePostMessageCallback):

  • bindings/v8/custom/V8DeviceMotionEventCustom.cpp:

(WebCore::V8DeviceMotionEvent::initDeviceMotionEventCallback):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):

  • bindings/v8/custom/V8HistoryCustom.cpp:

(WebCore::V8History::pushStateCallback):
(WebCore::V8History::replaceStateCallback):

  • bindings/v8/custom/V8IntentCustom.cpp:

(WebCore::V8Intent::constructorCallbackCustom):

  • bindings/v8/custom/V8SQLTransactionCustom.cpp:

(WebCore::V8SQLTransaction::executeSqlCallback):

  • bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:

(WebCore::V8SQLTransactionSync::executeSqlCallback):

  • bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:

(WebCore::V8WebGLRenderingContext::getExtensionCallback):

8:13 PM Changeset in webkit [135810] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

HTMLOptionElement: Remove two unused members.
<http://webkit.org/b/103337>

Reviewed by Kent Tamura.

Remove two unused members from HTMLOptionElement, m_value and m_label.
40kB progression on Membuster3.

  • html/HTMLOptionElement.h:

(HTMLOptionElement):

8:09 PM Changeset in webkit [135809] by senorblanco@chromium.org
  • 3 edits in trunk/Source/WebCore

[Chromium] Shared graphics context should only pushGroupMarker() once
https://bugs.webkit.org/show_bug.cgi?id=103082

Reviewed by James Robinson.

GraphicsContext3D's pushGroupMarkerEXT() is being called every time
an ImageBuffer is created, leading to unlimited memory growth, since
they share a common GraphicsContext3D. It should be called only once,
on context creation.

Tested by manually checking the memory usage in Chrome's TaskManager.
(Sorry, I can't think of a way to test this automatically.)

  • platform/graphics/gpu/SharedGraphicsContext3D.cpp:

(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

  • platform/graphics/skia/ImageBufferSkia.cpp:

(WebCore::createAcceleratedCanvas):

8:08 PM Changeset in webkit [135808] by aelias@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Touchscreen fling handling
https://bugs.webkit.org/show_bug.cgi?id=103278

Reviewed by James Robinson.

The fling logic for touchpad can fall through to bad
performance in several ways. This patch introduces an alternate
path for touchscreen fling that simplifies it as follows:

  • Stop generating wheel events, to prevent unnecessary scrollBegin hit

tests and to avoid falling back to slow path if a wheel handler is
registered.

  • Drop the event on ScrollStatusIgnored. There's no real reason to

send the event to the WebKit thread here.

  • Don't call transferActiveWheelFlingAnimation. This type of

transition shouldn't be needed with touchscreen flings.

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleGestureFling):
(WebKit::WebCompositorInputHandlerImpl::animate):
(WebKit::WebCompositorInputHandlerImpl::cancelCurrentFling):
(WebKit::WebCompositorInputHandlerImpl::scrollBy):

  • src/WebCompositorInputHandlerImpl.h:
8:03 PM Changeset in webkit [135807] by dbates@webkit.org
  • 2 edits in trunk/LayoutTests

Update Chromium test expectation for test LayoutTests/fast/js/string-replacement-outofmemory.html
See <https://bugs.webkit.org/show_bug.cgi?id=103348> for more details.

  • platform/chromium/TestExpectations:
7:57 PM Changeset in webkit [135806] by haraken@chromium.org
  • 16 edits
    2 deletes in trunk/Source

[V8] Remove WorkerContextExecutionProxy.{h,cpp}
https://bugs.webkit.org/show_bug.cgi?id=103325

Reviewed by Adam Barth.

Now WorkerContextExecutionProxy.{h,cpp} are empty.

No tests. No change in behavior.

Source/WebCore:

  • UseV8.cmake:
  • WebCore.gypi:
  • bindings/v8/ScheduledAction.cpp:
  • bindings/v8/V8AbstractEventListener.cpp:
  • bindings/v8/V8DOMWrapper.cpp:
  • bindings/v8/V8WorkerContextEventListener.h:

(WebCore):

  • bindings/v8/WorkerContextExecutionProxy.cpp: Removed.
  • bindings/v8/WorkerContextExecutionProxy.h: Removed.
  • bindings/v8/WorkerScriptController.cpp:
  • bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
  • bindings/v8/custom/V8MessageChannelCustom.cpp:
  • bindings/v8/custom/V8MessagePortCustom.cpp:
  • bindings/v8/custom/V8WorkerCustom.cpp:
  • bindings/v8/custom/V8XMLHttpRequestCustom.cpp:

Source/WebKit/chromium:

  • src/WebKit.cpp:
  • src/WebWorkerClientImpl.cpp:
7:51 PM Changeset in webkit [135805] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

Grapheme cluster functions can be simplified for 8 bit Strings
https://bugs.webkit.org/show_bug.cgi?id=102996

Reviewed by Alexey Proskuryakov.

For 8 bit strings, check for the uncommon CR-LF by looking for any CR. If there aren't any CR characters,
the number of Extended Grapheme Clusters is equal to the string length. If we need to handle Tailored
Graheme Clusters, then this will need to change.

No new tests. No change in functionality.

  • platform/text/TextBreakIterator.cpp:

(WebCore::numGraphemeClusters):
(WebCore::numCharactersInGraphemeClusters):

7:40 PM Changeset in webkit [135804] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

Check for empty perContextData while creating NP V8 Object.
https://bugs.webkit.org/show_bug.cgi?id=98448

Patch by Istiaque Ahmed <lazyboy@chromium.org> on 2012-11-26
Reviewed by Adam Barth.

Fixes crash in npCreateV8ScriptObject(), if NP Invoke is called from a document
that is no longer displayed in frame (isCurrentlyDisplayedInFrame() ==
false), we have empty perContextData and this results in invalid memory access.

Source/WebCore:

Test: platform/chromium/plugins/empty-per-context-data.html

  • bindings/v8/NPV8Object.cpp:

(WebCore::npCreateV8ScriptObject):

LayoutTests:

  • platform/chromium/plugins/empty-per-context-data-expected.txt: Added.
  • platform/chromium/plugins/empty-per-context-data.html: Added.
  • platform/chromium/plugins/resources/script-container.html: Added.
7:04 PM Changeset in webkit [135803] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

[WK2] Expose Accelerated2dCanvas flag set and get in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=103008

Patch by Kyungjin Kim <gen.kim@samsung.com> on 2012-11-26
Reviewed by Gyuyoung Kim.

Add setting APIs for accelerated 2d canvas in WebKit2.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetAccelerated2dCanvasEnabled):
(WKPreferencesGetAccelerated2dCanvasEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

6:59 PM Changeset in webkit [135802] by msaboff@apple.com
  • 2 edits in trunk/Source/WebCore

HTML/XML parser helper unconsumeCharacters() can push back 8 bit text as 16 bit text
https://bugs.webkit.org/show_bug.cgi?id=103317

Reviewed by Oliver Hunt.

Changed to use the String directly from the StringBuilder instead of creating our own.
Used toStringPreserveCapacity() in case the caller may want to add to the StringBuilder
even though current callers don't.

No new tests. No change in functionality.

  • xml/parser/CharacterReferenceParserInlines.h:

(WebCore::unconsumeCharacters):

6:25 PM Changeset in webkit [135801] by commit-queue@webkit.org
  • 5 edits in trunk/Source

[chromium] Remove deprecated and unused WebGraphicsContext3D compositor binding calls
https://bugs.webkit.org/show_bug.cgi?id=103322

Patch by James Robinson <jamesr@chromium.org> on 2012-11-26
Reviewed by Adam Barth.

Source/Platform:

These have been uncalled for a while.

  • chromium/public/WebLayerTreeViewClient.h:

(WebLayerTreeViewClient):

Source/WebKit/chromium:

  • src/WebViewImpl.cpp:
  • src/WebViewImpl.h:

(WebViewImpl):

6:22 PM Changeset in webkit [135800] by dbates@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Substitute "allSeparators8Bit" for "allSeperators8Bit" in JSC::jsSpliceSubstringsWithSeparators()
<https://bugs.webkit.org/show_bug.cgi?id=103303>

Reviewed by Simon Fraser.

Fix misspelled word, "Seperators" [sic], in a local variable name in JSC::jsSpliceSubstringsWithSeparators().

  • runtime/StringPrototype.cpp:

(JSC::jsSpliceSubstringsWithSeparators):

6:10 PM Changeset in webkit [135799] by noel.gordon@gmail.com
  • 3 edits in trunk/Source/WebCore

PNG decode performance: avoid using frame buffer.setRGBA(x,y)
https://bugs.webkit.org/show_bug.cgi?id=103216

Reviewed by Brent Fulgham.

Writing decoded row pixels to the frame buffer with buffer.setRGBA(x,y) is slow compared
to writing direct to the frame buffer address. Use buffer.getAddr() to obtain the output
pixel row address, write the decoded row pixels to that address.

No new tests. Covered by many existing tests.

  • platform/image-decoders/ImageDecoder.h:

(WebCore::ImageFrame::setRGBA): Make routine setRGBA(PixelData* dest, ...) public. Test
m_premultiplyAlpha once to minimize code branching in this routine.

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::PNGImageDecoder::rowAvailable): Write decoded row pixels to the frame buffer
using the pixel address form: buffer.setRGBA(address++, ...).

6:06 PM Changeset in webkit [135798] by hclam@chromium.org
  • 17 edits
    2 adds in trunk/Source

[chromium] Implement full-featured image cache
https://bugs.webkit.org/show_bug.cgi?id=99784

Reviewed by James Robinson.

Source/WebCore:

Implement a thread-safe image cache to be used with deferred image
decoding. Image cache can now be accessed on any thread.

The patch implements the following logic:

  1. Mutex to protect all cache operations.
  2. Cache indexing using key (ImageFrameGenerator*, SkISize scaledSize)
  3. Cache lookup.
  4. Cache insertion.
  5. Generation of cache entry by scaling full size image.
  6. Generation of cache entries by decoding and scaling.

Classes involved:

ImageDecodingStore

Responsible for owning cache entries and indexing. Pruning and memory
management will be added later.

ImageFrameGenerator

Responsible for generating new cache enties and insert them into
ImageDecodingStore.

LazyDecodingPixelRef

Responsible for cache lookup and lazy generation of cache entries
using ImageFrameGenerator. There is a mutex to protect concurrent
lock operations.

These items are not implemented in this patch:

  1. Cache pruning.
  2. Setting cache memory limit.
  3. Cache deletion.
  4. Caching incomplete images and ImageDecoder.

Unit tests added in ImageFrameGeneratorTest.cpp.
Layout tests are under platform/chromium/virtual/fast/images.

  • platform/graphics/chromium/DeferredImageDecoder.cpp:

(WebCore::DeferredImageDecoder::~DeferredImageDecoder):
(WebCore::DeferredImageDecoder::createResizedLazyDecodingBitmap):
(WebCore::DeferredImageDecoder::setEnabled):
(WebCore):
(WebCore::DeferredImageDecoder::frameBufferAtIndex):
(WebCore::DeferredImageDecoder::createLazyDecodingBitmap):

  • platform/graphics/chromium/DeferredImageDecoder.h:

(DeferredImageDecoder):

  • platform/graphics/chromium/ImageDecodingStore.cpp:

(WebCore::ImageDecodingStore::instance):
(WebCore::ImageDecodingStore::initializeOnce):
(WebCore::ImageDecodingStore::shutdown):
(WebCore::ImageDecodingStore::lockCompleteCache):
Lookup complete cache entry using hash key, increment use count.
(WebCore::ImageDecodingStore::lockIncompleteCache): TODO.
(WebCore::ImageDecodingStore::unlockCache):
Lookup cache entry using hash key, decrement use count.
(WebCore):
(WebCore::ImageDecodingStore::insertAndLockCache):
Insert new cache entry and increment use count.
(WebCore::ImageDecodingStore::prune): TODO.

  • platform/graphics/chromium/ImageDecodingStore.h:

(WebCore):
(ImageDecodingStore):
(WebCore::ImageDecodingStore::CacheEntry::create):
(WebCore::ImageDecodingStore::CacheEntry::createAndUse):
(CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::CacheEntry):
(WebCore::ImageDecodingStore::CacheEntry::~CacheEntry):

  • platform/graphics/chromium/ImageFrameGenerator.cpp:

(WebCore::ImageFrameGenerator::ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setData):
(WebCore::ImageFrameGenerator::decodeAndScale):
Method for creating new cache entries. This is protected by a mutex
to prevent concurrent operations. Which means only one thread can
generate new cache entries for a set of encoded data.
(WebCore):
(WebCore::ImageFrameGenerator::tryToLockCache):
Tries to lookup a cache entry.
(WebCore::ImageFrameGenerator::tryToScale):
Tries to lookup a full size cache entry and generate a scaled version.
(WebCore::ImageFrameGenerator::tryToDecodeAndScale):
Tries to decode and scale.

  • platform/graphics/chromium/ImageFrameGenerator.h:

(WebCore):
(ImageDecoderFactory):
(WebCore::ImageFrameGenerator::create):
(ImageFrameGenerator):
(WebCore::ImageFrameGenerator::setImageDecoderFactoryForTesting):

  • platform/graphics/chromium/LazyDecodingPixelRef.cpp:

(WebCore::LazyDecodingPixelRef::LazyDecodingPixelRef):
(WebCore::LazyDecodingPixelRef::onLockPixels):
(WebCore::LazyDecodingPixelRef::onUnlockPixels):

  • platform/graphics/chromium/LazyDecodingPixelRef.h:

(WebCore):
(LazyDecodingPixelRef):

  • platform/graphics/chromium/ScaledImageFragment.cpp:

(WebCore::ScaledImageFragment::ScaledImageFragment):

  • platform/graphics/chromium/ScaledImageFragment.h:

(WebCore):
(WebCore::ScaledImageFragment::create):
(ScaledImageFragment):
(WebCore::ScaledImageFragment::scaledSize):

  • platform/graphics/chromium/SkSizeHash.h: Added.

(WTF):

Source/WebKit/chromium:

Added ImageFrameGeneratorTest to test cache logic and generation
of new cache entries.

ImageFrameGeneratorTest.cacheHit
Test that a complete cached entry is reused.

ImageFrameGeneratorTest.cacheMissWithScale
Cache miss for a scaled image but cache hit on a full size image.
Scaled image is created from cached full size image.

ImageFrameGeneratorTest.cacheMissWithDecodeAndScale
Cache miss for both scaled image and full size image.

ImageFrameGeneratorTest.cacheMissWithIncompleteDecode
Test the logic for handling incomplete cache objects.

  • WebKit.gypi:
  • src/WebKit.cpp:

(WebKit::initializeWithoutV8):

  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::setDeferredImageDecodingEnabled):

  • tests/DeferredImageDecoderTest.cpp:

(WebCore::DeferredImageDecoderTest::SetUp):
(WebCore::DeferredImageDecoderTest::decoderBeingDestroyed):
(WebCore::DeferredImageDecoderTest::frameBufferRequested):
(DeferredImageDecoderTest):
(WebCore::DeferredImageDecoderTest::frameStatus):

  • tests/ImageFrameGeneratorTest.cpp: Added.

(WebCore):
(WebCore::fullSize):
(WebCore::scaledSize):
(MockImageDecoderFactory):
(WebCore::MockImageDecoderFactory::create):
(WebCore::MockImageDecoderFactory::MockImageDecoderFactory):
(ImageFrameGeneratorTest):
(WebCore::ImageFrameGeneratorTest::SetUp):
(WebCore::ImageFrameGeneratorTest::TearDown):
(WebCore::ImageFrameGeneratorTest::decoderBeingDestroyed):
(WebCore::ImageFrameGeneratorTest::frameBufferRequested):
(WebCore::ImageFrameGeneratorTest::frameStatus):
(WebCore::ImageFrameGeneratorTest::createCompleteImage):
(WebCore::ImageFrameGeneratorTest::setFrameStatus):
(WebCore::TEST_F):

  • tests/MockImageDecoder.h:

(MockImageDecoderClient):
(WebCore::MockImageDecoder::frameBufferAtIndex):

6:01 PM Changeset in webkit [135797] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Ensure that plugins are initialized before using handleEditingCommand/isEditingCommandEnabled/shouldAllowScripting
https://bugs.webkit.org/show_bug.cgi?id=103288

Reviewed by Dan Bernstein.

Other PluginView methods that use m_plugin null-check m_plugin and check
that the plugin has finished initializing before using it. These three
should do the same thing.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::handleEditingCommand):
(WebKit::PluginView::isEditingCommandEnabled):
(WebKit::PluginView::shouldAllowScripting):

6:01 PM Changeset in webkit [135796] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

PDFPlugin: Subframe PDF context menus are in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=103284
<rdar://problem/12727972>

Reviewed by Dan Bernstein.

Event position is in window coordinates, not content coordinates.
Since we have no windowToScreen(), use windowToContents and contentsToScreen
to get to screen coordinate space, which WKPopupContextMenu wants.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::handleContextMenuEvent):

6:00 PM Changeset in webkit [135795] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

PDFPlugin: Ctrl-click opens a link in a PDF in addition to context menu
https://bugs.webkit.org/show_bug.cgi?id=103282
<rdar://problem/12710892>

Reviewed by Dan Bernstein.

Don't send standard mouse events to PDFKit if a click will also show/hide the context menu.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::handleMouseEvent):

6:00 PM Changeset in webkit [135794] by dbates@webkit.org
  • 3 edits
    3 adds in trunk

JavaScript fails to handle String.replace() with large replacement string
https://bugs.webkit.org/show_bug.cgi?id=102956
<rdar://problem/12738012>

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Fix an issue where we didn't check for overflow when computing the length
of the result of String.replace() with a large replacement string.

  • runtime/StringPrototype.cpp:

(JSC::jsSpliceSubstringsWithSeparators):

LayoutTests:

Add test to ensure that we handle string replacement with a large replacement string.

  • fast/js/script-tests/string-replacement-outofmemory.js: Added.

(createStringWithRepeatedChar):

  • fast/js/string-replacement-outofmemory-expected.txt: Added.
  • fast/js/string-replacement-outofmemory.html: Added.
5:52 PM Changeset in webkit [135793] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Node: Remove IsSynchronizingSVGAttributesFlag.
<http://webkit.org/b/103328>

Reviewed by Antti Koivisto.

Animated SVG attributes used to be synchronized by using DOM API which could use unwanted re-entrancy
via callbacks below Element::attributeChanged(). The "is synchronizing SVG attributes" flag was used
to protect against such re-entrancy.

These days, lazy attributes are synchronized using Element::setSynchronizedLazyAttribute() to avoid
issues like this. The flag does nothing, so we can just remove it.

  • dom/Node.h:

(WebCore):

  • svg/SVGElement.cpp:

(WebCore::SVGElement::attributeChanged):
(WebCore::SVGElement::updateAnimatedSVGAttribute):

5:50 PM Changeset in webkit [135792] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

[V8] Refactor WorkerScriptController
https://bugs.webkit.org/show_bug.cgi?id=103330

Reviewed by Adam Barth.

r135703 just moved methods from WorkerContextExecutionProxy
to WorkerScriptController. We should refactor the methods as a follow-up.

No tests. No change in behavior.

  • bindings/v8/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::~WorkerScriptController):
(WebCore::WorkerScriptController::disposeContext):
(WebCore::WorkerScriptController::initializeContextIfNeeded):
(WebCore::WorkerScriptController::evaluate):
(WebCore::WorkerScriptController::disableEval):

  • bindings/v8/WorkerScriptController.h:

(WorkerScriptController):

5:35 PM Changeset in webkit [135791] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[EFL] Unreviewed build fix after r135767 without Tiled Backing Store
https://bugs.webkit.org/show_bug.cgi?id=103320

Unreviewed build fix.

Patch by Ryuan Choi <ryuan.choi@gmail.com> on 2012-11-26

  • WebProcess/Plugins/Plugin.cpp:
  • WebProcess/Plugins/Plugin.h:

(WebCore):

5:09 PM Changeset in webkit [135790] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

DataLog to a file should work if there are multiple processes using WTF
https://bugs.webkit.org/show_bug.cgi?id=103323

Reviewed by Mark Hahnenberg.

Whereas before DataLog would open a file with the name you specified, now it'll open a file with the
name plus the PID appended to it. So if you are dealing with multiple processes running with DataLog
to a file enabled, you'll get multiple separate log files.

  • wtf/DataLog.cpp:

(WTF::initializeLogFileOnce):

4:56 PM Changeset in webkit [135789] by commit-queue@webkit.org
  • 16 edits
    4 adds in trunk

LongPress and LongTap gestures should start drag/drop and open context menu respectively.
https://bugs.webkit.org/show_bug.cgi?id=101545

Patch by Varun Jain <varunjain@chromium.org> on 2012-11-26
Reviewed by Antonio Gomes.

For LongPress, we simulate drag by sending a mouse down and mouse drag
events. If a drag is not started (because maybe there is no draggable
element), then we show context menu instead (which is the current
behavior for LongPress). For LongTap, we use the existing functions that
LongPress uses to summon the context menu. LongPress initiated drag and
drop can be enabled/disabled by the platform using the Setting
touchDragDropEnabled which is disabled by default.

Source/WebCore:

Tests: fast/events/touch/gesture/context-menu-on-long-tap.html

fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::handleMouseDraggedEvent):
(WebCore::EventHandler::handleGestureEvent):
(WebCore::EventHandler::handleGestureLongPress):
(WebCore::EventHandler::handleGestureLongTap):
(WebCore):
(WebCore::EventHandler::handleGestureForTextSelectionOrContextMenu):
(WebCore::EventHandler::adjustGesturePosition):
(WebCore::EventHandler::handleDrag):

  • page/EventHandler.h:

(EventHandler):

  • page/Settings.in:

Source/WebKit/chromium:

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

(WebKit::WebSettingsImpl::setTouchDragDropEnabled):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):

Tools:

  • DumpRenderTree/chromium/TestRunner/src/EventSender.cpp:

(WebTestRunner):
(WebTestRunner::EventSender::EventSender):
(WebTestRunner::EventSender::gestureLongTap):
(WebTestRunner::EventSender::gestureEvent):

  • DumpRenderTree/chromium/TestRunner/src/EventSender.h:

(EventSender):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.cpp:

(WebTestRunner::TestRunner::TestRunner):
(WebTestRunner::TestRunner::setTouchDragDropEnabled):
(WebTestRunner):

  • DumpRenderTree/chromium/TestRunner/src/TestRunner.h:

(TestRunner):

LayoutTests:

  • fast/events/touch/gesture/context-menu-on-long-tap.html: Added.
  • fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag.html: Added.
  • platform/chromium/fast/events/touch/gesture/context-menu-on-long-tap-expected.txt: Added.
  • platform/chromium/fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag-expected.txt: Added.
  • touchadjustment/touch-links-longpress-expected.txt:
  • touchadjustment/touch-links-longpress.html:
4:41 PM Changeset in webkit [135788] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

RenderStyle: Move 'list-style-image' to rare inherited data.
<http://webkit.org/b/103300>

Reviewed by Antti Koivisto.

list-style-image is not nearly common enough to merit a spot in StyleInheritedData.
Move it to StyleRareInheritedData.

134kB progression on Membuster3.

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::diff):
(WebCore::RenderStyle::listStyleImage):
(WebCore::RenderStyle::setListStyleImage):

  • rendering/style/StyleInheritedData.cpp:

(WebCore::StyleInheritedData::StyleInheritedData):
(WebCore::StyleInheritedData::operator==):

  • rendering/style/StyleInheritedData.h:

(StyleInheritedData):

  • rendering/style/StyleRareInheritedData.h:
  • rendering/style/StyleRareInheritedData.cpp:

(SameSizeAsStyleRareInheritedData):
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator==):

4:39 PM Changeset in webkit [135787] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

Add hasTouchEventhandlersAt to WebView API
https://bugs.webkit.org/show_bug.cgi?id=102541

Patch by Yusuf Ozuysal <yusufo@google.com> on 2012-11-26
Reviewed by James Robinson.

Adds hasTouchEventHandlersAt to WebWidget API to check for touch event handlers at a
given point. This will be used to distinguish between events not processed by
touch event handlers and event not hitting any touch event handlers. Both are
returning the same ACK message currently. Default implementation returns true to
continue the same behavior as we currently have.

  • public/WebWidget.h:

(WebWidget):
(WebKit::WebWidget::hasTouchEventHandlersAt):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::hasTouchEventHandlersAt):
(WebKit):

  • src/WebViewImpl.h:

(WebViewImpl):

4:17 PM Changeset in webkit [135786] by simonjam@chromium.org
  • 40 edits
    1 add in trunk/Source

Consolidate FrameLoader::load() into one function taking a FrameLoadRequest
https://bugs.webkit.org/show_bug.cgi?id=102151

Reviewed by Adam Barth.

Source/WebCore:

There's a FIXME that we have too many FrameLoader::load*() functions. This patch consolidates 3 into 1.
There are still a few more load functions that will be consolidated later. Using FrameLoadRequest as
the interface into FrameLoader will also provide a place to pass in the initiator. Finally, this matches
the refactoring done with CachedResourceRequest and CachedResourceLoader.

No new tests. No change in functionality.

  • WebCore.exp.in:
  • loader/FrameLoadRequest.h:

(WebCore::FrameLoadRequest::FrameLoadRequest):
(WebCore::FrameLoadRequest::setLockHistory): These are former arguments to load().
(WebCore::FrameLoadRequest::lockHistory): Ditto.
(FrameLoadRequest):
(WebCore::FrameLoadRequest::setShouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::shouldCheckNewWindowPolicy): Ditto.
(WebCore::FrameLoadRequest::substituteData): Ditto.
(WebCore::FrameLoadRequest::setSubstituteData): Ditto.
(WebCore::FrameLoadRequest::hasSubstituteData): Ditto.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::load): No change in behavior, just merged it all into one function.

  • loader/FrameLoader.h:

(FrameLoader):

  • page/DragController.cpp:

(WebCore::DragController::performDrag):

Source/WebKit/blackberry:

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPagePrivate::loadString):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):

Source/WebKit/chromium:

  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::loadRequest):
(WebKit::WebFrameImpl::loadData):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::initializeLoader):

Source/WebKit/efl:

  • ewk/ewk_frame.cpp:

(_ewk_frame_contents_set_internal):

Source/WebKit/gtk:

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_load_uri):
(webkit_web_frame_load_data):
(webkit_web_frame_load_request):

Source/WebKit/mac:

  • Plugins/WebPluginController.mm:
  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):

Source/WebKit/qt:

  • Api/qwebframe.cpp:

(QWebFrame::QWebFrame):
(QWebFrame::load):
(QWebFrame::setHtml):
(QWebFrame::setContent):

  • WebCoreSupport/DumpRenderTreeSupportQt.cpp:

(DumpRenderTreeSupportQt::setAlternateHtml):
(qt_dump_set_accepts_editing):

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::callErrorPageExtension):

Source/WebKit/win:

  • WebFrame.cpp:

(WebFrame::loadRequest):
(WebFrame::loadData):

Source/WebKit/wince:

  • WebView.cpp:

(WebView::load):

Source/WebKit/wx:

  • WebFrame.cpp:

(WebKit::WebFrame::SetPageSource):

Source/WebKit2:

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::loadURLRequest):
(WebKit::WebPage::loadData):

3:57 PM Changeset in webkit [135785] by Lucas Forschler
  • 4 edits in branches/safari-536.28-branch/Source

Merged r134327. <rdar://problem/12696109>

3:57 PM Changeset in webkit [135784] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Stop sending touch events to plugins.
https://bugs.webkit.org/show_bug.cgi?id=103188

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-24
Reviewed by Rob Buis.

Reviewed internally by Jeff Rogers and Mike Lattanzio.
No tests required.
PR #248605

  • plugins/blackberry/PluginViewBlackBerry.cpp:

(WebCore::PluginView::handleTouchEvent):
(WebCore::PluginView::handleMouseEvent):

3:53 PM Changeset in webkit [135783] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skipping some compositing/tiling tests on Windows because tiled backing is not supported.
Tests skipped:
compositing/tiling/rotated-tiled-preserve3d-clamped.html
compositing/tiling/rotated-tiled-clamped.html

  • platform/win/TestExpectations:
3:49 PM Changeset in webkit [135782] by Lucas Forschler
  • 22 edits
    7 copies in branches/safari-536.28-branch

Merged r133834. <rdar://problem/12660677>

3:45 PM Changeset in webkit [135781] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: css3/filters/custom/custom-filter-transforms-animation.html
times out intermittently.
https://bugs.webkit.org/show_bug.cgi?id=103308

  • platform/chromium/TestExpectations:
3:38 PM Changeset in webkit [135780] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: failure in fast/text/atsui-small-caps-punctuation-size.html
https://bugs.webkit.org/show_bug.cgi?id=103148

  • platform/chromium/TestExpectations:
3:27 PM Changeset in webkit [135779] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Removing unnecessary friend classes in RenderObject: LayoutRepainter, RenderSVGContainer
https://bugs.webkit.org/show_bug.cgi?id=103164

Patch by Adenilson Cavalcanti <cavalcantii@gmail.com> on 2012-11-26
Reviewed by Simon Fraser.

Removing some of classes marked as friend of RenderObject. This patch solves this issue
for 2 classes: RenderSVGContainer (that is derived from RenderObject) and LayoutRepainter
(that accesses one const member function in RenderObject that is now made public).

No new tests, no changes in functionality.

  • rendering/RenderObject.h:

(RenderObject):
(WebCore::RenderObject::outlineBoundsForRepaint):

3:18 PM Changeset in webkit [135778] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: failure in http/tests/media/pdf-served-as-pdf.html
https://bugs.webkit.org/show_bug.cgi?id=103093

  • platform/chromium/TestExpectations:
3:12 PM Changeset in webkit [135777] by Simon Fraser
  • 4 edits in branches/safari-536.28-branch/Source/WebCore

<rdar://problem/12751360>
Merge r135746

2012-11-26 Simon Fraser <Simon Fraser>

Optimize layer updates after scrolling
https://bugs.webkit.org/show_bug.cgi?id=102635

Reviewed by Sam Weinig.

updateLayerPositionsAfterScroll() previously unconditionally cleared clip
rects, and recomputed repaint rects too often. Recomputing both of these
can be very expensive, as they involve tree walks up to the root.

We can optimize layer updates after document scrolling by only clearing clip
rects, and recomputing repaint rects, if we encounter a fixed- or sticky-position
element. For overflow scroll, we have to clear clip rects and recompute repaint rects.

  • page/FrameView.cpp: (WebCore::FrameView::repaintFixedElementsAfterScrolling): Call updateLayerPositionsAfterDocumentScroll().
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositions): Call clearClipRects() because updateLayerPosition() no longer does. (WebCore::RenderLayer::updateLayerPositionsAfterDocumentScroll): Version of updateLayerPositionsAfterScroll() that is for document scrolls. It has no need to push layers to the geometry map. (WebCore::RenderLayer::updateLayerPositionsAfterOverflowScroll): Pushes layers to the geometry map, and calls updateLayerPositionsAfterScroll() with the IsOverflowScroll flag. (WebCore::RenderLayer::updateLayerPositionsAfterScroll): Set the HasChangedAncestor flag if our location changed, and use that as a hint to clear cached rects. Be more conservative than before about when to clear cached clip rects. (WebCore::RenderLayer::updateLayerPosition): Move responsibility for calling clearClipRects() ouf of this function and into callers. (The one caller outside RenderLayer will be removed via bug 102624). Return a bool indicating whether our position changed. (WebCore::RenderLayer::scrollTo): Call updateLayerPositionsAfterOverflowScroll(). (WebCore::RenderLayer::updateClipRects): Added some #ifdeffed out code that is useful to verify that cached clips are correct; it's too slow to leave enabled in debug builds.
  • rendering/RenderLayer.h: (WebCore::RenderLayer::setLocation): Change to take a LayoutPoint, rather than separate x and y.
3:12 PM Changeset in webkit [135776] by Simon Fraser
  • 12 edits in branches/safari-536.28-branch/Source/WebCore

<rdar://problem/12753059>
Merge r135025

2012-11-12 Simon Fraser <Simon Fraser>

Eliminate ancestor tree walk computing outlineBoundsForRepaint() when updating layer positions
https://bugs.webkit.org/show_bug.cgi?id=101874

Reviewed by Dave Hyatt.

RenderLayer::updateLayerPositions() and updateLayerPositionsAfterScroll() spend a
lot of time in computeRepaintRects(), which does two ancestor tree walks, once
for clippedOverflowRectForRepaint(), and one for outlineBoundsForRepaint().

Eliminate the ancestor tree walk in outlineBoundsForRepaint() by maintaining
a RenderGeometryMap as we traverse the layer tree, and then using it to map
the outline bounds to the repaint container. Replace the hokey cached offsetFromRoot
now that the RenderGeometryMap can do a better job.

The clipped overflow rect cannot be mapped simply, so cannot yet make use of
the geometry map.

Modify the RenderGeometryMap to support mapping to some repaintContainer ancestor.
Add a RenderObject walk that is necessary to detect flipped writing mode blocks.

Pass the RenderGeometryMap as an optional parameter to outlineBoundsForRepaint.

  • page/FrameView.cpp: (WebCore::FrameView::layout): Make a RenderGeometryMap and pass it down to updateLayerPositions(). For partial layouts, we have to push layers between the root and the enclosing layer of the layout subtree. The geometry map used for repainting does not use SnapOffsetForTransforms, so initialize it explicitly with just the UseTransforms flag. (WebCore::FrameView::repaintFixedElementsAfterScrolling): Make a RenderGeometryMap to pass along to updateLayerPositionsAfterScroll().
  • rendering/RenderBox.cpp: (WebCore::RenderBox::outlineBoundsForRepaint): Replace the optional cachedOffsetToRepaintContainer parameter with an optional RenderGeometryMap, and it use to map the compute rect to repaintContainer coordinates.
  • rendering/RenderBox.h:
  • rendering/RenderGeometryMap.cpp: (WebCore::RenderGeometryMap::RenderGeometryMap): This now has to store the mapping flags to use, so that its behavior can match that of mapLocalToContainer(). The pertinent flag is the confusingly named SnapOffsetForTransforms. (WebCore::RenderGeometryMap::absolutePoint): Call the new mapToContainer() with a null container. (WebCore::RenderGeometryMap::absoluteRect): Ditto. (WebCore::RenderGeometryMap::mapToContainer): Map to the supplied container, asserting that we found it. Add point- and rect-based mapping methods akin to the old absoluteRect/absolutePoint. (WebCore::canMapViaLayer): We need to test for isRenderFlowThread() here too. (WebCore::RenderGeometryMap::pushMappingsToAncestor): When mapping via layers, ensure that the RenderView is pushed as the first step.
  • rendering/RenderGeometryMap.h: (RenderGeometryMap):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositionsAfterLayout): New wrapper for updateLayerPositions() that makes the geometry map. (WebCore::RenderLayer::updateLayerPositionsAfterScroll): New wrapper for updateLayerPositionsAfterScroll that makes the geometry map. (WebCore::RenderLayer::updateLayerPositions): Now takes an optional RenderGeometryMap. Remove the old offsetFromRoot code. Push and pop layers to/from the geometry map. Use the geometry map to get the offsetFromRoot as needed by overflow controls. Pass it to computeRepaintRects(). (WebCore::RenderLayer::computeRepaintRects): Pass the geometry map to outlineBoundsForRepaint(). (WebCore::RenderLayer::updateLayerPositionsAfterScroll): Push and pop to/from the geometry map, and pass it to computeRepaintRects(). (WebCore::RenderLayer::removeOnlyThisLayer): Remove the offsetFromRootBeforeMove computation; this could use a geometry map in future if it is shown to be a bottleneck.
  • rendering/RenderLayer.h: (WebCore::RenderLayer::canUseConvertToLayerCoords): It was thought that the isComposited() was there because the older cached offsetFromRoot logic was sensitive to compositing, but convertToLayerCoords() is not affected by compositing so this check is not needed, and actually harmful.
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::OverlapMap::OverlapMap): The geometry map used for overlap testing should not use SnapOffsetForTransforms, so initialize it explicitly with just the UseTransforms flag.
  • rendering/RenderObject.h: (WebCore::RenderObject::outlineBoundsForRepaint):
  • rendering/svg/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::outlineBoundsForRepaint):
  • rendering/svg/RenderSVGModelObject.h: (RenderSVGModelObject):
3:07 PM Changeset in webkit [135775] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Form controls don't show pressed state.
https://bugs.webkit.org/show_bug.cgi?id=103292

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-26
Reviewed by Rob Buis.

Reviewed internally by Eli Fidler and Mike Lattanzio.
We weren't sending touch events to webpages unless they
had JS touch event listeners which form controls don't have.
Now send them always and do a little cleanup.
PR #249791

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPage::touchEvent):

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

(WebPagePrivate):

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::needTouchEvents):

3:02 PM Changeset in webkit [135774] by tony@chromium.org
  • 4 edits in branches/chromium/1312/Source

Merge 135316 - When calling DocumentStyleSheetCollection::addUserSheet, pass in a user sheet
https://bugs.webkit.org/show_bug.cgi?id=102835

Reviewed by Ojan Vafai.

After r135082, Chromium browser_tests were triggering the ASSERT in
StyleResolver::collectRulesFromUserStyleSheets. Add an ASSERT that will
trigger earlier and make it clear in the Chromium code that we're always
inserting user level styles.

Source/WebCore:

No new tests, no behavior change except no longer triggering the StyleResolver ASSERT
in Chromium browser_tests.

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::addUserSheet):

Source/WebKit/chromium:

  • src/WebDocument.cpp:

(WebKit::WebDocument::insertUserStyleSheet):

TBR=tony@chromium.org
Review URL: https://codereview.chromium.org/11412177

3:01 PM Changeset in webkit [135773] by tony@chromium.org
  • 10 edits
    2 copies in branches/chromium/1312

Merge 135082 - REGRESSION(r129644): User StyleSheet not applying
https://bugs.webkit.org/show_bug.cgi?id=102110

Reviewed by Andreas Kling.

Source/WebCore:

Injected stylesheets added as UserStyleAuthorLevel fail to apply. r129644 implicitly assumed that
such things don't exists but on Chromium addUserStyleSheet() confusingly uses them.

The patch adds injected author stylesheets to DocumentStyleSheetCollection::activeStyleSheets().
It also generally cleans up the code around injected and user stylesheets.

Tests: userscripts/user-script-and-stylesheet.html

userscripts/user-stylesheet-invalidate.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::StyleResolver):
(WebCore::StyleResolver::collectRulesFromUserStyleSheets):
(WebCore::collectCSSOMWrappers):

  • css/StyleResolver.h:

(StyleResolver):

  • dom/Document.cpp:

(WebCore::Document::setCompatibilityMode):

  • dom/DocumentStyleSheetCollection.cpp:

(WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
(WebCore::DocumentStyleSheetCollection::injectedUserStyleSheets):
(WebCore):
(WebCore::DocumentStyleSheetCollection::injectedAuthorStyleSheets):
(WebCore::DocumentStyleSheetCollection::updateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
(WebCore::DocumentStyleSheetCollection::addUserSheet):
(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
(WebCore::DocumentStyleSheetCollection::reportMemoryUsage):

  • dom/DocumentStyleSheetCollection.h:

(WebCore::DocumentStyleSheetCollection::documentUserStyleSheets):
(DocumentStyleSheetCollection):

  • page/PageGroup.cpp:

(WebCore::PageGroup::addUserStyleSheetToWorld):
(WebCore::PageGroup::removeUserStyleSheetFromWorld):
(WebCore::PageGroup::removeUserStyleSheetsFromWorld):
(WebCore::PageGroup::removeAllUserContent):
(WebCore::PageGroup::invalidatedInjectedStyleSheetCacheInAllFrames):

  • page/PageGroup.h:

(PageGroup):

LayoutTests:

  • inspector/timeline/timeline-script-tag-1-expected.txt:

Update the test result. The style invalidation log is slightly different.

  • userscripts/user-stylesheet-invalidate-expected.txt: Added.
  • userscripts/user-stylesheet-invalidate.html: Added.

TBR=Antti Koivisto
Review URL: https://codereview.chromium.org/11412176

3:01 PM Changeset in webkit [135772] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: updated TextExpecations for failing
fast/dom/shadow/shadow-dom-event-dispatching.html
https://bugs.webkit.org/show_bug.cgi?id=103299

  • platform/chromium/TestExpectations:
2:52 PM Changeset in webkit [135771] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skip fast/dom/Window/open-window-min-size.html on Windows.
DRT doesn't support showModalDialog https://bugs.webkit.org/show_bug.cgi?id=53675

  • platform/win/TestExpectations:
2:45 PM Changeset in webkit [135770] by zeno.albisser@digia.com
  • 6 edits in trunk/Source

[Qt] Fix the LLInt build on Mac
https://bugs.webkit.org/show_bug.cgi?id=97587

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

Source/WTF:

  • wtf/InlineASM.h:

Use OS(DARWIN) instead of PLATFORM(MAC),
in order to allow Qt to use the same code.

  • wtf/Platform.h:
2:43 PM Changeset in webkit [135769] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

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

  • DEPS:
2:37 PM Changeset in webkit [135768] by Lucas Forschler
  • 2 edits in branches/safari-536.28-branch/Source/WebKit2

Merged r131975. <rdar://problem/12589198>

2:36 PM Changeset in webkit [135767] by jonlee@apple.com
  • 15 edits in trunk/Source

Pass clicks through to the restarted plugin
https://bugs.webkit.org/show_bug.cgi?id=102150
<rdar://problem/12695575>

Reviewed by Simon Fraser.

Source/WebCore:

Add a new state to the machine for plugin snapshotting, called PlayingWithPendingMouseClick.
This represents the state where the plugin is playing, but before the pending mouse click
has been fired. Once the click is sent, the plugin state transitions to Playing. For
situations where the plugin just runs normally without a simulated click, the plugin state
jumps from DisplayingSnapshot straight to Playing, as before.

  • html/HTMLPlugInElement.h: Add new display state to represent when the plugin is running,

but a pending mouse click is about to be sent to the plugin.
(WebCore::HTMLPlugInElement::dispatchPendingMouseClick): Called by the plugin when it is
ok for the element to send the pending mouse click.

  • html/HTMLPlugInElement.cpp:

(WebCore::HTMLPlugInElement::defaultEventHandler): Update the handler to pass the event
to the renderer to handle if the state is before PlayingWithPendingMouseClick.

  • html/HTMLPlugInImageElement.h:
  • html/HTMLPlugInImageElement.cpp: Add a click timer to delay the mouse click so that the

plugin has some time to initialize.
(WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initialize the mouse timer.
(WebCore::HTMLPlugInImageElement::setPendingClickEvent): Keep track of the click event
the user made to restart the plugin.
(WebCore::HTMLPlugInImageElement::dispatchPendingMouseClick): Start the timer.
(WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired): When the timer fires,
dispatch the simulated click, with mouse over, mouse down, and mouse up events. Transition
to the Playing state, and we no longer need the click event.

  • rendering/RenderSnapshottedPlugIn.cpp: Change the threshold state to PlayingWithPendingMouseClick

instead of Playing, since that is the earliest state where the plugin is playing.
(WebCore::RenderSnapshottedPlugIn::paint):
(WebCore::RenderSnapshottedPlugIn::paintReplaced):
(WebCore::RenderSnapshottedPlugIn::getCursor):
(WebCore::RenderSnapshottedPlugIn::handleEvent): If the user clicked on the button, jump to
Playing, and don't send a simulated click. Otherwise, transition to PlayingWithPendingMouseClick,
and keep track of that mouse event.

  • WebCore.exp.in: Export MouseRelatedEvent::offsetX() and offsetY().

Source/WebKit2:

Expose convertToRootView() as a public function for all plugins. It converts the click point
from local plugin coordinates to root view coordinates. When the events are sent to the
plugin, the coordinate gets converted back to the local reference frame.

  • WebProcess/Plugins/Plugin.cpp:

(WebKit::Plugin::convertToRootView): Default implementation should not be reached.

  • WebProcess/Plugins/Plugin.h: Promote convertToRootView() from NetscapePlugin.h.
  • WebProcess/Plugins/Netscape/NetscapePlugin.h: An implementation already existed. Make the

method virtual.

  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Plugins/PluginProxy.cpp:

(WebKit::PluginProxy::convertToRootView): Apply the transform to the provided point to return
a point in root view coordinates.

Change the threshold state to PlayingWithPendingMouseClick instead of Playing, since that is
the earliest state where the plugin is playing.

  • WebProcess/Plugins/PluginView.cpp: Give the snapshot a little more time to generate.

(WebKit::PluginView::didInitializePlugin): When the plugin has initialized, tell the plugin
element to dispatch the pending mouse click.
(WebKit::PluginView::paint):
(WebKit::PluginView::createWebEvent): Helper function to convert a WebCore mouse event to a
WebMouseEvent.
(WebKit::PluginView::handleEvent): If the event is simulated, there is no source event from
the UI process. So we fabricate one based on the simulated event.
(WebKit::PluginView::invalidateRect):
(WebKit::PluginView::isAcceleratedCompositingEnabled):

  • WebProcess/Plugins/PluginView.h:
2:34 PM Changeset in webkit [135766] by roger_fong@apple.com
  • 4 edits in trunk

Unreviewed. ENABLE_ACCELERATED_OVERFLOW_SCROLLING not enabled on Windows.
Add a feature flag and skip some failing tests.
https://bugs.webkit.org/show_bug.cgi?id=103294

Tests skipped:
compositing/overflow/scrolling-without-painting.html
compositing/overflow/updating-scrolling-content.html

  • win/tools/vsprops/FeatureDefines.vsprops:
  • platform/win/TestExpectations:
2:24 PM Changeset in webkit [135765] by commit-queue@webkit.org
  • 7 edits in trunk

Refactor V8 bindings to allow content scripts to access subframes
https://bugs.webkit.org/show_bug.cgi?id=93646

Patch by Dan Carney <dcarney@google.com> on 2012-11-26
Reviewed by Adam Barth.

Source/WebCore:

Isolated window shells are now initialized on the fly
as needed.

No new tests. Existing test modified.

  • bindings/v8/DOMWrapperWorld.cpp:

(WebCore::DOMWrapperWorld::ensureIsolatedWorld):

  • bindings/v8/DOMWrapperWorld.h:

(WebCore::DOMWrapperWorld::createdFromUnitializedWorld):
(DOMWrapperWorld):

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::currentWorldContext):

LayoutTests:

Test modified to check isolated world access across frames.

  • http/tests/security/isolatedWorld/world-reuse-expected.txt:
  • http/tests/security/isolatedWorld/world-reuse.html:
2:15 PM Changeset in webkit [135764] by Lucas Forschler
  • 6 edits
    2 copies in branches/safari-536.28-branch

Merged r132924. <rdar://problem/12603373>

2:11 PM Changeset in webkit [135763] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

clipboardwin compile error for win64
https://bugs.webkit.org/show_bug.cgi?id=94124

Patch by Alex Christensen <alex.christensen@flexsim.com> on 2012-11-26
Reviewed by Brent Fulgham.

The clipboard utilities code uses std::min with one unsigned int parameter and one size_t parameter.
This causes a problem when compiling for 64-bit Windows because the two types are not the same size.
To resolve this issue, we specify the template type as the type the return value is being cast into

Fixed a few compile errors for Windows x64 by specifying template parameters.

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::setFileDescriptorData): Specify the types for the std::min macro to avoid compiler errors
under 64-bit builds.

2:01 PM Changeset in webkit [135762] by Martin Robinson
  • 2 edits in trunk/Source/WebCore

[GTK] GtkSocket is leaked until webview is destroyed.
https://bugs.webkit.org/show_bug.cgi?id=102564

Patch by Arnaud Renevier <a.renevier@sisa.samsung.com> on 2012-11-26
Reviewed by Martin Robinson.

Remove GtkSocket from its parent when pluginview is destroyed. Then,
the GtkSocket and it's possible child widgets are realeased when it is
no more needed.

No new tests, already covered by existing tests.

  • plugins/gtk/PluginViewGtk.cpp:

(WebCore::PluginView::platformDestroy):

2:00 PM Changeset in webkit [135761] by Martin Robinson
  • 4 edits in trunk

[GTK] Explicitly link against librt
https://bugs.webkit.org/show_bug.cgi?id=103194

Patch by Kalev Lember <kalevlember@gmail.com> on 2012-11-26
Reviewed by Martin Robinson.

Fixes broken build with undefined references to shm_open / shm_unlink
symbols. SharedMemoryUnix.cpp uses these so we need to link with -lrt.

.:

  • configure.ac:

Source/WebKit2:

  • GNUmakefile.am:
1:44 PM Changeset in webkit [135760] by macpherson@chromium.org
  • 2 edits in trunk/Source/WebCore

Make StyleResolver::applyProperty use isInherit in CSSPropertyWebkitMarquee instead of calculating equivalent in-place.
https://bugs.webkit.org/show_bug.cgi?id=102446

Reviewed by Tony Chang.

!m_parentNode
!value->isInheritedValue() is equivalent to !isInherit (by De Morgan's law).

No new tests / code is provably equivalent.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):

1:41 PM Changeset in webkit [135759] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32-bit build fix. Move the method decalration outside of the X86_64 only section.

1:38 PM Changeset in webkit [135758] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Null check calls associated with retrieving the caret rect.
https://bugs.webkit.org/show_bug.cgi?id=103281

Patch by Nima Ghanavatian <nghanavatian@rim.com> on 2012-11-26
Reviewed by Rob Buis.

Some of these calls can return null, which could lead to a crash.

Internally reviewed by Gen Mak.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::requestSpellingCheckingOptions):

1:20 PM Changeset in webkit [135757] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Don't blind all the things.
https://bugs.webkit.org/show_bug.cgi?id=102572

Reviewed by Gavin Barraclough.

No longer blind all the constants in the instruction stream. We use a
simple non-deterministic filter to avoid blinding everything. Also modified
the basic integer blinding logic to avoid blinding small negative values.

  • assembler/MacroAssembler.h:

(MacroAssembler):
(JSC::MacroAssembler::shouldConsiderBlinding):
(JSC::MacroAssembler::shouldBlind):

1:00 PM Changeset in webkit [135756] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

JSObject::copyButterfly doesn't handle undecided indexing types correctly
https://bugs.webkit.org/show_bug.cgi?id=102573

Reviewed by Filip Pizlo.

We don't do any copying into the newly allocated vector and we don't zero-initialize CopiedBlocks
during the copying phase, so we end up with uninitialized memory in arrays which have undecided indexing
types. We should just do the actual memcpy from the old block to the new one.

  • runtime/JSObject.cpp:

(JSC::JSObject::copyButterfly): Just do the same thing that we do for other contiguous indexing types.

12:49 PM Changeset in webkit [135755] by psolanki@apple.com
  • 4 edits in trunk/Source/WebCore

Add ResourceBuffer::append(CFDataRef) to get code to compile with USE(NETWORK_CFDATA_ARRAY_CALLBACK)
https://bugs.webkit.org/show_bug.cgi?id=102706

Reviewed by Brent Fulgham.

No new tests because the flag isn't enabled. Also the functionality should be covered by
existing tests.

  • loader/ResourceBuffer.cpp:

(WebCore):
(WebCore::ResourceBuffer::append):

  • loader/ResourceBuffer.h:

(ResourceBuffer):

  • loader/mac/ResourceLoaderMac.mm:
12:37 PM Changeset in webkit [135754] by rjkroege@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r135743.
http://trac.webkit.org/changeset/135743
https://bugs.webkit.org/show_bug.cgi?id=103280

Caused compile failure 'SK_DISABLE_DITHER_32BIT_GRADIENT'
macro redefined (Requested by rjkroege on #webkit).

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

  • skia_webkit.gyp:
12:27 PM Changeset in webkit [135753] by tony@chromium.org
  • 9 edits in trunk

Move more functions from internals.settings to internals
https://bugs.webkit.org/show_bug.cgi?id=102976

Reviewed by Adam Barth.

Source/WebCore:

Move functions that don't have to do with Settings off of internals.settings.
setPagination and configurationForViewport were defined on internals, so we
can inline the functions (no test change).

setEnableMockPagePopup is moved to Internals.

No new tests, this is a refactor.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::reset): Move reset code into Internals.

  • testing/InternalSettings.h:

(InternalSettings): Remove code for setPagination, configurationForViewport and setEnableMockPagePopup.

  • testing/InternalSettings.idl: Remove setPagination and setEnableMockPagePopup.
  • testing/Internals.cpp:

(WebCore): Use a static to keep track of the MockPagePopupDriver.
(WebCore::Internals::resetToConsistentState): Code from InternalSettings::reset
(WebCore::Internals::setEnableMockPagePopup): Code copied from InternalSettings.
(WebCore::Internals::pagePopupController): Code copied from InternalSettings.
(WebCore::Internals::setPagination): Code copied from InternalSettings.
(WebCore::Internals::configurationForViewport): Code copied from InternalSettings.

  • testing/Internals.h:

(Internals): Add setEnableMockPagePopup.

  • testing/Internals.idl: Add setEnableMockPagePopup.

LayoutTests:

Move internals.settings.setEnableMockPagePopup to internals.setEnableMockPagePopup.

  • fast/forms/resources/picker-common.js:
12:17 PM Changeset in webkit [135752] by commit-queue@webkit.org
  • 6 edits in trunk

[EFL][WK2] Add setting to enable / disable HTML5 local storage functionality
https://bugs.webkit.org/show_bug.cgi?id=103224

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-26
Reviewed by Laszlo Gombos.

Source/WebKit2:

Add API to ewk_settings to enable / disable the HTML5
local storage functionality. The functionality is
enabled by default.

  • UIProcess/API/efl/ewk_settings.cpp:

(ewk_settings_local_storage_enabled_set):
(ewk_settings_local_storage_enabled_get):

  • UIProcess/API/efl/ewk_settings.h:
  • UIProcess/API/efl/tests/test_ewk2_settings.cpp:

(TEST_F): Add API test for ewk_settings_local_storage_enabled_get / set.

Tools:

Add --local-storage command line argument to MiniBrowser to
explicitely disable HTML5 local storage functionality. This
is useful for testing purposes.

  • MiniBrowser/efl/main.c:

(window_create):
(elm_main):

12:02 PM Changeset in webkit [135751] by Lucas Forschler
  • 12 edits
    3 copies in branches/safari-536.28-branch

Merged r132713. <rdar://problem/12589195>

12:00 PM Changeset in webkit [135750] by commit-queue@webkit.org
  • 8 edits
    2 adds in trunk

[CSS Regions] Add Region info for RootLineBoxes and pack the pagination data
https://bugs.webkit.org/show_bug.cgi?id=101332

Patch by Andrei Bucur <abucur@adobe.com> on 2012-11-26
Reviewed by David Hyatt.

Source/WebCore:

Currently the pagination information for lines is spread between the RootInlineBox and InlineFlowBox classes, consuming memory even though
the boxes were not the result of an pagination layout. To overcome this, a new struct (LineFragmentationData) is created that wraps all the data,
including two new members, the containing Region for the line and a boolean that states if the line was laid out in a Region or not.
The flag is necessary because the sanitize function on LineFragmentationData resets the containing Region to 0 if the Region was removed from
chain (so a value of 0 for the containing Region means two things). The sanitize function should prevent access to an invalid address.
The containing Region is used to detect if a line changed the Region where it resides. This will be helpful especially when implementing region
styling for layout properties (e.g. the font-size property https://bugs.webkit.org/show_bug.cgi?id=95559 ).
A line can change the region when it is shifted inside the containing block or if the entire block moves. This means it's better to delegate
the task of updating the containing Region to the block.

Tests: fast/regions/line-containing-region-crash.html

  • rendering/InlineFlowBox.cpp:

(SameSizeAsInlineFlowBox):

  • rendering/InlineFlowBox.h:

(WebCore::InlineFlowBox::InlineFlowBox):
(InlineFlowBox):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::lineWidthForPaginatedLineChanged):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::linkToEndLineIfNeeded):
(WebCore::RenderBlock::determineStartPosition):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::RootInlineBox):
(WebCore::RootInlineBox::setContainingRegion):
(WebCore):
(WebCore::RootInlineBox::LineFragmentationData::sanitize): This is an O(1) function that checks if the containig Region is still valid pointer.

  • rendering/RootInlineBox.h:

(WebCore):
(WebCore::RootInlineBox::paginationStrut):
(WebCore::RootInlineBox::setPaginationStrut):
(WebCore::RootInlineBox::isFirstAfterPageBreak):
(WebCore::RootInlineBox::setIsFirstAfterPageBreak):
(WebCore::RootInlineBox::paginatedLineWidth):
(WebCore::RootInlineBox::setPaginatedLineWidth):
(RootInlineBox):
(WebCore::RootInlineBox::containingRegion):
(WebCore::RootInlineBox::hasContainingRegion): Use this to determine if the line has a region or not.
(WebCore::RootInlineBox::ensureLineFragmentationData):
(LineFragmentationData):
(WebCore::RootInlineBox::LineFragmentationData::LineFragmentationData):

LayoutTests:

The test checks if there is a crash when doing a line layout if:

  • the flow has no region
  • the flow has a region but the lines have no containing region
  • the flow has no region but the lines have a containing region
  • fast/regions/line-containing-region-crash-expected.txt: Added.
  • fast/regions/line-containing-region-crash.html: Added.
11:57 AM Changeset in webkit [135749] by Michelangelo De Simone
  • 19 edits
    5 adds in trunk

[CSS Shaders] Add IDL file and bindings for mix function
https://bugs.webkit.org/show_bug.cgi?id=93011

Reviewed by Dean Jackson.

Source/WebCore:

JavaScript bindings have been added for the Custom Filter mix()
function (WebKitCSSMixFunctionValue). As of now, this is only a
placeholder that extends CSSValueList without adding any new
property.

Test: css3/filters/custom/custom-filter-mix-bindings.html

  • CMakeLists.txt: mix() IDL has been added to the Generator;

DerivedSources have been included.

  • DerivedSources.cpp: Ditto.
  • DerivedSources.make: Ditto.
  • DerivedSources.pri: Ditto.
  • GNUmakefile.list.am: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • bindings/js/JSCSSValueCustom.cpp:

(WebCore::toJS): return a JSC DOM wrapper for WebKitCSSMixFunctionValue.

  • bindings/v8/custom/V8CSSValueCustom.cpp:

(WebCore::V8CSSValue::dispatchWrapCustom): Ditto, for V8.

  • css/WebKitCSSMixFunctionValue.idl: Added.

LayoutTests:

Test for the Custom Filter mix() function JS bindings.

  • css3/filters/custom/custom-filter-mix-bindings-expected.txt: Added.
  • css3/filters/custom/custom-filter-mix-bindings.html: Added.
  • css3/filters/script-tests/custom-filter-mix-bindings.js: Added.

(jsWrapperClass):
(shouldBeType):

  • platform/chromium/css3/filters/custom/custom-filter-mix-bindings-expected.txt: Added.
  • platform/efl/fast/js/global-constructors-expected.txt: Updated with the new WebKitCSSMixFunctionValueConstructor.
  • platform/gtk/fast/js/global-constructors-expected.txt: Ditto.
  • platform/mac/fast/js/global-constructors-expected.txt: Ditto.
  • platform/qt-5.0/fast/js/global-constructors-expected.txt: Ditto.
  • platform/qt/fast/js/global-constructors-expected.txt: Ditto.
  • platform/win/fast/js/global-constructors-expected.txt: Ditto.
11:45 AM Changeset in webkit [135748] by rafael.lobo@openbossa.org
  • 2 edits in trunk/Source/WebKit2

[CoordinatedGraphics] Access to LayerTreeRenderer::m_renderQueue should be thread safe
https://bugs.webkit.org/show_bug.cgi?id=101341

Reviewed by Noam Rosenthal.

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:

(WebKit::LayerTreeRenderer::syncRemoteContent): The previous swap already clears the
vector on m_renderQueue. It is also done in a thread-safe way, so clearing it afterward
can be harmful as we've already released the lock.

11:42 AM Changeset in webkit [135747] by kareng@chromium.org
  • 1 edit in branches/chromium/1312/Source/WebCore/dom/Document.cpp

Merge 135709 - Circular reference between Document and MediaQueryMatcher.
https://bugs.webkit.org/show_bug.cgi?id=103242

Patch by Marja Hölttä <marja@chromium.org> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

It's not enough to clean up listeners in MediaQueryMatcher in ~Document,
since MediaQueryListListener keeps the Document alive. This caused
www.crbug.com/113983.

No new tests: No visible change in behavior (except that it doesn't leak memory).

  • dom/Document.cpp:

(WebCore::Document::~Document):
(WebCore::Document::detach):

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/11415134

11:37 AM Changeset in webkit [135746] by Simon Fraser
  • 4 edits in trunk/Source/WebCore

Optimize layer updates after scrolling
https://bugs.webkit.org/show_bug.cgi?id=102635

Reviewed by Sam Weinig.

updateLayerPositionsAfterScroll() previously unconditionally cleared clip
rects, and recomputed repaint rects too often. Recomputing both of these
can be very expensive, as they involve tree walks up to the root.

We can optimize layer updates after document scrolling by only clearing clip
rects, and recomputing repaint rects, if we encounter a fixed- or sticky-position
element. For overflow scroll, we have to clear clip rects and recompute repaint rects.

  • page/FrameView.cpp:

(WebCore::FrameView::repaintFixedElementsAfterScrolling): Call updateLayerPositionsAfterDocumentScroll().

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateLayerPositions): Call clearClipRects() because
updateLayerPosition() no longer does.
(WebCore::RenderLayer::updateLayerPositionsAfterDocumentScroll): Version of updateLayerPositionsAfterScroll()
that is for document scrolls. It has no need to push layers to the geometry map.
(WebCore::RenderLayer::updateLayerPositionsAfterOverflowScroll): Pushes layers to the geometry map,
and calls updateLayerPositionsAfterScroll() with the IsOverflowScroll flag.
(WebCore::RenderLayer::updateLayerPositionsAfterScroll): Set the HasChangedAncestor flag
if our location changed, and use that as a hint to clear cached rects. Be more conservative
than before about when to clear cached clip rects.
(WebCore::RenderLayer::updateLayerPosition): Move responsibility for calling
clearClipRects() ouf of this function and into callers.
(The one caller outside RenderLayer will be removed via bug 102624).
Return a bool indicating whether our position changed.
(WebCore::RenderLayer::scrollTo): Call updateLayerPositionsAfterOverflowScroll().
(WebCore::RenderLayer::updateClipRects): Added some #ifdeffed out code that is useful
to verify that cached clips are correct; it's too slow to leave enabled in debug builds.

  • rendering/RenderLayer.h:

(WebCore::RenderLayer::setLocation): Change to take a LayoutPoint, rather than separate
x and y.

11:37 AM Changeset in webkit [135745] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[sh4] JavaScriptCore JIT build is broken since r135330
Add missing implementation for sh4 arch.
https://bugs.webkit.org/show_bug.cgi?id=103145

Patch by Julien BRIANCEAU <jbrianceau@nds.com> on 2012-11-26
Reviewed by Oliver Hunt.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::canJumpReplacePatchableBranchPtrWithPatch):
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::startOfBranchPtrWithPatchOnRegister):
(JSC::MacroAssemblerSH4::revertJumpReplacementToBranchPtrWithPatch):
(JSC::MacroAssemblerSH4::startOfPatchableBranchPtrWithPatchOnAddress):
(JSC::MacroAssemblerSH4::revertJumpReplacementToPatchableBranchPtrWithPatch):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::revertJump):
(SH4Assembler):
(JSC::SH4Assembler::printInstr):

11:31 AM Changeset in webkit [135744] by zandobersek@gmail.com
  • 51 edits in trunk/Tools

Remove use of deprecated logging from most of webkitpy.tool
https://bugs.webkit.org/show_bug.cgi?id=103180

Reviewed by Dirk Pranke.

Remove calls to log and error methods of the deprecated_logging module, replacing them
by using Python's Logger objects. This patch covers the switch in all of webkitpy.tool
except the QueueEngine.

Unit tests are adjusted for these changes, moving output from expected stderr to expected logs.

  • Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:

(MockCommitQueue.run_command):
(MockCommitQueue.command_passed):
(MockCommitQueue.command_failed):
(MockCommitQueue.report_flaky_tests):
(MockCommitQueue.archive_last_test_results):
(CommitQueueTaskTest._run_through_task):
(CommitQueueTaskTest.test_success_case):
(test_fast_success_case):
(test_clean_failure):
(test_update_failure):
(test_apply_failure):
(test_validate_changelog_failure):
(test_build_failure):
(test_red_build_failure):
(test_flaky_test_failure):
(test_failed_archive):
(test_double_flaky_test_failure):
(test_test_failure):
(test_red_test_failure):
(test_very_red_tree_retry):
(test_red_tree_patch_rejection):
(test_land_failure):

  • Scripts/webkitpy/tool/bot/feeders.py:

(CommitQueueFeeder._update_work_items):
(EWSFeeder.feed):

  • Scripts/webkitpy/tool/bot/feeders_unittest.py:
  • Scripts/webkitpy/tool/bot/layouttestresultsreader.py:

(LayoutTestResultsReader.archive):

  • Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:

(test_archive_last_layout_test_results):

  • Scripts/webkitpy/tool/bot/sheriff.py:
  • Scripts/webkitpy/tool/commands/abstractsequencedcommand.py:

(AbstractSequencedCommand.execute):

  • Scripts/webkitpy/tool/commands/commandtest.py:

(CommandsTest.assert_execute_outputs):

  • Scripts/webkitpy/tool/commands/download.py:

(AbstractPatchProcessingCommand._process_patch.execute):
(ProcessBugsMixin._fetch_list_of_patches_to_process):
(ProcessURLsMixin._fetch_list_of_patches_to_process):
(AbstractRolloutPrepCommand._commit_info):

  • Scripts/webkitpy/tool/commands/download_unittest.py:

(AbstractRolloutPrepCommandTest.test_commit_info):
(DownloadCommandsTest.test_build):
(DownloadCommandsTest.test_build_and_test):
(test_apply_attachment):
(test_apply_from_bug):
(test_apply_watch_list):
(test_land):
(test_land_red_builders):
(test_check_style):
(test_build_attachment):
(test_land_attachment):
(test_land_from_bug):
(test_land_from_url):
(test_prepare_rollout):
(test_create_rollout):
(test_create_rollout_resolved):
(test_rollout):

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:

(AbstractEarlyWarningSystem.handle_script_error.does):

  • Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:

(EarlyWarningSytemTest._default_expected_stderr):
(EarlyWarningSytemTest._default_expected_logs):
(EarlyWarningSytemTest._test_testing_ews):

  • Scripts/webkitpy/tool/commands/openbugs.py:

(OpenBugs.execute):

  • Scripts/webkitpy/tool/commands/openbugs_unittest.py:

(OpenBugsTest.test_args_parsing):

  • Scripts/webkitpy/tool/commands/perfalizer.py:

(Perfalizer.handle_unexpected_error):

  • Scripts/webkitpy/tool/commands/queries.py:

(PatchesInCommitQueue.execute):
(PatchesToCommitQueue._needs_commit_queue):

  • Scripts/webkitpy/tool/commands/queries_unittest.py:

(QueryCommandsTest.test_bugs_to_commit):
(QueryCommandsTest.test_patches_in_commit_queue):
(QueryCommandsTest.test_patches_to_commit_queue):

  • Scripts/webkitpy/tool/commands/queues.py:

(AbstractQueue._cc_watchers):
(AbstractQueue.begin_work_queue):
(FeederQueue.handle_unexpected_error):
(CommitQueue.handle_script_error):
(AbstractReviewQueue.handle_unexpected_error):
(AbstractReviewQueue.handle_script_error):

  • Scripts/webkitpy/tool/commands/queues_unittest.py:

(test_auto_retry):

  • Scripts/webkitpy/tool/commands/queuestest.py:

(QueuesTest.assert_outputs):
(QueuesTest._default_begin_work_queue_stderr):
(QueuesTest):
(QueuesTest._default_begin_work_queue_logs):
(QueuesTest.assert_queue_outputs):

  • Scripts/webkitpy/tool/commands/roll_unittest.py:

(RollCommandsTest.test_update_chromium_deps):
(test_update_chromium_deps_older_revision):

  • Scripts/webkitpy/tool/commands/sheriffbot.py:

(SheriffBot.handle_unexpected_error):

  • Scripts/webkitpy/tool/commands/stepsequence.py:

(StepSequence.run_and_handle_errors):

  • Scripts/webkitpy/tool/commands/upload.py:

(AssignToCommitter._assign_bug_to_last_patch_attacher):
(AbstractPatchUploadingCommand._prepare_state):
(PostCommits.execute):
(MarkBugFixed._determine_bug_id_and_svn_revision):
(MarkBugFixed.execute):
(CreateBug.create_bug_from_commit):
(CreateBug.execute):

  • Scripts/webkitpy/tool/commands/upload_unittest.py:

(test_obsolete_attachments):
(test_land_safely):
(test_mark_bug_fixed):

  • Scripts/webkitpy/tool/multicommandtool.py:

(Command.check_arguments_and_execute):
(MultiCommandTool.main):

  • Scripts/webkitpy/tool/multicommandtool_unittest.py:

(CommandTest.test_required_arguments):

  • Scripts/webkitpy/tool/steps/addsvnmimetypeforpng.py:

(AddSvnMimetypeForPng.run):

  • Scripts/webkitpy/tool/steps/applypatch.py:

(ApplyPatch.run):

  • Scripts/webkitpy/tool/steps/build.py:

(Build.run):

  • Scripts/webkitpy/tool/steps/checkstyle.py:
  • Scripts/webkitpy/tool/steps/closebug.py:

(CloseBug.run):

  • Scripts/webkitpy/tool/steps/closebugforlanddiff.py:

(CloseBugForLandDiff.run):

  • Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:

(CloseBugForLandDiffTest.test_empty_state):

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit.run):

  • Scripts/webkitpy/tool/steps/commit_unittest.py:

(CommitTest._test_check_test_expectations):

  • Scripts/webkitpy/tool/steps/ensurelocalcommitifneeded.py:

(EnsureLocalCommitIfNeeded.run):

  • Scripts/webkitpy/tool/steps/obsoletepatches.py:

(ObsoletePatches.run):

  • Scripts/webkitpy/tool/steps/preparechangelog.py:

(PrepareChangeLog.run):

  • Scripts/webkitpy/tool/steps/reopenbugafterrollout.py:

(ReopenBugAfterRollout.run):

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests.run):

  • Scripts/webkitpy/tool/steps/runtests_unittest.py:

(RunTestsTest.test_webkit_run_unit_tests):

  • Scripts/webkitpy/tool/steps/steps_unittest.py:

(StepsTest.test_update_step):
(StepsTest.test_runtests_args):

  • Scripts/webkitpy/tool/steps/update.py:

(Update.run):

  • Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:

(UpdateChangeLogsWithReviewerTest.test_guess_reviewer_from_bug):
(UpdateChangeLogsWithReviewerTest.test_guess_reviewer_from_multipatch_bug):

  • Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:

(UpdateChangeLogsWithReviewer._guess_reviewer_from_bug):
(UpdateChangeLogsWithReviewer.run):

  • Scripts/webkitpy/tool/steps/updatechromiumdeps.py:

(UpdateChromiumDEPS._validate_revisions):
(UpdateChromiumDEPS.run):

  • Scripts/webkitpy/tool/steps/validatechangelogs.py:

(ValidateChangeLogs._check_changelog_diff):
(ValidateChangeLogs.run):

  • Scripts/webkitpy/tool/steps/validatechangelogs_unittest.py:

(ValidateChangeLogsTest._assert_start_line_produces_output):

  • Scripts/webkitpy/tool/steps/validatereviewer.py:

(ValidateReviewer.run):

11:27 AM Changeset in webkit [135743] by reed@google.com
  • 2 edits in trunk/Source/WebKit/chromium

add SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
https://bugs.webkit.org/show_bug.cgi?id=103272

Reviewed by NOBODY. Unreviewed.

No behavior change, as this define already exists on the chrome side in SkUserConfig.h

  • skia_webkit.gyp:
11:12 AM Changeset in webkit [135742] by rafael.lobo@openbossa.org
  • 2 edits in trunk/Source/WebCore

[Cairo] Surface should not be destroyed before its usage
https://bugs.webkit.org/show_bug.cgi?id=103273

Reviewed by Brent Fulgham.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::drawRepaintCounter): There's some calls to get
the bits and stride from surface right after its destructions. It should
be postponed to avoid annoying bugs.

11:07 AM Changeset in webkit [135741] by jchaffraix@webkit.org
  • 3 edits
    4 adds in trunk

RenderBox::computePercentageLogicalHeight should use containingBlockLogicalWidthForContent
https://bugs.webkit.org/show_bug.cgi?id=103075

Reviewed by Ojan Vafai.

Source/WebCore:

Using the containing block's content logical block was working for most renderers but 2 renderers
were special and were broken in orthogonal writing modes:

  • captions as they override containingBlockLogicalWidthForContent to return the table's logical width.
  • multi-column renderers as they override availableLogicalWidth to constrain the child to the column logical width.

By switching to containingBlockLogicalWidthForContent, we got those 2 cases covered.

Tests: fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode.html

fast/table/caption-orthogonal-writing-mode-sizing.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computePercentageLogicalHeight):
Updated the function to track which renderer's containing block we use and call
containingBlockLogicalWidthForContent on it.

LayoutTests:

  • fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode-expected.txt: Added.
  • fast/multicol/fixed-column-percent-logical-height-orthogonal-writing-mode.html: Added.
  • fast/table/caption-orthogonal-writing-mode-sizing-expected.txt: Added.
  • fast/table/caption-orthogonal-writing-mode-sizing.html: Added.
10:58 AM Changeset in webkit [135740] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in Frame::dispatchVisibilityStateChangeEvent.
https://bugs.webkit.org/show_bug.cgi?id=102053

Reviewed by Adam Barth.

Source/WebCore:

Child frame can go away inside webkitvisibilitychange
event handler. Store it in a ref counted vector.

Test: fast/frames/page-visibility-crash.html

  • page/Frame.cpp:

(WebCore::Frame::dispatchVisibilityStateChangeEvent):

LayoutTests:

  • fast/frames/page-visibility-crash-expected.txt: Added.
  • fast/frames/page-visibility-crash.html: Added.
10:56 AM Changeset in webkit [135739] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

Coverage testing in webkitpy should omit some paths
https://bugs.webkit.org/show_bug.cgi?id=103267

Reviewed by Dirk Pranke.

Omit testing coverage of any file under /usr directory and any file
that is of third party origin and was autoinstalled.

  • Scripts/webkitpy/test/main.py:

(Tester._run_tests):

10:54 AM Changeset in webkit [135738] by yuqiang.xian@intel.com
  • 2 edits in trunk/Source/JavaScriptCore

Use load64 instead of loadPtr to load a JSValue on JSVALUE64 platforms
https://bugs.webkit.org/show_bug.cgi?id=100909

Reviewed by Brent Fulgham.

This is a (trivial) fix after r132701.

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

10:49 AM Changeset in webkit [135737] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Cairo] fillRectWithColor with Color::transparent doesn't perform anything
https://bugs.webkit.org/show_bug.cgi?id=101911

Patch by Hurnjoo Lee <hurnjoo.lee@samsung.com> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

fillRectWithColor with Color::transparent doesn't perform anything
because fillRectWithColor does early-return if the alpha value of
color is zero. But we expect that fill the rect with transparent color
in case the cairo_operator is CAIRO_OPERATOR_SOURCE.

Covered by existing tests.

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::fillRectWithColor):Add condition to prevent early-return if
cairo_operator is not CAIRO_OPERATOR_OVER

10:47 AM Changeset in webkit [135736] by rjkroege@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r135735.
http://trac.webkit.org/changeset/135735
https://bugs.webkit.org/show_bug.cgi?id=103270

Caused breakage across the Chromium tree. (Requested by
rjkroege_ on #webkit).

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

  • skia_webkit.gyp:
9:43 AM Changeset in webkit [135735] by reed@google.com
  • 2 edits in trunk/Source/WebKit/chromium

add SK_DISABLE_DITHER_32BIT_GRADIENT define, in preparation for rebaselining
https://bugs.webkit.org/show_bug.cgi?id=103269

Reviewed by NOBODY. Unreviewed.

No behavior change, as this define already exists on the chrome side in SkUserConfig.h

  • skia_webkit.gyp:
9:33 AM Changeset in webkit [135734] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove redundant assignment in TextureMapperLayer::flushCompositingStateSelf
https://bugs.webkit.org/show_bug.cgi?id=103233

Patch by Jae Hyun Park <jae.park@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

This patch removes redundant assignment in TextureMapperLayer::flushCompositingStateSelf.

No new tests, because no change in bahavior.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingStateSelf):

9:18 AM Changeset in webkit [135733] by commit-queue@webkit.org
  • 8 edits
    7 adds in trunk/Source/WebCore

OpenCL version of SourceAlpha, SourceGraphics and FETurbulence filter effects
https://bugs.webkit.org/show_bug.cgi?id=99829

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2012-11-26
Reviewed by Zoltan Herczeg.

This patch contains the OpenCL implementation of SourceAlpha, SourceGraphic, FETurbulence and a simple OpenCL environment.
At the moment only the Qt build system is supported
~3x speed-up (depending on hardware configuration)

  • Target.pri:
  • WebCore.pri:
  • platform/graphics/filters/FETurbulence.h: Added platformApplyOpenCL() virtual function.

(FETurbulence):

  • platform/graphics/filters/FilterEffect.cpp: Added platform specific apply.

(WebCore::FilterEffect::apply):
(WebCore):
(WebCore::FilterEffect::platformApplyOpenCL): A function to use software computing if a filter is not implemented on OpenCL. It will be deleted after all of the filters are implemented.
(WebCore::FilterEffect::clearResult):
(WebCore::FilterEffect::asImageBuffer):
(WebCore::FilterEffect::openCLImageToImageBuffer): Gets the result of the filter from the OpenCL device and converts it to ImageBuffer type.
(WebCore::FilterEffect::createOpenCLImageResult): Allocates memory on OpenCL device and if it gets an image as a parameter, it uploads the image to the OpenCL device.
(WebCore::FilterEffect::transformResultColorSpace):

  • platform/graphics/filters/FilterEffect.h:

(FilterEffect):
(WebCore::FilterEffect::openCLImage):
(WebCore::FilterEffect::setOpenCLImage):
(WebCore::FilterEffect::hasResult):

  • platform/graphics/filters/SourceAlpha.h:

(SourceAlpha):

  • platform/graphics/filters/SourceGraphic.h:

(SourceGraphic):

  • platform/graphics/gpu/opencl/FilterContextOpenCL.cpp: Added.

(WebCore):
(WebCore::FilterContextOpenCL::context): Configures the OpenCL environment.
(WebCore::FilterContextOpenCL::createOpenCLImage): Allocates memory on OpenCL device.
(WebCore::FilterContextOpenCL::openCLTransformColorSpace): OpenCL implementation of transformColorSpace.
(WebCore::FilterContextOpenCL::compileProgram):

  • platform/graphics/gpu/opencl/FilterContextOpenCL.h: Added.

(WebCore):
(FilterContextOpenCL):
(WebCore::FilterContextOpenCL::deviceId):
(WebCore::FilterContextOpenCL::deviceContext):
(WebCore::FilterContextOpenCL::commandQueue):
(RunKernel):
(WebCore::FilterContextOpenCL::RunKernel::RunKernel):
(WebCore::FilterContextOpenCL::RunKernel::addArgument):
(WebCore::FilterContextOpenCL::RunKernel::run):
(WebCore::FilterContextOpenCL::kernelByName): Returns the reference of a function in the OpenCL program.

  • platform/graphics/gpu/opencl/OpenCLFESourceAlpha.cpp: Added.

(WebCore):
(WebCore::SourceAlpha::platformApplyOpenCL):

  • platform/graphics/gpu/opencl/OpenCLFESourceGraphic.cpp: Added.

(WebCore):
(WebCore::SourceGraphic::platformApplyOpenCL):

  • platform/graphics/gpu/opencl/OpenCLFETurbulence.cpp: Added.

(WebCore):
(WebCore::FilterContextOpenCL::compileFETurbulence):
(WebCore::FilterContextOpenCL::applyFETurbulence):
(WebCore::FETurbulence::platformApplyOpenCL):

  • platform/graphics/gpu/opencl/OpenCLHandle.h: Added.

(WebCore):
(OpenCLHandle):
(WebCore::OpenCLHandle::OpenCLHandle):
(WebCore::OpenCLHandle::operator cl_mem):
(WebCore::OpenCLHandle::operator=):
(WebCore::OpenCLHandle::operator UnspecifiedBoolType):
(WebCore::OpenCLHandle::handleAddress):
(WebCore::OpenCLHandle::clear):

8:50 AM Changeset in webkit [135732] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Not reviewed: follow up for r135720, fixing node highlight.

  • inspector/InspectorOverlayPage.html:
8:40 AM Changeset in webkit [135731] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Crashes in compositing layout tests with AC on.
https://bugs.webkit.org/show_bug.cgi?id=103144

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-26
Reviewed by Noam Rosenthal.

Application could leave texture packing parameters in non-zero state before
texture mapper drawing/texture uploading. To avoid crash texture upload should
specify packing parameters before each texture upload if packing is supported.

Covered by existing tests.

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::BitmapTextureGL::updateContentsNoSwizzle):

8:37 AM Changeset in webkit [135730] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk/LayoutTests

Import more CSS Device Adaptation layout tests
https://bugs.webkit.org/show_bug.cgi?id=95967

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

And these are the remaining test from the Opera's CSS
Device Adaptation test suite.

  • css3/device-adapt/opera/constrain-021-expected.txt: Added.
  • css3/device-adapt/opera/constrain-021.xhtml: Added.
  • css3/device-adapt/opera/constrain-022-expected.txt: Added.
  • css3/device-adapt/opera/constrain-022.xhtml: Added.
  • css3/device-adapt/opera/orientation-001-expected.txt: Added.
  • css3/device-adapt/opera/orientation-001.xhtml: Added.
  • css3/device-adapt/opera/orientation-002-expected.txt: Added.
  • css3/device-adapt/opera/orientation-002.xhtml: Added.
  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
8:32 AM Changeset in webkit [135729] by staikos@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Remove a lot of unnecessary and incorrect code causing crashes
https://bugs.webkit.org/show_bug.cgi?id=103199

Reviewed by Yong Li.

This is the first big step to unforking this code. It's very close to
where it needs to be now, but the first step is to get rid of the
crashes by deleting code that isn't needed and makes bad assumptions
about object lifetime. Crashes were found by automation without
test case or reproduction steps.

  • loader/blackberry/CookieJarBlackBerry.cpp:

(WebCore::cookies): delete most code
(WebCore::setCookies): delete most code

8:22 AM Changeset in webkit [135728] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk

Viewport CSS rules should not clamp values like Viewport META
https://bugs.webkit.org/show_bug.cgi?id=103068

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

CSS Device Adaption does not clamp the length and zoom values the
same way as the Viewport META. In fact, they are not clamped at all,
but instead, we just make sure that length values are at least 1px.

Tests: css3/device-adapt/opera/constrain-018.xhtml

css3/device-adapt/opera/constrain-019.xhtml
css3/device-adapt/opera/constrain-023.xhtml
css3/device-adapt/opera/constrain-024.xhtml

  • dom/ViewportArguments.cpp:

(WebCore::ViewportArguments::resolve):

LayoutTests:

Imported Opera tests that makes sure we are doing the clamping right.

  • css3/device-adapt/opera/constrain-018-expected.txt: Added.
  • css3/device-adapt/opera/constrain-018.xhtml: Added.
  • css3/device-adapt/opera/constrain-019-expected.txt: Added.
  • css3/device-adapt/opera/constrain-019.xhtml: Added.
  • css3/device-adapt/opera/constrain-023-expected.txt: Added.
  • css3/device-adapt/opera/constrain-023.xhtml: Added.
  • css3/device-adapt/opera/constrain-024-expected.txt: Added.
  • css3/device-adapt/opera/constrain-024.xhtml: Added.
8:12 AM Changeset in webkit [135727] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: added TestExpecations failures for
media/remove-from-document.html
https://bugs.webkit.org/show_bug.cgi?id=103093

  • platform/chromium/TestExpectations:
8:02 AM Changeset in webkit [135726] by junov@google.com
  • 4 edits
    2 adds in trunk/LayoutTests

New baselines for test fast/backgrounds/background-opaque-images-over-color.html
https://bugs.webkit.org/show_bug.cgi?id=102557

Unreviewed

  • fast/backgrounds/background-opaque-images-over-color-expected.txt:
  • platform/chromium-mac/fast/backgrounds/background-opaque-images-over-color-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/background-opaque-images-over-color-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/mac/TestExpectations:
7:51 AM Changeset in webkit [135725] by junov@google.com
  • 2 edits
    3 adds in trunk/LayoutTests

New baselines for test fast/backgrounds/gradient-background-leakage-2.html
https://bugs.webkit.org/show_bug.cgi?id=103089

Unreviewed

  • platform/chromium-linux/fast/backgrounds/gradient-background-leakage-2-expected.png: Added.
  • platform/chromium-mac/fast/backgrounds/gradient-background-leakage-2-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/gradient-background-leakage-2-expected.png: Added.
  • platform/chromium/TestExpectations:
7:47 AM Changeset in webkit [135724] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

Build fix for WinCE after r135640.

  • wtf/DataLog.cpp:
7:46 AM Changeset in webkit [135723] by mkwst@chromium.org
  • 3 edits
    3 adds in trunk

Web Inspector: URLs containing '' are improperly linked in console messages.
https://bugs.webkit.org/show_bug.cgi?id=103248

Reviewed by Yury Semikhatsky.

Source/WebCore:

This patch adds '' to WebInspector's regex of acceptable characters for
URLs that it knows how to display.

Test: http/tests/inspector/network/script-as-text-loading-with-caret.html

  • inspector/front-end/ResourceUtils.js:

(WebInspector.linkifyStringAsFragmentWithCustomLinkifier):

LayoutTests:

  • http/tests/inspector/network/script-as-text-loading-with-caret-expected.txt: Added.
  • http/tests/inspector/network/script-as-text-loading-with-caret.html: Added.
  • platform/chromium/http/tests/inspector/network/script-as-text-loading-with-caret-expected.txt:

JSC vs V8. :(

7:42 AM Changeset in webkit [135722] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewd Gardening: updated TestExpecations for additional failures in
media/video-preload.html
https://bugs.webkit.org/show_bug.cgi?id=103093

  • platform/chromium/TestExpectations:
7:23 AM Changeset in webkit [135721] by yurys@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix Qt minimal compilation after r135713.

  • inspector/InspectorController.h: hid file content behind ENABLE(INSPECTOR)
7:17 AM Changeset in webkit [135720] by pfeldman@chromium.org
  • 15 edits
    1 delete in trunk

Web Inspector: object preview does not render node id, className; logs too many functions for jQuery.
https://bugs.webkit.org/show_bug.cgi?id=103222

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • Added node class name and id into the preview
  • Now keeps track of properties separately from array indexes.
  • inspector/InjectedScriptSource.js:

(.):

  • inspector/InspectorOverlayPage.html:
  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):
(WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreview):

LayoutTests:

  • inspector/console/command-line-api-expected.txt:
  • inspector/console/command-line-api-inspect-expected.txt:
  • inspector/console/console-dir-expected.txt:
  • inspector/console/console-format-collections-expected.txt:
  • inspector/console/console-format-expected.txt:
  • inspector/elements/event-listener-sidebar-expected.txt:
  • inspector/elements/event-listeners-about-blank-expected.txt:
  • platform/chromium-linux/inspector/console/console-format-collections-expected.txt: Removed.
  • platform/chromium/inspector/console/command-line-api-inspect-expected.txt:
  • platform/chromium/inspector/console/console-dir-expected.txt:
  • platform/chromium/inspector/console/console-format-collections-expected.txt:
7:03 AM Changeset in webkit [135719] by fmalita@chromium.org
  • 3 edits
    2 adds in trunk

RenderSVGResourceContainer does not clear cached data on removal
https://bugs.webkit.org/show_bug.cgi?id=102620

Reviewed by Dirk Schulze.

Source/WebCore:

RenderSVGResourceContainer::removeClient needs to also remove the client from specialized
caches, otherwise we can end up with stale references.

Test: svg/custom/stale-resource-data-crash.svg

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::removeClient):

LayoutTests:

  • svg/custom/stale-resource-data-crash-expected.txt: Added.
  • svg/custom/stale-resource-data-crash.svg: Added.
7:01 AM Changeset in webkit [135718] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk/Source/WebKit/chromium

[chromium] Make use_default_render_theme compile the right set of files
https://bugs.webkit.org/show_bug.cgi?id=102952

Patch by Scott Violet <sky@chromium.org> on 2012-11-26
Reviewed by Kent Tamura.

  • WebKit.gyp: Adds WebRenderTheme.* and updates rules as to when to compile them.
  • features.gypi: Removes use_default_render_theme default values as common.gypi sets them.
  • public/default: Added.
  • public/default/WebRenderTheme.h: Copy of linux/WebRenderTheme.h
  • src/default: Added.
  • src/default/WebRenderTheme.cpp: Copy of linux/WebRenderTheme.cpp
6:47 AM Changeset in webkit [135717] by Csaba Osztrogonác
  • 3 edits in trunk/Source/JavaScriptCore

[Qt][ARM] REGRESSION(r130826): It made 33 JSC test and 466 layout tests crash
https://bugs.webkit.org/show_bug.cgi?id=98857

Patch by Gabor Ballabas <gaborb@inf.u-szeged.hu> on 2012-11-26
Reviewed by Zoltan Herczeg.

Implement a new version of patchableBranch32 to fix crashing JSC
tests.

  • assembler/MacroAssembler.h:

(MacroAssembler):

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::patchableBranch32):
(MacroAssemblerARM):

6:46 AM Changeset in webkit [135716] by pfeldman@chromium.org
  • 15 edits
    1 copy in trunk

Not reviewed: rolling out r135714 and r135712 for breaking debug tests.

Source/WebCore:

  • inspector/InjectedScriptSource.js:

(.):

  • inspector/InspectorOverlayPage.html:
  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):

LayoutTests:

  • inspector/console/command-line-api-expected.txt:
  • inspector/console/command-line-api-inspect-expected.txt:
  • inspector/console/console-dir-expected.txt:
  • inspector/console/console-format-collections-expected.txt:
  • inspector/console/console-format-expected.txt:
  • inspector/elements/event-listener-sidebar-expected.txt:
  • inspector/elements/event-listeners-about-blank-expected.txt:
  • platform/chromium-linux/inspector/console/console-format-collections-expected.txt: Copied from LayoutTests/platform/chromium/inspector/console/console-format-collections-expected.txt.
  • platform/chromium/inspector/console/command-line-api-inspect-expected.txt:
  • platform/chromium/inspector/console/console-dir-expected.txt:
  • platform/chromium/inspector/console/console-format-collections-expected.txt:
6:36 AM Changeset in webkit [135715] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebCore

[Qt][Win] buildfix after r135706.
https://bugs.webkit.org/show_bug.cgi?id=103249

The Windows implementation of GraphicsSurface cannot use
m_size anymore, as this member has been removed.
Further it needs to implement a platformSize() function.

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/surfaces/win/GraphicsSurfaceWin.cpp:

(WebCore::GraphicsSurfacePrivate::size):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
(WebCore::GraphicsSurface::platformSize):
(WebCore):

6:10 AM Changeset in webkit [135714] by pfeldman@chromium.org
  • 2 edits in trunk/LayoutTests

Not reviewed: rolling out accidental TestExpectations change.

  • platform/chromium/TestExpectations:
6:06 AM Changeset in webkit [135713] by yurys@chromium.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: unify agents handling in Page and Worker inspector controllers
https://bugs.webkit.org/show_bug.cgi?id=103238

Reviewed by Alexander Pavlov.

Introduced a class that represents a collection of inspector agents and allows
to call methods declared on InspectorAgentBaseInterface for all registered agents.
InspectorController and WorkerInspectorController switched to this class.

  • inspector/InspectorBaseAgent.cpp:

(WebCore::InspectorAgentRegistry::append):
(WebCore):
(WebCore::InspectorAgentRegistry::setFrontend):
(WebCore::InspectorAgentRegistry::clearFrontend):
(WebCore::InspectorAgentRegistry::restore):
(WebCore::InspectorAgentRegistry::registerInDispatcher):
(WebCore::InspectorAgentRegistry::discardAgents):

  • inspector/InspectorBaseAgent.h:

(InspectorAgentRegistry):
(WebCore):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::~InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::reconnectFrontend):

  • inspector/InspectorController.h:

(InspectorController):

6:01 AM Changeset in webkit [135712] by pfeldman@chromium.org
  • 16 edits
    1 delete in trunk

Web Inspector: object preview does not render node id, className; logs too many functions for jQuery.
https://bugs.webkit.org/show_bug.cgi?id=103222

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • Added node class name and id into the preview
  • Now keeps track of properties separately from array indexes.
  • inspector/InjectedScriptSource.js:

(.):

  • inspector/InspectorOverlayPage.html:
  • inspector/front-end/ConsoleMessage.js:

(WebInspector.ConsoleMessageImpl.prototype._appendObjectPreview):
(WebInspector.ConsoleMessageImpl.prototype._appendPropertyPreview):

LayoutTests:

  • inspector/console/command-line-api-expected.txt:
  • inspector/console/console-dir-expected.txt:
  • inspector/console/console-format-expected.txt:
  • inspector/elements/event-listener-sidebar-expected.txt:
  • inspector/elements/event-listeners-about-blank-expected.txt:
  • platform/chromium/inspector/console/console-dir-expected.txt:
5:55 AM Changeset in webkit [135711] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [WebGL] Save WebGL extensions and restore on replay
https://bugs.webkit.org/show_bug.cgi?id=103141

Patch by Andrey Adaikin <aandrey@chromium.org> on 2012-11-26
Reviewed by Yury Semikhatsky.

Save WebGL extensions that were enabled by the application, and restore it before the replay.
Drive-by: remove redundant if- checks in WebGL custom function wrappers (similar to 2D canvas).

  • inspector/InjectedScriptCanvasModuleSource.js:

(.):

5:54 AM Changeset in webkit [135710] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebCore

HitTestResult should not be a HitTestLocation
https://bugs.webkit.org/show_bug.cgi?id=101590

Reviewed by Sam Weinig.

Change HitTestResult from being a HitTestLocation to having a HitTestLocation.
A result of a test should not be a special case of the location of the test.

No change in functionality. No new tests.

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::HitTestResult):
(WebCore::HitTestResult::operator=):
(WebCore::HitTestResult::isSelected):
(WebCore::HitTestResult::spellingToolTip):
(WebCore::HitTestResult::replacedString):

  • rendering/HitTestResult.h:

(WebCore::HitTestResult::isRectBasedTest):
(WebCore::HitTestResult::pointInInnerNodeFrame):
(WebCore::HitTestResult::hitTestLocation):
(HitTestResult):

5:41 AM Changeset in webkit [135709] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Circular reference between Document and MediaQueryMatcher.
https://bugs.webkit.org/show_bug.cgi?id=103242

Patch by Marja Hölttä <marja@chromium.org> on 2012-11-26
Reviewed by Kenneth Rohde Christiansen.

It's not enough to clean up listeners in MediaQueryMatcher in ~Document,
since MediaQueryListListener keeps the Document alive. This caused
www.crbug.com/113983.

No new tests: No visible change in behavior (except that it doesn't leak memory).

  • dom/Document.cpp:

(WebCore::Document::~Document):
(WebCore::Document::detach):

5:37 AM Changeset in webkit [135708] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: HeapProfiler: remove snapshotView reference from data-grids.
https://bugs.webkit.org/show_bug.cgi?id=103240

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-11-26
Reviewed by Yury Semikhatsky.

Source/WebCore:

Cleanup: remove redundant dependency.

  • inspector/front-end/HeapSnapshotDataGrids.js: Do not store view ref.
  • inspector/front-end/HeapSnapshotGridNodes.js:

Removed unused assignments.

  • inspector/front-end/HeapSnapshotView.js:

Do not pass self to data-grids.

LayoutTests:

Directly access current view instead of getting if from the data grid.

  • inspector/profiler/heap-snapshot-test.js:

(initialize_HeapSnapshotTest):

4:40 AM Changeset in webkit [135707] by commit-queue@webkit.org
  • 4 edits in trunk/LayoutTests

[EFL] Gardening: update test expectations
https://bugs.webkit.org/show_bug.cgi?id=103119

Unreviewed gardening. timeline-timer-fired-from-eval-call-site-expected.html
is passing now, other changes are just marking tests as flaky based on
the flakiness dashboard.

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-11-26

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
4:32 AM Changeset in webkit [135706] by zeno.albisser@digia.com
  • 6 edits in trunk/Source/WebCore

GraphicsSurface should only store its size in a single place.
https://bugs.webkit.org/show_bug.cgi?id=103143

Reviewed by Kenneth Rohde Christiansen.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):

Cosmetics only.

  • platform/graphics/surfaces/GraphicsSurface.cpp:

(WebCore::GraphicsSurface::size):

Return the size as received from the platform abstraction.

(WebCore):
(WebCore::GraphicsSurface::GraphicsSurface):

  • platform/graphics/surfaces/GraphicsSurface.h:

(GraphicsSurface):

Remove data member m_size.

  • platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):

Always take the size of the GraphicsSurface as an argument.

(WebCore::GraphicsSurfacePrivate::size):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):

Retrieve the size from GraphicsSurfacePrivate where necessary.

(WebCore::GraphicsSurface::platformSize):
(WebCore):
(WebCore::GraphicsSurface::platformImport):

  • platform/graphics/surfaces/qt/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):

Add a constructor that takes a window id as an argument
for the receiving side of the GraphcisSurface.
The GraphicsSurface can then determine its dimensions
from the provided XWindow.

(WebCore::GraphicsSurfacePrivate::createPixmap):
(WebCore::GraphicsSurfacePrivate::size):

Query the size of the GraphicsSurface backing from X.

(WebCore::GraphicsSurface::platformPaintToTextureMapper):

Retrieve the size from GraphicsSurfacePrivate where necessary.

(WebCore::GraphicsSurface::platformSize):
(WebCore):
(WebCore::GraphicsSurface::platformImport):

4:10 AM Changeset in webkit [135705] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[GStreamer] Floating reference handling fix
https://bugs.webkit.org/show_bug.cgi?id=101349

Patch by Thiago Santos <thiago.sousa.santos@collabora.com> on 2012-11-26
Reviewed by Philippe Normand.

GStreamer 0.10 and 1.0 differ when creating GstGhostPad from pad
templates, the 1.0 doesn't take ownership on the passed
GstPadTemplate, while 0.10 does. So this patch adds a
GStreamerVersioning function to handle this different approach
transparently in Webkit gstreamer elements.

Existing media tests cover this change.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webkit_web_audio_src_init):

  • platform/graphics/gstreamer/GStreamerVersioning.cpp:

(webkitGstGhostPadFromStaticTemplate):

  • platform/graphics/gstreamer/GStreamerVersioning.h:
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webkit_web_src_init):

3:44 AM Changeset in webkit [135704] by keishi@webkit.org
  • 3 edits in trunk/LayoutTests

Layout Test platform/chromium/fast/forms/calendar-picker/week-picker-key-operations.html is failing
https://bugs.webkit.org/show_bug.cgi?id=103225

Unreviewed.

  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/calendar-picker/week-picker-key-operations.html: Remove current month check because it was flaky.
3:20 AM Changeset in webkit [135703] by haraken@chromium.org
  • 10 edits in trunk/Source/WebCore

[V8] Remove WorkerContextExecutionProxy
https://bugs.webkit.org/show_bug.cgi?id=103210

Reviewed by Adam Barth.

This patch moves all methods in WorkerContextExecutionProxy
to WorkerScriptController.

Due to the dependency between WorkerContextExecutionProxy's methods,
it is a bit difficult to split this patch into pieces.
This patch simply moves methods without changing their logic.
Also this patch doesn't remove empty WorkerContextExecutionProxy.{h,cpp}
to keep the diff sane. I will address these issues in a follow-up patch.

Tests: fast/worker/*

  • bindings/v8/ScriptState.cpp:

(WebCore::scriptStateFromWorkerContext):

  • bindings/v8/V8Binding.cpp:

(WebCore::toV8Context):

  • bindings/v8/V8WorkerContextEventListener.cpp:

(WebCore::V8WorkerContextEventListener::handleEvent):

  • bindings/v8/WorkerContextExecutionProxy.cpp:
  • bindings/v8/WorkerContextExecutionProxy.h:
  • bindings/v8/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::WorkerScriptController):
(WebCore::WorkerScriptController::~WorkerScriptController):
(WebCore::WorkerScriptController::dispose):
(WebCore):
(WebCore::WorkerScriptController::initializeIfNeeded):
(WebCore::WorkerScriptController::evaluate):
(WebCore::WorkerScriptController::setEvalAllowed):
(WebCore::WorkerScriptController::disableEval):

  • bindings/v8/WorkerScriptController.h:

(WebCore):
(WebCore::WorkerContextExecutionState::WorkerContextExecutionState):
(WorkerContextExecutionState):
(WorkerScriptController):
(WebCore::WorkerScriptController::context):

  • bindings/v8/WorkerScriptDebugServer.cpp:

(WebCore::WorkerScriptDebugServer::addListener):

  • bindings/v8/custom/V8WorkerContextCustom.cpp:

(WebCore::SetTimeoutOrInterval):
(WebCore::toV8):

3:16 AM Changeset in webkit [135702] by commit-queue@webkit.org
  • 7 edits in trunk

Text Autosizing: Add Text Autosizing APIs for WK2
https://bugs.webkit.org/show_bug.cgi?id=100633

Patch by Jaehun Lim <ljaehun.lim@samsung.com> on 2012-11-26
Reviewed by Sam Weinig.

Source/WebKit2:

Implement basic Text Autosizing APIs for WK2.
Text Autosizing is a useful feature for mobile browsers. It adjusts the font size
of text in wide columns, and makes text more legible.
This patch adds setting APIs for Text Autosizing in WK2.

  • Shared/WebPreferencesStore.h:

(WebKit):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetTextAutosizingEnabled):
(WKPreferencesGetTextAutosizingEnabled):

  • UIProcess/API/C/WKPreferences.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

Tools:

Add test cases for Text Autosizing in WKPreferences.

  • TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:

(TestWebKitAPI::TEST):

3:06 AM Changeset in webkit [135701] by Simon Hausmann
  • 8 edits in trunk

[Qt] REGRESSION(r135575): It made all tests assert
https://bugs.webkit.org/show_bug.cgi?id=103169

Patch by Pierre Rossi <pierre.rossi@gmail.com> on 2012-11-26
Reviewed by Simon Hausmann.

This fixes another regression introduced in r135515:
initializeWebKitQt shouldn't implicitely call initializeWebCoreQt
since it can be called from WebKit2 to initialize QStyle for testing.
This would then lead to things such as PlatformStrategies being
initialized twice.

Source/WebKit/qt:

  • Api/qwebpage.cpp: Explicitely call initializeWebCoreQt().

(QWebPagePrivate::QWebPagePrivate):

  • WebCoreSupport/InitWebCoreQt.cpp:

(WebKit::initializeWebKitQt):
(WebCore::initializeWebCoreQt):

  • WebCoreSupport/InitWebCoreQt.h:

(WebCore):

Source/WebKit2:

  • qt/MainQt.cpp: No need to initialize anything if we're not using QStyle.

(WebKit):
(main):

Tools:

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: Also propagate the change to DRT this time.

(WebCore::DumpRenderTree::DumpRenderTree):

3:00 AM Changeset in webkit [135700] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Make sure the QGLWidget context is current when creating the TextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=103142

When creating the TextureMapperGL for WK1 we have to make sure
that the GL context provided by the QGLWidget is current.
Otherwise the GraphicsContext3DQt created by TextureMapperGL will pick up
the wrong pointer by calling QOpenGLContext::currentContext().

Reviewed by Simon Hausmann.

  • WebCoreSupport/PageClientQt.cpp:

(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

2:53 AM Changeset in webkit [135699] by Jonathan Dong
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Should not autofill username and password when there're more than one password inputs on the same page
https://bugs.webkit.org/show_bug.cgi?id=103104

Reviewed by Rob Buis.

RIM PR: 245334
Added the oldPassword detection back into the password input
detection logic, which was removed for simplicity when imported
those pieces of codes from Chromium. And we won't do autofill
when there're more than one password field detected.

Internally reviewed by Rob Buis.

  • WebCoreSupport/CredentialTransformData.cpp:

(WebCore::CredentialTransformData::CredentialTransformData):
(WebCore::CredentialTransformData::findPasswordFormFields):

  • WebCoreSupport/CredentialTransformData.h:

(CredentialTransformData):

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendSubmitEvent):

2:46 AM Changeset in webkit [135698] by kkristof@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Gardening after r135629. Skipped a newly added but failing test.
https://bugs.webkit.org/show_bug.cgi?id=103227

Patch by János Badics <János Badics> on 2012-11-26
Reviewed by Csaba Osztrogonác.

  • platform/qt/TestExpectations:
2:41 AM Changeset in webkit [135697] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION(134142): ASSERT(!m_size.isZero()) hits in CoordinatedBackingStore::paintToTextureMapper().
https://bugs.webkit.org/show_bug.cgi?id=103217

Patch by Huang Dongsung <luxtella@company100.net> on 2012-11-26
Reviewed by Noam Rosenthal.

It is possible for CoordinatedBackingStore of directed composited image to not
have tiles, because CoordinatedImageBacking does not create tiles when the image
is invisible.

  • UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:

(WebKit::CoordinatedBackingStore::paintToTextureMapper):

2:35 AM Changeset in webkit [135696] by michael.bruning@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] QStyleFacadeImp build break with latest Qt 5
https://bugs.webkit.org/show_bug.cgi?id=103198

Reviewed by Simon Hausmann.

Original patch by J-P Nurmi <jpnurmi@digia.com>.

Fixes QtWebKit build by replacing qobject_cast to
QMacStyle with calls to QObject::inherits. Also
replaces Q_WS_MAC preprocesser directives with Q_OS_MAC
for Qt 5 compatibility.

  • WebCoreSupport/QStyleFacadeImp.cpp:

(WebKit::QStyleFacadeImp::getButtonMetrics):
(WebKit::QStyleFacadeImp::paintComboBox):
(WebKit::QStyleFacadeImp::paintInnerSpinButton):
(WebKit::QStyleFacadeImp::paintScrollBar):

2:21 AM Changeset in webkit [135695] by morrita@google.com
  • 3 edits in trunk/Source/WebCore

[Refactoring] Some Node::isDescendant calls can be replaced with Node::contains()
https://bugs.webkit.org/show_bug.cgi?id=103211

Reviewed by Daniel Bates.

A couple of call sites of isDescendant() does same as Node::contains().
This change replaces these locations with Node::contains().

No new tests, no behavior change.

  • dom/Node.cpp:

(WebCore::checkAcceptChild):

  • dom/Range.cpp:

(WebCore::Range::surroundContents):

2:11 AM Changeset in webkit [135694] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Enable input type datetime-local
https://bugs.webkit.org/show_bug.cgi?id=103213

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-26
Reviewed by Kent Tamura.

This patch enables <input type=datetime-local> for Chromium.

No new tests. Covered by existing tests.

  • bindings/generic/RuntimeEnabledFeatures.cpp:

(WebCore): Changed RuntimeEnabledFeatures::isInputTypeDateTimeLocalEnabled to true
if INPUT_TYPE_DATETIMELOCAL is enabled.

1:38 AM Changeset in webkit [135693] by morrita@google.com
  • 6 edits
    2 adds in trunk

[Shadow DOM] Implement Element::createShadowRoot()
https://bugs.webkit.org/show_bug.cgi?id=102911

Reviewed by Kentaro Hara.

Source/WebCore:

Added an API implementation and exposed it.

This is basically an alias of the ShadowRoot constructor, which
will be removed as bug 102913.

Test: fast/dom/shadow/shadow-aware-create-shdow-root.html

  • bindings/gobject/GNUmakefile.am:
  • dom/Element.cpp:

(WebCore::Element::createShadowRoot):
(WebCore):

  • dom/Element.h:

(Element):

  • dom/Element.idl:

LayoutTests:

The coverage might not seem comprehensive at a glance. However,
this is just an alias of ShadowRoot constructor and there are
bunch of test cases which cover it.

As bug 102913 will convert such callsites to use createShadowRoot(),
the API will get be covered well then.

  • fast/dom/shadow/shadow-aware-create-shdow-root-expected.txt: Added.
  • fast/dom/shadow/shadow-aware-create-shdow-root.html: Added. Further ShadowAware API will come here.
1:27 AM Changeset in webkit [135692] by apavlov@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] Unreviewed, mark platform/chromium/fast/forms/calendar-picker/week-picker-key-operations.html as flaky (date-dependent).

  • platform/chromium/TestExpectations:
1:18 AM Changeset in webkit [135691] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding timeout expectation for the new a11y test added in r135680.

  • platform/gtk/TestExpectations:
1:14 AM BuildingQtOnWindows edited by Simon Hausmann
(diff)
1:11 AM Changeset in webkit [135690] by jonlee@apple.com
  • 18 edits
    1 add in trunk/Source/WebCore

Extend EventDispatcher::dispatchSimulatedClick to allow sending a mouseover event
https://bugs.webkit.org/show_bug.cgi?id=102610
<rdar://problem/12725663>

Reviewed by Darin Adler.

Update the dispatchSimulatedClick() to take option enums for dispatching events.

  • dom/SimulatedClickOptions.h: Added. Define two options enums. One tracks which mouse

events to send. The other determines whether to force the element to repaint.

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchSimulatedClick): Refactor to use the option enums.

  • dom/EventDispatcher.h:

(EventDispatcher): Update function signature.

  • dom/Node.cpp: Refactor parameters to use the options enums rather than booleans.

(WebCore::Node::dispatchSimulatedClick):

  • dom/Node.h:

Refactor. Remove redundant comments.

  • html/BaseCheckableInputType.cpp:

(WebCore::BaseCheckableInputType::accessKeyAction):

  • html/BaseClickableWithKeyInputType.cpp:

(WebCore::BaseClickableWithKeyInputType::accessKeyAction):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::accessKeyAction):

  • html/HTMLButtonElement.cpp:

(WebCore::HTMLButtonElement::accessKeyAction):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::click):
(WebCore::HTMLElement::accessKeyAction):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::accessKeyAction):

  • html/RadioInputType.cpp:

(WebCore::RadioInputType::handleKeydownEvent):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::accessKeyAction):

Add SimulatedClickOptions.h.

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
1:07 AM Changeset in webkit [135689] by shinyak@chromium.org
  • 3 edits in trunk/Source/WebCore

[Shadow] Attaching children of a shadow host takes O(N2) where N is the number of host children
https://bugs.webkit.org/show_bug.cgi?id=103017

Reviewed by Hajime Morita.

Since ContentDistribution was just a Vector, ContentDistribution::find() took O(N). Each child of shadow host calls it.
As a result, attaching children of shadow host takes O(N2) at all.

In this patch, we make ContentDistribution::find() O(1) amortizedly. We introduce HashMap from a Node to Vector index,
and use it for ContentDistribution::find().

No new tests, covered by existing tests.

  • html/shadow/ContentDistributor.cpp:

(WebCore::ContentDistribution::swap):
(WebCore):
(WebCore::ContentDistribution::append):
(WebCore::ContentDistribution::find):
(WebCore::ContentDistributor::distributeSelectionsTo):

  • html/shadow/ContentDistributor.h:

(ContentDistribution): ContentDistribution now contains Vector and a reverse map.
(WebCore::ContentDistribution::first):
(WebCore::ContentDistribution::last):
(WebCore::ContentDistribution::at):
(WebCore::ContentDistribution::size):
(WebCore::ContentDistribution::isEmpty):
(WebCore::ContentDistribution::clear):
(WebCore::ContentDistribution::contains):
(WebCore::ContentDistribution::nodes):

12:31 AM Changeset in webkit [135688] by commit-queue@webkit.org
  • 4 edits in trunk

[CMake] Allow user specified compiler flags to take precedence
https://bugs.webkit.org/show_bug.cgi?id=103101

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2012-11-26
Reviewed by Brent Fulgham.

Make sure that compiler and linker flags specified by the build system
are always prepended to the variables that can be specified by the
environment and the user as well.

  • Source/cmake/OptionsCommon.cmake:
  • Source/cmake/OptionsWindows.cmake:
  • Source/cmake/WebKitHelpers.cmake:
12:10 AM Changeset in webkit [135687] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[V8] Give isolated shells a lifecycle like that of main shells
https://bugs.webkit.org/show_bug.cgi?id=96522

Patch by Dan Carney <dcarney@google.com> on 2012-11-26
Reviewed by Adam Barth.

Refactored the isolated shells in ScriptController
to be cleaned up the same way the main shell is.

No new tests. No change in functionality.

  • bindings/v8/ScriptController.cpp:

(WebCore::ScriptController::~ScriptController):
(WebCore::ScriptController::clearForOutOfMemory):
(WebCore::ScriptController::clearForClose):
(WebCore::ScriptController::clearWindowShell):

  • bindings/v8/ScriptController.h:

(ScriptController):

  • bindings/v8/V8DOMWindowShell.cpp:

(WebCore::V8DOMWindowShell::destroyIsolatedShell):
(WebCore::V8DOMWindowShell::clearForClose):

  • bindings/v8/V8DOMWindowShell.h:

(V8DOMWindowShell):

Nov 25, 2012:

11:54 PM Changeset in webkit [135686] by ryuan.choi@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.
Unskip the fixed regressions from r135662

  • platform/efl-wk1/TestExpectations:
11:50 PM Changeset in webkit [135685] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r135656.
http://trac.webkit.org/changeset/135656
https://bugs.webkit.org/show_bug.cgi?id=103218

Made a few SVG tests crash on all platforms (Requested by
apavlov on #webkit).

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

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForFamily):

  • css/CSSValuePool.cpp:

(WebCore::CSSValuePool::createFontFamilyValue):

11:45 PM Changeset in webkit [135684] by tasak@google.com
  • 3 edits
    2 adds in trunk

WebCore::RenderBlock::determineStartPosition crash
https://bugs.webkit.org/show_bug.cgi?id=98993

Reviewed by Brent Fulgham.

Source/WebCore:

If we move some node and the node has some text,
InlineFlowBox::removeChild() is invoked. The method invokes
RootInlineBox::childRemoved(). childRemoved() checks whether the
removed inlinebox has the renderer of its parent's line break object.
If so, use setLineBreakInfo to make the parent's line break info to
be 0. However in RenderBlock::determineStartPosition(), the code
assume that all line break info is solved, i.e.
prevRootBox->lineBreakObj()->isText(). Since lineBreakObj() returns 0
because of removeChild(), determineStartPosition crash occurs.

Test: fast/inline/inline-box-append-child-crash.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::determineStartPosition):
Checks whether lineBreakObj() is 0 or not before using lineBreakObj().

LayoutTests:

  • fast/inline/inline-box-append-child-crash-expected.txt: Added.
  • fast/inline/inline-box-append-child-crash.html: Added.
10:35 PM Changeset in webkit [135683] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: use native Element.prototype.normalize instead of custom defined Element.prototype.pruneEmptyTextNodes
https://bugs.webkit.org/show_bug.cgi?id=103205

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-11-25
Reviewed by Pavel Feldman.

  • inspector/front-end/DOMExtension.js:
  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.clearAutoComplete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.applySuggestion):

10:33 PM Changeset in webkit [135682] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: remove unused DOM methods
https://bugs.webkit.org/show_bug.cgi?id=103204

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-11-25
Reviewed by Pavel Feldman.

  • inspector/front-end/DOMExtension.js:
10:15 PM Changeset in webkit [135681] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Remove unused Array.convert method
https://bugs.webkit.org/show_bug.cgi?id=103202

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-11-25
Reviewed by Daniel Bates.

  • inspector/front-end/utilities.js:
10:07 PM Changeset in webkit [135680] by Chris Fleizach
  • 3 edits
    2 adds in trunk

AX: file upload input cannot be activated with VoiceOver
https://bugs.webkit.org/show_bug.cgi?id=100343

Reviewed by Sam Weinig.

Source/WebCore:

Simulated events were not allowed to be processed in the file input type in the DOMActivate handler.
This was a problem for accessibility clients which rely on simulated events.

The solution is to mark the UserGestureIndicator as definitely processing an event.

Test: accessibility/file-upload-button-with-axpress.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::press):

LayoutTests:

  • accessibility/file-upload-button-with-axpress-expected.txt: Added.
  • accessibility/file-upload-button-with-axpress.html: Added.
9:58 PM Changeset in webkit [135679] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: dispatch an event upon heap snapshot filter change
https://bugs.webkit.org/show_bug.cgi?id=103201

Patch by Nikita Vasilyev <me@elv1s.ru> on 2012-11-25
Reviewed by Pavel Feldman.

Dispatch heapSnapshotFilterChanged event so it can be received by third parties.

  • inspector/front-end/HeapSnapshotView.js:

(WebInspector.HeapSnapshotView.prototype._changeFilter):

  • inspector/front-end/UserMetrics.js:
9:12 PM Changeset in webkit [135678] by Kaustubh Atrawalkar
  • 3 edits in trunk/Source/WebKit/gtk

Remove deprecated load-done signal
https://bugs.webkit.org/show_bug.cgi?id=72712

Reviewed by Brent Fulgham.

Remove deprecated load-done signal and migrate to load-status.

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit):
(WebKit::FrameLoaderClient::dispatchDidFinishLoad):

  • webkit/webkitwebframe.cpp:

(webkit_web_frame_class_init):

5:54 PM Changeset in webkit [135677] by tkent@chromium.org
  • 19 edits in trunk/LayoutTests

2012-11-25 Kent Tamura <tkent@chromium.org>

[Chromium] Fix svn:mime-type for images

  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added property svn:mime-type.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added property svn:mime-type.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added property svn:mime-type.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added property svn:mime-type.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added property svn:mime-type.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-backward-br-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-lr-ltr-extend-line-forward-br-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-br-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-backward-p-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-br-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/editing/selection/vertical-rl-ltr-extend-line-forward-p-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/drawBidiText-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/international/001-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/international/002-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/international/bidi-mirror-he-ar-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/international/wrap-CJK-001-expected.png: Modified property svn:mime-type.
  • platform/chromium-win-xp/fast/text/justify-ideograph-leading-expansion-expected.png: Modified property svn:mime-type.
5:00 PM Changeset in webkit [135676] by commit-queue@webkit.org
  • 2 edits
    40 adds in trunk/LayoutTests

[Chromium] Add tests for datetime/datetime-local suggestion picker
https://bugs.webkit.org/show_bug.cgi?id=102888

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-11-25
Reviewed by Kent Tamura.

Adding tests for <input type=datetime> and <input type=datetime-local> with datalist.

  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.png: Added.
  • platform/chromium-mac/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.png: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium-win/platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-rtl.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance-with-scroll-bar.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-appearance.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-key-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-min-max-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-min-max-attribute.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-mouse-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-mouse-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-reset-value-after-reload-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-reset-value-after-reload.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-step-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetime-suggestion-picker-step-attribute.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-rtl.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance-with-scroll-bar.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-appearance.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-key-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-key-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-min-max-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-min-max-attribute.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-mouse-operations-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-mouse-operations.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-reset-value-after-reload-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-reset-value-after-reload.html: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-step-attribute-expected.txt: Added.
  • platform/chromium/fast/forms/suggestion-picker/datetimelocal-suggestion-picker-step-attribute.html: Added.
4:38 PM Changeset in webkit [135675] by tkent@chromium.org
  • 9 edits in trunk/Source/WebCore

Refactoring: Move the content of HTMLInputElement::subtreeHasChanged to TextFieldInputType
https://bugs.webkit.org/show_bug.cgi?id=103195

Reviewed by Kentaro Hara.

HTMLInputElement::subtreeHasChanged is called only if the input is
a text field. The code should be moved to TextFieldInputType.

No new tests. This should not change any behavior.

  • html/HTMLInputElement.cpp:
  • Remove unnecessary NumberInputType.h inclusion.
  • Remove convertFromVisibleValue. It was used only by subtreeHasChanged.

(WebCore::HTMLInputElement::subtreeHasChanged):
Move the code to TextFieldInputType::subtreeHasChanged except
calculateAndAdjustDirectionality, which is a protected member of
HTMLElement.

  • html/HTMLInputElement.h:

(HTMLInputElement): Remove convertFromVisibleValue.

  • html/InputType.cpp:

Move convertFromVisibleValue to TextFieldInputType.
(WebCore::InputType::subtreeHasChanged):
Add ASSERT_NOT_REACHED.

  • html/InputType.h:

(InputType): Remove convertFromVisibleValue.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::convertFromVisibleValue):
Moved from InputType.
(WebCore::TextFieldInputType::subtreeHasChanged):
Moved from HTMLInputElement. A latter part is moved to
didSetValueByUserEdit to be hooked by SearchInputType.
(WebCore::TextFieldInputType::didSetValueByUserEdit):
Moved from HTMLInputElement::subtreeHasChanged, and clean up the code.

  • html/TextFieldInputType.h:

(TextFieldInputType):

  • Move convertFromVisibleValue from InputType.
  • Add didSetValueByUserEdit and subtreeHasChanged.
  • html/SearchInputType.cpp:

(WebCore::SearchInputType::didSetValueByUserEdit):
Renamed from subtreeHasChanged, and calls TextFieldInputType::didSetValueByUserEdit.

  • html/SearchInputType.h:

(SearchInputType): Rename subtreeHasChanged to didSetValueByUserEdit.

4:21 PM Changeset in webkit [135674] by haraken@chromium.org
  • 5 edits in trunk/Source/WebCore

[V8] Move WorkerExecutionContextProxy::initializeIfNeeded() to V8Initializer
https://bugs.webkit.org/show_bug.cgi?id=103061

Reviewed by Adam Barth.

This is an incremental step to remove WorkerExecutionContextProxy.
This patch moves WorkerExecutionContextProxy::initializeIfNeeded() to V8Initializer.
This patch also renames methods so that the names become consistent
between the main thread and workers.

No tests. No change in behavior.

  • bindings/v8/V8Initializer.cpp:

(WebCore::reportFatalErrorInMainThread):
(WebCore::messageHandlerInMainThread):
(WebCore::failedAccessCheckCallbackInMainThread):
(WebCore::V8Initializer::initializeMainThreadIfNeeded):
(WebCore::reportFatalErrorInWorker):
(WebCore):
(WebCore::messageHandlerInWorker):
(WebCore::V8Initializer::initializeWorkerIfNeeded):

  • bindings/v8/V8Initializer.h:

(V8Initializer):

  • bindings/v8/WorkerContextExecutionProxy.cpp:

(WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy):

  • bindings/v8/WorkerContextExecutionProxy.h:

(WorkerContextExecutionProxy):

11:19 AM Changeset in webkit [135673] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Refactor RenderThemeEfl::ThemePartCacheEntry::reuse()
https://bugs.webkit.org/show_bug.cgi?id=103189

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-25
Reviewed by Kenneth Rohde Christiansen.

Check if the entry size and type changed in
RenderThemeEfl::ThemePartCacheEntry::reuse() to avoid
useless processing if one of them did not change.

Remove useless call to cairo_surface_finish() since
we are using a smart pointer for the surface.

Resize the edge object *after* loading its content
from the theme file as it seems more logical this
way.

No new tests, no behavior change for layout tests.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::ThemePartCacheEntry::reuse):

  • platform/efl/RenderThemeEfl.h:

(ThemePartCacheEntry):

11:06 AM Changeset in webkit [135672] by zhajiang@rim.com
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Get rid of resetBitmapZoomScale()
https://bugs.webkit.org/show_bug.cgi?id=103200

Patch by Jacky Jiang <zhajiang@rim.com>.
Reviewed by Rob Buis.
Internally reviewed by Gen Mak.

PR: 235707
Right now, resetBitmapZoomScale() takes an unused paramter and
dispatches a message to end the bitmap zooming. However, the
interaction has its own state machine to start bitmap zooming when it
is active and end bitmap zooming when it is inactive. This is
expecially for pinch zoom and scroll. From WebKit side, block zoom
which will call zoomBlock when the bitmap zoom finished doesn't even
need to dispatch the useless ending message to ZoomHandler.
resetBitmapZoomScale() is basically a noop for block zoom. And likewise
that is useless for zoomToInitialScaleOnLoad(). It can also potentially
cause problem if it is used somewhere else in the future and
incidentally breaks the interaction's own state machine. So just remove
this completely.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::zoomToInitialScaleOnLoad):
(BlackBerry::WebKit::WebPagePrivate::zoomBlock):

  • Api/WebPageClient.h:
10:51 AM Changeset in webkit [135671] by rniwa@webkit.org
  • 34 edits
    2 moves in trunk/Source/WebCore

Rename DynamicNodeList to LiveNodeList
https://bugs.webkit.org/show_bug.cgi?id=103197

Reviewed by Ojan Vafai.

Rename DynamicNodeList to LiveNodeList to match the terminology used in DOM4 working draft:
http://www.w3.org/TR/2012/WD-dom-20120405/#concept-collection-live
"A collection (either NodeList or HTMLCollection) can be either live or static".

Also rename DynamicNodeListCacheBase to LiveNodeListBase, and merge DynamicSubtreeNodeList
into LiveNodeList (old DynamicNodeList) now that the only difference between those two classes
is the former calling registerNodeListCache and unregisterNodeListCache on Document.

This patch completes the series of simplification of NodeList/HTMLCollection classes.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSHTMLOptionsCollectionCustom.cpp:

(WebCore::getNamedItems):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::opaqueRootForGC):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::nodeMatches):

  • dom/ChildNodeList.h:
  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):

  • dom/ClassNodeList.h:
  • dom/DOMAllInOne.cpp:
  • dom/Document.cpp:

(WebCore::Document::registerNodeListCache):
(WebCore::Document::unregisterNodeListCache):
(WebCore):

  • dom/Document.h:

(WebCore):
(Document):

  • dom/DynamicNodeList.cpp: Removed.
  • dom/DynamicNodeList.h: Removed.
  • dom/LiveNodeList.cpp: Copied from Source/WebCore/dom/DynamicNodeList.cpp.

(WebCore::LiveNodeListBase::rootNode):
(WebCore::LiveNodeListBase::invalidateCache):
(WebCore::LiveNodeListBase::invalidateIdNameCacheMaps):
(WebCore::LiveNodeListBase::reportMemoryUsage):
(WebCore::LiveNodeList::namedItem):

  • dom/LiveNodeList.h: Copied from Source/WebCore/dom/DynamicNodeList.h.

(WebCore::LiveNodeListBase::LiveNodeListBase):
(WebCore::LiveNodeListBase::shouldInvalidateTypeOnAttributeChange):
(WebCore::LiveNodeList::LiveNodeList):
(WebCore::LiveNodeList::~LiveNodeList):
(LiveNodeList):

  • dom/MicroDataItemList.cpp:

(WebCore::MicroDataItemList::MicroDataItemList):

  • dom/MicroDataItemList.h:
  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):

  • dom/NameNodeList.h:
  • dom/Node.cpp:

(WebCore::shouldInvalidateNodeListCachesForAttr):
(WebCore::Document::invalidateNodeListCaches):

  • dom/Node.h:

(WebCore):

  • dom/NodeList.h:

(WebCore::NodeList::isLiveNodeList):

  • dom/NodeRareData.h:

(NodeListsNodeData):
(WebCore::NodeListsNodeData::removeCacheWithAtomicName):
(WebCore::NodeListsNodeData::removeCacheWithName):
(WebCore::NodeListsNodeData::removeCacheWithQualifiedName):
(WebCore::NodeListsNodeData::adoptTreeScope):

  • dom/PropertyNodeList.cpp:

(WebCore::PropertyNodeList::PropertyNodeList):

  • dom/PropertyNodeList.h:
  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):

  • dom/TagNodeList.h:
  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::HTMLCollection):
(WebCore::LiveNodeListBase::iterateForNextNode):
(WebCore::LiveNodeListBase::itemBeforeOrAfter):
(WebCore::LiveNodeListBase::itemBefore):
(WebCore::LiveNodeListBase::itemAfter):
(WebCore::LiveNodeListBase::isLastItemCloserThanLastOrCachedItem):
(WebCore::LiveNodeListBase::isFirstItemCloserThanCachedItem):
(WebCore::LiveNodeListBase::setItemCache):
(WebCore::LiveNodeListBase::length):
(WebCore::LiveNodeListBase::item):
(WebCore::LiveNodeListBase::itemBeforeOrAfterCachedItem):

  • html/HTMLCollection.h:
  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:
  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):

  • html/RadioNodeList.h:
10:35 AM Changeset in webkit [135670] by robert@webkit.org
  • 4 edits
    2 adds in trunk

Changing position:relative to position:static results in mis-positioned div
https://bugs.webkit.org/show_bug.cgi?id=26397

Reviewed by Ojan Vafai.

Source/WebCore:

When a block changes position from relative to static it is no longer the containing block for any
positioned objects it may have. If any of those positioned objects actually have a position specified
they are going to need a layout as their new containing block will likely have a different location they
need to offset from. Positioned objects without a specified position always get a layout anyway
in layoutPositionedObjects() so no need to worry about them in this situation.

Test: fast/block/abspos-child-container-changes-from-relative-to-static-expected.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::removePositionedObjects):

  • rendering/RenderBlock.h:

(RenderBlock):

LayoutTests:

  • fast/block/abspos-child-container-changes-from-relative-to-static-expected.html: Added
  • fast/block/abspos-child-container-changes-from-relative-to-static.html: Added
10:30 AM Changeset in webkit [135669] by commit-queue@webkit.org
  • 4 edits
    4 adds in trunk

[WK2] TiledBackingStore: page contents is scaled wrongly
https://bugs.webkit.org/show_bug.cgi?id=103090

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-25
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Before this change the page contents scaling in PageViewportController was
defined all the times by m_rawAttributes.initialScale. If initial scale had not
been specified in the viewport meta tag it was set to m_minimumScaleToFit inside
PageViewportController::didChangeViewportAttributes().

The problem was that m_minimumScaleToFit could have wrong value as contents size
might have not be updated by the time PageViewportController::didChangeViewportAttributes()
was invoked.

The solution is to use m_minimumScaleToFit for contents scaling if initial scale
is not specified in the viewport meta tag, as it is updated all the time.
Also a flag m_initiallyFitToViewport is added to PageViewportController to detect
whether m_minimumScaleToFit should be used for scaling.

  • UIProcess/PageViewportController.cpp:

(WebKit::PageViewportController::PageViewportController):
(WebKit::PageViewportController::didChangeContentsSize):
(WebKit::PageViewportController::pageTransitionViewportReady):
(WebKit::PageViewportController::didChangeViewportAttributes):

  • UIProcess/PageViewportController.h:

(PageViewportController):

LayoutTests:

Added new layout test to verify that viewport 'width' descriptor does not
affect contents width of next loaded page.

  • css3/device-adapt/resources/check-contents-width.html: Added.
  • css3/device-adapt/viewport-width-not-affecting-next-page-expected.txt: Added.
  • css3/device-adapt/viewport-width-not-affecting-next-page.html: Added.
8:53 AM Changeset in webkit [135668] by Antti Koivisto
  • 13 edits in trunk/Source/WebCore

Make renderer construction less generic
https://bugs.webkit.org/show_bug.cgi?id=103175

Reviewed by Ojan Vafai.

The renderer construction code currently operates on Nodes and is very generic. In reality
only Element and Text nodes can have renderers and the Text case is much simpler.

This patch separates the Text and Element renderer construction paths and makes it statically
known that other Node types can't have renderers. Less generic code is less branchy and enables
further optimizations.

  • dom/CharacterData.cpp:

(WebCore::CharacterData::parserAppendData):
(WebCore::CharacterData::setDataAndUpdate):
(WebCore):
(WebCore::CharacterData::rendererIsNeeded):
(WebCore::CharacterData::createRenderer):

Only Text subclass of CharacterData can have renderers.

  • dom/CharacterData.h:

(CharacterData):

  • dom/ContainerNode.h:

(WebCore::ContainerNode::childShouldCreateRenderer):

Move childShouldCreateRenderer from Node to ContainerNode.

(ContainerNode):

  • dom/Element.cpp:

(WebCore::Element::rendererIsNeeded):
(WebCore):
(WebCore::Element::attach):
(WebCore::Element::childShouldCreateRenderer):

  • dom/Element.h:


Move rendererIsNeeded and createRenderer from Node to Element.

(Element):

  • dom/Node.cpp:

(WebCore::Node::attach):
(WebCore):

  • dom/Node.h:

(Node):

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
(WebCore::NodeRenderingContext::createRendererForTextIfNeeded):

Separate the Element and Text renderer creation paths. Both are less branchy.
The Text path is much simpler and avoids a bunch of virtual calls.

(WebCore):

  • dom/NodeRenderingContext.h:

(NodeRenderingContext):

  • dom/Text.cpp:

(WebCore::Text::textRendererIsNeeded):
(WebCore::Text::createTextRendererIfNeeded):
(WebCore):
(WebCore::Text::createTextRenderer):
(WebCore::Text::attach):
(WebCore::Text::updateTextRenderer):

  • dom/Text.h:


Add non-virtual Text specific functions.

(WebCore):
(Text):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::clone):

12:01 AM Changeset in webkit [135667] by rniwa@webkit.org
  • 15 edits in trunk/Source/WebCore

REGRESSION(r135493): HTMLCollection and DynamicNodeList have two vtable pointers
https://bugs.webkit.org/show_bug.cgi?id=103096

Reviewed by Sam Weinig.

Co-authored by Ilya Tikhonovsky.

Made DynamicNodeListCacheBase inherit from NodeList. While HTMLCollection doesn't inherit
from NodeList in IDL, it makes a lot of sense for the C++ implementation to do so via
DynamicNodeListCacheBase since HTMLCollection and live NodeList share a lot of code in
DynamicNodeListCacheBase.

This lets remove proxies for item() and length() in DynamicNodeList and HTMLCollection
and directly implement them in DynamicNodeListCacheBase which used to provide itemCommon()
and lengthCommon().

Also renamed NodeList::itemWithName() to NodeList::namedItem() to match HTMLCollection's
naming convention.

Finally, removed reportMemoryUsage in DynamicNodeList::reportMemoryUsage since DynamicNodeList
now uses single inheritance.

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeList::canGetItemsForName): Calls namedItem, which has been renamed from
itemWithName.
(WebCore::JSNodeList::nameGetter): Ditto.

  • bindings/v8/custom/V8NodeListCustom.cpp:

(WebCore::V8NodeList::namedPropertyGetter): Ditto.

  • bindings/v8/custom/V8NamedNodesCollection.cpp:

(WebCore::V8NamedNodesCollection::namedItem): Renamed from itemWithName.

  • bindings/v8/custom/V8NamedNodesCollection.h:
  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::nodeMatches): Updated comment.

  • dom/DynamicNodeList.cpp:

(WebCore::DynamicNodeList::namedItem): Renamed from itemWithName.

  • dom/DynamicNodeList.h:

(DynamicNodeListCacheBase): Inhertis from NodeList and renamed lengthCommon and itemCommon
to virtual length and item respectively.
(DynamicNodeList): Now inherits from just DynamicNodeListCacheBase instead of NodeList
and DynamicNodeListCacheBase since the former now inhertis from NodeList. Also removed
length() and item() since they're implemented in DynamicNodeListCacheBase now and renamed
itemWithName() to namedItem() to match HTMLCollection's naming convention.

  • dom/NodeList.h:

(NodeList::namedItem): Renamed from itemWithName. Note that this member function is not
exposed via IDL. It's merely used in the binding code.

  • dom/StaticHashSetNodeList.cpp:

(WebCore::StaticHashSetNodeList::namedItem): Ditto.

  • dom/StaticHashSetNodeList.h:

(StaticHashSetNodeList::namedItem): Ditto.

  • dom/StaticNodeList.cpp:

(WebCore::StaticNodeList::namedItem): Ditto.

  • dom/StaticNodeList.h:

(StaticNodeList::namedItem): Ditto.

  • html/HTMLCollection.cpp:

(WebCore::DynamicNodeListCacheBase::length): Renamed from lengthCommon.
(WebCore::DynamicNodeListCacheBase::item): Renamed from itemCommon.

  • html/HTMLCollection.h:

(HTMLCollection): Inherits from DynamicNodeListCacheBase since DynamicNodeListCacheBase
is already RefCount'ed and NodeList, from which DynamicNodeListCacheBase inherits,
inherits from ScriptWrappable.

Nov 24, 2012:

11:25 PM Changeset in webkit [135666] by abarth@webkit.org
  • 3 edits in trunk/Source/WTF

Chromium should use TCMalloc on Mac to go fast
https://bugs.webkit.org/show_bug.cgi?id=102866

Reviewed by Eric Seidel.

This patch enables TCMalloc for some WebKit objects. It improves
dom-modify on Mac by 5-10%.

On non-Mac platforms, Chromium already uses TCMalloc throughout the
project. Unfortunately, we haven't yet figured out how to turn TCMalloc
on globally on Mac because the approach we use for other platforms makes
some OS X APIs sad.

The next best thing would be to enable TCMalloc for WebKit by
overriding the global new and delete operator, as is done on apple-mac
and other platforms. Unfortunately, we cannot use that approach either
because the Chromium WebKit API is not memory tight.

Fortunately, WebKit has a mechanism for selectively enabling TCMalloc
for a selection of objects by overriding the new and delete operators
on those objects. This patch opts chromium-mac into that scheme by
setting the appropriate preprocessor macros.

  • WTF.gyp/WTF.gyp:
  • wtf/Platform.h:
8:49 PM Changeset in webkit [135665] by dbates@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Substitute "use" for "user" in sentence about naming convention for
enum members so that it reads well.

  • coding/coding-style.html:
8:13 PM Changeset in webkit [135664] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Find-on-page keeps stale pointer
https://bugs.webkit.org/show_bug.cgi?id=103190

Patch by Andy Chen <andchen@rim.com> on 2012-11-24
Reviewed by Rob Buis.

Find on page: pendingScopingEffort stores stale pointer when frames unload,
we need to cancel those scoping efforts.
PR 250807.

Internally reviewed by Yongxin Dai and Mike Fenton.

  • WebKitSupport/InPageSearchManager.cpp:

(InPageSearchManager::DeferredScopeStringMatches):
(BlackBerry::WebKit::InPageSearchManager::frameUnloaded):

6:52 PM Changeset in webkit [135663] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Refactor RenderThemeEfl::paintThemePart()
https://bugs.webkit.org/show_bug.cgi?id=103192

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-24
Reviewed by Kenneth Rohde Christiansen.

Refactor RenderThemeEfl::paintThemePart() so that:

  • Some C'ism is removed
  • RTL related code is moved to applyEdjeRTLState()
  • evas_render() is called instead of evas_render_updates() to avoid creating uselessly update rects.

No new tests, no behavior change for layout tests.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::applyEdjeRTLState):
(WebCore):
(WebCore::RenderThemeEfl::paintThemePart):

  • platform/efl/RenderThemeEfl.h:

(RenderThemeEfl):

6:38 PM Changeset in webkit [135662] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Layout test comes to crash on WK1
https://bugs.webkit.org/show_bug.cgi?id=103170

Patch by Viatcheslav Ostapenko <v.ostapenko@samsung.com> on 2012-11-24
Reviewed by Kenneth Rohde Christiansen.

Switch off accelerated compositing for WK1 because GraphicsContext3D is
missing direct rendering implementation that is required for EFL WK1.

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

6:22 PM Changeset in webkit [135661] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Remove traces of MediaControlRootElement
https://bugs.webkit.org/show_bug.cgi?id=103174

Patch by Silvia Pfeiffer <silviapf@chromium.org> on 2012-11-24
Reviewed by Adam Barth.

Now that nothing is using MediaControlRootElement any more,
we can remove the FIXME and MediaControlRootElement enum left
over from bug 88871.

  • public/WebContextMenuData.h:
6:18 PM Changeset in webkit [135660] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Stop the mess with DECLARE_EWK_VIEW_CALLBACK arg type definition
https://bugs.webkit.org/show_bug.cgi?id=103187

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-24
Reviewed by Kenneth Rohde Christiansen.

Now the client should pass to DECLARE_EWK_VIEW_CALLBACK macro exacly the
same arg type s/he wants to have in the Ewk_View callback.

  • UIProcess/API/efl/EwkViewCallbacks.h:

(EvasObjectHolder):
(EwkViewCallbacks::EvasObjectHolder::EvasObjectHolder):
(EwkViewCallbacks):

3:05 PM Changeset in webkit [135659] by bfulgham@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Avoid access violation when frame is NULL.
https://bugs.webkit.org/show_bug.cgi?id=68753

BitmapImage::drawFrameMatchingSourceSize causes an access violation
if BitmapImage::frameAtIndex returns NULL. (Found by David Delaune).

Reviewed by Simon Fraser.

  • platform/graphics/win/ImageCairoWin.cpp:

(WebCore::BitmapImage::drawFrameMatchingSourceSize): Check for null
cairo_surface_t pointer and avoid dereferencing.

2:25 PM Changeset in webkit [135658] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] Refactor RenderThemeEfl::getThemePartFromCache()
https://bugs.webkit.org/show_bug.cgi?id=103186

Patch by Christophe Dumez <Christophe Dumez> on 2012-11-24
Reviewed by Kenneth Rohde Christiansen.

Refactor getThemePartFromCache() so that a list is used
for the cache instead of a vector. The function moves
items to the head of the container which is much more
efficient with a list than a vector.

The list ordering is also slightly altered so that the
cached parts that were used last come first. Previously,
they were sorted by creation time which may cause an
item to be removed from the cache because it is older
even if is was used recently.

This patch also gets rid of some code duplication at the
end of the function.

No new tests, no behavior change.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::ThemePartCacheEntry::create): Return
a smart pointer instead of a raw pointer.
(WebCore::RenderThemeEfl::getThemePartFromCache):
(WebCore::RenderThemeEfl::clearThemePartCache): Rename
flushThemePartCache to clearThemePartCache for clarity.
(WebCore::RenderThemeEfl::loadTheme):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::~RenderThemeEfl):

  • platform/efl/RenderThemeEfl.h:

(ThemePartCacheEntry):
(RenderThemeEfl):

12:34 PM Changeset in webkit [135657] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] RTSP should use the same MediaDocument as HTTP videos.
https://bugs.webkit.org/show_bug.cgi?id=103185
RIM PR 250114

Patch by Liam Quinn <lquinn@rim.com> on 2012-11-24
Reviewed by George Staikos.

Make our MediaPlayer implementation indicate that it supports RTSP. That way, DOMImplementation::createDocument will create the same MediaDocument as is used for HTTP videos.

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::supportsType):

12:31 PM Changeset in webkit [135656] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Put computed style 'font-family' values in the CSSValuePool.
<http://webkit.org/b/103184>

Reviewed by Ojan Vafai.

Use CSSValuePool::createFontFamilyValue() when handing out 'font-family' values from CSSComputedStyleDeclaration.
This avoids creating extra CSSPrimitiveValue objects since we already have these in the pool from parsing.
Also added a max capacity to the font-family cache (using random eviction.)

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForFamily):

  • css/CSSValuePool.cpp:

(WebCore::CSSValuePool::createFontFamilyValue):

11:35 AM Changeset in webkit [135655] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Text not selected when input field focused.
https://bugs.webkit.org/show_bug.cgi?id=103182

Patch by Genevieve Mak <gmak@rim.com> on 2012-11-24
Reviewed by George Staikos.

Reviewed Internally by: Mike Fenton, Eli Fidler
PR #250163

  • WebKitSupport/SelectionHandler.cpp:

(BlackBerry::WebKit::SelectionHandler::selectObject):

11:24 AM Changeset in webkit [135654] by rjkroege@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening: updated expectations for failures in:

  • http/tests/local/drag-over-remote-content.html

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

  • media/video-seek-past-end-playing.html

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

  • platform/chromium/TestExpectations:
9:15 AM Changeset in webkit [135653] by zandobersek@gmail.com
  • 11 edits in trunk/Tools

Add the --order option to NRWT
https://bugs.webkit.org/show_bug.cgi?id=102229

Reviewed by Dirk Pranke.

The --order option controls in what order the gathered tests will be run.
There are 3 options:

  • natural, the tests are sorted in natural order,
  • random, the tests are sorted in random order,
  • none, the tests are kept in the order in which they were specified through

arguments or the test list.

The natural option is the default one and maintains the current behavior.

The none option is primarily intended to be used with the --test-list option,
with the test list file expected to list specific test names.
When a directory is specified as one of the paths from under which tests should
be gathered and the none option is used, that path will expand to all the tests
under it, with these tests sorted in the natural order.

Using --order=random duplicated the behavior of the --randomize-order option, so
the latter is removed.

This patch also incorporates the change with which makes it is possible to specify
a test via arguments or the test list multiple tests and then have the test run
that many times.

  • Scripts/webkitpy/common/find_files.py:

(find): Accept an optional sorting key that is used to sort files found in the directories
that the given paths specify.
(_normalized_find): Both paths that are then searched for the tests and the tests that
were found are now kept in lists. This makes it possible to run a test multiple times
by specifying it multiple times through arguments or the test list file.
(_normalized_find.sort_by_directory_key):

  • Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:

(LayoutTestFinder.find_tests): Keep the paths where we should search for tests in a list.
(LayoutTestFinder.skip_tests): Subtracting from a set of paths is necessary.

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:

(LayoutTestRunner.init): The Sharder class no longer needs a test path separator.
(Sharder.init): Ditto.
(Sharder._resize_shards):

  • Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:

(SharderTests.get_shards): Modify the Shader initializing as required.
(SharderTests.test_multiple_locked_shards): The natural sorting and test name key unit tests
are now moved to the base Port unit tests.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._prepare_lists): Keep the test names in a list. Order that list as specified by
the new --order option.

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

(Port.tests): This method should now return a list of all the tests found in the specified
paths.
(Port._real_tests): A list is required, so no conversion to a set is made.
(Port):
(Port.test_key): Place this method here for now, but it should really move into a separate
module.
(Port._natural_sort_key): Ditto.
(Port._natural_sort_key.tryint):
(Port._virtual_tests): A list is required, so the function now operates on that rather than
on a set.

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

(PortTest.test_find_with_skipped_directories_2): Adjust the test case to check for an empty
list rather than an empty set.
(PortTest.test_dont_require_http_server):
(NaturalCompareTest): The natural sorting unit tests are placed here for now.
(NaturalCompareTest.assert_cmp):
(NaturalCompareTest.test_natural_compare):
(KeyCompareTest): The test name key unit tests are placed here for now.
(KeyCompareTest.assert_cmp):
(KeyCompareTest.test_test_key):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args): Remove the --randomize-order option, it's now possible to replicate its behavior
by using --order=random.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Add unit tests covering

various aspects of this change.
(MainTest.test_natural_order):
(MainTest):
(MainTest.test_natural_order_test_specified_multiple_times):
(MainTest.test_random_order):
(MainTest.test_random_order_test_specified_multiple_times):
(MainTest.test_no_order):
(MainTest.test_no_order_test_specified_multiple_times):
(MainTest.test_no_order_with_directory_entries_in_natural_order):

  • Scripts/webkitpy/tool/commands/queries.py:

(PrintExpectations.execute): Operate on a set of tests when printing out expectations.

8:46 AM Changeset in webkit [135652] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Check errors in EwkView callbacks usage at compile time
https://bugs.webkit.org/show_bug.cgi?id=103177

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-11-24
Reviewed by Kenneth Rohde Christiansen.

Errors in EwkView callbacks usage are now checked at compile time.

  • UIProcess/API/efl/EwkViewCallbacks.h:

(CallBack):
(EwkViewCallbacks::CallBack::CallBack):
(EwkViewCallbacks::CallBack::call):

7:32 AM Changeset in webkit [135651] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebKit/qt

Unreviewed, rolling out r135648 and r135649.
http://trac.webkit.org/changeset/135648
http://trac.webkit.org/changeset/135649
https://bugs.webkit.org/show_bug.cgi?id=103176

This change cannot be built with a qt-minimal configuration.
(Requested by zalbisser on #webkit).

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

  • WebCoreSupport/PageClientQt.cpp:

(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

7:11 AM Changeset in webkit [135650] by hayato@chromium.org
  • 3 edits in trunk/Source/WebCore

It's confusing that return values of 'bool Node::dispatchEvent(...)' and 'bool Node::dispatchMouseEvent(..)' have the opposite meanings.
https://bugs.webkit.org/show_bug.cgi?id=103058

Reviewed by Ojan Vafai.

Refactor MouseEventDispatchMediator::dispatchEvent() and
EventHandler::dispatchMouseEvent() so that they return bool
which has the same meaning of the return value of
Node::dispatchEvent().

No tests. No change in behavior.

  • dom/MouseEvent.cpp:

(WebCore::MouseEventDispatchMediator::dispatchEvent):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::handleMouseDoubleClickEvent):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::handleMouseReleaseEvent):
(WebCore::EventHandler::dispatchMouseEvent):
(WebCore::EventHandler::sendContextMenuEvent):
(WebCore::EventHandler::sendContextMenuEventForKey):

7:11 AM Changeset in webkit [135649] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebKit/qt

Unreviewed Qt build fix:

Make sure QGLWidget definition is available.

  • WebCoreSupport/PageClientQt.cpp:
6:41 AM Changeset in webkit [135648] by zeno.albisser@digia.com
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Make sure the QGLWidget context is current when creating the TextureMapper.
https://bugs.webkit.org/show_bug.cgi?id=103142

When creating the TextureMapperGL for WK1 we have to make sure
that the GL context provided by the QGLWidget is current.
Otherwise the GraphicsContext3DQt created by TextureMapperGL will pick up
the wrong pointer by calling QOpenGLContext::currentContext().

Reviewed by Kenneth Rohde Christiansen.

  • WebCoreSupport/PageClientQt.cpp:

(WebCore::PageClientQGraphicsWidget::setRootGraphicsLayer):

3:28 AM Changeset in webkit [135647] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
2:50 AM Changeset in webkit [135646] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

Unreviewed, rolling out r135600.
http://trac.webkit.org/changeset/135600
https://bugs.webkit.org/show_bug.cgi?id=103173

It made EFL API test is failed (Requested by gyuyoung_mbp on
#webkit).

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

  • TestWebKitAPI/PlatformEfl.cmake:
  • TestWebKitAPI/efl/PlatformUtilities.cpp:

(TestWebKitAPI::Util::sleep):

  • TestWebKitAPI/efl/PlatformWebView.cpp:
2:05 AM Changeset in webkit [135645] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Too many tests come to crashe after build 7830 on
EFL Linux 64-bit Release bot.

  • platform/efl-wk1/TestExpectations:
12:51 AM Changeset in webkit [135644] by kov@webkit.org
  • 11 edits in releases/WebKitGTK/webkit-1.10

[GTK] Split WebCore/platform into a separate library
https://bugs.webkit.org/show_bug.cgi?id=94435

Reviewed by Martin Robinson.

More people have been reporting problems when linking WebCore because
the command line limit is being exceeded. Splitting WebCore a bit more
is in order.

.:

  • GNUmakefile.am: add variable that will hold the list of source files

for libWebCorePlatform .

Source/WebCore:

  • GNUmakefile.am: add new libWebCorePlatform convenience library.
  • GNUmakefile.list.am: move list of platform/* files to its own variable.

Source/WebKit/gtk:

  • GNUmakefile.am: link libWebCorePlatform into libwebkitgtk

Source/WebKit2:

  • GNUmakefile.am: link libWebCorePlatform into libwebkit2gtk

Tools:

  • GNUmakefile.am: link libWebCorePlatform into DRT

Conflicts:

Source/WebCore/GNUmakefile.am
Source/WebCore/GNUmakefile.list.am

Note: See TracTimeline for information about the timeline view.