This is a meta bug to track all efforts to implement "Incremental Shadow DOM". Design Doc: https://docs.google.com/document/d/1R9J8CVaSub_nbaVQwwm3NjCoZye4feJ7ft7tVe5QerM/edit#
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8a2707717c7a7702ea31f84bcee37370c71847a1 commit 8a2707717c7a7702ea31f84bcee37370c71847a1 Author: Hayato Ito <hayato@chromium.org> Date: Thu Nov 09 18:06:09 2017 Rename SupportsDistribution to SupportsAssignment in HTMLSlotElement "Distribution" is likely a word which implies "an old mechanism without IncrementalShadowDOM". SupportsAssignment would be better here. Bug: 776656 Change-Id: Id1cfbbb9df054b7f0a47352c15aaf0bd57203792 Reviewed-on: https://chromium-review.googlesource.com/760117 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#515205} [modify] https://crrev.com/8a2707717c7a7702ea31f84bcee37370c71847a1/third_party/WebKit/Source/core/dom/FlatTreeTraversal.cpp [modify] https://crrev.com/8a2707717c7a7702ea31f84bcee37370c71847a1/third_party/WebKit/Source/core/dom/Node.cpp [modify] https://crrev.com/8a2707717c7a7702ea31f84bcee37370c71847a1/third_party/WebKit/Source/core/dom/ng/flat_tree_traversal_ng.cc [modify] https://crrev.com/8a2707717c7a7702ea31f84bcee37370c71847a1/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/8a2707717c7a7702ea31f84bcee37370c71847a1/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/31070df4c130e0c97a8e44aff50a79684837f8a9 commit 31070df4c130e0c97a8e44aff50a79684837f8a9 Author: Hayato Ito <hayato@chromium.org> Date: Mon Nov 13 04:16:17 2017 [Incremental Shadow DOM] Resolve assigned nodes incrementally This is a part of Incremental Shadow DOM. Resolve slot's assigned nodes incrementally, on-demand basis, instead of relying on UpdateDistribution phase. This functionality is guarded by IncrementalShadowDOM runtime flag. This CL also introduces the utility function used only for testing. The utility function can process "Mini-DSL" for declarative Shadow DOM. That is useful for writing a complex composed tree. Since SlotAssingmentTest is the only user of the function, it is inside of anonymous namespace. Bug: 776656 Change-Id: I3359f67eabe562261cdfe2467b17b6b5e46b3c72 Reviewed-on: https://chromium-review.googlesource.com/750941 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#515883} [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/BUILD.gn [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/Element.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/ElementShadow.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/ElementShadow.h [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/Node.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/Node.h [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/ShadowRoot.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/ShadowRoot.h [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/SlotAssignment.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/SlotAssignment.h [add] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/dom/ng/slot_assignment_test.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/31070df4c130e0c97a8e44aff50a79684837f8a9/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3 commit c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3 Author: Hayato Ito <hayato@chromium.org> Date: Thu Nov 16 03:33:40 2017 Add virtual test suites for IncrementalShadowDOM There are still many tests which crash or fail when IncrementalShadowDOM is enabled. Let me fix these incrementally. Bug: 776656 Change-Id: I4a57f8a61903dcaf06cf57023c181645b4007f3e Reviewed-on: https://chromium-review.googlesource.com/768352 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#516968} [modify] https://crrev.com/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3/third_party/WebKit/LayoutTests/VirtualTestSuites [add] https://crrev.com/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/external/wpt/shadow-dom/README.txt [add] https://crrev.com/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/fast/dom/shadow/README.txt [add] https://crrev.com/c66b9c919821e8cf11e2a85ae758c8bd05ff3ef3/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/shadow-dom/README.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f01395ff3538341da0ea9eec0978a15afa26f3e2 commit f01395ff3538341da0ea9eec0978a15afa26f3e2 Author: Hayato Ito <hayato@chromium.org> Date: Thu Nov 16 07:41:48 2017 Add virtual/incremental-shadow-dom/fast/dom/shadow/shadowdom-for-button.html to TestExpectations TBR=horo,kochi Bug: 776656 , 785685 Change-Id: I64e6ff2448de65db4dbb10d81d8f3c8e39a70157 Reviewed-on: https://chromium-review.googlesource.com/773796 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#517017} [modify] https://crrev.com/f01395ff3538341da0ea9eec0978a15afa26f3e2/third_party/WebKit/LayoutTests/TestExpectations
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/21a8455188c47f244a84413dde6e610da6f64a57 commit 21a8455188c47f244a84413dde6e610da6f64a57 Author: Hayato Ito <hayato@chromium.org> Date: Fri Nov 17 06:16:56 2017 [IncrementalShadowDOM] Fix Slot's AttachLayoutTree, attaching assigned nodes HTMLSlotElement::AttachLayoutTree should attach assigned nodes, instead of distributed nodes, which is no longer valid in IncrementalShadowDOM. Bug: 776656 Change-Id: Id6d2561ea4f1b0a4e837b8c7744f573948e37dd4 Reviewed-on: https://chromium-review.googlesource.com/773323 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#517325} [modify] https://crrev.com/21a8455188c47f244a84413dde6e610da6f64a57/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/21a8455188c47f244a84413dde6e610da6f64a57/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/21a8455188c47f244a84413dde6e610da6f64a57/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/53609b0173f42b54fe57ed50f9f6707adcb09c1c commit 53609b0173f42b54fe57ed50f9f6707adcb09c1c Author: Hayato Ito <hayato@chromium.org> Date: Tue Nov 21 06:38:35 2017 [IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree DCHECK fails if we set distribution recalc flag for v1 ElementShadow. Bug: 776656 Change-Id: I75a18d266fc35d6901063de526c0c0605a6ac029 Reviewed-on: https://chromium-review.googlesource.com/778648 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#518148} [modify] https://crrev.com/53609b0173f42b54fe57ed50f9f6707adcb09c1c/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/53609b0173f42b54fe57ed50f9f6707adcb09c1c/third_party/WebKit/Source/core/dom/ElementShadowV0.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6b85db8c8ebf67afbedd0a602ad5e00f3ca5e12e commit 6b85db8c8ebf67afbedd0a602ad5e00f3ca5e12e Author: Mike West <mkwst@chromium.org> Date: Tue Nov 21 09:38:39 2017 Revert "[IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree" This reverts commit 53609b0173f42b54fe57ed50f9f6707adcb09c1c. Reason for revert: ``` The test this patch unskips is failing on WebKit Mac 10.10 (https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Mac10.10/builds/39818) and Mac 10.10 (https://build.chromium.org/p/chromium.mac/builders/Mac10.10%20Tests/builds/26277). ``` Original change's description: > [IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree > > DCHECK fails if we set distribution recalc flag for v1 ElementShadow. > > Bug: 776656 > Change-Id: I75a18d266fc35d6901063de526c0c0605a6ac029 > Reviewed-on: https://chromium-review.googlesource.com/778648 > Reviewed-by: Takayoshi Kochi <kochi@chromium.org> > Commit-Queue: Hayato Ito <hayato@chromium.org> > Cr-Commit-Position: refs/heads/master@{#518148} TBR=kochi@chromium.org,hayato@chromium.org,rakina@chromium.org Change-Id: I9466cf6bd67c41b5a2cd3d767ea327af68a75500 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 776656 Reviewed-on: https://chromium-review.googlesource.com/781679 Reviewed-by: Mike West <mkwst@chromium.org> Commit-Queue: Mike West <mkwst@chromium.org> Cr-Commit-Position: refs/heads/master@{#518196} [modify] https://crrev.com/6b85db8c8ebf67afbedd0a602ad5e00f3ca5e12e/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/6b85db8c8ebf67afbedd0a602ad5e00f3ca5e12e/third_party/WebKit/Source/core/dom/ElementShadowV0.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/171b40fd9b2067ff52e19ef24f7999685f9a64d4 commit 171b40fd9b2067ff52e19ef24f7999685f9a64d4 Author: Hayato Ito <hayato@chromium.org> Date: Wed Nov 22 06:49:38 2017 [IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree (part 2) This fix is similar to https://chromium-review.googlesource.com/c/chromium/src/+/778648. Bug: 776656 Change-Id: Ia0a027cef3f4ec10027bc3dce486df36e8e91ff4 Reviewed-on: https://chromium-review.googlesource.com/781485 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#518553} [modify] https://crrev.com/171b40fd9b2067ff52e19ef24f7999685f9a64d4/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/171b40fd9b2067ff52e19ef24f7999685f9a64d4/third_party/WebKit/Source/core/dom/V0InsertionPoint.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e2a79dbe8cf18cd4d55f63a20bb7293007984828 commit e2a79dbe8cf18cd4d55f63a20bb7293007984828 Author: Hayato Ito <hayato@chromium.org> Date: Wed Nov 22 10:08:09 2017 [IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree (part 3) This fix is similar to https://chromium-review.googlesource.com/c/chromium/src/+/778648. virtual/incremental-shadow-dom/shadow-dom/nodetree-radio-node-list.html should be fixed with this CL, however, it still crashes due to crbug.com/787717 . Once we can rewrite built-in elements so that they don't use Shadow DOM v0 feature, the crash would be gone. Bug: 776656 Change-Id: I0acde37be7688c9875cbbed633f3a527f91b66ed Reviewed-on: https://chromium-review.googlesource.com/784740 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#518593} [modify] https://crrev.com/e2a79dbe8cf18cd4d55f63a20bb7293007984828/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/e2a79dbe8cf18cd4d55f63a20bb7293007984828/third_party/WebKit/Source/core/dom/Node.cpp [modify] https://crrev.com/e2a79dbe8cf18cd4d55f63a20bb7293007984828/third_party/WebKit/Source/core/dom/V0InsertionPoint.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/33e50b11cae56bd0c7fb35e66f15f459e62e0e6b commit 33e50b11cae56bd0c7fb35e66f15f459e62e0e6b Author: Hayato Ito <hayato@chromium.org> Date: Mon Nov 27 04:54:53 2017 Reland: [IncremetalShadowDOM] Don't set distribution recalc flag for v1 shadow tree This relands commit 53609b0173f42b54fe57ed50f9f6707adcb09c1c. It was reverted in 6b85db8c8ebf67afbedd0a602ad5e00f3ca5e12e because it caused shadowdom-for-button.html's failure. The test was removed in b22ea444bd85153593376836ddeba59827236477. TBR=kochi Bug: 776656 Change-Id: Ia45ab529b019f85d90bfd324a47d65cdb64021a3 Reviewed-on: https://chromium-review.googlesource.com/784670 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#519218} [modify] https://crrev.com/33e50b11cae56bd0c7fb35e66f15f459e62e0e6b/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/33e50b11cae56bd0c7fb35e66f15f459e62e0e6b/third_party/WebKit/Source/core/dom/ElementShadowV0.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f92c9383c5adb9f864527ce612943de961ee8ae3 commit f92c9383c5adb9f864527ce612943de961ee8ae3 Author: Hayato Ito <hayato@chromium.org> Date: Thu Nov 30 06:13:01 2017 [IncrementalShadowDOM] Don't lazy-reattach assigned nodes when resolving assignments In IncrementalShadowDOM, SlotAssignment resolves assignments on an on-demand basis. That could happen even when rebuilding layout tree is in-progress. That means NeedsStyleRecalc flag would be marked true even though rebuilding layout tree is in progress. That would break the assumption, and DHECK() is hit. virtual/incremental-shadow-dom/external/wpt/shadow-dom/slotchange-event.html would hit this DCHECK. The added two tests are minimized test cases of slotchange-event.html. Note: A layout is still incomplete with IncrementalShadowDOM. That needs non-trivial efforts to fix. I'll work on layout issues in the next quarter. Bug: 776656 Change-Id: Ia906dc9381464f87fc738e6a3b018bbf3b41ff74 Reviewed-on: https://chromium-review.googlesource.com/799012 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#520459} [modify] https://crrev.com/f92c9383c5adb9f864527ce612943de961ee8ae3/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/f92c9383c5adb9f864527ce612943de961ee8ae3/third_party/WebKit/LayoutTests/shadow-dom/crashes/add-host-child-element-crash.html [add] https://crrev.com/f92c9383c5adb9f864527ce612943de961ee8ae3/third_party/WebKit/LayoutTests/shadow-dom/crashes/add-host-child-text-crash.html [modify] https://crrev.com/f92c9383c5adb9f864527ce612943de961ee8ae3/third_party/WebKit/Source/core/dom/SlotAssignment.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dacffa53f8006988a14be38293ad77755803dac6 commit dacffa53f8006988a14be38293ad77755803dac6 Author: Takayoshi Kochi <kochi@chromium.org> Date: Tue Dec 19 05:29:43 2017 Remove passing failure expectations for incremental-shadow-dom 20 virtual/incremental-shadow-dom expected failures are already passing. Remove these entries from the TestExpectations file. TBR=hayato@chromium.org Bug: 776656 , 788635 Change-Id: I8483a342fe762f0ceb447108e3bb89e183613bb1 Reviewed-on: https://chromium-review.googlesource.com/832293 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#524947} [modify] https://crrev.com/dacffa53f8006988a14be38293ad77755803dac6/third_party/WebKit/LayoutTests/TestExpectations
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c5f0553ddd646ede47b384e254fc04853925bded commit c5f0553ddd646ede47b384e254fc04853925bded Author: Hayato Ito <hayato@chromium.org> Date: Thu Jan 18 09:08:21 2018 Update text expactations for Incremental Shadow DOM virtual/incremental-shadow-dom/fast/dom/shadow/make-marquee-bold-by-exec-command-crash.html no longer fails. TBR=kochi Bug: 801463 , 776656 Change-Id: I06591caa583be7fb94e51df4bb57c8aea96e8190 Reviewed-on: https://chromium-review.googlesource.com/872691 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#530094} [modify] https://crrev.com/c5f0553ddd646ede47b384e254fc04853925bded/third_party/WebKit/LayoutTests/TestExpectations
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5fd4debe210ddcc4ae14d0cadf76ea127b14de56 commit 5fd4debe210ddcc4ae14d0cadf76ea127b14de56 Author: Hayato Ito <hayato@chromium.org> Date: Thu Jan 18 11:32:47 2018 Support Incremental Shadow DOM in AssignedNodes and AssignedElements Update AssignedNodes() and AssignedElements() so that they are aware of Incremental Shadow DOM. Update TestExpectations for tests which no longer fail. Bug: 776656 Change-Id: I3f5fc2a33388a378a3094861fd0930f7bf8391b3 Reviewed-on: https://chromium-review.googlesource.com/873052 Reviewed-by: Rune Lillesveen <futhark@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#530120} [modify] https://crrev.com/5fd4debe210ddcc4ae14d0cadf76ea127b14de56/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/5fd4debe210ddcc4ae14d0cadf76ea127b14de56/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/5fd4debe210ddcc4ae14d0cadf76ea127b14de56/third_party/WebKit/Source/core/html/HTMLSlotElement.h [modify] https://crrev.com/5fd4debe210ddcc4ae14d0cadf76ea127b14de56/third_party/WebKit/Source/core/html/HTMLSlotElement.idl
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c0c6c25fe6077d60dccd0461fd45e01455feb240 commit c0c6c25fe6077d60dccd0461fd45e01455feb240 Author: Rune Lillesveen <futhark@chromium.org> Date: Fri Jan 19 07:21:29 2018 Pass parent details to FlatTreeTraversalNg::Parent(). We missed passing the ParentTraversalDetails argument from the old to the Ng flat tree traversal class. TEST=fast/dom/shadow/user-modify-inheritance.html Bug: 776656 , 660265 Change-Id: Idfcdc97f5043483cc61720c88d970111f96064fc Reviewed-on: https://chromium-review.googlesource.com/873770 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Rune Lillesveen <futhark@chromium.org> Cr-Commit-Position: refs/heads/master@{#530446} [modify] https://crrev.com/c0c6c25fe6077d60dccd0461fd45e01455feb240/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/c0c6c25fe6077d60dccd0461fd45e01455feb240/third_party/WebKit/Source/core/dom/FlatTreeTraversal.h [modify] https://crrev.com/c0c6c25fe6077d60dccd0461fd45e01455feb240/third_party/WebKit/Source/core/dom/FlatTreeTraversalTest.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/df2aa84fb39dc57f7ad29e51a34636eb4ae820db commit df2aa84fb39dc57f7ad29e51a34636eb4ae820db Author: Rune Lillesveen <futhark@chromium.org> Date: Fri Jan 19 10:43:29 2018 Use correct expected result for slot inheritance test. Use a test expectation for the standard test env rather than in the virtual test for IncrementalShadowDOM. Bug: 660265 , 776656 Change-Id: Iaea0601924d22753b57e3ac9c2569f75e24cd9d0 Reviewed-on: https://chromium-review.googlesource.com/873973 Commit-Queue: Rune Lillesveen <futhark@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#530479} [modify] https://crrev.com/df2aa84fb39dc57f7ad29e51a34636eb4ae820db/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/df2aa84fb39dc57f7ad29e51a34636eb4ae820db/third_party/WebKit/LayoutTests/shadow-dom/css-style-inherit.html
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8be057e08e7a357c3d79b2132fb3d60b920e017c commit 8be057e08e7a357c3d79b2132fb3d60b920e017c Author: Hayato Ito <hayato@chromium.org> Date: Tue Jan 30 05:55:26 2018 Remove an untriaged obsolete web platform test It looks that event-path-001.html is obsolete and needs to be updated, however, let's remove it because we have already other web platform tests for event.composedPath() in wpt/shadow-dom/. Bug: 776656 Change-Id: Ic6c5909ebc44c7260c8cc8ad9e935c406af3a070 Reviewed-on: https://chromium-review.googlesource.com/891038 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#532781} [modify] https://crrev.com/8be057e08e7a357c3d79b2132fb3d60b920e017c/third_party/WebKit/LayoutTests/TestExpectations [delete] https://crrev.com/b46ecfc4252311a13477b81715c84bc4f3dd8ee0/third_party/WebKit/LayoutTests/external/wpt/shadow-dom/untriaged/elements-and-dom-objects/extensions-to-event-interface/event-path-001.html
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4934d69bb25e23c1f555a03781ff690664ad3bfa commit 4934d69bb25e23c1f555a03781ff690664ad3bfa Author: Hayato Ito <hayato@chromium.org> Date: Tue Jan 30 06:48:50 2018 Update text expectation for slots-in-flat-tree Use a test expectation for the standard test env rather than in the virtual test for IncrementalShadowDOM. Bug: 660265 , 776656 Change-Id: I6b2d3b1dcf0ebcb94c5e592d6255d0dc8ee95469 Reviewed-on: https://chromium-review.googlesource.com/892680 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#532796} [modify] https://crrev.com/4934d69bb25e23c1f555a03781ff690664ad3bfa/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/4934d69bb25e23c1f555a03781ff690664ad3bfa/third_party/WebKit/LayoutTests/fast/dom/shadow/shadow-dom-event-dispatching-details-summary-expected.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/73841ed6c2e12b9f30c922f43271c25cd52e26a6 commit 73841ed6c2e12b9f30c922f43271c25cd52e26a6 Author: Hayato Ito <hayato@chromium.org> Date: Thu Feb 01 03:20:42 2018 [Incremental Shadow DOM] Use FlattendAssignedNodes, instead of GetDistributedNodes GetDistributedNodes() doesn't consider Incremental Shadow DOM. Let's replace it with FlattendAssignedNodes, which is aware of Incremental Shadow DOM. BUG: 776656 Change-Id: Ie2730816552e7ea81289a9d44cb8f12f88a8adc9 Reviewed-on: https://chromium-review.googlesource.com/892604 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#533544} [modify] https://crrev.com/73841ed6c2e12b9f30c922f43271c25cd52e26a6/third_party/WebKit/LayoutTests/TestExpectations [delete] https://crrev.com/ff7a08db8ecc874f799a7689568e1d69ec757db4/third_party/WebKit/LayoutTests/external/wpt/css/css-scoping/slotted-invalidation-expected.txt [delete] https://crrev.com/ff7a08db8ecc874f799a7689568e1d69ec757db4/third_party/WebKit/LayoutTests/platform/linux/virtual/incremental-shadow-dom/external/wpt/css/css-scoping/slotted-invalidation-expected.txt [delete] https://crrev.com/ff7a08db8ecc874f799a7689568e1d69ec757db4/third_party/WebKit/LayoutTests/platform/mac/virtual/incremental-shadow-dom/external/wpt/css/css-scoping/slotted-invalidation-expected.txt [modify] https://crrev.com/73841ed6c2e12b9f30c922f43271c25cd52e26a6/third_party/WebKit/Source/core/css/StyleEngine.cpp [modify] https://crrev.com/73841ed6c2e12b9f30c922f43271c25cd52e26a6/third_party/WebKit/Source/core/css/invalidation/StyleInvalidator.cpp [modify] https://crrev.com/73841ed6c2e12b9f30c922f43271c25cd52e26a6/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/73841ed6c2e12b9f30c922f43271c25cd52e26a6/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fd18dfc518981eed2674bf7ad0591e9e9901dc3d commit fd18dfc518981eed2674bf7ad0591e9e9901dc3d Author: Hayato Ito <hayato@chromium.org> Date: Thu Feb 01 06:00:39 2018 Use ToHTMLSlotElementIfSupportsAssignmentOrNull as much as possible Bug: 776656 Change-Id: I12b79d3867d313331507cd78bc8c75068c84ea3c Reviewed-on: https://chromium-review.googlesource.com/895027 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#533583} [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/css/SelectorChecker.cpp [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/dom/FlatTreeTraversal.cpp [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/dom/Node.cpp [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/dom/ng/flat_tree_traversal_ng.cc [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/fd18dfc518981eed2674bf7ad0591e9e9901dc3d/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3509b4a360edec9f566ae5d3cb5fe16878845a70 commit 3509b4a360edec9f566ae5d3cb5fe16878845a70 Author: Hayato Ito <hayato@chromium.org> Date: Fri Feb 02 01:27:42 2018 Make {First,Last}AssignedNode() be aware of Incremental Shadow DOM Prevent a possible wrong usage of {First,Last}AssignedNode(). Bug: 776656 Change-Id: I5d84b062c92cd89e40e3c051ae08bcefea658d25 Reviewed-on: https://chromium-review.googlesource.com/896725 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#533898} [modify] https://crrev.com/3509b4a360edec9f566ae5d3cb5fe16878845a70/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f4f386642317f02e0bcf05edce370675c00e10e7 commit f4f386642317f02e0bcf05edce370675c00e10e7 Author: Hayato Ito <hayato@chromium.org> Date: Fri Feb 02 05:18:37 2018 Do some cleanups in HTMLSlotElement There should be no functional changes from this patch. Bug: 776656 Change-Id: I975e32a2cd2fa2610352ce1c85f10b3afe5bc688 Reviewed-on: https://chromium-review.googlesource.com/897288 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#533965} [modify] https://crrev.com/f4f386642317f02e0bcf05edce370675c00e10e7/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/f4f386642317f02e0bcf05edce370675c00e10e7/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/852b8b1208cb2d0bd42a825405c3178b59fdb54a commit 852b8b1208cb2d0bd42a825405c3178b59fdb54a Author: Hayato Ito <hayato@chromium.org> Date: Mon Feb 05 07:28:05 2018 Remove an unused function declaration Bug: 776656 Change-Id: I66511ee1f65e429c27ea3a9aac0b06a57845efc8 Reviewed-on: https://chromium-review.googlesource.com/899705 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#534345} [modify] https://crrev.com/852b8b1208cb2d0bd42a825405c3178b59fdb54a/third_party/WebKit/Source/core/dom/SlotAssignment.h
Incremental Shadow DOM might resolve this issue too. https://bugs.chromium.org/p/chromium/issues/detail?id=804047 Strictly, Incremental Shadow DOM is not blocking bug 804047 , which can be fixed in another way, however, let me note that here.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e88b1b85575857b60a860e24b6b2a4418b351d0e commit e88b1b85575857b60a860e24b6b2a4418b351d0e Author: Hayato Ito <hayato@chromium.org> Date: Fri Feb 09 07:27:10 2018 Enable SlotInFlatTree flag for virtual/incremental-shadow-dom tests Since IncrementalShadowDOM flag was splited into two flags at https://chromium-review.googlesource.com/871150, enable SlotInFlatTree flag, as well as IncrementalShadowDOM flag, for virtual/incremental-shadow-dom tests. Bug: 776656 Change-Id: I7d5957167dbb48a4e568ef7351f92af60c18ba92 Reviewed-on: https://chromium-review.googlesource.com/910471 Reviewed-by: Kent Tamura <tkent@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#535664} [modify] https://crrev.com/e88b1b85575857b60a860e24b6b2a4418b351d0e/third_party/WebKit/LayoutTests/VirtualTestSuites
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/abf82bb24d6519367686ecb665ec05741bb79caf commit abf82bb24d6519367686ecb665ec05741bb79caf Author: Hayato Ito <hayato@chromium.org> Date: Fri Feb 09 11:04:05 2018 Remove unnecessary entries from TestExpectations These tests are passing. TBR=kochi Bug: 776656 Change-Id: I6d151855fa5a82482fc8d5666b363cfc07658a96 Reviewed-on: https://chromium-review.googlesource.com/910332 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#535684} [modify] https://crrev.com/abf82bb24d6519367686ecb665ec05741bb79caf/third_party/WebKit/LayoutTests/TestExpectations
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b9b8b779d84bbb57ba48d9bd87db998882a4e702 commit b9b8b779d84bbb57ba48d9bd87db998882a4e702 Author: Hayato Ito <hayato@chromium.org> Date: Wed Feb 14 01:49:30 2018 Set IncrementalShadowDOM runtime flag explicitly for FlatTreeTraversal tests This CL prepares for making IncrementalShadowDOM an experimental flag. Bug: 776656 Change-Id: I66e7d0d9d5d2c1c443a76f98818683d7670dc917 Reviewed-on: https://chromium-review.googlesource.com/916161 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#536598} [modify] https://crrev.com/b9b8b779d84bbb57ba48d9bd87db998882a4e702/third_party/WebKit/Source/core/dom/FlatTreeTraversalTest.cpp [modify] https://crrev.com/b9b8b779d84bbb57ba48d9bd87db998882a4e702/third_party/WebKit/Source/core/dom/ng/flat_tree_traversal_ng_test.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a8186d4508199891860f4f0aa54af8f98ab8745d commit a8186d4508199891860f4f0aa54af8f98ab8745d Author: Hayato Ito <hayato@chromium.org> Date: Wed Feb 14 01:50:51 2018 Add html/details_summary to virtual/incremental-shadow-dom test suites I am preparing to make IncrementalShadowDOM runtime flag an experimental flag, however, some tests in html_details are still failing when the flag is enabled. To track and fix these surely, add these tests to virtual/incremental-shadow-dom test suites. Bug: 776656 Change-Id: Ied9d5ff914fc998a04efac1d944708c313e82b7b Reviewed-on: https://chromium-review.googlesource.com/914944 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#536599} [modify] https://crrev.com/a8186d4508199891860f4f0aa54af8f98ab8745d/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/a8186d4508199891860f4f0aa54af8f98ab8745d/third_party/WebKit/LayoutTests/VirtualTestSuites [add] https://crrev.com/a8186d4508199891860f4f0aa54af8f98ab8745d/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/html/details_summary/README.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fe4fcad1c032cfd42ff96ac8c3c8531d7924e9d2 commit fe4fcad1c032cfd42ff96ac8c3c8531d7924e9d2 Author: Hayato Ito <hayato@chromium.org> Date: Wed Feb 14 03:40:33 2018 Revert "Add html/details_summary to virtual/incremental-shadow-dom test suites" This reverts commit a8186d4508199891860f4f0aa54af8f98ab8745d. Reason for revert: Test failures, as per https://uberchromegw.corp.google.com/i/chromium.webkit/builders/WebKit%20Linux%20Trusty/builds/40283 Original change's description: > Add html/details_summary to virtual/incremental-shadow-dom test suites > > I am preparing to make IncrementalShadowDOM runtime flag an experimental flag, > however, some tests in html_details are still failing when the flag is enabled. > > To track and fix these surely, add these tests to virtual/incremental-shadow-dom test > suites. > > Bug: 776656 > Change-Id: Ied9d5ff914fc998a04efac1d944708c313e82b7b > Reviewed-on: https://chromium-review.googlesource.com/914944 > Reviewed-by: Takayoshi Kochi <kochi@chromium.org> > Commit-Queue: Hayato Ito <hayato@chromium.org> > Cr-Commit-Position: refs/heads/master@{#536599} TBR=kochi@chromium.org,hayato@chromium.org,futhark@chromium.org Change-Id: Iceaf52b9e359f254b7dd598ab3b0ba38215638c7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 776656 Reviewed-on: https://chromium-review.googlesource.com/917882 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#536637} [modify] https://crrev.com/fe4fcad1c032cfd42ff96ac8c3c8531d7924e9d2/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/fe4fcad1c032cfd42ff96ac8c3c8531d7924e9d2/third_party/WebKit/LayoutTests/VirtualTestSuites [delete] https://crrev.com/a9c4e0fda8e1bd1798230e5f0050052c4b185344/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/html/details_summary/README.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/efe67d72929f8bc621bc62306dd73c8f4fff1add commit efe67d72929f8bc621bc62306dd73c8f4fff1add Author: Hayato Ito <hayato@chromium.org> Date: Wed Feb 14 06:08:03 2018 Re-land: Add html/details_summary to virtual/incremental-shadow-dom test suites Original: a8186d4508199891860f4f0aa54af8f98ab8745d Reverted: fe4fcad1c032cfd42ff96ac8c3c8531d7924e9d2 The first CL was reverted due to [ Crash ] entry for some tests, which should be [ Crash Failure ]. Original description: Add html/details_summary to virtual/incremental-shadow-dom test suites I am preparing to make IncrementalShadowDOM runtime flag an experimental flag, however, some tests in html_details are still failing when the flag is enabled. To track and fix these surely, add these tests to virtual/incremental-shadow-dom test suites. TBR=kochi Bug: 776656 Change-Id: I3bc527b9b957d76c68d239068a079a280543fe85 Reviewed-on: https://chromium-review.googlesource.com/918141 Reviewed-by: Hayato Ito <hayato@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#536660} [modify] https://crrev.com/efe67d72929f8bc621bc62306dd73c8f4fff1add/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/efe67d72929f8bc621bc62306dd73c8f4fff1add/third_party/WebKit/LayoutTests/VirtualTestSuites [add] https://crrev.com/efe67d72929f8bc621bc62306dd73c8f4fff1add/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/html/details_summary/README.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ed1ca7b7916c4d0b895fbd7ea15c71dd99c3b604 commit ed1ca7b7916c4d0b895fbd7ea15c71dd99c3b604 Author: Hayato Ito <hayato@chromium.org> Date: Fri Feb 16 09:50:04 2018 Add assert to make sure that a node was detached, if necessary, after UpdateStyleAndLayoutTree We should never leave any node which has a LayoutObject, but doesn't have a parent in a flat tree after having run UpdateStyleAndLayoutTree. That means we forget to detach a node which should be detached. Update TestExpectations because some tests would hit this assertion when IncrementalShadowDOM is enabled. Bug: 776656 Change-Id: I273b9ddd083766fe687aedb178fc6e0c65248fde Reviewed-on: https://chromium-review.googlesource.com/920329 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#537268} [modify] https://crrev.com/ed1ca7b7916c4d0b895fbd7ea15c71dd99c3b604/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/ed1ca7b7916c4d0b895fbd7ea15c71dd99c3b604/third_party/WebKit/Source/core/dom/Document.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7e59b6209b72609e4124efbbb989f1fe26a1dfb8 commit 7e59b6209b72609e4124efbbb989f1fe26a1dfb8 Author: Hayato Ito <hayato@chromium.org> Date: Mon Feb 19 09:43:17 2018 Fix wording on AssertLayoutTreeUpdated comments Address the review comment of https://chromium-review.googlesource.com/c/chromium/src/+/920329/7#message-b9399a526b29ba08927301f8baec6c8d30c20682 TBR=futhark@chromium.org Bug: 776656 Change-Id: I3e6084b7dde05df54fddf38bfeb3220c9c585bb2 Reviewed-on: https://chromium-review.googlesource.com/923667 Commit-Queue: Hayato Ito <hayato@chromium.org> Commit-Queue: Rune Lillesveen <futhark@chromium.org> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#537614} [modify] https://crrev.com/7e59b6209b72609e4124efbbb989f1fe26a1dfb8/third_party/WebKit/Source/core/dom/Document.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49 commit 2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49 Author: Hayato Ito <hayato@chromium.org> Date: Thu Feb 22 12:49:28 2018 Rename Resolve -> Recalc Pure refactoring for consistency. Bug: 776656 Change-Id: Iceed0debf753d2ab02f3fbecdac00c6c90e298c3 Reviewed-on: https://chromium-review.googlesource.com/930921 Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#538417} [modify] https://crrev.com/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49/third_party/WebKit/Source/core/dom/ShadowRoot.cpp [modify] https://crrev.com/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49/third_party/WebKit/Source/core/dom/SlotAssignment.cpp [modify] https://crrev.com/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49/third_party/WebKit/Source/core/dom/SlotAssignment.h [modify] https://crrev.com/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/2b53a8ff9ee12ce2c3c7e71b634a6407cd272a49/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cc32ee1f3375cbf3828f45992c6753f4166f4a19 commit cc32ee1f3375cbf3828f45992c6753f4166f4a19 Author: Hayato Ito <hayato@chromium.org> Date: Wed Mar 28 11:54:58 2018 Keep track of all pending slot assignments, and recalc all before UpdateStyle phase For the purpose of rendering, Blink must calculate all pending slot assignments before UpdateStyle phase. Unless that, a recursive RecalcStyle() may not traverse a node which should be re-attached. e.g. Suppose the following tree, where #d1 is assigned to a slot. host ├──/shadow-root │ └── slot name=s1 └── div id=d1 slot=s1 Then, we change #d1's slot attribute to s2, like: > document.querySelector('#d1').setAttribute('slot', 's2'); host ├──/shadow-root │ └── slot name=s1 └── div id=d1 slot=s2 In this case, #d1 should be removed from a LayoutTree. In other words, Blink has to reattach #d1 somehow. However, if we don't recalc a slot assignment for the shadow tree before UpdateStyle, a recursive RecalcStyle never traverses the sub-tree because child-needs-style-recalc flag is not set for the node (and its ancestor nodes). A flag should be set as a result of slot assignment recalc. Thanks to the Incremental Shadow DOM, a slot assignemt recalc now becomes a local operatoin on each shadow tree, rather than one global operation for every shadow trees. We don't need to traverse a composed tree to recalc all. We can recalc a slot assignment for each shadow tree directly, without traversing a composed tree. For a shadow tree which is not connected, we don't need to recalc its slot assignment before UpdateStyle because such a shadow tree shouldn't have any effect on rendering. Lazy slot assignment recalc is enough for such a shadow tree. This CL doesn't introduce any optimization to minimize the number of to-be-reattached nodes. I'll optimize that as a next task. I'll use a sort of dynamic programming there, as I did at https://chromium-review.googlesource.com/c/chromium/src/+/535493 for non-Incremental Shadow DOM. Except for the performance, this CL should be the last part of Incremental Shadow DOM from the external behavior's perspective. Style and Layout should work correctly after this CL, even with Incremental Shadow DOM. BUG= 776656 Change-Id: Id18e87ff59d92863c68c571e7db09253c08aa91f Reviewed-on: https://chromium-review.googlesource.com/964062 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Rune Lillesveen <futhark@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#546458} [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/LayoutTests/TestExpectations [add] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/LayoutTests/external/wpt/shadow-dom/layout-slot-no-longer-assigned.html [add] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/LayoutTests/external/wpt/shadow-dom/layout-slot-no-longer-fallback.html [add] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/LayoutTests/external/wpt/shadow-dom/reference/empty.html [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/BUILD.gn [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/Document.cpp [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/Document.h [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/ShadowRoot.cpp [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/ShadowRoot.h [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/SlotAssignment.cpp [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/SlotAssignment.h [add] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/ng/slot_assignment_engine.cc [add] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/dom/ng/slot_assignment_engine.h [modify] https://crrev.com/cc32ee1f3375cbf3828f45992c6753f4166f4a19/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/14d7c0fb440000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/160625f3440000
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9125ca62c6bf65e24d275a8a220c68360619d2dd commit 9125ca62c6bf65e24d275a8a220c68360619d2dd Author: Hayato Ito <hayato@chromium.org> Date: Thu Mar 29 08:41:35 2018 Introduce flat_tree_children_ in preparation for reducing the number of will-be-reattached nodes This CL is just a refactoring so that we can lazyReattach nodes in once place. In follow-up CLs, I'll reduce the number of LazyReattached nodes, unifying this with dynamic programming code as HTMLSlotElement::LazyReattachDistributedNodesIfNeeded does. Bug: 776656 Change-Id: I17813a39c57cc5bbea5e8c529805123ccabd4c69 Reviewed-on: https://chromium-review.googlesource.com/984917 Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#546771} [modify] https://crrev.com/9125ca62c6bf65e24d275a8a220c68360619d2dd/third_party/WebKit/Source/core/dom/SlotAssignment.cpp [modify] https://crrev.com/9125ca62c6bf65e24d275a8a220c68360619d2dd/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/9125ca62c6bf65e24d275a8a220c68360619d2dd/third_party/WebKit/Source/core/html/HTMLSlotElement.h
📍 Couldn't reproduce a difference. https://pinpoint-dot-chromeperf.appspot.com/job/14d7c0fb440000
📍 Couldn't reproduce a difference. https://pinpoint-dot-chromeperf.appspot.com/job/160625f3440000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/15d47d5b440000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/105697fb440000
📍 Couldn't reproduce a difference. https://pinpoint-dot-chromeperf.appspot.com/job/105697fb440000
📍 Couldn't reproduce a difference. https://pinpoint-dot-chromeperf.appspot.com/job/15d47d5b440000
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7d94b72dc8998f6f947adb10c511e6c6e62fac5b commit 7d94b72dc8998f6f947adb10c511e6c6e62fac5b Author: Hayato Ito <hayato@chromium.org> Date: Fri Mar 30 10:02:46 2018 [IncrementalShadowDOM] Use dynamic programming to reduce the number of reattached nodes Make re-layout faster, when a DOM mutation happens and a flat tree structure is changed, by detecting unnecessary reattaching, using dynamic programming. The benchmark result is: blink.shadow_dom | | before | after | | v1-small-deep-layout | 184.072ms | 19.082ms | | v1-small-shallow-layout | 0.79ms | 0.50ms | Smaller is better. Note: IncrementalShadowDOM flag is enabled in either cases. Bug: 776656 Change-Id: Ie20344ccf12da3be9bdf5ac4763f6781353b1121 Reviewed-on: https://chromium-review.googlesource.com/985433 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#547136} [modify] https://crrev.com/7d94b72dc8998f6f947adb10c511e6c6e62fac5b/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/7d94b72dc8998f6f947adb10c511e6c6e62fac5b/third_party/WebKit/Source/core/html/HTMLSlotElement.h
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/14f2f6df440000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/14f2f6df440000
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e99081a9d9e4083d74d11cc93d26c6c572d9dceb commit e99081a9d9e4083d74d11cc93d26c6c572d9dceb Author: Hayato Ito <hayato@chromium.org> Date: Wed Apr 04 04:10:10 2018 Refactor SlotAssignment to clarify which parts are related to Incremental Shadow DOM Also, rename the following functions as follows: - SlotAssignment::RecalcAssignmentNg => SlotAssignment::RecalcAssignment - SlotAssignment::RecalcAssignment => SlotAssignment::RecalcAssignmentForDistribution No behavior change. Bug: 776656 Change-Id: I9b13f2c840533299c670a08d1015524e0d71824d Reviewed-on: https://chromium-review.googlesource.com/992078 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#547975} [modify] https://crrev.com/e99081a9d9e4083d74d11cc93d26c6c572d9dceb/third_party/WebKit/Source/core/dom/SlotAssignment.cpp [modify] https://crrev.com/e99081a9d9e4083d74d11cc93d26c6c572d9dceb/third_party/WebKit/Source/core/dom/SlotAssignment.h [modify] https://crrev.com/e99081a9d9e4083d74d11cc93d26c6c572d9dceb/third_party/WebKit/Source/core/dom/ng/slot_assignment_engine.cc [modify] https://crrev.com/e99081a9d9e4083d74d11cc93d26c6c572d9dceb/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ba1e43f11f55be25d0e955c8a58691764212adc8 commit ba1e43f11f55be25d0e955c8a58691764212adc8 Author: Hayato Ito <hayato@chromium.org> Date: Wed Apr 04 04:47:31 2018 [IncrementalShadowDOM] Avoid crash when Inspector gets distributed nodes for a slot HTMLSlotElement starts to detect unsupported member functions being called after https://chromium-review.googlesource.com/c/chromium/src/+/989525. This CL avoids a crash by early return. Note that *distributed nodes* are a kind of old-fashioned concept after Blink supports slots-in-flat-tree. We might want to remove that in the future. Bug: 776656 Change-Id: Ibe8c4cf935a7f03fe4e716b6877b9bdb8b964983 Reviewed-on: https://chromium-review.googlesource.com/992075 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#547981} [modify] https://crrev.com/ba1e43f11f55be25d0e955c8a58691764212adc8/third_party/WebKit/Source/core/inspector/InspectorDOMAgent.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/76a81eb467b48ea476712e7d7db93735277fc313 commit 76a81eb467b48ea476712e7d7db93735277fc313 Author: Hayato Ito <hayato@chromium.org> Date: Wed Apr 04 11:55:50 2018 Refactor HTMLSlotElement to clarify which parts are related to Incremental Shadow DOM No behavior change. Bug: 776656 Change-Id: Ib5b7d88edd3752828f83d13b1e7a026cbd5a9aa9 Reviewed-on: https://chromium-review.googlesource.com/989525 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#548023} [modify] https://crrev.com/76a81eb467b48ea476712e7d7db93735277fc313/third_party/WebKit/Source/core/html/HTMLSlotElement.cpp [modify] https://crrev.com/76a81eb467b48ea476712e7d7db93735277fc313/third_party/WebKit/Source/core/html/HTMLSlotElement.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/58a1a76874d1f16fe9eea8eaa642cf5a28c48543 commit 58a1a76874d1f16fe9eea8eaa642cf5a28c48543 Author: Hayato Ito <hayato@chromium.org> Date: Wed Apr 11 12:03:55 2018 Add new performance tests for re-layout after slotchange Add new performance tests which measure the performance of slot assignment recalc and re-layout in several scenarios where slot assignment changes on a *long slot-assignment-chain*. This CL also cleans up existing functions so that they have common tree structures with added ones. Bug: 776656 Change-Id: Idff494392c13aca5b6eaf1dfeabb34ad41ffa556 Reviewed-on: https://chromium-review.googlesource.com/1005648 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#549861} [modify] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-common.js [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-deep-tree-then-re-layout.html [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-deep-tree-then-slot-assigned-nodes.html [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-deep-tree-then-slot-flatten.html [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-shallow-tree-then-re-layout.html [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-shallow-tree-then-slot-assigned-nodes.html [add] https://crrev.com/58a1a76874d1f16fe9eea8eaa642cf5a28c48543/third_party/WebKit/PerformanceTests/ShadowDOM/v1-mutate-shallow-tree-then-slot-flatten.html
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/14a924d2c40000
📍 Job complete. See results below. https://pinpoint-dot-chromeperf.appspot.com/job/14a924d2c40000
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a9452b946b7b853ca56032f073bd7cc00d3a7db2 commit a9452b946b7b853ca56032f073bd7cc00d3a7db2 Author: Hayato Ito <hayato@chromium.org> Date: Wed Apr 25 08:55:42 2018 [IncrementalShadowDOM] Make some of UpdateDistribuion call RecalcAssignments Once we can land the IncrementalShadowDOM (and remove Shadow DOM V0), we no longer need to call UpdateDistribution, however, some usages of UpdateDistribution are unclear at this point. Thus, except the cases where we can tell its intent cearly, we call RecalcAssignments too for IncrementalShadowDOM there. UpdateDistribution is now divided into the followings: 1. UpdateDistributionForFlatTreeTraversal: This should be used in most cases. 2. UpdateDistributionForLegacyDistributedNodes: This should be used only by the implementation of V0 shadow trees, where they need to access distributed_nodes directly. 3. UpdateDistributionForUnknownReasons: This is a tentative workaround for the sake of safety. In addition to calling (old) UpdateDistribution, we call RecalcAssignments for IncrementalShadowDOM too. The future plan is: 3 can be replaced with 1, however, that needs a careful investigation, so that should be done on a case-by-base basis after this CL lands. TBR=aboxhall Bug: 776656 Change-Id: I826850e04093d2278a2f0aedf8e06f85f2fe8485 Reviewed-on: https://chromium-review.googlesource.com/1025155 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#553490} [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/css/selector_query.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/events/event_path.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/flat_tree_traversal_test.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/ng/flat_tree_traversal_ng_test.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/node.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/node.h [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/dom/v0_insertion_point.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/editing/position.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/editing/testing/selection_sample_test.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/frame/frame.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/html/html_element.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/html/html_olist_element.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/html/html_slot_element.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/input/boundary_event_dispatcher.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/input/gesture_manager.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/input/mouse_event_manager.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/inspector/inspector_css_agent.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/layout/hit_test_result.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/page/focus_controller.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/core/page/slot_scoped_traversal_test.cc [modify] https://crrev.com/a9452b946b7b853ca56032f073bd7cc00d3a7db2/third_party/blink/renderer/modules/accessibility/ax_object.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3418a11696bb668ef587b155e1651288fc7b2bba commit 3418a11696bb668ef587b155e1651288fc7b2bba Author: Hayato Ito <hayato@chromium.org> Date: Thu Apr 26 07:08:24 2018 Use UpdateDistributionForFlatTreeTraversal in selector_query This is a follow-up CL for http://crrev.com/c/1025155. SelectorQuery updates distribution only for traversing a flat tree. Bug: 776656 Change-Id: I07312acc73abdc593a7ef81f04761bacc3d978d0 Reviewed-on: https://chromium-review.googlesource.com/1029560 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#553938} [modify] https://crrev.com/3418a11696bb668ef587b155e1651288fc7b2bba/third_party/blink/renderer/core/css/selector_query.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4c4ec9540f511822ade06aa028f4220b55ed3289 commit 4c4ec9540f511822ade06aa028f4220b55ed3289 Author: Hayato Ito <hayato@chromium.org> Date: Thu Apr 26 07:27:56 2018 Add http/tests/devtools/elements/shadow to virtual/incrmental-shadow-dom tests http/tests/devtools/elements/shadow is running several tests for shadow dom's distribution used in devtools. shadow-distribution.js is failing with the IncrementalShadowDOM flag. TBR=kochi,rakina Bug: 776656 Change-Id: Id780279b397c91bf3af7136727d36f83e1179565 Reviewed-on: https://chromium-review.googlesource.com/1029392 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#553943} [modify] https://crrev.com/4c4ec9540f511822ade06aa028f4220b55ed3289/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/4c4ec9540f511822ade06aa028f4220b55ed3289/third_party/WebKit/LayoutTests/VirtualTestSuites [add] https://crrev.com/4c4ec9540f511822ade06aa028f4220b55ed3289/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/README.txt
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/14cb5a07c40000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/14ea675bc40000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/14cb5a07c40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/14ea675bc40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3 commit d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3 Author: Hayato Ito <hayato@chromium.org> Date: Mon May 07 11:17:03 2018 [IncrementalShadowDOM] Support slot's expanded nodes in devtools Support slot's expanded nodes, using slot's assigned nodes, for IncrementalShadowDOM. Inspector can show slot's assigned nodes correctly even in IncrementalShadowDOM. virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/shadow-distribution.js test is still failing, however, this is not a regression of IncrementalShadowDOM. See crbug.com/840238 for details. This CL adds an expected.txt for the test. Bug: 776656 , 840238 Change-Id: I037caf9184e9be42525575bf2e027cf000bdbf7a Reviewed-on: https://chromium-review.googlesource.com/1029567 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Cr-Commit-Position: refs/heads/master@{#556414} [modify] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/README.txt [add] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/shadow-distribution-expected.txt [modify] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/blink/renderer/core/html/html_slot_element.cc [modify] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/blink/renderer/core/html/html_slot_element.h [modify] https://crrev.com/d55f0816be5901e9e5bfdf49b7c6e785dca0c3d3/third_party/blink/renderer/core/inspector/inspector_dom_agent.cc
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/16853fefc40000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/11c4cab7c40000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/11e370b7c40000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/16853fefc40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/1298e0cfc40000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/11e370b7c40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/1298e0cfc40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/12eafb0fc40000
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/12a26b4fc40000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/12eafb0fc40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/12a26b4fc40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/1695c8b7c40000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/1695c8b7c40000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/080b66d6ee39f98ee6a0cff4016103588dcba653 commit 080b66d6ee39f98ee6a0cff4016103588dcba653 Author: Hayato Ito <hayato@chromium.org> Date: Mon May 14 07:17:21 2018 Add media/controls virtual to virtual/incremental-shadow-dom test suites Keep track of failing tests in media/controls for IncrementalShadowDOM. Bug: 776656 Change-Id: Ib0f09da71bdc49935875b2d0814336ea64b90d31 Reviewed-on: https://chromium-review.googlesource.com/1056750 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#558219} [modify] https://crrev.com/080b66d6ee39f98ee6a0cff4016103588dcba653/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/080b66d6ee39f98ee6a0cff4016103588dcba653/third_party/WebKit/LayoutTests/VirtualTestSuites [add] https://crrev.com/080b66d6ee39f98ee6a0cff4016103588dcba653/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/media/controls/README.txt
📍 Pinpoint job started. https://pinpoint-dot-chromeperf.appspot.com/job/1276e1a0240000
😿 Pinpoint job stopped with an error. https://pinpoint-dot-chromeperf.appspot.com/job/1276e1a0240000 Buildbucket says the build completed successfully, but Pinpoint can't find the isolate hash.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4 commit 7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4 Author: Hayato Ito <hayato@chromium.org> Date: Mon May 14 10:06:02 2018 Fix TreeScopeAdopter in case of nested shadow trees moving across documents https://crrev.com/517033 still misses a case where shadow trees are nested, which was the cause of DCHECK [1] failure of the test [2]. This CL fixes that. [1] https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/dom/node.cc?q=MayContainLe&sq=package:chromium&l=773 [2] virtual/incremental-shadow-dom/media/controls/overlay-play-button-document-move.html. Bug: 776656 , 783055 Change-Id: I22005d1518768c1750be33a818d25230efa26b76 Reviewed-on: https://chromium-review.googlesource.com/1056927 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#558243} [modify] https://crrev.com/7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4/third_party/blink/renderer/core/dom/tree_scope_adopter.cc [modify] https://crrev.com/7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4/third_party/blink/renderer/core/dom/tree_scope_adopter.h [modify] https://crrev.com/7ca88b5b2405ebc3181bcb08588ff3ffd5a9e3a4/third_party/blink/renderer/core/dom/tree_scope_adopter_test.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1681b460fbbe11f1e8fa2f24e8cae56c27826b28 commit 1681b460fbbe11f1e8fa2f24e8cae56c27826b28 Author: Takayoshi Kochi <kochi@chromium.org> Date: Mon May 14 12:20:52 2018 Convert media elements to use UA shadow instead of V0 shadow Found some media control elements accidentally using V0 shadow root instead of User-Agent shadow root, and this fixes the cases. To avoid further misuses, I'll rename the API in the following CL https://chromium-review.googlesource.com/c/chromium/src/+/1057047 Bug: 787717 , 776656 Change-Id: I45274ccb399ae57ea7207402323f49efd2188d9c Reviewed-on: https://chromium-review.googlesource.com/1056939 Reviewed-by: Mounir Lamouri <mlamouri@chromium.org> Commit-Queue: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#558266} [modify] https://crrev.com/1681b460fbbe11f1e8fa2f24e8cae56c27826b28/third_party/blink/renderer/modules/media_controls/elements/media_control_loading_panel_element.cc [modify] https://crrev.com/1681b460fbbe11f1e8fa2f24e8cae56c27826b28/third_party/blink/renderer/modules/media_controls/elements/media_control_scrubbing_message_element.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a3ccb45d759abb72542e94443c139148672685ad commit a3ccb45d759abb72542e94443c139148672685ad Author: Hayato Ito <hayato@chromium.org> Date: Tue May 15 04:31:50 2018 Make IncrementalShadowDOM flag experimental This is a preparation of launching incremental shadow dom. After I confirm that this doesn't cause any regression in bots, I'll ship this, announcing it to blink-dev briefly, in a few days. Bug: 776656 Change-Id: I2632a42c2cb9acaf6462600ac236dc9b8bff32ed Reviewed-on: https://chromium-review.googlesource.com/1056896 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Cr-Commit-Position: refs/heads/master@{#558607} [modify] https://crrev.com/a3ccb45d759abb72542e94443c139148672685ad/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/a3ccb45d759abb72542e94443c139148672685ad/third_party/blink/renderer/platform/runtime_enabled_features.json5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7768dd454d5dd64a64c4d5c1d98a532c816628be commit 7768dd454d5dd64a64c4d5c1d98a532c816628be Author: Hayato Ito <hayato@chromium.org> Date: Tue May 15 09:36:29 2018 Remove incremental-shadow-dom virtual test suites We don't need to have virtual/incremental-shadow-dom test suites because IncrementalShadowDOM became experimental (or stable, which would be done later). Bug: 776656 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: I80a10d95aa5ba0135305ca8245efd1625dc9b729 Reviewed-on: https://chromium-review.googlesource.com/1059091 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#558652} [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-gen-property-trees [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/SlowTests [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/TestExpectations [modify] https://crrev.com/7768dd454d5dd64a64c4d5c1d98a532c816628be/third_party/WebKit/LayoutTests/VirtualTestSuites [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/external/wpt/css/css-scoping/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/external/wpt/shadow-dom/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/fast/dom/shadow/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/html/details_summary/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/http/tests/devtools/elements/shadow/shadow-distribution-expected.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/media/controls/README.txt [delete] https://crrev.com/67528afa905ab02f9f4830267b7ace84abe168d5/third_party/WebKit/LayoutTests/virtual/incremental-shadow-dom/shadow-dom/README.txt
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6836320ba930e1d75a86359f5bc4cf789d84500f commit 6836320ba930e1d75a86359f5bc4cf789d84500f Author: Hayato Ito <hayato@chromium.org> Date: Wed May 16 15:04:25 2018 Fix a crash caused by touching outdated assigned_nodes This is a tentative fix for several crashes cluster fuzzer reported. It looks HTMLSlotElement::DetachLayoutTree is touching dirty assigned_nodes. It's still hard to have a minimized test case, so I'll work on that later to investigate further. I've added TODO comment there. Bug: 776656 , 843069 , 843261 Change-Id: I9093e170e3c851b89612f40e764bfdbdc1532d4f Reviewed-on: https://chromium-review.googlesource.com/1061274 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Cr-Commit-Position: refs/heads/master@{#559096} [modify] https://crrev.com/6836320ba930e1d75a86359f5bc4cf789d84500f/third_party/blink/renderer/core/html/html_slot_element.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b6ec484f7d3153135b9640117a89252ff45829b8 commit b6ec484f7d3153135b9640117a89252ff45829b8 Author: Hayato Ito <hayato@chromium.org> Date: Thu May 17 05:12:02 2018 Launch Incremental Shadow DOM Make IncremantalShadowDOM flag stable. PSA in blink-dev is here: https://groups.google.com/a/chromium.org/d/msg/blink-dev/1TXLVz_H1S0/n4cdluQjAwAJ Bug: 776656 Change-Id: I8d6c02d793ad30c4774fe069b84127e5575b3678 Reviewed-on: https://chromium-review.googlesource.com/908269 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#559424} [modify] https://crrev.com/b6ec484f7d3153135b9640117a89252ff45829b8/third_party/blink/renderer/platform/runtime_enabled_features.json5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/75c643af6262516ed5f805e3199e8434c5777f5c commit 75c643af6262516ed5f805e3199e8434c5777f5c Author: Hayato Ito <hayato@chromium.org> Date: Thu May 17 07:56:24 2018 Add a repro test case for crbug.com/843069 This is a follow-up CL for https://crrev.com/c1061274. Add a test case, and update the comment to explain why we need to make sure assignment is recalculated before iterating assigned_nodes. TBR=kochi,rakina Bug: 776656 , 843069 Change-Id: I3707f6fd93b6f1709b34773a63f8ca91be67e824 Reviewed-on: https://chromium-review.googlesource.com/1062990 Reviewed-by: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#559448} [add] https://crrev.com/75c643af6262516ed5f805e3199e8434c5777f5c/third_party/WebKit/LayoutTests/shadow-dom/crashes/detach-node-call-recalc-assignment-crash.html [modify] https://crrev.com/75c643af6262516ed5f805e3199e8434c5777f5c/third_party/blink/renderer/core/html/html_slot_element.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/86ecfe93212a03aa5caf02319acc8a893ce8f8b7 commit 86ecfe93212a03aa5caf02319acc8a893ce8f8b7 Author: Hayato Ito <hayato@chromium.org> Date: Mon May 21 03:28:45 2018 [IncrementalShadowDOM] Recalc slot assignments before checking NeedsLayoutTreeUpdate() In Document::UpdateStyleAndLayoutTree(), recalc slot assignments should be done before checking NeedsLayoutTreeUpdate() to detect the need of layout tree update surely. Without that, there is an edge case which causes a crash. Bug: 776656 , 844301 Change-Id: I1ef7719216649019e07f2799ecd4f1fcb3d961a6 Reviewed-on: https://chromium-review.googlesource.com/1066030 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Cr-Commit-Position: refs/heads/master@{#560221} [add] https://crrev.com/86ecfe93212a03aa5caf02319acc8a893ce8f8b7/third_party/WebKit/LayoutTests/shadow-dom/crashes/selection-delete-crash.html [modify] https://crrev.com/86ecfe93212a03aa5caf02319acc8a893ce8f8b7/third_party/blink/renderer/core/dom/document.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/23c69ebdf6d274e9531065e6db23ba51fdd88107 commit 23c69ebdf6d274e9531065e6db23ba51fdd88107 Author: Hayato Ito <hayato@chromium.org> Date: Tue May 22 07:48:55 2018 [IncrementalShadowDOM] Add scoped check to forbid slot assignment recalc Slot assignment recalc shouldn't happen while executing Document::UpdateStyleAndLayout, after we recalc that at the beginning of UpdateStyleAndLayout. Bug: 776656 Change-Id: I845767daf84cbf257da3348446a3fbc5a04249d3 Reviewed-on: https://chromium-review.googlesource.com/1068571 Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#560507} [modify] https://crrev.com/23c69ebdf6d274e9531065e6db23ba51fdd88107/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/23c69ebdf6d274e9531065e6db23ba51fdd88107/third_party/blink/renderer/core/dom/slot_assignment.cc [modify] https://crrev.com/23c69ebdf6d274e9531065e6db23ba51fdd88107/third_party/blink/renderer/core/dom/slot_assignment.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6e3be0e92a8efbbd3b1220133fbd3c10364366cd commit 6e3be0e92a8efbbd3b1220133fbd3c10364366cd Author: Hayato Ito <hayato@chromium.org> Date: Wed May 23 05:49:14 2018 Disable Incremental Shadow DOM It would be safe to disable Incremental Shadow DOM for M68, whose branch cut is soon. Let's defer it to M69 so that we can address http://crbug.com/845770 surely. Bug: 776656 , 845770 Change-Id: I5d2efeca4b44c0b4a84948233d7b3447cdf4f64e Reviewed-on: https://chromium-review.googlesource.com/1069952 Reviewed-by: Takayoshi Kochi <kochi@chromium.org> Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#560959} [modify] https://crrev.com/6e3be0e92a8efbbd3b1220133fbd3c10364366cd/third_party/blink/renderer/platform/runtime_enabled_features.json5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f8e70c7f029058c698495950da0c57c4e9a0bdb3 commit f8e70c7f029058c698495950da0c57c4e9a0bdb3 Author: Hayato Ito <hayato@chromium.org> Date: Wed May 23 09:14:43 2018 Make slot-assignment-recalc-forbidden scope on a per-document basis We need to increment (and decrement) a counter on a per-document basis because call stack can span across different documents. BUG 776656 , 845770 Change-Id: Ib9e89448217e7e335ba3c32c9775c9aa9c8f28cf Reviewed-on: https://chromium-review.googlesource.com/1069959 Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#561014} [modify] https://crrev.com/f8e70c7f029058c698495950da0c57c4e9a0bdb3/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/f8e70c7f029058c698495950da0c57c4e9a0bdb3/third_party/blink/renderer/core/dom/document.h [modify] https://crrev.com/f8e70c7f029058c698495950da0c57c4e9a0bdb3/third_party/blink/renderer/core/dom/slot_assignment.cc [modify] https://crrev.com/f8e70c7f029058c698495950da0c57c4e9a0bdb3/third_party/blink/renderer/core/dom/slot_assignment.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/79925868d14e19bb4bfb38d09bdd6565c8f4c9a1 commit 79925868d14e19bb4bfb38d09bdd6565c8f4c9a1 Author: Hayato Ito <hayato@chromium.org> Date: Thu May 24 03:03:47 2018 Don't recalc assignement in HTMLSlotElement::DetachLayoutTree The workaround of https://crrev.com/c/1062990 is no longer necessary because of https://crrev.com/c/1068646, which fixed ListItemOrdinal's behavior. See also http://crbug.com/845770. In general, we should avoid recalc assignment in detaching a node. Bug: 776656 , 845770 Change-Id: Ia98b35dce0b6d2e16829f79dde4b88470ced0d3f Reviewed-on: https://chromium-review.googlesource.com/1070007 Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#561371} [modify] https://crrev.com/79925868d14e19bb4bfb38d09bdd6565c8f4c9a1/third_party/blink/renderer/core/html/html_slot_element.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/80c7cd9980fd9e84013896da48b4f068384c575c commit 80c7cd9980fd9e84013896da48b4f068384c575c Author: Hayato Ito <hayato@chromium.org> Date: Fri May 25 06:54:13 2018 [IncrementalShadowDOM] Add slot-assignement-recalc-forbidden scoped check for DOM mutations This is similar to https://crrev.com/c/1068571, but does check for DOM mutations. There are two code paths which violate the assumption: - ListItemOrdinal::ItemInsertedOrRemoved(), which was fixed at https://crrev.com/c/1068646 - Document::HoveredElementDetached, which is fixed in this CL The reason we can't add a scoped check at the beginning of ContainerNode::RemoveChild is that synchronous DOM mutation events can happen in WillRemoveChild(*child) or DispatchSubtreeModifiedEvent(). Ditto for ContainerNode::AppendChild. There are other DOM mutation operations where we should add check. That can be done later. Once I am sure that the coverage is enough, I'll refactor so that this kind of check can be done in more better places. Bug: 776656 ,845770 Change-Id: I7ce0e99292165b698b69c6b90d71d71a90c19135 Reviewed-on: https://chromium-review.googlesource.com/1070169 Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#561792} [modify] https://crrev.com/80c7cd9980fd9e84013896da48b4f068384c575c/third_party/blink/renderer/core/dom/container_node.cc [modify] https://crrev.com/80c7cd9980fd9e84013896da48b4f068384c575c/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/80c7cd9980fd9e84013896da48b4f068384c575c/third_party/blink/renderer/core/dom/document.h [modify] https://crrev.com/80c7cd9980fd9e84013896da48b4f068384c575c/third_party/blink/renderer/core/dom/node.cc [modify] https://crrev.com/80c7cd9980fd9e84013896da48b4f068384c575c/third_party/blink/renderer/core/dom/node.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2ff81cbf1dab9e224f3252be810c820c480e4922 commit 2ff81cbf1dab9e224f3252be810c820c480e4922 Author: Hayato Ito <hayato@chromium.org> Date: Mon May 28 03:16:54 2018 Check all pending slot assignment recalc in a tree of trees, instead of a shadow tree Fix the crash reported by cluster fuzz ( https://crbug.com/846449 ). The fix of https://crrev.com/c/1068646 was not enough. We need to check all pending slot assignment recalc in a tree of trees because an enclosing list of a list item can be in another node tree. Bug: 776656 , 846449 Change-Id: I559e9f7fbe6c7cd8a54ac9ab3e7e3faec5d4294c Reviewed-on: https://chromium-review.googlesource.com/1073211 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Cr-Commit-Position: refs/heads/master@{#562174} [add] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/WebKit/LayoutTests/shadow-dom/crashes/list-item-delete-crash.html [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/document.h [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/ng/slot_assignment_engine.h [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/node.cc [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/dom/node.h [modify] https://crrev.com/2ff81cbf1dab9e224f3252be810c820c480e4922/third_party/blink/renderer/core/html/list_item_ordinal.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ba557f224c04b95fc6d70ee9cc41604d6f7aa818 commit ba557f224c04b95fc6d70ee9cc41604d6f7aa818 Author: Hayato Ito <hayato@chromium.org> Date: Tue May 29 03:27:16 2018 Launch Incremental Shadow DOM for M69 Let's ship Incremental Shadow DOM for M69. Incremental Shadow DOM was disabled temporarily at https://crrev.com/c/1069952 for M68. Let's enable it again for M69, given that: - M68 branch cut was just done. We have a good amount of time until M69 branch cut. - Regarding http://crbug.com/845770, I have already landed the essential checks, as well as fixing the violation of assumptions caused by detaching layout objects of ListItem and HoveredElement. - All P1 bugs reported by ClusterFuzz were fixed. Bug: 776656 Change-Id: Ibebc432787ecaa5f997abe5487256fa9e3b9c000 Reviewed-on: https://chromium-review.googlesource.com/1074805 Reviewed-by: Yoshifumi Inoue <yosin@chromium.org> Reviewed-by: Kent Tamura <tkent@chromium.org> Commit-Queue: Hayato Ito <hayato@chromium.org> Cr-Commit-Position: refs/heads/master@{#562330} [modify] https://crrev.com/ba557f224c04b95fc6d70ee9cc41604d6f7aa818/third_party/blink/renderer/platform/runtime_enabled_features.json5
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a102c90593abb6f06680dc4f1f3fa479a75d54a5 commit a102c90593abb6f06680dc4f1f3fa479a75d54a5 Author: Hayato Ito <hayato@chromium.org> Date: Tue May 29 07:21:41 2018 Remove core/dom/ng directory Remove this experimental directory because Incremental Shadow DOM was enabled. Let's merge core/dom/ng into core/dom. Bug: 776656 Change-Id: Ia73b223db1d89e101546613086496206a0636fd5 Reviewed-on: https://chromium-review.googlesource.com/1075876 Commit-Queue: Hayato Ito <hayato@chromium.org> Reviewed-by: Rakina Zata Amni <rakina@chromium.org> Cr-Commit-Position: refs/heads/master@{#562358} [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/BUILD.gn [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/BUILD.gn [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/document.cc [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/flat_tree_traversal.h [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/flat_tree_traversal_ng.cc [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/flat_tree_traversal_ng.h [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/flat_tree_traversal_ng_test.cc [delete] https://crrev.com/13568e231a5cac5c47587bad5ef90fb566e87681/third_party/blink/renderer/core/dom/ng/OWNERS [delete] https://crrev.com/13568e231a5cac5c47587bad5ef90fb566e87681/third_party/blink/renderer/core/dom/ng/README.md [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/node.cc [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/shadow_root.cc [modify] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/slot_assignment.cc [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/slot_assignment_engine.cc [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/slot_assignment_engine.h [rename] https://crrev.com/a102c90593abb6f06680dc4f1f3fa479a75d54a5/third_party/blink/renderer/core/dom/slot_assignment_test.cc