[webkit-changes] [147113] trunk
Title: [147113] trunk Revision 147113 Author morr...@google.com Date 2013-03-28 07:34:21 -0700 (Thu, 28 Mar 2013) Log Message Custom Elements: should support non-HTML namespaces. https://bugs.webkit.org/show_bug.cgi?id=111693 Reviewed by Dimitri Glazkov. Source/WebCore: Some existing code assumes that the element extends HTMLElements. This change allow it to extend from Element. Note that the namespace URI of a custom element is determined by given element prototype: An element will have XHTML namespace if its prototype chain includes HTMLElements, SVGElement leads SVG namespace and null otherwise, respectively. Test: fast/dom/custom/document-register-namespace.html * bindings/v8/CustomElementHelpers.cpp: (WebCore::hasValidPrototypeChainFor): Factored out from isValidPrototypeParameter() (WebCore::CustomElementHelpers::isValidPrototypeParameter): Extend to support non HTMLElement prototype (WebCore::CustomElementHelpers::findLocalName): Support non-HTML element names. * bindings/v8/CustomElementHelpers.h: (CustomElementHelpers): * dom/CustomElementConstructor.cpp: (WebCore::CustomElementConstructor::createElementInternal): * dom/CustomElementRegistry.cpp: (WebCore::CustomElementRegistry::registerElement): No longer hard-codes namespace and picks one based on the prototype value. * dom/CustomElementRegistry.h: (CustomElementRegistry): LayoutTests: * fast/dom/custom/document-register-namespace-expected.txt: Added. * fast/dom/custom/document-register-namespace.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/CustomElementHelpers.cpp trunk/Source/WebCore/bindings/v8/CustomElementHelpers.h trunk/Source/WebCore/dom/CustomElementConstructor.cpp trunk/Source/WebCore/dom/CustomElementRegistry.cpp trunk/Source/WebCore/dom/CustomElementRegistry.h Added Paths trunk/LayoutTests/fast/dom/custom/document-register-namespace-expected.txt trunk/LayoutTests/fast/dom/custom/document-register-namespace.html Diff Modified: trunk/LayoutTests/ChangeLog (147112 => 147113) --- trunk/LayoutTests/ChangeLog 2013-03-28 14:28:32 UTC (rev 147112) +++ trunk/LayoutTests/ChangeLog 2013-03-28 14:34:21 UTC (rev 147113) @@ -1,3 +1,13 @@ +2013-03-28 Hajime Morrita morr...@google.com + +Custom Elements: should support non-HTML namespaces. +https://bugs.webkit.org/show_bug.cgi?id=111693 + +Reviewed by Dimitri Glazkov. + +* fast/dom/custom/document-register-namespace-expected.txt: Added. +* fast/dom/custom/document-register-namespace.html: Added. + 2013-03-28 Christophe Dumez ch.du...@sisa.samsung.com Unreviewed EFL gardening. Added: trunk/LayoutTests/fast/dom/custom/document-register-namespace-expected.txt (0 => 147113) --- trunk/LayoutTests/fast/dom/custom/document-register-namespace-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/custom/document-register-namespace-expected.txt 2013-03-28 14:34:21 UTC (rev 147113) @@ -0,0 +1,38 @@ +Using document.register() for extending HTML and non-HTML elements. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS html1.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS html2.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS html3.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS html4.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS notHTML.namespaceURI is 'http://www.example.com/' +PASS notHTML instanceof CustomHTMLElement is false +PASS notHTML instanceof HTMLElement is false +PASS svg1.tagName is 'svg-foo' +PASS svg1.namespaceURI is 'http://www.w3.org/2000/svg' +PASS svg2.tagName is 'svg-foo' +PASS svg2.namespaceURI is 'http://www.w3.org/2000/svg' +PASS svg3.tagName is 'svg-foo' +PASS svg3.namespaceURI is 'http://www.w3.org/2000/svg' +PASS notSVG1.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS notSVG1 instanceof CustomSVGElement is false +PASS notSVG1 instanceof HTMLUnknownElement is true +PASS notSVG2.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS notSVG2 instanceof CustomSVGElement is false +PASS notSVG2 instanceof HTMLUnknownElement is true +PASS xml1.tagName is 'xml-foo' +PASS xml1.namespaceURI is null +PASS xml2.tagName is 'xml-foo' +PASS xml2.namespaceURI is null +PASS notXML1.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS notXML1 instanceof CustomXMLElement is false +PASS notXML1 instanceof HTMLUnknownElement is true +PASS notXML2.namespaceURI is 'http://www.w3.org/1999/xhtml' +PASS notXML2 instanceof CustomXMLElement is false +PASS notXML2 instanceof HTMLUnknownElement is true +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/custom/document-register-namespace.html (0 => 147113) --- trunk/LayoutTests/fast/dom/custom/document-register-namespace.html (rev 0) +++ trunk/LayoutTests/fast/dom/custom/document-register-namespace.html 2013-03-28 14:34:21 UTC (rev 147113) @@ -
[webkit-changes] [146851] trunk/Source/WebCore
Title: [146851] trunk/Source/WebCore Revision 146851 Author morr...@google.com Date 2013-03-25 23:35:06 -0700 (Mon, 25 Mar 2013) Log Message Custom Elements Refactoring: The name V8CustomElement is confusing. https://bugs.webkit.org/show_bug.cgi?id=113165 Reviewed by Kent Tamura. This change moves functions from V8CustomElement to CustomElementHelpers and removes V8CustomElement. V8CustomElement is just a heritage of old design and no longer makes sense. No new tests. No behavior change. * WebCore.gypi: * bindings/v8/CustomElementHelpers.cpp: (WebCore::CustomElementHelpers::createWrapper): (WebCore): * bindings/v8/CustomElementHelpers.h: (CustomElementHelpers): (WebCore::CustomElementHelpers::wrap): (WebCore): (WebCore::CustomElementHelpers::constructorOf): * bindings/v8/V8CustomElement.cpp: Removed. * bindings/v8/V8CustomElement.h: Removed. * bindings/v8/custom/V8CustomElementConstructorCustom.cpp: (WebCore::V8CustomElementConstructor::callAsFunctionCallback): * dom/make_names.pl: (printWrapperFactoryCppFile): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/bindings/v8/CustomElementHelpers.cpp trunk/Source/WebCore/bindings/v8/CustomElementHelpers.h trunk/Source/WebCore/bindings/v8/custom/V8CustomElementConstructorCustom.cpp trunk/Source/WebCore/dom/make_names.pl Removed Paths trunk/Source/WebCore/bindings/v8/V8CustomElement.cpp trunk/Source/WebCore/bindings/v8/V8CustomElement.h Diff Modified: trunk/Source/WebCore/ChangeLog (146850 => 146851) --- trunk/Source/WebCore/ChangeLog 2013-03-26 06:07:52 UTC (rev 146850) +++ trunk/Source/WebCore/ChangeLog 2013-03-26 06:35:06 UTC (rev 146851) @@ -1,3 +1,32 @@ +2013-03-25 Hajime Morrita morr...@google.com + +Custom Elements Refactoring: The name V8CustomElement is confusing. +https://bugs.webkit.org/show_bug.cgi?id=113165 + +Reviewed by Kent Tamura. + +This change moves functions from V8CustomElement to CustomElementHelpers and +removes V8CustomElement. V8CustomElement is just a heritage of old design +and no longer makes sense. + +No new tests. No behavior change. + +* WebCore.gypi: +* bindings/v8/CustomElementHelpers.cpp: +(WebCore::CustomElementHelpers::createWrapper): +(WebCore): +* bindings/v8/CustomElementHelpers.h: +(CustomElementHelpers): +(WebCore::CustomElementHelpers::wrap): +(WebCore): +(WebCore::CustomElementHelpers::constructorOf): +* bindings/v8/V8CustomElement.cpp: Removed. +* bindings/v8/V8CustomElement.h: Removed. +* bindings/v8/custom/V8CustomElementConstructorCustom.cpp: +(WebCore::V8CustomElementConstructor::callAsFunctionCallback): +* dom/make_names.pl: +(printWrapperFactoryCppFile): + 2013-03-25 Eugene Klyuchnikov eus...@chromium.org Web Inspector: [Timeline] Records sidebar is clipped. Modified: trunk/Source/WebCore/WebCore.gypi (146850 => 146851) --- trunk/Source/WebCore/WebCore.gypi 2013-03-26 06:07:52 UTC (rev 146850) +++ trunk/Source/WebCore/WebCore.gypi 2013-03-26 06:35:06 UTC (rev 146851) @@ -1372,8 +1372,6 @@ 'bindings/v8/V8Callback.h', 'bindings/v8/V8Collection.cpp', 'bindings/v8/V8Collection.h', -'bindings/v8/V8CustomElement.cpp', -'bindings/v8/V8CustomElement.h', 'bindings/v8/V8DOMConfiguration.cpp', 'bindings/v8/V8DOMConfiguration.h', 'bindings/v8/V8DOMActivityLogger.h', Modified: trunk/Source/WebCore/bindings/v8/CustomElementHelpers.cpp (146850 => 146851) --- trunk/Source/WebCore/bindings/v8/CustomElementHelpers.cpp 2013-03-26 06:07:52 UTC (rev 146850) +++ trunk/Source/WebCore/bindings/v8/CustomElementHelpers.cpp 2013-03-26 06:35:06 UTC (rev 146851) @@ -43,6 +43,38 @@ #if ENABLE(CUSTOM_ELEMENTS) +v8::Handlev8::Object CustomElementHelpers::createWrapper(PassRefPtrElement impl, v8::Handlev8::Object creationContext, PassRefPtrCustomElementConstructor constructor, v8::Isolate* isolate) +{ +ASSERT(impl); + +// The constructor and registered lifecycle callbacks should be visible only from main world. +// FIXME: This shouldn't be needed once each custom element has its own FunctionTemplate +// https://bugs.webkit.org/show_bug.cgi?id=108138 +if (!CustomElementHelpers::isFeatureAllowed(creationContext-CreationContext())) { +v8::Handlev8::Object wrapper = V8DOMWrapper::createWrapper(creationContext, V8HTMLElement::info, impl.get(), isolate); +if (!wrapper.IsEmpty()) +V8DOMWrapper::associateObjectWithWrapper(impl, V8HTMLElement::info, wrapper, isolate, WrapperConfiguration::Dependent); +return wrapper; +} + +v8::Handlev8::Value constructorValue = WebCore::toV8(constructor.get(), creationContext, isolate); +if (constructorValue.IsEmpty() || !constructorValue-IsObject()) +return v8:
[webkit-changes] [146853] trunk
Title: [146853] trunk Revision 146853 Author morr...@google.com Date 2013-03-25 23:39:12 -0700 (Mon, 25 Mar 2013) Log Message Listening touch events on ShadowRoot can crash. https://bugs.webkit.org/show_bug.cgi?id=113035 Reviewed by Kentaro Hara. Source/WebCore: TreeScope destructor clears a document reference on ShadowRoot but destructors of ContainerNode and Node assumed it being available and tried to access it for some cleanup purposes. This change extracts such cleanup to Node::willBeDeletedFrom() and calls it from ShadowRoot dtor before the document reference gets cleared. Test: fast/dom/shadow/shadow-root-touch-listener-crash.html * dom/ContainerNode.cpp: (WebCore::ContainerNode::~ContainerNode): Adopted willBeDeletedFrom() * dom/Node.cpp: (WebCore::Node::~Node): Adopted willBeDeletedFrom() (WebCore::Node::willBeDeletedFrom): Extracted from Node and ContainerNode (WebCore): * dom/Node.h: * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::~ShadowRoot): Adopted willBeDeletedFrom() LayoutTests: * fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt: Added. * fast/dom/shadow/shadow-root-touch-listener-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/ShadowRoot.cpp Added Paths trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (146852 => 146853) --- trunk/LayoutTests/ChangeLog 2013-03-26 06:35:49 UTC (rev 146852) +++ trunk/LayoutTests/ChangeLog 2013-03-26 06:39:12 UTC (rev 146853) @@ -1,3 +1,13 @@ +2013-03-22 Hajime Morrita morr...@google.com + +Listening touch events on ShadowRoot can crash. +https://bugs.webkit.org/show_bug.cgi?id=113035 + +Reviewed by Kentaro Hara. + +* fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt: Added. +* fast/dom/shadow/shadow-root-touch-listener-crash.html: Added. + 2013-03-25 James Robinson jam...@chromium.org Update a few more chromium compositor baselines. Added: trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt (0 => 146853) --- trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash-expected.txt 2013-03-26 06:39:12 UTC (rev 146853) @@ -0,0 +1,10 @@ +Tests to ensure that event dispatching behaves as the Shadow DOM spec describes. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS unless crash +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash.html (0 => 146853) --- trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-root-touch-listener-crash.html 2013-03-26 06:39:12 UTC (rev 146853) @@ -0,0 +1,31 @@ +!DOCTYPE html +html +body +script src="" +script src="" +script src="" +div id=target/div +script +jsTestIsAsync = true; + +function addTouchEventListeners(name) +{ +var node = getNodeInShadowTreeStack(name); +node.addEventListener('touchstart', recordEvent, false); +} + +target.appendChild( +createDOM('div', {'id': 'A'}, + createShadowRoot())); +addTouchEventListeners('A/'); + +setTimeout(function() { +target.parentNode.removeChild(target); +gc(); +debug(PASS unless crash); +finishJSTest(); +}, 0); +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (146852 => 146853) --- trunk/Source/WebCore/ChangeLog 2013-03-26 06:35:49 UTC (rev 146852) +++ trunk/Source/WebCore/ChangeLog 2013-03-26 06:39:12 UTC (rev 146853) @@ -1,3 +1,29 @@ +2013-03-22 Hajime Morrita morr...@google.com + +Listening touch events on ShadowRoot can crash. +https://bugs.webkit.org/show_bug.cgi?id=113035 + +Reviewed by Kentaro Hara. + +TreeScope destructor clears a document reference on ShadowRoot but +destructors of ContainerNode and Node assumed it being available +and tried to access it for some cleanup purposes. + +This change extracts such cleanup to Node::willBeDeletedFrom() and +calls it from ShadowRoot dtor before the document reference gets cleared. + +Test: fast/dom/shadow/shadow-root-touch-listener-crash.html + +* dom/ContainerNode.cpp: +(WebCore::ContainerNode::~ContainerNode): Adopted willBeDeletedFrom() +* dom/Node.cpp: +(WebCore::Node::~Node): Adopted willBeDeletedFrom() +(WebCore::Node::willBeDeletedFrom): Extracted from Node and ContainerNode +(WebCore): +* dom/Node
[webkit-changes] [146882] trunk
Title: [146882] trunk Revision 146882 Author morr...@google.com Date 2013-03-26 08:06:59 -0700 (Tue, 26 Mar 2013) Log Message remoeveAllEventListeners() should be called to shadow trees https://bugs.webkit.org/show_bug.cgi?id=113037 Reviewed by Dimitri Glazkov. Source/WebCore: Document::removeAllEventListeners() doesn't traverse shadow tree, but we should. This change override Element::removeAllEventListeners() so that it cleans its shadow trees up. Test: fast/dom/shadow/shadow-tree-listener-clearance.html * dom/Element.cpp: (WebCore::Element::removeAllEventListeners): (WebCore): * dom/Element.h: (Element): * dom/ElementShadow.cpp: (WebCore::ElementShadow::removeAllEventListeners): Added. (WebCore): * dom/ElementShadow.h: (ElementShadow): LayoutTests: * fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html: Added. * fast/dom/shadow/shadow-tree-listener-clearance-expected.txt: Added. * fast/dom/shadow/shadow-tree-listener-clearance.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/ElementShadow.cpp trunk/Source/WebCore/dom/ElementShadow.h Added Paths trunk/LayoutTests/fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance.html Diff Modified: trunk/LayoutTests/ChangeLog (146881 => 146882) --- trunk/LayoutTests/ChangeLog 2013-03-26 15:04:06 UTC (rev 146881) +++ trunk/LayoutTests/ChangeLog 2013-03-26 15:06:59 UTC (rev 146882) @@ -1,3 +1,14 @@ +2013-03-26 Hajime Morrita morr...@google.com + +remoeveAllEventListeners() should be called to shadow trees +https://bugs.webkit.org/show_bug.cgi?id=113037 + +Reviewed by Dimitri Glazkov. + +* fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html: Added. +* fast/dom/shadow/shadow-tree-listener-clearance-expected.txt: Added. +* fast/dom/shadow/shadow-tree-listener-clearance.html: Added. + 2013-03-26 Yury Semikhatsky yu...@chromium.org Unreviewed. Updated test expectations for compositing/geometry/fixed-in-composited.html Added: trunk/LayoutTests/fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html (0 => 146882) --- trunk/LayoutTests/fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/resources/shadow-tree-listener-clearance-frame.html 2013-03-26 15:06:59 UTC (rev 146882) @@ -0,0 +1,13 @@ +!DOCTYPE html +html +body +div id=host/div +script +(function() { +var shadow = document.getElementById(host).webkitCreateShadowRoot(); +shadow.innerHTML = article id='target'/article; +document.targetInShadow = shadow.getElementById(target); +})(); +/script +/body +/html Added: trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance-expected.txt (0 => 146882) --- trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance-expected.txt 2013-03-26 15:06:59 UTC (rev 146882) @@ -0,0 +1,6 @@ +PASS firedCount is 1 +PASS firedCount is 1 +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance.html (0 => 146882) --- trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-tree-listener-clearance.html 2013-03-26 15:06:59 UTC (rev 146882) @@ -0,0 +1,37 @@ +!DOCTYPE html +html +body +script src="" +iframe id=childFrame src="" +script + +var child = document.getElementById(childFrame); +var firedCount = 0; + +function getChildTarget() +{ +return child.contentDocument.targetInShadow; +} + +function test() +{ +var toBeListened = getChildTarget(); +toBeListened.addEventListener(test, function(event) { firedCount++; }); + +toBeListened.dispatchEvent(new CustomEvent(test)); +shouldBe(firedCount, 1); + +window.child.contentDocument.open(); // This should clear event listeners +toBeListened.dispatchEvent(new CustomEvent(test)); +shouldBe(firedCount, 1); + +finishJSTest(); +} + +jsTestIsAsync = true; +child.addEventListener(load, test); + +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (146881 => 146882) --- trunk/Source/WebCore/ChangeLog 2013-03-26 15:04:06 UTC (rev 146881) +++ trunk/Source/WebCore/ChangeLog 2013-03-26 15:06:59 UTC (rev 146882) @@ -1,3 +1,26 @@ +2013-03-26 Hajime Morrita morr...@google.com + +remoeveAllEventListeners() should be called to shadow trees +https://bugs.webkit.org/show_bug.cgi?id=113037 + +Reviewed by Dimitri Glazkov. + +Documen
[webkit-changes] [146896] trunk
Title: [146896] trunk Revision 146896 Author morr...@google.com Date 2013-03-26 09:14:59 -0700 (Tue, 26 Mar 2013) Log Message https://bugs.webkit.org/show_bug.cgi?id=113164 Custom Elements: readyCallback should be called for outerHTML and insertAdjecentHTML Source/WebCore: These APIs also create new elements thus should have V8DeliverCustomElementCallbacks attribute. Reviewed by Dimitri Glazkov. Test: Updated lifecycle-ready-creation-api.html. * html/HTMLElement.idl: LayoutTests: Reviewed by Dimitri Glazkov. * fast/dom/custom/lifecycle-ready-creation-api-expected.txt: * fast/dom/custom/lifecycle-ready-creation-api.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api-expected.txt trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLElement.idl Diff Modified: trunk/LayoutTests/ChangeLog (146895 => 146896) --- trunk/LayoutTests/ChangeLog 2013-03-26 16:10:02 UTC (rev 146895) +++ trunk/LayoutTests/ChangeLog 2013-03-26 16:14:59 UTC (rev 146896) @@ -1,3 +1,13 @@ +2013-03-26 Hajime Morrita morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=113164 +Custom Elements: readyCallback should be called for outerHTML and insertAdjecentHTML + +Reviewed by Dimitri Glazkov. + +* fast/dom/custom/lifecycle-ready-creation-api-expected.txt: +* fast/dom/custom/lifecycle-ready-creation-api.html: + 2013-03-26 Jochen Eisinger joc...@chromium.org Fix incorrect test name in content shell expectations Modified: trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api-expected.txt (146895 => 146896) --- trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api-expected.txt 2013-03-26 16:10:02 UTC (rev 146895) +++ trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api-expected.txt 2013-03-26 16:14:59 UTC (rev 146896) @@ -19,6 +19,8 @@ PASS importedBar.callbacksCalled is true PASS importedBar.firstChild.callbacksCalled is true PASS window.callbacksCalled is ['DIV', 'X-FOO'] +PASS window.callbacksCalled is ['X-FOO'] +PASS window.callbacksCalled is ['X-FOO'] PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api.html (146895 => 146896) --- trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api.html 2013-03-26 16:10:02 UTC (rev 146895) +++ trunk/LayoutTests/fast/dom/custom/lifecycle-ready-creation-api.html 2013-03-26 16:14:59 UTC (rev 146896) @@ -56,6 +56,18 @@ shouldBeTrue(importedBar.firstChild.callbacksCalled); shouldBe(window.callbacksCalled, ['DIV', 'X-FOO']); +window.callbacksCalled = []; +var toBeReplaced = document.createElement(div); +document.body.appendChild(toBeReplaced); +toBeReplaced.outerHTML = x-foo/x-foo; +shouldBe(window.callbacksCalled, ['X-FOO']); + +window.callbacksCalled = []; +var insertionPlaceHolder = document.createElement(div); +document.body.appendChild(insertionPlaceHolder); +insertionPlaceHolder.insertAdjacentHTML(beforebegin, x-foo/x-foo); +shouldBe(window.callbacksCalled, ['X-FOO']); + /script script src="" /body Modified: trunk/Source/WebCore/ChangeLog (146895 => 146896) --- trunk/Source/WebCore/ChangeLog 2013-03-26 16:10:02 UTC (rev 146895) +++ trunk/Source/WebCore/ChangeLog 2013-03-26 16:14:59 UTC (rev 146896) @@ -1,3 +1,16 @@ +2013-03-26 Hajime Morrita morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=113164 +Custom Elements: readyCallback should be called for outerHTML and insertAdjecentHTML + +These APIs also create new elements thus should have V8DeliverCustomElementCallbacks attribute. + +Reviewed by Dimitri Glazkov. + +Test: Updated lifecycle-ready-creation-api.html. + +* html/HTMLElement.idl: + 2013-03-26 Ilya Tikhonovsky loi...@chromium.org Unreviewed. WebInspector: remove unnecessary method. Modified: trunk/Source/WebCore/html/HTMLElement.idl (146895 => 146896) --- trunk/Source/WebCore/html/HTMLElement.idl 2013-03-26 16:10:02 UTC (rev 146895) +++ trunk/Source/WebCore/html/HTMLElement.idl 2013-03-26 16:14:59 UTC (rev 146896) @@ -43,7 +43,7 @@ setter raises(DOMException); [TreatNullAs=NullString] attribute DOMString innerText setter raises(DOMException); - [TreatNullAs=NullString] attribute DOMString outerHTML + [TreatNullAs=NullString, V8DeliverCustomElementCallbacks] attribute DOMString outerHTML setter raises(DOMException); [TreatNullAs=NullString] attribute DOMString outerText setter raises(DOMException); @@ -51,6 +51,7 @@ Element insertAdjacentElement(in [Optional=DefaultIsUndefined] DOMString where, in [Optional=DefaultIsUndefined] Element element) raises(DOMException); +[V8Deli
[webkit-changes] [146156] trunk/LayoutTests
Title: [146156] trunk/LayoutTests Revision 146156 Author morr...@google.com Date 2013-03-18 17:17:26 -0700 (Mon, 18 Mar 2013) Log Message Older shadow root rendered in incorrect order when multiple shadow roots containing style tags have been constructed https://bugs.webkit.org/show_bug.cgi?id=93752 The bug was already fixed in some point. This change just adds a regression test to cover the reported problem. Reviewed by Dimitri Glazkov. * fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html: Added. * fast/dom/shadow/multiple-shadowroots-with-empty-styles.html: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles.html Diff Modified: trunk/LayoutTests/ChangeLog (146155 => 146156) --- trunk/LayoutTests/ChangeLog 2013-03-19 00:13:36 UTC (rev 146155) +++ trunk/LayoutTests/ChangeLog 2013-03-19 00:17:26 UTC (rev 146156) @@ -1,3 +1,15 @@ +2013-03-18 Hajime Morrita morr...@google.com + +Older shadow root rendered in incorrect order when multiple shadow roots containing style tags have been constructed +https://bugs.webkit.org/show_bug.cgi?id=93752 + +The bug was already fixed in some point. This change just adds a regression test to cover the reported problem. + +Reviewed by Dimitri Glazkov. + +* fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html: Added. +* fast/dom/shadow/multiple-shadowroots-with-empty-styles.html: Added. + 2013-03-18 Simon Fraser simon.fra...@apple.com Remove failing Windows-specific result; this test passes now. Added: trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html (0 => 146156) --- trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles-expected.html 2013-03-19 00:17:26 UTC (rev 146156) @@ -0,0 +1,9 @@ +!DOCTYPE html +html +body +div id=output +div id=fdivHello from foo./div/div +div id=bdivHello from bar./divdivHello from zot./div/div +/div +/body +/html Added: trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles.html (0 => 146156) --- trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/multiple-shadowroots-with-empty-styles.html 2013-03-19 00:17:26 UTC (rev 146156) @@ -0,0 +1,35 @@ +!DOCTYPE html +html +body +div id=output/div +script +if (window.testRunner) +testRunner.waitUntilDone(); + +document.addEventListener(DOMContentLoaded, function() { +var output = document.querySelector(#output); +// 1. make an element and insert it into the document. +// 2. create a shadow root that contains a style element. +var f = document.createElement(div); +output.appendChild(f); +var fs = f.webkitCreateShadowRoot(); +fs.innerHTML = style/styledivHello from foo./div; +// +// 3. make another element. +// 4. create a shadow root on this element that contains a style element. +// 5. create another shadow root on the element. +// 6. insert the element into the document. +var b = document.createElement(div); +var bs0 = b.webkitCreateShadowRoot(); +bs0.innerHTML = style/styledivHello from bar./div; +var bs1 = b.webkitCreateShadowRoot(); +bs1.innerHTML = shadow/shadowdivHello from zot./div; +// NOTE: must add to dom after adding shadowRoot to observe problem. +output.appendChild(b); + +if (window.testRunner) +testRunner.notifyDone(); +}); +/script +/body +/html ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [145175] trunk
Title: [145175] trunk Revision 145175 Author morr...@google.com Date 2013-03-07 20:25:52 -0800 (Thu, 07 Mar 2013) Log Message Custom Elements: CustomElement constructor shouldn't share function instance https://bugs.webkit.org/show_bug.cgi?id=111807 Reviewed by Kentaro Hara. Source/WebCore: Adaptor functions of custom elements unintentionally share the instance. This fix gives new one for each. Test: Updated fast/dom/custom/document-register-basic.html * bindings/v8/V8AdaptorFunction.cpp: (WebCore::V8AdaptorFunction::wrap): LayoutTests: * fast/dom/custom/document-register-basic-expected.txt: * fast/dom/custom/document-register-basic.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/custom/document-register-basic-expected.txt trunk/LayoutTests/fast/dom/custom/document-register-basic.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp Diff Modified: trunk/LayoutTests/ChangeLog (145174 => 145175) --- trunk/LayoutTests/ChangeLog 2013-03-08 04:24:23 UTC (rev 145174) +++ trunk/LayoutTests/ChangeLog 2013-03-08 04:25:52 UTC (rev 145175) @@ -1,3 +1,13 @@ +2013-03-07 Hajime Morrita morr...@google.com + +Custom Elements: CustomElement constructor shouldn't share function instance +https://bugs.webkit.org/show_bug.cgi?id=111807 + +Reviewed by Kentaro Hara. + +* fast/dom/custom/document-register-basic-expected.txt: +* fast/dom/custom/document-register-basic.html: + 2013-03-07 Hayato Ito hay...@chromium.org Unreviewed gardening. Modified: trunk/LayoutTests/fast/dom/custom/document-register-basic-expected.txt (145174 => 145175) --- trunk/LayoutTests/fast/dom/custom/document-register-basic-expected.txt 2013-03-08 04:24:23 UTC (rev 145174) +++ trunk/LayoutTests/fast/dom/custom/document-register-basic-expected.txt 2013-03-08 04:25:52 UTC (rev 145175) @@ -24,6 +24,7 @@ PASS parsedFoo.__proto__ is fooConstructor.prototype PASS parsedFoo.tagName is 'X-FOO' PASS parsedFoo.someProperty is container.firstChild.someProperty +PASS barConstructor !== fooConstructor is true PASS createdBar.tagName is 'X-BAR' PASS createdBaz.tagName is 'X-BAZ' PASS createdBaz.thisIsPrototype is true @@ -40,6 +41,9 @@ PASS (new (document.register('yz-bar', createRegisterParamters()))()).tagName is 'YZ-BAR' PASS (new (document.register('y-z-bar', createRegisterParamters()))()).tagName is 'Y-Z-BAR' PASS (new (document.register('y--bar', createRegisterParamters()))()).tagName is 'Y--BAR' +PASS (new fooConstructor).tagName is 'X-FOO' +PASS (new barConstructor).tagName is 'X-BAR' +PASS (new bazConstructor).tagName is 'X-BAZ' PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/fast/dom/custom/document-register-basic.html (145174 => 145175) --- trunk/LayoutTests/fast/dom/custom/document-register-basic.html 2013-03-08 04:24:23 UTC (rev 145174) +++ trunk/LayoutTests/fast/dom/custom/document-register-basic.html 2013-03-08 04:25:52 UTC (rev 145175) @@ -77,6 +77,7 @@ // Having another constructor var barConstructor = document.register(x-bar, createRegisterParamters()); +shouldBeTrue(barConstructor !== fooConstructor); var createdBar = new barConstructor(); shouldBe(createdBar.tagName, 'X-BAR'); @@ -107,6 +108,11 @@ shouldBe((new (document.register('y-z-bar', createRegisterParamters()))()).tagName, 'Y-Z-BAR'); shouldBe((new (document.register('y--bar', createRegisterParamters()))()).tagName, 'Y--BAR'); +// Constructor shouldn't interfere each otehr +shouldBe((new fooConstructor).tagName, 'X-FOO'); +shouldBe((new barConstructor).tagName, 'X-BAR'); +shouldBe((new bazConstructor).tagName, 'X-BAZ'); + /script script src="" /body Modified: trunk/Source/WebCore/ChangeLog (145174 => 145175) --- trunk/Source/WebCore/ChangeLog 2013-03-08 04:24:23 UTC (rev 145174) +++ trunk/Source/WebCore/ChangeLog 2013-03-08 04:25:52 UTC (rev 145175) @@ -1,3 +1,18 @@ +2013-03-07 Hajime Morrita morr...@google.com + +Custom Elements: CustomElement constructor shouldn't share function instance +https://bugs.webkit.org/show_bug.cgi?id=111807 + +Reviewed by Kentaro Hara. + +Adaptor functions of custom elements unintentionally share the instance. +This fix gives new one for each. + +Test: Updated fast/dom/custom/document-register-basic.html + +* bindings/v8/V8AdaptorFunction.cpp: +(WebCore::V8AdaptorFunction::wrap): + 2013-03-07 Jared Wyles wy...@adobe.com Reading border radius from style property returns in wrong order. Modified: trunk/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp (145174 => 145175) --- trunk/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp 2013-03-08 04:24:23 UTC (rev 145174) +++ trunk/Source/WebCore/bindings/v8/V8AdaptorFunction.cpp 2013-03-08 04:25:52 UTC (rev 145175) @@ -76,7 +76,7 @@ { if (object.IsEmpty() || !object-IsObject()) return v8::Hand
[webkit-changes] [145040] trunk/Source/WebCore
Title: [145040] trunk/Source/WebCore Revision 145040 Author morr...@google.com Date 2013-03-06 22:32:27 -0800 (Wed, 06 Mar 2013) Log Message Custom Elements Refactoring: CustomElementConstructor API shouldn't bound to HTMLElement https://bugs.webkit.org/show_bug.cgi?id=111678 Reviewed by Kentaro Hara. The latest Custom Elements standard supports non-HTML custom elements. Even though current implementation support only HTML, it'd be better off to make API generic enough to support them. This change - eliminates HTMLElement from the API signature by replacing it with Element, and - rename V8HTMLCustomElement to V8CustomElement. No new tests, just changing signatures and a class name. * WebCore.gypi: * bindings/v8/V8CustomElement.cpp: Renamed from Source/WebCore/bindings/v8/V8HTMLCustomElement.cpp. (WebCore): (WebCore::findWrapperTypeOf): (WebCore::V8CustomElement::createWrapper): * bindings/v8/V8CustomElement.h: Renamed from Source/WebCore/bindings/v8/V8HTMLCustomElement.h. (WebCore): (V8CustomElement): (WebCore::V8CustomElement::toV8): (WebCore::V8CustomElement::wrap): (WebCore::HTMLCustomElement::wrap): * bindings/v8/custom/V8CustomElementConstructorCustom.cpp: (WebCore::V8CustomElementConstructor::callAsFunctionCallback): * dom/CustomElementConstructor.cpp: (WebCore::CustomElementConstructor::createElement): * dom/CustomElementConstructor.h: (WebCore): (CustomElementConstructor): * dom/CustomElementRegistry.cpp: (WebCore::CustomElementRegistry::constructorOf): (WebCore::CustomElementRegistry::createElement): * dom/CustomElementRegistry.h: (WebCore): (CustomElementRegistry): * dom/Document.cpp: Ensured that the document is an HTML. (WebCore::Document::registerElement): * dom/Document.idl: * dom/make_names.pl: (printWrapperFactoryCppFile): * html/HTMLDocument.idl: Moved an API to Document.idl Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/bindings/v8/custom/V8CustomElementConstructorCustom.cpp trunk/Source/WebCore/dom/CustomElementConstructor.cpp trunk/Source/WebCore/dom/CustomElementConstructor.h trunk/Source/WebCore/dom/CustomElementRegistry.cpp trunk/Source/WebCore/dom/CustomElementRegistry.h trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.idl trunk/Source/WebCore/dom/make_names.pl trunk/Source/WebCore/html/HTMLDocument.idl Added Paths trunk/Source/WebCore/bindings/v8/V8CustomElement.cpp trunk/Source/WebCore/bindings/v8/V8CustomElement.h Removed Paths trunk/Source/WebCore/bindings/v8/V8HTMLCustomElement.cpp trunk/Source/WebCore/bindings/v8/V8HTMLCustomElement.h Diff Modified: trunk/Source/WebCore/ChangeLog (145039 => 145040) --- trunk/Source/WebCore/ChangeLog 2013-03-07 05:58:57 UTC (rev 145039) +++ trunk/Source/WebCore/ChangeLog 2013-03-07 06:32:27 UTC (rev 145040) @@ -1,3 +1,51 @@ +2013-03-06 Hajime Morrita morr...@google.com + +Custom Elements Refactoring: CustomElementConstructor API shouldn't bound to HTMLElement +https://bugs.webkit.org/show_bug.cgi?id=111678 + +Reviewed by Kentaro Hara. + +The latest Custom Elements standard supports non-HTML custom elements. Even though current implementation +support only HTML, it'd be better off to make API generic enough to support them. + +This change + +- eliminates HTMLElement from the API signature by replacing it with Element, and +- rename V8HTMLCustomElement to V8CustomElement. + +No new tests, just changing signatures and a class name. + +* WebCore.gypi: +* bindings/v8/V8CustomElement.cpp: Renamed from Source/WebCore/bindings/v8/V8HTMLCustomElement.cpp. +(WebCore): +(WebCore::findWrapperTypeOf): +(WebCore::V8CustomElement::createWrapper): +* bindings/v8/V8CustomElement.h: Renamed from Source/WebCore/bindings/v8/V8HTMLCustomElement.h. +(WebCore): +(V8CustomElement): +(WebCore::V8CustomElement::toV8): +(WebCore::V8CustomElement::wrap): +(WebCore::HTMLCustomElement::wrap): +* bindings/v8/custom/V8CustomElementConstructorCustom.cpp: +(WebCore::V8CustomElementConstructor::callAsFunctionCallback): +* dom/CustomElementConstructor.cpp: +(WebCore::CustomElementConstructor::createElement): +* dom/CustomElementConstructor.h: +(WebCore): +(CustomElementConstructor): +* dom/CustomElementRegistry.cpp: +(WebCore::CustomElementRegistry::constructorOf): +(WebCore::CustomElementRegistry::createElement): +* dom/CustomElementRegistry.h: +(WebCore): +(CustomElementRegistry): +* dom/Document.cpp: Ensured that the document is an HTML. +(WebCore::Document::registerElement): +* dom/Document.idl: +* dom/make_names.pl: +(printWrapperFactoryCppFile): +* html/HTMLDocument.idl: Moved an API to Document.idl + 2013-03-06 Tim Horton timothy_hor...@apple.
[webkit-changes] [144735] trunk/Source/WebCore
Title: [144735] trunk/Source/WebCore Revision 144735 Author morr...@google.com Date 2013-03-05 00:08:15 -0800 (Tue, 05 Mar 2013) Log Message ShadowRoot needs guardRef() and guardDeref() https://bugs.webkit.org/show_bug.cgi?id=109777 Reviewed by Dimitri Glazkov. This change moves m_guardRefCount from Document to TreeScope, which allows ShadowRoot to be guarded by guardRef() mechanism as Document. After r137524, Node referes TreeScope instead of Document. This is natural consequence of the change: It no longer makes sense to guardRef() Document pointer from Node. Detail: - Document::m_guardRefCount and related funcdtions are moved to TreeScope - Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(), TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation. - Moved guardRef() and guardDeref() calls to TreeScope and Node. Note that there are two guarded TreeScope references. One is Node::m_treeScope and another is TreeScope::m_parentTreeScope. The guarded-ref management is now encapsulated in these two classes. No new tests. Covered by existing tests. * WebCore.exp.in: * dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document): (WebCore::Document::dispose): Extracted from removedLastRef() * dom/Document.h: (WebCore::Node::isTreeScope): (WebCore::Node::Node): * dom/DocumentFragment.cpp: (WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ... (WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot. * dom/Node.cpp: (WebCore::Node::~Node): (WebCore::Node::removedLastRef): * dom/Node.h: (WebCore::Node::setTreeScope): * dom/Element.cpp: (WebCore::Element::ensureAttr): This has been wrong and is fixed in this revision since the incorrectness is unveiled by this change. * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing. (WebCore::ShadowRoot::dispose): Added. * dom/ShadowRoot.h: (ShadowRoot): * dom/TreeScope.cpp: (SameSizeAsTreeScope): (WebCore::TreeScope::TreeScope): (WebCore::TreeScope::~TreeScope): (WebCore::TreeScope::dispose): Added. (WebCore::TreeScope::setParentTreeScope): (WebCore::TreeScope::deletionHasBegun): (WebCore::TreeScope::beginDeletion): (WebCore::TreeScope::refCount): Added. * dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined. (WebCore::TreeScope::guardRef): Pulled up from Document. (WebCore::TreeScope::guardDeref): Ditto. (WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount. (WebCore::TreeScope::deletionHasBegun): Added. (WebCore::TreeScope::beginDeletion): Added. (WebCore::TreeScope::removedLastRefToScope): Pulled up from Document. * dom/TreeScopeAdopter.cpp: (WebCore::TreeScopeAdopter::moveTreeToNewScope): (WebCore::TreeScopeAdopter::moveNodeToNewDocument): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.exp.in trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/dom/DocumentFragment.cpp trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/dom/TreeScope.cpp trunk/Source/WebCore/dom/TreeScope.h trunk/Source/WebCore/dom/TreeScopeAdopter.cpp trunk/Source/WebCore/dom/TreeScopeAdopter.h Diff Modified: trunk/Source/WebCore/ChangeLog (144734 => 144735) --- trunk/Source/WebCore/ChangeLog 2013-03-05 07:59:34 UTC (rev 144734) +++ trunk/Source/WebCore/ChangeLog 2013-03-05 08:08:15 UTC (rev 144735) @@ -1,3 +1,71 @@ +2013-03-05 Hajime Morrita morr...@google.com + +ShadowRoot needs guardRef() and guardDeref() +https://bugs.webkit.org/show_bug.cgi?id=109777 + +Reviewed by Dimitri Glazkov. + +This change moves m_guardRefCount from Document to TreeScope, +which allows ShadowRoot to be guarded by guardRef() mechanism as +Document. After r137524, Node referes TreeScope instead of +Document. This is natural consequence of the change: It no longer +makes sense to guardRef() Document pointer from Node. + +Detail: + +- Document::m_guardRefCount and related funcdtions are moved to TreeScope +- Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(), + TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation. +- Moved guardRef() and guardDeref() calls to TreeScope and Node. + Note that there are two guarded TreeScope references. One is + Node::m_treeScope and another is TreeScope::m_parentTreeScope. + The guarded-ref management is now encapsulated in these two classes. + +No new tests. Covered by existing tests. + +* WebCore.exp.in: +* dom/Document.
[webkit-changes] [144889] trunk/Source/WebCore
Title: [144889] trunk/Source/WebCore Revision 144889 Author morr...@google.com Date 2013-03-05 23:53:47 -0800 (Tue, 05 Mar 2013) Log Message Custom Elements: CustomElementConstructor::m_name doesn't have any good use. https://bugs.webkit.org/show_bug.cgi?id=111523 Reviewed by Kentaro Hara. This change removes CustomElementConstructor::m_name and renames m_tagName to m_name. Now generated function name is same as interface name. Originally, m_name was added to specify the generated constructor name. An early version of custom element allows to give the name, but it no longer says anything about that. The rename is to align the semantics of type extension mechanism of Custom Elements, where the name of a custom element isn't necessarily a tag name. No new tests. Just removing old code. * bindings/scripts/CodeGeneratorV8.pm: (GenerateHeader): * dom/CustomElementConstructor.cpp: (WebCore::CustomElementConstructor::create): (WebCore::CustomElementConstructor::CustomElementConstructor): (WebCore::CustomElementConstructor::createElement): * dom/CustomElementConstructor.h: (CustomElementConstructor): (WebCore::CustomElementConstructor::name): * dom/CustomElementRegistry.cpp: (WebCore::CustomElementRegistry::registerElement): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm trunk/Source/WebCore/dom/CustomElementConstructor.cpp trunk/Source/WebCore/dom/CustomElementConstructor.h trunk/Source/WebCore/dom/CustomElementRegistry.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (144888 => 144889) --- trunk/Source/WebCore/ChangeLog 2013-03-06 07:43:43 UTC (rev 144888) +++ trunk/Source/WebCore/ChangeLog 2013-03-06 07:53:47 UTC (rev 144889) @@ -1,3 +1,35 @@ +2013-03-05 Hajime Morrita morr...@google.com + +Custom Elements: CustomElementConstructor::m_name doesn't have any good use. +https://bugs.webkit.org/show_bug.cgi?id=111523 + +Reviewed by Kentaro Hara. + +This change removes CustomElementConstructor::m_name and renames +m_tagName to m_name. Now generated function name is same as interface name. + +Originally, m_name was added to specify the generated constructor +name. An early version of custom element allows to give the name, +but it no longer says anything about that. + +The rename is to align the semantics of type extension mechanism +of Custom Elements, where the name of a custom element isn't +necessarily a tag name. + +No new tests. Just removing old code. + +* bindings/scripts/CodeGeneratorV8.pm: +(GenerateHeader): +* dom/CustomElementConstructor.cpp: +(WebCore::CustomElementConstructor::create): +(WebCore::CustomElementConstructor::CustomElementConstructor): +(WebCore::CustomElementConstructor::createElement): +* dom/CustomElementConstructor.h: +(CustomElementConstructor): +(WebCore::CustomElementConstructor::name): +* dom/CustomElementRegistry.cpp: +(WebCore::CustomElementRegistry::registerElement): + 2013-03-05 Ilya Tikhonovsky loi...@chromium.org Web Inspector: Flame Chart. Provide node context info in a popover when mouse hovers over a flame chart item. Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm (144888 => 144889) --- trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2013-03-06 07:43:43 UTC (rev 144888) +++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2013-03-06 07:53:47 UTC (rev 144889) @@ -537,7 +537,7 @@ my $createWrapperCall = $customWrap ? ${v8InterfaceName}::wrap : ${v8InterfaceName}::createWrapper; my $returningWrapper = $interface-extendedAttributes-{V8WrapAsFunction} ? V8DOMWrapper::toFunction(wrapper) : wrapper; my $returningCreatedWrapperOpening = $interface-extendedAttributes-{V8WrapAsFunction} ? V8DOMWrapper::toFunction( : ; -my $returningCreatedWrapperClosing = $interface-extendedAttributes-{V8WrapAsFunction} ? , impl-name(), isolate) : ; +my $returningCreatedWrapperClosing = $interface-extendedAttributes-{V8WrapAsFunction} ? , \${interfaceName}\, isolate) : ; if ($customWrap) { push(@headerContent, END); Modified: trunk/Source/WebCore/dom/CustomElementConstructor.cpp (144888 => 144889) --- trunk/Source/WebCore/dom/CustomElementConstructor.cpp 2013-03-06 07:43:43 UTC (rev 144888) +++ trunk/Source/WebCore/dom/CustomElementConstructor.cpp 2013-03-06 07:53:47 UTC (rev 144889) @@ -41,17 +41,16 @@ namespace WebCore { -PassRefPtrCustomElementConstructor CustomElementConstructor::create(ScriptState* state, Document* document, const QualifiedName tagName, const String name, const ScriptValue prototype) +PassRefPtrCustomElementConstructor CustomElementConstructor::create(ScriptState* state, Document* document, const QualifiedName name, const ScriptValue prototype) { -RefPtrCustomElementCo
[webkit-changes] [143840] trunk/Source/WebCore
Title: [143840] trunk/Source/WebCore Revision 143840 Author morr...@google.com Date 2013-02-23 02:49:49 -0800 (Sat, 23 Feb 2013) Log Message ShadowRoot needs guardRef() and guardDeref() https://bugs.webkit.org/show_bug.cgi?id=109777 Reviewed by Dimitri Glazkov. This change moves m_guardRefCount from Document to TreeScope, which allows ShadowRoot to be guarded by guardRef() mechanism as Document. After r137524, Node referes TreeScope instead of Document. This is natural consequence of the change: It no longer makes sense to guardRef() Document pointer from Node. Detail: - Document::m_guardRefCount and related funcdtions are moved to TreeScope - Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(), TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation. - Moved guardRef() and guardDeref() calls to TreeScope and Node. Note that there are two guarded TreeScope references. One is Node::m_treeScope and another is TreeScope::m_parentTreeScope. The guarded-ref management is now encapsulated in these two classes. No new tests. Covered by existing tests. * WebCore.exp.in: * dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document): (WebCore::Document::dispose): Extracted from removedLastRef() * dom/Document.h: (WebCore::Node::isTreeScope): (WebCore::Node::Node): * dom/DocumentFragment.cpp: (WebCore::DocumentFragment::DocumentFragment): Remove ASSERT() and move it to ... (WebCore::DocumentFragment::create): ... here, to allow NULL document from ShadowRoot. * dom/Node.cpp: (WebCore::Node::~Node): (WebCore::Node::removedLastRef): * dom/Node.h: (WebCore::Node::setTreeScope): * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::ShadowRoot): Passed NULL document to superclass. This aligns what Document is doing. (WebCore::ShadowRoot::dispose): Added. * dom/ShadowRoot.h: (ShadowRoot): * dom/TreeScope.cpp: (SameSizeAsTreeScope): (WebCore::TreeScope::TreeScope): (WebCore::TreeScope::~TreeScope): (WebCore::TreeScope::dispose): Added. (WebCore::TreeScope::setParentTreeScope): (WebCore::TreeScope::deletionHasBegun): (WebCore::TreeScope::beginDeletion): (WebCore::TreeScope::refCount): Added. * dom/TreeScope.h: Turned m_rootNode to Node* from ContainerNode* for Node::isTreeScope to be inlined. (WebCore::TreeScope::guardRef): Pulled up from Document. (WebCore::TreeScope::guardDeref): Ditto. (WebCore::TreeScope::hasGuardRefCount): Added to hide m_guardRefCount. (WebCore::TreeScope::deletionHasBegun): Added. (WebCore::TreeScope::beginDeletion): Added. (WebCore::TreeScope::removedLastRefToScope): Pulled up from Document. * dom/TreeScopeAdopter.cpp: (WebCore::TreeScopeAdopter::moveTreeToNewScope): (WebCore::TreeScopeAdopter::moveNodeToNewDocument): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.exp.in trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/dom/DocumentFragment.cpp trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/dom/TreeScope.cpp trunk/Source/WebCore/dom/TreeScope.h trunk/Source/WebCore/dom/TreeScopeAdopter.cpp trunk/Source/WebCore/dom/TreeScopeAdopter.h Diff Modified: trunk/Source/WebCore/ChangeLog (143839 => 143840) --- trunk/Source/WebCore/ChangeLog 2013-02-23 09:03:36 UTC (rev 143839) +++ trunk/Source/WebCore/ChangeLog 2013-02-23 10:49:49 UTC (rev 143840) @@ -1,3 +1,69 @@ +2013-02-23 Hajime Morrita morr...@google.com + +ShadowRoot needs guardRef() and guardDeref() +https://bugs.webkit.org/show_bug.cgi?id=109777 + +Reviewed by Dimitri Glazkov. + +This change moves m_guardRefCount from Document to TreeScope, +which allows ShadowRoot to be guarded by guardRef() mechanism as +Document. After r137524, Node referes TreeScope instead of +Document. This is natural consequence of the change: It no longer +makes sense to guardRef() Document pointer from Node. + +Detail: + +- Document::m_guardRefCount and related funcdtions are moved to TreeScope +- Document::removedLastRef is factored out into TreeScope::removedLastRefToScope(), + TreeScope::dispose() and Docuent::dispose(). ShadowRoot also got its own dispose() implementation. +- Moved guardRef() and guardDeref() calls to TreeScope and Node. + Note that there are two guarded TreeScope references. One is + Node::m_treeScope and another is TreeScope::m_parentTreeScope. + The guarded-ref management is now encapsulated in these two classes. + +No new tests. Covered by existing tests. + +* WebCore.exp.in: +* dom/Document.cpp: +(WebCore::Document::Document): +(WebCore::Document::~Document): +(WebCore::Document::dispose): Extracted from removedLastRef() +* dom/Document.h: +(WebCore::N
[webkit-changes] [143311] trunk/Tools
Title: [143311] trunk/Tools Revision 143311 Author morr...@google.com Date 2013-02-19 01:31:36 -0800 (Tue, 19 Feb 2013) Log Message Unreviewed, updated spelling of my name. * Scripts/webkitpy/common/config/committers.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/committers.py Diff Modified: trunk/Tools/ChangeLog (143310 => 143311) --- trunk/Tools/ChangeLog 2013-02-19 09:27:21 UTC (rev 143310) +++ trunk/Tools/ChangeLog 2013-02-19 09:31:36 UTC (rev 143311) @@ -1,3 +1,9 @@ +2013-02-19 Hajime Morrita morr...@google.com + +Unreviewed, updated spelling of my name. + +* Scripts/webkitpy/common/config/committers.py: + 2013-02-18 Ilya Tikhonovsky loi...@chromium.org Unreviewed. Adjust expectations. Modified: trunk/Tools/Scripts/webkitpy/common/config/committers.py (143310 => 143311) --- trunk/Tools/Scripts/webkitpy/common/config/committers.py 2013-02-19 09:27:21 UTC (rev 143310) +++ trunk/Tools/Scripts/webkitpy/common/config/committers.py 2013-02-19 09:31:36 UTC (rev 143311) @@ -538,7 +538,7 @@ Reviewer(George Staikos, [stai...@kde.org, stai...@webkit.org]), Reviewer(Gustavo Noronha Silva, [g...@gnome.org, k...@webkit.org, gustavo.noro...@collabora.co.uk, gustavo.noro...@collabora.com], kov), Reviewer(Gyuyoung Kim, [gyuyoung@samsung.com, gyuyoung@webkit.org], gyuyoung), -Reviewer(Hajime Morita, [morr...@google.com, morr...@chromium.org], morrita), +Reviewer(Hajime Morrita, [morr...@google.com, morr...@chromium.org], morrita), Reviewer(Holger Freyther, [ze...@selfish.org, ze...@webkit.org], zecke), Reviewer(James Robinson, [jam...@chromium.org, jam...@google.com], jamesr), Reviewer(Jan Alonzo, [jmalo...@gmail.com, jmalo...@webkit.org], janm), ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [142940] trunk
Title: [142940] trunk Revision 142940 Author morr...@google.com Date 2013-02-14 16:42:03 -0800 (Thu, 14 Feb 2013) Log Message [V8] Assertion failure on an exception is thrown https://bugs.webkit.org/show_bug.cgi?id=109129 Source/WebCore: An assertion in V8AbstractEventListener is wrong. This change turns it into an error check. Reviewed by Kentaro Hara. Test: fast/events/onerror-no-constructor.html * bindings/v8/V8AbstractEventListener.cpp: (WebCore::V8AbstractEventListener::handleEvent): LayoutTests: Reviewed by Kentaro Hara. * fast/events/onerror-no-constructor-expected.txt: Added. * fast/events/onerror-no-constructor.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/v8/V8AbstractEventListener.cpp Added Paths trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt trunk/LayoutTests/fast/events/onerror-no-constructor.html Diff Modified: trunk/LayoutTests/ChangeLog (142939 => 142940) --- trunk/LayoutTests/ChangeLog 2013-02-15 00:38:19 UTC (rev 142939) +++ trunk/LayoutTests/ChangeLog 2013-02-15 00:42:03 UTC (rev 142940) @@ -1,3 +1,13 @@ +2013-02-14 Hajime Morrita morr...@google.com + +[V8] Assertion failure on an exception is thrown +https://bugs.webkit.org/show_bug.cgi?id=109129 + +Reviewed by Kentaro Hara. + +* fast/events/onerror-no-constructor-expected.txt: Added. +* fast/events/onerror-no-constructor.html: Added. + 2013-02-14 Philip Rogers p...@google.com Rebaseline 9 SVG tests after r142765 Added: trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt (0 => 142940) --- trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt 2013-02-15 00:42:03 UTC (rev 142940) @@ -0,0 +1,2 @@ +CONSOLE MESSAGE: line 20: Uncaught PASS if this is reported as an uncaught exception. + Added: trunk/LayoutTests/fast/events/onerror-no-constructor.html (0 => 142940) --- trunk/LayoutTests/fast/events/onerror-no-constructor.html (rev 0) +++ trunk/LayoutTests/fast/events/onerror-no-constructor.html 2013-02-15 00:42:03 UTC (rev 142940) @@ -0,0 +1,23 @@ +!DOCTYPE html +html +body +div id=container/div +script +if (window.testRunner) +window.testRunner.dumpAsText(); +window._onerror_ = function(message) { console.log(FAIL); } + +Object.defineProperty(Object.prototype, prototype, { +get: function() { console.log(FAIL); }, +set: function() { console.log(FAIL); } +}); + +Object.defineProperty(Object.prototype, constructor, { +get: function() { console.log(FAIL); }, +set: function() { console.log(FAIL); } +}); + +throw PASS if this is reported as an uncaught exception.; +/script +/body +/html Modified: trunk/Source/WebCore/ChangeLog (142939 => 142940) --- trunk/Source/WebCore/ChangeLog 2013-02-15 00:38:19 UTC (rev 142939) +++ trunk/Source/WebCore/ChangeLog 2013-02-15 00:42:03 UTC (rev 142940) @@ -1,3 +1,17 @@ +2013-02-14 Hajime Morrita morr...@google.com + +[V8] Assertion failure on an exception is thrown +https://bugs.webkit.org/show_bug.cgi?id=109129 + +An assertion in V8AbstractEventListener is wrong. This change turns it into an error check. + +Reviewed by Kentaro Hara. + +Test: fast/events/onerror-no-constructor.html + +* bindings/v8/V8AbstractEventListener.cpp: +(WebCore::V8AbstractEventListener::handleEvent): + 2013-02-14 Kentaro Hara hara...@chromium.org [V8] CodeGeneratorV8.pm can assume that DOMWindow has [CheckSecurity] Modified: trunk/Source/WebCore/bindings/v8/V8AbstractEventListener.cpp (142939 => 142940) --- trunk/Source/WebCore/bindings/v8/V8AbstractEventListener.cpp 2013-02-15 00:38:19 UTC (rev 142939) +++ trunk/Source/WebCore/bindings/v8/V8AbstractEventListener.cpp 2013-02-15 00:42:03 UTC (rev 142940) @@ -98,8 +98,8 @@ // Get the V8 wrapper for the event object. v8::Handlev8::Value jsEvent = toV8(event, v8::Handlev8::Object(), v8Context-GetIsolate()); -ASSERT(!jsEvent.IsEmpty()); - +if (jsEvent.IsEmpty()) +return; invokeEventHandler(context, event, jsEvent); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [142953] trunk/LayoutTests
Title: [142953] trunk/LayoutTests Revision 142953 Author morr...@google.com Date 2013-02-14 19:07:49 -0800 (Thu, 14 Feb 2013) Log Message Unreviewed rebaselining following r142940. * fast/events/onerror-no-constructor-expected.txt: * platform/chromium/fast/events/onerror-no-constructor-expected.txt: Copied from LayoutTests/fast/events/onerror-no-constructor-expected.txt. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt Added Paths trunk/LayoutTests/platform/chromium/fast/events/onerror-no-constructor-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (142952 => 142953) --- trunk/LayoutTests/ChangeLog 2013-02-15 02:38:02 UTC (rev 142952) +++ trunk/LayoutTests/ChangeLog 2013-02-15 03:07:49 UTC (rev 142953) @@ -1,3 +1,10 @@ +2013-02-14 Hajime Morrita morr...@google.com + +Unreviewed rebaselining following r142940. + +* fast/events/onerror-no-constructor-expected.txt: +* platform/chromium/fast/events/onerror-no-constructor-expected.txt: Copied from LayoutTests/fast/events/onerror-no-constructor-expected.txt. + 2013-02-14 Christian Biesinger cbiesin...@chromium.org Convert media controls from DeprecatedFlexibleBox to FlexibleBox Modified: trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt (142952 => 142953) --- trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt 2013-02-15 02:38:02 UTC (rev 142952) +++ trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt 2013-02-15 03:07:49 UTC (rev 142953) @@ -1,2 +1,3 @@ -CONSOLE MESSAGE: line 20: Uncaught PASS if this is reported as an uncaught exception. +CONSOLE MESSAGE: line 8: FAIL +CONSOLE MESSAGE: PASS if this is reported as an uncaught exception. Copied: trunk/LayoutTests/platform/chromium/fast/events/onerror-no-constructor-expected.txt (from rev 142952, trunk/LayoutTests/fast/events/onerror-no-constructor-expected.txt) (0 => 142953) --- trunk/LayoutTests/platform/chromium/fast/events/onerror-no-constructor-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium/fast/events/onerror-no-constructor-expected.txt 2013-02-15 03:07:49 UTC (rev 142953) @@ -0,0 +1,2 @@ +CONSOLE MESSAGE: line 20: Uncaught PASS if this is reported as an uncaught exception. + ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [142726] trunk
Title: [142726] trunk Revision 142726 Author morr...@google.com Date 2013-02-12 23:34:47 -0800 (Tue, 12 Feb 2013) Log Message [Internals] setShadowDOMEnabled() shouldn't be used except a few tests. https://bugs.webkit.org/show_bug.cgi?id=109642 Reviewed by Kent Tamura. Source/WebCore: InternalSettings.setShadowDOMEnabled() shouldn't be called after any relevant DOM bindings are touched. However for fuzzers, it isn't trivial to regulate its behavior. This change whitelists the URL of running test for prevent unintended API calls. This doesn't hurt the Internals usability since the API is called from just a couple of tests and the number isn't expected to grow. Test: fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html * testing/InternalSettings.cpp: (WebCore::urlIsWhitelisted): (WebCore): (WebCore::InternalSettings::setShadowDOMEnabled): LayoutTests: * fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt: Added. * fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/testing/InternalSettings.cpp Added Paths trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html Diff Modified: trunk/LayoutTests/ChangeLog (142725 => 142726) --- trunk/LayoutTests/ChangeLog 2013-02-13 07:24:02 UTC (rev 142725) +++ trunk/LayoutTests/ChangeLog 2013-02-13 07:34:47 UTC (rev 142726) @@ -1,3 +1,13 @@ +2013-02-12 Hajime Morrita morr...@google.com + +[Internals] setShadowDOMEnabled() shouldn't be used except a few tests. +https://bugs.webkit.org/show_bug.cgi?id=109642 + +Reviewed by Kent Tamura. + +* fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt: Added. +* fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html: Added. + 2013-02-12 Vsevolod Vlasov vse...@chromium.org Web Inspector: Introduce version controller to migrate settings versions. Added: trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt (0 => 142726) --- trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist-expected.txt 2013-02-13 07:34:47 UTC (rev 142726) @@ -0,0 +1,10 @@ +Ensure that setShadowDOMEnabled() is only allowed for a set of tests. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS window.internals.settings.setShadowDOMEnabled(false) threw exception Error: InvalidAccessError: DOM Exception 15. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html (0 => 142726) --- trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html 2013-02-13 07:34:47 UTC (rev 142726) @@ -0,0 +1,13 @@ +!DOCTYPE html +html +head +script src="" +/head +body +script +description(Ensure that setShadowDOMEnabled() is only allowed for a set of tests.) +shouldThrow(window.internals.settings.setShadowDOMEnabled(false), 'Error: InvalidAccessError: DOM Exception 15'); +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (142725 => 142726) --- trunk/Source/WebCore/ChangeLog 2013-02-13 07:24:02 UTC (rev 142725) +++ trunk/Source/WebCore/ChangeLog 2013-02-13 07:34:47 UTC (rev 142726) @@ -1,3 +1,26 @@ +2013-02-12 Hajime Morrita morr...@google.com + +[Internals] setShadowDOMEnabled() shouldn't be used except a few tests. +https://bugs.webkit.org/show_bug.cgi?id=109642 + +Reviewed by Kent Tamura. + +InternalSettings.setShadowDOMEnabled() shouldn't be called after +any relevant DOM bindings are touched. However for fuzzers, it +isn't trivial to regulate its behavior. + +This change whitelists the URL of running test for prevent +unintended API calls. This doesn't hurt the Internals usability +since the API is called from just a couple of tests and the number +isn't expected to grow. + +Test: fast/dom/shadow/shadow-dom-enabled-flag-whitelist.html + +* testing/InternalSettings.cpp: +(WebCore::urlIsWhitelisted): +(WebCore): +(WebCore::InternalSettings::setShadowDOMEnabled): + 2013-02-12 Vsevolod Vlasov vse...@chromium.org Web Inspector: Introduce version controller to migrate settings versions. Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (142725 => 142726) --- trunk/Source/WebCore/testing/InternalSettings.cpp 2013-02-13 07:24:02 UTC (rev 142725) +++ trunk/Source/WebCore/testing/InternalSettings.cpp 2013-02-13 07:34:47 UTC (rev 142726) @@ -195,10 +195,22 @@ settings()-setMockScrol
[webkit-changes] [141873] trunk/Source/WebCore
Title: [141873] trunk/Source/WebCore Revision 141873 Author morr...@google.com Date 2013-02-05 01:19:31 -0800 (Tue, 05 Feb 2013) Log Message Unreviewed Linux ASAN build fix for r141783. * platform/RefCountedSupplement.h: (Wrapper): * platform/Supplementable.h: (Supplement): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/RefCountedSupplement.h trunk/Source/WebCore/platform/Supplementable.h Diff Modified: trunk/Source/WebCore/ChangeLog (141872 => 141873) --- trunk/Source/WebCore/ChangeLog 2013-02-05 09:13:47 UTC (rev 141872) +++ trunk/Source/WebCore/ChangeLog 2013-02-05 09:19:31 UTC (rev 141873) @@ -1,3 +1,12 @@ +2013-02-05 Hajime Morrita morr...@google.com + +Unreviewed Linux ASAN build fix for r141783. + +* platform/RefCountedSupplement.h: +(Wrapper): +* platform/Supplementable.h: +(Supplement): + 2013-02-05 Mike West mk...@chromium.org [chromium] Unreviewed: Fix broken SVG-disabled build. Modified: trunk/Source/WebCore/platform/RefCountedSupplement.h (141872 => 141873) --- trunk/Source/WebCore/platform/RefCountedSupplement.h 2013-02-05 09:13:47 UTC (rev 141872) +++ trunk/Source/WebCore/platform/RefCountedSupplement.h 2013-02-05 09:19:31 UTC (rev 141873) @@ -44,7 +44,7 @@ public: explicit Wrapper(PassRefPtrThisType wrapped) : m_wrapped(wrapped) { } virtual ~Wrapper() { m_wrapped-hostDestroyed(); } -#if !ASSERT_DISABLED +#if !ASSERT_DISABLED || defined(ADDRESS_SANITIZER) virtual bool isRefCountedWrapper() const OVERRIDE { return true; } #endif ThisType* wrapped() const { return m_wrapped.get(); } Modified: trunk/Source/WebCore/platform/Supplementable.h (141872 => 141873) --- trunk/Source/WebCore/platform/Supplementable.h 2013-02-05 09:13:47 UTC (rev 141872) +++ trunk/Source/WebCore/platform/Supplementable.h 2013-02-05 09:19:31 UTC (rev 141873) @@ -79,7 +79,7 @@ class Supplement { public: virtual ~Supplement() { } -#if !ASSERT_DISABLED +#if !ASSERT_DISABLED || defined(ADDRESS_SANITIZER) virtual bool isRefCountedWrapper() const { return false; } #endif ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141859] trunk/LayoutTests
Title: [141859] trunk/LayoutTests Revision 141859 Author morr...@google.com Date 2013-02-04 22:35:18 -0800 (Mon, 04 Feb 2013) Log Message [Chromium] Unreviewed rebaselining. * platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt: Added. * platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt: Added. * platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt: Added. * platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt: Added. * platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt: Added. * platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt trunk/LayoutTests/platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt trunk/LayoutTests/platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (141858 => 141859) --- trunk/LayoutTests/ChangeLog 2013-02-05 06:20:33 UTC (rev 141858) +++ trunk/LayoutTests/ChangeLog 2013-02-05 06:35:18 UTC (rev 141859) @@ -1,3 +1,14 @@ +2013-02-04 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed rebaselining. + +* platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt: Added. +* platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt: Added. +* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/scrolling-without-painting-expected.txt: Added. +* platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/updating-scrolling-content-expected.txt: Added. +* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/scrolling-without-painting-expected.txt: Added. +* platform/chromium-linux/platform/chromium/virtual/softwarecompositing/overflow/updating-scrolling-content-expected.txt: Added. + 2013-02-04 Kent Tamura tk...@chromium.org Fix crash by select type change on focus Added: trunk/LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt (0 => 141859) --- trunk/LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-linux/compositing/overflow/scrolling-without-painting-expected.txt 2013-02-05 06:35:18 UTC (rev 141859) @@ -0,0 +1,48 @@ +(GraphicsLayer + (bounds 800.00 600.00) + (children 1 +(GraphicsLayer + (bounds 800.00 600.00) + (contentsOpaque 1) + (children 1 +(GraphicsLayer + (position 8.00 8.00) + (bounds 202.00 202.00) + (drawsContent 1) + (children 4 +(GraphicsLayer + (position 1.00 1.00) + (bounds 200.00 200.00) + (children 1 +(GraphicsLayer + (position 0.00 -25.00) + (bounds 185.00 1025.00) + (drawsContent 1) +) + ) +) +(GraphicsLayer + (position 1.00 186.00) + (bounds 185.00 15.00) + (drawsContent 1) +) +(GraphicsLayer + (position 186.00 1.00) + (bounds 15.00 185.00) + (drawsContent 1) + (repaint rects +(rect 0.00 0.00 15.00 185.00) + ) +) +(GraphicsLayer + (position 186.00 186.00) + (bounds 15.00 15.00) + (drawsContent 1) +) + ) +) + ) +) + ) +) + Added: trunk/LayoutTests/platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt (0 => 141859) --- trunk/LayoutTests/platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-linux/compositing/overflow/updating-scrolling-content-expected.txt 2013-02-05 06:35:18 UTC (rev 141859) @@ -0,0 +1,50 @@ +(Grap
[webkit-changes] [141861] trunk/LayoutTests
Title: [141861] trunk/LayoutTests Revision 141861 Author morr...@google.com Date 2013-02-04 23:28:55 -0800 (Mon, 04 Feb 2013) Log Message [Chromium] Unreviewed, skipping heap-snapshot-with-detached-dom-tree.html * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141860 => 141861) --- trunk/LayoutTests/ChangeLog 2013-02-05 06:53:56 UTC (rev 141860) +++ trunk/LayoutTests/ChangeLog 2013-02-05 07:28:55 UTC (rev 141861) @@ -1,3 +1,9 @@ +2013-02-04 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, skipping heap-snapshot-with-detached-dom-tree.html + +* platform/chromium/TestExpectations: + 2013-02-04 Hajime Morrita morr...@google.com [Chromium] Unreviewed rebaselining. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141860 => 141861) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-05 06:53:56 UTC (rev 141860) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-05 07:28:55 UTC (rev 141861) @@ -4336,3 +4336,5 @@ webkit.org/b/108876 [ Linux ] media/track/track-cues-cuechange.html [ Slow ] webkit.org/b/108876 [ Linux ] media/track/track-cues-enter-exit.html [ Slow ] + +webkit.org/b/108912 inspector-protocol/heap-profiler/heap-snapshot-with-detached-dom-tree.html [ Pass Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141725] trunk/LayoutTests
Title: [141725] trunk/LayoutTests Revision 141725 Author morr...@google.com Date 2013-02-03 17:54:56 -0800 (Sun, 03 Feb 2013) Log Message [Chromium] Unreviewed, marking block-test.html as a fail. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141724 => 141725) --- trunk/LayoutTests/ChangeLog 2013-02-04 01:37:58 UTC (rev 141724) +++ trunk/LayoutTests/ChangeLog 2013-02-04 01:54:56 UTC (rev 141725) @@ -1,3 +1,9 @@ +2013-02-03 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking block-test.html as a fail. + +* platform/chromium/TestExpectations: + 2013-02-03 Noel Gordon noel.gor...@gmail.com [chromium] Skip editing/inserting/smart-link-when-caret-is-moved-before-URL.html Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141724 => 141725) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 01:37:58 UTC (rev 141724) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 01:54:56 UTC (rev 141725) @@ -1134,7 +1134,8 @@ # Due to the differences in initialization checks in KURL and googleurl. # Note: this test was also marked as flaky on WIN RELEASE above, BUGCR31342. -crbug.com/39423 security/block-test.html [ Timeout ] +# See also https://webkit.org/b/108780 +crbug.com/39423 security/block-test.html [ Timeout Failure ] crbug.com/20345 http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html [ Failure ] webkit.org/b/42769 http/tests/security/401-logout/401-logout.php [ Timeout ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141726] trunk/LayoutTests
Title: [141726] trunk/LayoutTests Revision 141726 Author morr...@google.com Date 2013-02-03 18:15:07 -0800 (Sun, 03 Feb 2013) Log Message [Chromium] Unreviewed, marking grid-preferred-logical-widths.html as a fail. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141725 => 141726) --- trunk/LayoutTests/ChangeLog 2013-02-04 01:54:56 UTC (rev 141725) +++ trunk/LayoutTests/ChangeLog 2013-02-04 02:15:07 UTC (rev 141726) @@ -1,3 +1,9 @@ +2013-02-03 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking grid-preferred-logical-widths.html as a fail. + +* platform/chromium/TestExpectations: + 2013-02-03 Hajime Morrita morr...@google.com [Chromium] Unreviewed, marking block-test.html as a fail. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141725 => 141726) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 01:54:56 UTC (rev 141725) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 02:15:07 UTC (rev 141726) @@ -4344,3 +4344,5 @@ webkit.org/b/108424 media/video-error-does-not-exist.html [ Failure Crash ] webkit.org/b/108594 [ Debug ] tables/table-section-overflow-clip-crash.html [ Crash ] + +webkit.org/b/108781 [ Win ] fast/css-grid-layout/grid-preferred-logical-widths.html [ Timeout ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141728] trunk/LayoutTests
Title: [141728] trunk/LayoutTests Revision 141728 Author morr...@google.com Date 2013-02-03 18:55:10 -0800 (Sun, 03 Feb 2013) Log Message [Chromium] Unreviewed rebaselining. * platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png Diff Modified: trunk/LayoutTests/ChangeLog (141727 => 141728) --- trunk/LayoutTests/ChangeLog 2013-02-04 02:16:45 UTC (rev 141727) +++ trunk/LayoutTests/ChangeLog 2013-02-04 02:55:10 UTC (rev 141728) @@ -1,3 +1,9 @@ +2013-02-03 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed rebaselining. + +* platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png: Added. + 2013-02-03 Hajime Morrita morr...@google.com [Chromium] Unreviewed, marking grid-preferred-logical-widths.html as a fail. Added: trunk/LayoutTests/platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png (0 => 141728) --- trunk/LayoutTests/platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png (rev 0) +++ trunk/LayoutTests/platform/chromium-mac-lion/fast/css/resize-corner-tracking-transformed-iframe-expected.png 2013-02-04 02:55:10 UTC (rev 141728) @@ -0,0 +1,82 @@ +\x89PNG + + +IHDR X \x9Av\x82p )tEXtchecksum 7effc48798d58699cb3761c544293e96\xDB\xC9\xFCm IDATx\x9C\xEC\xDD{|Tս\xF7\xF1\xDFNr3@@9\xB4OcHE{\xB0E\xC8\xF1V\xA8 \xD4\xE2\xE5\x9C\xC1V\xA8TK\xAD\xB5\x80\xB5\x{D875}\xA2=\xDEj\xBD\xB0\xF0\xD4\xD2@-E\x91\xAAPi+\x8A\x97*b\x8AQƠEk\x86\x84@\xEE\xF3}\xFE\xD8\xCC$\x99\\x89aef\xF2y\xBF^\xBE\xC6=3\xD9{\xED\xC9\xFA\xEE\xB5\xD6^\x9E$8\x90\xD4\xD9\xD0u@8C \xE0 \x803\xCE@8C \xE0LJk_X\xB6l\x99\x8BrH \xDF\xF9\xCEwZ\xFC\xBC\xD5 bf\xF6\x8Do|\xA3C + \xA0k\xF3\x98 \x80+\x8C \xE0 \x803\xCE@8C \xE0 \x803\xCE@8C \xE0 \x803\xCE@8C \xE0 \x803\xCE@8C \xE0L\xDC\x90\xF8\xC0\x9Ey\xE6+..\xEE\xEC\xA2h\xA7V\xC8\xFC\xC7\xD8\xE0\xC1\x83-;;ۮ\xB9\xE6KNN\xB6\xCF\xFE\xF36m\xDA4\x9B0a\x82\x9Dt\xD2I\xB6jժZ\xC8E\x8Bٺu\xEB쥗^\xB2aÆYee\xE5\xA7^gm\xAD\xD9[o\x85\xEC\x89'\xAAm\xFF\xFEP\x94\xF2ӓ\xCCJK\xD5h\xF9\xE8Q\xB3g\x9E\xA9\xB1ŋ+\xAD\xA8(6\xCA\xFAi\xB4\xB6?55f{\xF6\x84l\xED\xDAj;p@M\xAC\xC1,#\x87!\xFA\x9CE\x8B\xA5\xEB,\xAF\xA3\xA6\xCE\xF3{\xB6\xB6\xED\xDF\xBF\xBFsg\xAD=\xF2H\x95\xBD\xF1F3?܊C\x87d\xF9K\xB5=\xFDt\xB59\xD2\xF8\xF3\xBD{C\xF6\xC7?V٫\xAF6\xBD\xFE\xD67\xF3\xAF\xFD;jm\xE7\xCE\x{195C7D}B\xB1\xF2*\x8E\x85B!۹s\xA7=\xF2\xC8#\xF6\xC6otZ9\xDE\xFF\xFDN\xDBv\xB4\x9A\x9A۳g\x8F\xAD]\xBB\xD68\xD0)eh\xEA\xDA~\xFD\xF5\xD7\xED\xF1\xC7\xE7\x86ЉZ + \xBDz\xF5\xB2ݻw[^^\x9E=\xFC\xF0\xC3ֽ{w3f\x8C=\xFA裶y\xF3f{\xE4\x91G\xAC\xBC\xBC\xBC\xDD8r\xE4\x88=\xF5\xD4S\xCD~~\xF8\xF0a\x9B?\xBE]\xFD\xF5\xF6\xF3\x9F\xFFܶn\xDDj'\x9DtR\xBB\xB7V^n\xB6ys\xB5}\xF3\x9Beֳ\xA7\xF7\xA9\xD7\xD7\xFE\xFC\xE7j[\xB2\xA4\xB2\xD1rR\x92Y Pk?\xFA\xD1QKK\x8B\x9BF\xABf\xB5\xB6?\x87\xCB\xBCʾ\xFD\xED2\xEB۷\xF1\xB9)(\xA8\xB5\xB4\xB4C\xF6\xC1\xCDW\xFC]\x89g\xD1b\xE9:\x8B\xB7\xEB(\xFA\xF8\xA1\xEC\xFB\xDF?j\xC8n\xB9\xA5\xDCz\xA8\xB2\xC5\xEF\xD7 +\xF9\xC1\xE5\x9Ak\x8EXr\xF2\xF1\x97\xE5\xC9'\xABm\xEA\xD42;\xE5\x94$\xFB\xDC\xE7\x92lƌ2\xFB\xF8cE\xD6\xFD\xBD\xEF\xB5\xCB.;l\xDF\xFF\xFEQ;\xEF\xBCR\xBB\xFB\xEE\x8A\xDBn\xE9\xF3\xB0ݻkm\xC1\x82r9\xB2\xD4\xFE\xDF\xFFs@ + + +,--\xCD\xF8\xE0g\xDBLD\xA1P\xC8\xDE{\xEF\xBDȍ\xBA\xCE2l\xD80{\xE7\x9Dw:m\xFB\xF5|\xD8\xFCq\xFB\xF6\xB7\xBFm}\xFB\xF6u\xBE\xFD\xA6\xAE\xED\xDF\xFC\xE67\xF6\xEC\xB3\xCFZqq\xB1͝;\xD7y\x99 \xF8Z\xAD\x85̝;\xD7\xFA\xF7\xEF\xDF\xEC\xE7\x93M\xB2\x91#G\xB6k\xE3UUU6u\xEAT{\xED\xB5ך\xFDή]\xBB\xAC\xB6\xB6\xD6ϯ\xBC\x9Dq\xC6\xED\xDAV\xB4}\xCCz\xF7\xF6,++\xD9N9\xA5\xF9\x8Aa\xF4\x9D\xC8ygrŊJ\xCB\xC99\xA9\xD1r\x8F\xFE]\xF6ѣS\xEC\xE4\x93O\xD8\xE6\x9Dim\xFA\xF7\xF7\xACgO\xB3/L\xB1~\xC6\xC9v\xDF}=\xED\xD4S\xEBΛ\xEB;\xC6a\xD1\xE7,Z[\xAF3\xE2\xED:\x8A\xCFk\xD6T\xD9ѣ\xB2\xF3\xCFO\xB6\xEC\xEC\xEE\xF6ӟ\x967h i\xEA\xBAKI1;rD\x96\x9E\x9EdÆ_\xE5p\xE7\xCEZ\xBB\xF2\xCA2\xFB\xC3\xFAؿ\xFD[\xB2 +\x96l\xA3G\xA7ؚ5Uff\xF6\xC8#U\xF6\xEDow\xB7\xB7\xDF\xEEk\x{1B371C}\xEEv\xCF=VVfm\xFAlذd7\xAE\x9B%'\x9BM\x98\xD0\xED\xB8\xCA\xF8i\x9Cq\xC6v\xDF}\xF7٩\xA7\x9E\xEAl\x9B\xB1f\xE7Ν\x9Fz)))v\xE4\xC8KOO\xB7aÆu@\xA9\xDA'--\xCDY\xEE\x88}k\xAF\xFE\xFD\xFB[Ϟ=\xED\xC2/\xB4\xDEM\xFD2?\xC1\xA2\xAF\xEDݻwۃhs\xE6̱Y\xB3f\xD9ҥK\x9D\x97 \x80/\xA5\xB5/\x8C=\xBA\xC5ϻu\xEBf\xE7\x9Dw\x9E\x99\xF9\xE34\xEE\xBB\xEF+,,\xB4C\x87\xD9o~\xF35j\x94\x99\x99\xAD^\xBD\xDAJJJ\xEC\xF0\xE1Ö\x97\x97g/\xBD\xF4\x92=\xF8\xE0\x83\xF6\xFE\xD58`EEE\xB6x\xF1\xE2\xBF\xA4\x96/_n\x8F?\xFE\xB8\xD5\xD4\xD49s\xACgϞv\xCF=\xF7Xii\xA9\xFD\xECg?\xB3^\xBDz\xD9;\xEF\xBCc\x83\xB6{\xEE\xB9\xC7z\xF7\xEEm۶
[webkit-changes] [141737] trunk/LayoutTests
Title: [141737] trunk/LayoutTests Revision 141737 Author morr...@google.com Date 2013-02-03 22:02:17 -0800 (Sun, 03 Feb 2013) Log Message [Chromium] Unreviewed, marking terminate-during-sync-operation.html as timing out. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141736 => 141737) --- trunk/LayoutTests/ChangeLog 2013-02-04 05:59:19 UTC (rev 141736) +++ trunk/LayoutTests/ChangeLog 2013-02-04 06:02:17 UTC (rev 141737) @@ -1,3 +1,9 @@ +2013-02-03 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking terminate-during-sync-operation.html as timing out. + +* platform/chromium/TestExpectations: + 2013-02-03 Hajime Morrita morr...@google.com [Chromium] Unreviewed rebaselining. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141736 => 141737) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 05:59:19 UTC (rev 141736) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 06:02:17 UTC (rev 141737) @@ -4345,4 +4345,5 @@ webkit.org/b/108424 media/video-error-does-not-exist.html [ Failure Crash ] webkit.org/b/108594 [ Debug ] tables/table-section-overflow-clip-crash.html [ Crash ] -webkit.org/b/108781 [ Win ] fast/css-grid-layout/grid-preferred-logical-widths.html [ Timeout ] \ No newline at end of file +webkit.org/b/108781 [ Win ] fast/css-grid-layout/grid-preferred-logical-widths.html [ Timeout ] +webkit.org/b/108789 [ Win Mac ] http/tests/workers/terminate-during-sync-operation.html [ Pass Timeout ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141740] trunk/LayoutTests
Title: [141740] trunk/LayoutTests Revision 141740 Author morr...@google.com Date 2013-02-03 22:17:14 -0800 (Sun, 03 Feb 2013) Log Message [Chromium] Unreviewed, marking some as timing out. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141739 => 141740) --- trunk/LayoutTests/ChangeLog 2013-02-04 06:16:10 UTC (rev 141739) +++ trunk/LayoutTests/ChangeLog 2013-02-04 06:17:14 UTC (rev 141740) @@ -1,3 +1,9 @@ +2013-02-03 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking some as timing out. + +* platform/chromium/TestExpectations: + 2013-02-03 Hajime Morrita morr...@google.com [Chromium] Unreviewed, marking terminate-during-sync-operation.html as timing out. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141739 => 141740) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 06:16:10 UTC (rev 141739) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-04 06:17:14 UTC (rev 141740) @@ -3798,6 +3798,7 @@ webkit.org/b/96441 [ Win Android Debug ] fast/hidpi/gradient-with-scaled-ancestor.html [ ImageOnlyFailure ] webkit.org/b/96441 [ Linux Win ] platform/chromium/virtual/gpu/fast/hidpi/gradient-with-scaled-ancestor.html [ ImageOnlyFailure ] +webkit.org/b/96441 [ Win7 Debug ] platform/chromium/virtual/gpu/fast/hidpi/gradient-with-scaled-ancestor.html [ Timeout Pass ] webkit.org/b/96950 [ Linux ] http/tests/cache/cancel-during-revalidation-succeeded.html [ Failure Pass ] @@ -4347,3 +4348,4 @@ webkit.org/b/108781 [ Win ] fast/css-grid-layout/grid-preferred-logical-widths.html [ Timeout ] webkit.org/b/108789 [ Win Mac ] http/tests/workers/terminate-during-sync-operation.html [ Pass Timeout ] +webkit.org/b/108790 [ Win7 Debug ] platform/chromium/virtual/gpu/fast/hidpi/gradient-with-scaled-ancestor.html [ Pass Timeout ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141549] trunk/LayoutTests
Title: [141549] trunk/LayoutTests Revision 141549 Author morr...@google.com Date 2013-02-01 00:30:09 -0800 (Fri, 01 Feb 2013) Log Message Unreviewed, rebaselining a result. * platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (141548 => 141549) --- trunk/LayoutTests/ChangeLog 2013-02-01 08:27:10 UTC (rev 141548) +++ trunk/LayoutTests/ChangeLog 2013-02-01 08:30:09 UTC (rev 141549) @@ -1,3 +1,9 @@ +2013-02-01 Hajime Morrita morr...@google.com + +Unreviewed, rebaselining a result. + +* platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt: + 2013-02-01 Vsevolod Vlasov vse...@chromium.org Web Inspector: Use String.prototype.startsWith instead of String.prototype.indexOf when possible Modified: trunk/LayoutTests/platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt (141548 => 141549) --- trunk/LayoutTests/platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt 2013-02-01 08:27:10 UTC (rev 141548) +++ trunk/LayoutTests/platform/chromium/fast/js/kde/inbuilt_function_tostring-expected.txt 2013-02-01 08:30:09 UTC (rev 141549) @@ -63,7 +63,7 @@ PASS StripSpaces(Boolean.prototype.toString.toString()) is functiontoString(){[nativecode]} PASS StripSpaces(Boolean.prototype.valueOf.toString()) is functionvalueOf(){[nativecode]} PASS StripSpaces(Number.prototype.toString.toString()) is functiontoString(){[nativecode]} -FAIL StripSpaces(Number.prototype.toLocaleString.toString()) should be functiontoLocaleString(){[nativecode]}. Was function(locales,options){returnformatNumber(newnumberFormat(locales,options),this)}. +FAIL StripSpaces(Number.prototype.toLocaleString.toString()) should be functiontoLocaleString(){[nativecode]}. Was function(locales,options){varnumberFormat=cachedOrNewService('numberformat',locales,options)returnformatNumber(numberFormat,this)}. PASS StripSpaces(Number.prototype.valueOf.toString()) is functionvalueOf(){[nativecode]} PASS StripSpaces(Number.prototype.toFixed.toString()) is functiontoFixed(){[nativecode]} PASS StripSpaces(Number.prototype.toExponential.toString()) is functiontoExponential(){[nativecode]} @@ -90,9 +90,9 @@ PASS StripSpaces(Date.prototype.toUTCString.toString()) is functiontoUTCString(){[nativecode]} PASS StripSpaces(Date.prototype.toDateString.toString()) is functiontoDateString(){[nativecode]} PASS StripSpaces(Date.prototype.toTimeString.toString()) is functiontoTimeString(){[nativecode]} -FAIL StripSpaces(Date.prototype.toLocaleString.toString()) should be functiontoLocaleString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'any','all')}. -FAIL StripSpaces(Date.prototype.toLocaleDateString.toString()) should be functiontoLocaleDateString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'date','date')}. -FAIL StripSpaces(Date.prototype.toLocaleTimeString.toString()) should be functiontoLocaleTimeString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'time','time')}. +FAIL StripSpaces(Date.prototype.toLocaleString.toString()) should be functiontoLocaleString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'any','all','dateformatall')}. +FAIL StripSpaces(Date.prototype.toLocaleDateString.toString()) should be functiontoLocaleDateString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'date','date','dateformatdate')}. +FAIL StripSpaces(Date.prototype.toLocaleTimeString.toString()) should be functiontoLocaleTimeString(){[nativecode]}. Was function(locales,options){returntoLocaleDateTime(this,locales,options,'time','time','dateformattime')}. PASS StripSpaces(Date.prototype.valueOf.toString()) is functionvalueOf(){[nativecode]} PASS StripSpaces(Date.prototype.getTime.toString()) is functiongetTime(){[nativecode]} PASS StripSpaces(Date.prototype.getFullYear.toString()) is functiongetFullYear(){[nativecode]} ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141552] trunk/LayoutTests
Title: [141552] trunk/LayoutTests Revision 141552 Author morr...@google.com Date 2013-02-01 00:44:31 -0800 (Fri, 01 Feb 2013) Log Message [Chromium] Unreviewed, marking table-section-overflow-clip-crash.html failed. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141551 => 141552) --- trunk/LayoutTests/ChangeLog 2013-02-01 08:44:24 UTC (rev 141551) +++ trunk/LayoutTests/ChangeLog 2013-02-01 08:44:31 UTC (rev 141552) @@ -1,3 +1,9 @@ +2013-02-01 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking table-section-overflow-clip-crash.html failed. + +* platform/chromium/TestExpectations: + 2013-02-01 Hajime Morrita morr...@google.com Unreviewed, rebaselining a result. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141551 => 141552) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-01 08:44:24 UTC (rev 141551) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-01 08:44:31 UTC (rev 141552) @@ -4355,3 +4355,4 @@ webkit.org/b/108424 media/video-error-does-not-exist.html [ Failure Crash ] webkit.org/b/108566 platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html [ Failure ] +webkit.org/b/108594 [ Debug ] tables/table-section-overflow-clip-crash.html [ Crash ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141527] trunk/LayoutTests
Title: [141527] trunk/LayoutTests Revision 141527 Author morr...@google.com Date 2013-01-31 19:51:12 -0800 (Thu, 31 Jan 2013) Log Message [Chromium] Unreviewed, marking a failing test. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141526 => 141527) --- trunk/LayoutTests/ChangeLog 2013-02-01 03:28:33 UTC (rev 141526) +++ trunk/LayoutTests/ChangeLog 2013-02-01 03:51:12 UTC (rev 141527) @@ -1,3 +1,9 @@ +2013-01-31 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking a failing test. + +* platform/chromium/TestExpectations: + 2013-01-31 Sheriff Bot webkit.review@gmail.com Unreviewed, rolling out r141479. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141526 => 141527) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-01 03:28:33 UTC (rev 141526) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-02-01 03:51:12 UTC (rev 141527) @@ -4364,3 +4364,4 @@ webkit.org/b/108370 editing/spelling/spelling-with-whitespace-selection.html [ Failure ] webkit.org/b/108424 media/video-error-does-not-exist.html [ Failure Crash ] +webkit.org/b/108566 platform/chromium/fast/forms/calendar-picker/calendar-picker-key-operations.html [ Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141532] trunk/LayoutTests
Title: [141532] trunk/LayoutTests Revision 141532 Author morr...@google.com Date 2013-01-31 20:20:01 -0800 (Thu, 31 Jan 2013) Log Message [Chromium] Unreviewed, rebaselining expectations. * platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt: Added. * platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt: Added. * platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt: Added. * platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/ trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (141531 => 141532) --- trunk/LayoutTests/ChangeLog 2013-02-01 04:03:04 UTC (rev 141531) +++ trunk/LayoutTests/ChangeLog 2013-02-01 04:20:01 UTC (rev 141532) @@ -1,3 +1,12 @@ +2013-01-31 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, rebaselining expectations. + +* platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt: Added. +* platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt: Added. +* platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt: Added. +* platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt: Added. + 2013-01-31 Victor Carbune vcarb...@chromium.org [Track] Closed Caption button shouldn't be visible if all the track resources have failed loading Added: trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt (0 => 141532) --- trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-e-expected.txt 2013-02-01 04:20:01 UTC (rev 141532) @@ -0,0 +1,10 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x64 + RenderBlock {HTML} at (0,0) size 800x64 +RenderBody {BODY} at (8,8) size 784x48 + RenderBlock {DIV} at (0,0) size 784x30 [bgcolor=#00] + RenderBlock {DIV} at (0,30) size 784x18 +RenderText {#text} at (0,0) size 148x18 + text run at (0,0) width 148: This test requires DRT. +scrolled to 100,0 Added: trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt (0 => 141532) --- trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-n-expected.txt 2013-02-01 04:20:01 UTC (rev 141532) @@ -0,0 +1,9 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x64 + RenderBlock {HTML} at (0,0) size 800x64 +RenderBody {BODY} at (8,8) size 784x48 + RenderBlock {DIV} at (0,0) size 784x30 [bgcolor=#00] + RenderBlock {DIV} at (0,30) size 784x18 +RenderText {#text} at (0,0) size 148x18 + text run at (0,0) width 148: This test requires DRT. Added: trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt (0 => 141532) --- trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-s-expected.txt 2013-02-01 04:20:01 UTC (rev 141532) @@ -0,0 +1,10 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x64 + RenderBlock {HTML} at (0,0) size 800x64 +RenderBody {BODY} at (8,8) size 784x48 + RenderBlock {DIV} at (0,0) size 784x30 [bgcolor=#00] + RenderBlock {DIV} at (0,30) size 784x18 +RenderText {#text} at (0,0) size 148x18 + text run at (0,0) width 148: This test requires DRT. +scrolled to 0,100 Added: trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt (0 => 141532) --- trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac/platform/chromium/rubberbanding/event-overhang-w-expected.txt 2013-02-01 04:20:01 UTC (rev 141532) @@ -0,0 +1,9 @@ +layer at (0,
[webkit-changes] [141535] trunk/Source/WebKit/chromium
Title: [141535] trunk/Source/WebKit/chromium Revision 141535 Author morr...@google.com Date 2013-01-31 21:37:58 -0800 (Thu, 31 Jan 2013) Log Message Unreviewed, disabling failing test. * tests/WebFrameTest.cpp: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (141534 => 141535) --- trunk/Source/WebKit/chromium/ChangeLog 2013-02-01 05:01:35 UTC (rev 141534) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-02-01 05:37:58 UTC (rev 141535) @@ -1,3 +1,9 @@ +2013-01-31 Hajime Morrita morr...@google.com + +Unreviewed, disabling failing test. + +* tests/WebFrameTest.cpp: + 2013-01-31 Sheriff Bot webkit.review@gmail.com Unreviewed, rolling out r141479. Modified: trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp (141534 => 141535) --- trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp 2013-02-01 05:01:35 UTC (rev 141534) +++ trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp 2013-02-01 05:37:58 UTC (rev 141535) @@ -1319,7 +1319,12 @@ int m_count; }; +// This fails on Mac https://bugs.webkit.org/show_bug.cgi?id=108574 +#if OS(DARWIN) +TEST_F(WebFrameTest, DISABLED_FindInPageMatchRects) +#else TEST_F(WebFrameTest, FindInPageMatchRects) +#endif { registerMockedHttpURLLoad(find_in_page.html); registerMockedHttpURLLoad(find_in_page_frame.html); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141538] trunk/Source/WebKit/chromium
Title: [141538] trunk/Source/WebKit/chromium Revision 141538 Author morr...@google.com Date 2013-01-31 22:36:02 -0800 (Thu, 31 Jan 2013) Log Message Unreviewed, followup fix for r141535. * tests/WebFrameTest.cpp: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (141537 => 141538) --- trunk/Source/WebKit/chromium/ChangeLog 2013-02-01 06:28:28 UTC (rev 141537) +++ trunk/Source/WebKit/chromium/ChangeLog 2013-02-01 06:36:02 UTC (rev 141538) @@ -1,3 +1,9 @@ +2013-01-31 Hajime Morrita morr...@google.com + +Unreviewed, followup fix for r141535. + +* tests/WebFrameTest.cpp: + 2013-01-31 Sheriff Bot webkit.review@gmail.com Unreviewed. Rolled Chromium DEPS to r180023. Requested by Modified: trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp (141537 => 141538) --- trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp 2013-02-01 06:28:28 UTC (rev 141537) +++ trunk/Source/WebKit/chromium/tests/WebFrameTest.cpp 2013-02-01 06:36:02 UTC (rev 141538) @@ -61,6 +61,7 @@ #include public/WebFloatRect.h #include public/WebURLResponse.h #include webkit/support/webkit_support.h +#include wtf/Forward.h using namespace WebKit; using WebCore::FloatRect; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141369] trunk/Tools
Title: [141369] trunk/Tools Revision 141369 Author morr...@google.com Date 2013-01-30 20:42:29 -0800 (Wed, 30 Jan 2013) Log Message Unreviewed test failure fix for r141341. * Scripts/webkitpy/tool/steps/runtests.py: (RunTests.run): * Scripts/webkitpy/tool/steps/runtests_unittest.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/tool/steps/runtests.py trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py Diff Modified: trunk/Tools/ChangeLog (141368 => 141369) --- trunk/Tools/ChangeLog 2013-01-31 04:32:21 UTC (rev 141368) +++ trunk/Tools/ChangeLog 2013-01-31 04:42:29 UTC (rev 141369) @@ -1,3 +1,11 @@ +2013-01-30 Hajime Morrita morr...@google.com + +Unreviewed test failure fix for r141341. + +* Scripts/webkitpy/tool/steps/runtests.py: +(RunTests.run): +* Scripts/webkitpy/tool/steps/runtests_unittest.py: + 2013-01-30 Levi Weintraub le...@chromium.org [Chromium] WebPluginContainerImpl adding imbalanced touch handler refs Modified: trunk/Tools/Scripts/webkitpy/tool/steps/runtests.py (141368 => 141369) --- trunk/Tools/Scripts/webkitpy/tool/steps/runtests.py 2013-01-31 04:32:21 UTC (rev 141368) +++ trunk/Tools/Scripts/webkitpy/tool/steps/runtests.py 2013-01-31 04:42:29 UTC (rev 141369) @@ -90,8 +90,9 @@ --quiet, ]) -if sys.platform != cygwin: -args.append(--skip-failing-test) +if sys.platform != cygwin: +args.append(--skip-failing-test) + if self._options.quiet: args.append(--quiet) Modified: trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py (141368 => 141369) --- trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py 2013-01-31 04:32:21 UTC (rev 141368) +++ trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py 2013-01-31 04:42:29 UTC (rev 141369) @@ -41,6 +41,6 @@ expected_logs = Running WebKit unit tests MOCK run_and_throw_if_fail: ['mock-run-webkit-unit-tests'], cwd=/mock-checkout Running run-webkit-tests -MOCK run_and_throw_if_fail: ['mock-run-webkit-tests', '--no-new-test-results', '--no-show-results', '--skip-failing-tests', '--exit-after-n-failures=30', '--quiet'], cwd=/mock-checkout +MOCK run_and_throw_if_fail: ['mock-run-webkit-tests', '--no-new-test-results', '--no-show-results', '--exit-after-n-failures=30', '--quiet', '--skip-failing-test'], cwd=/mock-checkout OutputCapture().assert_outputs(self, step.run, [{}], expected_logs=expected_logs) ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [141379] trunk/LayoutTests
Title: [141379] trunk/LayoutTests Revision 141379 Author morr...@google.com Date 2013-01-30 22:05:23 -0800 (Wed, 30 Jan 2013) Log Message [Chromium] Unreviewed, marking video-error-does-not-exist.html as a fail. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (141378 => 141379) --- trunk/LayoutTests/ChangeLog 2013-01-31 06:00:52 UTC (rev 141378) +++ trunk/LayoutTests/ChangeLog 2013-01-31 06:05:23 UTC (rev 141379) @@ -1,3 +1,9 @@ +2013-01-30 Hajime Morrita morr...@google.com + +[Chromium] Unreviewed, marking video-error-does-not-exist.html as a fail. + +* platform/chromium/TestExpectations: + 2013-01-30 Kent Tamura tk...@chromium.org [Chromium] Rebaline for form-related tests Modified: trunk/LayoutTests/platform/chromium/TestExpectations (141378 => 141379) --- trunk/LayoutTests/platform/chromium/TestExpectations 2013-01-31 06:00:52 UTC (rev 141378) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2013-01-31 06:05:23 UTC (rev 141379) @@ -4404,3 +4404,5 @@ webkit.org/b/108370 editing/spelling/spelling-with-punctuation-selection.html [ Skip ] webkit.org/b/108370 editing/spelling/spelling-with-underscore-selection.html [ Skip ] webkit.org/b/108370 editing/spelling/spelling-with-whitespace-selection.html [ Skip ] + +webkit.org/b/108424 media/video-error-does-not-exist.html [ Failure ] ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [140659] trunk/Source
Title: [140659] trunk/Source Revision 140659 Author morr...@google.com Date 2013-01-24 00:23:16 -0800 (Thu, 24 Jan 2013) Log Message There are a few of wrong removeAllChildren() call https://bugs.webkit.org/show_bug.cgi?id=107790 Reviewed by Ryosuke Niwa. Source/WebCore: removeAllChildren() is designed for trashing deleting children out. It doesn't detach() children and could have possible leak. This change replaces such removeAllChildren() usage with safer removeChildren(). No new tests. Covered by existing tests. * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseAttribute): * html/InputType.cpp: (WebCore::InputType::destroyShadowSubtree): * html/ValidationMessage.cpp: (WebCore::ValidationMessage::setMessageDOMAndStartTimer): * html/parser/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processEndTag): Source/WebKit/qt: * Api/qwebelement.cpp: Repalced removeAllChildren() with safer removeChildren() (QWebElement::removeAllChildren): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/InputType.cpp trunk/Source/WebCore/html/ValidationMessage.cpp trunk/Source/WebCore/html/parser/HTMLTreeBuilder.cpp trunk/Source/WebKit/qt/Api/qwebelement.cpp trunk/Source/WebKit/qt/ChangeLog Diff Modified: trunk/Source/WebCore/ChangeLog (140658 => 140659) --- trunk/Source/WebCore/ChangeLog 2013-01-24 08:16:00 UTC (rev 140658) +++ trunk/Source/WebCore/ChangeLog 2013-01-24 08:23:16 UTC (rev 140659) @@ -1,3 +1,25 @@ +2013-01-24 Hajime Morrita morr...@google.com + +There are a few of wrong removeAllChildren() call +https://bugs.webkit.org/show_bug.cgi?id=107790 + +Reviewed by Ryosuke Niwa. + +removeAllChildren() is designed for trashing deleting children out. +It doesn't detach() children and could have possible leak. +This change replaces such removeAllChildren() usage with safer removeChildren(). + +No new tests. Covered by existing tests. + +* html/HTMLInputElement.cpp: +(WebCore::HTMLInputElement::parseAttribute): +* html/InputType.cpp: +(WebCore::InputType::destroyShadowSubtree): +* html/ValidationMessage.cpp: +(WebCore::ValidationMessage::setMessageDOMAndStartTimer): +* html/parser/HTMLTreeBuilder.cpp: +(WebCore::HTMLTreeBuilder::processEndTag): + 2013-01-24 Dominic Mazzoni dmazz...@google.com AX: should init an AXObject only after AXObjectCache has added it Modified: trunk/Source/WebCore/html/HTMLInputElement.cpp (140658 => 140659) --- trunk/Source/WebCore/html/HTMLInputElement.cpp 2013-01-24 08:16:00 UTC (rev 140658) +++ trunk/Source/WebCore/html/HTMLInputElement.cpp 2013-01-24 08:23:16 UTC (rev 140659) @@ -752,7 +752,8 @@ detach(); m_inputType-destroyShadowSubtree(); m_inputType-createShadowSubtree(); -attach(); +if (!attached()) +attach(); } else { m_inputType-destroyShadowSubtree(); m_inputType-createShadowSubtree(); Modified: trunk/Source/WebCore/html/InputType.cpp (140658 => 140659) --- trunk/Source/WebCore/html/InputType.cpp 2013-01-24 08:16:00 UTC (rev 140658) +++ trunk/Source/WebCore/html/InputType.cpp 2013-01-24 08:23:16 UTC (rev 140659) @@ -489,14 +489,14 @@ if (!root) return; -root-removeAllChildren(); +root-removeChildren(); // It's ok to clear contents of all other ShadowRoots because they must have // been created by TextFieldDecorationElement, and we don't allow adding // AuthorShadowRoot to HTMLInputElement. while ((root = root-youngerShadowRoot())) { #if ENABLE(SHADOW_DOM) -root-removeAllChildren(); +root-removeChildren(); root-appendChild(HTMLShadowElement::create(shadowTag, element()-document())); #else ASSERT_NOT_REACHED(); Modified: trunk/Source/WebCore/html/ValidationMessage.cpp (140658 => 140659) --- trunk/Source/WebCore/html/ValidationMessage.cpp 2013-01-24 08:16:00 UTC (rev 140658) +++ trunk/Source/WebCore/html/ValidationMessage.cpp 2013-01-24 08:23:16 UTC (rev 140659) @@ -125,8 +125,8 @@ ASSERT(!validationMessageClient()); ASSERT(m_messageHeading); ASSERT(m_messageBody); -m_messageHeading-removeAllChildren(); -m_messageBody-removeAllChildren(); +m_messageHeading-removeChildren(); +m_messageBody-removeChildren(); VectorString lines; m_message.split('\n', lines); Document* doc = m_messageHeading-document(); Modified: trunk/Source/WebCore/html/parser/HTMLTreeBuilder.cpp (140658 => 140659) --- trunk/Source/WebCore/html/parser/HTMLTreeBuilder.cpp 2013-01-24 08:16:00 UTC (rev 140658) +++ trunk/Source/WebCore/html/parser/HTMLTreeBuilder.cpp 2013-01-24 08:23:16 UTC (rev 140659) @@ -2152,7 +2152,7 @@ m_scriptToProcess = m_tree.currentElement(); m_tree.ope
[webkit-changes] [140784] trunk/Source/WebCore
Title: [140784] trunk/Source/WebCore Revision 140784 Author morr...@google.com Date 2013-01-24 22:45:39 -0800 (Thu, 24 Jan 2013) Log Message Refactoring: The name ContainerNode::removeChildren and ContainerNde::removeAllChilren() is confusing https://bugs.webkit.org/show_bug.cgi?id=107640 Reviewed by Eric Seidel. This change renames unsafe removeAllChilren() function to removeDetachedChildren() and move it to protected visibility. In theory, the removed nodes should be detached() before. But some tests violates that assumption. It should be fixed. No new tests. No behavior change. * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeDetachedChildren): (WebCore::ContainerNode::takeAllChildrenFrom): (WebCore::ContainerNode::~ContainerNode): * dom/ContainerNode.h: (ContainerNode): * dom/ContainerNodeAlgorithms.h: (WebCore::removeDetachedChildrenInContainer): (WebCore): * dom/Document.cpp: (WebCore::Document::removedLastRef): * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::~ShadowRoot): * svg/SVGElementInstance.cpp: (WebCore::SVGElementInstance::detach): * svg/SVGElementInstance.h: (SVGElementInstance): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp trunk/Source/WebCore/dom/ContainerNode.h trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/svg/SVGElementInstance.cpp trunk/Source/WebCore/svg/SVGElementInstance.h Diff Modified: trunk/Source/WebCore/ChangeLog (140783 => 140784) --- trunk/Source/WebCore/ChangeLog 2013-01-25 06:38:54 UTC (rev 140783) +++ trunk/Source/WebCore/ChangeLog 2013-01-25 06:45:39 UTC (rev 140784) @@ -1,3 +1,36 @@ +2013-01-24 Hajime Morrita morr...@google.com + +Refactoring: The name ContainerNode::removeChildren and ContainerNde::removeAllChilren() is confusing +https://bugs.webkit.org/show_bug.cgi?id=107640 + +Reviewed by Eric Seidel. + +This change renames unsafe removeAllChilren() function to +removeDetachedChildren() and move it to protected visibility. + +In theory, the removed nodes should be detached() before. But some +tests violates that assumption. It should be fixed. + +No new tests. No behavior change. + +* dom/ContainerNode.cpp: +(WebCore::ContainerNode::removeDetachedChildren): +(WebCore::ContainerNode::takeAllChildrenFrom): +(WebCore::ContainerNode::~ContainerNode): +* dom/ContainerNode.h: +(ContainerNode): +* dom/ContainerNodeAlgorithms.h: +(WebCore::removeDetachedChildrenInContainer): +(WebCore): +* dom/Document.cpp: +(WebCore::Document::removedLastRef): +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::~ShadowRoot): +* svg/SVGElementInstance.cpp: +(WebCore::SVGElementInstance::detach): +* svg/SVGElementInstance.h: +(SVGElementInstance): + 2013-01-24 Keishi Hattori kei...@webkit.org Adjust design of the Calendar Picker Modified: trunk/Source/WebCore/dom/ContainerNode.cpp (140783 => 140784) --- trunk/Source/WebCore/dom/ContainerNode.cpp 2013-01-25 06:38:54 UTC (rev 140783) +++ trunk/Source/WebCore/dom/ContainerNode.cpp 2013-01-25 06:45:39 UTC (rev 140784) @@ -90,16 +90,17 @@ toContainerNode(node)-removeChildren(); } -void ContainerNode::removeAllChildren() +void ContainerNode::removeDetachedChildren() { -removeAllChildrenInContainerNode, ContainerNode(this); +// FIXME: We should be able to ASSERT(!attached()) here: https://bugs.webkit.org/show_bug.cgi?id=107801 +removeDetachedChildrenInContainerNode, ContainerNode(this); } void ContainerNode::takeAllChildrenFrom(ContainerNode* oldParent) { NodeVector children; getChildNodes(oldParent, children); -oldParent-removeAllChildren(); +oldParent-removeDetachedChildren(); for (unsigned i = 0; i children.size(); ++i) { ExceptionCode ec = 0; @@ -123,7 +124,7 @@ if (AXObjectCache::accessibilityEnabled() documentInternal() documentInternal()-axObjectCacheExists()) documentInternal()-axObjectCache()-remove(this); -removeAllChildren(); +removeDetachedChildren(); } static inline bool isChildTypeAllowed(ContainerNode* newParent, Node* child) Modified: trunk/Source/WebCore/dom/ContainerNode.h (140783 => 140784) --- trunk/Source/WebCore/dom/ContainerNode.h 2013-01-25 06:38:54 UTC (rev 140783) +++ trunk/Source/WebCore/dom/ContainerNode.h 2013-01-25 06:45:39 UTC (rev 140784) @@ -101,11 +101,7 @@ void parserRemoveChild(Node*); void parserInsertBefore(PassRefPtrNode newChild, Node* refChild); -// FIXME: It's not good to have two functions with such similar names, especially public functions. -// How do removeChildren and removeAllChildren differ? void removeChildren(); -void removeAllChildren(); - void takeAllChildrenFrom(ContainerNode*);
[webkit-changes] [140520] trunk
Title: [140520] trunk Revision 140520 Author morr...@google.com Date 2013-01-23 00:37:56 -0800 (Wed, 23 Jan 2013) Log Message Invalidated SVG shadow tree should be always detached. https://bugs.webkit.org/show_bug.cgi?id=107634 Reviewed by Ryosuke Niwa. Source/WebCore: SVGUseElement::clearResourceReferences() uses removeAllChildren() for clearing its shadow DOM, but this is wrong. removeAllChildren() is designed for removing children of an out-of-document Node. For efficiency, it skips a series of cleanup sequences like detach(). For removing SVG shadow tree which is in Document, removeChildren() should be used. It does proper cleanup for the chilren. Test: svg/custom/use-invalidate-click-crash.xhtml * svg/SVGUseElement.cpp: (WebCore::SVGUseElement::clearResourceReferences): LayoutTests: * svg/custom/use-invalidate-click-crash-expected.txt: Added. * svg/custom/use-invalidate-click-crash.xhtml: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/svg/SVGUseElement.cpp Added Paths trunk/LayoutTests/svg/custom/use-invalidate-click-crash-expected.txt trunk/LayoutTests/svg/custom/use-invalidate-click-crash.xhtml Diff Modified: trunk/LayoutTests/ChangeLog (140519 => 140520) --- trunk/LayoutTests/ChangeLog 2013-01-23 08:34:16 UTC (rev 140519) +++ trunk/LayoutTests/ChangeLog 2013-01-23 08:37:56 UTC (rev 140520) @@ -1,3 +1,13 @@ +2013-01-23 Hajime Morrita morr...@google.com + +Invalidated SVG shadow tree should be always detached. +https://bugs.webkit.org/show_bug.cgi?id=107634 + +Reviewed by Ryosuke Niwa. + +* svg/custom/use-invalidate-click-crash-expected.txt: Added. +* svg/custom/use-invalidate-click-crash.xhtml: Added. + 2013-01-23 Seokju Kwon seokju.k...@gmail.com [EFL] Gardening for some inspector tests Added: trunk/LayoutTests/svg/custom/use-invalidate-click-crash-expected.txt (0 => 140520) --- trunk/LayoutTests/svg/custom/use-invalidate-click-crash-expected.txt (rev 0) +++ trunk/LayoutTests/svg/custom/use-invalidate-click-crash-expected.txt 2013-01-23 08:37:56 UTC (rev 140520) @@ -0,0 +1 @@ +PASS Added: trunk/LayoutTests/svg/custom/use-invalidate-click-crash.xhtml (0 => 140520) --- trunk/LayoutTests/svg/custom/use-invalidate-click-crash.xhtml (rev 0) +++ trunk/LayoutTests/svg/custom/use-invalidate-click-crash.xhtml 2013-01-23 08:37:56 UTC (rev 140520) @@ -0,0 +1,32 @@ +html +body id=body +svg xmlns:xlink=http://www.w3.org/1999/xlink xmlns=http://www.w3.org/2000/svg + +symbol id=target + text font-size=172cmY/text +/symbol +use xlink:href="" + +script![CDATA[ +function keyDownMouseClick(x1, y1, x2, y2) +{ +if (!window.eventSender) +return; +eventSender.mouseDown(); +eventSender.mouseMoveTo(x2, y2); +eventSender.mouseUp(); +} + +if (window.testRunner) + testRunner.dumpAsText(); + +var target = document.getElementById(target); +keyDownMouseClick(333, 357, 155, 174); +target.textContent = ; +keyDownMouseClick(115, 317, -16, -2); + +document.getElementById(body).textContent = PASS +]]/script +/svg +/body +/html Modified: trunk/Source/WebCore/ChangeLog (140519 => 140520) --- trunk/Source/WebCore/ChangeLog 2013-01-23 08:34:16 UTC (rev 140519) +++ trunk/Source/WebCore/ChangeLog 2013-01-23 08:37:56 UTC (rev 140520) @@ -1,3 +1,23 @@ +2013-01-23 Hajime Morrita morr...@google.com + +Invalidated SVG shadow tree should be always detached. +https://bugs.webkit.org/show_bug.cgi?id=107634 + +Reviewed by Ryosuke Niwa. + +SVGUseElement::clearResourceReferences() uses removeAllChildren() for +clearing its shadow DOM, but this is wrong. +removeAllChildren() is designed for removing children of an out-of-document Node. +For efficiency, it skips a series of cleanup sequences like detach(). + +For removing SVG shadow tree which is in Document, removeChildren() should be used. +It does proper cleanup for the chilren. + +Test: svg/custom/use-invalidate-click-crash.xhtml + +* svg/SVGUseElement.cpp: +(WebCore::SVGUseElement::clearResourceReferences): + 2013-01-23 Huang Dongsung luxte...@company100.net [TexMap] Don't call GraphicsLayer::setNeedsDisplay() from TextureMapperLayer. Modified: trunk/Source/WebCore/svg/SVGUseElement.cpp (140519 => 140520) --- trunk/Source/WebCore/svg/SVGUseElement.cpp 2013-01-23 08:34:16 UTC (rev 140519) +++ trunk/Source/WebCore/svg/SVGUseElement.cpp 2013-01-23 08:37:56 UTC (rev 140520) @@ -400,7 +400,7 @@ { // FIXME: We should try to optimize this, to at least allow partial reclones. if (ShadowRoot* shadowTreeRootElement = shadow()-oldestShadowRoot()) -shadowTreeRootElement-removeAllChildren(); +shadowTreeRootElement-removeChildren(); if (m_targetElementInstance) {
[webkit-changes] [140506] trunk/Source/WebCore
Title: [140506] trunk/Source/WebCore Revision 140506 Author morr...@google.com Date 2013-01-22 21:52:06 -0800 (Tue, 22 Jan 2013) Log Message non-ENABLE(DETAILS_ELEMENT) build fails. https://bugs.webkit.org/show_bug.cgi?id=107626 Reviewed by Kent Tamura. No new tests, build configuration change. * rendering/RenderObject.h: (RenderObject): Added a missing condition. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderObject.h Diff Modified: trunk/Source/WebCore/ChangeLog (140505 => 140506) --- trunk/Source/WebCore/ChangeLog 2013-01-23 05:50:15 UTC (rev 140505) +++ trunk/Source/WebCore/ChangeLog 2013-01-23 05:52:06 UTC (rev 140506) @@ -1,3 +1,15 @@ +2013-01-22 Hajime Morrita morr...@google.com + +non-ENABLE(DETAILS_ELEMENT) build fails. +https://bugs.webkit.org/show_bug.cgi?id=107626 + +Reviewed by Kent Tamura. + +No new tests, build configuration change. + +* rendering/RenderObject.h: +(RenderObject): Added a missing condition. + 2013-01-22 Dima Gorbik dgor...@apple.com Whitelist should also work for the WebVTT ::cue element without an argument Modified: trunk/Source/WebCore/rendering/RenderObject.h (140505 => 140506) --- trunk/Source/WebCore/rendering/RenderObject.h 2013-01-23 05:50:15 UTC (rev 140505) +++ trunk/Source/WebCore/rendering/RenderObject.h 2013-01-23 05:52:06 UTC (rev 140506) @@ -321,7 +321,7 @@ #endif virtual bool isQuote() const { return false; } -#if ENABLE(DETAILS_ELEMENT) +#if ENABLE(DETAILS_ELEMENT) || ENABLE(INPUT_MULTIPLE_FIELDS_UI) virtual bool isDetailsMarker() const { return false; } #endif virtual bool isEmbeddedObject() const { return false; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139942] trunk/Source/WebCore
Title: [139942] trunk/Source/WebCore Revision 139942 Author morr...@google.com Date 2013-01-16 17:38:20 -0800 (Wed, 16 Jan 2013) Log Message WebCore::ScriptRunner::timerFired() is reported to crash. https://bugs.webkit.org/show_bug.cgi?id=92211 Reviewed by Darin Adler. This is a speculative fix to address some crash reports. Here is my rough guess. The crash report says there is a PendingScript instance whose m_element is null. - It happens only if the instance is created through the default constructor, - that could happen if m_pendingAsyncScripts doesn't contains matched PendingScript in ScriptRunner::notifyScriptReady(), - that could happen when notifyScriptReady() is called more than once. - It turns out that the call site, ScriptElement::notifyFinished(), could be called multiple times since it doesn't remove itself from the CachedResource, which is done separately in ScriptElement::execute(). - So if notifyFinished() is called before execute(), it could happen This change added a guard to prevent notifyFinished() from being invoked multiple times. We should watch if these crash reports disappear. No new tests. I couldn't create any repro for this. * dom/ScriptElement.cpp: (WebCore::ScriptElement::notifyFinished): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ScriptElement.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (139941 => 139942) --- trunk/Source/WebCore/ChangeLog 2013-01-17 01:36:09 UTC (rev 139941) +++ trunk/Source/WebCore/ChangeLog 2013-01-17 01:38:20 UTC (rev 139942) @@ -1,3 +1,29 @@ +2013-01-16 MORITA Hajime morr...@google.com + +WebCore::ScriptRunner::timerFired() is reported to crash. +https://bugs.webkit.org/show_bug.cgi?id=92211 + +Reviewed by Darin Adler. + +This is a speculative fix to address some crash reports. +Here is my rough guess. + +The crash report says there is a PendingScript instance whose m_element is null. +- It happens only if the instance is created through the default constructor, +- that could happen if m_pendingAsyncScripts doesn't contains matched PendingScript in ScriptRunner::notifyScriptReady(), +- that could happen when notifyScriptReady() is called more than once. +- It turns out that the call site, ScriptElement::notifyFinished(), could be called multiple times since + it doesn't remove itself from the CachedResource, which is done separately in ScriptElement::execute(). +- So if notifyFinished() is called before execute(), it could happen + +This change added a guard to prevent notifyFinished() from being invoked multiple times. +We should watch if these crash reports disappear. + +No new tests. I couldn't create any repro for this. + +* dom/ScriptElement.cpp: +(WebCore::ScriptElement::notifyFinished): + 2013-01-16 Pablo Flouret pab...@motorola.com Fix mac build system warnings introduced by r139866 Modified: trunk/Source/WebCore/dom/ScriptElement.cpp (139941 => 139942) --- trunk/Source/WebCore/dom/ScriptElement.cpp 2013-01-17 01:36:09 UTC (rev 139941) +++ trunk/Source/WebCore/dom/ScriptElement.cpp 2013-01-17 01:38:20 UTC (rev 139942) @@ -331,7 +331,14 @@ void ScriptElement::notifyFinished(CachedResource* resource) { ASSERT(!m_willBeParserExecuted); + +// CachedResource possibly invokes this notifyFinished() more than +// once because ScriptElement doesn't unsubscribe itself from +// CachedResource here and does it in execute() instead. +// We use m_cachedScript to check if this function is already called. ASSERT_UNUSED(resource, resource == m_cachedScript); +if (!m_cachedScript) +return; if (m_requestUsesAccessControl !m_element-document()-securityOrigin()-canRequest(m_cachedScript-response().url()) ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139958] trunk
Title: [139958] trunk Revision 139958 Author morr...@google.com Date 2013-01-16 20:22:41 -0800 (Wed, 16 Jan 2013) Log Message Attr.ownerDocument should change if its parent's owner did https://bugs.webkit.org/show_bug.cgi?id=97644 Reviewed by Darin Adler. Source/WebCore: moveTreeToNewScope() didn't traverse its Attr instances. But it should. Test: fast/dom/Attr/parent-adopt-node.html * dom/ElementAttributeData.cpp: (WebCore::ElementAttributeData::getExistingAttrs): (WebCore): * dom/ElementAttributeData.h: (ElementAttributeData): * dom/TreeScopeAdopter.cpp: (WebCore::TreeScopeAdopter::moveTreeToNewScope): LayoutTests: * fast/dom/Attr/parent-adopt-node-expected.txt: Added. * fast/dom/Attr/parent-adopt-node.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/TreeScopeAdopter.cpp Added Paths trunk/LayoutTests/fast/dom/Attr/parent-adopt-node-expected.txt trunk/LayoutTests/fast/dom/Attr/parent-adopt-node.html Diff Modified: trunk/LayoutTests/ChangeLog (139957 => 139958) --- trunk/LayoutTests/ChangeLog 2013-01-17 04:00:01 UTC (rev 139957) +++ trunk/LayoutTests/ChangeLog 2013-01-17 04:22:41 UTC (rev 139958) @@ -1,3 +1,13 @@ +2013-01-16 MORITA Hajime morr...@google.com + +Attr.ownerDocument should change if its parent's owner did +https://bugs.webkit.org/show_bug.cgi?id=97644 + +Reviewed by Darin Adler. + +* fast/dom/Attr/parent-adopt-node-expected.txt: Added. +* fast/dom/Attr/parent-adopt-node.html: Added. + 2013-01-16 Victor Carbune vcarb...@chromium.org Cues not rendered when they should be Added: trunk/LayoutTests/fast/dom/Attr/parent-adopt-node-expected.txt (0 => 139958) --- trunk/LayoutTests/fast/dom/Attr/parent-adopt-node-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/Attr/parent-adopt-node-expected.txt 2013-01-17 04:22:41 UTC (rev 139958) @@ -0,0 +1,5 @@ +PASS attr.ownerDocument.title is anotherDocument.title +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/Attr/parent-adopt-node.html (0 => 139958) --- trunk/LayoutTests/fast/dom/Attr/parent-adopt-node.html (rev 0) +++ trunk/LayoutTests/fast/dom/Attr/parent-adopt-node.html 2013-01-17 04:22:41 UTC (rev 139958) @@ -0,0 +1,18 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div id=target/div +script +var target = document.getElementById(target); +var attr = target.attributes[0]; +var anotherDocument = document.implementation.createDocument(http://www.w3.org/1999/xhtml, , null); +anotherDocument.title = Hello; +anotherDocument.adoptNode(target); +shouldBe(attr.ownerDocument.title, anotherDocument.title); +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (139957 => 139958) --- trunk/Source/WebCore/ChangeLog 2013-01-17 04:00:01 UTC (rev 139957) +++ trunk/Source/WebCore/ChangeLog 2013-01-17 04:22:41 UTC (rev 139958) @@ -1,3 +1,22 @@ +2013-01-16 MORITA Hajime morr...@google.com + +Attr.ownerDocument should change if its parent's owner did +https://bugs.webkit.org/show_bug.cgi?id=97644 + +Reviewed by Darin Adler. + +moveTreeToNewScope() didn't traverse its Attr instances. But it should. + +Test: fast/dom/Attr/parent-adopt-node.html + +* dom/ElementAttributeData.cpp: +(WebCore::ElementAttributeData::getExistingAttrs): +(WebCore): +* dom/ElementAttributeData.h: +(ElementAttributeData): +* dom/TreeScopeAdopter.cpp: +(WebCore::TreeScopeAdopter::moveTreeToNewScope): + 2013-01-16 Adam Barth aba...@webkit.org Address tonyg's feedback on BackgroundHTMLParser Modified: trunk/Source/WebCore/dom/Element.cpp (139957 => 139958) --- trunk/Source/WebCore/dom/Element.cpp 2013-01-17 04:00:01 UTC (rev 139957) +++ trunk/Source/WebCore/dom/Element.cpp 2013-01-17 04:22:41 UTC (rev 139958) @@ -1642,6 +1642,12 @@ } #endif +const VectorRefPtrAttr Element::attrNodeList() +{ +ASSERT(hasSyntheticAttrChildNodes()); +return *attrNodeListForElement(this); +} + PassRefPtrAttr Element::setAttributeNode(Attr* attrNode, ExceptionCode ec) { if (!attrNode) { Modified: trunk/Source/WebCore/dom/Element.h (139957 => 139958) --- trunk/Source/WebCore/dom/Element.h 2013-01-17 04:00:01 UTC (rev 139957) +++ trunk/Source/WebCore/dom/Element.h 2013-01-17 04:22:41 UTC (rev 139958) @@ -37,6 +37,7 @@ namespace WebCore { +class Attr; class Attribute; class ClientRect; class ClientRectList; @@ -228,7 +229,9 @@ PassRefPtrAttr attrIfExists(const QualifiedName); PassRefPtrAttr ensureAttr(const QualifiedName); - + +const VectorRefPtrAttr attrNodeList(); + virtual CSSStyleDeclaration* style(); const QualifiedName tagQName() const { return m_tagName; } Modified:
[webkit-changes] [139964] trunk
Title: [139964] trunk Revision 139964 Author morr...@google.com Date 2013-01-16 21:25:14 -0800 (Wed, 16 Jan 2013) Log Message NoEventDispatchAssertion in ContainerNode::removeChildren is too strict https://bugs.webkit.org/show_bug.cgi?id=106985 Reviewed by Ryosuke Niwa. Source/WebCore: This change narrowed the lifetime of NoEventDispatchAssertion in removeChildren(). It is as safe as other mutation method even after this change: childrenChanged() and ChildNodeRemovalNotifier are used outside the assertion scope. Test: svg/custom/use-mutation-crash.xhtml * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeChildren): LayoutTests: * svg/custom/use-mutation-crash-expected.txt: Added. * svg/custom/use-mutation-crash.xhtml: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp Added Paths trunk/LayoutTests/svg/custom/use-mutation-crash-expected.txt trunk/LayoutTests/svg/custom/use-mutation-crash.xhtml Diff Modified: trunk/LayoutTests/ChangeLog (139963 => 139964) --- trunk/LayoutTests/ChangeLog 2013-01-17 05:16:27 UTC (rev 139963) +++ trunk/LayoutTests/ChangeLog 2013-01-17 05:25:14 UTC (rev 139964) @@ -1,3 +1,13 @@ +2013-01-16 Hajime Morrita morr...@google.com + +NoEventDispatchAssertion in ContainerNode::removeChildren is too strict +https://bugs.webkit.org/show_bug.cgi?id=106985 + +Reviewed by Ryosuke Niwa. + +* svg/custom/use-mutation-crash-expected.txt: Added. +* svg/custom/use-mutation-crash.xhtml: Added. + 2013-01-16 MORITA Hajime morr...@google.com Attr.ownerDocument should change if its parent's owner did Added: trunk/LayoutTests/svg/custom/use-mutation-crash-expected.txt (0 => 139964) --- trunk/LayoutTests/svg/custom/use-mutation-crash-expected.txt (rev 0) +++ trunk/LayoutTests/svg/custom/use-mutation-crash-expected.txt 2013-01-17 05:25:14 UTC (rev 139964) @@ -0,0 +1 @@ +PASS. Added: trunk/LayoutTests/svg/custom/use-mutation-crash.xhtml (0 => 139964) --- trunk/LayoutTests/svg/custom/use-mutation-crash.xhtml (rev 0) +++ trunk/LayoutTests/svg/custom/use-mutation-crash.xhtml 2013-01-17 05:25:14 UTC (rev 139964) @@ -0,0 +1,19 @@ +html +body +pre id=consolePASS./pre +svg id=tCFSVG xmlns:xlink=http://www.w3.org/1999/xlink xmlns=http://www.w3.org/2000/svg + +g id=target /g +use xlink:href="" + +script![CDATA[ +if (window.testRunner) +testRunner.dumpAsText(); + +target = document.getElementById(target); +target.textContent = Hello; +]]/script + +/svg +/body +/html Modified: trunk/Source/WebCore/ChangeLog (139963 => 139964) --- trunk/Source/WebCore/ChangeLog 2013-01-17 05:16:27 UTC (rev 139963) +++ trunk/Source/WebCore/ChangeLog 2013-01-17 05:25:14 UTC (rev 139964) @@ -1,3 +1,19 @@ +2013-01-16 Hajime Morrita morr...@google.com + +NoEventDispatchAssertion in ContainerNode::removeChildren is too strict +https://bugs.webkit.org/show_bug.cgi?id=106985 + +Reviewed by Ryosuke Niwa. + +This change narrowed the lifetime of NoEventDispatchAssertion in removeChildren(). +It is as safe as other mutation method even after this change: childrenChanged() and +ChildNodeRemovalNotifier are used outside the assertion scope. + +Test: svg/custom/use-mutation-crash.xhtml + +* dom/ContainerNode.cpp: +(WebCore::ContainerNode::removeChildren): + 2013-01-16 Shinya Kawanaka shin...@chromium.org [Refactoring] HTMLTextFormControlElement should use shadowHost instead of shadowAncestorNode Modified: trunk/Source/WebCore/dom/ContainerNode.cpp (139963 => 139964) --- trunk/Source/WebCore/dom/ContainerNode.cpp 2013-01-17 05:16:27 UTC (rev 139963) +++ trunk/Source/WebCore/dom/ContainerNode.cpp 2013-01-17 05:25:14 UTC (rev 139964) @@ -582,43 +582,42 @@ VectorRefPtrNode, 10 removedChildren; { WidgetHierarchyUpdatesSuspensionScope suspendWidgetHierarchyUpdates; -NoEventDispatchAssertion assertNoEventDispatch; -removedChildren.reserveInitialCapacity(childNodeCount()); -while (RefPtrNode n = m_firstChild) { -Node* next = n-nextSibling(); +{ +NoEventDispatchAssertion assertNoEventDispatch; +removedChildren.reserveInitialCapacity(childNodeCount()); +while (RefPtrNode n = m_firstChild) { +Node* next = n-nextSibling(); -// Remove the node from the tree before calling detach or removedFromDocument (4427024, 4129744). -// removeChild() does this after calling detach(). There is no explanation for -// this discrepancy between removeChild() and its optimized version removeChildren(). -n-setPreviousSibling(0); -n-setNextSibling(0); -n-setParentOrHostNode(0); -document()-adoptIfNeeded(n.get()); +// Remove the
[webkit-changes] [139325] trunk/Source/WebCore
Title: [139325] trunk/Source/WebCore Revision 139325 Author morr...@google.com Date 2013-01-10 09:44:05 -0800 (Thu, 10 Jan 2013) Log Message ComposedShadowTreeWalker shouldn't be exposed to non-ShadowDOM classes https://bugs.webkit.org/show_bug.cgi?id=106505 Reviewed by Dimitri Glazkov. This change hides ComposedShadowTreeWalker from non-ShadowDOM classes by - introducing thin wrapper functions on NodeRenderingTraversal and relacing CSTW callsites with it, - replacing ComposedShadowTreeWalker usage with AncestorChainWalker if possible and - moving AncestorChainWalker to its own file and including it on files which needs only AncestorChainWalker. This eliminates ComposedShadowTreeWalker.h inclusions. No new tests. No behavior change. * CMakeLists.txt: * GNUmakefile.list.am: * Target.pri: * WebCore.gypi: * WebCore.xcodeproj/project.pbxproj: * dom/AncestorChainWalker.cpp: Added. Extracted from ComposedShadowTreeWalker.cpp (WebCore): (WebCore::AncestorChainWalker::AncestorChainWalker): (WebCore::AncestorChainWalker::parent): * dom/AncestorChainWalker.h: Added. Extracted from ComposedShadowTreeWalker.h (WebCore): (AncestorChainWalker): (WebCore::AncestorChainWalker::get): (WebCore::AncestorChainWalker::crossingInsertionPoint): * dom/ComposedShadowTreeWalker.cpp: * dom/ComposedShadowTreeWalker.h: * dom/DOMAllInOne.cpp: * dom/ElementShadow.h: (WebCore::shadowOfParent): (WebCore): * dom/EventDispatcher.cpp: * dom/Node.cpp: * dom/NodeRenderingTraversal.cpp: (WebCore::NodeRenderingTraversal::nextInScope): (NodeRenderingTraversal): (WebCore::NodeRenderingTraversal::previousInScope): Added. (WebCore::NodeRenderingTraversal::parentInScope): Added. (WebCore::NodeRenderingTraversal::lastChildInScope): Added. * dom/NodeRenderingTraversal.h: (NodeRenderingTraversal): * dom/TreeScope.cpp: * html/HTMLLIElement.cpp: (WebCore::HTMLLIElement::attach): * page/EventHandler.cpp: * page/FocusController.cpp: Replacing CSTW with NRT (WebCore): (WebCore::FocusNavigationScope::focusNavigationScopeOf): (WebCore::FocusController::findNodeWithExactTabIndex): (WebCore::nextNodeWithGreaterTabIndex): (WebCore::previousNodeWithLowerTabIndex): (WebCore::FocusController::nextFocusableNode): (WebCore::FocusController::previousFocusableNode): Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/GNUmakefile.list.am trunk/Source/WebCore/Target.pri trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/ComposedShadowTreeWalker.cpp trunk/Source/WebCore/dom/ComposedShadowTreeWalker.h trunk/Source/WebCore/dom/DOMAllInOne.cpp trunk/Source/WebCore/dom/ElementShadow.h trunk/Source/WebCore/dom/EventDispatcher.cpp trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/NodeRenderingTraversal.cpp trunk/Source/WebCore/dom/NodeRenderingTraversal.h trunk/Source/WebCore/dom/TreeScope.cpp trunk/Source/WebCore/html/HTMLLIElement.cpp trunk/Source/WebCore/page/EventHandler.cpp trunk/Source/WebCore/page/FocusController.cpp Added Paths trunk/Source/WebCore/dom/AncestorChainWalker.cpp trunk/Source/WebCore/dom/AncestorChainWalker.h Diff Modified: trunk/Source/WebCore/CMakeLists.txt (139324 => 139325) --- trunk/Source/WebCore/CMakeLists.txt 2013-01-10 17:29:45 UTC (rev 139324) +++ trunk/Source/WebCore/CMakeLists.txt 2013-01-10 17:44:05 UTC (rev 139325) @@ -1109,6 +1109,7 @@ css/WebKitCSSViewportRule.cpp dom/ActiveDOMObject.cpp +dom/AncestorChainWalker.cpp dom/Attr.cpp dom/BeforeTextInsertedEvent.cpp dom/BeforeUnloadEvent.cpp Modified: trunk/Source/WebCore/ChangeLog (139324 => 139325) --- trunk/Source/WebCore/ChangeLog 2013-01-10 17:29:45 UTC (rev 139324) +++ trunk/Source/WebCore/ChangeLog 2013-01-10 17:44:05 UTC (rev 139325) @@ -1,3 +1,63 @@ +2013-01-10 Hajime Morrita morr...@google.com + +ComposedShadowTreeWalker shouldn't be exposed to non-ShadowDOM classes +https://bugs.webkit.org/show_bug.cgi?id=106505 + +Reviewed by Dimitri Glazkov. + +This change hides ComposedShadowTreeWalker from non-ShadowDOM classes by + +- introducing thin wrapper functions on NodeRenderingTraversal and relacing + CSTW callsites with it, +- replacing ComposedShadowTreeWalker usage with AncestorChainWalker if possible and +- moving AncestorChainWalker to its own file and including it on files + which needs only AncestorChainWalker. This eliminates ComposedShadowTreeWalker.h inclusions. + +No new tests. No behavior change. + +* CMakeLists.txt: +* GNUmakefile.list.am: +* Target.pri: +* WebCore.gypi: +* WebCore.xcodeproj/project.pbxproj: +* dom/AncestorChainWalker.cpp: Added. Extracted from ComposedShadowTreeWalker.cpp +(WebCore): +(WebCore::AncestorChainWalker::AncestorChainWalker): +(WebCore::AncestorChainWalker::parent): +* dom/AncestorChainWalker.h:
[webkit-changes] [139400] trunk/Source/WebCore
Title: [139400] trunk/Source/WebCore Revision 139400 Author morr...@google.com Date 2013-01-10 20:00:13 -0800 (Thu, 10 Jan 2013) Log Message [Shadow DOM] Refactoring: InsertionPoint could simplify its subclass hooks https://bugs.webkit.org/show_bug.cgi?id=106614 Reviewed by Dimitri Glazkov. This change simplifies InsertionPoint overrides and give some flexibility to it. The change - Removes InsertionPoint::isSelectValid(). now ContentSelectorQuery parses given selector anyway. Invalid select attribute is handled by newly introduced matchTypeFor() method. - Introduces InsertionPoint::matchTypeFor() to give a chance each InsertionPoint to decide whether it accepts the given node as its distribution. Then it lets DetailsSummaryElement adopt it. - Pulls some HTMLShadowElement overrides up to InsertionPoint so that other upcoming InsertionPoint subclasses don't need to override them. No new tests. Refactoring. * html/HTMLDetailsElement.cpp: (WebCore::DetailsSummaryElement::DetailsSummaryElement): - Implemented matchTypeFor() to get rid of HTMLContentElement machinery which is compiled out in the upcoming change. (DetailsSummaryElement): * html/shadow/ContentSelectorQuery.cpp: (WebCore::ContentSelectorQuery::ContentSelectorQuery): (WebCore::ContentSelectorQuery::matches): * html/shadow/HTMLContentElement.cpp: (WebCore::HTMLContentElement::matchTypeFor): Added. (WebCore): * html/shadow/HTMLContentElement.h: (HTMLContentElement): (WebCore::isHTMLContentElement): * html/shadow/HTMLShadowElement.cpp: * html/shadow/HTMLShadowElement.h: (HTMLShadowElement): * html/shadow/InsertionPoint.cpp: (WebCore::InsertionPoint::emptySelectorList): Moved from HTMLShadowElement. (WebCore): * html/shadow/InsertionPoint.h: (WebCore::InsertionPoint::matchTypeFor): Added. (WebCore::InsertionPoint::selectorList): Moved from HTMLShadowElement. (InsertionPoint): * testing/Internals.cpp: (WebCore::Internals::isValidContentSelect): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLDetailsElement.cpp trunk/Source/WebCore/html/shadow/ContentSelectorQuery.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.h trunk/Source/WebCore/html/shadow/HTMLShadowElement.cpp trunk/Source/WebCore/html/shadow/HTMLShadowElement.h trunk/Source/WebCore/html/shadow/InsertionPoint.cpp trunk/Source/WebCore/html/shadow/InsertionPoint.h trunk/Source/WebCore/testing/Internals.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (139399 => 139400) --- trunk/Source/WebCore/ChangeLog 2013-01-11 03:18:36 UTC (rev 139399) +++ trunk/Source/WebCore/ChangeLog 2013-01-11 04:00:13 UTC (rev 139400) @@ -1,3 +1,49 @@ +2013-01-10 Hajime Morrita morr...@google.com + +[Shadow DOM] Refactoring: InsertionPoint could simplify its subclass hooks +https://bugs.webkit.org/show_bug.cgi?id=106614 + +Reviewed by Dimitri Glazkov. + +This change simplifies InsertionPoint overrides and give some flexibility to it. + +The change + +- Removes InsertionPoint::isSelectValid(). now ContentSelectorQuery parses given selector anyway. + Invalid select attribute is handled by newly introduced matchTypeFor() method. +- Introduces InsertionPoint::matchTypeFor() to give a chance each InsertionPoint to decide whether it + accepts the given node as its distribution. Then it lets DetailsSummaryElement adopt it. +- Pulls some HTMLShadowElement overrides up to InsertionPoint so that other upcoming InsertionPoint + subclasses don't need to override them. + +No new tests. Refactoring. + +* html/HTMLDetailsElement.cpp: +(WebCore::DetailsSummaryElement::DetailsSummaryElement): +- Implemented matchTypeFor() to get rid of HTMLContentElement machinery which is compiled out in the upcoming change. +(DetailsSummaryElement): +* html/shadow/ContentSelectorQuery.cpp: +(WebCore::ContentSelectorQuery::ContentSelectorQuery): +(WebCore::ContentSelectorQuery::matches): +* html/shadow/HTMLContentElement.cpp: +(WebCore::HTMLContentElement::matchTypeFor): Added. +(WebCore): +* html/shadow/HTMLContentElement.h: +(HTMLContentElement): +(WebCore::isHTMLContentElement): +* html/shadow/HTMLShadowElement.cpp: +* html/shadow/HTMLShadowElement.h: +(HTMLShadowElement): +* html/shadow/InsertionPoint.cpp: +(WebCore::InsertionPoint::emptySelectorList): Moved from HTMLShadowElement. +(WebCore): +* html/shadow/InsertionPoint.h: +(WebCore::InsertionPoint::matchTypeFor): Added. +(WebCore::InsertionPoint::selectorList): Moved from HTMLShadowElement. +(InsertionPoint): +* testing/Internals.cpp: +(WebCore::Internals::isValidContentSelect): + 2013-01-10 Dean Jackson d...@apple.com Plugin snapshot label should take dev
[webkit-changes] [139410] trunk/Source
Title: [139410] trunk/Source Revision 139410 Author morr...@google.com Date 2013-01-10 23:39:23 -0800 (Thu, 10 Jan 2013) Log Message https://bugs.webkit.org/show_bug.cgi?id=106283 [Shadow DOM] HTMLContentElement and HTMLShadowElement should be behind SHADOW_DOM Reviewed by Kentaro Hara. No new tests. Covered by existing tests. This change moves content and shadow behind ENABLE(SHADOW_DOM). Note that empty stub definitions are remaining even after this change. They are for minimizing #if/#endif usage and won't hurt code size. * WebCore.exp.in: * html/InputType.cpp: (WebCore::InputType::destroyShadowSubtree): * html/shadow/ContentDistributor.cpp: (WebCore::ContentDistributor::distribute): * html/shadow/HTMLContentElement.cpp: (WebCore): (WebCore::HTMLContentElement::create): (WebCore::HTMLContentElement::HTMLContentElement): * html/shadow/HTMLContentElement.h: (WebCore): (HTMLContentElement): * html/shadow/HTMLShadowElement.cpp: * html/shadow/HTMLShadowElement.h: (WebCore): (WebCore::isHTMLShadowElement): (WebCore::toHTMLShadowElement): * html/shadow/TextFieldDecorationElement.cpp: (WebCore::TextFieldDecorationElement::decorate): * testing/Internals.cpp: (WebCore::Internals::createContentElement): (WebCore::Internals::isValidContentSelect): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.exp.in trunk/Source/WebCore/html/InputType.cpp trunk/Source/WebCore/html/shadow/ContentDistributor.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.h trunk/Source/WebCore/html/shadow/HTMLShadowElement.cpp trunk/Source/WebCore/html/shadow/HTMLShadowElement.h trunk/Source/WebCore/html/shadow/TextFieldDecorationElement.cpp trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebKit/win/WebKit.vcproj/WebKitExports.def.in Diff Modified: trunk/Source/WebCore/ChangeLog (139409 => 139410) --- trunk/Source/WebCore/ChangeLog 2013-01-11 07:08:28 UTC (rev 139409) +++ trunk/Source/WebCore/ChangeLog 2013-01-11 07:39:23 UTC (rev 139410) @@ -1,3 +1,40 @@ +2013-01-10 Hajime Morrita morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=106283 +[Shadow DOM] HTMLContentElement and HTMLShadowElement should be behind SHADOW_DOM + +Reviewed by Kentaro Hara. + +No new tests. Covered by existing tests. + +This change moves content and shadow behind +ENABLE(SHADOW_DOM). Note that empty stub definitions are remaining +even after this change. They are for minimizing #if/#endif usage +and won't hurt code size. + +* WebCore.exp.in: +* html/InputType.cpp: +(WebCore::InputType::destroyShadowSubtree): +* html/shadow/ContentDistributor.cpp: +(WebCore::ContentDistributor::distribute): +* html/shadow/HTMLContentElement.cpp: +(WebCore): +(WebCore::HTMLContentElement::create): +(WebCore::HTMLContentElement::HTMLContentElement): +* html/shadow/HTMLContentElement.h: +(WebCore): +(HTMLContentElement): +* html/shadow/HTMLShadowElement.cpp: +* html/shadow/HTMLShadowElement.h: +(WebCore): +(WebCore::isHTMLShadowElement): +(WebCore::toHTMLShadowElement): +* html/shadow/TextFieldDecorationElement.cpp: +(WebCore::TextFieldDecorationElement::decorate): +* testing/Internals.cpp: +(WebCore::Internals::createContentElement): +(WebCore::Internals::isValidContentSelect): + 2013-01-10 Takashi Sakamoto ta...@google.com Implement CSSGroupingRule for @host @-rules and @supports. Modified: trunk/Source/WebCore/WebCore.exp.in (139409 => 139410) --- trunk/Source/WebCore/WebCore.exp.in 2013-01-11 07:08:28 UTC (rev 139409) +++ trunk/Source/WebCore/WebCore.exp.in 2013-01-11 07:39:23 UTC (rev 139410) @@ -513,7 +513,6 @@ __ZN7WebCore17openTemporaryFileERKN3WTF6StringERi __ZN7WebCore17userVisibleStringEP5NSURL __ZN7WebCore18DOMWindowExtensionC1EPNS_5FrameEPNS_15DOMWrapperWorldE -__ZN7WebCore18HTMLContentElement6createEPNS_8DocumentE __ZN7WebCore10Pasteboard17generalPasteboardEv __ZN7WebCore10Pasteboard14writePlainTextERKN3WTF6StringENS0_18SmartReplaceOptionE __ZN7WebCore18ContentDistributor22ensureSelectFeatureSetEPNS_13ElementShadowE @@ -2714,6 +2713,10 @@ _wkCaptionAppearanceGetSettingsChangedNotification #endif +#if ENABLE(SHADOW_DOM) +__ZN7WebCore18HTMLContentElement6createEPNS_8DocumentE +#endif + #if ENABLE(CSS_REGIONS) __ZN7WebCore22RuntimeEnabledFeatures19isCSSRegionsEnabledE #endif Modified: trunk/Source/WebCore/html/InputType.cpp (139409 => 139410) --- trunk/Source/WebCore/html/InputType.cpp 2013-01-11 07:08:28 UTC (rev 139409) +++ trunk/Source/WebCore/html/InputType.cpp 2013-01-11 07:39:23 UTC (rev 139410) @@ -490,8 +490,12 @@ // been created by TextFieldDecorationElement, and we don't allow adding // AuthorShadowRoot to HTMLInputElement. while ((ro
[webkit-changes] [139199] trunk/Source/WebCore
Title: [139199] trunk/Source/WebCore Revision 139199 Author morr...@google.com Date 2013-01-09 09:41:10 -0800 (Wed, 09 Jan 2013) Log Message Document::setActiveNode() should be Document::setActiveElement() https://bugs.webkit.org/show_bug.cgi?id=106437 Reviewed by Ojan Vafai. No new tests. No functoinal change. * dom/Document.cpp: (WebCore::Document::setActiveElement): (WebCore::Document::updateHoverActiveState): * dom/Document.h: (Document): * rendering/HitTestResult.cpp: (WebCore::HitTestResult::innerElement): (WebCore): * rendering/HitTestResult.h: (HitTestResult): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/rendering/HitTestResult.cpp trunk/Source/WebCore/rendering/HitTestResult.h Diff Modified: trunk/Source/WebCore/ChangeLog (139198 => 139199) --- trunk/Source/WebCore/ChangeLog 2013-01-09 17:34:54 UTC (rev 139198) +++ trunk/Source/WebCore/ChangeLog 2013-01-09 17:41:10 UTC (rev 139199) @@ -1,3 +1,23 @@ +2013-01-09 Hajime Morrita morr...@google.com + +Document::setActiveNode() should be Document::setActiveElement() +https://bugs.webkit.org/show_bug.cgi?id=106437 + +Reviewed by Ojan Vafai. + +No new tests. No functoinal change. + +* dom/Document.cpp: +(WebCore::Document::setActiveElement): +(WebCore::Document::updateHoverActiveState): +* dom/Document.h: +(Document): +* rendering/HitTestResult.cpp: +(WebCore::HitTestResult::innerElement): +(WebCore): +* rendering/HitTestResult.h: +(HitTestResult): + 2013-01-09 Shinya Kawanaka shin...@chromium.org [Shadow DOM]: ShadowRoot has wrong nodeName attribute Modified: trunk/Source/WebCore/dom/Document.cpp (139198 => 139199) --- trunk/Source/WebCore/dom/Document.cpp 2013-01-09 17:34:54 UTC (rev 139198) +++ trunk/Source/WebCore/dom/Document.cpp 2013-01-09 17:41:10 UTC (rev 139199) @@ -3235,14 +3235,14 @@ m_hoverNode = newHoverNode; } -void Document::setActiveNode(PassRefPtrNode newActiveNode) +void Document::setActiveElement(PassRefPtrElement newActiveElement) { -if (!newActiveNode) { +if (!newActiveElement) { m_activeElement.clear(); return; } -m_activeElement = newActiveNode-isElementNode() ? toElement(newActiveNode.get()) : newActiveNode-parentElement(); +m_activeElement = newActiveElement; } void Document::focusedNodeRemoved() @@ -5809,35 +5809,36 @@ if (request.readOnly()) return; -Node* innerNodeInDocument = result.innerNode(); -ASSERT(!innerNodeInDocument || innerNodeInDocument-document() == this); +Element* innerElementInDocument = result.innerElement(); +ASSERT(!innerElementInDocument || innerElementInDocument-document() == this); -Node* oldActiveNode = activeElement(); -if (oldActiveNode !request.active()) { +Element* oldActiveElement = activeElement(); +if (oldActiveElement !request.active()) { // We are clearing the :active chain because the mouse has been released. -for (RenderObject* curr = oldActiveNode-renderer(); curr; curr = curr-parent()) { -if (curr-node() !curr-isText()) { +for (RenderObject* curr = oldActiveElement-renderer(); curr; curr = curr-parent()) { +if (curr-node()) { +ASSERT(!curr-node()-isTextNode()); curr-node()-setActive(false); m_userActionElements.setInActiveChain(curr-node(), false); } } -setActiveNode(0); +setActiveElement(0); } else { -Node* newActiveNode = innerNodeInDocument; -if (!oldActiveNode newActiveNode request.active() !request.touchMove()) { +Element* newActiveElement = innerElementInDocument; +if (!oldActiveElement newActiveElement request.active() !request.touchMove()) { // We are setting the :active chain and freezing it. If future moves happen, they // will need to reference this chain. -for (RenderObject* curr = newActiveNode-renderer(); curr; curr = curr-parent()) { +for (RenderObject* curr = newActiveElement-renderer(); curr; curr = curr-parent()) { if (curr-node() !curr-isText()) m_userActionElements.setInActiveChain(curr-node(), true); } -setActiveNode(newActiveNode); +setActiveElement(newActiveElement); } } // If the mouse has just been pressed, set :active on the chain. Those (and only those) // nodes should remain :active until the mouse is released. -bool allowActiveChanges = !oldActiveNode activeElement(); +bool allowActiveChanges = !oldActiveElement activeElement(); // If the mouse is down and if this is a mouse move event, we want to restrict changes in // :hover/:active to only apply to el
[webkit-changes] [139064] trunk/Source/WebCore
Title: [139064] trunk/Source/WebCore Revision 139064 Author morr...@google.com Date 2013-01-08 09:29:32 -0800 (Tue, 08 Jan 2013) Log Message [Shadow DOM] Refactoring: invalidateParentDistributionIfNecessary() calls are too intrusive https://bugs.webkit.org/show_bug.cgi?id=106305 Reviewed by Dimitri Glazkov. Scattering invalidateParentDistributionIfNecessary() looks bad because - it has long name whose terminology is cryptic for people who don't know much about Shadow DOM standard. - its calls are always paired with setNeedsStyleRecalc() and people do setNeedsStyleRecalc() need to be aware about distribution feature bit tracking. Separate invalidateParentDistributionIfNecessary() call doesn't help that recognition. This change introduces Element::didAffectSelector() to replace a setNeedsStyleRecalc()-i37y() call sequence. SelectRuleFeatureSet::FeatureRule is renamed AffectedSelectorType so that it explains its purpose in a bit more plain WebKit term. No new tests. Refactoring. * dom/Document.cpp: (WebCore::Document::setCSSTarget): Adopted didAffectSelector. * dom/Element.cpp: (WebCore::Element::didAffectSelector): Added. (WebCore): * dom/Element.h: (Element): * dom/ElementShadow.cpp: (WebCore::ElementShadow::didAffectSelector): Morphed from invalidateParentDistributionIfNecessary(). * dom/ElementShadow.h: (ElementShadow): * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::parseAttribute): Adopted didAffectSelector * html/HTMLDetailsElement.cpp: * html/HTMLFormControlElement.cpp: (WebCore::HTMLFormControlElement::disabledAttributeChanged): Adopted didAffectSelector * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setChecked): Adopted didAffectSelector (WebCore::HTMLInputElement::setIndeterminate): Adopted didAffectSelector * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::parseAttribute): Adopted didAffectSelector * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::parseAttribute): Adopted didAffectSelector (WebCore::HTMLOptionElement::setSelectedState): Adopted didAffectSelector * html/HTMLProgressElement.cpp: (WebCore::HTMLProgressElement::didElementStateChange): Adopted didAffectSelector * html/HTMLSummaryElement.cpp: * html/shadow/HTMLContentElement.cpp: * html/shadow/SelectRuleFeatureSet.cpp: (WebCore::SelectRuleFeatureSet::collectFeaturesFromSelector): Followed renaming. * html/shadow/SelectRuleFeatureSet.h: Followed renaming. (WebCore::SelectRuleFeatureSet::hasSelectorForChecked): (WebCore::SelectRuleFeatureSet::hasSelectorForEnabled): (WebCore::SelectRuleFeatureSet::hasSelectorForDisabled): (WebCore::SelectRuleFeatureSet::hasSelectorForIndeterminate): (WebCore::SelectRuleFeatureSet::hasSelectorForLink): (WebCore::SelectRuleFeatureSet::hasSelectorForTarget): (WebCore::SelectRuleFeatureSet::hasSelectorForVisited): (WebCore::SelectRuleFeatureSet::hasSelectorFor): (WebCore::SelectRuleFeatureSet::setSelectRuleFeature): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/ElementShadow.cpp trunk/Source/WebCore/dom/ElementShadow.h trunk/Source/WebCore/html/HTMLAnchorElement.cpp trunk/Source/WebCore/html/HTMLDetailsElement.cpp trunk/Source/WebCore/html/HTMLFormControlElement.cpp trunk/Source/WebCore/html/HTMLInputElement.cpp trunk/Source/WebCore/html/HTMLOptGroupElement.cpp trunk/Source/WebCore/html/HTMLOptionElement.cpp trunk/Source/WebCore/html/HTMLProgressElement.cpp trunk/Source/WebCore/html/HTMLSummaryElement.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/html/shadow/SelectRuleFeatureSet.cpp trunk/Source/WebCore/html/shadow/SelectRuleFeatureSet.h Diff Modified: trunk/Source/WebCore/ChangeLog (139063 => 139064) --- trunk/Source/WebCore/ChangeLog 2013-01-08 16:47:55 UTC (rev 139063) +++ trunk/Source/WebCore/ChangeLog 2013-01-08 17:29:32 UTC (rev 139064) @@ -1,3 +1,63 @@ +2013-01-08 Hajime Morrita morr...@google.com + +[Shadow DOM] Refactoring: invalidateParentDistributionIfNecessary() calls are too intrusive +https://bugs.webkit.org/show_bug.cgi?id=106305 + +Reviewed by Dimitri Glazkov. + +Scattering invalidateParentDistributionIfNecessary() looks bad because +- it has long name whose terminology is cryptic for people who don't know much about Shadow DOM standard. +- its calls are always paired with setNeedsStyleRecalc() and people do setNeedsStyleRecalc() + need to be aware about distribution feature bit tracking. Separate invalidateParentDistributionIfNecessary() + call doesn't help that recognition. + +This change introduces Element::didAffectSelector() to replace a setNeedsStyleRecalc()-i37y() call sequence. +SelectRuleFeatureSet::FeatureRule is renamed AffectedSelectorType so that it explains its purpose +in a bit more plain WebKit term. + +No new tests. Refactor
[webkit-changes] [139131] trunk/LayoutTests
Title: [139131] trunk/LayoutTests Revision 139131 Author morr...@google.com Date 2013-01-08 16:32:15 -0800 (Tue, 08 Jan 2013) Log Message Unreviewed, marking drag-and-drop-autoscroll.html * platform/efl/TestExpectations: * platform/gtk/TestExpectations: * platform/mac/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/efl/TestExpectations trunk/LayoutTests/platform/gtk/TestExpectations trunk/LayoutTests/platform/mac/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (139130 => 139131) --- trunk/LayoutTests/ChangeLog 2013-01-09 00:30:42 UTC (rev 139130) +++ trunk/LayoutTests/ChangeLog 2013-01-09 00:32:15 UTC (rev 139131) @@ -1,3 +1,11 @@ +2013-01-08 Hajime Morrita morr...@google.com + +Unreviewed, marking drag-and-drop-autoscroll.html + +* platform/efl/TestExpectations: +* platform/gtk/TestExpectations: +* platform/mac/TestExpectations: + 2013-01-08 Dimitri Glazkov dglaz...@chromium.org Organize some svg/gynamic-updates expectations. Modified: trunk/LayoutTests/platform/efl/TestExpectations (139130 => 139131) --- trunk/LayoutTests/platform/efl/TestExpectations 2013-01-09 00:30:42 UTC (rev 139130) +++ trunk/LayoutTests/platform/efl/TestExpectations 2013-01-09 00:32:15 UTC (rev 139131) @@ -1774,3 +1774,6 @@ # New test introduced in r138756 is failing. webkit.org/b/106086 fast/dom/HTMLTemplateElement/ownerDocument-adoptNode.html [ Failure ] + +# [Qt][EFL] New fast/events/drag-and-drop-autoscroll.html fails +webkit.org/b/106318 fast/events/drag-and-drop-autoscroll.html [ Failure ] Modified: trunk/LayoutTests/platform/gtk/TestExpectations (139130 => 139131) --- trunk/LayoutTests/platform/gtk/TestExpectations 2013-01-09 00:30:42 UTC (rev 139130) +++ trunk/LayoutTests/platform/gtk/TestExpectations 2013-01-09 00:32:15 UTC (rev 139131) @@ -1383,6 +1383,8 @@ webkit.org/b/106316 accessibility/render-counter-text.html [ Failure ] +webkit.org/b/106318 fast/events/drag-and-drop-autoscroll.html [ Failure ] + # # End of Tests failing # Modified: trunk/LayoutTests/platform/mac/TestExpectations (139130 => 139131) --- trunk/LayoutTests/platform/mac/TestExpectations 2013-01-09 00:30:42 UTC (rev 139130) +++ trunk/LayoutTests/platform/mac/TestExpectations 2013-01-09 00:32:15 UTC (rev 139131) @@ -1270,3 +1270,5 @@ webkit.org/b/106185 fast/frames/flattening/iframe-flattening-fixed-height.html [ Pass Failure ] webkit.org/b/106361 [ Debug ] svg/custom/text-use-click-crash.xhtml [ Crash ] + +webkit.org/b/106318 fast/events/drag-and-drop-autoscroll.html [ Failure ] \ No newline at end of file ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [139027] trunk/Source/WebCore
Title: [139027] trunk/Source/WebCore Revision 139027 Author morr...@google.com Date 2013-01-07 19:00:52 -0800 (Mon, 07 Jan 2013) Log Message WebKit should compile on Mac with --shadow-dom https://bugs.webkit.org/show_bug.cgi?id=105469 Reviewed by Dimitri Glazkov. No new tests. Just changing build files. * WebCore.exp.in: * WebCore.xcodeproj/project.pbxproj: * dom/Element.idl: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/WebCore.exp.in trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/Element.idl Diff Modified: trunk/Source/WebCore/ChangeLog (139026 => 139027) --- trunk/Source/WebCore/ChangeLog 2013-01-08 02:58:15 UTC (rev 139026) +++ trunk/Source/WebCore/ChangeLog 2013-01-08 03:00:52 UTC (rev 139027) @@ -1,3 +1,16 @@ +2013-01-07 Hajime Morrita morr...@google.com + +WebKit should compile on Mac with --shadow-dom +https://bugs.webkit.org/show_bug.cgi?id=105469 + +Reviewed by Dimitri Glazkov. + +No new tests. Just changing build files. + +* WebCore.exp.in: +* WebCore.xcodeproj/project.pbxproj: +* dom/Element.idl: + 2013-01-07 Stephen White senorbla...@chromium.org Add a flag to control canvas antialiasing. Modified: trunk/Source/WebCore/WebCore.exp.in (139026 => 139027) --- trunk/Source/WebCore/WebCore.exp.in 2013-01-08 02:58:15 UTC (rev 139026) +++ trunk/Source/WebCore/WebCore.exp.in 2013-01-08 03:00:52 UTC (rev 139027) @@ -2516,6 +2516,8 @@ #if ENABLE(SHADOW_DOM) __ZN7WebCore22RuntimeEnabledFeatures18isShadowDOMEnabledE +__ZN7WebCore22RuntimeEnabledFeatures37isAuthorShadowDOMForAnyElementEnabledE +__ZN7WebCore4toJSEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_10ShadowRootE #endif #if ENABLE(DIALOG_ELEMENT) Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (139026 => 139027) --- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2013-01-08 02:58:15 UTC (rev 139026) +++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj 2013-01-08 03:00:52 UTC (rev 139027) @@ -3897,6 +3897,8 @@ A71878900B2D04AC00A16ECE /* DragControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A718788F0B2D04AC00A16ECE /* DragControllerMac.mm */; }; A723F77B1484CA4C008C6DBE /* PlatformExportMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */; settings = {ATTRIBUTES = (Private, ); }; }; A72763BF16689BFB002FCACB /* UserActionElementSet.h in Headers */ = {isa = PBXBuildFile; fileRef = A72763BE16689BFB002FCACB /* UserActionElementSet.h */; settings = {ATTRIBUTES = (Private, ); }; }; + A72B66A7169AD88D0034130C /* DOMShadowRoot.h in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = A7F73ED9169AD7AA00CBAA4B /* DOMShadowRoot.h */; }; + A72B66A8169AD88D0034130C /* DOMShadowRoot.mm in Copy Generated Headers */ = {isa = PBXBuildFile; fileRef = A7F73EDA169AD7AA00CBAA4B /* DOMShadowRoot.mm */; }; A72EA3BB1585CF55004FAA26 /* RefCountedSupplement.h in Headers */ = {isa = PBXBuildFile; fileRef = A72EA3BA1585CF55004FAA26 /* RefCountedSupplement.h */; settings = {ATTRIBUTES = (Private, ); }; }; A73F95FE12C97BFE0031AAF9 /* RoundedRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73F95FC12C97BFE0031AAF9 /* RoundedRect.cpp */; }; A73F95FF12C97BFE0031AAF9 /* RoundedRect.h in Headers */ = {isa = PBXBuildFile; fileRef = A73F95FD12C97BFE0031AAF9 /* RoundedRect.h */; settings = {ATTRIBUTES = (Private, ); }; }; @@ -6879,6 +6881,7 @@ 1CB4214D0AF2B2CA0085AD91 /* DOMRangeInternal.h in Copy Generated Headers */, 858C39BC0AA905EF00B187A4 /* DOMRect.h in Copy Generated Headers */, 855D358D0AD707CC0019AAC7 /* DOMRGBColor.h in Copy Generated Headers */, +A72B66A7169AD88D0034130C /* DOMShadowRoot.h in Copy Generated Headers */, 850657A00AAB4A8E002D15C0 /* DOMStyleSheet.h in Copy Generated Headers */, 850657A10AAB4A8E002D15C0 /* DOMStyleSheetList.h in Copy Generated Headers */, A8F46B380CB20A9D003A9670 /* DOMSVG.h in Copy Generated Headers */, @@ -11352,6 +11355,8 @@ A7DBF8DC1276919C006B6008 /* TextCheckingHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextCheckingHelper.h; sourceTree = group; }; A7F5D94D1384F02D00A29A87 /* NodeRenderingContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NodeRenderingContext.cpp; sourceTree = group; }; A7F5D94E1384F02D00A29A87 /* NodeRenderingContext.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NodeRenderingContext.h; sourceTree = group; }; + A7F73ED9169AD7AA00CBAA4B /* DOMShadowRoot.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DOMShadowRoot.h; path = DOMShadowRoot.h; sourceTree = group; }; + A7F73EDA169AD7AA00CBAA4B /* DOMShadowRoot.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnow
[webkit-changes] [139029] trunk
Title: [139029] trunk Revision 139029 Author morr...@google.com Date 2013-01-07 20:39:39 -0800 (Mon, 07 Jan 2013) Log Message Document::m_activeNode should be always an Element. https://bugs.webkit.org/show_bug.cgi?id=106193 Reviewed by Ryosuke Niwa. Source/WebCore: r137277 tightened an invariant that assumes that active node is always an element. But Document::updateHoverActiveState() didn't respect that assumption. This change forces it. Test: svg/custom/text-use-click-crash.html * dom/Document.cpp: (WebCore::Document::removedLastRef): (WebCore::Document::detach): (WebCore::Document::setActiveNode): (WebCore::Document::activeChainNodeDetached): (WebCore::Document::updateHoverActiveState): * dom/Document.h: (WebCore::Document::activeElement): Renamed from m_activeNode for the clarification. (Document): LayoutTests: * svg/custom/text-use-click-crash-expected.txt: Added. * svg/custom/text-use-click-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h Added Paths trunk/LayoutTests/svg/custom/text-use-click-crash-expected.txt trunk/LayoutTests/svg/custom/text-use-click-crash.xhtml Diff Modified: trunk/LayoutTests/ChangeLog (139028 => 139029) --- trunk/LayoutTests/ChangeLog 2013-01-08 04:24:14 UTC (rev 139028) +++ trunk/LayoutTests/ChangeLog 2013-01-08 04:39:39 UTC (rev 139029) @@ -1,3 +1,13 @@ +2013-01-07 Hajime Morrita morr...@google.com + +Document::m_activeNode should be always an Element. +https://bugs.webkit.org/show_bug.cgi?id=106193 + +Reviewed by Ryosuke Niwa. + +* svg/custom/text-use-click-crash-expected.txt: Added. +* svg/custom/text-use-click-crash.html: Added. + 2013-01-07 Julien Chaffraix jchaffr...@webkit.org [CSS Grid Layout] Implement grid items sizing for fixed minmax grid tracks Added: trunk/LayoutTests/svg/custom/text-use-click-crash-expected.txt (0 => 139029) --- trunk/LayoutTests/svg/custom/text-use-click-crash-expected.txt (rev 0) +++ trunk/LayoutTests/svg/custom/text-use-click-crash-expected.txt 2013-01-08 04:39:39 UTC (rev 139029) @@ -0,0 +1 @@ +PASS Added: trunk/LayoutTests/svg/custom/text-use-click-crash.xhtml (0 => 139029) --- trunk/LayoutTests/svg/custom/text-use-click-crash.xhtml (rev 0) +++ trunk/LayoutTests/svg/custom/text-use-click-crash.xhtml 2013-01-08 04:39:39 UTC (rev 139029) @@ -0,0 +1,33 @@ +html xmlns=http://www.w3.org/1999/xhtml +body +svg viewBox=0 0 480 360 xmlns:xlink=http://www.w3.org/1999/xlink xmlns=http://www.w3.org/2000/svg +text font-size=58em id=targetX/text +use xlink:href="" +/svg +script![CDATA[ +if (window.testRunner) { +testRunner.waitUntilDone(); +testRunner.dumpAsText(); +} + +function keyDownMouseClick(x1, y1, x2, y2) +{ +if (!window.eventSender) +return; +eventSender.mouseMoveTo(x1, y1); +eventSender.mouseDown(); +eventSender.mouseMoveTo(x2, y2); +eventSender.mouseUp(); +} + +target = document.getElementById(target); +keyDownMouseClick(266, 322, 0, 0); +target.setAttribute(requiredFeatures, unknown_feature); +keyDownMouseClick(226, 322, 0, 0); + +document.body.innerHTML = PASS; +testRunner.notifyDone(); + +]]/script +/body +/html Modified: trunk/Source/WebCore/ChangeLog (139028 => 139029) --- trunk/Source/WebCore/ChangeLog 2013-01-08 04:24:14 UTC (rev 139028) +++ trunk/Source/WebCore/ChangeLog 2013-01-08 04:39:39 UTC (rev 139029) @@ -1,5 +1,28 @@ 2013-01-07 Hajime Morrita morr...@google.com +Document::m_activeNode should be always an Element. +https://bugs.webkit.org/show_bug.cgi?id=106193 + +Reviewed by Ryosuke Niwa. + +r137277 tightened an invariant that assumes that active node is +always an element. But Document::updateHoverActiveState() didn't +respect that assumption. This change forces it. + +Test: svg/custom/text-use-click-crash.html + +* dom/Document.cpp: +(WebCore::Document::removedLastRef): +(WebCore::Document::detach): +(WebCore::Document::setActiveNode): +(WebCore::Document::activeChainNodeDetached): +(WebCore::Document::updateHoverActiveState): +* dom/Document.h: +(WebCore::Document::activeElement): Renamed from m_activeNode for the clarification. +(Document): + +2013-01-07 Hajime Morrita morr...@google.com + WebKit should compile on Mac with --shadow-dom https://bugs.webkit.org/show_bug.cgi?id=105469 Modified: trunk/Source/WebCore/dom/Document.cpp (139028 => 139029) --- trunk/Source/WebCore/dom/Document.cpp 2013-01-08 04:24:14 UTC (rev 139028) +++ trunk/Source/WebCore/dom/Document.cpp 2013-01-08 04:39:39 UTC (rev 139029) @@ -688,7 +688,7 @@ m_docType = 0; m_focusedNode = 0; m_hoverNode =
[webkit-changes] [137717] trunk/Source/WebCore
Title: [137717] trunk/Source/WebCore Revision 137717 Author morr...@google.com Date 2012-12-13 23:45:46 -0800 (Thu, 13 Dec 2012) Log Message ContentDistributor and ShadowRootContentDistributionData should use RefPtr to hold elements. https://bugs.webkit.org/show_bug.cgi?id=104918 Reviewed by Kentaro Hara. This change turns some raw pointers to RefPtrs. No new tests. Hard to write reliable fast tests since the error reproduction needs GC to run in certain timing. Although original report has a repdocution, it takes a few seconds before crash and isn't suited for a layout test. * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::insertionPointList): * dom/ShadowRoot.h: (ShadowRoot): * html/shadow/ContentDistributor.cpp: (WebCore::ShadowRootContentDistributionData::ensureInsertionPointList): (WebCore::ContentDistributor::findInsertionPointFor): (WebCore::ContentDistributor::distribute): (WebCore::ContentDistributor::invalidate): * html/shadow/ContentDistributor.h: (ShadowRootContentDistributionData): (ContentDistributor): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/html/shadow/ContentDistributor.cpp trunk/Source/WebCore/html/shadow/ContentDistributor.h Diff Modified: trunk/Source/WebCore/ChangeLog (137716 => 137717) --- trunk/Source/WebCore/ChangeLog 2012-12-14 07:30:53 UTC (rev 137716) +++ trunk/Source/WebCore/ChangeLog 2012-12-14 07:45:46 UTC (rev 137717) @@ -1,5 +1,32 @@ 2012-12-13 Hajime Morrita morr...@google.com +ContentDistributor and ShadowRootContentDistributionData should use RefPtr to hold elements. +https://bugs.webkit.org/show_bug.cgi?id=104918 + +Reviewed by Kentaro Hara. + +This change turns some raw pointers to RefPtrs. + +No new tests. Hard to write reliable fast tests since the error +reproduction needs GC to run in certain timing. Although original +report has a repdocution, it takes a few seconds before crash and +isn't suited for a layout test. + +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::insertionPointList): +* dom/ShadowRoot.h: +(ShadowRoot): +* html/shadow/ContentDistributor.cpp: +(WebCore::ShadowRootContentDistributionData::ensureInsertionPointList): +(WebCore::ContentDistributor::findInsertionPointFor): +(WebCore::ContentDistributor::distribute): +(WebCore::ContentDistributor::invalidate): +* html/shadow/ContentDistributor.h: +(ShadowRootContentDistributionData): +(ContentDistributor): + +2012-12-13 Hajime Morrita morr...@google.com + NodeRenderingContext is slow due to ComposedShadowTreeWalker https://bugs.webkit.org/show_bug.cgi?id=104332 Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (137716 => 137717) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-12-14 07:30:53 UTC (rev 137716) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-12-14 07:45:46 UTC (rev 137717) @@ -328,9 +328,9 @@ owner()-invalidateDistribution(); } -const VectorInsertionPoint* ShadowRoot::insertionPointList() +const VectorRefPtrInsertionPoint ShadowRoot::insertionPointList() { -typedef VectorInsertionPoint* InsertionPointVector; +typedef VectorRefPtrInsertionPoint InsertionPointVector; DEFINE_STATIC_LOCAL(InsertionPointVector, emptyVector, ()); return distributionData() ? distributionData()-ensureInsertionPointList(this) : emptyVector; Modified: trunk/Source/WebCore/dom/ShadowRoot.h (137716 => 137717) --- trunk/Source/WebCore/dom/ShadowRoot.h 2012-12-14 07:30:53 UTC (rev 137716) +++ trunk/Source/WebCore/dom/ShadowRoot.h 2012-12-14 07:45:46 UTC (rev 137717) @@ -102,7 +102,7 @@ bool hasElementShadow() const; unsigned countElementShadow() const; -const VectorInsertionPoint* insertionPointList(); +const VectorRefPtrInsertionPoint insertionPointList(); virtual void registerScopedHTMLStyleChild() OVERRIDE; virtual void unregisterScopedHTMLStyleChild() OVERRIDE; Modified: trunk/Source/WebCore/html/shadow/ContentDistributor.cpp (137716 => 137717) --- trunk/Source/WebCore/html/shadow/ContentDistributor.cpp 2012-12-14 07:30:53 UTC (rev 137716) +++ trunk/Source/WebCore/html/shadow/ContentDistributor.cpp 2012-12-14 07:45:46 UTC (rev 137717) @@ -91,7 +91,7 @@ m_insertionPointList.clear(); } -const VectorInsertionPoint* ShadowRootContentDistributionData::ensureInsertionPointList(ShadowRoot* shadowRoot) +const VectorRefPtrInsertionPoint ShadowRootContentDistributionData::ensureInsertionPointList(ShadowRoot* shadowRoot) { if (m_insertionPointListIsValid) return m_insertionPointList; @@ -155,7 +155,7 @@ InsertionPoint* ContentDistributor::findInsertionPointFor(const Node* key) const { -return m_nodeToInsertionPoint.get(key); +return m_nodeToInsertionPoint.get(key).get(); } void ContentDistributor::p
[webkit-changes] [137277] trunk/Source/WebCore
Title: [137277] trunk/Source/WebCore Revision 137277 Author morr...@google.com Date 2012-12-11 02:36:24 -0800 (Tue, 11 Dec 2012) Log Message IsActiveFlag, IsHoverFlag, InActiveChainFlag can be unified. https://bugs.webkit.org/show_bug.cgi?id=103697 Reviewed by Ryosuke Niwa. To save two more NodeFlags bits, this patch inroduces UserActionElementSet to get IsLinkFlag, IsHoverFlag, InActiveChainFlag together. These three old flags are replaced by UserActionElementSet::ElementFlags and UserActionElementSet collection which tracks elements which are flagged with one of a ElementFlags. When marking an element as active for example, WebKit sets UserActionElementSet::IsActiveFlag to the element and store it into corresponding element set of the document. This set maintains marked elements and corresponding flags for each elements. UserActionElementSet can be seen as a yet another rare data for these flags. However, the following characteristics of these flags make adding a new data structure on Document an attractive alternative: - UserActionElementSet is maintained for each Document instead of a global collecton. This fits element lifetime better. - The number of elements which have these flags is generally small, and a group of elements for each flag is largely overlapped due to its nature. This property keeps the set small, and lets flag retrieval efficient. On majority of the elements, all these flags are false thus the check is done by just checking IsInUserActionFlag. As a bonus, isFocused flag, which was on NodeRareData, is also moved to this model. No new tests, covered by existing test. * CMakeLists.txt: * GNUmakefile.list.am: * Target.pri: * WebCore.gypi: * WebCore.xcodeproj/project.pbxproj: * dom/DOMAllInOne.cpp: * dom/Document.cpp: (WebCore::Document::removedLastRef): (WebCore::Document::updateHoverActiveState): * dom/Document.h: (WebCore::Document::userActionElements): Added. (Document): * dom/Node.cpp: (WebCore::Node::detach): * dom/Node.h: (WebCore): (WebCore::Node::isUserActionElement): Added. (WebCore::Node::setUserActionElement): Added. (Node): (WebCore::Node::active): Switched to UserActionElementSet. (WebCore::Node::inActiveChain): Switched to UserActionElementSet. (WebCore::Node::hovered): Switched to UserActionElementSet. (WebCore::Node::focused): Switched to UserActionElementSet. (WebCore::Node::setFocus): Switched to UserActionElementSet. (WebCore::Node::setActive): Switched to UserActionElementSet. (WebCore::Node::setHovered): Switched to UserActionElementSet. * dom/NodeRareData.h: (WebCore::NodeRareData::NodeRareData): (NodeRareData): * dom/UserActionElementSet.cpp: Added. (WebCore): (WebCore::UserActionElementSet::instanceFor): (WebCore::UserActionElementSet::UserActionElementSet): (WebCore::UserActionElementSet::~UserActionElementSet): (WebCore::UserActionElementSet::didDetach): (WebCore::UserActionElementSet::documentDidRemoveLastRef): (WebCore::UserActionElementSet::hasFlags): (WebCore::UserActionElementSet::setFlags): (WebCore::UserActionElementSet::clearFlags): * dom/UserActionElementSet.h: Added. (WebCore): (UserActionElementSet): (WebCore::UserActionElementSet::create): (WebCore::UserActionElementSet::isFocused): (WebCore::UserActionElementSet::setFocused): (WebCore::UserActionElementSet::isActive): (WebCore::UserActionElementSet::setActive): (WebCore::UserActionElementSet::isInActiveChain): (WebCore::UserActionElementSet::setInActiveChain): (WebCore::UserActionElementSet::isHovered): (WebCore::UserActionElementSet::setHovered): (WebCore::UserActionElementSet::setFlags): Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/GNUmakefile.list.am trunk/Source/WebCore/Target.pri trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/dom/DOMAllInOne.cpp trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/NodeRareData.h Added Paths trunk/Source/WebCore/dom/UserActionElementSet.cpp trunk/Source/WebCore/dom/UserActionElementSet.h Diff Modified: trunk/Source/WebCore/CMakeLists.txt (137276 => 137277) --- trunk/Source/WebCore/CMakeLists.txt 2012-12-11 10:31:17 UTC (rev 137276) +++ trunk/Source/WebCore/CMakeLists.txt 2012-12-11 10:36:24 UTC (rev 137277) @@ -1236,6 +1236,7 @@ dom/TreeWalker.cpp dom/UIEvent.cpp dom/UIEventWithKeyState.cpp +dom/UserActionElementSet.cpp dom/UserGestureIndicator.cpp dom/UserTypingGestureIndicator.cpp dom/ViewportArguments.cpp Modified: trunk/Source/WebCore/ChangeLog (137276 => 137277) --- trunk/Source/WebCore/ChangeLog 2012-12-11 10:31:17 UTC (rev 137276) +++ trunk/Source/WebCore/ChangeLog 2012-12-11 10:36:24 UTC (rev 137277) @@ -1,3 +1,94 @@ +2012-12-11 Hajime Morrita morr...@google.com + +IsActiveFlag, IsHoverFlag, InActiveChainFlag can be u
[webkit-changes] [137119] trunk/Source/WebCore
Title: [137119] trunk/Source/WebCore Revision 137119 Author morr...@google.com Date 2012-12-10 01:03:06 -0800 (Mon, 10 Dec 2012) Log Message [Shadow DOM][Refacdtoring] nextTo() and previousTo() can be part of ContentDistribution https://bugs.webkit.org/show_bug.cgi?id=104514 Reviewed by Kentaro Hara. InsertionPoint::nextTo() and InsertionPoint::previousTo() are an query to distributed nodes, which is what ContentDistribution represents. We can move them to better home. No new tests. No behavior change. * html/shadow/ContentDistributor.cpp: (WebCore::ContentDistribution::nextTo): Moved from InsertionPoint (WebCore): (WebCore::ContentDistribution::previousTo): Moved from InsertionPoint * html/shadow/ContentDistributor.h: (ContentDistribution): * html/shadow/InsertionPoint.cpp: * html/shadow/InsertionPoint.h: (WebCore::InsertionPoint::nextTo): Delegated to ContentDistribution (WebCore::InsertionPoint::previousTo): Delegated to ContentDistribution Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/shadow/ContentDistributor.cpp trunk/Source/WebCore/html/shadow/ContentDistributor.h trunk/Source/WebCore/html/shadow/InsertionPoint.cpp trunk/Source/WebCore/html/shadow/InsertionPoint.h Diff Modified: trunk/Source/WebCore/ChangeLog (137118 => 137119) --- trunk/Source/WebCore/ChangeLog 2012-12-10 08:42:40 UTC (rev 137118) +++ trunk/Source/WebCore/ChangeLog 2012-12-10 09:03:06 UTC (rev 137119) @@ -1,3 +1,27 @@ +2012-12-10 Hajime Morrita morr...@google.com + +[Shadow DOM][Refacdtoring] nextTo() and previousTo() can be part of ContentDistribution +https://bugs.webkit.org/show_bug.cgi?id=104514 + +Reviewed by Kentaro Hara. + +InsertionPoint::nextTo() and InsertionPoint::previousTo() are an +query to distributed nodes, which is what ContentDistribution +represents. We can move them to better home. + +No new tests. No behavior change. + +* html/shadow/ContentDistributor.cpp: +(WebCore::ContentDistribution::nextTo): Moved from InsertionPoint +(WebCore): +(WebCore::ContentDistribution::previousTo): Moved from InsertionPoint +* html/shadow/ContentDistributor.h: +(ContentDistribution): +* html/shadow/InsertionPoint.cpp: +* html/shadow/InsertionPoint.h: +(WebCore::InsertionPoint::nextTo): Delegated to ContentDistribution +(WebCore::InsertionPoint::previousTo): Delegated to ContentDistribution + 2012-12-10 Joanmarie Diggs jdi...@igalia.com [GTK] accessibility/language-attribute.html is failing Modified: trunk/Source/WebCore/html/shadow/ContentDistributor.cpp (137118 => 137119) --- trunk/Source/WebCore/html/shadow/ContentDistributor.cpp 2012-12-10 08:42:40 UTC (rev 137118) +++ trunk/Source/WebCore/html/shadow/ContentDistributor.cpp 2012-12-10 09:03:06 UTC (rev 137119) @@ -58,6 +58,23 @@ return it.get()-value; } +Node* ContentDistribution::nextTo(const Node* node) const +{ +size_t index = find(node); +if (index == notFound || index + 1 == size()) +return 0; +return at(index + 1).get(); +} + +Node* ContentDistribution::previousTo(const Node* node) const +{ +size_t index = find(node); +if (index == notFound || !index) +return 0; +return at(index - 1).get(); +} + + ShadowRootContentDistributionData::ShadowRootContentDistributionData() : m_insertionPointAssignedTo(0) , m_numberOfShadowElementChildren(0) Modified: trunk/Source/WebCore/html/shadow/ContentDistributor.h (137118 => 137119) --- trunk/Source/WebCore/html/shadow/ContentDistributor.h 2012-12-10 08:42:40 UTC (rev 137118) +++ trunk/Source/WebCore/html/shadow/ContentDistributor.h 2012-12-10 09:03:06 UTC (rev 137119) @@ -58,6 +58,8 @@ bool contains(const Node* node) const { return m_indices.contains(node); } size_t find(const Node*) const; +Node* nextTo(const Node*) const; +Node* previousTo(const Node*) const; void swap(ContentDistribution other); Modified: trunk/Source/WebCore/html/shadow/InsertionPoint.cpp (137118 => 137119) --- trunk/Source/WebCore/html/shadow/InsertionPoint.cpp 2012-12-10 08:42:40 UTC (rev 137118) +++ trunk/Source/WebCore/html/shadow/InsertionPoint.cpp 2012-12-10 09:03:06 UTC (rev 137119) @@ -112,22 +112,6 @@ return !isShadowBoundary() HTMLElement::rendererIsNeeded(context); } -Node* InsertionPoint::nextTo(const Node* node) const -{ -size_t index = m_distribution.find(node); -if (index == notFound || index + 1 == m_distribution.size()) -return 0; -return m_distribution.at(index + 1).get(); -} - -Node* InsertionPoint::previousTo(const Node* node) const -{ -size_t index = m_distribution.find(node); -if (index == notFound || !index) -return 0; -return m_distribution.at(index - 1).get(); -} - void InsertionPoint::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta) {
[webkit-changes] [137233] trunk/Source/WebCore
Title: [137233] trunk/Source/WebCore Revision 137233 Author morr...@google.com Date 2012-12-10 17:42:16 -0800 (Mon, 10 Dec 2012) Log Message [Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShadowRoot should be moved to InsertionPoint https://bugs.webkit.org/show_bug.cgi?id=104516 Reviewed by Dimitri Glazkov. This change pulls duplicated code in removedFrom() and insertedInto() of both both HTMLShadowElement and HTMLContentElement to their super class InsertionPoint. This is a part of effor that encapsulate node distribution algorithm to ContentDistributor and its family. No new tests, no behavior change. * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::registerInsertionPoint): Added. (WebCore::ShadowRoot::unregisterInsertionPoint): Added. * dom/ShadowRoot.h: (ShadowRoot): * html/shadow/ContentDistributor.cpp: (WebCore::ShadowRootContentDistributionData::regiterInsertionPoint): Generalized two methods for content and shadow. (WebCore): (WebCore::ShadowRootContentDistributionData::unregisterInsertionPoint): Ditto. * html/shadow/ContentDistributor.h: (ShadowRootContentDistributionData): * html/shadow/HTMLContentElement.cpp: (WebCore::HTMLContentElement::HTMLContentElement): * html/shadow/HTMLContentElement.h: * html/shadow/HTMLShadowElement.cpp: (WebCore::HTMLShadowElement::HTMLShadowElement): * html/shadow/HTMLShadowElement.h: * html/shadow/InsertionPoint.cpp: (WebCore::InsertionPoint::InsertionPoint): (WebCore::InsertionPoint::insertedInto): Pulled up from subclasses (WebCore::InsertionPoint::removedFrom): Pulled up from subclasses * html/shadow/InsertionPoint.h: (InsertionPoint): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/html/shadow/ContentDistributor.cpp trunk/Source/WebCore/html/shadow/ContentDistributor.h trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.h trunk/Source/WebCore/html/shadow/HTMLShadowElement.cpp trunk/Source/WebCore/html/shadow/HTMLShadowElement.h trunk/Source/WebCore/html/shadow/InsertionPoint.cpp trunk/Source/WebCore/html/shadow/InsertionPoint.h Diff Modified: trunk/Source/WebCore/ChangeLog (137232 => 137233) --- trunk/Source/WebCore/ChangeLog 2012-12-11 01:40:46 UTC (rev 137232) +++ trunk/Source/WebCore/ChangeLog 2012-12-11 01:42:16 UTC (rev 137233) @@ -1,3 +1,43 @@ +2012-12-10 Hajime Morrita morr...@google.com + +[Shadow DOM][Refactoring] HTMLContentElement,HTMLShadowElement::m_registeredWithShadowRoot should be moved to InsertionPoint +https://bugs.webkit.org/show_bug.cgi?id=104516 + +Reviewed by Dimitri Glazkov. + +This change pulls duplicated code in removedFrom() and +insertedInto() of both both HTMLShadowElement and +HTMLContentElement to their super class InsertionPoint. + +This is a part of effor that encapsulate node distribution algorithm to +ContentDistributor and its family. + +No new tests, no behavior change. + +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::registerInsertionPoint): Added. +(WebCore::ShadowRoot::unregisterInsertionPoint): Added. +* dom/ShadowRoot.h: +(ShadowRoot): +* html/shadow/ContentDistributor.cpp: +(WebCore::ShadowRootContentDistributionData::regiterInsertionPoint): Generalized two methods for content and shadow. +(WebCore): +(WebCore::ShadowRootContentDistributionData::unregisterInsertionPoint): Ditto. +* html/shadow/ContentDistributor.h: +(ShadowRootContentDistributionData): +* html/shadow/HTMLContentElement.cpp: +(WebCore::HTMLContentElement::HTMLContentElement): +* html/shadow/HTMLContentElement.h: +* html/shadow/HTMLShadowElement.cpp: +(WebCore::HTMLShadowElement::HTMLShadowElement): +* html/shadow/HTMLShadowElement.h: +* html/shadow/InsertionPoint.cpp: +(WebCore::InsertionPoint::InsertionPoint): +(WebCore::InsertionPoint::insertedInto): Pulled up from subclasses +(WebCore::InsertionPoint::removedFrom): Pulled up from subclasses +* html/shadow/InsertionPoint.h: +(InsertionPoint): + 2012-12-10 Jon Lee jon...@apple.com Keep track of plug-in snapshots clicked by user Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (137232 => 137233) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-12-11 01:40:46 UTC (rev 137232) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-12-11 01:42:16 UTC (rev 137233) @@ -358,14 +358,14 @@ return m_distributionData.get(); } -void ShadowRoot::registerShadowElement() +void ShadowRoot::registerInsertionPoint(InsertionPoint* point) { -ensureDistributionData()-incrementNumberOfShadowElementChildren(); +ensureDistributionData()-regiterInsertionPoint(this, point); } -void ShadowRoot::unregisterShadowElement() +void Shad
[webkit-changes] [136924] trunk
hostWithUAShadow = document.createElement('input'); +shouldBeNull(hostWithUAShadow.webkitShadowRoot); + +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (136923 => 136924) --- trunk/Source/WebCore/ChangeLog 2012-12-07 07:02:31 UTC (rev 136923) +++ trunk/Source/WebCore/ChangeLog 2012-12-07 07:20:18 UTC (rev 136924) @@ -1,3 +1,74 @@ +2012-12-06 Hajime Morrita morr...@google.com + +[Shadow DOM] Implement Element::shadowRoot with prefix +https://bugs.webkit.org/show_bug.cgi?id=102912 + +Reviewed by Dimitri Glazkov. + +- Added Element::shadowRoot() which return the youngest author shadow root. +- Renamed existing Node::shadowRoot() to containingShadowRoot() to avoid name shadowing. + The name shadowRoot() is confusing anyway so this is good opportunity to rename it. + +Test: fast/dom/shadow/shadow-aware-shadow-root.html + +* css/SelectorChecker.cpp: +(WebCore::SelectorChecker::checkSelector): +* css/StyleScopeResolver.cpp: +(WebCore::StyleScopeResolver::scopeFor): +(WebCore::StyleScopeResolver::addHostRule): +* dom/Element.cpp: +(WebCore::Element::shadowRoot): +(WebCore): +* dom/Element.h: +(Element): +* dom/Element.idl: +* dom/ElementShadow.cpp: +(WebCore::ElementShadow::setShouldCollectSelectFeatureSet): +* dom/Node.cpp: +(WebCore::Node::rendererIsEditable): +(WebCore::Node::shadowHost): +(WebCore::Node::shadowAncestorNode): +(WebCore::Node::containingShadowRoot): +* dom/Node.h: +(Node): +* dom/Range.cpp: +(WebCore::Range::shadowRoot): +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::insertedInto): +(WebCore::ShadowRoot::removedFrom): +* dom/ShadowRoot.h: +(WebCore::ShadowRoot::isAccessible): +* editing/TextIterator.cpp: +(WebCore::TextIterator::handleReplacedElement): +* editing/htmlediting.cpp: +(WebCore::indexForVisiblePosition): +* html/HTMLStyleElement.cpp: +(WebCore::HTMLStyleElement::scopedAttributeChanged): +(WebCore::HTMLStyleElement::registerWithScopingNode): +(WebCore::HTMLStyleElement::removedFrom): +* html/shadow/ContentDistributor.cpp: +(WebCore::ContentDistributor::distribute): +* html/shadow/HTMLContentElement.cpp: +(WebCore::HTMLContentElement::parseAttribute): +(WebCore::HTMLContentElement::insertedInto): +(WebCore::HTMLContentElement::removedFrom): +* html/shadow/HTMLShadowElement.cpp: +(WebCore::HTMLShadowElement::insertedInto): +(WebCore::HTMLShadowElement::removedFrom): +* html/shadow/InsertionPoint.cpp: +(WebCore::InsertionPoint::attach): +(WebCore::InsertionPoint::detach): +(WebCore::InsertionPoint::isActive): +(WebCore::InsertionPoint::childrenChanged): +(WebCore::InsertionPoint::insertedInto): +(WebCore::InsertionPoint::removedFrom): +(WebCore::InsertionPoint::setResetStyleInheritance): +* page/EventHandler.cpp: +(WebCore::instanceAssociatedWithShadowTreeElement): +* svg/SVGElement.cpp: +(WebCore::SVGElement::correspondingElement): +(WebCore::collectInstancesForSVGElement): + 2012-12-06 Michael Pruett mich...@68k.org IndexedDB: Replace int64 with int64_t Modified: trunk/Source/WebCore/css/SelectorChecker.cpp (136923 => 136924) --- trunk/Source/WebCore/css/SelectorChecker.cpp 2012-12-07 07:02:31 UTC (rev 136923) +++ trunk/Source/WebCore/css/SelectorChecker.cpp 2012-12-07 07:20:18 UTC (rev 136924) @@ -448,7 +448,7 @@ if (context.selector-m_match == CSSSelector::PseudoElement) { if (context.selector-isCustomPseudoElement()) { -if (ShadowRoot* root = context.element-shadowRoot()) { +if (ShadowRoot* root = context.element-containingShadowRoot()) { if (context.element-shadowPseudoId() != context.selector-value()) return SelectorFailsLocally; Modified: trunk/Source/WebCore/css/StyleScopeResolver.cpp (136923 => 136924) --- trunk/Source/WebCore/css/StyleScopeResolver.cpp 2012-12-07 07:02:31 UTC (rev 136923) +++ trunk/Source/WebCore/css/StyleScopeResolver.cpp 2012-12-07 07:20:18 UTC (rev 136924) @@ -68,7 +68,7 @@ HTMLStyleElement* styleElement = static_castHTMLStyleElement*(ownerNode); if (!styleElement-scoped()) -return styleElement-isInShadowTree() ? styleElement-shadowRoot() : 0; +return styleElement-isInShadowTree() ? styleElement-containingShadowRoot() : 0; ContainerNode* parent = styleElement-parentNode(); if (!parent) @@ -175,7 +175,7 @@ if (!scope || !scope-isInShadowTree()) return; -ShadowRoot* shadowRoot = scope-shadowRoot(); +ShadowRoot* shadowRoot = scope-containingShadowRoot();
[webkit-changes] [136405] trunk
Title: [136405] trunk Revision 136405 Author morr...@google.com Date 2012-12-03 09:06:36 -0800 (Mon, 03 Dec 2012) Log Message Corrupted DOM tree during appendChild/insertBefore https://bugs.webkit.org/show_bug.cgi?id=103601 Reviewed by Abhishek Arya. Source/WebCore: There are some missing protection in appendChild() and insertBefore(). This change added these. Dromaeo dom-modify shows no speed regression (5445run/s before vs 5351run/s after) Tests: fast/events/mutation-during-append-child.html fast/events/mutation-during-insert-before.html * dom/ContainerNode.cpp: (WebCore::checkAcceptChildGuaranteedNodeTypes): (WebCore): (WebCore::ContainerNode::insertBefore): (WebCore::ContainerNode::appendChild): LayoutTests: * fast/events/mutation-during-append-child-expected.txt: Added. * fast/events/mutation-during-append-child.html: Added. * fast/events/mutation-during-insert-before-expected.txt: Added. * fast/events/mutation-during-insert-before.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp Added Paths trunk/LayoutTests/fast/events/mutation-during-append-child-expected.txt trunk/LayoutTests/fast/events/mutation-during-append-child.html trunk/LayoutTests/fast/events/mutation-during-insert-before-expected.txt trunk/LayoutTests/fast/events/mutation-during-insert-before.html Diff Modified: trunk/LayoutTests/ChangeLog (136404 => 136405) --- trunk/LayoutTests/ChangeLog 2012-12-03 17:01:57 UTC (rev 136404) +++ trunk/LayoutTests/ChangeLog 2012-12-03 17:06:36 UTC (rev 136405) @@ -1,3 +1,15 @@ +2012-12-03 Hajime Morrita morr...@google.com + +Corrupted DOM tree during appendChild/insertBefore +https://bugs.webkit.org/show_bug.cgi?id=103601 + +Reviewed by Abhishek Arya. + +* fast/events/mutation-during-append-child-expected.txt: Added. +* fast/events/mutation-during-append-child.html: Added. +* fast/events/mutation-during-insert-before-expected.txt: Added. +* fast/events/mutation-during-insert-before.html: Added. + 2012-12-03 Jussi Kukkonen jussi.kukko...@intel.com [GTK][EFL] Gardening for media/video-volume.html Added: trunk/LayoutTests/fast/events/mutation-during-append-child-expected.txt (0 => 136405) --- trunk/LayoutTests/fast/events/mutation-during-append-child-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-append-child-expected.txt 2012-12-03 17:06:36 UTC (rev 136405) @@ -0,0 +1,10 @@ +Ensures that appendChild() throws an exception if mutation even handler does something wrong + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS newparent.appendChild(child); threw exception Error: HierarchyRequestError: DOM Exception 3. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/events/mutation-during-append-child.html (0 => 136405) --- trunk/LayoutTests/fast/events/mutation-during-append-child.html (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-append-child.html 2012-12-03 17:06:36 UTC (rev 136405) @@ -0,0 +1,23 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div + div id=child/div + div id=newparent/div +/div +script +description(Ensures that appendChild() throws an exception if mutation even handler does something wrong); + +var listener = function() { +document.removeEventListener(DOMNodeRemoved, listener, false); +child.appendChild(newparent); +}; +document.addEventListener(DOMNodeRemoved, listener, false); +shouldThrow(newparent.appendChild(child);, 'Error: HierarchyRequestError: DOM Exception 3'); +/script +script src="" +/body +/html Added: trunk/LayoutTests/fast/events/mutation-during-insert-before-expected.txt (0 => 136405) --- trunk/LayoutTests/fast/events/mutation-during-insert-before-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-insert-before-expected.txt 2012-12-03 17:06:36 UTC (rev 136405) @@ -0,0 +1,10 @@ +Ensures that insertBefore() throws an exception if mutation even handler does something wrong + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS newparent.insertBefore(child, beforeChild); threw exception Error: HierarchyRequestError: DOM Exception 3. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/events/mutation-during-insert-before.html (0 => 136405) --- trunk/LayoutTests/fast/events/mutation-during-insert-before.html (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-insert-before.html 2012-12-03 17:06:36 UTC (rev 136405) @@ -0,0 +1,23 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div + div id=child/div + div id=newparentspan id=beforeChild/div +/div +script +description(Ensures that insertBefore() throws an exception
[webkit-changes] [136131] trunk
Title: [136131] trunk Revision 136131 Author morr...@google.com Date 2012-11-29 07:33:03 -0800 (Thu, 29 Nov 2012) Log Message Source/WebCore: HTMLMediaElement's .textTracks property does not reflect track element https://bugs.webkit.org/show_bug.cgi?id=103420 Reviewed by Eric Carlson. There were some assumptions that track elements are valid only if the parent media is in document. This change relaxes this assumption so that track is valid when it has media as a parent regardless whether the media is in the document or not. HTMLMediaElement::didAddTrack and didRemoveTrack are now called when the track is inserted to or removed from the parent media element. Test: media/track/track-node-add-remove.html * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::didRemoveTrack): Renamed from willRemoveTrack() to reflect the timing. This was once called from Node::willRemove(), which was removed a while ago. * html/HTMLMediaElement.h: (HTMLMediaElement): * html/HTMLTrackElement.cpp: (WebCore::HTMLTrackElement::insertedInto): The old code notified parent media only if the subtree became a part of the document. Now it notifies the media when this track becomes a child of that media. (WebCore::HTMLTrackElement::removedFrom): The old code notifies the parent media every time as long as the parent is available. Now it notifies the media only if this track is removed from the parent media. This matches how corresponding notification is done in insertedInto(). * html/track/LoadableTextTrack.cpp: (WebCore::LoadableTextTrack::trackElementIndex): LayoutTests: HTMLMediaElement's .textTracks property does not reflect track element https://bugs.webkit.org/show_bug.cgi?id=103420 Reviewed by Eric Carlson. * media/track/track-node-add-remove-expected.txt: Added. * media/track/track-node-add-remove.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLMediaElement.cpp trunk/Source/WebCore/html/HTMLMediaElement.h trunk/Source/WebCore/html/HTMLTrackElement.cpp trunk/Source/WebCore/html/track/LoadableTextTrack.cpp Added Paths trunk/LayoutTests/media/track/track-node-add-remove-expected.txt trunk/LayoutTests/media/track/track-node-add-remove.html Diff Modified: trunk/LayoutTests/ChangeLog (136130 => 136131) --- trunk/LayoutTests/ChangeLog 2012-11-29 15:31:17 UTC (rev 136130) +++ trunk/LayoutTests/ChangeLog 2012-11-29 15:33:03 UTC (rev 136131) @@ -1,3 +1,13 @@ +2012-11-29 Hajime Morrita morr...@google.com + +HTMLMediaElement's .textTracks property does not reflect track element +https://bugs.webkit.org/show_bug.cgi?id=103420 + +Reviewed by Eric Carlson. + +* media/track/track-node-add-remove-expected.txt: Added. +* media/track/track-node-add-remove.html: Added. + 2012-11-29 Alexander Pavlov apav...@chromium.org [Chromium] Unreviewed, update Mac expectation after r136128. Added: trunk/LayoutTests/media/track/track-node-add-remove-expected.txt (0 => 136131) --- trunk/LayoutTests/media/track/track-node-add-remove-expected.txt (rev 0) +++ trunk/LayoutTests/media/track/track-node-add-remove-expected.txt 2012-11-29 15:33:03 UTC (rev 136131) @@ -0,0 +1,24 @@ +Adding tracks outside the DOM tree: +PASS video.textTracks.length is 2 +PASS video.textTracks[0] is tracka.track +PASS video.textTracks[1] is trackb.track +Inserting the parent video element into the document. +PASS video.textTracks.length is 2 +PASS video.textTracks[0] is tracka.track +PASS video.textTracks[1] is trackb.track +Inserting and removing another track in the document. +PASS video.textTracks.length is 3 +PASS video.textTracks[2] is trackc.track +PASS video.textTracks.length is 2 +PASS video.textTracks[0] is tracka.track +PASS video.textTracks[1] is trackc.track +Removing the video from the document. +PASS video.textTracks.length is 2 +PASS video.textTracks[0] is tracka.track +PASS video.textTracks[1] is trackc.track +PASS video.textTracks.length is 1 +PASS video.textTracks[0] is trackc.track +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/media/track/track-node-add-remove.html (0 => 136131) --- trunk/LayoutTests/media/track/track-node-add-remove.html (rev 0) +++ trunk/LayoutTests/media/track/track-node-add-remove.html 2012-11-29 15:33:03 UTC (rev 136131) @@ -0,0 +1,50 @@ +!DOCTYPE html +html +head +script src="" +/head +body +script +var video = document.createElement('video'); + +var tracka = document.createElement('track'); +video.appendChild(tracka); +var trackb = document.createElement('track'); +video.appendChild(trackb); + +debug(Adding tracks outside the DOM tree:); +shouldBe(video.textTracks.length, 2); +shouldBe(video.textTracks[0], tracka.track); +shouldBe(video.textTracks[1], trackb.track); + +debug(Inserting the parent video element into the document.); +document.body.appendChild(video); +shouldBe(video.t
[webkit-changes] [136076] trunk/Source/WebCore
Title: [136076] trunk/Source/WebCore Revision 136076 Author morr...@google.com Date 2012-11-28 16:51:45 -0800 (Wed, 28 Nov 2012) Log Message 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. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h Diff Modified: trunk/Source/WebCore/ChangeLog (136075 => 136076) --- trunk/Source/WebCore/ChangeLog 2012-11-29 00:20:17 UTC (rev 136075) +++ trunk/Source/WebCore/ChangeLog 2012-11-29 00:51:45 UTC (rev 136076) @@ -1,3 +1,47 @@ +2012-11-28 Hajime Morrita morr...@google.com + +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. + 2012-11-28 Kenichi Ishibashi ba...@chromium.org StyleResolver should not set NaN to font size Modified: trunk/Source/WebCore/dom/ContainerNode.cpp (136075 => 136076) --- trunk/Source/WebCore/dom/ContainerNode.cpp 2012-11-29 00:20:17 UTC (rev 136075) +++ trunk/Source/WebCo
[webkit-changes] [136092] trunk
Title: [136092] trunk Revision 136092 Author morr...@google.com Date 2012-11-28 21:27:07 -0800 (Wed, 28 Nov 2012) Log Message [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: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.idl Diff Modified: trunk/LayoutTests/ChangeLog (136091 => 136092) --- trunk/LayoutTests/ChangeLog 2012-11-29 05:20:54 UTC (rev 136091) +++ trunk/LayoutTests/ChangeLog 2012-11-29 05:27:07 UTC (rev 136092) @@ -1,3 +1,12 @@ +2012-11-28 Hajime Morrita morr...@google.com + +[Shadow DOM] Element.createShadowRoot() should be prefixed. +https://bugs.webkit.org/show_bug.cgi?id=103595 + +Reviewed by Kentaro Hara. + +* fast/dom/shadow/shadow-aware-create-shadow-root.html: + 2012-11-28 Hayato Ito hay...@chromium.org Test the return value from Node::compareDocumentPositionMake more strictly. Modified: trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html (136091 => 136092) --- trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html 2012-11-29 05:20:54 UTC (rev 136091) +++ trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html 2012-11-29 05:27:07 UTC (rev 136092) @@ -6,6 +6,7 @@ body script description(Tests for ShadowAware JS APIs.); +Element.prototype.createShadowRoot = Element.prototype.createShadowRoot || Element.prototype.webkitCreateShadowRoot; // ShadowAware.createShadowRoot() var host = document.createElement('div'); Modified: trunk/Source/WebCore/ChangeLog (136091 => 136092) --- trunk/Source/WebCore/ChangeLog 2012-11-29 05:20:54 UTC (rev 136091) +++ trunk/Source/WebCore/ChangeLog 2012-11-29 05:27:07 UTC (rev 136092) @@ -1,3 +1,14 @@ +2012-11-28 Hajime Morrita morr...@google.com + +[Shadow DOM] Element.createShadowRoot() should be prefixed. +https://bugs.webkit.org/show_bug.cgi?id=103595 + +Reviewed by Kentaro Hara. + +No new tests, updated shadow-aware-create-shadow-root.html to follow the change. + +* dom/Element.idl: + 2012-11-28 Hayato Ito hay...@chromium.org Node::compareDocumentPosition returns wrong value for a node in the different shadow tree. Modified: trunk/Source/WebCore/dom/Element.idl (136091 => 136092) --- trunk/Source/WebCore/dom/Element.idl 2012-11-29 05:20:54 UTC (rev 136091) +++ trunk/Source/WebCore/dom/Element.idl 2012-11-29 05:27:07 UTC (rev 136092) @@ -122,7 +122,7 @@ // ShadowAware API #if defined(ENABLE_SHADOW_DOM) ENABLE_SHADOW_DOM [Reflect, V8EnabledAtRuntime=shadowDOM] attribute DOMString pseudo; -[V8EnabledAtRuntime=shadowDOM] ShadowRoot createShadowRoot() raises(DOMException); +[V8EnabledAtRuntime=shadowDOM, ImplementedAs=createShadowRoot] ShadowRoot webkitCreateShadowRoot() raises(DOMException); #endif // DOM 4 ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135833] trunk/Source/WebCore
Title: [135833] trunk/Source/WebCore Revision 135833 Author morr...@google.com Date 2012-11-27 00:49:23 -0800 (Tue, 27 Nov 2012) Log Message [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: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/DocumentFragment.cpp trunk/Source/WebCore/dom/DocumentFragment.h trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/ShadowRoot.h Diff Modified: trunk/Source/WebCore/ChangeLog (135832 => 135833) --- trunk/Source/WebCore/ChangeLog 2012-11-27 08:38:54 UTC (rev 135832) +++ trunk/Source/WebCore/ChangeLog 2012-11-27 08:49:23 UTC (rev 135833) @@ -1,3 +1,32 @@ +2012-11-27 Hajime Morrita morr...@google.com + +[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: + 2012-11-26 Kent Tamura tk...@chromium.org :read-only selector should match to date/time input types Modified: trunk/Source/WebCore/dom/DocumentFragment.cpp (135832 => 135833) --- trunk/Source/WebCore/dom/DocumentFragment.cpp 2012-11-27 08:38:54 UTC (rev 135832) +++ trunk/Source/WebCore/dom/DocumentFragment.cpp 2012-11-27 08:49:23 UTC (rev 135833) @@ -40,7 +40,7 @@ PassRefPtrDocumentFragment DocumentFragment::create(Document* document) { -return adoptRef(new DocumentFragment(document)); +return adoptRef(new DocumentFragment(document, Node::CreateDocumentFragment)); } String DocumentFragment::nodeName() const Modified: trunk/Source/WebCore/dom/DocumentFragment.h (135832 => 135833) --- trunk/Source/WebCore/dom/DocumentFragment.h 2012-11-27 08:38:54 UTC (rev 135832) +++ trunk/Source/WebCore/dom/DocumentFragment.h 2012-11-27 08:49:23 UTC (rev 135833) @@ -46,6 +46,7 @@ virtual NodeType nodeType() const; virtual PassRefPtrNode cloneNode(bool deep); virtual bool childTypeAllowed(NodeType) const; +virtual bool documentFragmentIsShadowRoot() const OVERRIDE { return false; } }; } //namespace Modified: trunk/Source/WebCore/dom/Node.cpp (135832 => 135833) --- trunk/Source/WebCore/dom/Node.cpp 2012-11-27 08:38:54 UTC (rev 135832) +++ trunk/Source/WebCore/dom/Node.cpp 2012-11-27 08:49:23 UTC (rev 135833) @@ -954,6 +954,12 @@ return isFocusable(); } +bool Node::documentFragmentIsShadowRoot() const +{ +ASSERT_NOT_REACHED(); +return false; +} + Node* Node::focusDelegate() { return this; Modified: trunk/Source/WebCore/dom/Node.h (135832 => 135833) --- trunk/Source/WebCore/dom/Node.h 2012-11-27 08:38:54 UTC (rev 135832) +++ trunk/Source/WebCore/dom/Node.h 2012-11-27 08:49:23 UTC (rev 135833) @@ -233,8 +233,10 @@ virtual bool isCharacterDataNode() const { return false; } virtual bool isFrameOwnerElement() const { return false; } virtual bool isPluginElement() const { return false; } +virtual bool documentFragmentIsShadowRoot() const; bool isDocumentNode() const; -bool isShadowRoot() const { return getFlag(IsShadowRootFlag); } +bool isDocumentFragment() const { return getFlag(IsDocumentFragmentFlag); } +bool isShadowRoot() const { return isDocumentFragment() documentFragmentIsShadowRoot(); } bool isInsertionPoint() const { return getFlag(IsInsertionPointFlag); } bool inNamedFlow() const { return getFlag(InNamedFlowFlag); } bool hasCustomCallbacks() const {
[webkit-changes] [135693] trunk
Title: [135693] trunk Revision 135693 Author morr...@google.com Date 2012-11-26 01:38:43 -0800 (Mon, 26 Nov 2012) Log Message [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. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/gobject/GNUmakefile.am trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/Element.idl Added Paths trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html Diff Modified: trunk/LayoutTests/ChangeLog (135692 => 135693) --- trunk/LayoutTests/ChangeLog 2012-11-26 09:27:28 UTC (rev 135692) +++ trunk/LayoutTests/ChangeLog 2012-11-26 09:38:43 UTC (rev 135693) @@ -1,3 +1,21 @@ +2012-11-26 Hajime Morrita morr...@google.com + +[Shadow DOM] Implement Element::createShadowRoot() +https://bugs.webkit.org/show_bug.cgi?id=102911 + +Reviewed by Kentaro Hara. + +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. + 2012-11-26 Alexander Pavlov apav...@chromium.org [Chromium] Unreviewed, mark platform/chromium/fast/forms/calendar-picker/week-picker-key-operations.html as flaky (date-dependent). Added: trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt (0 => 135693) --- trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt 2012-11-26 09:38:43 UTC (rev 135693) @@ -0,0 +1,13 @@ +Tests for ShadowAware JS APIs. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS root1.constructor is window.WebKitShadowRoot +PASS root1 is not root2 +PASS root1 is window.internals.oldestShadowRoot(host) +PASS root2 is window.internals.youngestShadowRoot(host) +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html (0 => 135693) --- trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html 2012-11-26 09:38:43 UTC (rev 135693) @@ -0,0 +1,22 @@ +!DOCTYPE html +html +head +script src="" +/head +body +script +description(Tests for ShadowAware JS APIs.); + +// ShadowAware.createShadowRoot() +var host = document.createElement('div'); +var root1 = host.createShadowRoot(); +var root2 = host.createShadowRoot(); +shouldBe(root1.constructor, window.WebKitShadowRoot); +shouldNotBe(root1, root2); +shouldBe(root1, window.internals.oldestShadowRoot(host)); +shouldBe(root2, window.internals.youngestShadowRoot(host)); + +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (135692 => 135693) --- trunk/Source/WebCore/ChangeLog 2012-11-26 09:27:28 UTC (rev 135692) +++ trunk/Source/WebCore/ChangeLog 2012-11-26 09:38:43 UTC (rev 135693) @@ -1,3 +1,25 @@ +2012-11-26 Hajime Morrita morr...@google.com + +[Shadow DOM] Implement Element::createShadowRoot() +https://bugs.webkit.org/show_bug.cgi?id=102911 + +Reviewed by Kentaro Hara. + +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::crea
[webkit-changes] [135695] trunk/Source/WebCore
Title: [135695] trunk/Source/WebCore Revision 135695 Author morr...@google.com Date 2012-11-26 02:21:53 -0800 (Mon, 26 Nov 2012) Log Message [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): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Range.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (135694 => 135695) --- trunk/Source/WebCore/ChangeLog 2012-11-26 10:11:53 UTC (rev 135694) +++ trunk/Source/WebCore/ChangeLog 2012-11-26 10:21:53 UTC (rev 135695) @@ -1,3 +1,20 @@ +2012-11-26 Hajime Morrita morr...@google.com + +[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): + 2012-11-26 Kunihiko Sakamoto ksakam...@chromium.org [Chromium] Enable input type datetime-local Modified: trunk/Source/WebCore/dom/Node.cpp (135694 => 135695) --- trunk/Source/WebCore/dom/Node.cpp 2012-11-26 10:11:53 UTC (rev 135694) +++ trunk/Source/WebCore/dom/Node.cpp 2012-11-26 10:21:53 UTC (rev 135695) @@ -1193,7 +1193,7 @@ // HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the // newChild node, or if the node to append is one of this node's ancestors. -if (newChild == newParent || newParent-isDescendantOf(newChild)) { +if (newChild-contains(newParent)) { ec = HIERARCHY_REQUEST_ERR; return; } Modified: trunk/Source/WebCore/dom/Range.cpp (135694 => 135695) --- trunk/Source/WebCore/dom/Range.cpp 2012-11-26 10:11:53 UTC (rev 135694) +++ trunk/Source/WebCore/dom/Range.cpp 2012-11-26 10:21:53 UTC (rev 135695) @@ -1447,7 +1447,7 @@ return; } -if (m_start.container() == newParent || m_start.container()-isDescendantOf(newParent.get())) { +if (newParent-contains(m_start.container())) { ec = HIERARCHY_REQUEST_ERR; return; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [135456] trunk
Title: [135456] trunk Revision 135456 Author morr...@google.com Date 2012-11-21 16:44:58 -0800 (Wed, 21 Nov 2012) Log Message [Shadow DOM][V8] Assertion failure when shadow host is reclaimed before ShadowRoot https://bugs.webkit.org/show_bug.cgi?id=102893 Reviewed by Kentaro Hara. Source/WebCore: Due to bug 88834, shadow hosts can be reclaimed before corresponding ShadowRoots are. This breaks an invariant, that is, the host is always available for any ShadowRoot. This change adds guards for the possibly broken invariant. Since bug 88834 is planned to be fixed shortly, this change doesn't aim to fix this problem by make it work correctly, but just lays a safety net which is needed until the root cause is gone. Test: fast/dom/shadow/host-wrapper-reclaimed.html * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::setInnerHTML): (WebCore::ShadowRoot::setApplyAuthorStyles): (WebCore::ShadowRoot::setResetStyleInheritance): (WebCore::ShadowRoot::childrenChanged): LayoutTests: * fast/dom/shadow/host-wrapper-reclaimed-expected.txt: Added. * fast/dom/shadow/host-wrapper-reclaimed.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ShadowRoot.cpp Added Paths trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed-expected.txt trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed.html Diff Modified: trunk/LayoutTests/ChangeLog (135455 => 135456) --- trunk/LayoutTests/ChangeLog 2012-11-22 00:28:05 UTC (rev 135455) +++ trunk/LayoutTests/ChangeLog 2012-11-22 00:44:58 UTC (rev 135456) @@ -1,3 +1,13 @@ +2012-11-21 Hajime Morrita morr...@google.com + +[Shadow DOM][V8] Assertion failure when shadow host is reclaimed before ShadowRoot +https://bugs.webkit.org/show_bug.cgi?id=102893 + +Reviewed by Kentaro Hara. + +* fast/dom/shadow/host-wrapper-reclaimed-expected.txt: Added. +* fast/dom/shadow/host-wrapper-reclaimed.html: Added. + 2012-11-21 Daniel Bates dba...@webkit.org _javascript_ fails to concatenate large strings Added: trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed-expected.txt (0 => 135456) --- trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed-expected.txt 2012-11-22 00:44:58 UTC (rev 135456) @@ -0,0 +1 @@ +PASS unless crash. Added: trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed.html (0 => 135456) --- trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/host-wrapper-reclaimed.html 2012-11-22 00:44:58 UTC (rev 135456) @@ -0,0 +1,27 @@ +!DOCTYPE html +html +head +/head +body +script +if (window.testRunner) +testRunner.dumpAsText(); + +function makeOrphanShadow() { +var host = document.createElement(div); +var shadow = new WebKitShadowRoot(host); +return shadow; +}; + +var shadow = makeOrphanShadow(); +gc(true); + +try { shadow.innerHTML = Hello; } catch(e) { } +shadow.appendChild(document.createElement(span)); +shadow.resetStyleInheritance = true; +shadow.applyAuthorStyles = false; + +document.body.innerHTML = PASS unless crash.; +/script +/body +/html Modified: trunk/Source/WebCore/ChangeLog (135455 => 135456) --- trunk/Source/WebCore/ChangeLog 2012-11-22 00:28:05 UTC (rev 135455) +++ trunk/Source/WebCore/ChangeLog 2012-11-22 00:44:58 UTC (rev 135456) @@ -1,3 +1,28 @@ +2012-11-21 Hajime Morrita morr...@google.com + +[Shadow DOM][V8] Assertion failure when shadow host is reclaimed before ShadowRoot +https://bugs.webkit.org/show_bug.cgi?id=102893 + +Reviewed by Kentaro Hara. + +Due to bug 88834, shadow hosts can be reclaimed before +corresponding ShadowRoots are. This breaks an invariant, that is, +the host is always available for any ShadowRoot. This change adds +guards for the possibly broken invariant. + +Since bug 88834 is planned to be fixed shortly, this change +doesn't aim to fix this problem by make it work correctly, but +just lays a safety net which is needed until the root cause is +gone. + +Test: fast/dom/shadow/host-wrapper-reclaimed.html + +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::setInnerHTML): +(WebCore::ShadowRoot::setApplyAuthorStyles): +(WebCore::ShadowRoot::setResetStyleInheritance): +(WebCore::ShadowRoot::childrenChanged): + 2012-11-21 Dirk Schulze k...@webkit.org Make CachedSVGDocumentReference independent of FilterOperation Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (135455 => 135456) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-11-22 00:28:05 UTC (rev 135455) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-11-22 00:44:58 UTC (rev 135456) @@ -46,6 +46,13 @@ #include StyleResolver.h #include markup.h +// FIXME: This shouldn'
[webkit-changes] [135464] trunk
Title: [135464] trunk Revision 135464 Author morr...@google.com Date 2012-11-21 19:15:14 -0800 (Wed, 21 Nov 2012) Log Message [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 * 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. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/Element.idl Added Paths trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html Diff Modified: trunk/LayoutTests/ChangeLog (135463 => 135464) --- trunk/LayoutTests/ChangeLog 2012-11-22 03:08:46 UTC (rev 135463) +++ trunk/LayoutTests/ChangeLog 2012-11-22 03:15:14 UTC (rev 135464) @@ -1,3 +1,21 @@ +2012-11-21 Hajime Morrita morr...@google.com + +[Shadow DOM] Implement Element::createShadowRoot() +https://bugs.webkit.org/show_bug.cgi?id=102911 + +Reviewed by Kentaro Hara. + +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. + 2012-11-21 Dana Jansens dan...@chromium.org Remove crashing expectation for css3/filters/effect-reference-ordering-hw.html Added: trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt (0 => 135464) --- trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root-expected.txt 2012-11-22 03:15:14 UTC (rev 135464) @@ -0,0 +1,13 @@ +Tests for ShadowAware JS APIs. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS root1.constructor is window.WebKitShadowRoot +PASS root1 is not root2 +PASS root1 is window.internals.oldestShadowRoot(host) +PASS root2 is window.internals.youngestShadowRoot(host) +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html (0 => 135464) --- trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-aware-create-shadow-root.html 2012-11-22 03:15:14 UTC (rev 135464) @@ -0,0 +1,22 @@ +!DOCTYPE html +html +head +script src="" +/head +body +script +description(Tests for ShadowAware JS APIs.); + +// ShadowAware.createShadowRoot() +var host = document.createElement('div'); +var root1 = host.createShadowRoot(); +var root2 = host.createShadowRoot(); +shouldBe(root1.constructor, window.WebKitShadowRoot); +shouldNotBe(root1, root2); +shouldBe(root1, window.internals.oldestShadowRoot(host)); +shouldBe(root2, window.internals.youngestShadowRoot(host)); + +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (135463 => 135464) --- trunk/Source/WebCore/ChangeLog 2012-11-22 03:08:46 UTC (rev 135463) +++ trunk/Source/WebCore/ChangeLog 2012-11-22 03:15:14 UTC (rev 135464) @@ -1,3 +1,24 @@ +2012-11-21 Hajime Morrita morr...@google.com + +[Shadow DOM] Implement Element::createShadowRoot() +https://bugs.webkit.org/show_bug.cgi?id=102911 + +Reviewed by Kentaro Hara. + +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 + +* dom/Element.cpp: +(WebCore::Element::createShadowRoot): +(WebCore): +* dom/Element.h: +(Element): +* dom/Element.idl: + 2012-11-20 James Simonsen simon...@chromium.org [Resource Timing] Po
[webkit-changes] [134366] branches/chromium/1312/Source
Title: [134366] branches/chromium/1312/Source Revision 134366 Author morr...@google.com Date 2012-11-12 22:36:48 -0800 (Mon, 12 Nov 2012) Log Message Merge 133429 - Shadow DOM should be able to be disabled per context. https://bugs.webkit.org/show_bug.cgi?id=101173 Reviewed by Dimitri Glazkov. Source/WebCore: This change pulls back relevant bits from r131549. Note that if the the port enables runtime Shadow DOM flag, this can cause slow down on some Chromium page cycler test cases (which r131549 attempted to fix). This change is temporal and the flags should be switched back from ContextFeatures to RuntimeEnabledFeatures once it gains sufficent stability. * dom/ContextFeatures.cpp: (WebCore::ContextFeatures::shadowDOMEnabled): (WebCore): * dom/ContextFeatures.h: * dom/Position.cpp: (WebCore::Position::Position): (WebCore::Position::findParent): * dom/TreeScope.cpp: (WebCore::TreeScope::getSelection): * html/HTMLTagNames.in: * html/shadow/HTMLContentElement.cpp: (WebCore::HTMLContentElement::contentTagName): * page/DOMWindow.idl: Source/WebKit/chromium: * src/ContextFeaturesClientImpl.cpp: (WebKit::ContextFeaturesClientImpl::askIfIsEnabled): TBR=morr...@google.com Review URL: https://codereview.chromium.org/11410062 Modified Paths branches/chromium/1312/Source/WebCore/dom/ContextFeatures.cpp branches/chromium/1312/Source/WebCore/dom/ContextFeatures.h branches/chromium/1312/Source/WebCore/dom/Position.cpp branches/chromium/1312/Source/WebCore/dom/TreeScope.cpp branches/chromium/1312/Source/WebCore/html/HTMLTagNames.in branches/chromium/1312/Source/WebCore/html/shadow/HTMLContentElement.cpp branches/chromium/1312/Source/WebCore/page/DOMWindow.idl branches/chromium/1312/Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp Diff Modified: branches/chromium/1312/Source/WebCore/dom/ContextFeatures.cpp (134365 => 134366) --- branches/chromium/1312/Source/WebCore/dom/ContextFeatures.cpp 2012-11-13 06:36:05 UTC (rev 134365) +++ branches/chromium/1312/Source/WebCore/dom/ContextFeatures.cpp 2012-11-13 06:36:48 UTC (rev 134366) @@ -63,6 +63,18 @@ #endif } +bool ContextFeatures::shadowDOMEnabled(Document* document) +{ +#if ENABLE(SHADOW_DOM) +if (!document) +return RuntimeEnabledFeatures::shadowDOMEnabled(); +return document-contextFeatures()-isEnabled(document, ShadowDOM, RuntimeEnabledFeatures::shadowDOMEnabled()); +#else +UNUSED_PARAM(document); +return false; +#endif +} + bool ContextFeatures::styleScopedEnabled(Document* document) { #if ENABLE(STYLE_SCOPED) Modified: branches/chromium/1312/Source/WebCore/dom/ContextFeatures.h (134365 => 134366) --- branches/chromium/1312/Source/WebCore/dom/ContextFeatures.h 2012-11-13 06:36:05 UTC (rev 134365) +++ branches/chromium/1312/Source/WebCore/dom/ContextFeatures.h 2012-11-13 06:36:48 UTC (rev 134366) @@ -40,6 +40,7 @@ public: enum FeatureType { DialogElement = 0, +ShadowDOM, StyleScoped, PagePopup, HTMLNotifications, @@ -53,6 +54,7 @@ static PassRefPtrContextFeatures create(ContextFeaturesClient*); static bool dialogElementEnabled(Document*); +static bool shadowDOMEnabled(Document*); static bool styleScopedEnabled(Document*); static bool pagePopupEnabled(Document*); static bool htmlNotificationsEnabled(Document*); Modified: branches/chromium/1312/Source/WebCore/dom/Position.cpp (134365 => 134366) --- branches/chromium/1312/Source/WebCore/dom/Position.cpp 2012-11-13 06:36:05 UTC (rev 134365) +++ branches/chromium/1312/Source/WebCore/dom/Position.cpp 2012-11-13 06:36:48 UTC (rev 134366) @@ -27,13 +27,13 @@ #include Position.h #include CSSComputedStyleDeclaration.h +#include ContextFeatures.h #include HTMLNames.h #include InlineTextBox.h #include Logging.h #include PositionIterator.h #include RenderBlock.h #include RenderText.h -#include RuntimeEnabledFeatures.h #include Text.h #include TextIterator.h #include VisiblePosition.h @@ -82,7 +82,7 @@ , m_isLegacyEditingPosition(true) { #if ENABLE(SHADOW_DOM) -ASSERT((m_anchorNode RuntimeEnabledFeatures::shadowDOMEnabled()) +ASSERT((m_anchorNode ContextFeatures::shadowDOMEnabled(m_anchorNode-document())) || !m_anchorNode || !m_anchorNode-isShadowRoot()); #else ASSERT(!m_anchorNode || !m_anchorNode-isShadowRoot()); @@ -96,7 +96,7 @@ , m_isLegacyEditingPosition(false) { #if ENABLE(SHADOW_DOM) -ASSERT((m_anchorNode RuntimeEnabledFeatures::shadowDOMEnabled()) +ASSERT((m_anchorNode ContextFeatures::shadowDOMEnabled(m_anchorNode-document())) || !m_anchorNode || !m_anchorNode-isShadowRoot()); #else ASSERT(!m_anchorNode || !m_anchorNode-isShadowRoot()); @@ -114,7 +114,7 @@ , m_isLegacyEditingPosition(false) { #if ENABLE(SHADOW_DOM) -ASSERT((m_anchorNode RuntimeEnabledFeatures::shadowDOMEnabled()) +ASSERT((m_anchorNode ContextFeatures::shadowDOMEnabled(m_anchorNode-document())) ||
[webkit-changes] [133429] trunk/Source
Title: [133429] trunk/Source Revision 133429 Author morr...@google.com Date 2012-11-04 19:09:45 -0800 (Sun, 04 Nov 2012) Log Message Shadow DOM should be able to be disabled per context. https://bugs.webkit.org/show_bug.cgi?id=101173 Reviewed by Dimitri Glazkov. Source/WebCore: This change pulls back relevant bits from r131549. Note that if the the port enables runtime Shadow DOM flag, this can cause slow down on some Chromium page cycler test cases (which r131549 attempted to fix). This change is temporal and the flags should be switched back from ContextFeatures to RuntimeEnabledFeatures once it gains sufficent stability. * dom/ContextFeatures.cpp: (WebCore::ContextFeatures::shadowDOMEnabled): (WebCore): * dom/ContextFeatures.h: * dom/Position.cpp: (WebCore::Position::Position): (WebCore::Position::findParent): * dom/TreeScope.cpp: (WebCore::TreeScope::getSelection): * html/HTMLTagNames.in: * html/shadow/HTMLContentElement.cpp: (WebCore::HTMLContentElement::contentTagName): * page/DOMWindow.idl: Source/WebKit/chromium: * src/ContextFeaturesClientImpl.cpp: (WebKit::ContextFeaturesClientImpl::askIfIsEnabled): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContextFeatures.cpp trunk/Source/WebCore/dom/ContextFeatures.h trunk/Source/WebCore/dom/Position.cpp trunk/Source/WebCore/dom/TreeScope.cpp trunk/Source/WebCore/html/HTMLTagNames.in trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/page/DOMWindow.idl trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (133428 => 133429) --- trunk/Source/WebCore/ChangeLog 2012-11-05 03:04:57 UTC (rev 133428) +++ trunk/Source/WebCore/ChangeLog 2012-11-05 03:09:45 UTC (rev 133429) @@ -1,3 +1,33 @@ +2012-11-04 MORITA Hajime morr...@google.com + +Shadow DOM should be able to be disabled per context. +https://bugs.webkit.org/show_bug.cgi?id=101173 + +Reviewed by Dimitri Glazkov. + +This change pulls back relevant bits from r131549. Note that if +the the port enables runtime Shadow DOM flag, this can cause slow +down on some Chromium page cycler test cases (which r131549 +attempted to fix). + +This change is temporal and the flags should be switched back from +ContextFeatures to RuntimeEnabledFeatures once it gains sufficent +stability. + +* dom/ContextFeatures.cpp: +(WebCore::ContextFeatures::shadowDOMEnabled): +(WebCore): +* dom/ContextFeatures.h: +* dom/Position.cpp: +(WebCore::Position::Position): +(WebCore::Position::findParent): +* dom/TreeScope.cpp: +(WebCore::TreeScope::getSelection): +* html/HTMLTagNames.in: +* html/shadow/HTMLContentElement.cpp: +(WebCore::HTMLContentElement::contentTagName): +* page/DOMWindow.idl: + 2012-11-04 Shinya Kawanaka shin...@chromium.org [Shadow] Implement custom pseudo-elements styling Modified: trunk/Source/WebCore/dom/ContextFeatures.cpp (133428 => 133429) --- trunk/Source/WebCore/dom/ContextFeatures.cpp 2012-11-05 03:04:57 UTC (rev 133428) +++ trunk/Source/WebCore/dom/ContextFeatures.cpp 2012-11-05 03:09:45 UTC (rev 133429) @@ -63,6 +63,18 @@ #endif } +bool ContextFeatures::shadowDOMEnabled(Document* document) +{ +#if ENABLE(SHADOW_DOM) +if (!document) +return RuntimeEnabledFeatures::shadowDOMEnabled(); +return document-contextFeatures()-isEnabled(document, ShadowDOM, RuntimeEnabledFeatures::shadowDOMEnabled()); +#else +UNUSED_PARAM(document); +return false; +#endif +} + bool ContextFeatures::styleScopedEnabled(Document* document) { #if ENABLE(STYLE_SCOPED) Modified: trunk/Source/WebCore/dom/ContextFeatures.h (133428 => 133429) --- trunk/Source/WebCore/dom/ContextFeatures.h 2012-11-05 03:04:57 UTC (rev 133428) +++ trunk/Source/WebCore/dom/ContextFeatures.h 2012-11-05 03:09:45 UTC (rev 133429) @@ -40,6 +40,7 @@ public: enum FeatureType { DialogElement = 0, +ShadowDOM, StyleScoped, PagePopup, HTMLNotifications, @@ -53,6 +54,7 @@ static PassRefPtrContextFeatures create(ContextFeaturesClient*); static bool dialogElementEnabled(Document*); +static bool shadowDOMEnabled(Document*); static bool styleScopedEnabled(Document*); static bool pagePopupEnabled(Document*); static bool htmlNotificationsEnabled(Document*); Modified: trunk/Source/WebCore/dom/Position.cpp (133428 => 133429) --- trunk/Source/WebCore/dom/Position.cpp 2012-11-05 03:04:57 UTC (rev 133428) +++ trunk/Source/WebCore/dom/Position.cpp 2012-11-05 03:09:45 UTC (rev 133429) @@ -27,13 +27,13 @@ #include Position.h #include CSSComputedStyleDeclaration.h +#include ContextFeatures.h #include HTMLNames.h #include InlineTextBox.h #include Logging.h #include PositionIterator.h #include RenderBlock.h
[webkit-changes] [132033] trunk/Source/WebCore
Title: [132033] trunk/Source/WebCore Revision 132033 Author morr...@google.com Date 2012-10-21 23:44:10 -0700 (Sun, 21 Oct 2012) Log Message [V8] V8EnablePerContext shouldn't require document() accessor to the native object. https://bugs.webkit.org/show_bug.cgi?id=99954 Reviewed by Kentaro Hara. It now refers ScriptExecutionContext of the creation context instead of document() of wrapped object. No new tests. No behavior change at this time. * bindings/scripts/CodeGeneratorV8.pm: (GenerateImplementation): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm Diff Modified: trunk/Source/WebCore/ChangeLog (132032 => 132033) --- trunk/Source/WebCore/ChangeLog 2012-10-22 06:37:29 UTC (rev 132032) +++ trunk/Source/WebCore/ChangeLog 2012-10-22 06:44:10 UTC (rev 132033) @@ -1,3 +1,18 @@ +2012-10-21 MORITA Hajime morr...@google.com + +[V8] V8EnablePerContext shouldn't require document() accessor to the native object. +https://bugs.webkit.org/show_bug.cgi?id=99954 + +Reviewed by Kentaro Hara. + +It now refers ScriptExecutionContext of the creation context instead of document() of +wrapped object. + +No new tests. No behavior change at this time. + +* bindings/scripts/CodeGeneratorV8.pm: +(GenerateImplementation): + 2012-10-21 Kent Tamura tk...@chromium.org Page popup: Fix crash by events after closing Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm (132032 => 132033) --- trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2012-10-22 06:37:29 UTC (rev 132032) +++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2012-10-22 06:44:10 UTC (rev 132033) @@ -3057,8 +3057,9 @@ void ${className}::installPerContextProperties(v8::Handlev8::Object instance, ${nativeType}* impl) { v8::Localv8::Object proto = v8::Localv8::Object::Cast(instance-GetPrototype()); +ScriptExecutionContext* context = toScriptExecutionContext(proto-CreationContext()); // When building QtWebkit with V8 this variable is unused when none of the features are enabled. -UNUSED_PARAM(proto); +UNUSED_PARAM(context); END # Setup the enable-by-settings attrs if we have them @@ -3066,7 +3067,7 @@ my $enableFunction = GetContextEnableFunction($runtimeAttr-signature); my $conditionalString = $codeGenerator-GenerateConditionalString($runtimeAttr-signature); push(@implContent, \n#if ${conditionalString}\n) if $conditionalString; -push(@implContent, if (${enableFunction}(impl-document())) {\n); +push(@implContent, if (context context-isDocument() ${enableFunction}(static_castDocument*(context))) {\n); push(@implContent, static const V8DOMConfiguration::BatchedAttribute attrData =\\\n); GenerateSingleBatchedAttribute($interfaceName, $runtimeAttr, ;, ); push(@implContent, END); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [132038] trunk/Source/WebCore
Title: [132038] trunk/Source/WebCore Revision 132038 Author morr...@google.com Date 2012-10-22 01:26:03 -0700 (Mon, 22 Oct 2012) Log Message Unreviewed follow up to update test result after r132033. * bindings/scripts/test/V8/V8TestObj.cpp: (WebCore::V8TestObj::installPerContextProperties): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (132037 => 132038) --- trunk/Source/WebCore/ChangeLog 2012-10-22 08:22:47 UTC (rev 132037) +++ trunk/Source/WebCore/ChangeLog 2012-10-22 08:26:03 UTC (rev 132038) @@ -1,3 +1,10 @@ +2012-10-22 MORITA Hajime morr...@google.com + +Unreviewed follow up to update test result after r132033. + +* bindings/scripts/test/V8/V8TestObj.cpp: +(WebCore::V8TestObj::installPerContextProperties): + 2012-10-21 MORITA Hajime morr...@google.com [V8] V8EnablePerContext shouldn't require document() accessor to the native object. Modified: trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp (132037 => 132038) --- trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp 2012-10-22 08:22:47 UTC (rev 132037) +++ trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp 2012-10-22 08:26:03 UTC (rev 132038) @@ -2326,15 +2326,16 @@ void V8TestObj::installPerContextProperties(v8::Handlev8::Object instance, TestObj* impl) { v8::Localv8::Object proto = v8::Localv8::Object::Cast(instance-GetPrototype()); +ScriptExecutionContext* context = toScriptExecutionContext(proto-CreationContext()); // When building QtWebkit with V8 this variable is unused when none of the features are enabled. -UNUSED_PARAM(proto); -if (ContextFeatures::enabledPerContextAttr1Enabled(impl-document())) { +UNUSED_PARAM(context); +if (context context-isDocument() ContextFeatures::enabledPerContextAttr1Enabled(static_castDocument*(context))) { static const V8DOMConfiguration::BatchedAttribute attrData =\ // Attribute 'enabledPerContextAttr1' (Type: 'attribute' ExtAttr: 'V8EnabledPerContext') {enabledPerContextAttr1, TestObjV8Internal::enabledPerContextAttr1AttrGetter, TestObjV8Internal::enabledPerContextAttr1AttrSetter, 0 /* no data */, static_castv8::AccessControl(v8::DEFAULT), static_castv8::PropertyAttribute(v8::None), 0 /* on instance */}; V8DOMConfiguration::configureAttribute(instance, proto, attrData); } -if (ContextFeatures::featureNameEnabled(impl-document())) { +if (context context-isDocument() ContextFeatures::featureNameEnabled(static_castDocument*(context))) { static const V8DOMConfiguration::BatchedAttribute attrData =\ // Attribute 'enabledPerContextAttr2' (Type: 'attribute' ExtAttr: 'V8EnabledPerContext') {enabledPerContextAttr2, TestObjV8Internal::enabledPerContextAttr2AttrGetter, TestObjV8Internal::enabledPerContextAttr2AttrSetter, 0 /* no data */, static_castv8::AccessControl(v8::DEFAULT), static_castv8::PropertyAttribute(v8::None), 0 /* on instance */}; ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [132171] trunk/Source/WebCore
Title: [132171] trunk/Source/WebCore Revision 132171 Author morr...@google.com Date 2012-10-22 19:05:07 -0700 (Mon, 22 Oct 2012) Log Message [Chromium] Needs to track ShadowRoot usage https://bugs.webkit.org/show_bug.cgi?id=99955 Reviewed by Dimitri Glazkov. Added an UMA instrumentation. * dom/ShadowRoot.cpp: (WebCore::determineUsageType): (WebCore): (WebCore::ShadowRoot::create): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ShadowRoot.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (132170 => 132171) --- trunk/Source/WebCore/ChangeLog 2012-10-23 01:22:48 UTC (rev 132170) +++ trunk/Source/WebCore/ChangeLog 2012-10-23 02:05:07 UTC (rev 132171) @@ -1,3 +1,17 @@ +2012-10-22 MORITA Hajime morr...@google.com + +[Chromium] Needs to track ShadowRoot usage +https://bugs.webkit.org/show_bug.cgi?id=99955 + +Reviewed by Dimitri Glazkov. + +Added an UMA instrumentation. + +* dom/ShadowRoot.cpp: +(WebCore::determineUsageType): +(WebCore): +(WebCore::ShadowRoot::create): + 2012-10-22 Kent Tamura tk...@chromium.org Introduce Localizer::standAloneMonthLabels Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (132170 => 132171) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-10-23 01:22:48 UTC (rev 132170) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-10-23 02:05:07 UTC (rev 132171) @@ -38,6 +38,7 @@ #include HTMLInputElement.h #include HTMLNames.h #include HTMLTextAreaElement.h +#include HistogramSupport.h #include InsertionPoint.h #include NodeRareData.h #include RuntimeEnabledFeatures.h @@ -86,8 +87,28 @@ return element-areAuthorShadowsAllowed(); } +enum ShadowRootUsageOriginType { +ShadowRootUsageOriginWeb = 0, +ShadowRootUsageOriginNotWeb, +ShadowRootUsageOriginTypes +}; + +static inline ShadowRootUsageOriginType determineUsageType(Element* host) +{ +// Enables only on CHROMIUM since this cost won't worth paying for platforms which don't collect this metrics. +#if PLATFORM(CHROMIUM) +if (!host) +return ShadowRootUsageOriginWeb; +return host-document()-url().string().startsWith(http) ? ShadowRootUsageOriginWeb : ShadowRootUsageOriginNotWeb; +#else +UNUSED_PARAM(host); +return ShadowRootUsageOriginWeb; +#endif +} + PassRefPtrShadowRoot ShadowRoot::create(Element* element, ExceptionCode ec) { +HistogramSupport::histogramEnumeration(WebCore.ShadowRoot.constructor, determineUsageType(element), ShadowRootUsageOriginTypes); return create(element, AuthorShadowRoot, ec); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [132176] trunk
Title: [132176] trunk Revision 132176 Author morr...@google.com Date 2012-10-22 21:20:01 -0700 (Mon, 22 Oct 2012) Log Message Assertion failed at WebCore::toInsertionPoint / WebCore::ContentDistributor::distribute https://bugs.webkit.org/show_bug.cgi?id=100038 Reviewed by Kent Tamura. Source/WebCore: isHTMLContentElement() assumes that the content element always has a tag name content but it doesn't when Shadow DOM feature is disabled. This fix let the function see the correct tag name. Test: fast/dom/shadow/insertion-points-with-shadow-disabled.html * html/shadow/HTMLContentElement.cpp: (WebCore::HTMLContentElement::contentTagName): * html/shadow/HTMLContentElement.h: (HTMLContentElement): (WebCore::isHTMLContentElement): LayoutTests: * fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt: Added. * fast/dom/shadow/insertion-points-with-shadow-disabled.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/html/shadow/HTMLContentElement.h Added Paths trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled.html Diff Modified: trunk/LayoutTests/ChangeLog (132175 => 132176) --- trunk/LayoutTests/ChangeLog 2012-10-23 03:43:47 UTC (rev 132175) +++ trunk/LayoutTests/ChangeLog 2012-10-23 04:20:01 UTC (rev 132176) @@ -1,3 +1,13 @@ +2012-10-22 MORITA Hajime morr...@google.com + +Assertion failed at WebCore::toInsertionPoint / WebCore::ContentDistributor::distribute +https://bugs.webkit.org/show_bug.cgi?id=100038 + +Reviewed by Kent Tamura. + +* fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt: Added. +* fast/dom/shadow/insertion-points-with-shadow-disabled.html: Added. + 2012-10-22 Dongwoo Joshua Im dw...@samsung.com Include path in the repaint-text-decoration-style.html should be changed. Added: trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt (0 => 132176) --- trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled-expected.txt 2012-10-23 04:20:01 UTC (rev 132176) @@ -0,0 +1 @@ +PASS unless crash Added: trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled.html (0 => 132176) --- trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/insertion-points-with-shadow-disabled.html 2012-10-23 04:20:01 UTC (rev 132176) @@ -0,0 +1,20 @@ +!DOCTYPE html +html +head +script +if (window.testRunner) { +testRunner.dumpAsText(); +window.internals.settings.setShadowDOMEnabled(false); +} +/script +/head +body +summary + content/content +/summary +summary + shadow/shadow +/summary +divPASS unless crash/div +/head +/html Modified: trunk/Source/WebCore/ChangeLog (132175 => 132176) --- trunk/Source/WebCore/ChangeLog 2012-10-23 03:43:47 UTC (rev 132175) +++ trunk/Source/WebCore/ChangeLog 2012-10-23 04:20:01 UTC (rev 132176) @@ -1,3 +1,22 @@ +2012-10-22 MORITA Hajime morr...@google.com + +Assertion failed at WebCore::toInsertionPoint / WebCore::ContentDistributor::distribute +https://bugs.webkit.org/show_bug.cgi?id=100038 + +Reviewed by Kent Tamura. + +isHTMLContentElement() assumes that the content element always has +a tag name content but it doesn't when Shadow DOM feature is +disabled. This fix let the function see the correct tag name. + +Test: fast/dom/shadow/insertion-points-with-shadow-disabled.html + +* html/shadow/HTMLContentElement.cpp: +(WebCore::HTMLContentElement::contentTagName): +* html/shadow/HTMLContentElement.h: +(HTMLContentElement): +(WebCore::isHTMLContentElement): + 2012-10-22 Shinya Kawanaka shin...@chromium.org [Shadow] Fallback content should also be reprojection. Modified: trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp (132175 => 132176) --- trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp 2012-10-23 03:43:47 UTC (rev 132175) +++ trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp 2012-10-23 04:20:01 UTC (rev 132176) @@ -40,7 +40,7 @@ using HTMLNames::selectAttr; -static const QualifiedName contentTagName(Document*) +const QualifiedName HTMLContentElement::contentTagName(Document*) { #if ENABLE(SHADOW_DOM) if (!RuntimeEnabledFeatures::shadowDOMEnabled()) Modified: trunk/Source/WebCore/html/shadow/HTMLContentElement.h (132175 => 132176) --- trunk/Source/WebCore/html/shadow/HTMLContentElement.h 2012-10-23 03:43:47 UTC (rev 132175) +++ trunk/Source/WebCore/html/shadow/HTMLContentElement.h 2012-10-23 04:20:01 UTC (rev 132176) @@ -38,6 +38,7 @@
[webkit-changes] [131709] trunk
Title: [131709] trunk Revision 131709 Author morr...@google.com Date 2012-10-18 00:08:58 -0700 (Thu, 18 Oct 2012) Log Message Assertion failure at TreeScopeAdopter::moveNodeToNewDocument() https://bugs.webkit.org/show_bug.cgi?id=99510 Reviewed by Kent Tamura. Source/WebCore: Shadow DOM notification call didn't have checks for mutation detection. This change adds such checks. Test: fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html * dom/ContainerNodeAlgorithms.cpp: (WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument): (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument): LayoutTests: * fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt: Added. * fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNodeAlgorithms.cpp Added Paths trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html Diff Modified: trunk/LayoutTests/ChangeLog (131708 => 131709) --- trunk/LayoutTests/ChangeLog 2012-10-18 07:05:45 UTC (rev 131708) +++ trunk/LayoutTests/ChangeLog 2012-10-18 07:08:58 UTC (rev 131709) @@ -1,3 +1,13 @@ +2012-10-18 MORITA Hajime morr...@google.com + +Assertion failure at TreeScopeAdopter::moveNodeToNewDocument() +https://bugs.webkit.org/show_bug.cgi?id=99510 + +Reviewed by Kent Tamura. + +* fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt: Added. +* fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html: Added. + 2012-10-18 Zan Dobersek zandober...@gmail.com Unreviewed GTK gardening. Added: trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt (0 => 131709) --- trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt (rev 0) +++ trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style-expected.txt 2012-10-18 07:08:58 UTC (rev 131709) @@ -0,0 +1 @@ +PASS unless crash. Added: trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html (0 => 131709) --- trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html (rev 0) +++ trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html 2012-10-18 07:08:58 UTC (rev 131709) @@ -0,0 +1,20 @@ +head +style /style +/head +body +script +testRunner.dumpAsText(); +testRunner.waitUntilDone(); +var docElement = document.documentElement; +textArea = document.createElement(textarea); +textArea.setAttribute(autofocus, ); +textArea.appendChild(document.head); +textArea.addEventListener(DOMFocusIn, function () { docElement.innerHTML = ; }, false); +docElement.appendChild(textArea); +document.implementation.createDocument(http://www.w3.org/1999/xhtml, html, null).adoptNode(textArea); +window.setTimeout(function() { +document.body.innerHTML = PASS unless crash.; +testRunner.notifyDone(); +}, 0); +/script +/body Modified: trunk/Source/WebCore/ChangeLog (131708 => 131709) --- trunk/Source/WebCore/ChangeLog 2012-10-18 07:05:45 UTC (rev 131708) +++ trunk/Source/WebCore/ChangeLog 2012-10-18 07:08:58 UTC (rev 131709) @@ -1,3 +1,19 @@ +2012-10-18 MORITA Hajime morr...@google.com + +Assertion failure at TreeScopeAdopter::moveNodeToNewDocument() +https://bugs.webkit.org/show_bug.cgi?id=99510 + +Reviewed by Kent Tamura. + +Shadow DOM notification call didn't have checks for mutation detection. +This change adds such checks. + +Test: fast/forms/textarea/textarea-autofocus-removal-while-focusing-with-style.html + +* dom/ContainerNodeAlgorithms.cpp: +(WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument): +(WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument): + 2012-10-17 Kentaro Hara hara...@chromium.org Unreviewed. Rebaselined run-bindings-tests. Modified: trunk/Source/WebCore/dom/ContainerNodeAlgorithms.cpp (131708 => 131709) --- trunk/Source/WebCore/dom/ContainerNodeAlgorithms.cpp 2012-10-18 07:05:45 UTC (rev 131708) +++ trunk/Source/WebCore/dom/ContainerNodeAlgorithms.cpp 2012-10-18 07:08:58 UTC (rev 131709) @@ -48,8 +48,10 @@ if (ElementShadow* shadow = toElement(node)-shadow()) { ShadowRootVector roots(shadow); -for (size_t i = 0; i roots.size(); ++i) -notifyNodeInsertedIntoDocument(roots[i].get()); +for (size_t i = 0; i roots.size(); ++i) { +if (node-inDocument() roots[i]-host() ==
[webkit-changes] [131561] trunk/Source/WebCore
Title: [131561] trunk/Source/WebCore Revision 131561 Author morr...@google.com Date 2012-10-17 01:00:16 -0700 (Wed, 17 Oct 2012) Log Message Crash on Frame::inScope() part 2 https://bugs.webkit.org/show_bug.cgi?id=99543 Reviewed by Kent Tamura. FrameTree::scopedChildCount() can be called even when the one of child frames is in orphan state. This change added a guard for that case. No new tests. A hard-to-test timing issue. * page/Frame.cpp: (WebCore::Frame::inScope): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/Frame.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (131560 => 131561) --- trunk/Source/WebCore/ChangeLog 2012-10-17 07:54:23 UTC (rev 131560) +++ trunk/Source/WebCore/ChangeLog 2012-10-17 08:00:16 UTC (rev 131561) @@ -1,3 +1,18 @@ +2012-10-17 MORITA Hajime morr...@google.com + +Crash on Frame::inScope() part 2 +https://bugs.webkit.org/show_bug.cgi?id=99543 + +Reviewed by Kent Tamura. + +FrameTree::scopedChildCount() can be called even when the one of child frames +is in orphan state. This change added a guard for that case. + +No new tests. A hard-to-test timing issue. + +* page/Frame.cpp: +(WebCore::Frame::inScope): + 2012-10-17 Shinya Kawanaka shin...@chromium.org Remove shadowAncestorNode() from VisibleSelection Modified: trunk/Source/WebCore/page/Frame.cpp (131560 => 131561) --- trunk/Source/WebCore/page/Frame.cpp 2012-10-17 07:54:23 UTC (rev 131560) +++ trunk/Source/WebCore/page/Frame.cpp 2012-10-17 08:00:16 UTC (rev 131561) @@ -236,9 +236,12 @@ bool Frame::inScope(TreeScope* scope) const { ASSERT(scope); -HTMLFrameOwnerElement* owner = document()-ownerElement(); -// Scoping test should be done only for child frames. -ASSERT(owner); +Document* doc = document(); +if (!doc) +return false; +HTMLFrameOwnerElement* owner = doc-ownerElement(); +if (!owner) +return false; return owner-treeScope() == scope; } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [131572] trunk
Title: [131572] trunk Revision 131572 Author morr...@google.com Date 2012-10-17 02:57:57 -0700 (Wed, 17 Oct 2012) Log Message Assertion failed on HTMLFormControlElement.cpp: updateFromElementCallback() https://bugs.webkit.org/show_bug.cgi?id=99566 Reviewed by Kent Tamura. Source/WebCore: It had a too optimistic assertion. This change removes it. Test: fast/forms/textarea/textarea-autofocus-removal-while-focusing.html * html/HTMLFormControlElement.cpp: (WebCore::updateFromElementCallback): LayoutTests: * fast/forms/textarea/textarea-autofocus-removal-while-focusing.txt: Added. * fast/forms/textarea/textarea-autofocus-removal-while-focusing.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLFormControlElement.cpp Added Paths trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-expected.txt trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing.html Diff Modified: trunk/LayoutTests/ChangeLog (131571 => 131572) --- trunk/LayoutTests/ChangeLog 2012-10-17 09:43:48 UTC (rev 131571) +++ trunk/LayoutTests/ChangeLog 2012-10-17 09:57:57 UTC (rev 131572) @@ -1,3 +1,13 @@ +2012-10-17 MORITA Hajime morr...@google.com + +Assertion failed on HTMLFormControlElement.cpp: updateFromElementCallback() +https://bugs.webkit.org/show_bug.cgi?id=99566 + +Reviewed by Kent Tamura. + +* fast/forms/textarea/textarea-autofocus-removal-while-focusing.txt: Added. +* fast/forms/textarea/textarea-autofocus-removal-while-focusing.html: Added. + 2012-10-17 Anton Muhin ant...@chromium.org Unreviewed Chromium rebaselines. Added: trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-expected.txt (0 => 131572) --- trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-expected.txt (rev 0) +++ trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing-expected.txt 2012-10-17 09:57:57 UTC (rev 131572) @@ -0,0 +1 @@ +PASS unless crash. Added: trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing.html (0 => 131572) --- trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing.html (rev 0) +++ trunk/LayoutTests/fast/forms/textarea/textarea-autofocus-removal-while-focusing.html 2012-10-17 09:57:57 UTC (rev 131572) @@ -0,0 +1,17 @@ +!DOCTYPE html +html +body +script +testRunner.dumpAsText(); +testRunner.waitUntilDone(); +var textarea = document.createElement(textarea); +textarea.setAttribute(autofocus, ); +textarea.addEventListener(DOMFocusIn, function () { document.documentElement.innerHTML = ; }, false); +document.documentElement.appendChild(textarea); +window.setTimeout(function() { +document.body.innerHTML = PASS unless crash.; +testRunner.notifyDone(); +}, 0); +/script +/body +/html Modified: trunk/Source/WebCore/ChangeLog (131571 => 131572) --- trunk/Source/WebCore/ChangeLog 2012-10-17 09:43:48 UTC (rev 131571) +++ trunk/Source/WebCore/ChangeLog 2012-10-17 09:57:57 UTC (rev 131572) @@ -1,3 +1,17 @@ +2012-10-17 MORITA Hajime morr...@google.com + +Assertion failed on HTMLFormControlElement.cpp: updateFromElementCallback() +https://bugs.webkit.org/show_bug.cgi?id=99566 + +Reviewed by Kent Tamura. + +It had a too optimistic assertion. This change removes it. + +Test: fast/forms/textarea/textarea-autofocus-removal-while-focusing.html + +* html/HTMLFormControlElement.cpp: +(WebCore::updateFromElementCallback): + 2012-10-17 Vsevolod Vlasov vse...@chromium.org Web Inspector: When dirty uiSourceCode is saved to disk from scripts navigator context menu working copy is not committed. Modified: trunk/Source/WebCore/html/HTMLFormControlElement.cpp (131571 => 131572) --- trunk/Source/WebCore/html/HTMLFormControlElement.cpp 2012-10-17 09:43:48 UTC (rev 131571) +++ trunk/Source/WebCore/html/HTMLFormControlElement.cpp 2012-10-17 09:57:57 UTC (rev 131572) @@ -297,7 +297,6 @@ { ASSERT_ARG(node, node-isElementNode()); ASSERT_ARG(node, static_castElement*(node)-isFormControlElement()); -ASSERT(node-renderer()); if (RenderObject* renderer = node-renderer()) renderer-updateFromElement(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [131549] trunk/Source
Title: [131549] trunk/Source Revision 131549 Author morr...@google.com Date 2012-10-16 22:39:01 -0700 (Tue, 16 Oct 2012) Log Message [Shadow DOM][V8] WebCore::V8DOMWindow::installPerContextProperties() is slow when shadowDOMEnabled flag is on. https://bugs.webkit.org/show_bug.cgi?id=99428 Reviewed by Adam Barth. Source/WebCore: A benchmark unveiled that installPerContextProperties() could have made DOMWindow setup slower when - Some properties are added per-context basis by turnin the flag on and - There are bunch of DOMWindow object in the page (that is, there are many iframes.) This change eliminates Shadow DOM related per-context properties from DOMWindow for getting rid of that slowness. * dom/ContextFeatures.cpp: * dom/ContextFeatures.h: Removed shadowDOMEnabled() method and related enum entry. * dom/Position.cpp: (WebCore::Position::Position): (WebCore::Position::findParent): * dom/TreeScope.cpp: (WebCore::TreeScope::getSelection): * dom/make_names.pl: Re-introduced runtimeConditional directive. (defaultTagPropertyHash): (printConstructorInterior): (printFactoryCppFile): (printWrapperFunctions): (printWrapperFactoryCppFile): * html/HTMLTagNames.in: * html/shadow/HTMLContentElement.cpp: (WebCore::contentTagName): * page/DOMWindow.idl: Source/WebKit/chromium: * src/ContextFeaturesClientImpl.cpp: (WebKit::ContextFeaturesClientImpl::askIfIsEnabled): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContextFeatures.cpp trunk/Source/WebCore/dom/ContextFeatures.h trunk/Source/WebCore/dom/Position.cpp trunk/Source/WebCore/dom/TreeScope.cpp trunk/Source/WebCore/dom/make_names.pl trunk/Source/WebCore/html/HTMLTagNames.in trunk/Source/WebCore/html/shadow/HTMLContentElement.cpp trunk/Source/WebCore/page/DOMWindow.idl trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/src/ContextFeaturesClientImpl.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (131548 => 131549) --- trunk/Source/WebCore/ChangeLog 2012-10-17 02:48:11 UTC (rev 131548) +++ trunk/Source/WebCore/ChangeLog 2012-10-17 05:39:01 UTC (rev 131549) @@ -1,3 +1,34 @@ +2012-10-16 MORITA Hajime morr...@google.com + +[Shadow DOM][V8] WebCore::V8DOMWindow::installPerContextProperties() is slow when shadowDOMEnabled flag is on. +https://bugs.webkit.org/show_bug.cgi?id=99428 + +Reviewed by Adam Barth. + +A benchmark unveiled that installPerContextProperties() could have made DOMWindow setup slower when +- Some properties are added per-context basis by turnin the flag on and +- There are bunch of DOMWindow object in the page (that is, there are many iframes.) + +This change eliminates Shadow DOM related per-context properties from DOMWindow for getting rid of that slowness. + +* dom/ContextFeatures.cpp: +* dom/ContextFeatures.h: Removed shadowDOMEnabled() method and related enum entry. +* dom/Position.cpp: +(WebCore::Position::Position): +(WebCore::Position::findParent): +* dom/TreeScope.cpp: +(WebCore::TreeScope::getSelection): +* dom/make_names.pl: Re-introduced runtimeConditional directive. +(defaultTagPropertyHash): +(printConstructorInterior): +(printFactoryCppFile): +(printWrapperFunctions): +(printWrapperFactoryCppFile): +* html/HTMLTagNames.in: +* html/shadow/HTMLContentElement.cpp: +(WebCore::contentTagName): +* page/DOMWindow.idl: + 2012-10-16 Julien Chaffraix jchaffr...@webkit.org Make RenderObject destruction during detach a top-down operation Modified: trunk/Source/WebCore/dom/ContextFeatures.cpp (131548 => 131549) --- trunk/Source/WebCore/dom/ContextFeatures.cpp 2012-10-17 02:48:11 UTC (rev 131548) +++ trunk/Source/WebCore/dom/ContextFeatures.cpp 2012-10-17 05:39:01 UTC (rev 131549) @@ -63,18 +63,6 @@ #endif } -bool ContextFeatures::shadowDOMEnabled(Document* document) -{ -#if ENABLE(SHADOW_DOM) -if (!document) -return RuntimeEnabledFeatures::shadowDOMEnabled(); -return document-contextFeatures()-isEnabled(document, ShadowDOM, RuntimeEnabledFeatures::shadowDOMEnabled()); -#else -UNUSED_PARAM(document); -return false; -#endif -} - bool ContextFeatures::styleScopedEnabled(Document* document) { #if ENABLE(STYLE_SCOPED) Modified: trunk/Source/WebCore/dom/ContextFeatures.h (131548 => 131549) --- trunk/Source/WebCore/dom/ContextFeatures.h 2012-10-17 02:48:11 UTC (rev 131548) +++ trunk/Source/WebCore/dom/ContextFeatures.h 2012-10-17 05:39:01 UTC (rev 131549) @@ -40,7 +40,6 @@ public: enum FeatureType { DialogElement = 0, -ShadowDOM, StyleScoped, PagePopup, HTMLNotifications, @@ -53,7 +52,6 @@ static PassRefPtrContextFeatures create(ContextFeaturesClient*); static bool dialogElementEnabled(Document*); -static bool shadowDOMEnabled(Document*); static bool styleScopedEnabled(Document*);
[webkit-changes] [131325] trunk/Source/WebCore
Title: [131325] trunk/Source/WebCore Revision 131325 Author morr...@google.com Date 2012-10-15 11:26:18 -0700 (Mon, 15 Oct 2012) Log Message [Regression r131167] run-webkit-tests fails https://bugs.webkit.org/show_bug.cgi?id=99279 Reviewed by Kentaro Hara. CodeGeneratorV8.pm assumed that there are only two objects which have constructor getters and overlooked TestObj. This fix relaxes that assumption to accept it. No new tests. Fixing an existing test. * bindings/scripts/CodeGeneratorV8.pm: (GenerateConstructorGetter): * bindings/scripts/test/V8/V8TestObj.cpp: (WebCore::TestObjV8Internal::TestObjConstructorGetter): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (131324 => 131325) --- trunk/Source/WebCore/ChangeLog 2012-10-15 18:14:26 UTC (rev 131324) +++ trunk/Source/WebCore/ChangeLog 2012-10-15 18:26:18 UTC (rev 131325) @@ -1,3 +1,20 @@ +2012-10-15 MORITA Hajime morr...@google.com + +[Regression r131167] run-webkit-tests fails +https://bugs.webkit.org/show_bug.cgi?id=99279 + +Reviewed by Kentaro Hara. + +CodeGeneratorV8.pm assumed that there are only two objects which have constructor getters and +overlooked TestObj. This fix relaxes that assumption to accept it. + +No new tests. Fixing an existing test. + +* bindings/scripts/CodeGeneratorV8.pm: +(GenerateConstructorGetter): +* bindings/scripts/test/V8/V8TestObj.cpp: +(WebCore::TestObjV8Internal::TestObjConstructorGetter): + 2012-10-15 Joe Mason jma...@rim.com [BlackBerry] Fix WebSockets which was disabled by recent string changes Modified: trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm (131324 => 131325) --- trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2012-10-15 18:14:26 UTC (rev 131324) +++ trunk/Source/WebCore/bindings/scripts/CodeGeneratorV8.pm 2012-10-15 18:26:18 UTC (rev 131325) @@ -835,12 +835,9 @@ END } elsif ($implClassName eq WorkerContext) { push(@implContentDecls, return perContextData-constructorForType(WrapperTypeInfo::unwrap(data), V8WorkerContext::toNative(info.Holder()));\n) +} else { +push(@implContentDecls, return perContextData-constructorForType(WrapperTypeInfo::unwrap(data), 0);\n); } -# FIXME: This code is correct for real IDL files, but fails with TestObj.idl, -# which contains methods with [V8EnabledPerContext]. -# else { -#die Unknown Context ${implClassName} -# } push(@implContentDecls, END); } END Modified: trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp (131324 => 131325) --- trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp 2012-10-15 18:14:26 UTC (rev 131324) +++ trunk/Source/WebCore/bindings/scripts/test/V8/V8TestObj.cpp 2012-10-15 18:26:18 UTC (rev 131325) @@ -1031,6 +1031,7 @@ V8PerContextData* perContextData = V8PerContextData::from(info.Holder()-CreationContext()); if (!perContextData) return v8Undefined(); +return perContextData-constructorForType(WrapperTypeInfo::unwrap(data), 0); } static void TestObjReplaceableAttrSetter(v8::Localv8::String name, v8::Localv8::Value value, const v8::AccessorInfo info) { ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [130987] trunk
Title: [130987] trunk Revision 130987 Author morr...@google.com Date 2012-10-10 18:00:37 -0700 (Wed, 10 Oct 2012) Log Message https://bugs.webkit.org/show_bug.cgi?id=95664 [Shadow DOM] should be able to be available without style scoped Reviewed by Dimitri Glazkov. Source/WebCore: This change relaxes ENABLE(STYLE_SCOPED) compilation guard and styleScopedEnabled() runtime guard. The flags now masks user visible bits of the code, rather than all of it. This change also eliminates some redundant guards for simplicity. Test: fast/dom/shadow/style-scoped-not-enabled.html * css/StyleResolver.cpp: (WebCore::StyleResolver::matchScopedAuthorRules): (WebCore::StyleResolver::locateCousinList): (WebCore::StyleResolver::canShareStyleWithElement): (WebCore::StyleResolver::locateSharedStyle): * css/StyleScopeResolver.cpp: (WebCore::StyleScopeResolver::scopeFor): * css/StyleScopeResolver.h: (WebCore): * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement): (WebCore::HTMLStyleElement::parseAttribute): (WebCore::HTMLStyleElement::scopedAttributeChanged): (WebCore::HTMLStyleElement::isRegisteredAsScoped): (WebCore::HTMLStyleElement::registerWithScopingNode): (WebCore::HTMLStyleElement::unregisterWithScopingNode): (WebCore::HTMLStyleElement::insertedInto): (WebCore::HTMLStyleElement::removedFrom): (WebCore::HTMLStyleElement::scoped): (WebCore::HTMLStyleElement::scopingElement): * html/HTMLStyleElement.h: (HTMLStyleElement): * testing/InternalSettings.cpp: Exporsing a flag for testing. (WebCore::InternalSettings::Backup::Backup): (WebCore::InternalSettings::Backup::restoreTo): (WebCore::InternalSettings::setStyleScopedEnabled): (WebCore): * testing/InternalSettings.h: Exporsing a flag for testing. (Backup): (InternalSettings): * testing/InternalSettings.idl: Exporsing a flag for testing. LayoutTests: * fast/dom/shadow/style-scoped-not-enabled-expected.txt: Added. * fast/dom/shadow/style-scoped-not-enabled.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/StyleResolver.cpp trunk/Source/WebCore/css/StyleScopeResolver.cpp trunk/Source/WebCore/css/StyleScopeResolver.h trunk/Source/WebCore/html/HTMLStyleElement.cpp trunk/Source/WebCore/html/HTMLStyleElement.h trunk/Source/WebCore/testing/InternalSettings.cpp trunk/Source/WebCore/testing/InternalSettings.h trunk/Source/WebCore/testing/InternalSettings.idl Added Paths trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled-expected.txt trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled.html Diff Modified: trunk/LayoutTests/ChangeLog (130986 => 130987) --- trunk/LayoutTests/ChangeLog 2012-10-11 01:00:26 UTC (rev 130986) +++ trunk/LayoutTests/ChangeLog 2012-10-11 01:00:37 UTC (rev 130987) @@ -1,3 +1,13 @@ +2012-10-10 MORITA Hajime morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=95664 +[Shadow DOM] should be able to be available without style scoped + +Reviewed by Dimitri Glazkov. + +* fast/dom/shadow/style-scoped-not-enabled-expected.txt: Added. +* fast/dom/shadow/style-scoped-not-enabled.html: Added. + 2012-10-10 Ojan Vafai o...@chromium.org check-layout.js should always dumpAsText Added: trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled-expected.txt (0 => 130987) --- trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled-expected.txt 2012-10-11 01:00:37 UTC (rev 130987) @@ -0,0 +1,16 @@ +This test ensures content element feature can be disabled + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS window.getComputedStyle(shouldBeApplied).color is 'rgb(0, 0, 255)' +PASS window.getComputedStyle(shouldNotBeApplied).color is 'rgb(0, 0, 0)' +PASS window.getComputedStyle(insideScope).color is 'rgb(255, 0, 0)' +PASS window.getComputedStyle(shouldNotBeScoped).color is 'rgb(255, 0, 0)' +PASS successfullyParsed is true + +TEST COMPLETE +Should not be blue +Should be red + +Should be red Added: trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled.html (0 => 130987) --- trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/style-scoped-not-enabled.html 2012-10-11 01:00:37 UTC (rev 130987) @@ -0,0 +1,35 @@ +!DOCTYPE html +html +head +script src="" +script +if (window.internals) +window.internals.settings.setStyleScopedEnabled(false); +/script +/head +body +div id=host/div +span id='shouldNotBeApplied'Should not be blue/span +div + style scoped p { color: red; } /style + p id='insideScope'Should be red/p +/div +p id='shouldNotBeScoped'Should be red/p +script +description(This test ensures content element feature can be disabled); +var host = document.getElementById(host); +var shadow = new WebKitShadowRoot(host); +shadow.innerHTML = style span { color:
[webkit-changes] [130988] trunk/Source/WebCore
Title: [130988] trunk/Source/WebCore Revision 130988 Author morr...@google.com Date 2012-10-10 18:18:28 -0700 (Wed, 10 Oct 2012) Log Message [Chromium] Crash on SpellChecker::didCheck() https://bugs.webkit.org/show_bug.cgi?id=98476 Reviewed by Kent Tamura. SpellChecker::didCheck() assumed m_processingRequest is non-NULL. However, SpellChecker::invokeRequest() calls SpellCheckRequest::didCancel(), which results didCheck() with NULL m_processingRequest. This chagne eliminates the problematic didCheck(). No new tests. The case depends on specific timing and is hard to hit by automated testing. * editing/SpellChecker.cpp: (WebCore::SpellChecker::didCheck): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/SpellChecker.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (130987 => 130988) --- trunk/Source/WebCore/ChangeLog 2012-10-11 01:00:37 UTC (rev 130987) +++ trunk/Source/WebCore/ChangeLog 2012-10-11 01:18:28 UTC (rev 130988) @@ -1,5 +1,21 @@ 2012-10-10 MORITA Hajime morr...@google.com +[Chromium] Crash on SpellChecker::didCheck() +https://bugs.webkit.org/show_bug.cgi?id=98476 + +Reviewed by Kent Tamura. + +SpellChecker::didCheck() assumed m_processingRequest is non-NULL. However, SpellChecker::invokeRequest() +calls SpellCheckRequest::didCancel(), which results didCheck() with NULL m_processingRequest. +This chagne eliminates the problematic didCheck(). + +No new tests. The case depends on specific timing and is hard to hit by automated testing. + +* editing/SpellChecker.cpp: +(WebCore::SpellChecker::didCheck): + +2012-10-10 MORITA Hajime morr...@google.com + https://bugs.webkit.org/show_bug.cgi?id=95664 [Shadow DOM] should be able to be available without style scoped Modified: trunk/Source/WebCore/editing/SpellChecker.cpp (130987 => 130988) --- trunk/Source/WebCore/editing/SpellChecker.cpp 2012-10-11 01:00:37 UTC (rev 130987) +++ trunk/Source/WebCore/editing/SpellChecker.cpp 2012-10-11 01:18:28 UTC (rev 130988) @@ -178,11 +178,8 @@ void SpellChecker::invokeRequest(PassRefPtrSpellCheckRequest request) { ASSERT(!m_processingRequest); -if (!client()) { -request-didCancel(); +if (!client()) return; -} - m_processingRequest = request; client()-requestCheckingOfString(m_processingRequest); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [130732] trunk/Source/WebCore
Title: [130732] trunk/Source/WebCore Revision 130732 Author morr...@google.com Date 2012-10-09 01:00:53 -0700 (Tue, 09 Oct 2012) Log Message [Refactoring] Scoped Style related code should have its own class. https://bugs.webkit.org/show_bug.cgi?id=98244 Reviewed by Dimitri Glazkov. This change extracts StyleScopeResolver from StyleResolver to clarify the responsibility of the style scope handling. Now we can easily see where the style scoping needs to be involed. Coming Shadow DOM related change like @host rules will fit within this class. No new tests, refactoring. * CMakeLists.txt: * GNUmakefile.list.am: * Target.pri: * WebCore.gypi: * WebCore.xcodeproj/project.pbxproj: * css/CSSAllInOne.cpp: * css/StyleResolver.cpp: (WebCore::StyleResolver::StyleResolver): (WebCore::StyleResolver::collectFeatures): (WebCore::StyleResolver::appendAuthorStylesheets): (WebCore::StyleResolver::pushParentElement): (WebCore::StyleResolver::popParentElement): (WebCore::StyleResolver::pushParentShadowRoot): (WebCore::StyleResolver::popParentShadowRoot): (WebCore::StyleResolver::matchScopedAuthorRules): (WebCore::StyleResolver::collectMatchingRulesForList): (WebCore::StyleResolver::reportMemoryUsage): * css/StyleResolver.h: (StyleResolver): * css/StyleScopeResolver.cpp: Added. (WebCore): (WebCore::StyleScopeResolver::StyleScopeResolver): (WebCore::StyleScopeResolver::~StyleScopeResolver): (WebCore::StyleScopeResolver::scopeFor): (WebCore::StyleScopeResolver::ruleSetFor): (WebCore::StyleScopeResolver::ensureRuleSetFor): (WebCore::StyleScopeResolver::setupStack): (WebCore::StyleScopeResolver::push): (WebCore::StyleScopeResolver::pop): (WebCore::StyleScopeResolver::collectFeaturesTo): (WebCore::StyleScopeResolver::reportMemoryUsage): * css/StyleScopeResolver.h: Added. (WebCore): (StyleScopeResolver): (WebCore::StyleScopeResolver::StackFrame::StackFrame): (StackFrame): (WebCore::StyleScopeResolver::hasScopedStyles): (WebCore::StyleScopeResolver::stackSize): (WebCore::StyleScopeResolver::stackFrameAt): (WebCore::StyleScopeResolver::matchesStyleBounds): (WebCore::StyleScopeResolver::stackIsConsistent): (WebCore::StyleScopeResolver::ensureStackConsistency): (WebCore::StyleScopeResolver::scopeFor): (WebCore::StyleScopeResolver::ensureRuleSetFor): Modified Paths trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/GNUmakefile.list.am trunk/Source/WebCore/Target.pri trunk/Source/WebCore/WebCore.gypi trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/css/CSSAllInOne.cpp trunk/Source/WebCore/css/StyleResolver.cpp trunk/Source/WebCore/css/StyleResolver.h Added Paths trunk/Source/WebCore/css/StyleScopeResolver.cpp trunk/Source/WebCore/css/StyleScopeResolver.h Diff Modified: trunk/Source/WebCore/CMakeLists.txt (130731 => 130732) --- trunk/Source/WebCore/CMakeLists.txt 2012-10-09 07:58:40 UTC (rev 130731) +++ trunk/Source/WebCore/CMakeLists.txt 2012-10-09 08:00:53 UTC (rev 130732) @@ -1081,6 +1081,7 @@ css/StyleResolver.cpp css/StyleRule.cpp css/StyleRuleImport.cpp +css/StyleScopeResolver.cpp css/StyleSheet.cpp css/StyleSheetContents.cpp css/StyleSheetList.cpp Modified: trunk/Source/WebCore/ChangeLog (130731 => 130732) --- trunk/Source/WebCore/ChangeLog 2012-10-09 07:58:40 UTC (rev 130731) +++ trunk/Source/WebCore/ChangeLog 2012-10-09 08:00:53 UTC (rev 130732) @@ -1,3 +1,63 @@ +2012-10-09 Hajime Morrita morr...@google.com + +[Refactoring] Scoped Style related code should have its own class. +https://bugs.webkit.org/show_bug.cgi?id=98244 + +Reviewed by Dimitri Glazkov. + +This change extracts StyleScopeResolver from StyleResolver to clarify +the responsibility of the style scope handling. Now we can easily see +where the style scoping needs to be involed. + +Coming Shadow DOM related change like @host rules will fit within this class. + +No new tests, refactoring. + +* CMakeLists.txt: +* GNUmakefile.list.am: +* Target.pri: +* WebCore.gypi: +* WebCore.xcodeproj/project.pbxproj: +* css/CSSAllInOne.cpp: +* css/StyleResolver.cpp: +(WebCore::StyleResolver::StyleResolver): +(WebCore::StyleResolver::collectFeatures): +(WebCore::StyleResolver::appendAuthorStylesheets): +(WebCore::StyleResolver::pushParentElement): +(WebCore::StyleResolver::popParentElement): +(WebCore::StyleResolver::pushParentShadowRoot): +(WebCore::StyleResolver::popParentShadowRoot): +(WebCore::StyleResolver::matchScopedAuthorRules): +(WebCore::StyleResolver::collectMatchingRulesForList): +(WebCore::StyleResolver::reportMemoryUsage): +* css/StyleResolver.h: +(StyleResolver): +* css/StyleScopeResolver.cpp: Added. +(WebCore): +(WebCore::StyleScopeResolver::StyleScopeResolver): +(WebCore::StyleScopeRe
[webkit-changes] [130249] trunk/Source/WebCore
Title: [130249] trunk/Source/WebCore Revision 130249 Author morr...@google.com Date 2012-10-02 22:26:07 -0700 (Tue, 02 Oct 2012) Log Message https://bugs.webkit.org/show_bug.cgi?id=98134 [Refactoring] StyleResolver::matchScopedAuthorRules() could be simpler. Reviewed by Dimitri Glazkov. matchScopedAuthorRules() did have some optimization which only makes sense for heavily nested shadow tree. However, we don't see such type of usage of Shadow DOM and this looks premature optimization. This change unified its triple for loop into one, which makes the code much simpler. No new tests. Covered by existing tests. * css/StyleResolver.cpp: (WebCore::StyleResolver::matchScopedAuthorRules): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/css/StyleResolver.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (130248 => 130249) --- trunk/Source/WebCore/ChangeLog 2012-10-03 05:12:10 UTC (rev 130248) +++ trunk/Source/WebCore/ChangeLog 2012-10-03 05:26:07 UTC (rev 130249) @@ -1,3 +1,21 @@ +2012-10-02 MORITA Hajime morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=98134 +[Refactoring] StyleResolver::matchScopedAuthorRules() could be simpler. + +Reviewed by Dimitri Glazkov. + +matchScopedAuthorRules() did have some optimization which only +makes sense for heavily nested shadow tree. However, we don't see +such type of usage of Shadow DOM and this looks premature +optimization. This change unified its triple for loop into one, +which makes the code much simpler. + +No new tests. Covered by existing tests. + +* css/StyleResolver.cpp: +(WebCore::StyleResolver::matchScopedAuthorRules): + 2012-10-02 Kent Tamura tk...@chromium.org Introduce Localizer::dateTimeFormatWithSecond and dateTimeFormatWithoutSecond Modified: trunk/Source/WebCore/css/StyleResolver.cpp (130248 => 130249) --- trunk/Source/WebCore/css/StyleResolver.cpp 2012-10-03 05:12:10 UTC (rev 130248) +++ trunk/Source/WebCore/css/StyleResolver.cpp 2012-10-03 05:26:07 UTC (rev 130249) @@ -962,41 +962,31 @@ if (m_scopedAuthorStyles.isEmpty()) return; -MatchOptions options(includeEmptyRules); - // Match scoped author rules by traversing the scoped element stack (rebuild it if it got inconsistent). if (!scopeStackIsConsistent(m_element)) setupScopeStack(m_element); - -unsigned int firstShadowScopeIndex = 0; -if (m_element-treeScope()-applyAuthorStyles()) { -unsigned i; -for (i = 0; i m_scopeStack.size() !m_scopeStack[i].m_scope-isInShadowTree(); ++i) { -const ScopeStackFrame frame = m_scopeStack[i]; -options.scope = frame.m_scope; -collectMatchingRules(frame.m_ruleSet, result.ranges.firstAuthorRule, result.ranges.lastAuthorRule, options); -collectMatchingRulesForRegion(frame.m_ruleSet, result.ranges.firstAuthorRule, result.ranges.lastAuthorRule, options); -} -firstShadowScopeIndex = i; -} - -if (!m_element-isInShadowTree() || m_scopeStack.isEmpty()) +if (m_scopeStack.isEmpty()) return; -unsigned scopedIndex = m_scopeStack.size(); -int authorStyleBoundsIndex = m_scopeStackParentBoundsIndex; -for ( ; scopedIndex firstShadowScopeIndex; --scopedIndex) { -if (authorStyleBoundsIndex != m_scopeStack[scopedIndex - 1].m_authorStyleBoundsIndex) -break; -} - -// Ruleset for ancestor nodes should be applied first. -for (unsigned i = scopedIndex; i m_scopeStack.size(); ++i) { +bool applyAuthorStyles = m_element-treeScope()-applyAuthorStyles(); +bool documentScope = true; +unsigned scopeSize = m_scopeStack.size(); +for (unsigned i = 0; i scopeSize; ++i) { const ScopeStackFrame frame = m_scopeStack[i]; -options.scope = frame.m_scope; +documentScope = documentScope !frame.m_scope-isInShadowTree(); +if (documentScope) { +if (!applyAuthorStyles) +continue; +} else { +if (frame.m_authorStyleBoundsIndex != m_scopeStackParentBoundsIndex) +continue; +} + +MatchOptions options(includeEmptyRules, frame.m_scope); collectMatchingRules(frame.m_ruleSet, result.ranges.firstAuthorRule, result.ranges.lastAuthorRule, options); collectMatchingRulesForRegion(frame.m_ruleSet, result.ranges.firstAuthorRule, result.ranges.lastAuthorRule, options); } + #else UNUSED_PARAM(result); UNUSED_PARAM(includeEmptyRules); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [130006] trunk/Source/WebCore
Title: [130006] trunk/Source/WebCore Revision 130006 Author morr...@google.com Date 2012-09-30 22:56:48 -0700 (Sun, 30 Sep 2012) Log Message https://bugs.webkit.org/show_bug.cgi?id=97988 Crash on FrameTree::scopedChildCount() Reviewed by Kent Tamura. The series of crash reports says that there are some null pointer access in scopedChildCount(). This change added a null guard against Frame::document(), that can return null. No new tests. This is tied to some specific timing and is hard to reproduce. * page/FrameTree.cpp: (WebCore::FrameTree::scopedChildCount): (WebCore::FrameTree::scopedChild): (WebCore): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/page/FrameTree.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (130005 => 130006) --- trunk/Source/WebCore/ChangeLog 2012-10-01 05:50:08 UTC (rev 130005) +++ trunk/Source/WebCore/ChangeLog 2012-10-01 05:56:48 UTC (rev 130006) @@ -1,3 +1,21 @@ +2012-09-30 MORITA Hajime morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=97988 +Crash on FrameTree::scopedChildCount() + +Reviewed by Kent Tamura. + +The series of crash reports says that there are some null pointer +access in scopedChildCount(). This change added a null guard +against Frame::document(), that can return null. + +No new tests. This is tied to some specific timing and is hard to reproduce. + +* page/FrameTree.cpp: +(WebCore::FrameTree::scopedChildCount): +(WebCore::FrameTree::scopedChild): +(WebCore): + 2012-09-30 Yoshifumi Inoue yo...@chromium.org Make multiple fields date/time input UI related files to available all ports Modified: trunk/Source/WebCore/page/FrameTree.cpp (130005 => 130006) --- trunk/Source/WebCore/page/FrameTree.cpp 2012-10-01 05:50:08 UTC (rev 130005) +++ trunk/Source/WebCore/page/FrameTree.cpp 2012-10-01 05:56:48 UTC (rev 130006) @@ -172,6 +172,9 @@ inline Frame* FrameTree::scopedChild(unsigned index, TreeScope* scope) const { +if (!scope) +return 0; + unsigned scopedIndex = 0; for (Frame* result = firstChild(); result; result = result-tree()-nextSibling()) { if (result-inScope(scope)) { @@ -186,6 +189,9 @@ inline Frame* FrameTree::scopedChild(const AtomicString name, TreeScope* scope) const { +if (!scope) +return 0; + for (Frame* child = firstChild(); child; child = child-tree()-nextSibling()) if (child-tree()-uniqueName() == name child-inScope(scope)) return child; @@ -194,6 +200,9 @@ inline unsigned FrameTree::scopedChildCount(TreeScope* scope) const { +if (!scope) +return 0; + unsigned scopedCount = 0; for (Frame* result = firstChild(); result; result = result-tree()-nextSibling()) { if (result-inScope(scope)) ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [129861] trunk/Source/WebCore
Title: [129861] trunk/Source/WebCore Revision 129861 Author morr...@google.com Date 2012-09-28 01:41:22 -0700 (Fri, 28 Sep 2012) Log Message Move Shadow DOM inspection feature out from experiments https://bugs.webkit.org/show_bug.cgi?id=94274 Reviewed by Pavel Feldman. This chagne turns the showShadowDOM experiments into a settings, adding aSettingsScreen entry for that. * English.lproj/localizedStrings.js: * inspector/front-end/DOMAgent.js: * inspector/front-end/Settings.js: (WebInspector.ExperimentsSettings): * inspector/front-end/SettingsScreen.js: (WebInspector.GenericSettingsTab): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/English.lproj/localizedStrings.js trunk/Source/WebCore/inspector/front-end/DOMAgent.js trunk/Source/WebCore/inspector/front-end/Settings.js trunk/Source/WebCore/inspector/front-end/SettingsScreen.js Diff Modified: trunk/Source/WebCore/ChangeLog (129860 => 129861) --- trunk/Source/WebCore/ChangeLog 2012-09-28 08:29:33 UTC (rev 129860) +++ trunk/Source/WebCore/ChangeLog 2012-09-28 08:41:22 UTC (rev 129861) @@ -1,3 +1,20 @@ +2012-09-28 MORITA Hajime morr...@google.com + +Move Shadow DOM inspection feature out from experiments +https://bugs.webkit.org/show_bug.cgi?id=94274 + +Reviewed by Pavel Feldman. + +This chagne turns the showShadowDOM experiments into a settings, +adding aSettingsScreen entry for that. + +* English.lproj/localizedStrings.js: +* inspector/front-end/DOMAgent.js: +* inspector/front-end/Settings.js: +(WebInspector.ExperimentsSettings): +* inspector/front-end/SettingsScreen.js: +(WebInspector.GenericSettingsTab): + 2012-09-27 Kent Tamura tk...@chromium.org Use Localizer in PagePopupController Modified: trunk/Source/WebCore/English.lproj/localizedStrings.js (129860 => 129861) --- trunk/Source/WebCore/English.lproj/localizedStrings.js 2012-09-28 08:29:33 UTC (rev 129860) +++ trunk/Source/WebCore/English.lproj/localizedStrings.js 2012-09-28 08:41:22 UTC (rev 129861) @@ -389,6 +389,7 @@ localizedStrings[Show counts and sizes as percentages.] = Show counts and sizes as percentages.; localizedStrings[Show function definition] = Show function definition; localizedStrings[Show inherited] = Show inherited; +localizedStrings[Show Shadow DOM] = Show Shadow DOM; localizedStrings[Show the records that are shorter than %s] = Show the records that are shorter than %s; localizedStrings[Show times as percentages.] = Show times as percentages.; localizedStrings[Show total and self times as percentages.] = Show total and self times as percentages.; Modified: trunk/Source/WebCore/inspector/front-end/DOMAgent.js (129860 => 129861) --- trunk/Source/WebCore/inspector/front-end/DOMAgent.js 2012-09-28 08:29:33 UTC (rev 129860) +++ trunk/Source/WebCore/inspector/front-end/DOMAgent.js 2012-09-28 08:41:22 UTC (rev 129861) @@ -76,7 +76,7 @@ this._renumber(); } -if (payload.shadowRoots WebInspector.experimentsSettings.showShadowDOM.isEnabled()) { +if (payload.shadowRoots WebInspector.settings.showShadowDOM.get()) { for (var i = 0; i payload.shadowRoots.length; ++i) { var root = payload.shadowRoots[i]; var node = new WebInspector.DOMNode(this._domAgent, this.ownerDocument, true, root); Modified: trunk/Source/WebCore/inspector/front-end/Settings.js (129860 => 129861) --- trunk/Source/WebCore/inspector/front-end/Settings.js 2012-09-28 08:29:33 UTC (rev 129860) +++ trunk/Source/WebCore/inspector/front-end/Settings.js 2012-09-28 08:41:22 UTC (rev 129861) @@ -95,6 +95,7 @@ this.dockToRight = this.createSetting(dockToRight, false); this.emulateTouchEvents = this.createSetting(emulateTouchEvents, false); this.showPaintRects = this.createSetting(showPaintRects, false); +this.showShadowDOM = this.createSetting(showShadowDOM, false); this.zoomLevel = this.createSetting(zoomLevel, 0); this.savedURLs = this.createSetting(savedURLs, {}); this._javascript_Disabled = this.createSetting(_javascript_Disabled, false); @@ -186,7 +187,6 @@ this._enabledForTest = {}; // Add currently running experiments here. -this.showShadowDOM = this._createExperiment(showShadowDOM, Show shadow DOM); this.snippetsSupport = this._createExperiment(snippetsSupport, Snippets support); this.nativeMemorySnapshots = this._createExperiment(nativeMemorySnapshots, Native memory profiling); this.liveNativeMemoryChart = this._createExperiment(liveNativeMemoryChart, Live native memory chart); Modified: trunk/Source/WebCore/inspector/front-end/SettingsScreen.js (129860 => 129861) --- trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2012-09-28 08:29:33 UTC (rev 129860) +++ trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2012-09-28 08:41:22 UTC (rev 129861) @@ -268,6 +268,7 @@ [ WebInspector.Color.Format.HSL, HSL: hsl(300, 80%,
[webkit-changes] [129469] trunk
Title: [129469] trunk Revision 129469 Author morr...@google.com Date 2012-09-25 01:01:17 -0700 (Tue, 25 Sep 2012) Log Message adoptNode() shouldn't reset ownerDocument if the source node failed to remove itself https://bugs.webkit.org/show_bug.cgi?id=97527 Reviewed by Ryosuke Niwa. Source/WebCore: Document::adoptNode() overlooked an error which can happen in Node::removeChild(). Which results an assertion failure. This change adds an error check for that code path. Test: fast/dom/adopt-node-prevented.html * dom/Document.cpp: (WebCore::Document::adoptNode): LayoutTests: * fast/dom/adopt-node-prevented-expected.txt: Added. * fast/dom/adopt-node-prevented.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Document.cpp Added Paths trunk/LayoutTests/fast/dom/adopt-node-prevented-expected.txt trunk/LayoutTests/fast/dom/adopt-node-prevented.html Diff Modified: trunk/LayoutTests/ChangeLog (129468 => 129469) --- trunk/LayoutTests/ChangeLog 2012-09-25 07:59:27 UTC (rev 129468) +++ trunk/LayoutTests/ChangeLog 2012-09-25 08:01:17 UTC (rev 129469) @@ -1,3 +1,13 @@ +2012-09-25 MORITA Hajime morr...@google.com + +adoptNode() shouldn't reset ownerDocument if the source node failed to remove itself +https://bugs.webkit.org/show_bug.cgi?id=97527 + +Reviewed by Ryosuke Niwa. + +* fast/dom/adopt-node-prevented-expected.txt: Added. +* fast/dom/adopt-node-prevented.html: Added. + 2012-09-25 Zoltan Arvai zar...@inf.u-szeged.hu [Qt] Unreviwed gardening. Greening bots. Added: trunk/LayoutTests/fast/dom/adopt-node-prevented-expected.txt (0 => 129469) --- trunk/LayoutTests/fast/dom/adopt-node-prevented-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/adopt-node-prevented-expected.txt 2012-09-25 08:01:17 UTC (rev 129469) @@ -0,0 +1,10 @@ +Test that adoptNode fails safely if prevented by a DOM mutation. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS successfullyParsed is true + +TEST COMPLETE +PASS target.ownerDocument.location is document.location + Added: trunk/LayoutTests/fast/dom/adopt-node-prevented.html (0 => 129469) --- trunk/LayoutTests/fast/dom/adopt-node-prevented.html (rev 0) +++ trunk/LayoutTests/fast/dom/adopt-node-prevented.html 2012-09-25 08:01:17 UTC (rev 129469) @@ -0,0 +1,27 @@ +!DOCTYPE html +html +head +script src="" +/head +body + div id=newParent/div + a href="" id=target/a +script +description(Test that adoptNode fails safely if prevented by a DOM mutation.); + +function run() { +newParent = document.getElementById(newParent); +target = document.getElementById(target); +target.addEventListener(blur, function () { newParent.appendChild(target); }, false); +target.focus(); +var anotherDocument = document.implementation.createDocument(, , null); + +try { anotherDocument.adoptNode(target); } catch(e) {} +shouldBe(target.ownerDocument.location, document.location); +} + +document.addEventListener(DOMContentLoaded, run, false); +/script +script src="" +/body +/html Modified: trunk/Source/WebCore/ChangeLog (129468 => 129469) --- trunk/Source/WebCore/ChangeLog 2012-09-25 07:59:27 UTC (rev 129468) +++ trunk/Source/WebCore/ChangeLog 2012-09-25 08:01:17 UTC (rev 129469) @@ -1,3 +1,18 @@ +2012-09-25 MORITA Hajime morr...@google.com + +adoptNode() shouldn't reset ownerDocument if the source node failed to remove itself +https://bugs.webkit.org/show_bug.cgi?id=97527 + +Reviewed by Ryosuke Niwa. + +Document::adoptNode() overlooked an error which can happen in Node::removeChild(). +Which results an assertion failure. This change adds an error check for that code path. + +Test: fast/dom/adopt-node-prevented.html + +* dom/Document.cpp: +(WebCore::Document::adoptNode): + 2012-09-21 Ilya Tikhonovsky loi...@chromium.org Web Inspector: extract Vector instrumentation from core NMI code into MemoryInstrumentationVector.h header. Modified: trunk/Source/WebCore/dom/Document.cpp (129468 => 129469) --- trunk/Source/WebCore/dom/Document.cpp 2012-09-25 07:59:27 UTC (rev 129468) +++ trunk/Source/WebCore/dom/Document.cpp 2012-09-25 08:01:17 UTC (rev 129469) @@ -1049,8 +1049,11 @@ return 0; } } -if (source-parentNode()) +if (source-parentNode()) { source-parentNode()-removeChild(source.get(), ec); +if (ec) +return 0; +} } this-adoptIfNeeded(source.get()); ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [128323] trunk
Title: [128323] trunk Revision 128323 Author morr...@google.com Date 2012-09-12 09:16:14 -0700 (Wed, 12 Sep 2012) Log Message [Shadow DOM] Unpolished elements should reject author shadows https://bugs.webkit.org/show_bug.cgi?id=96404 Reviewed by Dimitri Glazkov. Source/WebCore: Gave areAuthorShadowsAllowed() overrides for these replaced elements which aren't author shadow ready. No new tests. Covered by existing tests. * html/HTMLCanvasElement.h: Did areAuthorShadowsAllowed() overrride. * html/HTMLFieldSetElement.h: Did areAuthorShadowsAllowed() overrride. * html/HTMLFrameElementBase.h: Did areAuthorShadowsAllowed() overrride. * html/HTMLMediaElement.h: Did areAuthorShadowsAllowed() overrride. * html/HTMLPlugInElement.h: Did areAuthorShadowsAllowed() overrride. * html/HTMLSelectElement.h: Did areAuthorShadowsAllowed() overrride. LayoutTests: - Added setAuthorShadowDOMForAnyElementEnabled() calls to make tests works. - UPdated shadow-disable.html to capture the disabled elements. * fast/dom/shadow/shadow-disable-expected.txt: * fast/dom/shadow/shadow-disable.html: * fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html: * fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html: * fast/dom/shadow/shadowdom-for-media.html: * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/shadow/shadow-disable-expected.txt trunk/LayoutTests/fast/dom/shadow/shadow-disable.html trunk/LayoutTests/fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html trunk/LayoutTests/fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html trunk/LayoutTests/fast/dom/shadow/shadowdom-for-media.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/html/HTMLCanvasElement.h trunk/Source/WebCore/html/HTMLFieldSetElement.h trunk/Source/WebCore/html/HTMLFrameElementBase.h trunk/Source/WebCore/html/HTMLMediaElement.h trunk/Source/WebCore/html/HTMLPlugInElement.h trunk/Source/WebCore/html/HTMLSelectElement.h Diff Modified: trunk/LayoutTests/ChangeLog (128322 => 128323) --- trunk/LayoutTests/ChangeLog 2012-09-12 16:11:28 UTC (rev 128322) +++ trunk/LayoutTests/ChangeLog 2012-09-12 16:16:14 UTC (rev 128323) @@ -1,3 +1,20 @@ +2012-09-12 MORITA Hajime morr...@google.com + +[Shadow DOM] Unpolished elements should reject author shadows +https://bugs.webkit.org/show_bug.cgi?id=96404 + +Reviewed by Dimitri Glazkov. + +- Added setAuthorShadowDOMForAnyElementEnabled() calls to make tests works. +- UPdated shadow-disable.html to capture the disabled elements. + +* fast/dom/shadow/shadow-disable-expected.txt: +* fast/dom/shadow/shadow-disable.html: +* fast/dom/shadow/shadowdom-for-fieldset-without-shadow.html: +* fast/dom/shadow/shadowdom-for-form-associated-element-useragent.html: +* fast/dom/shadow/shadowdom-for-media.html: +* platform/chromium/TestExpectations: + 2012-09-12 Dominic Mazzoni dmazz...@google.com AX: Refactor most AccessibilityRenderObject code into AccessibilityNodeObject Modified: trunk/LayoutTests/fast/dom/shadow/shadow-disable-expected.txt (128322 => 128323) --- trunk/LayoutTests/fast/dom/shadow/shadow-disable-expected.txt 2012-09-12 16:11:28 UTC (rev 128322) +++ trunk/LayoutTests/fast/dom/shadow/shadow-disable-expected.txt 2012-09-12 16:16:14 UTC (rev 128323) @@ -11,18 +11,18 @@ PASS new WebKitShadowRoot(element) is not null SECTION PASS new WebKitShadowRoot(element) is not null -AUDIO -PASS new WebKitShadowRoot(element) is not null -VIDEO -PASS new WebKitShadowRoot(element) is not null -SELECT -PASS new WebKitShadowRoot(element) is not null TEXTAREA PASS new WebKitShadowRoot(element) is not null INPUT PASS new WebKitShadowRoot(element) threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. tref PASS new WebKitShadowRoot(element) threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. +AUDIO +PASS new WebKitShadowRoot(element) threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. +VIDEO +PASS new WebKitShadowRoot(element) threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. +SELECT +PASS new WebKitShadowRoot(element) threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. PASS successfullyParsed is true TEST COMPLETE Modified: trunk/LayoutTests/fast/dom/shadow/shadow-disable.html (128322 => 128323) --- trunk/LayoutTests/fast/dom/shadow/shadow-disable.html 2012-09-12 16:11:28 UTC (rev 128322) +++ trunk/LayoutTests/fast/dom/shadow/shadow-disable.html 2012-09-12 16:16:14 UTC (rev 128323) @@ -24,15 +24,15 @@ document.createElement('span'), document.createElement('a'), document.createElement('section'), -document.createElement('audio'), -document.createElement('video'), -document.createElement('select'), document.createElement('textarea') ]; var elementsToFail = [ document.createElement('input'), -
[webkit-changes] [128331] trunk/Source/WebCore
Title: [128331] trunk/Source/WebCore Revision 128331 Author morr...@google.com Date 2012-09-12 09:54:55 -0700 (Wed, 12 Sep 2012) Log Message [Scoped Style] NodeRareData::m_numberOfScopedHTMLStyleChildren could be replaced with a node flag. https://bugs.webkit.org/show_bug.cgi?id=96450 Reviewed by Dimitri Glazkov. This change gets rid of NodeRareData::m_numberOfScopedHTMLStyleChildren by replacing it with a Node flag called HasScopedHTMLStyleChildFlag. Instead of tracking the number of certain node, this chagne compute the number when necessary. Now we no longer need to hit rareData() for each hasScopedHTMLStyleChild() call. Note that because such a re-counting occurs only when the scoped style elements leave the tree, the performance impact is negligible. No new tests. Covered by existing tests. * dom/Node.cpp: (WebCore): * dom/Node.h: (WebCore::Node::hasScopedHTMLStyleChild): (WebCore::Node::setHasScopedHTMLStyleChild): (Node): * dom/NodeRareData.h: (WebCore::NodeRareData::NodeRareData): (NodeRareData): * html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::isRegisteredAsScoped): (WebCore): (WebCore::Node::registerScopedHTMLStyleChild): (WebCore::Node::unregisterScopedHTMLStyleChild): (WebCore::Node::numberOfScopedHTMLStyleChildren): (WebCore::HTMLStyleElement::unregisterWithScopingNode): * html/HTMLStyleElement.h: (HTMLStyleElement): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Node.cpp trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/NodeRareData.h trunk/Source/WebCore/html/HTMLStyleElement.cpp trunk/Source/WebCore/html/HTMLStyleElement.h Diff Modified: trunk/Source/WebCore/ChangeLog (128330 => 128331) --- trunk/Source/WebCore/ChangeLog 2012-09-12 16:51:43 UTC (rev 128330) +++ trunk/Source/WebCore/ChangeLog 2012-09-12 16:54:55 UTC (rev 128331) @@ -1,3 +1,40 @@ +2012-09-11 MORITA Hajime morr...@google.com + +[Scoped Style] NodeRareData::m_numberOfScopedHTMLStyleChildren could be replaced with a node flag. +https://bugs.webkit.org/show_bug.cgi?id=96450 + +Reviewed by Dimitri Glazkov. + +This change gets rid of NodeRareData::m_numberOfScopedHTMLStyleChildren +by replacing it with a Node flag called HasScopedHTMLStyleChildFlag. +Instead of tracking the number of certain node, this chagne compute the number +when necessary. + +Now we no longer need to hit rareData() for each hasScopedHTMLStyleChild() call. +Note that because such a re-counting occurs only when the scoped style elements +leave the tree, the performance impact is negligible. + +No new tests. Covered by existing tests. + +* dom/Node.cpp: +(WebCore): +* dom/Node.h: +(WebCore::Node::hasScopedHTMLStyleChild): +(WebCore::Node::setHasScopedHTMLStyleChild): +(Node): +* dom/NodeRareData.h: +(WebCore::NodeRareData::NodeRareData): +(NodeRareData): +* html/HTMLStyleElement.cpp: +(WebCore::HTMLStyleElement::isRegisteredAsScoped): +(WebCore): +(WebCore::Node::registerScopedHTMLStyleChild): +(WebCore::Node::unregisterScopedHTMLStyleChild): +(WebCore::Node::numberOfScopedHTMLStyleChildren): +(WebCore::HTMLStyleElement::unregisterWithScopingNode): +* html/HTMLStyleElement.h: +(HTMLStyleElement): + 2012-09-12 Dimitri Glazkov dglaz...@chromium.org Remove transient state regarding uknown pseudoelements from SelectorChecker. Modified: trunk/Source/WebCore/dom/Node.cpp (128330 => 128331) --- trunk/Source/WebCore/dom/Node.cpp 2012-09-12 16:51:43 UTC (rev 128330) +++ trunk/Source/WebCore/dom/Node.cpp 2012-09-12 16:54:55 UTC (rev 128331) @@ -2535,40 +2535,6 @@ } #endif // ENABLE(MUTATION_OBSERVERS) -#if ENABLE(STYLE_SCOPED) -bool Node::hasScopedHTMLStyleChild() const -{ -return hasRareData() rareData()-hasScopedHTMLStyleChild(); -} - -size_t Node::numberOfScopedHTMLStyleChildren() const -{ -return hasRareData() ? rareData()-numberOfScopedHTMLStyleChildren() : 0; -} - -void Node::registerScopedHTMLStyleChild() -{ -ensureRareData()-registerScopedHTMLStyleChild(); -} - -void Node::unregisterScopedHTMLStyleChild() -{ -ASSERT(hasRareData()); -if (hasRareData()) -rareData()-unregisterScopedHTMLStyleChild(); -} -#else -bool Node::hasScopedHTMLStyleChild() const -{ -return 0; -} - -size_t Node::numberOfScopedHTMLStyleChildren() const -{ -return 0; -} -#endif - void Node::handleLocalEvents(Event* event) { if (!hasRareData() || !rareData()-eventTargetData()) Modified: trunk/Source/WebCore/dom/Node.h (128330 => 128331) --- trunk/Source/WebCore/dom/Node.h 2012-09-12 16:51:43 UTC (rev 128330) +++ trunk/Source/WebCore/dom/Node.h 2012-09-12 16:54:55 UTC (rev 128331) @@ -349,6 +349,9 @@ void setHasAttrList() { setFlag(HasAttrListFlag); } void clearHasAttrList() { clearFlag(HasAttrListFlag); } +bool
[webkit-changes] [127811] trunk/Source/WebCore
Title: [127811] trunk/Source/WebCore Revision 127811 Author morr...@google.com Date 2012-09-06 19:25:36 -0700 (Thu, 06 Sep 2012) Log Message [Shadow DOM][Refactoring] Element subclasses should have a way to reject author shadows. https://bugs.webkit.org/show_bug.cgi?id=95831 Reviewed by Dimitri Glazkov. Originally, the availability of author shadows was decided by ShadowRoot class. This change moves that responsibility to each Element subclasses to make future author shadow support improvement local to each replaced elements, rather than touching ShadowRoot.cpp for reach. No new tests. Should have no behavioral change. * dom/Element.h: * dom/ShadowRoot.cpp: (WebCore::allowsAuthorShadowRoot): * html/HTMLTextFormControlElement.h: (HTMLTextFormControlElement): * svg/SVGElement.h: (SVGElement): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/html/HTMLInputElement.h trunk/Source/WebCore/svg/SVGElement.h Diff Modified: trunk/Source/WebCore/ChangeLog (127810 => 127811) --- trunk/Source/WebCore/ChangeLog 2012-09-07 01:42:53 UTC (rev 127810) +++ trunk/Source/WebCore/ChangeLog 2012-09-07 02:25:36 UTC (rev 127811) @@ -1,3 +1,25 @@ +2012-09-06 MORITA Hajime morr...@google.com + +[Shadow DOM][Refactoring] Element subclasses should have a way to reject author shadows. +https://bugs.webkit.org/show_bug.cgi?id=95831 + +Reviewed by Dimitri Glazkov. + +Originally, the availability of author shadows was decided by ShadowRoot class. +This change moves that responsibility to each Element subclasses to make future +author shadow support improvement local to each replaced elements, rather than +touching ShadowRoot.cpp for reach. + +No new tests. Should have no behavioral change. + +* dom/Element.h: +* dom/ShadowRoot.cpp: +(WebCore::allowsAuthorShadowRoot): +* html/HTMLTextFormControlElement.h: +(HTMLTextFormControlElement): +* svg/SVGElement.h: +(SVGElement): + 2012-09-06 Adam Barth aba...@chromium.org [V8] Weave creationContext through toV8 and related functions Modified: trunk/Source/WebCore/dom/Element.h (127810 => 127811) --- trunk/Source/WebCore/dom/Element.h 2012-09-07 01:42:53 UTC (rev 127810) +++ trunk/Source/WebCore/dom/Element.h 2012-09-07 02:25:36 UTC (rev 127811) @@ -275,6 +275,7 @@ ElementShadow* shadow() const; ElementShadow* ensureShadow(); virtual void willAddAuthorShadowRoot() { } +virtual bool areAuthorShadowsAllowed() const { return true; } ShadowRoot* userAgentShadowRoot() const; Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (127810 => 127811) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-09-07 01:42:53 UTC (rev 127810) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-09-07 02:25:36 UTC (rev 127811) @@ -82,23 +82,7 @@ if (RuntimeEnabledFeatures::authorShadowDOMForAnyElementEnabled()) return true; #endif - -// FIXME: The elements in Shadow DOM of an input element assumes that they have renderer if the input -// element has a renderer. However, this does not hold until input elemnet is AuthorShadowDOM-ready. -// So we would like to prohibit having a AuthorShadowDOM for a while. The same thing happens to -// textarea element also. -// https://bugs.webkit.org/show_bug.cgi?id=92608 -if (isHTMLInputElement(element)) -return false; - -// FIXME: We disable multiple shadow subtrees for SVG for while, because there will be problems to support it. -// https://bugs.webkit.org/show_bug.cgi?id=78205 -// Especially SVG TREF recreates shadow root dynamically. -// https://bugs.webkit.org/show_bug.cgi?id=77938 -if (element-isSVGElement()) -return false; - -return true; +return element-areAuthorShadowsAllowed(); } PassRefPtrShadowRoot ShadowRoot::create(Element* element, ExceptionCode ec) Modified: trunk/Source/WebCore/html/HTMLInputElement.h (127810 => 127811) --- trunk/Source/WebCore/html/HTMLInputElement.h 2012-09-07 01:42:53 UTC (rev 127810) +++ trunk/Source/WebCore/html/HTMLInputElement.h 2012-09-07 02:25:36 UTC (rev 127811) @@ -290,6 +290,9 @@ HTMLInputElement(const QualifiedName, Document*, HTMLFormElement*, bool createdByParser); void createShadowSubtree(); virtual void defaultEventHandler(Event*); +// FIXME: Author shadows should be allowed +// https://bugs.webkit.org/show_bug.cgi?id=92608 +virtual bool areAuthorShadowsAllowed() const OVERRIDE { return false; } private: enum AutoCompleteSetting { Uninitialized, On, Off }; Modified: trunk/Source/WebCore/svg/SVGElement.h (127810 => 127811) --- trunk/Source/WebCore/svg/SVGElement.h 2012-09-07 01:42:53 UTC (rev 127810) +++ trunk/Source/WebCore/svg/SVGElement.h 2012-09-07 02:25:36 UTC (rev 127811) @@ -136,6 +136,10 @@ void
[webkit-changes] [127580] trunk
Title: [127580] trunk Revision 127580 Author morr...@google.com Date 2012-09-05 05:09:07 -0700 (Wed, 05 Sep 2012) Log Message ShadowRoot.cloneNode() must always throw a DATA_CLONE_ERR exception. https://bugs.webkit.org/show_bug.cgi?id=91704 Reviewed by Kentaro Hara. Source/WebCore: This change implement ShadowRoot::cloneNode() which throws an exception. This also adds an overloaded version cloneNode() to ShadowRoot.idl which is enabled only for _javascript_ instead of changing the signature of Node::cloneNode(). Note that changing the existing signature can break GObject bindings compatibility. Test: fast/dom/shadow/shadowroot-clonenode.html * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::cloneNode): (WebCore): * dom/ShadowRoot.h: (ShadowRoot): * dom/ShadowRoot.idl: LayoutTests: * fast/dom/shadow/shadowroot-clonenode-expected.txt: Added. * fast/dom/shadow/shadowroot-clonenode.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/dom/ShadowRoot.idl Added Paths trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html Diff Modified: trunk/LayoutTests/ChangeLog (127579 => 127580) --- trunk/LayoutTests/ChangeLog 2012-09-05 11:53:40 UTC (rev 127579) +++ trunk/LayoutTests/ChangeLog 2012-09-05 12:09:07 UTC (rev 127580) @@ -1,3 +1,13 @@ +2012-09-05 MORITA Hajime morr...@google.com + +ShadowRoot.cloneNode() must always throw a DATA_CLONE_ERR exception. +https://bugs.webkit.org/show_bug.cgi?id=91704 + +Reviewed by Kentaro Hara. + +* fast/dom/shadow/shadowroot-clonenode-expected.txt: Added. +* fast/dom/shadow/shadowroot-clonenode.html: Added. + 2012-09-05 Christophe Dumez christophe.du...@intel.com WKTR doesn't implement dumpWillCacheResponse() Added: trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt (0 => 127580) --- trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt 2012-09-05 12:09:07 UTC (rev 127580) @@ -0,0 +1,10 @@ +Calling ShadowRoot.cloneNode() should throw a DATA_CLONE_ERR exception. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS shadowRoot.cloneNode() threw exception Error: DATA_CLONE_ERR: DOM Exception 25. +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html (0 => 127580) --- trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html 2012-09-05 12:09:07 UTC (rev 127580) @@ -0,0 +1,16 @@ +!DOCTYPE +html +script src="" +script src="" + +pre id=console/pre + +script +description('Calling ShadowRoot.cloneNode() should throw a DATA_CLONE_ERR exception.'); + +var host = document.createElement('div'); +var shadowRoot = new WebKitShadowRoot(host); +shouldThrow('shadowRoot.cloneNode()', 'Error: DATA_CLONE_ERR: DOM Exception 25'); +/script +script src="" +/html Modified: trunk/Source/WebCore/ChangeLog (127579 => 127580) --- trunk/Source/WebCore/ChangeLog 2012-09-05 11:53:40 UTC (rev 127579) +++ trunk/Source/WebCore/ChangeLog 2012-09-05 12:09:07 UTC (rev 127580) @@ -1,3 +1,27 @@ +2012-09-05 MORITA Hajime morr...@google.com + +ShadowRoot.cloneNode() must always throw a DATA_CLONE_ERR exception. +https://bugs.webkit.org/show_bug.cgi?id=91704 + +Reviewed by Kentaro Hara. + +This change implement ShadowRoot::cloneNode() which throws an exception. +This also adds an overloaded version cloneNode() to ShadowRoot.idl +which is enabled only for _javascript_ instead of changing the +signature of Node::cloneNode(). + +Note that changing the existing signature can break GObject bindings +compatibility. + +Test: fast/dom/shadow/shadowroot-clonenode.html + +* dom/ShadowRoot.cpp: +(WebCore::ShadowRoot::cloneNode): +(WebCore): +* dom/ShadowRoot.h: +(ShadowRoot): +* dom/ShadowRoot.idl: + 2012-09-05 Simon Hausmann simon.hausm...@nokia.com [Qt] Unreviewed trivial build fix: Use DOMAllInOne.cpp only if we have xslt available. Modified: trunk/Source/WebCore/dom/ShadowRoot.cpp (127579 => 127580) --- trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-09-05 11:53:40 UTC (rev 127579) +++ trunk/Source/WebCore/dom/ShadowRoot.cpp 2012-09-05 12:09:07 UTC (rev 127580) @@ -145,6 +145,17 @@ return 0; } +PassRefPtrNode ShadowRoot::cloneNode(bool deep, ExceptionCode ec) +{ +RefPtrNode clone = cloneNode(deep); +if (!clone) { +ec = DATA_CLONE_ERR; +return 0; +} + +return clone; +} + String ShadowRoot::innerHTML() const { return
[webkit-changes] [127228] trunk
Title: [127228] trunk Revision 127228 Author morr...@google.com Date 2012-08-30 21:27:31 -0700 (Thu, 30 Aug 2012) Log Message Unreviewed, rolling out r126127. http://trac.webkit.org/changeset/126127 This breaks gobject bindings. Source/WebCore: * dom/Attr.cpp: (WebCore::Attr::cloneNode): * dom/Attr.h: * dom/CDATASection.cpp: (WebCore::CDATASection::cloneNode): * dom/CDATASection.h: (CDATASection): * dom/Comment.cpp: (WebCore::Comment::cloneNode): * dom/Comment.h: (Comment): * dom/Document.cpp: (WebCore::Document::cloneNode): * dom/Document.h: (Document): * dom/DocumentFragment.cpp: (WebCore::DocumentFragment::cloneNode): * dom/DocumentFragment.h: (DocumentFragment): * dom/DocumentType.cpp: (WebCore::DocumentType::cloneNode): * dom/DocumentType.h: (DocumentType): * dom/Element.cpp: (WebCore::Element::cloneNode): * dom/Element.h: (Element): * dom/EntityReference.cpp: (WebCore::EntityReference::cloneNode): * dom/EntityReference.h: (EntityReference): * dom/Node.h: (Node): * dom/Node.idl: * dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::cloneNode): * dom/ProcessingInstruction.h: (ProcessingInstruction): * dom/ShadowRoot.cpp: (WebCore::ShadowRoot::cloneNode): * dom/ShadowRoot.h: (ShadowRoot): * dom/Text.cpp: (WebCore::Text::cloneNode): * dom/Text.h: (Text): LayoutTests: * fast/dom/shadow/shadowroot-clonenode-expected.txt: Removed. * fast/dom/shadow/shadowroot-clonenode.html: Removed. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Attr.cpp trunk/Source/WebCore/dom/Attr.h trunk/Source/WebCore/dom/CDATASection.cpp trunk/Source/WebCore/dom/CDATASection.h trunk/Source/WebCore/dom/Comment.cpp trunk/Source/WebCore/dom/Comment.h trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/dom/DocumentFragment.cpp trunk/Source/WebCore/dom/DocumentFragment.h trunk/Source/WebCore/dom/DocumentType.cpp trunk/Source/WebCore/dom/DocumentType.h trunk/Source/WebCore/dom/Element.cpp trunk/Source/WebCore/dom/Element.h trunk/Source/WebCore/dom/EntityReference.cpp trunk/Source/WebCore/dom/EntityReference.h trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/dom/Node.idl trunk/Source/WebCore/dom/ProcessingInstruction.cpp trunk/Source/WebCore/dom/ProcessingInstruction.h trunk/Source/WebCore/dom/ShadowRoot.cpp trunk/Source/WebCore/dom/ShadowRoot.h trunk/Source/WebCore/dom/Text.cpp trunk/Source/WebCore/dom/Text.h Removed Paths trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html Diff Modified: trunk/LayoutTests/ChangeLog (127227 => 127228) --- trunk/LayoutTests/ChangeLog 2012-08-31 04:00:54 UTC (rev 127227) +++ trunk/LayoutTests/ChangeLog 2012-08-31 04:27:31 UTC (rev 127228) @@ -1,3 +1,13 @@ +2012-08-30 MORITA Hajime morr...@google.com + +Unreviewed, rolling out r126127. +http://trac.webkit.org/changeset/126127 + +This breaks gobject bindings. + +* fast/dom/shadow/shadowroot-clonenode-expected.txt: Removed. +* fast/dom/shadow/shadowroot-clonenode.html: Removed. + 2012-08-30 Yoshifumi Inoue yo...@chromium.org [Forms] Shift+Tab should focus the last field of multiple fields time input UI Deleted: trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt (127227 => 127228) --- trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt 2012-08-31 04:00:54 UTC (rev 127227) +++ trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode-expected.txt 2012-08-31 04:27:31 UTC (rev 127228) @@ -1,10 +0,0 @@ -Calling ShadowRoot.cloneNode() should throw a DATA_CLONE_ERR exception. - -On success, you will see a series of PASS messages, followed by TEST COMPLETE. - - -PASS exceptionCode is DOMException.DATA_CLONE_ERR -PASS successfullyParsed is true - -TEST COMPLETE - Deleted: trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html (127227 => 127228) --- trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html 2012-08-31 04:00:54 UTC (rev 127227) +++ trunk/LayoutTests/fast/dom/shadow/shadowroot-clonenode.html 2012-08-31 04:27:31 UTC (rev 127228) @@ -1,26 +0,0 @@ -!DOCTYPE -html -script src="" -script src="" - -pre id=console/pre - -script -description('Calling ShadowRoot.cloneNode() should throw a DATA_CLONE_ERR exception.'); - -var host = document.createElement('div'); -var shadowRoot = new WebKitShadowRoot(host); - -var exceptionCode = null; -try { -shadowRoot.cloneNode() -} catch (e) { -exceptionCode = e.code; -} - -shouldBe('exceptionCode', 'DOMException.DATA_CLONE_ERR') - -finishJSTest(); -/script -script src="" -/html Modified: trunk/Source/WebCore/ChangeLog (127227 => 127228) --- trunk/Source/WebCore/ChangeLog 2012-08-31 04:00:54 UTC (rev 127227) +++ trunk/Source/WebCore/ChangeLog 2012-08-31 04:27:31 UTC (rev 127228) @@ -1,3 +1,57 @@ +2012-08-30 MORITA Hajime morr...@google.com + +Unreviewed, rolling out r126127. +
[webkit-changes] [127230] trunk/Source/WebCore
Title: [127230] trunk/Source/WebCore Revision 127230 Author morr...@google.com Date 2012-08-30 21:51:57 -0700 (Thu, 30 Aug 2012) Log Message Unreviewed, followup build fix against r127228. * dom/Notation.cpp: (WebCore::Notation::cloneNode): * dom/Notation.h: (Notation): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/Notation.cpp trunk/Source/WebCore/dom/Notation.h Diff Modified: trunk/Source/WebCore/ChangeLog (127229 => 127230) --- trunk/Source/WebCore/ChangeLog 2012-08-31 04:51:47 UTC (rev 127229) +++ trunk/Source/WebCore/ChangeLog 2012-08-31 04:51:57 UTC (rev 127230) @@ -1,3 +1,12 @@ +2012-08-30 MORITA Hajime morr...@google.com + +Unreviewed, followup build fix against r127228. + +* dom/Notation.cpp: +(WebCore::Notation::cloneNode): +* dom/Notation.h: +(Notation): + 2012-08-30 MORITA Hajime morr...@google.com Unreviewed, rolling out r126127. Modified: trunk/Source/WebCore/dom/Notation.cpp (127229 => 127230) --- trunk/Source/WebCore/dom/Notation.cpp 2012-08-31 04:51:47 UTC (rev 127229) +++ trunk/Source/WebCore/dom/Notation.cpp 2012-08-31 04:51:57 UTC (rev 127230) @@ -43,7 +43,7 @@ return NOTATION_NODE; } -PassRefPtrNode Notation::cloneNode(bool /*deep*/, ExceptionCode) +PassRefPtrNode Notation::cloneNode(bool /*deep*/) { // Spec says cloning Notation nodes is implementation dependent. We do not support it. return 0; Modified: trunk/Source/WebCore/dom/Notation.h (127229 => 127230) --- trunk/Source/WebCore/dom/Notation.h 2012-08-31 04:51:47 UTC (rev 127229) +++ trunk/Source/WebCore/dom/Notation.h 2012-08-31 04:51:57 UTC (rev 127230) @@ -38,7 +38,7 @@ virtual String nodeName() const; virtual NodeType nodeType() const; -virtual PassRefPtrNode cloneNode(bool deep, ExceptionCode); +virtual PassRefPtrNode cloneNode(bool deep); virtual bool childTypeAllowed(NodeType) const; String m_name; ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [126408] trunk/LayoutTests
Title: [126408] trunk/LayoutTests Revision 126408 Author morr...@google.com Date 2012-08-23 02:02:20 -0700 (Thu, 23 Aug 2012) Log Message Unreviewed Chromium gardeing. * platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt: Added. * platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt: Added. Modified Paths trunk/LayoutTests/ChangeLog Added Paths trunk/LayoutTests/platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt trunk/LayoutTests/platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt Diff Modified: trunk/LayoutTests/ChangeLog (126407 => 126408) --- trunk/LayoutTests/ChangeLog 2012-08-23 08:50:04 UTC (rev 126407) +++ trunk/LayoutTests/ChangeLog 2012-08-23 09:02:20 UTC (rev 126408) @@ -1,3 +1,10 @@ +2012-08-23 Hajime Morrita morr...@chromium.org + +Unreviewed Chromium gardeing. + +* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt: Added. +* platform/chromium-mac-snowleopard/media/track/track-cue-rendering-vertical-expected.txt: Added. + 2012-08-23 Zan Dobersek zandober...@gmail.com Unreviewed gardening. Added: trunk/LayoutTests/platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt (0 => 126408) --- trunk/LayoutTests/platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt (rev 0) +++ trunk/LayoutTests/platform/chromium-mac-snowleopard/media/track/track-cue-rendering-horizontal-expected.txt 2012-08-23 09:02:20 UTC (rev 126408) @@ -0,0 +1,84 @@ +layer at (0,0) size 800x600 + RenderView at (0,0) size 800x600 +layer at (0,0) size 800x332 + RenderBlock {HTML} at (0,0) size 800x332 +RenderBody {BODY} at (8,8) size 784x316 + RenderBlock (anonymous) at (0,0) size 784x244 +RenderText {#text} at (0,0) size 0x0 + RenderBlock {DIV} at (0,244) size 784x72 +RenderText {#text} at (0,0) size 266x18 + text run at (0,0) width 266: Rendering horizontal line-positioned cues. +RenderBR {BR} at (266,0) size 0x18 +RenderText {#text} at (0,18) size 162x18 + text run at (0,18) width 162: EVENT(canplaythrough) +RenderBR {BR} at (162,18) size 0x18 +RenderText {#text} at (0,36) size 107x18 + text run at (0,36) width 107: EVENT(seeked) +RenderBR {BR} at (107,36) size 0x18 +RenderText {#text} at (0,54) size 102x18 + text run at (0,54) width 102: END OF TEST +RenderBR {BR} at (102,54) size 0x18 +layer at (8,8) size 320x240 + RenderVideo {VIDEO} at (0,0) size 320x240 +layer at (8,8) size 320x240 + RenderDeprecatedFlexibleBox (relative positioned) {DIV} at (0,0) size 320x240 +RenderBlock {DIV} at (0,205) size 320x35 +layer at (8,8) size 320x205 + RenderBlock (relative positioned) {DIV} at (0,0) size 320x205 [color=#FF00] +layer at (8,8) size 320x14 + RenderBlock (positioned) {DIV} at (0,0) size 320x14 [color=#FF] +RenderInline {DIV} at (0,0) size 280x18 [bgcolor=#00CC] + RenderText {#text} at (22,0) size 276x14 +text run at (22,0) width 276: Cue 1: should be positioned at the top of the video. +RenderInline {DIV} at (0,0) size 3x18 [bgcolor=#00CC] +layer at (8,26) size 320x14 + RenderBlock (positioned) {DIV} at (0,18) size 320x14 [color=#FF] +RenderInline {DIV} at (0,0) size 308x18 [bgcolor=#00CC] + RenderText {#text} at (8,0) size 304x14 +text run at (8,0) width 304: Cue 2: should be the second cue and not overlap cue 1. +RenderInline {DIV} at (0,0) size 3x18 [bgcolor=#00CC] +layer at (8,44) size 320x14 + RenderBlock (positioned) {DIV} at (0,36) size 320x14 [color=#FF] +RenderInline {DIV} at (0,0) size 300x18 [bgcolor=#00CC] + RenderText {#text} at (12,0) size 296x14 +text run at (12,0) width 296: Cue 3: should become the third line from top to bottom. +RenderInline {DIV} at (0,0) size 2x18 [bgcolor=#00CC] +layer at (8,98) size 320x14 + RenderBlock (positioned) {DIV} at (0,90) size 320x14 [color=#FF] +RenderInline {DIV} at (0,0) size 292x18 [bgcolor=#00CC] + RenderText {#text} at (16,0) size 288x14 +text run at (16,0) width 288: Cue 4: should be fixed positioned around the middle. +RenderInline {DIV} at (0,0) size 3x18 [bgcolor=#00CC] +layer at (8,195) size 320x14 + RenderBlock (positioned) {DIV} at (0,187) size 320x14 [color=#FF] +RenderInline {DIV} at (0,0) size 296x18 [bgcolor=#00CC] + RenderText {#text} at (14,0) size 292x14 +text run at (14,0) width 292: Cue 5: should be displayed at the bottom of the video. +RenderInline {DIV} at (0,0) size 3x18 [bgcolor=#00CC] +layer at (8,177) size 320x14 + RenderBlock (positioned) {DIV} at (0,169) size 320x14 [color=#FF] +RenderInline {DIV} a
[webkit-changes] [126411] trunk/LayoutTests
Title: [126411] trunk/LayoutTests Revision 126411 Author morr...@google.com Date 2012-08-23 02:42:53 -0700 (Thu, 23 Aug 2012) Log Message Unreviewed Chromium gardeing. * platform/chromium/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium/TestExpectations Diff Modified: trunk/LayoutTests/ChangeLog (126410 => 126411) --- trunk/LayoutTests/ChangeLog 2012-08-23 09:24:10 UTC (rev 126410) +++ trunk/LayoutTests/ChangeLog 2012-08-23 09:42:53 UTC (rev 126411) @@ -1,3 +1,9 @@ +2012-08-23 Hajime Morrita morr...@chromium.org + +Unreviewed Chromium gardeing. + +* platform/chromium/TestExpectations: + 2012-08-23 Dominic Cooney domin...@chromium.org [Chromium] Unreviewed gardening. Modified: trunk/LayoutTests/platform/chromium/TestExpectations (126410 => 126411) --- trunk/LayoutTests/platform/chromium/TestExpectations 2012-08-23 09:24:10 UTC (rev 126410) +++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-08-23 09:42:53 UTC (rev 126411) @@ -3516,4 +3516,4 @@ BUGCR67540 BUGWK94735 LINUX : fast/text/emphasis-overlap.html = IMAGE IMAGE+TEXT -BUGWK94793 XP DEBUG : fast/notifications/notifications-event-listener-crash.html = TEXT PASS +BUGWK94793 : fast/notifications/notifications-event-listener-crash.html = TEXT PASS ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [126136] trunk/Source/WebCore
Title: [126136] trunk/Source/WebCore Revision 126136 Author morr...@google.com Date 2012-08-20 23:49:27 -0700 (Mon, 20 Aug 2012) Log Message InsertionShouldCallDidNotifyDescendantInsertions should be merged to InsertionShouldCallDidNotifySubtreeInsertions https://bugs.webkit.org/show_bug.cgi?id=94570 Reviewed by Ryosuke Niwa. Node::didNotifySubtreeInsertions() and Node::didNotifyDescendantInsertions() are used for similar purpose and we could unify them to the safer one, which is didNotifySubtreeInsertions(). This change replaces the last didNotifyDescendantInsertions() implementation in HTMLBodyElement with didNotifySubtreeInsertions() then eliminates related code which is no longer used. No new tests. Covered by existing tests. * dom/ContainerNodeAlgorithms.h: (WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoDocument): (WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoTree): * dom/Node.h: Removed didNotifyDescendantInsertions() stub and InsertionShouldCallDidNotifyDescendantInsertions enum value. * html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::insertedInto): (WebCore::HTMLBodyElement::didNotifySubtreeInsertions): morphed from didNotifyDescendantInsertions() * html/HTMLBodyElement.h: (HTMLBodyElement): * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::insertedInto): Remove useless InsertionShouldCallDidNotifyDescendantInsertions return statement. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/html/HTMLBodyElement.cpp trunk/Source/WebCore/html/HTMLBodyElement.h trunk/Source/WebCore/html/HTMLFormElement.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (126135 => 126136) --- trunk/Source/WebCore/ChangeLog 2012-08-21 05:56:44 UTC (rev 126135) +++ trunk/Source/WebCore/ChangeLog 2012-08-21 06:49:27 UTC (rev 126136) @@ -1,3 +1,30 @@ +2012-08-20 MORITA Hajime morr...@google.com + +InsertionShouldCallDidNotifyDescendantInsertions should be merged to InsertionShouldCallDidNotifySubtreeInsertions +https://bugs.webkit.org/show_bug.cgi?id=94570 + +Reviewed by Ryosuke Niwa. + +Node::didNotifySubtreeInsertions() and Node::didNotifyDescendantInsertions() are used for similar purpose and +we could unify them to the safer one, which is didNotifySubtreeInsertions(). + +This change replaces the last didNotifyDescendantInsertions() implementation in HTMLBodyElement with didNotifySubtreeInsertions() +then eliminates related code which is no longer used. + +No new tests. Covered by existing tests. + +* dom/ContainerNodeAlgorithms.h: +(WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoDocument): +(WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoTree): +* dom/Node.h: Removed didNotifyDescendantInsertions() stub and InsertionShouldCallDidNotifyDescendantInsertions enum value. +* html/HTMLBodyElement.cpp: +(WebCore::HTMLBodyElement::insertedInto): +(WebCore::HTMLBodyElement::didNotifySubtreeInsertions): morphed from didNotifyDescendantInsertions() +* html/HTMLBodyElement.h: +(HTMLBodyElement): +* html/HTMLFormElement.cpp: +(WebCore::HTMLFormElement::insertedInto): Remove useless InsertionShouldCallDidNotifyDescendantInsertions return statement. + 2012-08-20 Rob Buis rb...@rim.com Reduce GradientAttributes object size Modified: trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h (126135 => 126136) --- trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h 2012-08-21 05:56:44 UTC (rev 126135) +++ trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h 2012-08-21 06:49:27 UTC (rev 126136) @@ -193,21 +193,10 @@ { ASSERT(m_insertionPoint-inDocument()); RefPtrNode protect(node); -Node::InsertionNotificationRequest request = node-insertedInto(m_insertionPoint); - +if (Node::InsertionShouldCallDidNotifySubtreeInsertions == node-insertedInto(m_insertionPoint)) +m_postInsertionNotificationTargets.append(node); if (node-isContainerNode()) notifyDescendantInsertedIntoDocument(toContainerNode(node)); - -switch (request) { -case Node::InsertionDone: -break; -case Node::InsertionShouldCallDidNotifyDescendantInsertions: -node-didNotifyDescendantInsertions(m_insertionPoint); -break; -case Node::InsertionShouldCallDidNotifySubtreeInsertions: -m_postInsertionNotificationTargets.append(node); -break; -} } inline void ChildNodeInsertionNotifier::notifyNodeInsertedIntoTree(ContainerNode* node) @@ -215,11 +204,9 @@ ASSERT(!m_insertionPoint-inDocument()); forbidEventDispatch(); -Node::InsertionNotificationRequest request = node-insertedInto(m_insertionPoint); - +if (Node::InsertionShouldCallDidNotifySubtreeInsertions == node-insertedInto(m_insertionPoint)) +
[webkit-changes] [126131] trunk
Title: [126131] trunk Revision 126131 Author morr...@google.com Date 2012-08-20 21:21:28 -0700 (Mon, 20 Aug 2012) Log Message load event shouldn't fired during node insertion traversals. https://bugs.webkit.org/show_bug.cgi?id=94447 Reviewed by Ryosuke Niwa. Source/WebCore: HTMLFrameElementBase::didNotifyDescendantInsertions() with empty @src can trigger a load event during ChildNodeInsertionNotifier traversal, whose handler can make DOM tree state inconsistent. This change introduces a post traversal hook, didNotifySubtreeInsertions(), for the insertion traversal and replaces the problematic didNotifyDescendantInsertions() with it. Since didNotifySubtreeInsertions() is invoked after the traversal, it is safe for event handlers to mutate the tree. Test: fast/frames/iframe-onload-and-domnodeinserted.html * dom/ContainerNodeAlgorithms.h: (ChildNodeInsertionNotifier): Added a post subtree notification. (WebCore::ChildNodeInsertionNotifier::notifyNodeInsertedIntoDocument): (WebCore::ChildNodeInsertionNotifier::notify): * dom/Node.h: (WebCore::Node::didNotifySubtreeInsertions): Newly added. * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::insertedInto): Now returns InsertionShouldCallDidNotifySubtreeInsertions (WebCore::HTMLFrameElementBase::didNotifySubtreeInsertions): Replaced didNotifyDescendantInsertions() * html/HTMLFrameElementBase.h: (HTMLFrameElementBase): LayoutTests: * fast/frames/iframe-onload-and-domnodeinserted-expected.txt: Added. * fast/frames/iframe-onload-and-domnodeinserted.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h trunk/Source/WebCore/dom/Node.h trunk/Source/WebCore/html/HTMLFrameElementBase.cpp trunk/Source/WebCore/html/HTMLFrameElementBase.h Added Paths trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted-expected.txt trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted.html Diff Modified: trunk/LayoutTests/ChangeLog (126130 => 126131) --- trunk/LayoutTests/ChangeLog 2012-08-21 03:57:42 UTC (rev 126130) +++ trunk/LayoutTests/ChangeLog 2012-08-21 04:21:28 UTC (rev 126131) @@ -1,3 +1,13 @@ +2012-08-20 MORITA Hajime morr...@google.com + +load event shouldn't fired during node insertion traversals. +https://bugs.webkit.org/show_bug.cgi?id=94447 + +Reviewed by Ryosuke Niwa. + +* fast/frames/iframe-onload-and-domnodeinserted-expected.txt: Added. +* fast/frames/iframe-onload-and-domnodeinserted.html: Added. + 2012-08-20 Shinya Kawanaka shin...@chromium.org ShadowRoot.cloneNode() must always throw a DATA_CLONE_ERR exception. Added: trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted-expected.txt (0 => 126131) --- trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted-expected.txt (rev 0) +++ trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted-expected.txt 2012-08-21 04:21:28 UTC (rev 126131) @@ -0,0 +1,11 @@ +This test ensures that any tree mutation in the load event handler cannot harm the tree consistency. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS loadEventFired is true +PASS unless crash. +PASS successfullyParsed is true + +TEST COMPLETE + Property changes on: trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted-expected.txt ___ Added: svn:eol-style Added: trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted.html (0 => 126131) --- trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted.html (rev 0) +++ trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted.html 2012-08-21 04:21:28 UTC (rev 126131) @@ -0,0 +1,26 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div id=g/div +script +description(This test ensures that any tree mutation in the load event handler cannot harm the tree consistency.) +var docElement = document.documentElement; + +textareaElement = document.createElement(textarea); +iframeElement = document.createElement(iframe); + +var loadEventFired = false; +textareaElement.appendChild(iframeElement); +iframeElement.addEventListener(load, function () { iframeElement.innerHTML = X; loadEventFired = true; }, false); +textareaElement.addEventListener(DOMNodeInserted, function () { document.implementation.createDocument(, , null).adoptNode(textareaElement) }, false); +document.documentElement.appendChild(textareaElement); // The DOMNodeInserted event is triggered here through innerHTML = X +document.getElementById(g).appendChild(textareaElement); +shouldBeTrue(loadEventFired); +debug(PASS unless crash.); +/script +script src="" +/body +/html Property changes on: trunk/LayoutTests/fast/frames/iframe-onload-and-domnodeinserted.html ___ Added: svn:eol-style
[webkit-changes] [125988] trunk
Title: [125988] trunk Revision 125988 Author morr...@google.com Date 2012-08-19 19:56:18 -0700 (Sun, 19 Aug 2012) Log Message DOM mutation against including link shouldn't trigger pending HTML parser. https://bugs.webkit.org/show_bug.cgi?id=93641 Reviewed by Ryosuke Niwa. Source/WebCore: HTMLLinkElement::removedFrom() invoked Document::removePendingSheet(), which can trigger HTMLParser that can mutate DOM tree. DOM mutation reentrancy on like this is problematic and should be prohibited. This change add an variation of Document::removePendingSheet() which postpones the notification which triggers DOM mutation, and flush such pending notifications at the end of ongoing mutation. Test: http/tests/loading/remove-child-triggers-parser.html * dom/ContainerNodeAlgorithms.h: (WebCore::ChildNodeRemovalNotifier::notify): Flushed pending notifications at the end. * dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::removePendingSheet): Added RemovePendingSheetNotificationType parameter. (WebCore): (WebCore::Document::didRemoveAllPendingStylesheet): Extracted from removePendingSheet() * dom/Document.h: (Document): (WebCore::Document::setNeedsNotifyRemoveAllPendingStylesheet): A flag setter. (WebCore::Document::notifyRemovePendingSheetIfNeeded): (WebCore): * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::removedFrom): Switched to use notification later version of removePendingSheet() (WebCore::HTMLLinkElement::removePendingSheet): Added RemovePendingSheetNotificationType parameter. * html/HTMLLinkElement.h: LayoutTests: Note that the test content need to be such cryptic because HTML parser is involving the captured bug and adding explanations can affect the behavior then mask the bug. * http/tests/loading/remove-child-triggers-parser-expected.txt: Added. * http/tests/loading/remove-child-triggers-parser.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNodeAlgorithms.h trunk/Source/WebCore/dom/Document.cpp trunk/Source/WebCore/dom/Document.h trunk/Source/WebCore/html/HTMLLinkElement.cpp trunk/Source/WebCore/html/HTMLLinkElement.h Added Paths trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser-expected.txt trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser.html Diff Modified: trunk/LayoutTests/ChangeLog (125987 => 125988) --- trunk/LayoutTests/ChangeLog 2012-08-20 02:30:04 UTC (rev 125987) +++ trunk/LayoutTests/ChangeLog 2012-08-20 02:56:18 UTC (rev 125988) @@ -1,3 +1,16 @@ +2012-08-19 MORITA Hajime morr...@google.com + +DOM mutation against including link shouldn't trigger pending HTML parser. +https://bugs.webkit.org/show_bug.cgi?id=93641 + +Reviewed by Ryosuke Niwa. + +Note that the test content need to be such cryptic because HTML parser is involving the +captured bug and adding explanations can affect the behavior then mask the bug. + +* http/tests/loading/remove-child-triggers-parser-expected.txt: Added. +* http/tests/loading/remove-child-triggers-parser.html: Added. + 2012-08-19 KwangYong Choi ky0.c...@samsung.com [EFL] Gardening for fast/forms/range/thumbslider-no-parent-slider.html Added: trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser-expected.txt (0 => 125988) --- trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser-expected.txt (rev 0) +++ trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser-expected.txt 2012-08-20 02:56:18 UTC (rev 125988) @@ -0,0 +1,6 @@ +main frame - didStartProvisionalLoadForFrame +main frame - didCommitLoadForFrame +main frame - didFinishDocumentLoadForFrame +main frame - didHandleOnloadEventsForFrame +main frame - didFinishLoadForFrame + Added: trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser.html (0 => 125988) --- trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser.html (rev 0) +++ trunk/LayoutTests/http/tests/loading/remove-child-triggers-parser.html 2012-08-20 02:56:18 UTC (rev 125988) @@ -0,0 +1,18 @@ +script/script +!-- This test covers Bug 93641 -- +script +if (window.testRunner) +testRunner.dumpAsText(); +setTimeout(function() { var child = document.documentElement; child.parentNode.removeChild(child); }, 36); +/script +script/script +span/span +div/div +span/span +nobr +span/span +div + link rel=stylesheet href="" + script;/script + nobr +/div Modified: trunk/Source/WebCore/ChangeLog (125987 => 125988) --- trunk/Source/WebCore/ChangeLog 2012-08-20 02:30:04 UTC (rev 125987) +++ trunk/Source/WebCore/ChangeLog 2012-08-20 02:56:18 UTC (rev 125988) @@ -1,3 +1,36 @@ +2012-08-19 MORITA Hajime morr...@google.com + +DOM mutation against including link shouldn't trigger pending HTML parser. +https://bugs.webkit.org/show_bug.cgi?id=93641 + +Reviewed by Ryosuke Niwa. + +
[webkit-changes] [125739] trunk
Title: [125739] trunk Revision 125739 Author morr...@google.com Date 2012-08-15 20:05:59 -0700 (Wed, 15 Aug 2012) Log Message Regression(121518) TextFieldDecorationElement formatting is broken. https://bugs.webkit.org/show_bug.cgi?id=90913 Reviewed by Dimitri Glazkov. Source/WebCore: NodeRenderingContext::nextRenderer() has a problem which cannot retrieve the renderer across an insertion point in some case. That is because ad-hoc composed tree traversal on NodeRenderingContext is broken. The problem is hidden before r121518 though. This change rewrite nextRenderer() using ComposedShadowTreeWalker to eliminate the ad-hoc traversal. previousRenderer() is also rewritten in the same way. Test: fast/dom/shadow/shadow-div-reflow.html * dom/NodeRenderingContext.cpp: (WebCore): (WebCore::NodeRenderingContext::nextRenderer): (WebCore::NodeRenderingContext::previousRenderer): LayoutTests: * fast/dom/shadow/shadow-div-reflow-expected.html: Added. * fast/dom/shadow/shadow-div-reflow.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/NodeRenderingContext.cpp Added Paths trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow-expected.html trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow.html Diff Modified: trunk/LayoutTests/ChangeLog (125738 => 125739) --- trunk/LayoutTests/ChangeLog 2012-08-16 02:40:21 UTC (rev 125738) +++ trunk/LayoutTests/ChangeLog 2012-08-16 03:05:59 UTC (rev 125739) @@ -1,3 +1,13 @@ +2012-08-15 MORITA Hajime morr...@google.com + +Regression(121518) TextFieldDecorationElement formatting is broken. +https://bugs.webkit.org/show_bug.cgi?id=90913 + +Reviewed by Dimitri Glazkov. + +* fast/dom/shadow/shadow-div-reflow-expected.html: Added. +* fast/dom/shadow/shadow-div-reflow.html: Added. + 2012-08-14 Jeffrey Pfau jp...@apple.com Allow blocking of Web SQL databases in third-party documents Added: trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow-expected.html (0 => 125739) --- trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow-expected.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow-expected.html 2012-08-16 03:05:59 UTC (rev 125739) @@ -0,0 +1,18 @@ +!DOCTYPE html +html +head +style +#host { +width: 200px; +} +/style +/head +body +div +div +divdivFirst line leads,/div/div +divsecond line follows./div +/div +/div +/body +/html Added: trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow.html (0 => 125739) --- trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow.html (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/shadow-div-reflow.html 2012-08-16 03:05:59 UTC (rev 125739) @@ -0,0 +1,32 @@ +!DOCTYPE html +html +head +style +#host { +width: 200px; +} +/style +/head +body +div id=host tabindex=0 +div +divdivFirst line leads,/div/div +/div +/div +script +if (window.internals) + internals.settings.setAuthorShadowDOMForAnyElementEnabled(true); + +var host = document.getElementById(host); +var shadow1 = new WebKitShadowRoot(host); +shadow1.innerHTML = divshadow/shadowdiv/div/div; +var shadow2 = new WebKitShadowRoot(host); +shadow2.innerHTML = section + + shadow/shadow + + divsecond line follows./div + + /section; +host.focus(); +host.blur(); +/script +/body +/html Modified: trunk/Source/WebCore/ChangeLog (125738 => 125739) --- trunk/Source/WebCore/ChangeLog 2012-08-16 02:40:21 UTC (rev 125738) +++ trunk/Source/WebCore/ChangeLog 2012-08-16 03:05:59 UTC (rev 125739) @@ -1,3 +1,24 @@ +2012-08-15 MORITA Hajime morr...@google.com + +Regression(121518) TextFieldDecorationElement formatting is broken. +https://bugs.webkit.org/show_bug.cgi?id=90913 + +Reviewed by Dimitri Glazkov. + +NodeRenderingContext::nextRenderer() has a problem which cannot retrieve the renderer +across an insertion point in some case. That is because ad-hoc composed tree traversal on +NodeRenderingContext is broken. The problem is hidden before r121518 though. + +This change rewrite nextRenderer() using ComposedShadowTreeWalker to eliminate the ad-hoc +traversal. previousRenderer() is also rewritten in the same way. + +Test: fast/dom/shadow/shadow-div-reflow.html + +* dom/NodeRenderingContext.cpp: +(WebCore): +(WebCore::NodeRenderingContext::nextRenderer): +(WebCore::NodeRenderingContext::previousRenderer): + 2012-08-15 Julien Chaffraix jchaffr...@webkit.org Add a was-inserted-into-tree notification to RenderObject Modified: trunk/Source/WebCore/dom/NodeRenderingContext.cpp (125738 => 125739) --- trunk/Source/WebCore/dom/NodeRenderingContext.cpp 2012-08-16 02:40:21 UTC (rev 125738) +++ trunk/Source/WebCore/dom/NodeRenderingContext.cpp 2012-08-16 03:05:59 UTC (rev 125739) @@ -49,9 +49,6 @@ using namespace
[webkit-changes] [125487] trunk/Tools
Title: [125487] trunk/Tools Revision 125487 Author morr...@google.com Date 2012-08-13 18:04:15 -0700 (Mon, 13 Aug 2012) Log Message Unreviewed update for webcomponents-bugzilla address. * Scripts/webkitpy/common/config/committers.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/committers.py Diff Modified: trunk/Tools/ChangeLog (125486 => 125487) --- trunk/Tools/ChangeLog 2012-08-14 01:03:48 UTC (rev 125486) +++ trunk/Tools/ChangeLog 2012-08-14 01:04:15 UTC (rev 125487) @@ -1,3 +1,9 @@ +2012-08-13 MORITA Hajime morr...@google.com + +Unreviewed update for webcomponents-bugzilla address. + +* Scripts/webkitpy/common/config/committers.py: + 2012-08-11 Raphael Kubo da Costa rak...@webkit.org [CMake] Rewrite FindLibSoup2.cmake. Modified: trunk/Tools/Scripts/webkitpy/common/config/committers.py (125486 => 125487) --- trunk/Tools/Scripts/webkitpy/common/config/committers.py 2012-08-14 01:03:48 UTC (rev 125486) +++ trunk/Tools/Scripts/webkitpy/common/config/committers.py 2012-08-14 01:04:15 UTC (rev 125487) @@ -161,7 +161,7 @@ Contributor(Terry Anderson, tdander...@chromium.org, tdanderson), Contributor(Tien-Ren Chen, trc...@chromium.org, trchen), Contributor(WebKit Review Bot, webkit.review@gmail.com, sheriff-bot), -Contributor(Web Components Team, webcomponents-bugzi...@google.com), +Contributor(Web Components Team, webcomponents-bugzi...@chromium.org), Contributor(Wyatt Carss, [wca...@chromium.org, wca...@google.com], wcarss), Contributor(Zeev Lieber, zlie...@chromium.org), Contributor(Zoltan Arvai, zar...@inf.u-szeged.hu, azbest_hu), ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [125390] trunk/Tools
Title: [125390] trunk/Tools Revision 125390 Author morr...@google.com Date 2012-08-12 22:21:54 -0700 (Sun, 12 Aug 2012) Log Message Unreviewed, added a proxy address to contributors_who_are_not_committers. * Scripts/webkitpy/common/config/committers.py: Modified Paths trunk/Tools/ChangeLog trunk/Tools/Scripts/webkitpy/common/config/committers.py Diff Modified: trunk/Tools/ChangeLog (125389 => 125390) --- trunk/Tools/ChangeLog 2012-08-13 04:36:01 UTC (rev 125389) +++ trunk/Tools/ChangeLog 2012-08-13 05:21:54 UTC (rev 125390) @@ -1,3 +1,9 @@ +2012-08-12 MORITA Hajime morr...@google.com + +Unreviewed, added a proxy address to contributors_who_are_not_committers. + +* Scripts/webkitpy/common/config/committers.py: + 2012-08-12 Loïc Yhuel loic.yh...@softathome.com [Qt] Make it possible to build without QtTest/QtPrintSupport Modified: trunk/Tools/Scripts/webkitpy/common/config/committers.py (125389 => 125390) --- trunk/Tools/Scripts/webkitpy/common/config/committers.py 2012-08-13 04:36:01 UTC (rev 125389) +++ trunk/Tools/Scripts/webkitpy/common/config/committers.py 2012-08-13 05:21:54 UTC (rev 125390) @@ -161,6 +161,7 @@ Contributor(Terry Anderson, tdander...@chromium.org, tdanderson), Contributor(Tien-Ren Chen, trc...@chromium.org, trchen), Contributor(WebKit Review Bot, webkit.review@gmail.com, sheriff-bot), +Contributor(Web Components Team, webcomponents-bugzi...@google.com), Contributor(Wyatt Carss, [wca...@chromium.org, wca...@google.com], wcarss), Contributor(Zeev Lieber, zlie...@chromium.org), Contributor(Zoltan Arvai, zar...@inf.u-szeged.hu, azbest_hu), ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [125162] trunk
Title: [125162] trunk Revision 125162 Author morr...@google.com Date 2012-08-09 01:16:54 -0700 (Thu, 09 Aug 2012) Log Message DOMCharacterDataModified should not be fired inside shadows https://bugs.webkit.org/show_bug.cgi?id=93427 Reviewed by Ryosuke Niwa. Source/WebCore: CharacterData::dispatchModifiedEvent() fires DOMCharacterDataModified event even if the node is in shadow. But it shouldn't. Check dispatchChildInsertionEvents() and dispatchChildRemovalEvents() to see how other MutationEvents are suppressed behind shadows. This change follows the same path to suppress DOMCharacterDataModified. Tests: fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html fast/forms/textarea-and-mutation-events-appending-text.html * dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent): LayoutTests: Added two tests. This also fixes existing test, which cover the wrong behavior. * fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt: Added. * fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html: Added. * fast/events/dom-character-data-modified-textarea-crash.html: - DOMCharacterDataModified shouldn't be fired in this case. Fixed to allow test to terminate without the event. Note that The event was fired by textarea, which is fixed by this change. * fast/forms/textarea-and-mutation-events-appending-text-expected.txt: Added. * fast/forms/textarea-and-mutation-events-appending-text.html: Added. * svg/custom/tref-nested-events-crash.svg: - DOMCharacterDataModified shouldn't be fired in this case. Fixed to allow test to terminate without the event. Note that The event was fired by SVGShadowText, which is just an implentation detail and should not be exposed. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/events/dom-character-data-modified-textarea-crash.html trunk/LayoutTests/svg/custom/tref-nested-events-crash.svg trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/CharacterData.cpp Added Paths trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html trunk/LayoutTests/fast/forms/textarea-and-mutation-events-appending-text-expected.txt trunk/LayoutTests/fast/forms/textarea-and-mutation-events-appending-text.html Diff Modified: trunk/LayoutTests/ChangeLog (125161 => 125162) --- trunk/LayoutTests/ChangeLog 2012-08-09 08:09:23 UTC (rev 125161) +++ trunk/LayoutTests/ChangeLog 2012-08-09 08:16:54 UTC (rev 125162) @@ -1,3 +1,26 @@ +2012-08-09 MORITA Hajime morr...@google.com + +DOMCharacterDataModified should not be fired inside shadows +https://bugs.webkit.org/show_bug.cgi?id=93427 + +Reviewed by Ryosuke Niwa. + +Added two tests. This also fixes existing test, which cover the wrong behavior. + +* fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt: Added. +* fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html: Added. +* fast/events/dom-character-data-modified-textarea-crash.html: +- DOMCharacterDataModified shouldn't be fired in this case. + Fixed to allow test to terminate without the event. + Note that The event was fired by textarea, which is fixed by this change. +* fast/forms/textarea-and-mutation-events-appending-text-expected.txt: Added. +* fast/forms/textarea-and-mutation-events-appending-text.html: Added. +* svg/custom/tref-nested-events-crash.svg: +- DOMCharacterDataModified shouldn't be fired in this case. + Fixed to allow test to terminate without the event. + Note that The event was fired by SVGShadowText, which is just an implentation detail and + should not be exposed. + 2012-08-09 Takashi Toyoshima toyos...@chromium.org Unreviewed, update TestExpectations for chromium gardening. Added: trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt (0 => 125162) --- trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt (rev 0) +++ trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata-expected.txt 2012-08-09 08:16:54 UTC (rev 125162) @@ -0,0 +1,11 @@ +Ensures that DOMCharacterDataModified isn't fired inside shadows. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS fired is false +PASS div.innerHTML is 'Hello, World!' +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html (0 => 125162) --- trunk/LayoutTests/fast/dom/shadow/suppress-mutation-events-in-shadow-characterdata.html (rev 0) +++
[webkit-changes] [125237] trunk
Title: [125237] trunk Revision 125237 Author morr...@google.com Date 2012-08-09 19:15:42 -0700 (Thu, 09 Aug 2012) Log Message https://bugs.webkit.org/show_bug.cgi?id=93587 Node::replaceChild() can create bad DOM topology with MutationEvent, Part 2 Reviewed by Kent Tamura. Source/WebCore: This is a followup of r124156. replaceChild() has yet another hidden MutationEvent trigger. This change added a guard for it. Test: fast/events/mutation-during-replace-child-2.html * dom/ContainerNode.cpp: (WebCore::ContainerNode::replaceChild): LayoutTests: * fast/events/mutation-during-replace-child-2-expected.txt: Added. * fast/events/mutation-during-replace-child-2.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp Added Paths trunk/LayoutTests/fast/events/mutation-during-replace-child-2-expected.txt trunk/LayoutTests/fast/events/mutation-during-replace-child-2.html Diff Modified: trunk/LayoutTests/ChangeLog (125236 => 125237) --- trunk/LayoutTests/ChangeLog 2012-08-10 02:13:55 UTC (rev 125236) +++ trunk/LayoutTests/ChangeLog 2012-08-10 02:15:42 UTC (rev 125237) @@ -1,3 +1,13 @@ +2012-08-09 MORITA Hajime morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=93587 +Node::replaceChild() can create bad DOM topology with MutationEvent, Part 2 + +Reviewed by Kent Tamura. + +* fast/events/mutation-during-replace-child-2-expected.txt: Added. +* fast/events/mutation-during-replace-child-2.html: Added. + 2012-08-09 Kinuko Yasuda kin...@chromium.org http/tests/security/mixedContent/blob-url-in-iframe.html fails on Mac Added: trunk/LayoutTests/fast/events/mutation-during-replace-child-2-expected.txt (0 => 125237) --- trunk/LayoutTests/fast/events/mutation-during-replace-child-2-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-replace-child-2-expected.txt 2012-08-10 02:15:42 UTC (rev 125237) @@ -0,0 +1,10 @@ +Ensures that replaceChild() throws an exception if mutation even handler does something wrong + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS target.replaceChild(newChild, oldChild); threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. +PASS successfullyParsed is true + +TEST COMPLETE + Property changes on: trunk/LayoutTests/fast/events/mutation-during-replace-child-2-expected.txt ___ Added: svn:eol-style Added: trunk/LayoutTests/fast/events/mutation-during-replace-child-2.html (0 => 125237) --- trunk/LayoutTests/fast/events/mutation-during-replace-child-2.html (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-replace-child-2.html 2012-08-10 02:15:42 UTC (rev 125237) @@ -0,0 +1,36 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div + div id=target +b/bb id=oldChild/bb/b + /div + div id=newChild/div +/div + +script +description(Ensures that replaceChild() throws an exception if mutation even handler does something wrong); +var target = document.getElementById('target'); +var oldChild = document.getElementById('oldChild'); +var newChild = document.getElementById('newChild'); + +var numCalled = 0; + +function handler(){ +numCalled++; +if (numCalled 2) +return; +document.removeEventListener(DOMNodeRemoved, handler, false); +target.parentNode.removeChild(target); +newChild.appendChild(target); +} +document.addEventListener(DOMNodeRemoved, handler, false); +shouldThrow(target.replaceChild(newChild, oldChild);, 'Error: HIERARCHY_REQUEST_ERR: DOM Exception 3'); +/script +script src="" +/body +/html + Property changes on: trunk/LayoutTests/fast/events/mutation-during-replace-child-2.html ___ Added: svn:eol-style Modified: trunk/Source/WebCore/ChangeLog (125236 => 125237) --- trunk/Source/WebCore/ChangeLog 2012-08-10 02:13:55 UTC (rev 125236) +++ trunk/Source/WebCore/ChangeLog 2012-08-10 02:15:42 UTC (rev 125237) @@ -1,3 +1,18 @@ +2012-08-09 MORITA Hajime morr...@google.com + +https://bugs.webkit.org/show_bug.cgi?id=93587 +Node::replaceChild() can create bad DOM topology with MutationEvent, Part 2 + +Reviewed by Kent Tamura. + +This is a followup of r124156. replaceChild() has yet another hidden +MutationEvent trigger. This change added a guard for it. + +Test: fast/events/mutation-during-replace-child-2.html + +* dom/ContainerNode.cpp: +(WebCore::ContainerNode::replaceChild): + 2012-08-09 Kentaro Hara hara...@chromium.org [V8] V8Utilities::throwTypeMismatchException() should use setDOMException() Modified: trunk/Source/WebCore/dom/ContainerNode.cpp (125236 => 125237) --- trunk/Source/WebCore/dom/ContainerNode.cpp 2012-08-10 02:13:55 UTC (rev 125236) +++
[webkit-changes] [125147] trunk
Title: [125147] trunk Revision 125147 Author morr...@google.com Date 2012-08-08 21:16:38 -0700 (Wed, 08 Aug 2012) Log Message [SVG] load events shouldn't be fired during Node::insrtedInto() https://bugs.webkit.org/show_bug.cgi?id=92969 Reviewed by Ryosuke Niwa. Source/WebCore: Event dispatches during insertedInto() allow event handlers to break DOM tree cosistency. This chagne makes them async for load events which are dispatched during insertedInto() call. This prevents event handlers from breaking tree consistency while the notification traversal. Test: svg/custom/loadevents-async.html * svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossibleAsynchronously): Added. (WebCore): (WebCore::SVGElement::svgLoadEventTimerFired): Added. (WebCore::SVGElement::svgLoadEventTimer): - Added a stub. Implemented in SVGScriptElement, SVGStopElement, SVGUseElement where the load event happens. * svg/SVGElement.h: (SVGElement): * svg/SVGExternalResourcesRequired.cpp: (WebCore::SVGExternalResourcesRequired::insertedIntoDocument): - Replaces event dispatch call with async version. * svg/SVGScriptElement.h: * svg/SVGStyleElement.h: * svg/SVGUseElement.h: LayoutTests: * svg/custom/loadevents-async-expected.txt: Added. * svg/custom/loadevents-async.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/svg/SVGElement.cpp trunk/Source/WebCore/svg/SVGElement.h trunk/Source/WebCore/svg/SVGExternalResourcesRequired.cpp trunk/Source/WebCore/svg/SVGScriptElement.cpp trunk/Source/WebCore/svg/SVGScriptElement.h trunk/Source/WebCore/svg/SVGStyleElement.cpp trunk/Source/WebCore/svg/SVGStyleElement.h trunk/Source/WebCore/svg/SVGUseElement.cpp trunk/Source/WebCore/svg/SVGUseElement.h Added Paths trunk/LayoutTests/svg/custom/loadevents-async-expected.txt trunk/LayoutTests/svg/custom/loadevents-async.html Diff Modified: trunk/LayoutTests/ChangeLog (125146 => 125147) --- trunk/LayoutTests/ChangeLog 2012-08-09 03:52:41 UTC (rev 125146) +++ trunk/LayoutTests/ChangeLog 2012-08-09 04:16:38 UTC (rev 125147) @@ -1,3 +1,13 @@ +2012-08-08 MORITA Hajime morr...@google.com + +[SVG] load events shouldn't be fired during Node::insrtedInto() +https://bugs.webkit.org/show_bug.cgi?id=92969 + +Reviewed by Ryosuke Niwa. + +* svg/custom/loadevents-async-expected.txt: Added. +* svg/custom/loadevents-async.html: Added. + 2012-08-08 Tony Chang t...@chromium.org css3/flexbox/content-height-with-scrollbars.html failing on non-fractional pixel layout machines Added: trunk/LayoutTests/svg/custom/loadevents-async-expected.txt (0 => 125147) --- trunk/LayoutTests/svg/custom/loadevents-async-expected.txt (rev 0) +++ trunk/LayoutTests/svg/custom/loadevents-async-expected.txt 2012-08-09 04:16:38 UTC (rev 125147) @@ -0,0 +1,11 @@ +This test ensures that tree mutation on the load doesn't break consistency. + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS invoked is false +PASS invoked is true +PASS successfullyParsed is true + +TEST COMPLETE + Added: trunk/LayoutTests/svg/custom/loadevents-async.html (0 => 125147) --- trunk/LayoutTests/svg/custom/loadevents-async.html (rev 0) +++ trunk/LayoutTests/svg/custom/loadevents-async.html 2012-08-09 04:16:38 UTC (rev 125147) @@ -0,0 +1,31 @@ +!DOCTYPE HTML +html +head +script src="" +/head +body +script +description(This test ensures that tree mutation on the load doesn't break consistency.); +var invoked = false; +var spanElement = document.createElementNS(http://www.w3.org/1999/xhtml, span); +var divElement = document.createElementNS(http://www.w3.org/1999/xhtml, div); +var useElement = document.createElementNS(http://www.w3.org/2000/svg, use); +var emptyDocument = document.implementation.createDocument(, , null); + +document.body.appendChild(spanElement); +divElement.appendChild(useElement); +useElement.addEventListener(load, function () { emptyDocument.adoptNode(useElement); invoked = true; }, false); +spanElement.appendChild(divElement); +document.body.appendChild(useElement); +shouldBeFalse(invoked); + +jsTestIsAsync = true; +setTimeout(function() { +shouldBeTrue(invoked); +finishJSTest(); +}, 1); + +/script +script src="" +body +/html Modified: trunk/Source/WebCore/ChangeLog (125146 => 125147) --- trunk/Source/WebCore/ChangeLog 2012-08-09 03:52:41 UTC (rev 125146) +++ trunk/Source/WebCore/ChangeLog 2012-08-09 04:16:38 UTC (rev 125147) @@ -1,3 +1,34 @@ +2012-08-08 MORITA Hajime morr...@google.com + +[SVG] load events shouldn't be fired during Node::insrtedInto() +https://bugs.webkit.org/show_bug.cgi?id=92969 + +Reviewed by Ryosuke Niwa. + +Event dispatches during insertedInto() allow event handlers to +break DOM tree cosistency. This chagne makes them async for load +events which are dispatched during insertedInto() call.
[webkit-changes] [124304] trunk
Title: [124304] trunk Revision 124304 Author morr...@google.com Date 2012-07-31 23:11:43 -0700 (Tue, 31 Jul 2012) Log Message Internals::setAuthorShadowDOMForAnyElementEnabled should be on InternalSettings https://bugs.webkit.org/show_bug.cgi?id=92823 Reviewed by Kentaro Hara. Source/WebCore: This change moves Internals::setAuthorShadowDOMForAnyElementEnabled() to InternalSettings to support original value recovery. * testing/InternalSettings.cpp: (WebCore::InternalSettings::Backup::Backup): (WebCore::InternalSettings::Backup::restoreTo): (WebCore::InternalSettings::setAuthorShadowDOMForAnyElementEnabled): Moved from Internals. (WebCore): * testing/InternalSettings.h: (Backup): (InternalSettings): * testing/InternalSettings.idl: * testing/Internals.cpp: * testing/Internals.h: (Internals): * testing/Internals.idl: LayoutTests: Followed the changed on Internals API. * fast/dom/shadow/input-with-validation.html: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/fast/dom/shadow/input-with-validation.html trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/testing/InternalSettings.cpp trunk/Source/WebCore/testing/InternalSettings.h trunk/Source/WebCore/testing/InternalSettings.idl trunk/Source/WebCore/testing/Internals.cpp trunk/Source/WebCore/testing/Internals.h trunk/Source/WebCore/testing/Internals.idl Diff Modified: trunk/LayoutTests/ChangeLog (124303 => 124304) --- trunk/LayoutTests/ChangeLog 2012-08-01 06:05:54 UTC (rev 124303) +++ trunk/LayoutTests/ChangeLog 2012-08-01 06:11:43 UTC (rev 124304) @@ -1,3 +1,14 @@ +2012-07-31 MORITA Hajime morr...@google.com + +Internals::setAuthorShadowDOMForAnyElementEnabled should be on InternalSettings +https://bugs.webkit.org/show_bug.cgi?id=92823 + +Reviewed by Kentaro Hara. + +Followed the changed on Internals API. + +* fast/dom/shadow/input-with-validation.html: + 2012-07-31 Keishi Hattori kei...@webkit.org Mark fast/forms/color/color-suggestion-picker-appearance.html as missing or image mismatch Modified: trunk/LayoutTests/fast/dom/shadow/input-with-validation.html (124303 => 124304) --- trunk/LayoutTests/fast/dom/shadow/input-with-validation.html 2012-08-01 06:05:54 UTC (rev 124303) +++ trunk/LayoutTests/fast/dom/shadow/input-with-validation.html 2012-08-01 06:11:43 UTC (rev 124304) @@ -9,7 +9,7 @@ script if (window.internals) -internals.setAuthorShadowDOMForAnyElementEnabled(true); +internals.settings.setAuthorShadowDOMForAnyElementEnabled(true); var input = document.getElementById('password'); var shadowRoot = new WebKitShadowRoot(input); @@ -19,8 +19,6 @@ if (window.testRunner) { testRunner.waitUntilDone(); setTimeout(function() { -if (window.internals) -internals.setAuthorShadowDOMForAnyElementEnabled(false); testRunner.notifyDone(); }, 10); } Modified: trunk/Source/WebCore/ChangeLog (124303 => 124304) --- trunk/Source/WebCore/ChangeLog 2012-08-01 06:05:54 UTC (rev 124303) +++ trunk/Source/WebCore/ChangeLog 2012-08-01 06:11:43 UTC (rev 124304) @@ -1,3 +1,27 @@ +2012-07-31 MORITA Hajime morr...@google.com + +Internals::setAuthorShadowDOMForAnyElementEnabled should be on InternalSettings +https://bugs.webkit.org/show_bug.cgi?id=92823 + +Reviewed by Kentaro Hara. + +This change moves Internals::setAuthorShadowDOMForAnyElementEnabled() to +InternalSettings to support original value recovery. + +* testing/InternalSettings.cpp: +(WebCore::InternalSettings::Backup::Backup): +(WebCore::InternalSettings::Backup::restoreTo): +(WebCore::InternalSettings::setAuthorShadowDOMForAnyElementEnabled): Moved from Internals. +(WebCore): +* testing/InternalSettings.h: +(Backup): +(InternalSettings): +* testing/InternalSettings.idl: +* testing/Internals.cpp: +* testing/Internals.h: +(Internals): +* testing/Internals.idl: + 2012-07-31 Vincent Scheib sch...@chromium.org webkitRequestPointerLock and webkitExitPointerLock limited to the same document of an active Pointer lock. Modified: trunk/Source/WebCore/testing/InternalSettings.cpp (124303 => 124304) --- trunk/Source/WebCore/testing/InternalSettings.cpp 2012-08-01 06:05:54 UTC (rev 124303) +++ trunk/Source/WebCore/testing/InternalSettings.cpp 2012-08-01 06:11:43 UTC (rev 124304) @@ -77,6 +77,7 @@ , m_originalCSSExclusionsEnabled(RuntimeEnabledFeatures::cssExclusionsEnabled()) #if ENABLE(SHADOW_DOM) , m_originalShadowDOMEnabled(RuntimeEnabledFeatures::shadowDOMEnabled()) +, m_originalAuthorShadowDOMForAnyElementEnabled(RuntimeEnabledFeatures::authorShadowDOMForAnyElementEnabled()) #endif , m_originalEditingBehavior(settings-editingBehaviorType()) , m_originalFixedPositionCreatesStackingContext(settings-fixedPositionCreatesStackingContext()) @@ -105,6 +106,7 @@
[webkit-changes] [124156] trunk
Title: [124156] trunk Revision 124156 Author morr...@google.com Date 2012-07-30 19:48:33 -0700 (Mon, 30 Jul 2012) Log Message Node::replaceChild() can create bad DOM topology with MutationEvent https://bugs.webkit.org/show_bug.cgi?id=92619 Reviewed by Ryosuke Niwa. Source/WebCore: Node::replaceChild() calls insertBeforeCommon() after dispatching a MutationEvent event for removeChild(). But insertBeforeCommon() expects call sites to check the invariant and doesn't have suffient check. So a MutationEvent handler can let some bad tree topology to slip into insertBeforeCommon(). This change adds a guard for checking the invariant using checkReplaceChild() between removeChild() and insertBeforeCommon(). Test: fast/events/mutation-during-replace-child.html * dom/ContainerNode.cpp: (WebCore::ContainerNode::replaceChild): Added a guard. LayoutTests: * fast/events/mutation-during-replace-child-expected.txt: Added. * fast/events/mutation-during-replace-child.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/dom/ContainerNode.cpp Added Paths trunk/LayoutTests/fast/events/mutation-during-replace-child-expected.txt trunk/LayoutTests/fast/events/mutation-during-replace-child.html Diff Modified: trunk/LayoutTests/ChangeLog (124155 => 124156) --- trunk/LayoutTests/ChangeLog 2012-07-31 02:46:58 UTC (rev 124155) +++ trunk/LayoutTests/ChangeLog 2012-07-31 02:48:33 UTC (rev 124156) @@ -1,3 +1,13 @@ +2012-07-30 MORITA Hajime morr...@google.com + +Node::replaceChild() can create bad DOM topology with MutationEvent +https://bugs.webkit.org/show_bug.cgi?id=92619 + +Reviewed by Ryosuke Niwa. + +* fast/events/mutation-during-replace-child-expected.txt: Added. +* fast/events/mutation-during-replace-child.html: Added. + 2012-07-30 Kent Tamura tk...@chromium.org Fix a popup position issue of fast/forms/date/calendar-picker-appearance.html Added: trunk/LayoutTests/fast/events/mutation-during-replace-child-expected.txt (0 => 124156) --- trunk/LayoutTests/fast/events/mutation-during-replace-child-expected.txt (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-replace-child-expected.txt 2012-07-31 02:48:33 UTC (rev 124156) @@ -0,0 +1,10 @@ +Ensures that replaceChild() throws an exception if mutation even handler does something wrong + +On success, you will see a series of PASS messages, followed by TEST COMPLETE. + + +PASS target.replaceChild(newChild, oldChild); threw exception Error: HIERARCHY_REQUEST_ERR: DOM Exception 3. +PASS successfullyParsed is true + +TEST COMPLETE + Property changes on: trunk/LayoutTests/fast/events/mutation-during-replace-child-expected.txt ___ Added: svn:eol-style Added: trunk/LayoutTests/fast/events/mutation-during-replace-child.html (0 => 124156) --- trunk/LayoutTests/fast/events/mutation-during-replace-child.html (rev 0) +++ trunk/LayoutTests/fast/events/mutation-during-replace-child.html 2012-07-31 02:48:33 UTC (rev 124156) @@ -0,0 +1,32 @@ +!DOCTYPE html +html +head +script src="" +/head +body +div + div id=target +b/bb id=oldChild/bb/b + /div + div id=newChild/div +/div + +script +description(Ensures that replaceChild() throws an exception if mutation even handler does something wrong); +var target = document.getElementById('target'); +var oldChild = document.getElementById('oldChild'); +var newChild = document.getElementById('newChild'); + +function handler(){ +document.removeEventListener(DOMNodeRemoved, handler, false); +newChild.parentNode.removeChild(newChild); +target.parentNode.removeChild(target); +newChild.appendChild(target); +} +document.addEventListener(DOMNodeRemoved, handler, false); +shouldThrow(target.replaceChild(newChild, oldChild);, 'Error: HIERARCHY_REQUEST_ERR: DOM Exception 3'); +/script +script src="" +/body +/html + Property changes on: trunk/LayoutTests/fast/events/mutation-during-replace-child.html ___ Added: svn:eol-style Modified: trunk/Source/WebCore/ChangeLog (124155 => 124156) --- trunk/Source/WebCore/ChangeLog 2012-07-31 02:46:58 UTC (rev 124155) +++ trunk/Source/WebCore/ChangeLog 2012-07-31 02:48:33 UTC (rev 124156) @@ -1,3 +1,24 @@ +2012-07-30 MORITA Hajime morr...@google.com + +Node::replaceChild() can create bad DOM topology with MutationEvent +https://bugs.webkit.org/show_bug.cgi?id=92619 + +Reviewed by Ryosuke Niwa. + +Node::replaceChild() calls insertBeforeCommon() after dispatching +a MutationEvent event for removeChild(). But insertBeforeCommon() +expects call sites to check the invariant and doesn't have +suffient check. So a MutationEvent handler can let some bad tree +topology to slip into insertBeforeCommon(). + +This change adds
[webkit-changes] [123585] trunk/Source/WebKit/chromium
Title: [123585] trunk/Source/WebKit/chromium Revision 123585 Author morr...@google.com Date 2012-07-25 01:00:53 -0700 (Wed, 25 Jul 2012) Log Message Unreviewed win build fix against r123569. * tests/IDBAbortOnCorruptTest.cpp: * tests/IDBDatabaseBackendTest.cpp: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (123584 => 123585) --- trunk/Source/WebKit/chromium/ChangeLog 2012-07-25 07:42:03 UTC (rev 123584) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-07-25 08:00:53 UTC (rev 123585) @@ -1,3 +1,10 @@ +2012-07-25 MORITA Hajime morr...@google.com + +Unreviewed win build fix against r123569. + +* tests/IDBAbortOnCorruptTest.cpp: +* tests/IDBDatabaseBackendTest.cpp: + 2012-07-24 Sheriff Bot webkit.review@gmail.com Unreviewed. Rolled DEPS. Modified: trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp (123584 => 123585) --- trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp 2012-07-25 07:42:03 UTC (rev 123584) +++ trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp 2012-07-25 08:00:53 UTC (rev 123585) @@ -24,6 +24,7 @@ */ #include config.h +#include IDBCursorBackendInterface.h #include IDBFactoryBackendImpl.h #include IDBFakeBackingStore.h #include SecurityOrigin.h Modified: trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp (123584 => 123585) --- trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp 2012-07-25 07:42:03 UTC (rev 123584) +++ trunk/Source/WebKit/chromium/tests/IDBDatabaseBackendTest.cpp 2012-07-25 08:00:53 UTC (rev 123585) @@ -25,6 +25,7 @@ #include config.h #include IDBBackingStore.h +#include IDBCursorBackendInterface.h #include IDBDatabaseBackendImpl.h #include IDBFactoryBackendImpl.h #include IDBFakeBackingStore.h ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [123589] trunk/Source/WebKit/chromium
Title: [123589] trunk/Source/WebKit/chromium Revision 123589 Author morr...@google.com Date 2012-07-25 01:42:44 -0700 (Wed, 25 Jul 2012) Log Message Another unreviewed win build fix against r123569. * tests/IDBAbortOnCorruptTest.cpp: Modified Paths trunk/Source/WebKit/chromium/ChangeLog trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp Diff Modified: trunk/Source/WebKit/chromium/ChangeLog (123588 => 123589) --- trunk/Source/WebKit/chromium/ChangeLog 2012-07-25 08:35:59 UTC (rev 123588) +++ trunk/Source/WebKit/chromium/ChangeLog 2012-07-25 08:42:44 UTC (rev 123589) @@ -1,3 +1,9 @@ +2012-07-25 MORITA Hajime morr...@google.com + +Another unreviewed win build fix against r123569. + +* tests/IDBAbortOnCorruptTest.cpp: + 2012-07-25 MORITA Hajime morr...@google.com Unreviewed win build fix against r123569. Modified: trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp (123588 => 123589) --- trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp 2012-07-25 08:35:59 UTC (rev 123588) +++ trunk/Source/WebKit/chromium/tests/IDBAbortOnCorruptTest.cpp 2012-07-25 08:42:44 UTC (rev 123589) @@ -25,6 +25,7 @@ #include config.h #include IDBCursorBackendInterface.h +#include IDBDatabaseBackendInterface.h #include IDBFactoryBackendImpl.h #include IDBFakeBackingStore.h #include SecurityOrigin.h ___ webkit-changes mailing list webkit-changes@lists.webkit.org http://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [123706] trunk
Title: [123706] trunk Revision 123706 Author morr...@google.com Date 2012-07-25 20:26:50 -0700 (Wed, 25 Jul 2012) Log Message [Chromium][Win] progress animation on RTL direction is reverse https://bugs.webkit.org/show_bug.cgi?id=92236 Reviewed by Kent Tamura. Source/WebCore: This change modfies the way to handle RTL progress bar painting. Originally it computes the flipped coordinates. This change uses transformation for the flip. DirectionFlippingScope handles it. * rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::paintProgressBar): Applied DirectionFlippingScope * rendering/RenderThemeChromiumSkia.cpp: (WebCore::RenderThemeChromiumSkia::determinateProgressValueRectFor): - Deleted RTL handling in favor of DirectionFlippingScope (WebCore::RenderThemeChromiumSkia::DirectionFlippingScope::DirectionFlippingScope): (WebCore): (WebCore::RenderThemeChromiumSkia::DirectionFlippingScope::~DirectionFlippingScope): * rendering/RenderThemeChromiumSkia.h: (RenderThemeChromiumSkia): (DirectionFlippingScope): Added. * rendering/RenderThemeChromiumWin.cpp: (WebCore): (WebCore::RenderThemeChromiumWin::paintProgressBar): Applied DirectionFlippingScope LayoutTests: Updated the expectation file which went slightly different. * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/rendering/RenderThemeChromiumLinux.cpp trunk/Source/WebCore/rendering/RenderThemeChromiumSkia.cpp trunk/Source/WebCore/rendering/RenderThemeChromiumSkia.h trunk/Source/WebCore/rendering/RenderThemeChromiumWin.cpp Diff Modified: trunk/LayoutTests/ChangeLog (123705 => 123706) --- trunk/LayoutTests/ChangeLog 2012-07-26 03:24:46 UTC (rev 123705) +++ trunk/LayoutTests/ChangeLog 2012-07-26 03:26:50 UTC (rev 123706) @@ -1,3 +1,14 @@ +2012-07-25 MORITA Hajime morr...@google.com + +[Chromium][Win] progress animation on RTL direction is reverse +https://bugs.webkit.org/show_bug.cgi?id=92236 + +Reviewed by Kent Tamura. + +Updated the expectation file which went slightly different. + +* platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png: + 2012-07-25 Shinya Kawanaka shin...@chromium.org The elements in ShadowDOM of meter or progress should not be modifiable. Modified: trunk/LayoutTests/platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png (Binary files differ) Modified: trunk/Source/WebCore/ChangeLog (123705 => 123706) --- trunk/Source/WebCore/ChangeLog 2012-07-26 03:24:46 UTC (rev 123705) +++ trunk/Source/WebCore/ChangeLog 2012-07-26 03:26:50 UTC (rev 123706) @@ -1,3 +1,29 @@ +2012-07-25 MORITA Hajime morr...@google.com + +[Chromium][Win] progress animation on RTL direction is reverse +https://bugs.webkit.org/show_bug.cgi?id=92236 + +Reviewed by Kent Tamura. + +This change modfies the way to handle RTL progress bar painting. +Originally it computes the flipped coordinates. This change uses transformation for the flip. +DirectionFlippingScope handles it. + +* rendering/RenderThemeChromiumLinux.cpp: +(WebCore::RenderThemeChromiumLinux::paintProgressBar): Applied DirectionFlippingScope +* rendering/RenderThemeChromiumSkia.cpp: +(WebCore::RenderThemeChromiumSkia::determinateProgressValueRectFor): +- Deleted RTL handling in favor of DirectionFlippingScope +(WebCore::RenderThemeChromiumSkia::DirectionFlippingScope::DirectionFlippingScope): +(WebCore): +(WebCore::RenderThemeChromiumSkia::DirectionFlippingScope::~DirectionFlippingScope): +* rendering/RenderThemeChromiumSkia.h: +(RenderThemeChromiumSkia): +(DirectionFlippingScope): Added. +* rendering/RenderThemeChromiumWin.cpp: +(WebCore): +(WebCore::RenderThemeChromiumWin::paintProgressBar): Applied DirectionFlippingScope + 2012-07-25 Vineet Chaudhary rgf...@motorola.com https://bugs.webkit.org/show_bug.cgi?id=92260 Modified: trunk/Source/WebCore/rendering/RenderThemeChromiumLinux.cpp (123705 => 123706) --- trunk/Source/WebCore/rendering/RenderThemeChromiumLinux.cpp 2012-07-26 03:24:46 UTC (rev 123705) +++ trunk/Source/WebCore/rendering/RenderThemeChromiumLinux.cpp 2012-07-26 03:26:50 UTC (rev 123706) @@ -357,6 +357,7 @@ extraParams.progressBar.valueRectWidth = valueRect.width(); extraParams.progressBar.valueRectHeight = valueRect.height(); +DirectionFlippingScope scope(o, i, rect); PlatformSupport::paintThemePart(i.context, PlatformSupport::PartProgressBar, getWebThemeState(this, o), rect, extraParams); return false; } Modified: trunk/Source/WebCore/rendering/RenderThemeChromiumSkia.cpp (123705 => 123706) ---