diff --git a/DEPS b/DEPS index a79d852a..f65b6c2 100644 --- a/DEPS +++ b/DEPS
@@ -39,7 +39,7 @@ # Three lines of non-changing comments so that # the commit queue can handle CLs rolling Skia # and whatever else without interference from each other. - 'skia_revision': 'ccce0e02576100e1baaab6b18d91acaff624753e', + 'skia_revision': '9d55297f1fd1ed0f74277fd95b4c59608220aa77', # Three lines of non-changing comments so that # the commit queue can handle CLs rolling V8 # and whatever else without interference from each other. @@ -275,7 +275,7 @@ 'src/third_party/catapult': Var('chromium_git') + '/external/github.com/catapult-project/catapult.git' + '@' + - 'a0ffaf72adc7e22c29d120fce2276b147ed30c65', + 'a4c8174b45bc1bd574307c91467f14f7144c2714', 'src/third_party/openh264/src': Var('chromium_git') + '/external/github.com/cisco/openh264' + '@' + 'b37cda248234162033e3e11b0335f3131cdfe488',
diff --git a/chrome/VERSION b/chrome/VERSION index 2f1a61c..c3c9182 100644 --- a/chrome/VERSION +++ b/chrome/VERSION
@@ -1,4 +1,4 @@ MAJOR=50 MINOR=0 -BUILD=2644 +BUILD=2645 PATCH=0
diff --git a/chrome/browser/safe_browsing/protocol_manager.h b/chrome/browser/safe_browsing/protocol_manager.h index 94de1f8..3f21eda 100644 --- a/chrome/browser/safe_browsing/protocol_manager.h +++ b/chrome/browser/safe_browsing/protocol_manager.h
@@ -149,9 +149,6 @@ // Gethash attempted during error backoff, no request sent. GET_HASH_BACKOFF_ERROR, - // Gethash attempted before min wait duration elapsed, no request sent. - GET_HASH_MIN_WAIT_DURATION_ERROR, - // Memory space for histograms is determined by the max. ALWAYS // ADD NEW VALUES BEFORE THIS ONE. GET_HASH_RESULT_MAX
diff --git a/chromeos/CHROMEOS_LKGM b/chromeos/CHROMEOS_LKGM index b3d77e9a..c9ca0db 100644 --- a/chromeos/CHROMEOS_LKGM +++ b/chromeos/CHROMEOS_LKGM
@@ -1 +1 @@ -7897.0.0 \ No newline at end of file +7904.0.0 \ No newline at end of file
diff --git a/components/arc/ime/arc_ime_bridge.cc b/components/arc/ime/arc_ime_bridge.cc index 8d69a47..ec7ba5e4d 100644 --- a/components/arc/ime/arc_ime_bridge.cc +++ b/components/arc/ime/arc_ime_bridge.cc
@@ -26,6 +26,10 @@ return window->name() == "ExoSurface"; } +bool IsArcTopLevelWindow(const aura::Window* window) { + return window->name() == "ExoShellSurface"; +} + } // namespace //////////////////////////////////////////////////////////////////////////////// @@ -98,6 +102,13 @@ void ArcImeBridge::OnWindowFocused(aura::Window* gained_focus, aura::Window* lost_focus) { + // The Aura focus may or may not be on sub-window of the toplevel ARC++ frame. + // To handle all cases, judge the state by always climbing up to the toplevel. + gained_focus = gained_focus ? gained_focus->GetToplevelWindow() : nullptr; + lost_focus = lost_focus ? lost_focus->GetToplevelWindow() : nullptr; + if (lost_focus == gained_focus) + return; + if (lost_focus && focused_arc_window_.Contains(lost_focus)) { ui::InputMethod* const input_method = GetInputMethod(); if (input_method) @@ -105,7 +116,7 @@ focused_arc_window_.Remove(lost_focus); } - if (gained_focus && IsArcWindow(gained_focus)) { + if (gained_focus && IsArcTopLevelWindow(gained_focus)) { focused_arc_window_.Add(gained_focus); ui::InputMethod* const input_method = GetInputMethod(); if (input_method)
diff --git a/content/child/blink_platform_impl.cc b/content/child/blink_platform_impl.cc index fa8c782..c08802d 100644 --- a/content/child/blink_platform_impl.cc +++ b/content/child/blink_platform_impl.cc
@@ -108,54 +108,6 @@ DISALLOW_COPY_AND_ASSIGN(WebWaitableEventImpl); }; -// A simple class to cache the memory usage for a given amount of time. -class MemoryUsageCache { - public: - // Retrieves the Singleton. - static MemoryUsageCache* GetInstance() { - return base::Singleton<MemoryUsageCache>::get(); - } - - MemoryUsageCache() : memory_value_(0) { Init(); } - ~MemoryUsageCache() {} - - void Init() { - const unsigned int kCacheSeconds = 1; - cache_valid_time_ = base::TimeDelta::FromSeconds(kCacheSeconds); - } - - // Returns true if the cached value is fresh. - // Returns false if the cached value is stale, or if |cached_value| is NULL. - bool IsCachedValueValid(size_t* cached_value) { - base::AutoLock scoped_lock(lock_); - if (!cached_value) - return false; - if (base::Time::Now() - last_updated_time_ > cache_valid_time_) - return false; - *cached_value = memory_value_; - return true; - }; - - // Setter for |memory_value_|, refreshes |last_updated_time_|. - void SetMemoryValue(const size_t value) { - base::AutoLock scoped_lock(lock_); - memory_value_ = value; - last_updated_time_ = base::Time::Now(); - } - - private: - // The cached memory value. - size_t memory_value_; - - // How long the cached value should remain valid. - base::TimeDelta cache_valid_time_; - - // The last time the cached value was updated. - base::Time last_updated_time_; - - base::Lock lock_; -}; - } // namespace static int ToMessageID(WebLocalizedString::Name name) { @@ -1093,32 +1045,8 @@ return blink::WebString(""); } -static size_t getMemoryUsageMB(bool bypass_cache) { - size_t current_mem_usage = 0; - MemoryUsageCache* mem_usage_cache_singleton = MemoryUsageCache::GetInstance(); - if (!bypass_cache && - mem_usage_cache_singleton->IsCachedValueValid(¤t_mem_usage)) - return current_mem_usage; - - current_mem_usage = GetMemoryUsageKB() >> 10; - mem_usage_cache_singleton->SetMemoryValue(current_mem_usage); - return current_mem_usage; -} - -size_t BlinkPlatformImpl::memoryUsageMB() { - return getMemoryUsageMB(false); -} - size_t BlinkPlatformImpl::actualMemoryUsageMB() { - return getMemoryUsageMB(true); -} - -size_t BlinkPlatformImpl::physicalMemoryMB() { - return static_cast<size_t>(base::SysInfo::AmountOfPhysicalMemoryMB()); -} - -size_t BlinkPlatformImpl::virtualMemoryLimitMB() { - return static_cast<size_t>(base::SysInfo::AmountOfVirtualMemoryMB()); + return GetMemoryUsageKB() >> 10; } size_t BlinkPlatformImpl::numberOfProcessors() {
diff --git a/content/child/blink_platform_impl.h b/content/child/blink_platform_impl.h index af6f000..690fd6e0 100644 --- a/content/child/blink_platform_impl.h +++ b/content/child/blink_platform_impl.h
@@ -82,10 +82,7 @@ const blink::WebString& challenge, const blink::WebURL& url, const blink::WebURL& top_origin) override; - size_t memoryUsageMB() override; size_t actualMemoryUsageMB() override; - size_t physicalMemoryMB() override; - size_t virtualMemoryLimitMB() override; size_t numberOfProcessors() override; blink::WebDiscardableMemory* allocateAndLockDiscardableMemory(
diff --git a/mojo/edk/system/broker_host.h b/mojo/edk/system/broker_host.h index 2029cb0a..b8f68c4d 100644 --- a/mojo/edk/system/broker_host.h +++ b/mojo/edk/system/broker_host.h
@@ -6,6 +6,7 @@ #define MOJO_EDK_SYSTEM_BROKER_HOST_H_ #include "base/macros.h" +#include "base/message_loop/message_loop.h" #include "mojo/edk/embedder/scoped_platform_handle.h" #include "mojo/edk/system/channel.h" @@ -14,21 +15,26 @@ // The BrokerHost is a channel to the child process, which services synchronous // IPCs. -class BrokerHost : public Channel::Delegate { +class BrokerHost : public Channel::Delegate, + public base::MessageLoop::DestructionObserver { public: explicit BrokerHost(ScopedPlatformHandle platform_handle); - ~BrokerHost() override; // Send |handle| to the child, to be used to establish a NodeChannel to us. void SendChannel(ScopedPlatformHandle handle); private: + ~BrokerHost() override; + // Channel::Delegate: void OnChannelMessage(const void* payload, size_t payload_size, ScopedPlatformHandleVectorPtr handles) override; void OnChannelError() override; + // base::MessageLoop::DestructionObserver: + void WillDestroyCurrentMessageLoop() override; + void OnBufferRequest(size_t num_bytes); scoped_refptr<Channel> channel_;
diff --git a/mojo/edk/system/broker_host_posix.cc b/mojo/edk/system/broker_host_posix.cc index 7a3ff94..de7cdb82 100644 --- a/mojo/edk/system/broker_host_posix.cc +++ b/mojo/edk/system/broker_host_posix.cc
@@ -31,12 +31,17 @@ BrokerHost::BrokerHost(ScopedPlatformHandle platform_handle) { CHECK(platform_handle.is_valid()); + base::MessageLoop::current()->AddDestructionObserver(this); + channel_ = Channel::Create(this, std::move(platform_handle), base::MessageLoop::current()->task_runner()); channel_->Start(); } BrokerHost::~BrokerHost() { + // We're always destroyed on the creation thread, which is the IO thread. + base::MessageLoop::current()->RemoveDestructionObserver(this); + if (channel_) channel_->ShutDown(); } @@ -98,6 +103,12 @@ channel_->ShutDown(); channel_ = nullptr; } + + delete this; +} + +void BrokerHost::WillDestroyCurrentMessageLoop() { + delete this; } } // namespace edk
diff --git a/mojo/edk/system/node_controller.cc b/mojo/edk/system/node_controller.cc index e872b54..b0e7544 100644 --- a/mojo/edk/system/node_controller.cc +++ b/mojo/edk/system/node_controller.cc
@@ -261,8 +261,9 @@ #if defined(OS_POSIX) PlatformChannelPair node_channel; - broker_host_.reset(new BrokerHost(std::move(platform_handle))); - broker_host_->SendChannel(node_channel.PassClientHandle()); + // BrokerHost owns itself. + BrokerHost* broker_host = new BrokerHost(std::move(platform_handle)); + broker_host->SendChannel(node_channel.PassClientHandle()); scoped_refptr<NodeChannel> channel = NodeChannel::Create( this, node_channel.PassServerHandle(), io_task_runner_); #else
diff --git a/mojo/edk/system/node_controller.h b/mojo/edk/system/node_controller.h index 2b1012d2..12afeda 100644 --- a/mojo/edk/system/node_controller.h +++ b/mojo/edk/system/node_controller.h
@@ -29,7 +29,6 @@ namespace edk { class Broker; -class BrokerHost; class Core; class PortsMessage; @@ -302,9 +301,6 @@ #if defined(OS_POSIX) // Broker for sync shared buffer creation (posix-only) in children. scoped_ptr<Broker> broker_; - - // Broker host for sync shared buffer creation (posix-only). - scoped_ptr<BrokerHost> broker_host_; #endif DISALLOW_COPY_AND_ASSIGN(NodeController);
diff --git a/testing/libfuzzer/fuzzers/pdfium_fuzzer.cc b/testing/libfuzzer/fuzzers/pdfium_fuzzer.cc index d3a11f8..537d1c9c 100644 --- a/testing/libfuzzer/fuzzers/pdfium_fuzzer.cc +++ b/testing/libfuzzer/fuzzers/pdfium_fuzzer.cc
@@ -4,6 +4,7 @@ // This fuzzer is simplified & cleaned up pdfium/samples/pdfium_test.cc +#include <assert.h> #include <limits.h> #include <stddef.h> #include <stdint.h>
diff --git a/third_party/WebKit/LayoutTests/editing/selection/double-click-on-shadow-tree.html b/third_party/WebKit/LayoutTests/editing/selection/double-click-on-shadow-tree.html index a969dd3..204c26a2 100644 --- a/third_party/WebKit/LayoutTests/editing/selection/double-click-on-shadow-tree.html +++ b/third_party/WebKit/LayoutTests/editing/selection/double-click-on-shadow-tree.html
@@ -17,12 +17,12 @@ eventSender.mouseDown(); eventSender.mouseUp(); - // TODO(yosin) Once Selection API consider about composed tree, we should + // TODO(yosin) Once Selection API consider about flat tree, we should // use Selection.{anchor,focus}{Node,Offset} to check selection boundary // point. assert_equals(internals.selectedTextForClipboard(), 'AtwoB'); - // TODO(yosin) Once Selection API supports composed tree, we should change + // TODO(yosin) Once Selection API supports flat tree, we should change // these values. var selection = shadowRoot.getSelection(); assert_equals(selection.anchorNode(), 'two');
diff --git a/third_party/WebKit/LayoutTests/editing/text-iterator/findString-shadow-roots.html b/third_party/WebKit/LayoutTests/editing/text-iterator/findString-shadow-roots.html index 8fdbef5..7465d9d 100644 --- a/third_party/WebKit/LayoutTests/editing/text-iterator/findString-shadow-roots.html +++ b/third_party/WebKit/LayoutTests/editing/text-iterator/findString-shadow-roots.html
@@ -113,7 +113,7 @@ selection.empty(); shouldBeTrue('testRunner.findString("AFTER", [])'); selection.empty(); - shouldBeTrue('testRunner.findString("BEFOREDOCUMENTAFTER", [])'); // Visited in composed tree order + shouldBeTrue('testRunner.findString("BEFOREDOCUMENTAFTER", [])'); // Visited in flat tree order selection.empty(); shouldBeFalse('testRunner.findString("DOCUMENTBEFORE", [])'); selection.empty();
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-dir-inherit.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-dir-inherit.html index 3eadc908..091b722 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-dir-inherit.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-dir-inherit.html
@@ -54,7 +54,7 @@ </template> </div> - <h2>dir=auto determines the first character in the composed tree</h2> + <h2>dir=auto determines the first character in the flat tree</h2> <div id="dir-auto-english" dir="auto" data-dir-expected="ltr"> <template>English text</template> </div>
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-title-inherit.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-title-inherit.html index 1bf5a70..7726cc0 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-title-inherit.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/attr-title-inherit.html
@@ -31,27 +31,27 @@ host = document.getElementById("distributed"); createShadowRootWithInnerHtml(host, "<div title='PASS-distributed'><content></content></div>"); -testTooltipTextInShadow("The title of distributed elements inherits in the composed tree", host.querySelector(".target"), "PASS-distributed"); +testTooltipTextInShadow("The title of distributed elements inherits in the flat tree", host.querySelector(".target"), "PASS-distributed"); host = document.getElementById("multiple"); createShadowRootWithInnerHtml(host, "<div title='NG-multiple'><content></content></div>"); createShadowRootWithInnerHtml(host, "<div title='PASS-multiple'><content></content></div>"); -testTooltipTextInShadow("The title of distributed elements inherits in the composed tree (multiple shadow roots)", host.querySelector(".target"), "PASS-multiple"); +testTooltipTextInShadow("The title of distributed elements inherits in the flat tree (multiple shadow roots)", host.querySelector(".target"), "PASS-multiple"); host = document.getElementById("multilevel"); var host2ndLevel = createShadowRootWithInnerHtml(host, "<div title='NG-multilevel'><content></content></div>").firstChild; createShadowRootWithInnerHtml(host2ndLevel, "<div title='PASS-multilevel'><content></content></div>"); -testTooltipTextInShadow("The title of distributed elements inherits in the composed tree (multiple levels)", host.querySelector(".target"), "PASS-multilevel"); +testTooltipTextInShadow("The title of distributed elements inherits in the flat tree (multiple levels)", host.querySelector(".target"), "PASS-multilevel"); host = document.getElementById("older"); root = createShadowRootWithInnerHtml(host, style + "<div class=target>Older</div>"); createShadowRootWithInnerHtml(host, "<div title='PASS-older'><shadow></shadow></div>"); -testTooltipTextInShadow("The title of elements in older shadow roots inherits in the composed tree", root.querySelector(".target"), "PASS-older"); +testTooltipTextInShadow("The title of elements in older shadow roots inherits in the flat tree", root.querySelector(".target"), "PASS-older"); host = document.getElementById("redistributed"); createShadowRootWithInnerHtml(host, "<content></content>"); createShadowRootWithInnerHtml(host, "<div title='PASS-redistributed'><shadow></shadow></div>"); -testTooltipTextInShadow("The title of re-distributed elements inherits in the composed tree (multiple shadow roots)", host.querySelector(".target"), "PASS-redistributed"); +testTooltipTextInShadow("The title of re-distributed elements inherits in the flat tree (multiple shadow roots)", host.querySelector(".target"), "PASS-redistributed"); function testTooltipTextInShadow(description, element, expected) { if (!window.eventSender || !window.testRunner)
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/distribution-update-fonts-load.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/distribution-update-fonts-load.html index 7cddf59..1c90f62d 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/distribution-update-fonts-load.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/distribution-update-fonts-load.html
@@ -3,7 +3,7 @@ <script src="../../../resources/testharnessreport.js"></script> <div id="container"> <p>This test crashes if ASSERT is enabled and - the shadow DOM distribution is not properly updated before composed tree traversals. + the shadow DOM distribution is not properly updated before flat tree traversals. </div> <script> setup({ explicit_done: true });
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/focus-navigation.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/focus-navigation.html index c0c27236d0..b82b1c0 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/focus-navigation.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/focus-navigation.html
@@ -98,7 +98,7 @@ // Exits the focus scope of the youngest sahdow root. 'light-child-selected-1', - // 'light-child-non-selected-1' should be skipped since it doesn't participate in the composed tree. + // 'light-child-non-selected-1' should be skipped since it doesn't participate in the flat tree. 'input-D-1', // All elements with tabindex=1 had been traversed in the outermost scope.
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty-expected.txt b/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty-expected.txt index 759e08b..c3f7dea 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty-expected.txt +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty-expected.txt
@@ -1,4 +1,4 @@ -getComputedStyle should update style if the parent node in the composed tree needs a recalc. +getComputedStyle should update style if the parent node in the flat tree needs a recalc. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty.html index ca17cc6..40c6fe1 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/getComputedStyle-composed-parent-dirty.html
@@ -7,7 +7,7 @@ </div> <script> -description("getComputedStyle should update style if the parent node in the composed tree needs a recalc."); +description("getComputedStyle should update style if the parent node in the flat tree needs a recalc."); var root = document.getElementById("host").createShadowRoot(); var wrapper = root.appendChild(document.createElement("div"));
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class-expected.txt b/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class-expected.txt index 0e9ed2fa..1e6e118 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class-expected.txt +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class-expected.txt
@@ -27,9 +27,9 @@ :host-context matches a shadow host in just a nested shadow tree, not all enclosing shadow trees. PASS backgroundColorOf('host1') is "rgba(0, 0, 0, 0)" PASS backgroundColorOf('host1/host2') is "rgb(0, 128, 0)" -:host-context matches based on a composed tree. +:host-context matches based on a flat tree. PASS backgroundColorOf('host/target') is "rgb(0, 128, 0)" -:host-context matches based on a composed tree when having multiple shadow roots. +:host-context matches based on a flat tree when having multiple shadow roots. PASS backgroundColorOf('host/targetA') is "rgba(0, 0, 0, 0)" PASS backgroundColorOf('host/targetB') is "rgb(0, 128, 0)" PASS backgroundColorOf('host/targetC') is "rgb(0, 128, 0)"
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class.html index 80eb210030..195dc921 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/hostcontext-pseudo-class.html
@@ -177,7 +177,7 @@ backgroundColorShouldBe('host1', 'rgba(0, 0, 0, 0)'); backgroundColorShouldBe('host1/host2', 'rgb(0, 128, 0)'); -debug(':host-context matches based on a composed tree.'); +debug(':host-context matches based on a flat tree.'); sandbox.appendChild( createDOM('div', {'id': 'parentOfHost'}, @@ -195,7 +195,7 @@ cleanUp(); -debug(':host-context matches based on a composed tree when having multiple shadow roots.'); +debug(':host-context matches based on a flat tree when having multiple shadow roots.'); sandbox.appendChild( createDOM('div', {'id': 'parentOfHost'},
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/node-distribution-recalc-crash.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/node-distribution-recalc-crash.html new file mode 100644 index 0000000..70e1d83f --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/node-distribution-recalc-crash.html
@@ -0,0 +1,12 @@ +<script src="../../../resources/testharness.js"></script> +<script src="../../../resources/testharnessreport.js"></script> +<body id=b></body> +<script> +test(function() { + // Mark needsDistributionRecalc with UA shadow. + b.appendChild(document.createElement('input')); + var canvas = document.createElement('canvas'); + b.appendChild(canvas); + canvas.getContext("webgl"); +}, "Reproduction case for crbug.com/569196 (assertion hit in ComposedTreeTraversal::parent())"); +</script>
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/event-dispatching.js b/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/event-dispatching.js index 98ed4fd6..17b714ed 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/event-dispatching.js +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/event-dispatching.js
@@ -121,7 +121,7 @@ indent = indent || ""; var output = indent + dumpNode(node) + "\n"; var child; - for (child = internals.firstChildInComposedTree(node); child; child = internals.nextSiblingInComposedTree(child)) + for (child = internals.firstChildInFlatTree(node); child; child = internals.nextSiblingInFlatTree(child)) output += dumpComposedShadowTree(child, indent + "\t"); return output; }
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/shadow-dom.js b/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/shadow-dom.js index ab9c30b..927d050a 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/shadow-dom.js +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/resources/shadow-dom.js
@@ -256,39 +256,39 @@ indent = indent || ""; var output = indent + dumpNode(node) + "\n"; var child; - for (child = internals.firstChildInComposedTree(node); child; child = internals.nextSiblingInComposedTree(child)) + for (child = internals.firstChildInFlatTree(node); child; child = internals.nextSiblingInFlatTree(child)) output += dumpComposedShadowTree(child, indent + "\t"); return output; } -function lastNodeInComposedTree(root) +function lastNodeInFlatTree(root) { var lastNode = root; - while (internals.lastChildInComposedTree(lastNode)) - lastNode = internals.lastChildInComposedTree(lastNode); + while (internals.lastChildInFlatTree(lastNode)) + lastNode = internals.lastChildInFlatTree(lastNode); return lastNode; } function showComposedShadowTreeByTraversingInForward(root) { var node = root; - var last = lastNodeInComposedTree(root); + var last = lastNodeInFlatTree(root); while (node) { debug(dumpNode(node)); if (node == last) break; - node = internals.nextInComposedTree(node); + node = internals.nextInFlatTree(node); } } function showComposedShadowTreeByTraversingInBackward(root) { - var node = lastNodeInComposedTree(root); + var node = lastNodeInFlatTree(root); while (node) { debug(dumpNode(node)); if (node == root) break; - node = internals.previousInComposedTree(node); + node = internals.previousInFlatTree(node); } } @@ -308,7 +308,7 @@ function showNextNode(node) { - var next = internals.nextInComposedTree(node); + var next = internals.nextInFlatTree(node); debug('Next node of [' + dumpNode(node) + '] is [' + dumpNode(next) + ']'); }
diff --git a/third_party/WebKit/LayoutTests/fast/dom/shadow/style-with-deep-combinator.html b/third_party/WebKit/LayoutTests/fast/dom/shadow/style-with-deep-combinator.html index 0e5da24..eb41ef14 100644 --- a/third_party/WebKit/LayoutTests/fast/dom/shadow/style-with-deep-combinator.html +++ b/third_party/WebKit/LayoutTests/fast/dom/shadow/style-with-deep-combinator.html
@@ -342,7 +342,7 @@ cleanUp(); -// :host /deep/ span is declared in a shadow tree, but the shadow root does not participate in composed tree. +// :host /deep/ span is declared in a shadow tree, but the shadow root does not participate in flat tree. sandbox.appendChild( createDOM('div', {'id': 'host'},
diff --git a/third_party/WebKit/LayoutTests/platform/android/fast/forms/search/searchfield-heights-expected.txt b/third_party/WebKit/LayoutTests/platform/android/fast/forms/search/searchfield-heights-expected.txt new file mode 100644 index 0000000..3a58e85 --- /dev/null +++ b/third_party/WebKit/LayoutTests/platform/android/fast/forms/search/searchfield-heights-expected.txt
@@ -0,0 +1,43 @@ +layer at (0,0) size 800x600 + LayoutView at (0,0) size 800x600 +layer at (0,0) size 800x600 + LayoutBlockFlow {HTML} at (0,0) size 800x600 + LayoutBlockFlow {BODY} at (8,8) size 784x584 + LayoutText {#text} at (0,0) size 351x19 + text run at (0,0) width 351: "This tests that aqua-style search fields do not honor height." + LayoutBR {BR} at (351,15) size 0x0 + LayoutTextControl {INPUT} at (0,124) size 79x6 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] + LayoutFlexibleBox {DIV} at (3,0) size 73x6 + LayoutBlockFlow {DIV} at (2,0) size 9x9 + LayoutBlockFlow {DIV} at (14,0) size 50x6 + LayoutText {#text} at (79,114) size 4x19 + text run at (79,114) width 4: " " + LayoutTextControl {INPUT} at (83,104) size 179x40 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] + LayoutFlexibleBox {DIV} at (3,3) size 173x34 + LayoutBlockFlow {DIV} at (2,9.50) size 15x15 + LayoutBlockFlow {DIV} at (20,8.50) size 139x17 + LayoutText {#text} at (262,114) size 4x19 + text run at (262,114) width 4: " " + LayoutTextControl {INPUT} at (266,20) size 307x200 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] + LayoutFlexibleBox {DIV} at (3,3) size 301x194 + LayoutBlockFlow {DIV} at (2,83.50) size 27x27 + LayoutBlockFlow {DIV} at (32,80.50) size 246x33 + LayoutText {#text} at (0,0) size 0x0 +layer at (25,132) size 50x6 + LayoutBlockFlow {DIV} at (0,0) size 50x6 + LayoutText {#text} at (0,0) size 10x6 + text run at (0,0) width 10: "mini" +layer at (114,124) size 139x17 + LayoutBlockFlow {DIV} at (0,0) size 139x17 + LayoutText {#text} at (0,0) size 35x17 + text run at (0,0) width 35: "small" +layer at (309,112) size 246x33 + LayoutBlockFlow {DIV} at (0,0) size 246x33 + LayoutText {#text} at (0,0) size 84x32 + text run at (0,0) width 84: "regular" +layer at (76,133) size 5x5 transparent + LayoutBlockFlow {DIV} at (65,0.50) size 5x5 +layer at (254,127) size 10x10 transparent + LayoutBlockFlow {DIV} at (160,12) size 10x10 +layer at (556,119) size 19x19 transparent + LayoutBlockFlow {DIV} at (279,87.50) size 19x19
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/search-vertical-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/search-vertical-alignment-expected.txt index fdabc71..6185b27 100644 --- a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/search-vertical-alignment-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/search-vertical-alignment-expected.txt
@@ -12,9 +12,9 @@ text run at (364,20) width 115: "same in both fields." LayoutBlockFlow {P} at (0,56) size 784x45 LayoutTextControl {INPUT} at (0,0) size 156x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 150x39 - LayoutBlockFlow {DIV} at (2,13) size 13x13 - LayoutBlockFlow {DIV} at (18,11.50) size 119x16 + LayoutFlexibleBox {DIV} at (3,14.50) size 150x16 + LayoutBlockFlow {DIV} at (2,1.50) size 13x13 + LayoutBlockFlow {DIV} at (18,0) size 119x16 LayoutText {#text} at (156,12) size 4x19 text run at (156,12) width 4: " " LayoutTextControl {INPUT} at (160,0) size 154x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -30,9 +30,9 @@ LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,153) size 784x20 LayoutTextControl {INPUT} at (0,4) size 156x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 150x12 - LayoutBlockFlow {DIV} at (2,0) size 13x13 - LayoutBlockFlow {DIV} at (18,-2) size 119x16 + LayoutFlexibleBox {DIV} at (3,-2) size 150x16 + LayoutBlockFlow {DIV} at (2,1.50) size 13x13 + LayoutBlockFlow {DIV} at (18,0) size 119x16 LayoutText {#text} at (156,0) size 4x19 text run at (156,0) width 4: " " LayoutTextControl {INPUT} at (160,4) size 154x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -62,8 +62,8 @@ LayoutText {#text} at (0,0) size 24x16 text run at (0,0) width 24: "Text" layer at (149,82) size 9x9 transparent - LayoutBlockFlow {DIV} at (138,15) size 9x9 + LayoutBlockFlow {DIV} at (138,3.50) size 9x9 layer at (149,131) size 9x9 transparent LayoutBlockFlow {DIV} at (138,3.50) size 9x9 layer at (149,167) size 9x9 transparent - LayoutBlockFlow {DIV} at (138,1.50) size 9x9 + LayoutBlockFlow {DIV} at (138,3.50) size 9x9
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.png b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.png index 89c84f3e..a956399 100644 --- a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.png +++ b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.png Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.txt b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.txt index 3a58e85..b47a3f35 100644 --- a/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/linux/fast/forms/search/searchfield-heights-expected.txt
@@ -6,24 +6,24 @@ LayoutText {#text} at (0,0) size 351x19 text run at (0,0) width 351: "This tests that aqua-style search fields do not honor height." LayoutBR {BR} at (351,15) size 0x0 - LayoutTextControl {INPUT} at (0,124) size 79x6 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 73x6 + LayoutTextControl {INPUT} at (0,125) size 79x6 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] + LayoutFlexibleBox {DIV} at (3,-1.50) size 73x9 LayoutBlockFlow {DIV} at (2,0) size 9x9 - LayoutBlockFlow {DIV} at (14,0) size 50x6 + LayoutBlockFlow {DIV} at (14,1.50) size 50x6 LayoutText {#text} at (79,114) size 4x19 text run at (79,114) width 4: " " LayoutTextControl {INPUT} at (83,104) size 179x40 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 173x34 - LayoutBlockFlow {DIV} at (2,9.50) size 15x15 - LayoutBlockFlow {DIV} at (20,8.50) size 139x17 + LayoutFlexibleBox {DIV} at (3,11.50) size 173x17 + LayoutBlockFlow {DIV} at (2,1) size 15x15 + LayoutBlockFlow {DIV} at (20,0) size 139x17 LayoutText {#text} at (262,114) size 4x19 text run at (262,114) width 4: " " LayoutTextControl {INPUT} at (266,20) size 307x200 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 301x194 - LayoutBlockFlow {DIV} at (2,83.50) size 27x27 - LayoutBlockFlow {DIV} at (32,80.50) size 246x33 + LayoutFlexibleBox {DIV} at (3,83.50) size 301x33 + LayoutBlockFlow {DIV} at (2,3) size 27x27 + LayoutBlockFlow {DIV} at (32,0) size 246x33 LayoutText {#text} at (0,0) size 0x0 -layer at (25,132) size 50x6 +layer at (25,133) size 50x6 LayoutBlockFlow {DIV} at (0,0) size 50x6 LayoutText {#text} at (0,0) size 10x6 text run at (0,0) width 10: "mini" @@ -35,9 +35,9 @@ LayoutBlockFlow {DIV} at (0,0) size 246x33 LayoutText {#text} at (0,0) size 84x32 text run at (0,0) width 84: "regular" -layer at (76,133) size 5x5 transparent - LayoutBlockFlow {DIV} at (65,0.50) size 5x5 +layer at (76,134) size 5x5 transparent + LayoutBlockFlow {DIV} at (65,2) size 5x5 layer at (254,127) size 10x10 transparent - LayoutBlockFlow {DIV} at (160,12) size 10x10 + LayoutBlockFlow {DIV} at (160,3.50) size 10x10 layer at (556,119) size 19x19 transparent - LayoutBlockFlow {DIV} at (279,87.50) size 19x19 + LayoutBlockFlow {DIV} at (279,7) size 19x19
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-datalist-expected.txt b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-datalist-expected.txt index 6e17f75..315908e 100644 --- a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-datalist-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-datalist-expected.txt
@@ -4,28 +4,28 @@ LayoutBlockFlow {HTML} at (0,0) size 800x54 LayoutBlockFlow {BODY} at (8,8) size 784x38 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 89.28x13 - LayoutDetailsMarker {DIV} at (89.28,1.02) size 14.72x10.97: down - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 89.28x13 + LayoutDetailsMarker {DIV} at (89.28,2.02) size 14.72x10.97: down + LayoutBlockFlow {DIV} at (104,0) size 13x15 LayoutText {#text} at (123,0) size 4x18 text run at (123,0) width 4: " " LayoutTextControl {INPUT} at (127,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 89.28x13 - LayoutDetailsMarker {DIV} at (89.28,1.02) size 14.72x10.97: down - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 89.28x13 + LayoutDetailsMarker {DIV} at (89.28,2.02) size 14.72x10.97: down + LayoutBlockFlow {DIV} at (104,0) size 13x15 LayoutText {#text} at (250,0) size 4x18 text run at (250,0) width 4: " " LayoutBR {BR} at (254,0) size 0x18 LayoutTextControl {INPUT} at (0,19) size 123x19 [color=#545454] [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 89.28x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 89.28x13 LayoutText {#text} at (123,19) size 4x18 text run at (123,19) width 4: " " LayoutTextControl {INPUT} at (127,19) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 89.28x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 89.28x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 layer at (11,11) size 89x13 @@ -37,11 +37,11 @@ layer at (138,30) size 89x13 LayoutBlockFlow {DIV} at (0,0) size 89.28x13 hidden layer at (100,31) size 15x11 transparent - LayoutDetailsMarker {DIV} at (89.28,1.02) size 14.72x10.97: down + LayoutDetailsMarker {DIV} at (89.28,2.02) size 14.72x10.97: down layer at (115,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15 hidden layer at (227,31) size 15x11 transparent - LayoutDetailsMarker {DIV} at (89.28,1.02) size 14.72x10.97: down + LayoutDetailsMarker {DIV} at (89.28,2.02) size 14.72x10.97: down layer at (242,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15 caret: position 0 of child 0 {DIV} of child 0 {DIV} of child 0 {DIV} of {#document-fragment} of child 3 {INPUT} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-rtl-expected.txt b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-rtl-expected.txt index fced8b9..f7cb3c1 100644 --- a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-rtl-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-rtl-expected.txt
@@ -5,46 +5,46 @@ LayoutBlockFlow {BODY} at (8,16) size 784x264 LayoutBlockFlow {P} at (0,0) size 784x19 LayoutTextControl {INPUT} at (661,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,35) size 784x19 LayoutTextControl {INPUT} at (661,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,70) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,105) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 + LayoutBlockFlow {DIV} at (0,0) size 13x15 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,140) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,175) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,210) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,245) size 784x19 LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (13,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (13,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 layer at (685,19) size 104x13 @@ -80,17 +80,17 @@ LayoutText {#text} at (97,0) size 7x13 text run at (97,0) width 7: "8" layer at (672,18) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (672,53) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (11,88) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (115,158) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15 layer at (115,193) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15 layer at (11,228) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (11,263) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 caret: position 4 of child 0 {#text} of child 0 {DIV} of child 0 {DIV} of child 0 {DIV} of {#document-fragment} of child 0 {INPUT} of child 6 {P} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-spinbutton-layer-expected.txt b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-spinbutton-layer-expected.txt index f9927661..a24252b 100644 --- a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-spinbutton-layer-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/number/number-appearance-spinbutton-layer-expected.txt
@@ -5,8 +5,8 @@ LayoutBlockFlow {BODY} at (8,8) size 784x38 LayoutBR {BR} at (123,0) size 0x18 LayoutTextControl {INPUT} at (0,19) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 104x13 LayoutText {#text} at (0,0) size 0x0 layer at (11,30) size 104x13 LayoutBlockFlow {DIV} at (0,0) size 104x13 @@ -14,13 +14,13 @@ text run at (0,0) width 14: "10" layer at (8,8) size 123x19 transparent LayoutTextControl {INPUT} at (0,0) size 123x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x13 - LayoutBlockFlow {DIV} at (0,0) size 104x13 + LayoutFlexibleBox {DIV} at (3,2) size 117x15 + LayoutBlockFlow {DIV} at (0,1) size 104x13 layer at (11,11) size 104x13 LayoutBlockFlow {DIV} at (0,0) size 104x13 LayoutText {#text} at (0,0) size 14x13 text run at (0,0) width 14: "10" layer at (115,10) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15 layer at (115,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (104,-1) size 13x15 + LayoutBlockFlow {DIV} at (104,0) size 13x15
diff --git a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/search/search-vertical-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/search/search-vertical-alignment-expected.txt index 2db64ad..b33c563 100644 --- a/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/search/search-vertical-alignment-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac-mavericks/fast/forms/search/search-vertical-alignment-expected.txt
@@ -12,9 +12,9 @@ text run at (469,18) width 125: "same in both fields." LayoutBlockFlow {P} at (0,52) size 784x45 LayoutTextControl {INPUT} at (0,0) size 123x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 117x39 - LayoutBlockFlow {DIV} at (0,13) size 16x13 - LayoutBlockFlow {DIV} at (16,13) size 89x13 + LayoutFlexibleBox {DIV} at (3,16) size 117x13 + LayoutBlockFlow {DIV} at (0,0) size 16x13 + LayoutBlockFlow {DIV} at (16,0) size 89x13 LayoutText {#text} at (123,13) size 4x18 text run at (123,13) width 4: " " LayoutTextControl {INPUT} at (127,0) size 123x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -30,9 +30,9 @@ LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,147) size 784x18 LayoutTextControl {INPUT} at (0,4) size 123x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 117x12 + LayoutFlexibleBox {DIV} at (3,-0.50) size 117x13 LayoutBlockFlow {DIV} at (0,0) size 16x13 - LayoutBlockFlow {DIV} at (16,-0.50) size 89x13 + LayoutBlockFlow {DIV} at (16,0) size 89x13 LayoutText {#text} at (123,0) size 4x18 text run at (123,0) width 4: " " LayoutTextControl {INPUT} at (127,4) size 123x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -62,8 +62,8 @@ LayoutText {#text} at (0,0) size 24x13 text run at (0,0) width 24: "Text" layer at (117,77) size 11x11 transparent - LayoutBlockFlow {DIV} at (106,14) size 11x11 + LayoutBlockFlow {DIV} at (106,1) size 11x11 layer at (117,126) size 11x11 transparent LayoutBlockFlow {DIV} at (106,1) size 11x11 layer at (117,160) size 11x11 transparent - LayoutBlockFlow {DIV} at (106,0.50) size 11x11 + LayoutBlockFlow {DIV} at (106,1) size 11x11
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-datalist-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-datalist-expected.txt index f254194..c52d3f81 100644 --- a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-datalist-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-datalist-expected.txt
@@ -4,28 +4,28 @@ LayoutBlockFlow {HTML} at (0,0) size 800x54 LayoutBlockFlow {BODY} at (8,8) size 784x38 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 97.28x13 - LayoutDetailsMarker {DIV} at (97.28,1.02) size 14.72x10.97: down - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 97.28x13 + LayoutDetailsMarker {DIV} at (97.28,2.02) size 14.72x10.97: down + LayoutBlockFlow {DIV} at (112,0) size 13x15 LayoutText {#text} at (131,0) size 4x18 text run at (131,0) width 4: " " LayoutTextControl {INPUT} at (135,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 97.28x13 - LayoutDetailsMarker {DIV} at (97.28,1.02) size 14.72x10.97: down - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 97.28x13 + LayoutDetailsMarker {DIV} at (97.28,2.02) size 14.72x10.97: down + LayoutBlockFlow {DIV} at (112,0) size 13x15 LayoutText {#text} at (266,0) size 4x18 text run at (266,0) width 4: " " LayoutBR {BR} at (270,0) size 0x18 LayoutTextControl {INPUT} at (0,19) size 131x19 [color=#545454] [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 97.28x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 97.28x13 LayoutText {#text} at (131,19) size 4x18 text run at (131,19) width 4: " " LayoutTextControl {INPUT} at (135,19) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 97.28x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 97.28x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 layer at (11,11) size 97x13 @@ -37,11 +37,11 @@ layer at (146,30) size 97x13 LayoutBlockFlow {DIV} at (0,0) size 97.28x13 hidden layer at (108,31) size 15x11 transparent - LayoutDetailsMarker {DIV} at (97.28,1.02) size 14.72x10.97: down + LayoutDetailsMarker {DIV} at (97.28,2.02) size 14.72x10.97: down layer at (123,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15 hidden layer at (243,31) size 15x11 transparent - LayoutDetailsMarker {DIV} at (97.28,1.02) size 14.72x10.97: down + LayoutDetailsMarker {DIV} at (97.28,2.02) size 14.72x10.97: down layer at (258,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15 caret: position 0 of child 0 {DIV} of child 0 {DIV} of child 0 {DIV} of {#document-fragment} of child 3 {INPUT} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-rtl-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-rtl-expected.txt index aea6993..7a50929 100644 --- a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-rtl-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-rtl-expected.txt
@@ -5,46 +5,46 @@ LayoutBlockFlow {BODY} at (8,16) size 784x264 LayoutBlockFlow {P} at (0,0) size 784x19 LayoutTextControl {INPUT} at (653,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,35) size 784x19 LayoutTextControl {INPUT} at (653,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,70) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,105) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 + LayoutBlockFlow {DIV} at (0,0) size 13x15 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,140) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,175) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,210) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,245) size 784x19 LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (13,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (13,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 LayoutText {#text} at (0,0) size 0x0 layer at (677,19) size 112x13 @@ -80,17 +80,17 @@ LayoutText {#text} at (105,0) size 7x13 text run at (105,0) width 7: "8" layer at (664,18) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (664,53) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (11,88) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (123,158) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15 layer at (123,193) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15 layer at (11,228) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 layer at (11,263) size 13x15 transparent - LayoutBlockFlow {DIV} at (0,-1) size 13x15 + LayoutBlockFlow {DIV} at (0,0) size 13x15 caret: position 4 of child 0 {#text} of child 0 {DIV} of child 0 {DIV} of child 0 {DIV} of {#document-fragment} of child 0 {INPUT} of child 6 {P} of body
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-spinbutton-layer-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-spinbutton-layer-expected.txt index a5dbe99..bb05c0a 100644 --- a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-spinbutton-layer-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/number/number-appearance-spinbutton-layer-expected.txt
@@ -5,8 +5,8 @@ LayoutBlockFlow {BODY} at (8,8) size 784x38 LayoutBR {BR} at (131,0) size 0x18 LayoutTextControl {INPUT} at (0,19) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 112x13 LayoutText {#text} at (0,0) size 0x0 layer at (11,30) size 112x13 LayoutBlockFlow {DIV} at (0,0) size 112x13 @@ -14,13 +14,13 @@ text run at (0,0) width 13: "10" layer at (8,8) size 131x19 transparent LayoutTextControl {INPUT} at (0,0) size 131x19 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x13 - LayoutBlockFlow {DIV} at (0,0) size 112x13 + LayoutFlexibleBox {DIV} at (3,2) size 125x15 + LayoutBlockFlow {DIV} at (0,1) size 112x13 layer at (11,11) size 112x13 LayoutBlockFlow {DIV} at (0,0) size 112x13 LayoutText {#text} at (0,0) size 13x13 text run at (0,0) width 13: "10" layer at (123,10) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15 layer at (123,29) size 13x15 transparent - LayoutBlockFlow {DIV} at (112,-1) size 13x15 + LayoutBlockFlow {DIV} at (112,0) size 13x15
diff --git a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/search/search-vertical-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/search/search-vertical-alignment-expected.txt index 8f2911b..ab3f415d 100644 --- a/third_party/WebKit/LayoutTests/platform/mac/fast/forms/search/search-vertical-alignment-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/mac/fast/forms/search/search-vertical-alignment-expected.txt
@@ -12,9 +12,9 @@ text run at (469,18) width 125: "same in both fields." LayoutBlockFlow {P} at (0,52) size 784x45 LayoutTextControl {INPUT} at (0,0) size 131x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 125x39 - LayoutBlockFlow {DIV} at (0,13) size 16x13 - LayoutBlockFlow {DIV} at (16,13) size 97x13 + LayoutFlexibleBox {DIV} at (3,16) size 125x13 + LayoutBlockFlow {DIV} at (0,0) size 16x13 + LayoutBlockFlow {DIV} at (16,0) size 97x13 LayoutText {#text} at (131,13) size 4x18 text run at (131,13) width 4: " " LayoutTextControl {INPUT} at (135,0) size 131x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -30,9 +30,9 @@ LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,147) size 784x18 LayoutTextControl {INPUT} at (0,4) size 131x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 125x12 + LayoutFlexibleBox {DIV} at (3,-0.50) size 125x13 LayoutBlockFlow {DIV} at (0,0) size 16x13 - LayoutBlockFlow {DIV} at (16,-0.50) size 97x13 + LayoutBlockFlow {DIV} at (16,0) size 97x13 LayoutText {#text} at (131,0) size 4x18 text run at (131,0) width 4: " " LayoutTextControl {INPUT} at (135,4) size 131x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -62,8 +62,8 @@ LayoutText {#text} at (0,0) size 21x13 text run at (0,0) width 21: "Text" layer at (125,77) size 11x11 transparent - LayoutBlockFlow {DIV} at (114,14) size 11x11 + LayoutBlockFlow {DIV} at (114,1) size 11x11 layer at (125,126) size 11x11 transparent LayoutBlockFlow {DIV} at (114,1) size 11x11 layer at (125,160) size 11x11 transparent - LayoutBlockFlow {DIV} at (114,0.50) size 11x11 + LayoutBlockFlow {DIV} at (114,1) size 11x11
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/search-vertical-alignment-expected.txt b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/search-vertical-alignment-expected.txt index c5ed996..c0ba944 100644 --- a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/search-vertical-alignment-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/search-vertical-alignment-expected.txt
@@ -12,9 +12,9 @@ text run at (470,18) width 127: "same in both fields." LayoutBlockFlow {P} at (0,52) size 784x45 LayoutTextControl {INPUT} at (0,0) size 175x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 169x39 - LayoutBlockFlow {DIV} at (2,13) size 13x13 - LayoutBlockFlow {DIV} at (18,11.50) size 138x16 + LayoutFlexibleBox {DIV} at (3,14.50) size 169x16 + LayoutBlockFlow {DIV} at (2,1.50) size 13x13 + LayoutBlockFlow {DIV} at (18,0) size 138x16 LayoutText {#text} at (175,13) size 4x17 text run at (175,13) width 4: " " LayoutTextControl {INPUT} at (179,0) size 173x45 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -30,9 +30,9 @@ LayoutText {#text} at (0,0) size 0x0 LayoutBlockFlow {P} at (0,147) size 784x18 LayoutTextControl {INPUT} at (0,3) size 175x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 169x12 - LayoutBlockFlow {DIV} at (2,0) size 13x13 - LayoutBlockFlow {DIV} at (18,-2) size 138x16 + LayoutFlexibleBox {DIV} at (3,-2) size 169x16 + LayoutBlockFlow {DIV} at (2,1.50) size 13x13 + LayoutBlockFlow {DIV} at (18,0) size 138x16 LayoutText {#text} at (175,0) size 4x17 text run at (175,0) width 4: " " LayoutTextControl {INPUT} at (179,3) size 173x12 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] @@ -62,8 +62,8 @@ LayoutText {#text} at (0,0) size 24x16 text run at (0,0) width 24: "Text" layer at (168,78) size 9x9 transparent - LayoutBlockFlow {DIV} at (157,15) size 9x9 + LayoutBlockFlow {DIV} at (157,3.50) size 9x9 layer at (168,126) size 9x9 transparent LayoutBlockFlow {DIV} at (157,3.50) size 9x9 layer at (168,160) size 9x9 transparent - LayoutBlockFlow {DIV} at (157,1.50) size 9x9 + LayoutBlockFlow {DIV} at (157,3.50) size 9x9
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.png b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.png index a3a46114..66dfff1 100644 --- a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.png +++ b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.png Binary files differ
diff --git a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.txt b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.txt index 6bfd943..3307a97e 100644 --- a/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.txt +++ b/third_party/WebKit/LayoutTests/platform/win/fast/forms/search/searchfield-heights-expected.txt
@@ -6,24 +6,24 @@ LayoutText {#text} at (0,0) size 377x17 text run at (0,0) width 377: "This tests that aqua-style search fields do not honor height." LayoutBR {BR} at (376,14) size 1x0 - LayoutTextControl {INPUT} at (0,121) size 79x6 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,0) size 73x6 + LayoutTextControl {INPUT} at (0,122) size 79x6 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] + LayoutFlexibleBox {DIV} at (3,-1.50) size 73x9 LayoutBlockFlow {DIV} at (2,0) size 9x9 - LayoutBlockFlow {DIV} at (14,0) size 50x6 + LayoutBlockFlow {DIV} at (14,1.50) size 50x6 LayoutText {#text} at (79,112) size 4x17 text run at (79,112) width 4: " " LayoutTextControl {INPUT} at (83,101) size 179x40 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 173x34 - LayoutBlockFlow {DIV} at (2,9.50) size 15x15 - LayoutBlockFlow {DIV} at (20,8.50) size 139x17 + LayoutFlexibleBox {DIV} at (3,11.50) size 173x17 + LayoutBlockFlow {DIV} at (2,1) size 15x15 + LayoutBlockFlow {DIV} at (20,0) size 139x17 LayoutText {#text} at (262,112) size 4x17 text run at (262,112) width 4: " " LayoutTextControl {INPUT} at (266,18) size 344x200 [bgcolor=#FFFFFF] [border: (2px inset #EEEEEE)] - LayoutFlexibleBox {DIV} at (3,3) size 338x194 - LayoutBlockFlow {DIV} at (2,83.50) size 27x27 - LayoutBlockFlow {DIV} at (32,81.50) size 283x31 + LayoutFlexibleBox {DIV} at (3,84.50) size 338x31 + LayoutBlockFlow {DIV} at (2,2) size 27x27 + LayoutBlockFlow {DIV} at (32,0) size 283x31 LayoutText {#text} at (0,0) size 0x0 -layer at (25,129) size 50x6 +layer at (25,130) size 50x6 LayoutBlockFlow {DIV} at (0,0) size 50x6 LayoutText {#text} at (0,0) size 10x6 text run at (0,0) width 10: "mini" @@ -35,9 +35,9 @@ LayoutBlockFlow {DIV} at (0,0) size 283x31 LayoutText {#text} at (0,0) size 85x30 text run at (0,0) width 85: "regular" -layer at (76,130) size 5x5 transparent - LayoutBlockFlow {DIV} at (65,0.50) size 5x5 +layer at (76,131) size 5x5 transparent + LayoutBlockFlow {DIV} at (65,2) size 5x5 layer at (254,124) size 10x10 transparent - LayoutBlockFlow {DIV} at (160,12) size 10x10 + LayoutBlockFlow {DIV} at (160,3.50) size 10x10 layer at (593,117) size 19x19 transparent - LayoutBlockFlow {DIV} at (316,87.50) size 19x19 + LayoutBlockFlow {DIV} at (316,6) size 19x19
diff --git a/third_party/WebKit/Source/core/core.gypi b/third_party/WebKit/Source/core/core.gypi index 778bf9a..98f075a3 100644 --- a/third_party/WebKit/Source/core/core.gypi +++ b/third_party/WebKit/Source/core/core.gypi
@@ -2642,12 +2642,12 @@ 'dom/custom/CustomElementSyncMicrotaskQueue.h', 'dom/custom/CustomElementUpgradeCandidateMap.cpp', 'dom/custom/CustomElementUpgradeCandidateMap.h', - 'dom/shadow/ComposedTreeTraversal.cpp', - 'dom/shadow/ComposedTreeTraversal.h', 'dom/shadow/DistributedNodes.cpp', 'dom/shadow/DistributedNodes.h', 'dom/shadow/ElementShadow.cpp', 'dom/shadow/ElementShadow.h', + 'dom/shadow/FlatTreeTraversal.cpp', + 'dom/shadow/FlatTreeTraversal.h', 'dom/shadow/InsertionPoint.cpp', 'dom/shadow/InsertionPoint.h', 'dom/shadow/SelectRuleFeatureSet.cpp', @@ -3932,7 +3932,7 @@ 'dom/TreeScopeStyleSheetCollectionTest.cpp', 'dom/TreeScopeTest.cpp', 'dom/URLSearchParamsTest.cpp', - 'dom/shadow/ComposedTreeTraversalTest.cpp', + 'dom/shadow/FlatTreeTraversalTest.cpp', 'editing/EditingStrategyTest.cpp', 'editing/EditingTestBase.cpp', 'editing/EditingTestBase.h',
diff --git a/third_party/WebKit/Source/core/css/SelectorChecker.cpp b/third_party/WebKit/Source/core/css/SelectorChecker.cpp index 7714683..22d4d5f 100644 --- a/third_party/WebKit/Source/core/css/SelectorChecker.cpp +++ b/third_party/WebKit/Source/core/css/SelectorChecker.cpp
@@ -37,7 +37,7 @@ #include "core/dom/NthIndexCache.h" #include "core/dom/StyleEngine.h" #include "core/dom/Text.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/InsertionPoint.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/FrameSelection.h" @@ -1073,7 +1073,7 @@ for (subContext.selector = selector.selectorList()->first(); subContext.selector; subContext.selector = CSSSelectorList::next(*subContext.selector)) { subContext.treatShadowHostAsNormalScope = true; subContext.scope = context.scope; - // Use ComposedTreeTraversal to traverse a composed ancestor list of a given element. + // Use FlatTreeTraversal to traverse a composed ancestor list of a given element. Element* nextElement = &element; SelectorCheckingContext hostContext(subContext); do { @@ -1092,7 +1092,7 @@ break; hostContext.inRightmostCompound = false; - nextElement = ComposedTreeTraversal::parentElement(*nextElement); + nextElement = FlatTreeTraversal::parentElement(*nextElement); } while (nextElement); } if (matched) {
diff --git a/third_party/WebKit/Source/core/dom/Document.cpp b/third_party/WebKit/Source/core/dom/Document.cpp index d082a8ad..3f705a6 100644 --- a/third_party/WebKit/Source/core/dom/Document.cpp +++ b/third_party/WebKit/Source/core/dom/Document.cpp
@@ -104,8 +104,8 @@ #include "core/dom/XMLDocument.h" #include "core/dom/custom/CustomElementMicrotaskRunQueue.h" #include "core/dom/custom/CustomElementRegistrationContext.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" #include "core/dom/shadow/ElementShadow.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/DragCaretController.h" #include "core/editing/Editor.h" @@ -1889,8 +1889,9 @@ void Document::updateLayoutTreeForNodeIfNeeded(Node* node) { + DocumentLifecycle::PreventThrottlingScope preventThrottling(lifecycle()); ASSERT(node); - if (!node->canParticipateInComposedTree()) + if (!node->canParticipateInFlatTree()) return; if (!needsLayoutTreeUpdate()) return; @@ -3516,12 +3517,12 @@ return; m_hoverNode->updateDistribution(); - if (element != m_hoverNode && (!m_hoverNode->isTextNode() || element != ComposedTreeTraversal::parent(*m_hoverNode))) + if (element != m_hoverNode && (!m_hoverNode->isTextNode() || element != FlatTreeTraversal::parent(*m_hoverNode))) return; - m_hoverNode = ComposedTreeTraversal::parent(element); + m_hoverNode = FlatTreeTraversal::parent(element); while (m_hoverNode && !m_hoverNode->layoutObject()) - m_hoverNode = ComposedTreeTraversal::parent(*m_hoverNode); + m_hoverNode = FlatTreeTraversal::parent(*m_hoverNode); // If the mouse cursor is not visible, do not clear existing // hover effects on the ancestors of |element| and do not invoke @@ -3541,9 +3542,9 @@ if (element != m_activeHoverElement) return; - Node* activeNode = ComposedTreeTraversal::parent(element); + Node* activeNode = FlatTreeTraversal::parent(element); while (activeNode && activeNode->isElementNode() && !activeNode->layoutObject()) - activeNode = ComposedTreeTraversal::parent(*activeNode); + activeNode = FlatTreeTraversal::parent(*activeNode); m_activeHoverElement = activeNode && activeNode->isElementNode() ? toElement(activeNode) : 0; } @@ -5495,7 +5496,7 @@ if (oldActiveElement && !request.active()) { // The oldActiveElement layoutObject is null, dropped on :active by setting display: none, // for instance. We still need to clear the ActiveChain as the mouse is released. - for (RefPtrWillBeRawPtr<Node> node = oldActiveElement; node; node = ComposedTreeTraversal::parent(*node)) { + for (RefPtrWillBeRawPtr<Node> node = oldActiveElement; node; node = FlatTreeTraversal::parent(*node)) { ASSERT(!node->isTextNode()); node->setActive(false); m_userActionElements.setInActiveChain(node.get(), false); @@ -5506,7 +5507,7 @@ if (!oldActiveElement && newActiveElement && !newActiveElement->isDisabledFormControl() && 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 (Node* node = newActiveElement; node; node = ComposedTreeTraversal::parent(*node)) { + for (Node* node = newActiveElement; node; node = FlatTreeTraversal::parent(*node)) { ASSERT(!node->isTextNode()); m_userActionElements.setInActiveChain(node, true); }
diff --git a/third_party/WebKit/Source/core/dom/ElementTraversal.h b/third_party/WebKit/Source/core/dom/ElementTraversal.h index d21ae98c..b1e755b 100644 --- a/third_party/WebKit/Source/core/dom/ElementTraversal.h +++ b/third_party/WebKit/Source/core/dom/ElementTraversal.h
@@ -66,7 +66,7 @@ // Note that these functions do not traverse into child shadow trees of any // shadow hosts they encounter. If you need to traverse the shadow DOM, you can // manually traverse the shadow trees using a second Traversal, or use -// ComposedTreeTraversal. +// FlatTreeTraversal. // // ElementTraversal is a specialized version of Traversal<Element>. template <class ElementType>
diff --git a/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversal.cpp b/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversal.cpp index d85de7c..98f12d3 100644 --- a/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversal.cpp +++ b/third_party/WebKit/Source/core/dom/LayoutTreeBuilderTraversal.cpp
@@ -28,7 +28,7 @@ #include "core/HTMLNames.h" #include "core/dom/PseudoElement.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/layout/LayoutObject.h" namespace blink { @@ -55,22 +55,22 @@ { // TODO(hayato): Uncomment this once we can be sure LayoutTreeBuilderTraversal::parent() is used only for a node in a document. // ASSERT(node.inDocument()); - return ComposedTreeTraversal::parent(node, details); + return FlatTreeTraversal::parent(node, details); } Node* nextSibling(const Node& node) { if (node.isBeforePseudoElement()) { - if (Node* next = ComposedTreeTraversal::firstChild(*ComposedTreeTraversal::parent(node))) + if (Node* next = FlatTreeTraversal::firstChild(*FlatTreeTraversal::parent(node))) return next; } else { - if (Node* next = ComposedTreeTraversal::nextSibling(node)) + if (Node* next = FlatTreeTraversal::nextSibling(node)) return next; if (node.isAfterPseudoElement()) return 0; } - Node* parent = ComposedTreeTraversal::parent(node); + Node* parent = FlatTreeTraversal::parent(node); if (parent && parent->isElementNode()) return toElement(parent)->pseudoElement(AFTER); @@ -80,16 +80,16 @@ Node* previousSibling(const Node& node) { if (node.isAfterPseudoElement()) { - if (Node* previous = ComposedTreeTraversal::lastChild(*ComposedTreeTraversal::parent(node))) + if (Node* previous = FlatTreeTraversal::lastChild(*FlatTreeTraversal::parent(node))) return previous; } else { - if (Node* previous = ComposedTreeTraversal::previousSibling(node)) + if (Node* previous = FlatTreeTraversal::previousSibling(node)) return previous; if (node.isBeforePseudoElement()) return 0; } - Node* parent = ComposedTreeTraversal::parent(node); + Node* parent = FlatTreeTraversal::parent(node); if (parent && parent->isElementNode()) return toElement(parent)->pseudoElement(BEFORE); @@ -98,7 +98,7 @@ static Node* lastChild(const Node& node) { - return ComposedTreeTraversal::lastChild(node); + return FlatTreeTraversal::lastChild(node); } static Node* pseudoAwarePreviousSibling(const Node& node) @@ -149,7 +149,7 @@ Node* firstChild(const Node& node) { - return ComposedTreeTraversal::firstChild(node); + return FlatTreeTraversal::firstChild(node); } static Node* pseudoAwareNextSibling(const Node& node)
diff --git a/third_party/WebKit/Source/core/dom/Node.cpp b/third_party/WebKit/Source/core/dom/Node.cpp index 1bbe752..897430f 100644 --- a/third_party/WebKit/Source/core/dom/Node.cpp +++ b/third_party/WebKit/Source/core/dom/Node.cpp
@@ -54,8 +54,8 @@ #include "core/dom/Text.h" #include "core/dom/TreeScopeAdopter.h" #include "core/dom/UserActionElementSet.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" #include "core/dom/shadow/ElementShadow.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/InsertionPoint.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/EditingUtilities.h" @@ -760,7 +760,7 @@ bool Node::isInert() const { const HTMLDialogElement* dialog = document().activeModalDialog(); - if (dialog && this != document() && (!canParticipateInComposedTree() || !ComposedTreeTraversal::containsIncludingPseudoElement(*dialog, *this))) + if (dialog && this != document() && (!canParticipateInFlatTree() || !FlatTreeTraversal::containsIncludingPseudoElement(*dialog, *this))) return true; return document().ownerElement() && document().ownerElement()->isInert(); } @@ -963,11 +963,11 @@ if (style.userDrag() == DRAG_ELEMENT && style.userSelect() == SELECT_NONE) return false; } - ContainerNode* parent = ComposedTreeTraversal::parent(*this); + ContainerNode* parent = FlatTreeTraversal::parent(*this); return parent ? parent->canStartSelection() : true; } -bool Node::canParticipateInComposedTree() const +bool Node::canParticipateInFlatTree() const { return !isShadowRoot() && !isSlotOrActiveInsertionPoint(); } @@ -1565,9 +1565,9 @@ showTreeAndMark(this, "*"); } -void Node::showTreeForThisInComposedTree() const +void Node::showTreeForThisInFlatTree() const { - showTreeAndMarkInComposedTree(this, "*"); + showTreeAndMarkInFlatTree(this, "*"); } void Node::showNodePathForThis() const @@ -1659,9 +1659,9 @@ } } -static void traverseTreeAndMarkInComposedTree(const String& baseIndent, const Node* rootNode, const Node* markedNode1, const char* markedLabel1, const Node* markedNode2, const char* markedLabel2) +static void traverseTreeAndMarkInFlatTree(const String& baseIndent, const Node* rootNode, const Node* markedNode1, const char* markedLabel1, const Node* markedNode2, const char* markedLabel2) { - for (const Node* node = rootNode; node; node = ComposedTreeTraversal::nextSibling(*node)) { + for (const Node* node = rootNode; node; node = FlatTreeTraversal::nextSibling(*node)) { StringBuilder indent; if (node == markedNode1) indent.append(markedLabel1); @@ -1671,9 +1671,9 @@ node->showNode(indent.toString().utf8().data()); indent.append('\t'); - Node* child = ComposedTreeTraversal::firstChild(*node); + Node* child = FlatTreeTraversal::firstChild(*node); if (child) - traverseTreeAndMarkInComposedTree(indent.toString(), child, markedNode1, markedLabel1, markedNode2, markedLabel2); + traverseTreeAndMarkInFlatTree(indent.toString(), child, markedNode1, markedLabel1, markedNode2, markedLabel2); } } @@ -1689,7 +1689,7 @@ traverseTreeAndMark(startingIndent, rootNode, markedNode1, markedLabel1, markedNode2, markedLabel2); } -void Node::showTreeAndMarkInComposedTree(const Node* markedNode1, const char* markedLabel1, const Node* markedNode2, const char* markedLabel2) const +void Node::showTreeAndMarkInFlatTree(const Node* markedNode1, const char* markedLabel1, const Node* markedNode2, const char* markedLabel2) const { const Node* rootNode; const Node* node = this; @@ -1698,7 +1698,7 @@ rootNode = node; String startingIndent; - traverseTreeAndMarkInComposedTree(startingIndent, rootNode, markedNode1, markedLabel1, markedNode2, markedLabel2); + traverseTreeAndMarkInFlatTree(startingIndent, rootNode, markedNode1, markedLabel1, markedNode2, markedLabel2); } void Node::formatForDebugger(char* buffer, unsigned length) const @@ -1757,7 +1757,7 @@ Element* Node::enclosingLinkEventParentOrSelf() const { const Node* result = nullptr; - for (const Node* node = this; node; node = ComposedTreeTraversal::parent(*node)) { + for (const Node* node = this; node; node = FlatTreeTraversal::parent(*node)) { // For imagemaps, the enclosing link node is the associated area element not the image itself. // So we don't let images be the enclosingLinkNode, even though isLink sometimes returns true // for them.
diff --git a/third_party/WebKit/Source/core/dom/Node.h b/third_party/WebKit/Source/core/dom/Node.h index 7d05ca56..fced988a 100644 --- a/third_party/WebKit/Source/core/dom/Node.h +++ b/third_party/WebKit/Source/core/dom/Node.h
@@ -297,7 +297,7 @@ bool isShadowRoot() const { return isDocumentFragment() && isTreeScope(); } bool isInsertionPoint() const { return getFlag(IsInsertionPointFlag); } - bool canParticipateInComposedTree() const; + bool canParticipateInFlatTree() const; bool isSlotOrActiveInsertionPoint() const; bool hasCustomStyleCallbacks() const { return getFlag(HasCustomStyleCallbacksFlag); } @@ -601,10 +601,10 @@ void showNode(const char* prefix = "") const; void showTreeForThis() const; - void showTreeForThisInComposedTree() const; + void showTreeForThisInFlatTree() const; void showNodePathForThis() const; void showTreeAndMark(const Node* markedNode1, const char* markedLabel1, const Node* markedNode2 = nullptr, const char* markedLabel2 = nullptr) const; - void showTreeAndMarkInComposedTree(const Node* markedNode1, const char* markedLabel1, const Node* markedNode2 = nullptr, const char* markedLabel2 = nullptr) const; + void showTreeAndMarkInFlatTree(const Node* markedNode1, const char* markedLabel1, const Node* markedNode2 = nullptr, const char* markedLabel2 = nullptr) const; void showTreeForThisAcrossFrame() const; #endif
diff --git a/third_party/WebKit/Source/core/dom/NodeTraversal.h b/third_party/WebKit/Source/core/dom/NodeTraversal.h index 61c2c29..9062ab4 100644 --- a/third_party/WebKit/Source/core/dom/NodeTraversal.h +++ b/third_party/WebKit/Source/core/dom/NodeTraversal.h
@@ -87,7 +87,7 @@ static Node* childAt(const Node& parent, unsigned index) { return childAtTemplate(parent, index); } static Node* childAt(const ContainerNode& parent, unsigned index) { return childAtTemplate(parent, index); } - // These functions are provided for matching with |ComposedTreeTraversal|. + // These functions are provided for matching with |FlatTreeTraversal|. static bool hasChildren(const Node& parent) { return firstChild(parent); } static bool isDescendantOf(const Node& node, const Node& other) { return node.isDescendantOf(&other); } static Node* firstChild(const Node& parent) { return parent.firstChild(); }
diff --git a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.cpp b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.cpp similarity index 81% rename from third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.cpp rename to third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.cpp index cf529209..a37c9976 100644 --- a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.cpp +++ b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.cpp
@@ -24,7 +24,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/Element.h" #include "core/dom/shadow/ElementShadow.h" @@ -43,7 +43,7 @@ return node.isInV0ShadowTree() || node.isChildOfV0ShadowHost(); } -Node* ComposedTreeTraversal::traverseChild(const Node& node, TraversalDirection direction) +Node* FlatTreeTraversal::traverseChild(const Node& node, TraversalDirection direction) { ElementShadow* shadow = shadowFor(node); if (shadow) { @@ -53,7 +53,7 @@ return resolveDistributionStartingAt(direction == TraversalDirectionForward ? node.firstChild() : node.lastChild(), direction); } -Node* ComposedTreeTraversal::resolveDistributionStartingAt(const Node* node, TraversalDirection direction) +Node* FlatTreeTraversal::resolveDistributionStartingAt(const Node* node, TraversalDirection direction) { if (!node) return nullptr; @@ -71,7 +71,7 @@ return nullptr; } -Node* ComposedTreeTraversal::v0ResolveDistributionStartingAt(const Node& node, TraversalDirection direction) +Node* FlatTreeTraversal::v0ResolveDistributionStartingAt(const Node& node, TraversalDirection direction) { ASSERT(!isHTMLSlotElement(node)); for (const Node* sibling = &node; sibling; sibling = (direction == TraversalDirectionForward ? sibling->nextSibling() : sibling->previousSibling())) { @@ -97,8 +97,8 @@ } // TODO(hayato): This may return a wrong result for a node which is not in a -// document composed tree. See ComposedTreeTraversalTest's redistribution test for details. -Node* ComposedTreeTraversal::traverseSiblings(const Node& node, TraversalDirection direction) +// document flat tree. See FlatTreeTraversalTest's redistribution test for details. +Node* FlatTreeTraversal::traverseSiblings(const Node& node, TraversalDirection direction) { if (node.isChildOfV1ShadowHost()) return traverseSiblingsForV1HostChild(node, direction); @@ -124,7 +124,7 @@ return nullptr; } -Node* ComposedTreeTraversal::traverseSiblingsForV1HostChild(const Node& node, TraversalDirection direction) +Node* FlatTreeTraversal::traverseSiblingsForV1HostChild(const Node& node, TraversalDirection direction) { HTMLSlotElement* slot = finalDestinationSlotFor(node); if (!slot) @@ -134,7 +134,7 @@ return traverseSiblings(*slot, direction); } -Node* ComposedTreeTraversal::traverseSiblingsForV0Distribution(const Node& node, TraversalDirection direction) +Node* FlatTreeTraversal::traverseSiblingsForV0Distribution(const Node& node, TraversalDirection direction) { const InsertionPoint* finalDestination = resolveReprojection(&node); if (!finalDestination) @@ -145,9 +145,9 @@ } -ContainerNode* ComposedTreeTraversal::traverseParent(const Node& node, ParentTraversalDetails* details) +ContainerNode* FlatTreeTraversal::traverseParent(const Node& node, ParentTraversalDetails* details) { - // TODO(hayato): Stop this hack for a pseudo element because a pseudo element is not a child of its parentOrShadowHostNode() in a composed tree. + // TODO(hayato): Stop this hack for a pseudo element because a pseudo element is not a child of its parentOrShadowHostNode() in a flat tree. if (node.isPseudoElement()) return node.parentOrShadowHostNode(); @@ -173,7 +173,7 @@ return traverseParentOrHost(node); } -ContainerNode* ComposedTreeTraversal::traverseParentForV0(const Node& node, ParentTraversalDetails* details) +ContainerNode* FlatTreeTraversal::traverseParentForV0(const Node& node, ParentTraversalDetails* details) { if (shadowWhereNodeCanBeDistributed(node)) { if (const InsertionPoint* insertionPoint = resolveReprojection(&node)) { @@ -192,7 +192,7 @@ return parent; } -ContainerNode* ComposedTreeTraversal::traverseParentOrHost(const Node& node) +ContainerNode* FlatTreeTraversal::traverseParentOrHost(const Node& node) { ContainerNode* parent = node.parentNode(); if (!parent) @@ -206,7 +206,7 @@ return shadowRoot->host(); } -Node* ComposedTreeTraversal::childAt(const Node& node, unsigned index) +Node* FlatTreeTraversal::childAt(const Node& node, unsigned index) { assertPrecondition(node); Node* child = traverseFirstChild(node); @@ -216,18 +216,18 @@ return child; } -Node* ComposedTreeTraversal::nextSkippingChildren(const Node& node) +Node* FlatTreeTraversal::nextSkippingChildren(const Node& node) { if (Node* nextSibling = traverseNextSibling(node)) return nextSibling; return traverseNextAncestorSibling(node); } -bool ComposedTreeTraversal::containsIncludingPseudoElement(const ContainerNode& container, const Node& node) +bool FlatTreeTraversal::containsIncludingPseudoElement(const ContainerNode& container, const Node& node) { assertPrecondition(container); assertPrecondition(node); - // This can be slower than ComposedTreeTraversal::contains() because we + // This can be slower than FlatTreeTraversal::contains() because we // can't early exit even when container doesn't have children. for (const Node* current = &node; current; current = traverseParent(*current)) { if (current == &container) @@ -236,7 +236,7 @@ return false; } -Node* ComposedTreeTraversal::previousSkippingChildren(const Node& node) +Node* FlatTreeTraversal::previousSkippingChildren(const Node& node) { if (Node* previousSibling = traversePreviousSibling(node)) return previousSibling; @@ -245,19 +245,19 @@ static Node* previousAncestorSiblingPostOrder(const Node& current, const Node* stayWithin) { - ASSERT(!ComposedTreeTraversal::previousSibling(current)); - for (Node* parent = ComposedTreeTraversal::parent(current); parent; parent = ComposedTreeTraversal::parent(*parent)) { + ASSERT(!FlatTreeTraversal::previousSibling(current)); + for (Node* parent = FlatTreeTraversal::parent(current); parent; parent = FlatTreeTraversal::parent(*parent)) { if (parent == stayWithin) return nullptr; - if (Node* previousSibling = ComposedTreeTraversal::previousSibling(*parent)) + if (Node* previousSibling = FlatTreeTraversal::previousSibling(*parent)) return previousSibling; } return nullptr; } // TODO(yosin) We should consider introducing template class to share code -// between DOM tree traversal and composed tree tarversal. -Node* ComposedTreeTraversal::previousPostOrder(const Node& current, const Node* stayWithin) +// between DOM tree traversal and flat tree tarversal. +Node* FlatTreeTraversal::previousPostOrder(const Node& current, const Node* stayWithin) { assertPrecondition(current); if (stayWithin) @@ -275,7 +275,7 @@ return previousAncestorSiblingPostOrder(current, stayWithin); } -bool ComposedTreeTraversal::isDescendantOf(const Node& node, const Node& other) +bool FlatTreeTraversal::isDescendantOf(const Node& node, const Node& other) { assertPrecondition(node); assertPrecondition(other); @@ -288,20 +288,20 @@ return false; } -Node* ComposedTreeTraversal::commonAncestor(const Node& nodeA, const Node& nodeB) +Node* FlatTreeTraversal::commonAncestor(const Node& nodeA, const Node& nodeB) { assertPrecondition(nodeA); assertPrecondition(nodeB); Node* result = nodeA.commonAncestor(nodeB, [](const Node& node) { - return ComposedTreeTraversal::parent(node); + return FlatTreeTraversal::parent(node); }); assertPostcondition(result); return result; } -Node* ComposedTreeTraversal::traverseNextAncestorSibling(const Node& node) +Node* FlatTreeTraversal::traverseNextAncestorSibling(const Node& node) { ASSERT(!traverseNextSibling(node)); for (Node* parent = traverseParent(node); parent; parent = traverseParent(*parent)) { @@ -311,7 +311,7 @@ return nullptr; } -Node* ComposedTreeTraversal::traversePreviousAncestorSibling(const Node& node) +Node* FlatTreeTraversal::traversePreviousAncestorSibling(const Node& node) { ASSERT(!traversePreviousSibling(node)); for (Node* parent = traverseParent(node); parent; parent = traverseParent(*parent)) { @@ -321,7 +321,7 @@ return nullptr; } -unsigned ComposedTreeTraversal::index(const Node& node) +unsigned FlatTreeTraversal::index(const Node& node) { assertPrecondition(node); unsigned count = 0; @@ -330,7 +330,7 @@ return count; } -unsigned ComposedTreeTraversal::countChildren(const Node& node) +unsigned FlatTreeTraversal::countChildren(const Node& node) { assertPrecondition(node); unsigned count = 0; @@ -339,7 +339,7 @@ return count; } -Node* ComposedTreeTraversal::lastWithin(const Node& node) +Node* FlatTreeTraversal::lastWithin(const Node& node) { assertPrecondition(node); Node* descendant = traverseLastChild(node); @@ -349,7 +349,7 @@ return descendant; } -Node& ComposedTreeTraversal::lastWithinOrSelf(const Node& node) +Node& FlatTreeTraversal::lastWithinOrSelf(const Node& node) { assertPrecondition(node); Node* lastDescendant = lastWithin(node);
diff --git a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.h b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h similarity index 79% rename from third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.h rename to third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h index 2539ba8..6a25a7a 100644 --- a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversal.h +++ b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversal.h
@@ -24,8 +24,8 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#ifndef ComposedTreeTraversal_h -#define ComposedTreeTraversal_h +#ifndef FlatTreeTraversal_h +#define FlatTreeTraversal_h #include "core/CoreExport.h" #include "core/dom/Document.h" @@ -40,18 +40,18 @@ class HTMLSlotElement; class Node; -// Composed tree version of |NodeTraversal|. +// Flat tree version of |NodeTraversal|. // // None of member functions takes a |ShadowRoot| or an active insertion point, // e.g. roughly speaking <content> and <shadow> in the shadow tree, see // |InsertionPoint::isActive()| for details of active insertion points, since -// they aren't appeared in the composed tree. |assertPrecondition()| and +// they aren't appeared in the flat tree. |assertPrecondition()| and // |assertPostCondition()| check this condition. // // FIXME: Make some functions inline to optimise the performance. // https://bugs.webkit.org/show_bug.cgi?id=82702 -class CORE_EXPORT ComposedTreeTraversal { - STATIC_ONLY(ComposedTreeTraversal); +class CORE_EXPORT FlatTreeTraversal { + STATIC_ONLY(FlatTreeTraversal); public: typedef LayoutTreeBuilderTraversal::ParentDetails ParentTraversalDetails; @@ -73,20 +73,20 @@ // the children, this function returns |nullptr|. static Node* childAt(const Node&, unsigned index); - // Composed tree version of |NodeTraversal::nextSkippingChildren()|. This + // Flat tree version of |NodeTraversal::nextSkippingChildren()|. This // function is similar to |next()| but skips child nodes of a specified // node. static Node* nextSkippingChildren(const Node&); static Node* nextSkippingChildren(const Node&, const Node* stayWithin); - // Composed tree version of |NodeTraversal::previousSkippingChildren()| + // Flat tree version of |NodeTraversal::previousSkippingChildren()| // similar to |previous()| but skipping child nodes of the specified node. static Node* previousSkippingChildren(const Node&); // Like previous, but visits parents before their children. static Node* previousPostOrder(const Node&, const Node* stayWithin = nullptr); - // Composed tree version of |Node::isDescendantOf(other)|. This function + // Flat tree version of |Node::isDescendantOf(other)|. This function // returns true if |other| contains |node|, otherwise returns // false. If |other| is |node|, this function returns false. static bool isDescendantOf(const Node& /*node*/, const Node& other); @@ -104,14 +104,14 @@ // returns |nullptr|. static Node* commonAncestor(const Node& nodeA, const Node& nodeB); - // Composed tree version of |Node::nodeIndex()|. This function returns a + // Flat tree version of |Node::nodeIndex()|. This function returns a // zero base position number of the specified node in child nodes list, or // zero if the specified node has no parent. static unsigned index(const Node&); - // Composed tree version of |ContainerNode::countChildren()|. This function + // Flat tree version of |ContainerNode::countChildren()|. This function // returns the number of the child nodes of the specified node in the - // composed tree. + // flat tree. static unsigned countChildren(const Node&); static Node* lastWithin(const Node&); @@ -127,7 +127,7 @@ { #if ENABLE(ASSERT) ASSERT(!node.needsDistributionRecalc()); - ASSERT(node.canParticipateInComposedTree()); + ASSERT(node.canParticipateInFlatTree()); #endif } @@ -167,7 +167,7 @@ static Node* traversePreviousAncestorSibling(const Node&); }; -inline ContainerNode* ComposedTreeTraversal::parent(const Node& node, ParentTraversalDetails* details) +inline ContainerNode* FlatTreeTraversal::parent(const Node& node, ParentTraversalDetails* details) { assertPrecondition(node); ContainerNode* result = traverseParent(node, details); @@ -175,13 +175,13 @@ return result; } -inline Element* ComposedTreeTraversal::parentElement(const Node& node) +inline Element* FlatTreeTraversal::parentElement(const Node& node) { - ContainerNode* parent = ComposedTreeTraversal::parent(node); + ContainerNode* parent = FlatTreeTraversal::parent(node); return parent && parent->isElementNode() ? toElement(parent) : nullptr; } -inline Node* ComposedTreeTraversal::nextSibling(const Node& node) +inline Node* FlatTreeTraversal::nextSibling(const Node& node) { assertPrecondition(node); Node* result = traverseSiblings(node, TraversalDirectionForward); @@ -189,7 +189,7 @@ return result; } -inline Node* ComposedTreeTraversal::previousSibling(const Node& node) +inline Node* FlatTreeTraversal::previousSibling(const Node& node) { assertPrecondition(node); Node* result = traverseSiblings(node, TraversalDirectionBackward); @@ -197,7 +197,7 @@ return result; } -inline Node* ComposedTreeTraversal::next(const Node& node) +inline Node* FlatTreeTraversal::next(const Node& node) { assertPrecondition(node); Node* result = traverseNext(node); @@ -205,7 +205,7 @@ return result; } -inline Node* ComposedTreeTraversal::next(const Node& node, const Node* stayWithin) +inline Node* FlatTreeTraversal::next(const Node& node, const Node* stayWithin) { assertPrecondition(node); Node* result = traverseNext(node, stayWithin); @@ -213,7 +213,7 @@ return result; } -inline Node* ComposedTreeTraversal::nextSkippingChildren(const Node& node, const Node* stayWithin) +inline Node* FlatTreeTraversal::nextSkippingChildren(const Node& node, const Node* stayWithin) { assertPrecondition(node); Node* result = traverseNextSkippingChildren(node, stayWithin); @@ -221,7 +221,7 @@ return result; } -inline Node* ComposedTreeTraversal::traverseNext(const Node& node) +inline Node* FlatTreeTraversal::traverseNext(const Node& node) { if (Node* next = traverseFirstChild(node)) return next; @@ -232,14 +232,14 @@ return nullptr; } -inline Node* ComposedTreeTraversal::traverseNext(const Node& node, const Node* stayWithin) +inline Node* FlatTreeTraversal::traverseNext(const Node& node, const Node* stayWithin) { if (Node* next = traverseFirstChild(node)) return next; return traverseNextSkippingChildren(node, stayWithin); } -inline Node* ComposedTreeTraversal::traverseNextSkippingChildren(const Node& node, const Node* stayWithin) +inline Node* FlatTreeTraversal::traverseNextSkippingChildren(const Node& node, const Node* stayWithin) { for (const Node* next = &node; next; next = traverseParent(*next)) { if (next == stayWithin) @@ -250,7 +250,7 @@ return nullptr; } -inline Node* ComposedTreeTraversal::previous(const Node& node) +inline Node* FlatTreeTraversal::previous(const Node& node) { assertPrecondition(node); Node* result = traversePrevious(node); @@ -258,7 +258,7 @@ return result; } -inline Node* ComposedTreeTraversal::traversePrevious(const Node& node) +inline Node* FlatTreeTraversal::traversePrevious(const Node& node) { if (Node* previous = traversePreviousSibling(node)) { while (Node* child = traverseLastChild(*previous)) @@ -268,7 +268,7 @@ return traverseParent(node); } -inline Node* ComposedTreeTraversal::firstChild(const Node& node) +inline Node* FlatTreeTraversal::firstChild(const Node& node) { assertPrecondition(node); Node* result = traverseChild(node, TraversalDirectionForward); @@ -276,7 +276,7 @@ return result; } -inline Node* ComposedTreeTraversal::lastChild(const Node& node) +inline Node* FlatTreeTraversal::lastChild(const Node& node) { assertPrecondition(node); Node* result = traverseLastChild(node); @@ -284,27 +284,27 @@ return result; } -inline bool ComposedTreeTraversal::hasChildren(const Node& node) +inline bool FlatTreeTraversal::hasChildren(const Node& node) { return firstChild(node); } -inline Node* ComposedTreeTraversal::traverseNextSibling(const Node& node) +inline Node* FlatTreeTraversal::traverseNextSibling(const Node& node) { return traverseSiblings(node, TraversalDirectionForward); } -inline Node* ComposedTreeTraversal::traversePreviousSibling(const Node& node) +inline Node* FlatTreeTraversal::traversePreviousSibling(const Node& node) { return traverseSiblings(node, TraversalDirectionBackward); } -inline Node* ComposedTreeTraversal::traverseFirstChild(const Node& node) +inline Node* FlatTreeTraversal::traverseFirstChild(const Node& node) { return traverseChild(node, TraversalDirectionForward); } -inline Node* ComposedTreeTraversal::traverseLastChild(const Node& node) +inline Node* FlatTreeTraversal::traverseLastChild(const Node& node) { return traverseChild(node, TraversalDirectionBackward); }
diff --git a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversalTest.cpp similarity index 74% rename from third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp rename to third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversalTest.cpp index 12f29ac0..2bc828c9 100644 --- a/third_party/WebKit/Source/core/dom/shadow/ComposedTreeTraversalTest.cpp +++ b/third_party/WebKit/Source/core/dom/shadow/FlatTreeTraversalTest.cpp
@@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "bindings/core/v8/ExceptionStatePlaceholder.h" #include "core/dom/Document.h" @@ -25,13 +25,13 @@ namespace blink { -class ComposedTreeTraversalTest : public ::testing::Test { +class FlatTreeTraversalTest : public ::testing::Test { protected: HTMLDocument& document() const; // Sets |mainHTML| to BODY element with |innerHTML| property and attaches // shadow root to child with |shadowHTML|, then update distribution for - // calling member functions in |ComposedTreeTraversal|. + // calling member functions in |FlatTreeTraversal|. void setupSampleHTML(const char* mainHTML, const char* shadowHTML, unsigned); void setupDocumentTree(const char* mainHTML); @@ -46,19 +46,19 @@ OwnPtr<DummyPageHolder> m_dummyPageHolder; }; -void ComposedTreeTraversalTest::SetUp() +void FlatTreeTraversalTest::SetUp() { m_dummyPageHolder = DummyPageHolder::create(IntSize(800, 600)); m_document = toHTMLDocument(&m_dummyPageHolder->document()); ASSERT(m_document); } -HTMLDocument& ComposedTreeTraversalTest::document() const +HTMLDocument& FlatTreeTraversalTest::document() const { return *m_document; } -void ComposedTreeTraversalTest::setupSampleHTML(const char* mainHTML, const char* shadowHTML, unsigned index) +void FlatTreeTraversalTest::setupSampleHTML(const char* mainHTML, const char* shadowHTML, unsigned index) { RefPtrWillBeRawPtr<Element> body = document().body(); body->setInnerHTML(String::fromUTF8(mainHTML), ASSERT_NO_EXCEPTION); @@ -68,20 +68,20 @@ body->updateDistribution(); } -void ComposedTreeTraversalTest::setupDocumentTree(const char* mainHTML) +void FlatTreeTraversalTest::setupDocumentTree(const char* mainHTML) { RefPtrWillBeRawPtr<Element> body = document().body(); body->setInnerHTML(String::fromUTF8(mainHTML), ASSERT_NO_EXCEPTION); } -void ComposedTreeTraversalTest::attachV0ShadowRoot(Element& shadowHost, const char* shadowInnerHTML) +void FlatTreeTraversalTest::attachV0ShadowRoot(Element& shadowHost, const char* shadowInnerHTML) { RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = shadowHost.createShadowRootInternal(ShadowRootType::V0, ASSERT_NO_EXCEPTION); shadowRoot->setInnerHTML(String::fromUTF8(shadowInnerHTML), ASSERT_NO_EXCEPTION); document().body()->updateDistribution(); } -void ComposedTreeTraversalTest::attachOpenShadowRoot(Element& shadowHost, const char* shadowInnerHTML) +void FlatTreeTraversalTest::attachOpenShadowRoot(Element& shadowHost, const char* shadowInnerHTML) { RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = shadowHost.createShadowRootInternal(ShadowRootType::Open, ASSERT_NO_EXCEPTION); shadowRoot->setInnerHTML(String::fromUTF8(shadowInnerHTML), ASSERT_NO_EXCEPTION); @@ -90,9 +90,9 @@ void testCommonAncestor(Node* expectedResult, const Node& nodeA, const Node& nodeB) { - Node* result1 = ComposedTreeTraversal::commonAncestor(nodeA, nodeB); + Node* result1 = FlatTreeTraversal::commonAncestor(nodeA, nodeB); EXPECT_EQ(expectedResult, result1) << "commonAncestor(" << nodeA.textContent() << "," << nodeB.textContent() << ")"; - Node* result2 = ComposedTreeTraversal::commonAncestor(nodeB, nodeA); + Node* result2 = FlatTreeTraversal::commonAncestor(nodeB, nodeA); EXPECT_EQ(expectedResult, result2) << "commonAncestor(" << nodeB.textContent() << "," << nodeA.textContent() << ")"; } @@ -102,7 +102,7 @@ // - hasChildren // - index // - isDescendantOf -TEST_F(ComposedTreeTraversalTest, childAt) +TEST_F(FlatTreeTraversalTest, childAt) { const char* mainHTML = "<div id='m0'>" @@ -132,31 +132,31 @@ const unsigned numberOfChildNodes = 5; Node* expectedChildNodes[5] = { s00.get(), m01.get(), s02.get(), s03.get(), s04.get() }; - ASSERT_EQ(numberOfChildNodes, ComposedTreeTraversal::countChildren(*shadowHost)); - EXPECT_TRUE(ComposedTreeTraversal::hasChildren(*shadowHost)); + ASSERT_EQ(numberOfChildNodes, FlatTreeTraversal::countChildren(*shadowHost)); + EXPECT_TRUE(FlatTreeTraversal::hasChildren(*shadowHost)); for (unsigned index = 0; index < numberOfChildNodes; ++index) { - Node* child = ComposedTreeTraversal::childAt(*shadowHost, index); + Node* child = FlatTreeTraversal::childAt(*shadowHost, index); EXPECT_EQ(expectedChildNodes[index], child) - << "ComposedTreeTraversal::childAt(*shadowHost, " << index << ")"; - EXPECT_EQ(index, ComposedTreeTraversal::index(*child)) - << "ComposedTreeTraversal::index(ComposedTreeTraversal(*shadowHost, " << index << "))"; - EXPECT_TRUE(ComposedTreeTraversal::isDescendantOf(*child, *shadowHost)) - << "ComposedTreeTraversal::isDescendantOf(*ComposedTreeTraversal(*shadowHost, " << index << "), *shadowHost)"; + << "FlatTreeTraversal::childAt(*shadowHost, " << index << ")"; + EXPECT_EQ(index, FlatTreeTraversal::index(*child)) + << "FlatTreeTraversal::index(FlatTreeTraversal(*shadowHost, " << index << "))"; + EXPECT_TRUE(FlatTreeTraversal::isDescendantOf(*child, *shadowHost)) + << "FlatTreeTraversal::isDescendantOf(*FlatTreeTraversal(*shadowHost, " << index << "), *shadowHost)"; } - EXPECT_EQ(nullptr, ComposedTreeTraversal::childAt(*shadowHost, numberOfChildNodes + 1)) + EXPECT_EQ(nullptr, FlatTreeTraversal::childAt(*shadowHost, numberOfChildNodes + 1)) << "Out of bounds childAt() returns nullptr."; // Distribute node |m00| is child of node in shadow tree |s03|. - EXPECT_EQ(m00.get(), ComposedTreeTraversal::childAt(*s03, 0)); + EXPECT_EQ(m00.get(), FlatTreeTraversal::childAt(*s03, 0)); } // Test case for // - commonAncestor // - isDescendantOf -TEST_F(ComposedTreeTraversalTest, commonAncestor) +TEST_F(FlatTreeTraversalTest, commonAncestor) { - // We build following composed tree: + // We build following flat tree: // ____BODY___ // | | | // m0 m1 m2 m1 is shadow host having m10, m11, m12. @@ -245,7 +245,7 @@ // Test case for // - nextSkippingChildren // - previousSkippingChildren -TEST_F(ComposedTreeTraversalTest, nextSkippingChildren) +TEST_F(FlatTreeTraversalTest, nextSkippingChildren) { const char* mainHTML = "<div id='m0'>m0</div>" @@ -277,33 +277,33 @@ RefPtrWillBeRawPtr<Element> s120 = shadowRoot->querySelector("#s120", ASSERT_NO_EXCEPTION); // Main tree node to main tree node - EXPECT_EQ(*m1, ComposedTreeTraversal::nextSkippingChildren(*m0)); - EXPECT_EQ(*m0, ComposedTreeTraversal::previousSkippingChildren(*m1)); + EXPECT_EQ(*m1, FlatTreeTraversal::nextSkippingChildren(*m0)); + EXPECT_EQ(*m0, FlatTreeTraversal::previousSkippingChildren(*m1)); // Distribute node to main tree node - EXPECT_EQ(*m2, ComposedTreeTraversal::nextSkippingChildren(*m10)); - EXPECT_EQ(*m1, ComposedTreeTraversal::previousSkippingChildren(*m2)); + EXPECT_EQ(*m2, FlatTreeTraversal::nextSkippingChildren(*m10)); + EXPECT_EQ(*m1, FlatTreeTraversal::previousSkippingChildren(*m2)); // Distribute node to node in shadow tree - EXPECT_EQ(*s11, ComposedTreeTraversal::nextSkippingChildren(*m11)); - EXPECT_EQ(*m11, ComposedTreeTraversal::previousSkippingChildren(*s11)); + EXPECT_EQ(*s11, FlatTreeTraversal::nextSkippingChildren(*m11)); + EXPECT_EQ(*m11, FlatTreeTraversal::previousSkippingChildren(*s11)); // Node in shadow tree to distributed node - EXPECT_EQ(*s11, ComposedTreeTraversal::nextSkippingChildren(*m11)); - EXPECT_EQ(*m11, ComposedTreeTraversal::previousSkippingChildren(*s11)); + EXPECT_EQ(*s11, FlatTreeTraversal::nextSkippingChildren(*m11)); + EXPECT_EQ(*m11, FlatTreeTraversal::previousSkippingChildren(*s11)); - EXPECT_EQ(*m10, ComposedTreeTraversal::nextSkippingChildren(*s120)); - EXPECT_EQ(*s120, ComposedTreeTraversal::previousSkippingChildren(*m10)); + EXPECT_EQ(*m10, FlatTreeTraversal::nextSkippingChildren(*s120)); + EXPECT_EQ(*s120, FlatTreeTraversal::previousSkippingChildren(*m10)); // Node in shadow tree to main tree - EXPECT_EQ(*m2, ComposedTreeTraversal::nextSkippingChildren(*s12)); - EXPECT_EQ(*m1, ComposedTreeTraversal::previousSkippingChildren(*m2)); + EXPECT_EQ(*m2, FlatTreeTraversal::nextSkippingChildren(*s12)); + EXPECT_EQ(*m1, FlatTreeTraversal::previousSkippingChildren(*m2)); } // Test case for // - lastWithin // - lastWithinOrSelf -TEST_F(ComposedTreeTraversalTest, lastWithin) +TEST_F(FlatTreeTraversalTest, lastWithin) { const char* mainHTML = "<div id='m0'>m0</div>" @@ -332,23 +332,23 @@ RefPtrWillBeRawPtr<Element> s11 = shadowRoot->querySelector("#s11", ASSERT_NO_EXCEPTION); RefPtrWillBeRawPtr<Element> s12 = shadowRoot->querySelector("#s12", ASSERT_NO_EXCEPTION); - EXPECT_EQ(m0->firstChild(), ComposedTreeTraversal::lastWithin(*m0)); - EXPECT_EQ(*m0->firstChild(), ComposedTreeTraversal::lastWithinOrSelf(*m0)); + EXPECT_EQ(m0->firstChild(), FlatTreeTraversal::lastWithin(*m0)); + EXPECT_EQ(*m0->firstChild(), FlatTreeTraversal::lastWithinOrSelf(*m0)); - EXPECT_EQ(m10->firstChild(), ComposedTreeTraversal::lastWithin(*m1)); - EXPECT_EQ(*m10->firstChild(), ComposedTreeTraversal::lastWithinOrSelf(*m1)); + EXPECT_EQ(m10->firstChild(), FlatTreeTraversal::lastWithin(*m1)); + EXPECT_EQ(*m10->firstChild(), FlatTreeTraversal::lastWithinOrSelf(*m1)); - EXPECT_EQ(nullptr, ComposedTreeTraversal::lastWithin(*m2)); - EXPECT_EQ(*m2, ComposedTreeTraversal::lastWithinOrSelf(*m2)); + EXPECT_EQ(nullptr, FlatTreeTraversal::lastWithin(*m2)); + EXPECT_EQ(*m2, FlatTreeTraversal::lastWithinOrSelf(*m2)); - EXPECT_EQ(s11->firstChild(), ComposedTreeTraversal::lastWithin(*s11)); - EXPECT_EQ(*s11->firstChild(), ComposedTreeTraversal::lastWithinOrSelf(*s11)); + EXPECT_EQ(s11->firstChild(), FlatTreeTraversal::lastWithin(*s11)); + EXPECT_EQ(*s11->firstChild(), FlatTreeTraversal::lastWithinOrSelf(*s11)); - EXPECT_EQ(m10->firstChild(), ComposedTreeTraversal::lastWithin(*s12)); - EXPECT_EQ(*m10->firstChild(), ComposedTreeTraversal::lastWithinOrSelf(*s12)); + EXPECT_EQ(m10->firstChild(), FlatTreeTraversal::lastWithin(*s12)); + EXPECT_EQ(*m10->firstChild(), FlatTreeTraversal::lastWithinOrSelf(*s12)); } -TEST_F(ComposedTreeTraversalTest, previousPostOrder) +TEST_F(FlatTreeTraversalTest, previousPostOrder) { const char* mainHTML = "<div id='m0'>m0</div>" @@ -379,24 +379,24 @@ RefPtrWillBeRawPtr<Element> s12 = shadowRoot->querySelector("#s12", ASSERT_NO_EXCEPTION); RefPtrWillBeRawPtr<Element> s120 = shadowRoot->querySelector("#s120", ASSERT_NO_EXCEPTION); - EXPECT_EQ(*m0->firstChild(), ComposedTreeTraversal::previousPostOrder(*m0)); - EXPECT_EQ(*s12, ComposedTreeTraversal::previousPostOrder(*m1)); - EXPECT_EQ(*m10->firstChild(), ComposedTreeTraversal::previousPostOrder(*m10)); - EXPECT_EQ(*s120, ComposedTreeTraversal::previousPostOrder(*m10->firstChild())); - EXPECT_EQ(*s120, ComposedTreeTraversal::previousPostOrder(*m10->firstChild(), s12.get())); - EXPECT_EQ(*m11->firstChild(), ComposedTreeTraversal::previousPostOrder(*m11)); - EXPECT_EQ(*m0, ComposedTreeTraversal::previousPostOrder(*m11->firstChild())); - EXPECT_EQ(nullptr, ComposedTreeTraversal::previousPostOrder(*m11->firstChild(), m11.get())); - EXPECT_EQ(*m2->firstChild(), ComposedTreeTraversal::previousPostOrder(*m2)); + EXPECT_EQ(*m0->firstChild(), FlatTreeTraversal::previousPostOrder(*m0)); + EXPECT_EQ(*s12, FlatTreeTraversal::previousPostOrder(*m1)); + EXPECT_EQ(*m10->firstChild(), FlatTreeTraversal::previousPostOrder(*m10)); + EXPECT_EQ(*s120, FlatTreeTraversal::previousPostOrder(*m10->firstChild())); + EXPECT_EQ(*s120, FlatTreeTraversal::previousPostOrder(*m10->firstChild(), s12.get())); + EXPECT_EQ(*m11->firstChild(), FlatTreeTraversal::previousPostOrder(*m11)); + EXPECT_EQ(*m0, FlatTreeTraversal::previousPostOrder(*m11->firstChild())); + EXPECT_EQ(nullptr, FlatTreeTraversal::previousPostOrder(*m11->firstChild(), m11.get())); + EXPECT_EQ(*m2->firstChild(), FlatTreeTraversal::previousPostOrder(*m2)); - EXPECT_EQ(*s11->firstChild(), ComposedTreeTraversal::previousPostOrder(*s11)); - EXPECT_EQ(*m10, ComposedTreeTraversal::previousPostOrder(*s12)); - EXPECT_EQ(*s120->firstChild(), ComposedTreeTraversal::previousPostOrder(*s120)); - EXPECT_EQ(*s11, ComposedTreeTraversal::previousPostOrder(*s120->firstChild())); - EXPECT_EQ(nullptr, ComposedTreeTraversal::previousPostOrder(*s120->firstChild(), s12.get())); + EXPECT_EQ(*s11->firstChild(), FlatTreeTraversal::previousPostOrder(*s11)); + EXPECT_EQ(*m10, FlatTreeTraversal::previousPostOrder(*s12)); + EXPECT_EQ(*s120->firstChild(), FlatTreeTraversal::previousPostOrder(*s120)); + EXPECT_EQ(*s11, FlatTreeTraversal::previousPostOrder(*s120->firstChild())); + EXPECT_EQ(nullptr, FlatTreeTraversal::previousPostOrder(*s120->firstChild(), s12.get())); } -TEST_F(ComposedTreeTraversalTest, nextSiblingNotInDocumentComposedTree) +TEST_F(FlatTreeTraversalTest, nextSiblingNotInDocumentFlatTree) { const char* mainHTML = "<div id='m0'>m0</div>" @@ -412,11 +412,11 @@ RefPtrWillBeRawPtr<Element> body = document().body(); RefPtrWillBeRawPtr<Element> m10 = body->querySelector("#m10", ASSERT_NO_EXCEPTION); - EXPECT_EQ(nullptr, ComposedTreeTraversal::nextSibling(*m10)); - EXPECT_EQ(nullptr, ComposedTreeTraversal::previousSibling(*m10)); + EXPECT_EQ(nullptr, FlatTreeTraversal::nextSibling(*m10)); + EXPECT_EQ(nullptr, FlatTreeTraversal::previousSibling(*m10)); } -TEST_F(ComposedTreeTraversalTest, redistribution) +TEST_F(FlatTreeTraversalTest, redistribution) { const char* mainHTML = "<div id='m0'>m0</div>" @@ -450,16 +450,16 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot2 = s1->openShadowRoot(); RefPtrWillBeRawPtr<Element> s21 = shadowRoot2->querySelector("#s21", ASSERT_NO_EXCEPTION); - EXPECT_EQ(s21.get(), ComposedTreeTraversal::nextSibling(*m10)); - EXPECT_EQ(m10.get(), ComposedTreeTraversal::previousSibling(*s21)); + EXPECT_EQ(s21.get(), FlatTreeTraversal::nextSibling(*m10)); + EXPECT_EQ(m10.get(), FlatTreeTraversal::previousSibling(*s21)); - // ComposedTreeTraversal::traverseSiblings does not work for a node which is not in a document composed tree. - // e.g. The following test fails. The result of ComposedTreeTraversal::previousSibling(*m11)) will be #m10, instead of nullptr. + // FlatTreeTraversal::traverseSiblings does not work for a node which is not in a document flat tree. + // e.g. The following test fails. The result of FlatTreeTraversal::previousSibling(*m11)) will be #m10, instead of nullptr. // RefPtrWillBeRawPtr<Element> m11 = body->querySelector("#m11", ASSERT_NO_EXCEPTION); - // EXPECT_EQ(nullptr, ComposedTreeTraversal::previousSibling(*m11)); + // EXPECT_EQ(nullptr, FlatTreeTraversal::previousSibling(*m11)); } -TEST_F(ComposedTreeTraversalTest, v1Simple) +TEST_F(FlatTreeTraversalTest, v1Simple) { const char* mainHTML = "<div id='host'>" @@ -487,13 +487,13 @@ EXPECT_TRUE(slot1); EXPECT_TRUE(slot2); - EXPECT_EQ(shadowChild1.get(), ComposedTreeTraversal::firstChild(*host)); - EXPECT_EQ(child1.get(), ComposedTreeTraversal::nextSibling(*shadowChild1)); - EXPECT_EQ(child2.get(), ComposedTreeTraversal::nextSibling(*child1)); - EXPECT_EQ(shadowChild2.get(), ComposedTreeTraversal::nextSibling(*child2)); + EXPECT_EQ(shadowChild1.get(), FlatTreeTraversal::firstChild(*host)); + EXPECT_EQ(child1.get(), FlatTreeTraversal::nextSibling(*shadowChild1)); + EXPECT_EQ(child2.get(), FlatTreeTraversal::nextSibling(*child1)); + EXPECT_EQ(shadowChild2.get(), FlatTreeTraversal::nextSibling(*child2)); } -TEST_F(ComposedTreeTraversalTest, v1Redistribution) +TEST_F(FlatTreeTraversalTest, v1Redistribution) { const char* mainHTML = "<div id='d1'>" @@ -553,21 +553,21 @@ EXPECT_TRUE(d1s2); EXPECT_TRUE(d11s1); EXPECT_TRUE(d11s2); - EXPECT_EQ(d11.get(), ComposedTreeTraversal::next(*d1)); - EXPECT_EQ(d111.get(), ComposedTreeTraversal::next(*d11)); - EXPECT_EQ(d2.get(), ComposedTreeTraversal::next(*d111)); - EXPECT_EQ(d14.get(), ComposedTreeTraversal::next(*d2)); - EXPECT_EQ(d112.get(), ComposedTreeTraversal::next(*d14)); - EXPECT_EQ(d6.get(), ComposedTreeTraversal::next(*d112)); + EXPECT_EQ(d11.get(), FlatTreeTraversal::next(*d1)); + EXPECT_EQ(d111.get(), FlatTreeTraversal::next(*d11)); + EXPECT_EQ(d2.get(), FlatTreeTraversal::next(*d111)); + EXPECT_EQ(d14.get(), FlatTreeTraversal::next(*d2)); + EXPECT_EQ(d112.get(), FlatTreeTraversal::next(*d14)); + EXPECT_EQ(d6.get(), FlatTreeTraversal::next(*d112)); - EXPECT_EQ(d112.get(), ComposedTreeTraversal::previous(*d6)); + EXPECT_EQ(d112.get(), FlatTreeTraversal::previous(*d6)); - EXPECT_EQ(d11.get(), ComposedTreeTraversal::parent(*d111)); - EXPECT_EQ(d11.get(), ComposedTreeTraversal::parent(*d112)); - EXPECT_EQ(d11.get(), ComposedTreeTraversal::parent(*d2)); - EXPECT_EQ(d11.get(), ComposedTreeTraversal::parent(*d14)); - EXPECT_EQ(nullptr, ComposedTreeTraversal::parent(*d3)); - EXPECT_EQ(nullptr, ComposedTreeTraversal::parent(*d4)); + EXPECT_EQ(d11.get(), FlatTreeTraversal::parent(*d111)); + EXPECT_EQ(d11.get(), FlatTreeTraversal::parent(*d112)); + EXPECT_EQ(d11.get(), FlatTreeTraversal::parent(*d2)); + EXPECT_EQ(d11.get(), FlatTreeTraversal::parent(*d14)); + EXPECT_EQ(nullptr, FlatTreeTraversal::parent(*d3)); + EXPECT_EQ(nullptr, FlatTreeTraversal::parent(*d4)); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/EditingStrategy.cpp b/third_party/WebKit/Source/core/editing/EditingStrategy.cpp index cdf3200f..742fbb4 100644 --- a/third_party/WebKit/Source/core/editing/EditingStrategy.cpp +++ b/third_party/WebKit/Source/core/editing/EditingStrategy.cpp
@@ -27,10 +27,10 @@ template <typename Traversal> bool EditingAlgorithm<Traversal>::isEmptyNonEditableNodeInEditable(const Node* node) { - // Editability is defined the DOM tree rather than the composed tree. For example: + // Editability is defined the DOM tree rather than the flat tree. For example: // DOM: // <host><span>unedittable</span><shadowroot><div ce><content /></div></shadowroot></host> - // Composed Tree: + // Flat Tree: // <host><div ce><span1>unedittable</span></div></host> // e.g. editing/shadow/breaking-editing-boundaries.html return !Traversal::hasChildren(*node) && !node->hasEditableStyle() && node->parentNode() && node->parentNode()->hasEditableStyle(); @@ -90,6 +90,6 @@ } template class CORE_TEMPLATE_EXPORT EditingAlgorithm<NodeTraversal>; -template class CORE_TEMPLATE_EXPORT EditingAlgorithm<ComposedTreeTraversal>; +template class CORE_TEMPLATE_EXPORT EditingAlgorithm<FlatTreeTraversal>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/EditingStrategy.h b/third_party/WebKit/Source/core/editing/EditingStrategy.h index c6256ea..3e276d6 100644 --- a/third_party/WebKit/Source/core/editing/EditingStrategy.h +++ b/third_party/WebKit/Source/core/editing/EditingStrategy.h
@@ -7,7 +7,7 @@ #include "core/CoreExport.h" #include "core/dom/NodeTraversal.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "wtf/Allocator.h" namespace blink { @@ -39,12 +39,12 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT EditingAlgorithm<NodeTraversal>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT EditingAlgorithm<ComposedTreeTraversal>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT EditingAlgorithm<FlatTreeTraversal>; // DOM tree version of editing algorithm using EditingStrategy = EditingAlgorithm<NodeTraversal>; -// Composed tree version of editing algorithm -using EditingInComposedTreeStrategy = EditingAlgorithm<ComposedTreeTraversal>; +// Flat tree version of editing algorithm +using EditingInFlatTreeStrategy = EditingAlgorithm<FlatTreeTraversal>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/EditingStrategyTest.cpp b/third_party/WebKit/Source/core/editing/EditingStrategyTest.cpp index 66469a4..cf28548b 100644 --- a/third_party/WebKit/Source/core/editing/EditingStrategyTest.cpp +++ b/third_party/WebKit/Source/core/editing/EditingStrategyTest.cpp
@@ -26,10 +26,10 @@ EXPECT_EQ(1, EditingStrategy::caretMaxOffset(*one->firstChild())); EXPECT_EQ(2, EditingStrategy::caretMaxOffset(*two->firstChild())); - EXPECT_EQ(2, EditingInComposedTreeStrategy::caretMaxOffset(*host)); - EXPECT_EQ(1, EditingInComposedTreeStrategy::caretMaxOffset(*one)); - EXPECT_EQ(1, EditingInComposedTreeStrategy::caretMaxOffset(*one->firstChild())); - EXPECT_EQ(2, EditingInComposedTreeStrategy::caretMaxOffset(*two->firstChild())); + EXPECT_EQ(2, EditingInFlatTreeStrategy::caretMaxOffset(*host)); + EXPECT_EQ(1, EditingInFlatTreeStrategy::caretMaxOffset(*one)); + EXPECT_EQ(1, EditingInFlatTreeStrategy::caretMaxOffset(*one->firstChild())); + EXPECT_EQ(2, EditingInFlatTreeStrategy::caretMaxOffset(*two->firstChild())); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp index cf875b8..fed03353 100644 --- a/third_party/WebKit/Source/core/editing/EditingUtilities.cpp +++ b/third_party/WebKit/Source/core/editing/EditingUtilities.cpp
@@ -167,9 +167,9 @@ return comparePositions<NodeTraversal>(containerA, offsetA, containerB, offsetB, disconnected); } -int comparePositionsInComposedTree(Node* containerA, int offsetA, Node* containerB, int offsetB, bool* disconnected) +int comparePositionsInFlatTree(Node* containerA, int offsetA, Node* containerB, int offsetB, bool* disconnected) { - return comparePositions<ComposedTreeTraversal>(containerA, offsetA, containerB, offsetB, disconnected); + return comparePositions<FlatTreeTraversal>(containerA, offsetA, containerB, offsetB, disconnected); } // Compare two positions, taking into account the possibility that one or both @@ -240,7 +240,7 @@ return highestRoot; } -ContainerNode* highestEditableRoot(const PositionInComposedTree& position, EditableType editableType) +ContainerNode* highestEditableRoot(const PositionInFlatTree& position, EditableType editableType) { return highestEditableRoot(toPositionInDOMTree(position), editableType); } @@ -263,7 +263,7 @@ return node->hasEditableStyle(editableType); } -bool isEditablePosition(const PositionInComposedTree& p, EditableType editableType, EUpdateStyle updateStyle) +bool isEditablePosition(const PositionInFlatTree& p, EditableType editableType, EUpdateStyle updateStyle) { return isEditablePosition(toPositionInDOMTree(p), editableType, updateStyle); } @@ -299,7 +299,7 @@ return node->rootEditableElement(editableType); } -Element* rootEditableElementOf(const PositionInComposedTree& p, EditableType editableType) +Element* rootEditableElementOf(const PositionInFlatTree& p, EditableType editableType) { return rootEditableElementOf(toPositionInDOMTree(p), editableType); } @@ -348,9 +348,9 @@ return nextCandidateAlgorithm<EditingStrategy>(position); } -PositionInComposedTree nextCandidate(const PositionInComposedTree& position) +PositionInFlatTree nextCandidate(const PositionInFlatTree& position) { - return nextCandidateAlgorithm<EditingInComposedTreeStrategy>(position); + return nextCandidateAlgorithm<EditingInFlatTreeStrategy>(position); } // |nextVisuallyDistinctCandidate| is similar to |nextCandidate| except @@ -383,9 +383,9 @@ return nextVisuallyDistinctCandidateAlgorithm<EditingStrategy>(position); } -PositionInComposedTree nextVisuallyDistinctCandidate(const PositionInComposedTree& position) +PositionInFlatTree nextVisuallyDistinctCandidate(const PositionInFlatTree& position) { - return nextVisuallyDistinctCandidateAlgorithm<EditingInComposedTreeStrategy>(position); + return nextVisuallyDistinctCandidateAlgorithm<EditingInFlatTreeStrategy>(position); } template <typename Strategy> @@ -411,9 +411,9 @@ return previousCandidateAlgorithm<EditingStrategy>(position); } -PositionInComposedTree previousCandidate(const PositionInComposedTree& position) +PositionInFlatTree previousCandidate(const PositionInFlatTree& position) { - return previousCandidateAlgorithm<EditingInComposedTreeStrategy>(position); + return previousCandidateAlgorithm<EditingInFlatTreeStrategy>(position); } // |previousVisuallyDistinctCandidate| is similar to |previousCandidate| except @@ -446,9 +446,9 @@ return previousVisuallyDistinctCandidateAlgorithm<EditingStrategy>(position); } -PositionInComposedTree previousVisuallyDistinctCandidate(const PositionInComposedTree& position) +PositionInFlatTree previousVisuallyDistinctCandidate(const PositionInFlatTree& position) { - return previousVisuallyDistinctCandidateAlgorithm<EditingInComposedTreeStrategy>(position); + return previousVisuallyDistinctCandidateAlgorithm<EditingInFlatTreeStrategy>(position); } VisiblePosition firstEditableVisiblePositionAfterPositionInRoot(const Position& position, ContainerNode& highestRoot) @@ -456,7 +456,7 @@ return createVisiblePosition(firstEditablePositionAfterPositionInRoot(position, highestRoot)); } -VisiblePositionInComposedTree firstEditableVisiblePositionAfterPositionInRoot(const PositionInComposedTree& position, ContainerNode& highestRoot) +VisiblePositionInFlatTree firstEditableVisiblePositionAfterPositionInRoot(const PositionInFlatTree& position, ContainerNode& highestRoot) { return createVisiblePosition(firstEditablePositionAfterPositionInRoot(position, highestRoot)); } @@ -492,9 +492,9 @@ return firstEditablePositionAfterPositionInRootAlgorithm<EditingStrategy>(position, highestRoot); } -PositionInComposedTree firstEditablePositionAfterPositionInRoot(const PositionInComposedTree& position, Node& highestRoot) +PositionInFlatTree firstEditablePositionAfterPositionInRoot(const PositionInFlatTree& position, Node& highestRoot) { - return firstEditablePositionAfterPositionInRootAlgorithm<EditingInComposedTreeStrategy>(position, highestRoot); + return firstEditablePositionAfterPositionInRootAlgorithm<EditingInFlatTreeStrategy>(position, highestRoot); } VisiblePosition lastEditableVisiblePositionBeforePositionInRoot(const Position& position, ContainerNode& highestRoot) @@ -502,7 +502,7 @@ return createVisiblePosition(lastEditablePositionBeforePositionInRoot(position, highestRoot)); } -VisiblePositionInComposedTree lastEditableVisiblePositionBeforePositionInRoot(const PositionInComposedTree& position, ContainerNode& highestRoot) +VisiblePositionInFlatTree lastEditableVisiblePositionBeforePositionInRoot(const PositionInFlatTree& position, ContainerNode& highestRoot) { return createVisiblePosition(lastEditablePositionBeforePositionInRoot(position, highestRoot)); } @@ -537,9 +537,9 @@ return lastEditablePositionBeforePositionInRootAlgorithm<EditingStrategy>(position, highestRoot); } -PositionInComposedTree lastEditablePositionBeforePositionInRoot(const PositionInComposedTree& position, Node& highestRoot) +PositionInFlatTree lastEditablePositionBeforePositionInRoot(const PositionInFlatTree& position, Node& highestRoot) { - return lastEditablePositionBeforePositionInRootAlgorithm<EditingInComposedTreeStrategy>(position, highestRoot); + return lastEditablePositionBeforePositionInRootAlgorithm<EditingInFlatTreeStrategy>(position, highestRoot); } int uncheckedPreviousOffset(const Node* n, int current) @@ -603,9 +603,9 @@ return previousPositionOfAlgorithm<EditingStrategy>(position, moveType); } -PositionInComposedTree previousPositionOf(const PositionInComposedTree& position, PositionMoveType moveType) +PositionInFlatTree previousPositionOf(const PositionInFlatTree& position, PositionMoveType moveType) { - return previousPositionOfAlgorithm<EditingInComposedTreeStrategy>(position, moveType); + return previousPositionOfAlgorithm<EditingInFlatTreeStrategy>(position, moveType); } template <typename Strategy> @@ -644,9 +644,9 @@ return nextPositionOfAlgorithm<EditingStrategy>(position, moveType); } -PositionInComposedTree nextPositionOf(const PositionInComposedTree& position, PositionMoveType moveType) +PositionInFlatTree nextPositionOf(const PositionInFlatTree& position, PositionMoveType moveType) { - return nextPositionOfAlgorithm<EditingInComposedTreeStrategy>(position, moveType); + return nextPositionOfAlgorithm<EditingInFlatTreeStrategy>(position, moveType); } bool isEnclosingBlock(const Node* node) @@ -682,9 +682,9 @@ return enclosingBlockAlgorithm<EditingStrategy>(position, rule); } -Element* enclosingBlock(const PositionInComposedTree& position, EditingBoundaryCrossingRule rule) +Element* enclosingBlock(const PositionInFlatTree& position, EditingBoundaryCrossingRule rule) { - return enclosingBlockAlgorithm<EditingInComposedTreeStrategy>(position, rule); + return enclosingBlockAlgorithm<EditingInFlatTreeStrategy>(position, rule); } Element* enclosingBlockFlowElement(Node& node) @@ -725,9 +725,9 @@ return directionOfEnclosingBlockAlgorithm<EditingStrategy>(position); } -TextDirection directionOfEnclosingBlock(const PositionInComposedTree& position) +TextDirection directionOfEnclosingBlock(const PositionInFlatTree& position) { - return directionOfEnclosingBlockAlgorithm<EditingInComposedTreeStrategy>(position); + return directionOfEnclosingBlockAlgorithm<EditingInFlatTreeStrategy>(position); } TextDirection primaryDirectionOf(const Node& node) @@ -882,9 +882,9 @@ return isFirstPositionAfterTableAlgorithm<EditingStrategy>(visiblePosition); } -Element* isFirstPositionAfterTable(const VisiblePositionInComposedTree& visiblePosition) +Element* isFirstPositionAfterTable(const VisiblePositionInFlatTree& visiblePosition) { - return isFirstPositionAfterTableAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return isFirstPositionAfterTableAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } Element* isLastPositionBeforeTable(const VisiblePosition& visiblePosition) @@ -1029,9 +1029,9 @@ return enclosingNodeOfTypeAlgorithm<EditingStrategy>(p, nodeIsOfType, rule); } -Node* enclosingNodeOfType(const PositionInComposedTree& p, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule rule) +Node* enclosingNodeOfType(const PositionInFlatTree& p, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule rule) { - return enclosingNodeOfTypeAlgorithm<EditingInComposedTreeStrategy>(p, nodeIsOfType, rule); + return enclosingNodeOfTypeAlgorithm<EditingInFlatTreeStrategy>(p, nodeIsOfType, rule); } Node* highestEnclosingNodeOfType(const Position& p, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule rule, Node* stayWithin) @@ -1537,9 +1537,9 @@ return normalizeRangeAlgorithm<EditingStrategy>(range); } -EphemeralRangeInComposedTree normalizeRange(const EphemeralRangeInComposedTree& range) +EphemeralRangeInFlatTree normalizeRange(const EphemeralRangeInFlatTree& range) { - return normalizeRangeAlgorithm<EditingInComposedTreeStrategy>(range); + return normalizeRangeAlgorithm<EditingInFlatTreeStrategy>(range); } VisiblePosition visiblePositionForIndex(int index, ContainerNode* scope)
diff --git a/third_party/WebKit/Source/core/editing/EditingUtilities.h b/third_party/WebKit/Source/core/editing/EditingUtilities.h index c734a8d..66f449e 100644 --- a/third_party/WebKit/Source/core/editing/EditingUtilities.h +++ b/third_party/WebKit/Source/core/editing/EditingUtilities.h
@@ -69,7 +69,7 @@ // defiance of editing boundaries. This returns a Document if designMode="on" // and the specified Position is not in the <body>. CORE_EXPORT ContainerNode* highestEditableRoot(const Position&, EditableType = ContentIsEditable); -ContainerNode* highestEditableRoot(const PositionInComposedTree&, EditableType = ContentIsEditable); +ContainerNode* highestEditableRoot(const PositionInFlatTree&, EditableType = ContentIsEditable); Node* highestEnclosingNodeOfType(const Position&, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule = CannotCrossEditingBoundary, Node* stayWithin = nullptr); @@ -77,7 +77,7 @@ Element* enclosingBlock(Node*, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); CORE_EXPORT Element* enclosingBlock(const Position&, EditingBoundaryCrossingRule); -CORE_EXPORT Element* enclosingBlock(const PositionInComposedTree&, EditingBoundaryCrossingRule); +CORE_EXPORT Element* enclosingBlock(const PositionInFlatTree&, EditingBoundaryCrossingRule); Element* enclosingBlockFlowElement(Node&); // Deprecated, use enclosingBlock instead. bool inSameContainingBlockFlowElement(Node*, Node*); Element* enclosingTableCell(const Position&); @@ -89,12 +89,12 @@ // Element. Otherwise, editability doesn't matter. Element* enclosingElementWithTag(const Position&, const QualifiedName&); CORE_EXPORT Node* enclosingNodeOfType(const Position&, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT Node* enclosingNodeOfType(const PositionInComposedTree&, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT Node* enclosingNodeOfType(const PositionInFlatTree&, bool (*nodeIsOfType)(const Node*), EditingBoundaryCrossingRule = CannotCrossEditingBoundary); HTMLSpanElement* tabSpanElement(const Node*); Element* isLastPositionBeforeTable(const VisiblePosition&); CORE_EXPORT Element* isFirstPositionAfterTable(const VisiblePosition&); -CORE_EXPORT Element* isFirstPositionAfterTable(const VisiblePositionInComposedTree&); +CORE_EXPORT Element* isFirstPositionAfterTable(const VisiblePositionInFlatTree&); // Returns the next leaf node or nullptr if there are no more. // Delivers leaf nodes as if the whole DOM tree were a linear chain of its leaf nodes. @@ -112,9 +112,9 @@ return NodeTraversal::parentOrShadowHostNode(node); } template <> -inline ContainerNode* parentCrossingShadowBoundaries<EditingInComposedTreeStrategy>(const Node& node) +inline ContainerNode* parentCrossingShadowBoundaries<EditingInFlatTreeStrategy>(const Node& node) { - return ComposedTreeTraversal::parent(node); + return FlatTreeTraversal::parent(node); } // boolean functions on Node @@ -156,7 +156,7 @@ bool nodeIsUserSelectAll(const Node*); bool isTextSecurityNode(const Node*); CORE_EXPORT TextDirection directionOfEnclosingBlock(const Position&); -CORE_EXPORT TextDirection directionOfEnclosingBlock(const PositionInComposedTree&); +CORE_EXPORT TextDirection directionOfEnclosingBlock(const PositionInFlatTree&); CORE_EXPORT TextDirection primaryDirectionOf(const Node&); // ------------------------------------------------------------------------- @@ -166,14 +166,14 @@ // Functions returning Position Position nextCandidate(const Position&); -PositionInComposedTree nextCandidate(const PositionInComposedTree&); +PositionInFlatTree nextCandidate(const PositionInFlatTree&); Position previousCandidate(const Position&); -PositionInComposedTree previousCandidate(const PositionInComposedTree&); +PositionInFlatTree previousCandidate(const PositionInFlatTree&); CORE_EXPORT Position nextVisuallyDistinctCandidate(const Position&); -CORE_EXPORT PositionInComposedTree nextVisuallyDistinctCandidate(const PositionInComposedTree&); +CORE_EXPORT PositionInFlatTree nextVisuallyDistinctCandidate(const PositionInFlatTree&); Position previousVisuallyDistinctCandidate(const Position&); -PositionInComposedTree previousVisuallyDistinctCandidate(const PositionInComposedTree&); +PositionInFlatTree previousVisuallyDistinctCandidate(const PositionInFlatTree&); Position positionBeforeContainingSpecialElement(const Position&, HTMLElement** containingSpecialElement = nullptr); Position positionAfterContainingSpecialElement(const Position&, HTMLElement** containingSpecialElement = nullptr); @@ -190,8 +190,8 @@ CORE_EXPORT Position firstEditablePositionAfterPositionInRoot(const Position&, Node&); CORE_EXPORT Position lastEditablePositionBeforePositionInRoot(const Position&, Node&); -CORE_EXPORT PositionInComposedTree firstEditablePositionAfterPositionInRoot(const PositionInComposedTree&, Node&); -CORE_EXPORT PositionInComposedTree lastEditablePositionBeforePositionInRoot(const PositionInComposedTree&, Node&); +CORE_EXPORT PositionInFlatTree firstEditablePositionAfterPositionInRoot(const PositionInFlatTree&, Node&); +CORE_EXPORT PositionInFlatTree lastEditablePositionBeforePositionInRoot(const PositionInFlatTree&, Node&); // Move up or down the DOM by one position. // Offsets are computed using layout text for nodes that have layoutObjects - @@ -199,8 +199,8 @@ // a single user-visible character if a ligature is formed. CORE_EXPORT Position previousPositionOf(const Position&, PositionMoveType); CORE_EXPORT Position nextPositionOf(const Position&, PositionMoveType); -CORE_EXPORT PositionInComposedTree previousPositionOf(const PositionInComposedTree&, PositionMoveType); -CORE_EXPORT PositionInComposedTree nextPositionOf(const PositionInComposedTree&, PositionMoveType); +CORE_EXPORT PositionInFlatTree previousPositionOf(const PositionInFlatTree&, PositionMoveType); +CORE_EXPORT PositionInFlatTree nextPositionOf(const PositionInFlatTree&, PositionMoveType); CORE_EXPORT int uncheckedPreviousOffset(const Node*, int current); CORE_EXPORT int uncheckedNextOffset(const Node*, int current); @@ -210,7 +210,7 @@ // |disconnected| is optional output parameter having true if specified // positions don't have common ancestor. int comparePositionsInDOMTree(Node* containerA, int offsetA, Node* containerB, int offsetB, bool* disconnected = nullptr); -int comparePositionsInComposedTree(Node* containerA, int offsetA, Node* containerB, int offsetB, bool* disconnected = nullptr); +int comparePositionsInFlatTree(Node* containerA, int offsetA, Node* containerB, int offsetB, bool* disconnected = nullptr); int comparePositions(const Position&, const Position&); int comparePositions(const PositionWithAffinity&, const PositionWithAffinity&); @@ -222,7 +222,7 @@ // should make it clear that that is the contract. // FIXME: isRichlyEditablePosition should also take EUpdateStyle. CORE_EXPORT bool isEditablePosition(const Position&, EditableType = ContentIsEditable, EUpdateStyle = UpdateStyle); -bool isEditablePosition(const PositionInComposedTree&, EditableType = ContentIsEditable, EUpdateStyle = UpdateStyle); +bool isEditablePosition(const PositionInFlatTree&, EditableType = ContentIsEditable, EUpdateStyle = UpdateStyle); bool isRichlyEditablePosition(const Position&, EditableType = ContentIsEditable); bool lineBreakExistsAtPosition(const Position&); bool isAtUnsplittableElement(const Position&); @@ -246,13 +246,13 @@ // describes what this function returns, since it returns a position before // specified position due by canonicalization. CORE_EXPORT VisiblePosition firstEditableVisiblePositionAfterPositionInRoot(const Position&, ContainerNode&); -CORE_EXPORT VisiblePositionInComposedTree firstEditableVisiblePositionAfterPositionInRoot(const PositionInComposedTree&, ContainerNode&); +CORE_EXPORT VisiblePositionInFlatTree firstEditableVisiblePositionAfterPositionInRoot(const PositionInFlatTree&, ContainerNode&); // TODO(yosin) We should rename // |lastEditableVisiblePositionBeforePositionInRoot()| to a better name which // describes what this function returns, since it returns a position after // specified position due by canonicalization. CORE_EXPORT VisiblePosition lastEditableVisiblePositionBeforePositionInRoot(const Position&, ContainerNode&); -CORE_EXPORT VisiblePositionInComposedTree lastEditableVisiblePositionBeforePositionInRoot(const PositionInComposedTree&, ContainerNode&); +CORE_EXPORT VisiblePositionInFlatTree lastEditableVisiblePositionBeforePositionInRoot(const PositionInFlatTree&, ContainerNode&); VisiblePosition visiblePositionBeforeNode(Node&); VisiblePosition visiblePositionAfterNode(Node&); @@ -263,7 +263,7 @@ int indexForVisiblePosition(const VisiblePosition&, RefPtrWillBeRawPtr<ContainerNode>& scope); EphemeralRange makeRange(const VisiblePosition&, const VisiblePosition&); EphemeralRange normalizeRange(const EphemeralRange&); -EphemeralRangeInComposedTree normalizeRange(const EphemeralRangeInComposedTree&); +EphemeralRangeInFlatTree normalizeRange(const EphemeralRangeInFlatTree&); VisiblePosition visiblePositionForIndex(int index, ContainerNode* scope); // ------------------------------------------------------------------------- @@ -289,7 +289,7 @@ PassRefPtrWillBeRawPtr<HTMLSpanElement> createTabSpanElement(Document&, const String& tabText); Element* rootEditableElementOf(const Position&, EditableType = ContentIsEditable); -Element* rootEditableElementOf(const PositionInComposedTree&, EditableType = ContentIsEditable); +Element* rootEditableElementOf(const PositionInFlatTree&, EditableType = ContentIsEditable); Element* rootEditableElementOf(const VisiblePosition&); Element* unsplittableElementForPosition(const Position&);
diff --git a/third_party/WebKit/Source/core/editing/EditingUtilitiesTest.cpp b/third_party/WebKit/Source/core/editing/EditingUtilitiesTest.cpp index e5f73125..eb1a159 100644 --- a/third_party/WebKit/Source/core/editing/EditingUtilitiesTest.cpp +++ b/third_party/WebKit/Source/core/editing/EditingUtilitiesTest.cpp
@@ -22,7 +22,7 @@ Node* one = document().getElementById("one"); EXPECT_EQ(LTR, directionOfEnclosingBlock(Position(one, 0))); - EXPECT_EQ(RTL, directionOfEnclosingBlock(PositionInComposedTree(one, 0))); + EXPECT_EQ(RTL, directionOfEnclosingBlock(PositionInFlatTree(one, 0))); } TEST_F(EditingUtilitiesTest, firstEditablePositionAfterPositionInRoot) @@ -40,13 +40,13 @@ EXPECT_EQ(Position(one, 0), firstEditablePositionAfterPositionInRoot(Position(one, 0), *host)); EXPECT_EQ(Position(one->firstChild(), 0), firstEditableVisiblePositionAfterPositionInRoot(Position(one, 0), *host).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), firstEditablePositionAfterPositionInRoot(PositionInComposedTree(one, 0), *host)); - EXPECT_EQ(PositionInComposedTree(two->firstChild(), 2), firstEditableVisiblePositionAfterPositionInRoot(PositionInComposedTree(one, 0), *host).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), firstEditablePositionAfterPositionInRoot(PositionInFlatTree(one, 0), *host)); + EXPECT_EQ(PositionInFlatTree(two->firstChild(), 2), firstEditableVisiblePositionAfterPositionInRoot(PositionInFlatTree(one, 0), *host).deepEquivalent()); EXPECT_EQ(Position::firstPositionInNode(host), firstEditablePositionAfterPositionInRoot(Position(three, 0), *host)); EXPECT_EQ(Position(one->firstChild(), 0), firstEditableVisiblePositionAfterPositionInRoot(Position(three, 0), *host).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree::afterNode(host), firstEditablePositionAfterPositionInRoot(PositionInComposedTree(three, 0), *host)); - EXPECT_EQ(PositionInComposedTree::lastPositionInNode(host), firstEditableVisiblePositionAfterPositionInRoot(PositionInComposedTree(three, 0), *host).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree::afterNode(host), firstEditablePositionAfterPositionInRoot(PositionInFlatTree(three, 0), *host)); + EXPECT_EQ(PositionInFlatTree::lastPositionInNode(host), firstEditableVisiblePositionAfterPositionInRoot(PositionInFlatTree(three, 0), *host).deepEquivalent()); } TEST_F(EditingUtilitiesTest, enclosingBlock) @@ -61,7 +61,7 @@ Node* three = shadowRoot->getElementById("three"); EXPECT_EQ(host, enclosingBlock(Position(one, 0), CannotCrossEditingBoundary)); - EXPECT_EQ(three, enclosingBlock(PositionInComposedTree(one, 0), CannotCrossEditingBoundary)); + EXPECT_EQ(three, enclosingBlock(PositionInFlatTree(one, 0), CannotCrossEditingBoundary)); } TEST_F(EditingUtilitiesTest, enclosingNodeOfType) @@ -76,7 +76,7 @@ Node* three = shadowRoot->getElementById("three"); EXPECT_EQ(host, enclosingNodeOfType(Position(one, 0), isEnclosingBlock)); - EXPECT_EQ(three, enclosingNodeOfType(PositionInComposedTree(one, 0), isEnclosingBlock)); + EXPECT_EQ(three, enclosingNodeOfType(PositionInFlatTree(one, 0), isEnclosingBlock)); } TEST_F(EditingUtilitiesTest, isEditablePositionWithTable) @@ -108,19 +108,19 @@ Node* table = document().getElementById("table"); EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(Position::afterNode(table)))); - EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInComposedTree::afterNode(table)))); + EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInFlatTree::afterNode(table)))); EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(Position::lastPositionInNode(table)))); - EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInComposedTree::lastPositionInNode(table)))); + EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInFlatTree::lastPositionInNode(table)))); EXPECT_EQ(nullptr, isFirstPositionAfterTable(createVisiblePosition(Position(host, 2)))); - EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInComposedTree(host, 2)))); + EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInFlatTree(host, 2)))); EXPECT_EQ(nullptr, isFirstPositionAfterTable(createVisiblePosition(Position::afterNode(host)))); - EXPECT_EQ(nullptr, isFirstPositionAfterTable(createVisiblePosition(PositionInComposedTree::afterNode(host)))); + EXPECT_EQ(nullptr, isFirstPositionAfterTable(createVisiblePosition(PositionInFlatTree::afterNode(host)))); EXPECT_EQ(nullptr, isFirstPositionAfterTable(createVisiblePosition(Position::lastPositionInNode(host)))); - EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInComposedTree::lastPositionInNode(host)))); + EXPECT_EQ(table, isFirstPositionAfterTable(createVisiblePosition(PositionInFlatTree::lastPositionInNode(host)))); } TEST_F(EditingUtilitiesTest, lastEditablePositionBeforePositionInRoot) @@ -138,13 +138,13 @@ EXPECT_EQ(Position(one, 0), lastEditablePositionBeforePositionInRoot(Position(one, 0), *host)); EXPECT_EQ(Position(one->firstChild(), 0), lastEditableVisiblePositionBeforePositionInRoot(Position(one, 0), *host).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), lastEditablePositionBeforePositionInRoot(PositionInComposedTree(one, 0), *host)); - EXPECT_EQ(PositionInComposedTree(two->firstChild(), 2), lastEditableVisiblePositionBeforePositionInRoot(PositionInComposedTree(one, 0), *host).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), lastEditablePositionBeforePositionInRoot(PositionInFlatTree(one, 0), *host)); + EXPECT_EQ(PositionInFlatTree(two->firstChild(), 2), lastEditableVisiblePositionBeforePositionInRoot(PositionInFlatTree(one, 0), *host).deepEquivalent()); EXPECT_EQ(Position::firstPositionInNode(host), lastEditablePositionBeforePositionInRoot(Position(three, 0), *host)); EXPECT_EQ(Position(one->firstChild(), 0), lastEditableVisiblePositionBeforePositionInRoot(Position(three, 0), *host).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree::firstPositionInNode(host), lastEditablePositionBeforePositionInRoot(PositionInComposedTree(three, 0), *host)); - EXPECT_EQ(PositionInComposedTree(two->firstChild(), 0), lastEditableVisiblePositionBeforePositionInRoot(PositionInComposedTree(three, 0), *host).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree::firstPositionInNode(host), lastEditablePositionBeforePositionInRoot(PositionInFlatTree(three, 0), *host)); + EXPECT_EQ(PositionInFlatTree(two->firstChild(), 0), lastEditableVisiblePositionBeforePositionInRoot(PositionInFlatTree(three, 0), *host).deepEquivalent()); } TEST_F(EditingUtilitiesTest, NextNodeIndex) @@ -157,7 +157,7 @@ Node* two = document().getElementById("two"); EXPECT_EQ(Position(host, 3), nextPositionOf(Position(two, 2), PositionMoveType::CodePoint)); - EXPECT_EQ(PositionInComposedTree(host, 1), nextPositionOf(PositionInComposedTree(two, 2), PositionMoveType::CodePoint)); + EXPECT_EQ(PositionInFlatTree(host, 1), nextPositionOf(PositionInFlatTree(two, 2), PositionMoveType::CodePoint)); } TEST_F(EditingUtilitiesTest, NextVisuallyDistinctCandidate) @@ -172,7 +172,7 @@ Node* three = document().getElementById("three"); EXPECT_EQ(Position(two->firstChild(), 1), nextVisuallyDistinctCandidate(Position(one, 1))); - EXPECT_EQ(PositionInComposedTree(three->firstChild(), 1), nextVisuallyDistinctCandidate(PositionInComposedTree(one, 1))); + EXPECT_EQ(PositionInFlatTree(three->firstChild(), 1), nextVisuallyDistinctCandidate(PositionInFlatTree(one, 1))); } TEST_F(EditingUtilitiesTest, AreaIdenticalElements)
diff --git a/third_party/WebKit/Source/core/editing/Editor.cpp b/third_party/WebKit/Source/core/editing/Editor.cpp index 00872ebb..3a8bd64 100644 --- a/third_party/WebKit/Source/core/editing/Editor.cpp +++ b/third_party/WebKit/Source/core/editing/Editor.cpp
@@ -1209,8 +1209,8 @@ PassRefPtrWillBeRawPtr<Range> Editor::findStringAndScrollToVisible(const String& target, Range* range, FindOptions options) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return findStringAndScrollToVisibleAlgorithm<EditingInComposedTreeStrategy>(*this, target, EphemeralRangeInComposedTree(range), options); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return findStringAndScrollToVisibleAlgorithm<EditingInFlatTreeStrategy>(*this, target, EphemeralRangeInFlatTree(range), options); return findStringAndScrollToVisibleAlgorithm<EditingStrategy>(*this, target, EphemeralRange(range), options); } @@ -1303,9 +1303,9 @@ return findRangeOfStringAlgorithm<EditingStrategy>(*frame().document(), target, reference, options); } -PassRefPtrWillBeRawPtr<Range> Editor::findRangeOfString(const String& target, const EphemeralRangeInComposedTree& reference, FindOptions options) +PassRefPtrWillBeRawPtr<Range> Editor::findRangeOfString(const String& target, const EphemeralRangeInFlatTree& reference, FindOptions options) { - return findRangeOfStringAlgorithm<EditingInComposedTreeStrategy>(*frame().document(), target, reference, options); + return findRangeOfStringAlgorithm<EditingInFlatTreeStrategy>(*frame().document(), target, reference, options); } void Editor::setMarkedTextMatchesAreHighlighted(bool flag)
diff --git a/third_party/WebKit/Source/core/editing/Editor.h b/third_party/WebKit/Source/core/editing/Editor.h index 8b40cc2..35ed8d4 100644 --- a/third_party/WebKit/Source/core/editing/Editor.h +++ b/third_party/WebKit/Source/core/editing/Editor.h
@@ -204,7 +204,7 @@ PassRefPtrWillBeRawPtr<Range> findStringAndScrollToVisible(const String&, Range*, FindOptions); PassRefPtrWillBeRawPtr<Range> findRangeOfString(const String& target, const EphemeralRange& referenceRange, FindOptions); - PassRefPtrWillBeRawPtr<Range> findRangeOfString(const String& target, const EphemeralRangeInComposedTree& referenceRange, FindOptions); + PassRefPtrWillBeRawPtr<Range> findRangeOfString(const String& target, const EphemeralRangeInFlatTree& referenceRange, FindOptions); const VisibleSelection& mark() const; // Mark, to be used as emacs uses it. void setMark(const VisibleSelection&);
diff --git a/third_party/WebKit/Source/core/editing/EphemeralRange.cpp b/third_party/WebKit/Source/core/editing/EphemeralRange.cpp index 7a373bc..e8b70d1 100644 --- a/third_party/WebKit/Source/core/editing/EphemeralRange.cpp +++ b/third_party/WebKit/Source/core/editing/EphemeralRange.cpp
@@ -145,6 +145,6 @@ } template class CORE_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/EphemeralRange.h b/third_party/WebKit/Source/core/editing/EphemeralRange.h index e70ce8a..1b95928 100644 --- a/third_party/WebKit/Source/core/editing/EphemeralRange.h +++ b/third_party/WebKit/Source/core/editing/EphemeralRange.h
@@ -88,8 +88,8 @@ extern template class CORE_EXTERN_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingStrategy>; using EphemeralRange = EphemeralRangeTemplate<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingInComposedTreeStrategy>; -using EphemeralRangeInComposedTree = EphemeralRangeTemplate<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT EphemeralRangeTemplate<EditingInFlatTreeStrategy>; +using EphemeralRangeInFlatTree = EphemeralRangeTemplate<EditingInFlatTreeStrategy>; // Returns a newly created |Range| object from |range| or |nullptr| if // |range.isNull()| returns true.
diff --git a/third_party/WebKit/Source/core/editing/FindOptions.h b/third_party/WebKit/Source/core/editing/FindOptions.h index 38897faa..083648d 100644 --- a/third_party/WebKit/Source/core/editing/FindOptions.h +++ b/third_party/WebKit/Source/core/editing/FindOptions.h
@@ -38,7 +38,7 @@ WrapAround = 1 << 4, StartInSelection = 1 << 5, WholeWord = 1 << 6, // WholeWord should imply AtWordStarts - // TODO(yosin) Once find UI works on composed tree and it doesn't use + // TODO(yosin) Once find UI works on flat tree and it doesn't use // |rangeOfString()|, we should get rid of |FindAPICall| enum member. FindAPICall = 1 << 7, // Used for Window.find or execCommand('find') };
diff --git a/third_party/WebKit/Source/core/editing/FrameSelection.cpp b/third_party/WebKit/Source/core/editing/FrameSelection.cpp index 194d1ec..886beef 100644 --- a/third_party/WebKit/Source/core/editing/FrameSelection.cpp +++ b/third_party/WebKit/Source/core/editing/FrameSelection.cpp
@@ -118,9 +118,9 @@ } template <> -VisiblePositionInComposedTree FrameSelection::originalBase<EditingInComposedTreeStrategy>() const +VisiblePositionInFlatTree FrameSelection::originalBase<EditingInFlatTreeStrategy>() const { - return m_originalBaseInComposedTree; + return m_originalBaseInFlatTree; } // TODO(yosin): To avoid undefined symbols in clang, we explicitly @@ -133,9 +133,9 @@ } template <> -const VisibleSelectionInComposedTree& FrameSelection::visibleSelection<EditingInComposedTreeStrategy>() const +const VisibleSelectionInFlatTree& FrameSelection::visibleSelection<EditingInFlatTreeStrategy>() const { - return m_selectionEditor->visibleSelection<EditingInComposedTreeStrategy>(); + return m_selectionEditor->visibleSelection<EditingInFlatTreeStrategy>(); } Element* FrameSelection::rootEditableElementOrDocumentElement() const @@ -159,9 +159,9 @@ return visibleSelection<EditingStrategy>(); } -const VisibleSelectionInComposedTree& FrameSelection::selectionInComposedTree() const +const VisibleSelectionInFlatTree& FrameSelection::selectionInFlatTree() const { - return visibleSelection<EditingInComposedTreeStrategy>(); + return visibleSelection<EditingInFlatTreeStrategy>(); } void FrameSelection::moveTo(const VisiblePosition &pos, EUserTriggered userTriggered, CursorAlignOnScroll align) @@ -259,9 +259,9 @@ setNonDirectionalSelectionIfNeededAlgorithm<EditingStrategy>(passedNewSelection, granularity, endpointsAdjustmentMode); } -void FrameSelection::setNonDirectionalSelectionIfNeeded(const VisibleSelectionInComposedTree& passedNewSelection, TextGranularity granularity, EndPointsAdjustmentMode endpointsAdjustmentMode) +void FrameSelection::setNonDirectionalSelectionIfNeeded(const VisibleSelectionInFlatTree& passedNewSelection, TextGranularity granularity, EndPointsAdjustmentMode endpointsAdjustmentMode) { - setNonDirectionalSelectionIfNeededAlgorithm<EditingInComposedTreeStrategy>(passedNewSelection, granularity, endpointsAdjustmentMode); + setNonDirectionalSelectionIfNeededAlgorithm<EditingInFlatTreeStrategy>(passedNewSelection, granularity, endpointsAdjustmentMode); } template <typename Strategy> @@ -344,10 +344,10 @@ // This may dispatch a synchronous focus-related events. selectFrameElementInParentIfFullySelected(); notifyLayoutObjectOfSelectionChange(userTriggered); - // If the selections are same in the DOM tree but not in the composed tree, + // If the selections are same in the DOM tree but not in the flat tree, // don't fire events. For example, if the selection crosses shadow tree // boundary, selection for the DOM tree is shrunk while that for the - // composed tree is not. Additionally, this case occurs in some edge cases. + // flat tree is not. Additionally, this case occurs in some edge cases. // See also: editing/pasteboard/4076267-3.html if (oldSelection == m_selectionEditor->visibleSelection<Strategy>()) { m_frame->inputMethodController().cancelCompositionIfSelectionIsInvalid(); @@ -376,9 +376,9 @@ setSelectionAlgorithm<EditingStrategy>(newSelection, options, align, granularity); } -void FrameSelection::setSelection(const VisibleSelectionInComposedTree& newSelection, SetSelectionOptions options, CursorAlignOnScroll align, TextGranularity granularity) +void FrameSelection::setSelection(const VisibleSelectionInFlatTree& newSelection, SetSelectionOptions options, CursorAlignOnScroll align, TextGranularity granularity) { - setSelectionAlgorithm<EditingInComposedTreeStrategy>(newSelection, options, align, granularity); + setSelectionAlgorithm<EditingInFlatTreeStrategy>(newSelection, options, align, granularity); } static bool removingNodeRemovesPosition(Node& node, const Position& position) @@ -766,8 +766,8 @@ bool FrameSelection::contains(const LayoutPoint& point) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return containsAlgorithm<EditingInComposedTreeStrategy>(point); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return containsAlgorithm<EditingInFlatTreeStrategy>(point); return containsAlgorithm<EditingStrategy>(point); } @@ -1132,8 +1132,8 @@ static String extractSelectedText(const FrameSelection& selection, TextIteratorBehavior behavior) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return extractSelectedTextAlgorithm<EditingInComposedTreeStrategy>(selection, behavior); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return extractSelectedTextAlgorithm<EditingInFlatTreeStrategy>(selection, behavior); return extractSelectedTextAlgorithm<EditingStrategy>(selection, behavior); } @@ -1147,9 +1147,9 @@ String FrameSelection::selectedHTMLForClipboard() const { - if (!RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) + if (!RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) return extractSelectedHTMLAlgorithm<EditingStrategy>(*this); - return extractSelectedHTMLAlgorithm<EditingInComposedTreeStrategy>(*this); + return extractSelectedHTMLAlgorithm<EditingInFlatTreeStrategy>(*this); } String FrameSelection::selectedText(TextIteratorBehavior behavior) const @@ -1327,7 +1327,7 @@ visitor->trace(m_pendingSelection); visitor->trace(m_selectionEditor); visitor->trace(m_originalBase); - visitor->trace(m_originalBaseInComposedTree); + visitor->trace(m_originalBaseInFlatTree); visitor->trace(m_previousCaretNode); visitor->trace(m_typingStyle); }
diff --git a/third_party/WebKit/Source/core/editing/FrameSelection.h b/third_party/WebKit/Source/core/editing/FrameSelection.h index e53345c..8daf585 100644 --- a/third_party/WebKit/Source/core/editing/FrameSelection.h +++ b/third_party/WebKit/Source/core/editing/FrameSelection.h
@@ -83,7 +83,7 @@ DoNotSetFocus = 1 << 4, DoNotUpdateAppearance = 1 << 5, DoNotClearStrategy = 1 << 6, - DoNotAdjustInComposedTree = 1 << 7, + DoNotAdjustInFlatTree = 1 << 7, }; typedef unsigned SetSelectionOptions; // Union of values in SetSelectionOption and EUserTriggered static inline EUserTriggered selectionOptionsToUserTriggered(SetSelectionOptions options) @@ -109,11 +109,11 @@ const VisibleSelection& selection() const; void setSelection(const VisibleSelection&, SetSelectionOptions = CloseTyping | ClearTypingStyle, CursorAlignOnScroll = CursorAlignOnScroll::IfNeeded, TextGranularity = CharacterGranularity); - void setSelection(const VisibleSelectionInComposedTree&, SetSelectionOptions = CloseTyping | ClearTypingStyle, CursorAlignOnScroll = CursorAlignOnScroll::IfNeeded, TextGranularity = CharacterGranularity); + void setSelection(const VisibleSelectionInFlatTree&, SetSelectionOptions = CloseTyping | ClearTypingStyle, CursorAlignOnScroll = CursorAlignOnScroll::IfNeeded, TextGranularity = CharacterGranularity); // TODO(yosin) We should get rid of two parameters version of // |setSelection()| to avoid conflict of four parameters version. void setSelection(const VisibleSelection& selection, TextGranularity granularity) { setSelection(selection, CloseTyping | ClearTypingStyle, CursorAlignOnScroll::IfNeeded, granularity); } - void setSelection(const VisibleSelectionInComposedTree& selection, TextGranularity granularity) { setSelection(selection, CloseTyping | ClearTypingStyle, CursorAlignOnScroll::IfNeeded, granularity); } + void setSelection(const VisibleSelectionInFlatTree& selection, TextGranularity granularity) { setSelection(selection, CloseTyping | ClearTypingStyle, CursorAlignOnScroll::IfNeeded, granularity); } // TODO(yosin) We should get rid of |Range| version of |setSelectedRagne()| // for Oilpan. bool setSelectedRange(Range*, TextAffinity, SelectionDirectionalMode = SelectionDirectionalMode::NonDirectional, SetSelectionOptions = CloseTyping | ClearTypingStyle); @@ -212,7 +212,7 @@ enum EndPointsAdjustmentMode { AdjustEndpointsAtBidiBoundary, DoNotAdjsutEndpoints }; void setNonDirectionalSelectionIfNeeded(const VisibleSelection&, TextGranularity, EndPointsAdjustmentMode = DoNotAdjsutEndpoints); - void setNonDirectionalSelectionIfNeeded(const VisibleSelectionInComposedTree&, TextGranularity, EndPointsAdjustmentMode = DoNotAdjsutEndpoints); + void setNonDirectionalSelectionIfNeeded(const VisibleSelectionInFlatTree&, TextGranularity, EndPointsAdjustmentMode = DoNotAdjsutEndpoints); void setFocusedNodeIfNeeded(); void notifyLayoutObjectOfSelectionChange(EUserTriggered); @@ -249,14 +249,14 @@ explicit FrameSelection(LocalFrame*); - // Note: We have |selectionInComposedTree()| for unit tests, we should - // use |visibleSelection<EditingInComposedTreeStrategy>()|. - const VisibleSelectionInComposedTree& selectionInComposedTree() const; + // Note: We have |selectionInFlatTree()| for unit tests, we should + // use |visibleSelection<EditingInFlatTreeStrategy>()|. + const VisibleSelectionInFlatTree& selectionInFlatTree() const; template <typename Strategy> VisiblePositionTemplate<Strategy> originalBase() const; void setOriginalBase(const VisiblePosition& newBase) { m_originalBase = newBase; } - void setOriginalBase(const VisiblePositionInComposedTree& newBase) { m_originalBaseInComposedTree = newBase; } + void setOriginalBase(const VisiblePositionInFlatTree& newBase) { m_originalBaseInFlatTree = newBase; } template <typename Strategy> bool containsAlgorithm(const LayoutPoint&); @@ -296,7 +296,7 @@ // Used to store base before the adjustment at bidi boundary VisiblePosition m_originalBase; - VisiblePositionInComposedTree m_originalBaseInComposedTree; + VisiblePositionInFlatTree m_originalBaseInFlatTree; TextGranularity m_granularity; RefPtrWillBeMember<Node> m_previousCaretNode; // The last node which painted the caret. Retained for clearing the old caret when it moves.
diff --git a/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp b/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp index dccd9db..cd04d73 100644 --- a/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp +++ b/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp
@@ -30,7 +30,7 @@ void setSelection(const VisibleSelection&); FrameSelection& selection() const; const VisibleSelection& visibleSelectionInDOMTree() const { return selection().selection(); } - const VisibleSelectionInComposedTree& visibleSelectionInComposedTree() const { return selection().selectionInComposedTree(); } + const VisibleSelectionInFlatTree& visibleSelectionInFlatTree() const { return selection().selectionInFlatTree(); } PassRefPtrWillBeRawPtr<Text> appendTextNode(const String& data); int layoutCount() const { return dummyPageHolder().frameView().layoutCount(); } @@ -190,28 +190,28 @@ Node* host = document().getElementById("host"); // top to bottom - selection().setNonDirectionalSelectionIfNeeded(VisibleSelectionInComposedTree(PositionInComposedTree(top, 1), PositionInComposedTree(bottom, 3)), CharacterGranularity); + selection().setNonDirectionalSelectionIfNeeded(VisibleSelectionInFlatTree(PositionInFlatTree(top, 1), PositionInFlatTree(bottom, 3)), CharacterGranularity); EXPECT_EQ(Position(top, 1), visibleSelectionInDOMTree().base()); EXPECT_EQ(Position::beforeNode(host), visibleSelectionInDOMTree().extent()); EXPECT_EQ(Position(top, 1), visibleSelectionInDOMTree().start()); EXPECT_EQ(Position(top, 3), visibleSelectionInDOMTree().end()); - EXPECT_EQ(PositionInComposedTree(top, 1), visibleSelectionInComposedTree().base()); - EXPECT_EQ(PositionInComposedTree(bottom, 3), visibleSelectionInComposedTree().extent()); - EXPECT_EQ(PositionInComposedTree(top, 1), visibleSelectionInComposedTree().start()); - EXPECT_EQ(PositionInComposedTree(bottom, 3), visibleSelectionInComposedTree().end()); + EXPECT_EQ(PositionInFlatTree(top, 1), visibleSelectionInFlatTree().base()); + EXPECT_EQ(PositionInFlatTree(bottom, 3), visibleSelectionInFlatTree().extent()); + EXPECT_EQ(PositionInFlatTree(top, 1), visibleSelectionInFlatTree().start()); + EXPECT_EQ(PositionInFlatTree(bottom, 3), visibleSelectionInFlatTree().end()); // bottom to top - selection().setNonDirectionalSelectionIfNeeded(VisibleSelectionInComposedTree(PositionInComposedTree(bottom, 3), PositionInComposedTree(top, 1)), CharacterGranularity); + selection().setNonDirectionalSelectionIfNeeded(VisibleSelectionInFlatTree(PositionInFlatTree(bottom, 3), PositionInFlatTree(top, 1)), CharacterGranularity); EXPECT_EQ(Position(bottom, 3), visibleSelectionInDOMTree().base()); EXPECT_EQ(Position::beforeNode(bottom->parentNode()), visibleSelectionInDOMTree().extent()); EXPECT_EQ(Position(bottom, 0), visibleSelectionInDOMTree().start()); EXPECT_EQ(Position(bottom, 3), visibleSelectionInDOMTree().end()); - EXPECT_EQ(PositionInComposedTree(bottom, 3), visibleSelectionInComposedTree().base()); - EXPECT_EQ(PositionInComposedTree(top, 1), visibleSelectionInComposedTree().extent()); - EXPECT_EQ(PositionInComposedTree(top, 1), visibleSelectionInComposedTree().start()); - EXPECT_EQ(PositionInComposedTree(bottom, 3), visibleSelectionInComposedTree().end()); + EXPECT_EQ(PositionInFlatTree(bottom, 3), visibleSelectionInFlatTree().base()); + EXPECT_EQ(PositionInFlatTree(top, 1), visibleSelectionInFlatTree().extent()); + EXPECT_EQ(PositionInFlatTree(top, 1), visibleSelectionInFlatTree().start()); + EXPECT_EQ(PositionInFlatTree(bottom, 3), visibleSelectionInFlatTree().end()); } TEST_F(FrameSelectionTest, SelectAllWithUnselectableRoot)
diff --git a/third_party/WebKit/Source/core/editing/PendingSelection.cpp b/third_party/WebKit/Source/core/editing/PendingSelection.cpp index c33d170..d5d8fc75 100644 --- a/third_party/WebKit/Source/core/editing/PendingSelection.cpp +++ b/third_party/WebKit/Source/core/editing/PendingSelection.cpp
@@ -139,8 +139,8 @@ void PendingSelection::commit(LayoutView& layoutView) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return commitAlgorithm<EditingInComposedTreeStrategy>(layoutView); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return commitAlgorithm<EditingInFlatTreeStrategy>(layoutView); commitAlgorithm<EditingStrategy>(layoutView); }
diff --git a/third_party/WebKit/Source/core/editing/Position.cpp b/third_party/WebKit/Source/core/editing/Position.cpp index b666cfd..2df74ba8 100644 --- a/third_party/WebKit/Source/core/editing/Position.cpp +++ b/third_party/WebKit/Source/core/editing/Position.cpp
@@ -283,7 +283,7 @@ return Strategy::commonAncestor(*computeContainerNode(), *other.computeContainerNode()); } -int comparePositions(const PositionInComposedTree& positionA, const PositionInComposedTree& positionB) +int comparePositions(const PositionInFlatTree& positionA, const PositionInFlatTree& positionB) { ASSERT(positionA.isNotNull()); ASSERT(positionB.isNotNull()); @@ -294,7 +294,7 @@ Node* containerB = positionB.computeContainerNode(); int offsetA = positionA.computeOffsetInContainerNode(); int offsetB = positionB.computeOffsetInContainerNode(); - return comparePositionsInComposedTree(containerA, offsetA, containerB, offsetB); + return comparePositionsInFlatTree(containerA, offsetA, containerB, offsetB); } template <typename Strategy> @@ -383,40 +383,40 @@ fprintf(stderr, "Position [%s]: %s [%p] %s at %d\n", msg, anchorNode()->nodeName().utf8().data(), anchorNode(), anchorType, m_offset); } -PositionInComposedTree toPositionInComposedTree(const Position& pos) +PositionInFlatTree toPositionInFlatTree(const Position& pos) { if (pos.isNull()) - return PositionInComposedTree(); + return PositionInFlatTree(); if (pos.isOffsetInAnchor()) { Node* anchor = pos.anchorNode(); if (anchor->offsetInCharacters()) - return PositionInComposedTree(anchor, pos.computeOffsetInContainerNode()); + return PositionInFlatTree(anchor, pos.computeOffsetInContainerNode()); ASSERT(!anchor->isSlotOrActiveInsertionPoint()); int offset = pos.computeOffsetInContainerNode(); Node* child = NodeTraversal::childAt(*anchor, offset); if (!child) { if (anchor->isShadowRoot()) - return PositionInComposedTree(anchor->shadowHost(), PositionAnchorType::AfterChildren); - return PositionInComposedTree(anchor, PositionAnchorType::AfterChildren); + return PositionInFlatTree(anchor->shadowHost(), PositionAnchorType::AfterChildren); + return PositionInFlatTree(anchor, PositionAnchorType::AfterChildren); } child->updateDistribution(); if (child->isSlotOrActiveInsertionPoint()) { if (anchor->isShadowRoot()) - return PositionInComposedTree(anchor->shadowHost(), offset); - return PositionInComposedTree(anchor, offset); + return PositionInFlatTree(anchor->shadowHost(), offset); + return PositionInFlatTree(anchor, offset); } - if (Node* parent = ComposedTreeTraversal::parent(*child)) - return PositionInComposedTree(parent, ComposedTreeTraversal::index(*child)); - // When |pos| isn't appeared in composed tree, we map |pos| to after + if (Node* parent = FlatTreeTraversal::parent(*child)) + return PositionInFlatTree(parent, FlatTreeTraversal::index(*child)); + // When |pos| isn't appeared in flat tree, we map |pos| to after // children of shadow host. // e.g. "foo",0 in <progress>foo</progress> if (anchor->isShadowRoot()) - return PositionInComposedTree(anchor->shadowHost(), PositionAnchorType::AfterChildren); - return PositionInComposedTree(anchor, PositionAnchorType::AfterChildren); + return PositionInFlatTree(anchor->shadowHost(), PositionAnchorType::AfterChildren); + return PositionInFlatTree(anchor, PositionAnchorType::AfterChildren); } - return PositionInComposedTree(pos.anchorNode(), pos.anchorType()); + return PositionInFlatTree(pos.anchorNode(), pos.anchorType()); } Position toPositionInDOMTree(const Position& position) @@ -424,7 +424,7 @@ return position; } -Position toPositionInDOMTree(const PositionInComposedTree& position) +Position toPositionInDOMTree(const PositionInFlatTree& position) { if (position.isNull()) return Position(); @@ -445,7 +445,7 @@ int offset = position.offsetInContainerNode(); if (anchorNode->offsetInCharacters()) return Position(anchorNode, offset); - Node* child = ComposedTreeTraversal::childAt(*anchorNode, offset); + Node* child = FlatTreeTraversal::childAt(*anchorNode, offset); if (child) return Position(child->parentNode(), child->nodeIndex()); if (!position.offsetInContainerNode()) @@ -515,18 +515,18 @@ } template <typename Strategy> -void PositionTemplate<Strategy>::showTreeForThisInComposedTree() const +void PositionTemplate<Strategy>::showTreeForThisInFlatTree() const { if (!anchorNode()) return; - anchorNode()->showTreeForThisInComposedTree(); + anchorNode()->showTreeForThisInFlatTree(); showAnchorTypeAndOffset(); } #endif template class CORE_TEMPLATE_EXPORT PositionTemplate<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT PositionTemplate<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT PositionTemplate<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/Position.h b/third_party/WebKit/Source/core/editing/Position.h index 7a166380..aecc667 100644 --- a/third_party/WebKit/Source/core/editing/Position.h +++ b/third_party/WebKit/Source/core/editing/Position.h
@@ -172,7 +172,7 @@ void formatForDebugger(char* buffer, unsigned length) const; void showAnchorTypeAndOffset() const; void showTreeForThis() const; - void showTreeForThisInComposedTree() const; + void showTreeForThisInFlatTree() const; #endif DEFINE_INLINE_TRACE() @@ -195,10 +195,10 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionTemplate<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionTemplate<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionTemplate<EditingInFlatTreeStrategy>; using Position = PositionTemplate<EditingStrategy>; -using PositionInComposedTree = PositionTemplate<EditingInComposedTreeStrategy>; +using PositionInFlatTree = PositionTemplate<EditingInFlatTreeStrategy>; template <typename Strategy> bool operator==(const PositionTemplate<Strategy>& a, const PositionTemplate<Strategy>& b) @@ -371,9 +371,9 @@ return Strategy::editingIgnoresContent(node) ? afterNode(node) : lastPositionInNode(node); } -CORE_EXPORT PositionInComposedTree toPositionInComposedTree(const Position&); +CORE_EXPORT PositionInFlatTree toPositionInFlatTree(const Position&); CORE_EXPORT Position toPositionInDOMTree(const Position&); -CORE_EXPORT Position toPositionInDOMTree(const PositionInComposedTree&); +CORE_EXPORT Position toPositionInDOMTree(const PositionInFlatTree&); template <typename Strategy> PositionTemplate<Strategy> fromPositionInDOMTree(const Position&); @@ -385,9 +385,9 @@ } template <> -inline PositionInComposedTree fromPositionInDOMTree<EditingInComposedTreeStrategy>(const Position& position) +inline PositionInFlatTree fromPositionInDOMTree<EditingInFlatTreeStrategy>(const Position& position) { - return toPositionInComposedTree(position); + return toPositionInFlatTree(position); } // These printers are available only for testing in "webkit_unit_tests", and @@ -397,7 +397,7 @@ std::ostream& operator<<(std::ostream&, PositionAnchorType); std::ostream& operator<<(std::ostream&, const Position&); -std::ostream& operator<<(std::ostream&, const PositionInComposedTree&); +std::ostream& operator<<(std::ostream&, const PositionInFlatTree&); } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/PositionIterator.cpp b/third_party/WebKit/Source/core/editing/PositionIterator.cpp index f6cb27b..5846f39 100644 --- a/third_party/WebKit/Source/core/editing/PositionIterator.cpp +++ b/third_party/WebKit/Source/core/editing/PositionIterator.cpp
@@ -329,6 +329,6 @@ } template class PositionIteratorAlgorithm<EditingStrategy>; -template class PositionIteratorAlgorithm<EditingInComposedTreeStrategy>; +template class PositionIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/PositionIterator.h b/third_party/WebKit/Source/core/editing/PositionIterator.h index b62f3e9..8777b977 100644 --- a/third_party/WebKit/Source/core/editing/PositionIterator.h +++ b/third_party/WebKit/Source/core/editing/PositionIterator.h
@@ -86,10 +86,10 @@ }; extern template class PositionIteratorAlgorithm<EditingStrategy>; -extern template class PositionIteratorAlgorithm<EditingInComposedTreeStrategy>; +extern template class PositionIteratorAlgorithm<EditingInFlatTreeStrategy>; using PositionIterator = PositionIteratorAlgorithm<EditingStrategy>; -using PositionIteratorInComposedTree = PositionIteratorAlgorithm<EditingInComposedTreeStrategy>; +using PositionIteratorInFlatTree = PositionIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/PositionTest.cpp b/third_party/WebKit/Source/core/editing/PositionTest.cpp index b348eabe..5eaa807 100644 --- a/third_party/WebKit/Source/core/editing/PositionTest.cpp +++ b/third_party/WebKit/Source/core/editing/PositionTest.cpp
@@ -14,7 +14,7 @@ TEST_F(PositionTest, NodeAsRangeLastNodeNull) { EXPECT_EQ(nullptr, Position().nodeAsRangeLastNode()); - EXPECT_EQ(nullptr, PositionInComposedTree().nodeAsRangeLastNode()); + EXPECT_EQ(nullptr, PositionInFlatTree().nodeAsRangeLastNode()); } TEST_F(PositionTest, editingPositionOfWithEditingIgnoresContent) @@ -59,13 +59,13 @@ EXPECT_EQ(t3, Position::inParentAfterNode(*p3).nodeAsRangeLastNode()); EXPECT_EQ(t3, Position::afterNode(p3).nodeAsRangeLastNode()); - EXPECT_EQ(body, PositionInComposedTree::inParentBeforeNode(*p1).nodeAsRangeLastNode()); - EXPECT_EQ(t1, PositionInComposedTree::inParentBeforeNode(*p2).nodeAsRangeLastNode()); - EXPECT_EQ(p2, PositionInComposedTree::inParentBeforeNode(*p3).nodeAsRangeLastNode()); - EXPECT_EQ(t1, PositionInComposedTree::inParentAfterNode(*p1).nodeAsRangeLastNode()); - EXPECT_EQ(p2, PositionInComposedTree::inParentAfterNode(*p2).nodeAsRangeLastNode()); - EXPECT_EQ(t3, PositionInComposedTree::inParentAfterNode(*p3).nodeAsRangeLastNode()); - EXPECT_EQ(t3, PositionInComposedTree::afterNode(p3).nodeAsRangeLastNode()); + EXPECT_EQ(body, PositionInFlatTree::inParentBeforeNode(*p1).nodeAsRangeLastNode()); + EXPECT_EQ(t1, PositionInFlatTree::inParentBeforeNode(*p2).nodeAsRangeLastNode()); + EXPECT_EQ(p2, PositionInFlatTree::inParentBeforeNode(*p3).nodeAsRangeLastNode()); + EXPECT_EQ(t1, PositionInFlatTree::inParentAfterNode(*p1).nodeAsRangeLastNode()); + EXPECT_EQ(p2, PositionInFlatTree::inParentAfterNode(*p2).nodeAsRangeLastNode()); + EXPECT_EQ(t3, PositionInFlatTree::inParentAfterNode(*p3).nodeAsRangeLastNode()); + EXPECT_EQ(t3, PositionInFlatTree::afterNode(p3).nodeAsRangeLastNode()); } TEST_F(PositionTest, NodeAsRangeLastNodeShadow) @@ -90,14 +90,14 @@ EXPECT_EQ(t2, Position::inParentAfterNode(*n2).nodeAsRangeLastNode()); EXPECT_EQ(t3, Position::afterNode(host).nodeAsRangeLastNode()); - EXPECT_EQ(t2, PositionInComposedTree::inParentBeforeNode(*n1).nodeAsRangeLastNode()); - EXPECT_EQ(a, PositionInComposedTree::inParentBeforeNode(*n2).nodeAsRangeLastNode()); - EXPECT_EQ(t1, PositionInComposedTree::inParentAfterNode(*n1).nodeAsRangeLastNode()); - EXPECT_EQ(t2, PositionInComposedTree::inParentAfterNode(*n2).nodeAsRangeLastNode()); - EXPECT_EQ(t1, PositionInComposedTree::afterNode(host).nodeAsRangeLastNode()); + EXPECT_EQ(t2, PositionInFlatTree::inParentBeforeNode(*n1).nodeAsRangeLastNode()); + EXPECT_EQ(a, PositionInFlatTree::inParentBeforeNode(*n2).nodeAsRangeLastNode()); + EXPECT_EQ(t1, PositionInFlatTree::inParentAfterNode(*n1).nodeAsRangeLastNode()); + EXPECT_EQ(t2, PositionInFlatTree::inParentAfterNode(*n2).nodeAsRangeLastNode()); + EXPECT_EQ(t1, PositionInFlatTree::afterNode(host).nodeAsRangeLastNode()); } -TEST_F(PositionTest, ToPositionInComposedTreeWithActiveInsertionPoint) +TEST_F(PositionTest, ToPositionInFlatTreeWithActiveInsertionPoint) { const char* bodyContent = "<p id='host'>00<b id='one'>11</b>22</p>"; const char* shadowContent = "<a id='a'><content select=#one id='content'></content><content></content></a>"; @@ -105,31 +105,31 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = setShadowContent(shadowContent, "host"); RefPtrWillBeRawPtr<Element> anchor = shadowRoot->getElementById("a"); - EXPECT_EQ(PositionInComposedTree(anchor.get(), 0), toPositionInComposedTree(Position(anchor.get(), 0))); - EXPECT_EQ(PositionInComposedTree(anchor.get(), 1), toPositionInComposedTree(Position(anchor.get(), 1))); - EXPECT_EQ(PositionInComposedTree(anchor, PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(anchor.get(), 2))); + EXPECT_EQ(PositionInFlatTree(anchor.get(), 0), toPositionInFlatTree(Position(anchor.get(), 0))); + EXPECT_EQ(PositionInFlatTree(anchor.get(), 1), toPositionInFlatTree(Position(anchor.get(), 1))); + EXPECT_EQ(PositionInFlatTree(anchor, PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(anchor.get(), 2))); } -TEST_F(PositionTest, ToPositionInComposedTreeWithInactiveInsertionPoint) +TEST_F(PositionTest, ToPositionInFlatTreeWithInactiveInsertionPoint) { const char* bodyContent = "<p id='p'><content></content></p>"; setBodyContent(bodyContent); RefPtrWillBeRawPtr<Element> anchor = document().getElementById("p"); - EXPECT_EQ(PositionInComposedTree(anchor.get(), 0), toPositionInComposedTree(Position(anchor.get(), 0))); - EXPECT_EQ(PositionInComposedTree(anchor, PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(anchor.get(), 1))); + EXPECT_EQ(PositionInFlatTree(anchor.get(), 0), toPositionInFlatTree(Position(anchor.get(), 0))); + EXPECT_EQ(PositionInFlatTree(anchor, PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(anchor.get(), 1))); } // This test comes from "editing/style/block-style-progress-crash.html". -TEST_F(PositionTest, ToPositionInComposedTreeWithNotDistributed) +TEST_F(PositionTest, ToPositionInFlatTreeWithNotDistributed) { setBodyContent("<progress id=sample>foo</progress>"); Element* sample = document().getElementById("sample"); - EXPECT_EQ(PositionInComposedTree(sample, PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(sample, 0))); + EXPECT_EQ(PositionInFlatTree(sample, PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(sample, 0))); } -TEST_F(PositionTest, ToPositionInComposedTreeWithShadowRoot) +TEST_F(PositionTest, ToPositionInFlatTreeWithShadowRoot) { const char* bodyContent = "<p id='host'>00<b id='one'>11</b>22</p>"; const char* shadowContent = "<a><content select=#one></content></a>"; @@ -137,11 +137,11 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = setShadowContent(shadowContent, "host"); RefPtrWillBeRawPtr<Element> host = document().getElementById("host"); - EXPECT_EQ(PositionInComposedTree(host.get(), 0), toPositionInComposedTree(Position(shadowRoot.get(), 0))); - EXPECT_EQ(PositionInComposedTree(host.get(), PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(shadowRoot.get(), 1))); + EXPECT_EQ(PositionInFlatTree(host.get(), 0), toPositionInFlatTree(Position(shadowRoot.get(), 0))); + EXPECT_EQ(PositionInFlatTree(host.get(), PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(shadowRoot.get(), 1))); } -TEST_F(PositionTest, ToPositionInComposedTreeWithShadowRootContainingSingleContent) +TEST_F(PositionTest, ToPositionInFlatTreeWithShadowRootContainingSingleContent) { const char* bodyContent = "<p id='host'>00<b id='one'>11</b>22</p>"; const char* shadowContent = "<content select=#one></content>"; @@ -149,11 +149,11 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = setShadowContent(shadowContent, "host"); RefPtrWillBeRawPtr<Element> host = document().getElementById("host"); - EXPECT_EQ(PositionInComposedTree(host.get(), 0), toPositionInComposedTree(Position(shadowRoot.get(), 0))); - EXPECT_EQ(PositionInComposedTree(host.get(), PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(shadowRoot.get(), 1))); + EXPECT_EQ(PositionInFlatTree(host.get(), 0), toPositionInFlatTree(Position(shadowRoot.get(), 0))); + EXPECT_EQ(PositionInFlatTree(host.get(), PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(shadowRoot.get(), 1))); } -TEST_F(PositionTest, ToPositionInComposedTreeWithEmptyShadowRoot) +TEST_F(PositionTest, ToPositionInFlatTreeWithEmptyShadowRoot) { const char* bodyContent = "<p id='host'>00<b id='one'>11</b>22</p>"; const char* shadowContent = ""; @@ -161,7 +161,7 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = setShadowContent(shadowContent, "host"); RefPtrWillBeRawPtr<Element> host = document().getElementById("host"); - EXPECT_EQ(PositionInComposedTree(host, PositionAnchorType::AfterChildren), toPositionInComposedTree(Position(shadowRoot.get(), 0))); + EXPECT_EQ(PositionInFlatTree(host, PositionAnchorType::AfterChildren), toPositionInFlatTree(Position(shadowRoot.get(), 0))); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/PositionWithAffinity.cpp b/third_party/WebKit/Source/core/editing/PositionWithAffinity.cpp index 5e77c8e..58bf2ad4 100644 --- a/third_party/WebKit/Source/core/editing/PositionWithAffinity.cpp +++ b/third_party/WebKit/Source/core/editing/PositionWithAffinity.cpp
@@ -33,6 +33,6 @@ } template class CORE_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/PositionWithAffinity.h b/third_party/WebKit/Source/core/editing/PositionWithAffinity.h index e8b34aa..9a794ec7 100644 --- a/third_party/WebKit/Source/core/editing/PositionWithAffinity.h +++ b/third_party/WebKit/Source/core/editing/PositionWithAffinity.h
@@ -43,10 +43,10 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT PositionWithAffinityTemplate<EditingInFlatTreeStrategy>; using PositionWithAffinity = PositionWithAffinityTemplate<EditingStrategy>; -using PositionInComposedTreeWithAffinity = PositionWithAffinityTemplate<EditingInComposedTreeStrategy>; +using PositionInFlatTreeWithAffinity = PositionWithAffinityTemplate<EditingInFlatTreeStrategy>; template <typename Strategy> PositionWithAffinityTemplate<Strategy> fromPositionInDOMTree(const PositionWithAffinity&); @@ -58,9 +58,9 @@ } template <> -inline PositionInComposedTreeWithAffinity fromPositionInDOMTree<EditingInComposedTreeStrategy>(const PositionWithAffinity& positionWithAffinity) +inline PositionInFlatTreeWithAffinity fromPositionInDOMTree<EditingInFlatTreeStrategy>(const PositionWithAffinity& positionWithAffinity) { - return PositionInComposedTreeWithAffinity(toPositionInComposedTree(positionWithAffinity.position()), positionWithAffinity.affinity()); + return PositionInFlatTreeWithAffinity(toPositionInFlatTree(positionWithAffinity.position()), positionWithAffinity.affinity()); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/RenderedPosition.cpp b/third_party/WebKit/Source/core/editing/RenderedPosition.cpp index 2300c14..0ca8031 100644 --- a/third_party/WebKit/Source/core/editing/RenderedPosition.cpp +++ b/third_party/WebKit/Source/core/editing/RenderedPosition.cpp
@@ -71,7 +71,7 @@ { } -RenderedPosition::RenderedPosition(const VisiblePositionInComposedTree& position) +RenderedPosition::RenderedPosition(const VisiblePositionInFlatTree& position) : RenderedPosition(position.deepEquivalent(), position.affinity()) { } @@ -94,7 +94,7 @@ m_layoutObject = layoutObjectFromPosition(position); } -RenderedPosition::RenderedPosition(const PositionInComposedTree& position, TextAffinity affinity) +RenderedPosition::RenderedPosition(const PositionInFlatTree& position, TextAffinity affinity) : RenderedPosition(toPositionInDOMTree(position), affinity) { }
diff --git a/third_party/WebKit/Source/core/editing/RenderedPosition.h b/third_party/WebKit/Source/core/editing/RenderedPosition.h index 83b8d82..fdebceac 100644 --- a/third_party/WebKit/Source/core/editing/RenderedPosition.h +++ b/third_party/WebKit/Source/core/editing/RenderedPosition.h
@@ -47,9 +47,9 @@ public: RenderedPosition(); explicit RenderedPosition(const VisiblePosition&); - explicit RenderedPosition(const VisiblePositionInComposedTree&); + explicit RenderedPosition(const VisiblePositionInFlatTree&); RenderedPosition(const Position&, TextAffinity); - RenderedPosition(const PositionInComposedTree&, TextAffinity); + RenderedPosition(const PositionInFlatTree&, TextAffinity); bool isEquivalent(const RenderedPosition&) const; bool isNull() const { return !m_layoutObject; }
diff --git a/third_party/WebKit/Source/core/editing/SelectionAdjuster.cpp b/third_party/WebKit/Source/core/editing/SelectionAdjuster.cpp index e9fd273..9d9ea95f 100644 --- a/third_party/WebKit/Source/core/editing/SelectionAdjuster.cpp +++ b/third_party/WebKit/Source/core/editing/SelectionAdjuster.cpp
@@ -33,21 +33,21 @@ Node* enclosingShadowHost(Node* node) { - for (Node* runner = node; runner; runner = ComposedTreeTraversal::parent(*runner)) { + for (Node* runner = node; runner; runner = FlatTreeTraversal::parent(*runner)) { if (isShadowHost(runner)) return runner; } return nullptr; } -bool isEnclosedBy(const PositionInComposedTree& position, const Node& node) +bool isEnclosedBy(const PositionInFlatTree& position, const Node& node) { ASSERT(position.isNotNull()); Node* anchorNode = position.anchorNode(); if (anchorNode == node) return !position.isAfterAnchor() && !position.isBeforeAnchor(); - return ComposedTreeTraversal::isDescendantOf(*anchorNode, node); + return FlatTreeTraversal::isDescendantOf(*anchorNode, node); } bool isSelectionBoundary(const Node& node) @@ -55,7 +55,7 @@ return isHTMLTextAreaElement(node) || isHTMLInputElement(node) || isHTMLSelectElement(node); } -Node* enclosingShadowHostForStart(const PositionInComposedTree& position) +Node* enclosingShadowHostForStart(const PositionInFlatTree& position) { Node* node = position.nodeAsRangeFirstNode(); if (!node) @@ -68,7 +68,7 @@ return isSelectionBoundary(*shadowHost) ? shadowHost : nullptr; } -Node* enclosingShadowHostForEnd(const PositionInComposedTree& position) +Node* enclosingShadowHostForEnd(const PositionInFlatTree& position) { Node* node = position.nodeAsRangeLastNode(); if (!node) @@ -81,20 +81,20 @@ return isSelectionBoundary(*shadowHost) ? shadowHost : nullptr; } -PositionInComposedTree adjustPositionInComposedTreeForStart(const PositionInComposedTree& position, Node* shadowHost) +PositionInFlatTree adjustPositionInFlatTreeForStart(const PositionInFlatTree& position, Node* shadowHost) { if (isEnclosedBy(position, *shadowHost)) { if (position.isBeforeChildren()) - return PositionInComposedTree::beforeNode(shadowHost); - return PositionInComposedTree::afterNode(shadowHost); + return PositionInFlatTree::beforeNode(shadowHost); + return PositionInFlatTree::afterNode(shadowHost); } // We use |firstChild|'s after instead of beforeAllChildren for backward // compatibility. The positions are same but the anchors would be different, // and selection painting uses anchor nodes. - if (Node* firstChild = ComposedTreeTraversal::firstChild(*shadowHost)) - return PositionInComposedTree::beforeNode(firstChild); - return PositionInComposedTree(); + if (Node* firstChild = FlatTreeTraversal::firstChild(*shadowHost)) + return PositionInFlatTree::beforeNode(firstChild); + return PositionInFlatTree(); } Position adjustPositionForEnd(const Position& currentPosition, Node* startContainerNode) @@ -115,20 +115,20 @@ return Position(); } -PositionInComposedTree adjustPositionInComposedTreeForEnd(const PositionInComposedTree& position, Node* shadowHost) +PositionInFlatTree adjustPositionInFlatTreeForEnd(const PositionInFlatTree& position, Node* shadowHost) { if (isEnclosedBy(position, *shadowHost)) { if (position.isAfterChildren()) - return PositionInComposedTree::afterNode(shadowHost); - return PositionInComposedTree::beforeNode(shadowHost); + return PositionInFlatTree::afterNode(shadowHost); + return PositionInFlatTree::beforeNode(shadowHost); } // We use |lastChild|'s after instead of afterAllChildren for backward // compatibility. The positions are same but the anchors would be different, // and selection painting uses anchor nodes. - if (Node* lastChild = ComposedTreeTraversal::lastChild(*shadowHost)) - return PositionInComposedTree::afterNode(lastChild); - return PositionInComposedTree(); + if (Node* lastChild = FlatTreeTraversal::lastChild(*shadowHost)) + return PositionInFlatTree::afterNode(lastChild); + return PositionInFlatTree(); } Position adjustPositionForStart(const Position& currentPosition, Node* endContainerNode) @@ -151,39 +151,39 @@ } // namespace -// Updates |selectionInComposedTree| to match with |selection|. -void SelectionAdjuster::adjustSelectionInComposedTree(VisibleSelectionInComposedTree* selectionInComposedTree, const VisibleSelection& selection) +// Updates |selectionInFlatTree| to match with |selection|. +void SelectionAdjuster::adjustSelectionInFlatTree(VisibleSelectionInFlatTree* selectionInFlatTree, const VisibleSelection& selection) { if (selection.isNone()) { - *selectionInComposedTree = VisibleSelectionInComposedTree(); + *selectionInFlatTree = VisibleSelectionInFlatTree(); return; } - const PositionInComposedTree& base = toPositionInComposedTree(selection.base()); - const PositionInComposedTree& extent = toPositionInComposedTree(selection.extent()); - const PositionInComposedTree& position1 = toPositionInComposedTree(selection.start()); - const PositionInComposedTree& position2 = toPositionInComposedTree(selection.end()); + const PositionInFlatTree& base = toPositionInFlatTree(selection.base()); + const PositionInFlatTree& extent = toPositionInFlatTree(selection.extent()); + const PositionInFlatTree& position1 = toPositionInFlatTree(selection.start()); + const PositionInFlatTree& position2 = toPositionInFlatTree(selection.end()); position1.anchorNode()->updateDistribution(); position2.anchorNode()->updateDistribution(); - selectionInComposedTree->m_base = base; - selectionInComposedTree->m_extent = extent; - selectionInComposedTree->m_affinity = selection.m_affinity; - selectionInComposedTree->m_isDirectional = selection.m_isDirectional; - selectionInComposedTree->m_granularity = selection.m_granularity; - selectionInComposedTree->m_hasTrailingWhitespace = selection.m_hasTrailingWhitespace; - selectionInComposedTree->m_baseIsFirst = base.isNull() || base.compareTo(extent) <= 0; + selectionInFlatTree->m_base = base; + selectionInFlatTree->m_extent = extent; + selectionInFlatTree->m_affinity = selection.m_affinity; + selectionInFlatTree->m_isDirectional = selection.m_isDirectional; + selectionInFlatTree->m_granularity = selection.m_granularity; + selectionInFlatTree->m_hasTrailingWhitespace = selection.m_hasTrailingWhitespace; + selectionInFlatTree->m_baseIsFirst = base.isNull() || base.compareTo(extent) <= 0; if (position1.compareTo(position2) <= 0) { - selectionInComposedTree->m_start = position1; - selectionInComposedTree->m_end = position2; + selectionInFlatTree->m_start = position1; + selectionInFlatTree->m_end = position2; } else { - selectionInComposedTree->m_start = position2; - selectionInComposedTree->m_end = position1; + selectionInFlatTree->m_start = position2; + selectionInFlatTree->m_end = position1; } - selectionInComposedTree->updateSelectionType(); - selectionInComposedTree->didChange(); + selectionInFlatTree->updateSelectionType(); + selectionInFlatTree->didChange(); } -static bool isCrossingShadowBoundaries(const VisibleSelectionInComposedTree& selection) +static bool isCrossingShadowBoundaries(const VisibleSelectionInFlatTree& selection) { if (!selection.isRange()) return false; @@ -193,29 +193,29 @@ || selection.end().anchorNode()->treeScope() != treeScope; } -void SelectionAdjuster::adjustSelectionInDOMTree(VisibleSelection* selection, const VisibleSelectionInComposedTree& selectionInComposedTree) +void SelectionAdjuster::adjustSelectionInDOMTree(VisibleSelection* selection, const VisibleSelectionInFlatTree& selectionInFlatTree) { - if (selectionInComposedTree.isNone()) { + if (selectionInFlatTree.isNone()) { *selection = VisibleSelection(); return; } - const Position& base = toPositionInDOMTree(selectionInComposedTree.base()); - const Position& extent = toPositionInDOMTree(selectionInComposedTree.extent()); + const Position& base = toPositionInDOMTree(selectionInFlatTree.base()); + const Position& extent = toPositionInDOMTree(selectionInFlatTree.extent()); - if (isCrossingShadowBoundaries(selectionInComposedTree)) { + if (isCrossingShadowBoundaries(selectionInFlatTree)) { *selection = VisibleSelection(base, extent); return; } - const Position& position1 = toPositionInDOMTree(selectionInComposedTree.start()); - const Position& position2 = toPositionInDOMTree(selectionInComposedTree.end()); + const Position& position1 = toPositionInDOMTree(selectionInFlatTree.start()); + const Position& position2 = toPositionInDOMTree(selectionInFlatTree.end()); selection->m_base = base; selection->m_extent = extent; - selection->m_affinity = selectionInComposedTree.m_affinity; - selection->m_isDirectional = selectionInComposedTree.m_isDirectional; - selection->m_granularity = selectionInComposedTree.m_granularity; - selection->m_hasTrailingWhitespace = selectionInComposedTree.m_hasTrailingWhitespace; + selection->m_affinity = selectionInFlatTree.m_affinity; + selection->m_isDirectional = selectionInFlatTree.m_isDirectional; + selection->m_granularity = selectionInFlatTree.m_granularity; + selection->m_hasTrailingWhitespace = selectionInFlatTree.m_hasTrailingWhitespace; selection->m_baseIsFirst = base.isNull() || base.compareTo(extent) <= 0; if (position1.compareTo(position2) <= 0) { selection->m_start = position1; @@ -256,7 +256,7 @@ // This function is called twice. The first is called when |m_start| and |m_end| // or |m_extent| are same, and the second when |m_start| and |m_end| are changed // after downstream/upstream. -void SelectionAdjuster::adjustSelectionToAvoidCrossingShadowBoundaries(VisibleSelectionInComposedTree* selection) +void SelectionAdjuster::adjustSelectionToAvoidCrossingShadowBoundaries(VisibleSelectionInFlatTree* selection) { Node* const shadowHostStart = enclosingShadowHostForStart(selection->start()); Node* const shadowHostEnd = enclosingShadowHostForEnd(selection->end()); @@ -265,13 +265,13 @@ if (selection->isBaseFirst()) { Node* const shadowHost = shadowHostStart ? shadowHostStart : shadowHostEnd; - const PositionInComposedTree& newEnd = adjustPositionInComposedTreeForEnd(selection->end(), shadowHost); + const PositionInFlatTree& newEnd = adjustPositionInFlatTreeForEnd(selection->end(), shadowHost); selection->m_extent = newEnd; selection->m_end = newEnd; return; } Node* const shadowHost = shadowHostEnd ? shadowHostEnd : shadowHostStart; - const PositionInComposedTree& newStart = adjustPositionInComposedTreeForStart(selection->start(), shadowHost); + const PositionInFlatTree& newStart = adjustPositionInFlatTreeForStart(selection->start(), shadowHost); selection->m_extent = newStart; selection->m_start = newStart; }
diff --git a/third_party/WebKit/Source/core/editing/SelectionAdjuster.h b/third_party/WebKit/Source/core/editing/SelectionAdjuster.h index 37769a28..c589eeb6 100644 --- a/third_party/WebKit/Source/core/editing/SelectionAdjuster.h +++ b/third_party/WebKit/Source/core/editing/SelectionAdjuster.h
@@ -16,10 +16,10 @@ class CORE_EXPORT SelectionAdjuster final { STATIC_ONLY(SelectionAdjuster); public: - static void adjustSelectionInComposedTree(VisibleSelectionInComposedTree*, const VisibleSelection&); - static void adjustSelectionInDOMTree(VisibleSelection*, const VisibleSelectionInComposedTree&); + static void adjustSelectionInFlatTree(VisibleSelectionInFlatTree*, const VisibleSelection&); + static void adjustSelectionInDOMTree(VisibleSelection*, const VisibleSelectionInFlatTree&); static void adjustSelectionToAvoidCrossingShadowBoundaries(VisibleSelection*); - static void adjustSelectionToAvoidCrossingShadowBoundaries(VisibleSelectionInComposedTree*); + static void adjustSelectionToAvoidCrossingShadowBoundaries(VisibleSelectionInFlatTree*); }; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/SelectionAdjusterTest.cpp b/third_party/WebKit/Source/core/editing/SelectionAdjusterTest.cpp index 45fa12e1..e106aa8 100644 --- a/third_party/WebKit/Source/core/editing/SelectionAdjusterTest.cpp +++ b/third_party/WebKit/Source/core/editing/SelectionAdjusterTest.cpp
@@ -33,21 +33,21 @@ class SelectionAdjusterTest : public EditingTestBase { }; -TEST_F(SelectionAdjusterTest, adjustSelectionInComposedTree) +TEST_F(SelectionAdjusterTest, adjustSelectionInFlatTree) { setBodyContent("<div id=sample>foo</div>"); MockVisibleSelectionChangeObserver selectionObserver; - VisibleSelectionInComposedTree selectionInComposedTree; - selectionInComposedTree.setChangeObserver(selectionObserver); + VisibleSelectionInFlatTree selectionInFlatTree; + selectionInFlatTree.setChangeObserver(selectionObserver); Node* const sample = document().getElementById("sample"); Node* const foo = sample->firstChild(); // Select "foo" VisibleSelection selection(Position(foo, 0), Position(foo, 3)); - SelectionAdjuster::adjustSelectionInComposedTree(&selectionInComposedTree, selection); - EXPECT_EQ(PositionInComposedTree(foo, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(foo, 3), selectionInComposedTree.end()); - EXPECT_EQ(1, selectionObserver.callCounter()) << "adjustSelectionInComposedTree() should call didChangeVisibleSelection()"; + SelectionAdjuster::adjustSelectionInFlatTree(&selectionInFlatTree, selection); + EXPECT_EQ(PositionInFlatTree(foo, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(foo, 3), selectionInFlatTree.end()); + EXPECT_EQ(1, selectionObserver.callCounter()) << "adjustSelectionInFlatTree() should call didChangeVisibleSelection()"; } TEST_F(SelectionAdjusterTest, adjustSelectionInDOMTree) @@ -60,10 +60,10 @@ Node* const sample = document().getElementById("sample"); Node* const foo = sample->firstChild(); // Select "foo" - VisibleSelectionInComposedTree selectionInComposedTree( - PositionInComposedTree(foo, 0), - PositionInComposedTree(foo, 3)); - SelectionAdjuster::adjustSelectionInDOMTree(&selection, selectionInComposedTree); + VisibleSelectionInFlatTree selectionInFlatTree( + PositionInFlatTree(foo, 0), + PositionInFlatTree(foo, 3)); + SelectionAdjuster::adjustSelectionInDOMTree(&selection, selectionInFlatTree); EXPECT_EQ(Position(foo, 0), selection.start()); EXPECT_EQ(Position(foo, 3), selection.end()); EXPECT_EQ(1, selectionObserver.callCounter()) << "adjustSelectionInDOMTree() should call didChangeVisibleSelection()";
diff --git a/third_party/WebKit/Source/core/editing/SelectionController.cpp b/third_party/WebKit/Source/core/editing/SelectionController.cpp index b23baba..db0ebebf 100644 --- a/third_party/WebKit/Source/core/editing/SelectionController.cpp +++ b/third_party/WebKit/Source/core/editing/SelectionController.cpp
@@ -352,8 +352,8 @@ AppendTrailingWhitespace appendTrailingWhitespace = (result.event().clickCount() == 2 && m_frame->editor().isSelectTrailingWhitespaceEnabled()) ? AppendTrailingWhitespace::ShouldAppend : AppendTrailingWhitespace::DontAppend; - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return selectClosestWordFromHitTestResult<EditingInComposedTreeStrategy>(result.hitTestResult(), appendTrailingWhitespace); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return selectClosestWordFromHitTestResult<EditingInFlatTreeStrategy>(result.hitTestResult(), appendTrailingWhitespace); selectClosestWordFromHitTestResult<EditingStrategy>(result.hitTestResult(), appendTrailingWhitespace); } @@ -438,15 +438,15 @@ bool SelectionController::handleMousePressEventTripleClick(const MouseEventWithHitTestResults& event) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return handleMousePressEventTripleClickAlgorithm<EditingInComposedTreeStrategy>(event); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return handleMousePressEventTripleClickAlgorithm<EditingInFlatTreeStrategy>(event); return handleMousePressEventTripleClickAlgorithm<EditingStrategy>(event); } bool SelectionController::handleMousePressEventSingleClick(const MouseEventWithHitTestResults& event) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return handleMousePressEventSingleClickAlgorithm<EditingInComposedTreeStrategy>(event); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return handleMousePressEventSingleClickAlgorithm<EditingInFlatTreeStrategy>(event); return handleMousePressEventSingleClickAlgorithm<EditingStrategy>(event); } @@ -490,8 +490,8 @@ void SelectionController::updateSelectionForMouseDrag(const HitTestResult& hitTestResult, Node* mousePressNode, const LayoutPoint& dragStartPos, const IntPoint& lastKnownMousePosition) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return updateSelectionForMouseDragAlgorithm<EditingInComposedTreeStrategy>(hitTestResult, mousePressNode, dragStartPos, lastKnownMousePosition); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return updateSelectionForMouseDragAlgorithm<EditingInFlatTreeStrategy>(hitTestResult, mousePressNode, dragStartPos, lastKnownMousePosition); updateSelectionForMouseDragAlgorithm<EditingStrategy>(hitTestResult, mousePressNode, dragStartPos, lastKnownMousePosition); } @@ -535,8 +535,8 @@ bool SelectionController::handleMouseReleaseEvent(const MouseEventWithHitTestResults& event, const LayoutPoint& dragStartPos) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return handleMouseReleaseEventAlgorithm<EditingInComposedTreeStrategy>(event, dragStartPos); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return handleMouseReleaseEventAlgorithm<EditingInFlatTreeStrategy>(event, dragStartPos); return handleMouseReleaseEventAlgorithm<EditingStrategy>(event, dragStartPos); } @@ -592,8 +592,8 @@ bool SelectionController::handleGestureLongPress(const PlatformGestureEvent& gestureEvent, const HitTestResult& hitTestResult) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return handleGestureLongPressAlgorithm<EditingInComposedTreeStrategy>(gestureEvent, hitTestResult); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return handleGestureLongPressAlgorithm<EditingInFlatTreeStrategy>(gestureEvent, hitTestResult); return handleGestureLongPressAlgorithm<EditingStrategy>(gestureEvent, hitTestResult); } @@ -610,16 +610,16 @@ m_mouseDownMayStartSelect = true; // context menu events are always allowed to perform a selection if (mev.hitTestResult().isMisspelled()) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return selectClosestMisspellingFromMouseEvent<EditingInComposedTreeStrategy>(mev); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return selectClosestMisspellingFromMouseEvent<EditingInFlatTreeStrategy>(mev); return selectClosestMisspellingFromMouseEvent<EditingStrategy>(mev); } if (!m_frame->editor().behavior().shouldSelectOnContextualMenuClick()) return; - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return selectClosestWordOrLinkFromMouseEvent<EditingInComposedTreeStrategy>(mev); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return selectClosestWordOrLinkFromMouseEvent<EditingInFlatTreeStrategy>(mev); selectClosestWordOrLinkFromMouseEvent<EditingStrategy>(mev); } @@ -642,8 +642,8 @@ void SelectionController::passMousePressEventToSubframe(const MouseEventWithHitTestResults& mev) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return passMousePressEventToSubframeAlgorithm<EditingInComposedTreeStrategy>(mev); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return passMousePressEventToSubframeAlgorithm<EditingInFlatTreeStrategy>(mev); passMousePressEventToSubframeAlgorithm<EditingStrategy>(mev); }
diff --git a/third_party/WebKit/Source/core/editing/SelectionEditor.cpp b/third_party/WebKit/Source/core/editing/SelectionEditor.cpp index 76bdfcf..4660cdc1 100644 --- a/third_party/WebKit/Source/core/editing/SelectionEditor.cpp +++ b/third_party/WebKit/Source/core/editing/SelectionEditor.cpp
@@ -84,27 +84,27 @@ } template <> -const VisibleSelectionInComposedTree& SelectionEditor::visibleSelection<EditingInComposedTreeStrategy>() const +const VisibleSelectionInFlatTree& SelectionEditor::visibleSelection<EditingInFlatTreeStrategy>() const { - return m_selectionInComposedTree; + return m_selectionInFlatTree; } void SelectionEditor::setVisibleSelection(const VisibleSelection& newSelection, FrameSelection::SetSelectionOptions options) { m_selection = newSelection; - if (options & FrameSelection::DoNotAdjustInComposedTree) { - m_selectionInComposedTree.setWithoutValidation(toPositionInComposedTree(m_selection.base()), toPositionInComposedTree(m_selection.extent())); + if (options & FrameSelection::DoNotAdjustInFlatTree) { + m_selectionInFlatTree.setWithoutValidation(toPositionInFlatTree(m_selection.base()), toPositionInFlatTree(m_selection.extent())); return; } - SelectionAdjuster::adjustSelectionInComposedTree(&m_selectionInComposedTree, m_selection); + SelectionAdjuster::adjustSelectionInFlatTree(&m_selectionInFlatTree, m_selection); } -void SelectionEditor::setVisibleSelection(const VisibleSelectionInComposedTree& newSelection, FrameSelection::SetSelectionOptions options) +void SelectionEditor::setVisibleSelection(const VisibleSelectionInFlatTree& newSelection, FrameSelection::SetSelectionOptions options) { - ASSERT(!(options & FrameSelection::DoNotAdjustInComposedTree)); - m_selectionInComposedTree = newSelection; - SelectionAdjuster::adjustSelectionInDOMTree(&m_selection, m_selectionInComposedTree); + ASSERT(!(options & FrameSelection::DoNotAdjustInFlatTree)); + m_selectionInFlatTree = newSelection; + SelectionAdjuster::adjustSelectionInDOMTree(&m_selection, m_selectionInFlatTree); } void SelectionEditor::resetXPosForVerticalArrowNavigation() @@ -115,13 +115,13 @@ void SelectionEditor::setIsDirectional(bool isDirectional) { m_selection.setIsDirectional(isDirectional); - m_selectionInComposedTree.setIsDirectional(isDirectional); + m_selectionInFlatTree.setIsDirectional(isDirectional); } void SelectionEditor::setWithoutValidation(const Position& base, const Position& extent) { m_selection.setWithoutValidation(base, extent); - m_selectionInComposedTree.setWithoutValidation(toPositionInComposedTree(base), toPositionInComposedTree(extent)); + m_selectionInFlatTree.setWithoutValidation(toPositionInFlatTree(base), toPositionInFlatTree(extent)); } TextDirection SelectionEditor::directionOfEnclosingBlock() @@ -895,14 +895,14 @@ void SelectionEditor::updateIfNeeded() { m_selection.updateIfNeeded(); - m_selectionInComposedTree.updateIfNeeded(); + m_selectionInFlatTree.updateIfNeeded(); } DEFINE_TRACE(SelectionEditor) { visitor->trace(m_frameSelection); visitor->trace(m_selection); - visitor->trace(m_selectionInComposedTree); + visitor->trace(m_selectionInFlatTree); visitor->trace(m_logicalRange); VisibleSelectionChangeObserver::trace(visitor); }
diff --git a/third_party/WebKit/Source/core/editing/SelectionEditor.h b/third_party/WebKit/Source/core/editing/SelectionEditor.h index bf37ddfc..2a2dab49 100644 --- a/third_party/WebKit/Source/core/editing/SelectionEditor.h +++ b/third_party/WebKit/Source/core/editing/SelectionEditor.h
@@ -59,7 +59,7 @@ template <typename Strategy> const VisibleSelectionTemplate<Strategy>& visibleSelection() const; void setVisibleSelection(const VisibleSelection&, FrameSelection::SetSelectionOptions); - void setVisibleSelection(const VisibleSelectionInComposedTree&, FrameSelection::SetSelectionOptions); + void setVisibleSelection(const VisibleSelectionInFlatTree&, FrameSelection::SetSelectionOptions); void setIsDirectional(bool); void setWithoutValidation(const Position& base, const Position& extent); @@ -76,7 +76,7 @@ // VisibleSelectionChangeObserver interface. void didChangeVisibleSelection() override; - // Updates |m_selection| and |m_selectionInComposedTree| with up-to-date + // Updates |m_selection| and |m_selectionInFlatTree| with up-to-date // layout if needed. void updateIfNeeded(); @@ -90,7 +90,7 @@ LocalFrame* frame() const; - void adjustVisibleSelectionInComposedTree(); + void adjustVisibleSelectionInFlatTree(); void adjustVisibleSelectionInDOMTree(); TextDirection directionOfEnclosingBlock(); @@ -120,7 +120,7 @@ LayoutUnit m_xPosForVerticalArrowNavigation; VisibleSelection m_selection; - VisibleSelectionInComposedTree m_selectionInComposedTree; + VisibleSelectionInFlatTree m_selectionInFlatTree; bool m_observingVisibleSelection; // The range specified by the user, which may not be visually canonicalized
diff --git a/third_party/WebKit/Source/core/editing/VisiblePosition.cpp b/third_party/WebKit/Source/core/editing/VisiblePosition.cpp index 095ef9f..5d3daec 100644 --- a/third_party/WebKit/Source/core/editing/VisiblePosition.cpp +++ b/third_party/WebKit/Source/core/editing/VisiblePosition.cpp
@@ -87,14 +87,14 @@ return VisiblePosition::create(positionWithAffinity); } -VisiblePositionInComposedTree createVisiblePosition(const PositionInComposedTree& position, TextAffinity affinity) +VisiblePositionInFlatTree createVisiblePosition(const PositionInFlatTree& position, TextAffinity affinity) { - return VisiblePositionInComposedTree::create(PositionInComposedTreeWithAffinity(position, affinity)); + return VisiblePositionInFlatTree::create(PositionInFlatTreeWithAffinity(position, affinity)); } -VisiblePositionInComposedTree createVisiblePosition(const PositionInComposedTreeWithAffinity& positionWithAffinity) +VisiblePositionInFlatTree createVisiblePosition(const PositionInFlatTreeWithAffinity& positionWithAffinity) { - return VisiblePositionInComposedTree::create(positionWithAffinity); + return VisiblePositionInFlatTree::create(positionWithAffinity); } VisiblePosition createVisiblePositionInDOMTree(const Position& position, TextAffinity affinity) @@ -102,9 +102,9 @@ return createVisiblePosition(position, affinity); } -VisiblePosition createVisiblePositionInDOMTree(const PositionInComposedTree& position, TextAffinity affinity) +VisiblePosition createVisiblePositionInDOMTree(const PositionInFlatTree& position, TextAffinity affinity) { - const VisiblePositionInComposedTree visiblePosition = createVisiblePosition(position); + const VisiblePositionInFlatTree visiblePosition = createVisiblePosition(position); return createVisiblePosition(toPositionInDOMTree(visiblePosition.deepEquivalent()), affinity); } @@ -135,7 +135,7 @@ #endif template class CORE_TEMPLATE_EXPORT VisiblePositionTemplate<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT VisiblePositionTemplate<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT VisiblePositionTemplate<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/VisiblePosition.h b/third_party/WebKit/Source/core/editing/VisiblePosition.h index 313f7df..5de0742 100644 --- a/third_party/WebKit/Source/core/editing/VisiblePosition.h +++ b/third_party/WebKit/Source/core/editing/VisiblePosition.h
@@ -111,20 +111,20 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<EditingInFlatTreeStrategy>; using VisiblePosition = VisiblePositionTemplate<EditingStrategy>; -using VisiblePositionInComposedTree = VisiblePositionTemplate<EditingInComposedTreeStrategy>; +using VisiblePositionInFlatTree = VisiblePositionTemplate<EditingInFlatTreeStrategy>; CORE_EXPORT VisiblePosition createVisiblePosition(const Position&, TextAffinity = VP_DEFAULT_AFFINITY); CORE_EXPORT VisiblePosition createVisiblePosition(const PositionWithAffinity&); -CORE_EXPORT VisiblePositionInComposedTree createVisiblePosition(const PositionInComposedTree&, TextAffinity = VP_DEFAULT_AFFINITY); -CORE_EXPORT VisiblePositionInComposedTree createVisiblePosition(const PositionInComposedTreeWithAffinity&); +CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlatTree&, TextAffinity = VP_DEFAULT_AFFINITY); +CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlatTreeWithAffinity&); -// TODO(yosin) Once we have composed tree version of VisibleUnits, we should not +// TODO(yosin) Once we have flat tree version of VisibleUnits, we should not // use |createVisiblePositionInDOMTree()|. VisiblePosition createVisiblePositionInDOMTree(const Position&, TextAffinity = VP_DEFAULT_AFFINITY); -VisiblePosition createVisiblePositionInDOMTree(const PositionInComposedTree&, TextAffinity = VP_DEFAULT_AFFINITY); +VisiblePosition createVisiblePositionInDOMTree(const PositionInFlatTree&, TextAffinity = VP_DEFAULT_AFFINITY); } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/VisiblePositionTest.cpp b/third_party/WebKit/Source/core/editing/VisiblePositionTest.cpp index 5990ff3..d591a6b 100644 --- a/third_party/WebKit/Source/core/editing/VisiblePositionTest.cpp +++ b/third_party/WebKit/Source/core/editing/VisiblePositionTest.cpp
@@ -30,10 +30,10 @@ EXPECT_EQ(Position(one->firstChild(), 2), canonicalPositionOf(Position(two.get(), 0))); EXPECT_EQ(Position(one->firstChild(), 2), createVisiblePosition(Position(two.get(), 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 2), canonicalPositionOf(PositionInComposedTree(one.get(), 0))); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 2), createVisiblePosition(PositionInComposedTree(one.get(), 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four->firstChild(), 2), canonicalPositionOf(PositionInComposedTree(two.get(), 0))); - EXPECT_EQ(PositionInComposedTree(four->firstChild(), 2), createVisiblePosition(PositionInComposedTree(two.get(), 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 2), canonicalPositionOf(PositionInFlatTree(one.get(), 0))); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 2), createVisiblePosition(PositionInFlatTree(one.get(), 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four->firstChild(), 2), canonicalPositionOf(PositionInFlatTree(two.get(), 0))); + EXPECT_EQ(PositionInFlatTree(four->firstChild(), 2), createVisiblePosition(PositionInFlatTree(two.get(), 0)).deepEquivalent()); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/VisibleSelection.cpp b/third_party/WebKit/Source/core/editing/VisibleSelection.cpp index c8ed0e7..d7d7114e 100644 --- a/third_party/WebKit/Source/core/editing/VisibleSelection.cpp +++ b/third_party/WebKit/Source/core/editing/VisibleSelection.cpp
@@ -954,7 +954,7 @@ #endif template class CORE_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingInFlatTreeStrategy>; } // namespace blink @@ -971,12 +971,12 @@ sel->showTreeForThis(); } -void showTree(const blink::VisibleSelectionInComposedTree& sel) +void showTree(const blink::VisibleSelectionInFlatTree& sel) { sel.showTreeForThis(); } -void showTree(const blink::VisibleSelectionInComposedTree* sel) +void showTree(const blink::VisibleSelectionInFlatTree* sel) { if (sel) sel->showTreeForThis();
diff --git a/third_party/WebKit/Source/core/editing/VisibleSelection.h b/third_party/WebKit/Source/core/editing/VisibleSelection.h index cd22695..1916386c 100644 --- a/third_party/WebKit/Source/core/editing/VisibleSelection.h +++ b/third_party/WebKit/Source/core/editing/VisibleSelection.h
@@ -207,10 +207,10 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT VisibleSelectionTemplate<EditingInFlatTreeStrategy>; using VisibleSelection = VisibleSelectionTemplate<EditingStrategy>; -using VisibleSelectionInComposedTree = VisibleSelectionTemplate<EditingInComposedTreeStrategy>; +using VisibleSelectionInFlatTree = VisibleSelectionTemplate<EditingInFlatTreeStrategy>; // TODO(yosin): We should use |operator==()| instead of // |equalSelectionsInDOMTree()|. @@ -229,8 +229,8 @@ // Outside the WebCore namespace for ease of invocation from gdb. void showTree(const blink::VisibleSelection&); void showTree(const blink::VisibleSelection*); -void showTree(const blink::VisibleSelectionInComposedTree&); -void showTree(const blink::VisibleSelectionInComposedTree*); +void showTree(const blink::VisibleSelectionInFlatTree&); +void showTree(const blink::VisibleSelectionInFlatTree*); #endif #endif // VisibleSelection_h
diff --git a/third_party/WebKit/Source/core/editing/VisibleSelectionTest.cpp b/third_party/WebKit/Source/core/editing/VisibleSelectionTest.cpp index c747e617..d8ba923 100644 --- a/third_party/WebKit/Source/core/editing/VisibleSelectionTest.cpp +++ b/third_party/WebKit/Source/core/editing/VisibleSelectionTest.cpp
@@ -36,15 +36,15 @@ } }; -static void testComposedTreePositionsToEqualToDOMTreePositions(const VisibleSelection& selection, const VisibleSelectionInComposedTree& selectionInComposedTree) +static void testFlatTreePositionsToEqualToDOMTreePositions(const VisibleSelection& selection, const VisibleSelectionInFlatTree& selectionInFlatTree) { - // Since DOM tree positions can't be map to composed tree version, e.g. - // shadow root, not distributed node, we map a position in composed tree + // Since DOM tree positions can't be map to flat tree version, e.g. + // shadow root, not distributed node, we map a position in flat tree // to DOM tree position. - EXPECT_EQ(selection.start(), toPositionInDOMTree(selectionInComposedTree.start())); - EXPECT_EQ(selection.end(), toPositionInDOMTree(selectionInComposedTree.end())); - EXPECT_EQ(selection.base(), toPositionInDOMTree(selectionInComposedTree.base())); - EXPECT_EQ(selection.extent(), toPositionInDOMTree(selectionInComposedTree.extent())); + EXPECT_EQ(selection.start(), toPositionInDOMTree(selectionInFlatTree.start())); + EXPECT_EQ(selection.end(), toPositionInDOMTree(selectionInFlatTree.end())); + EXPECT_EQ(selection.base(), toPositionInDOMTree(selectionInFlatTree.base())); + EXPECT_EQ(selection.extent(), toPositionInDOMTree(selectionInFlatTree.extent())); } TEST_F(VisibleSelectionTest, expandUsingGranularity) @@ -62,87 +62,87 @@ Node* five = shadowRoot->getElementById("five")->firstChild(); VisibleSelection selection; - VisibleSelectionInComposedTree selectionInComposedTree; + VisibleSelectionInFlatTree selectionInFlatTree; // From a position at distributed node selection = VisibleSelection(createVisiblePosition(Position(one, 1))); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree = VisibleSelectionInComposedTree(createVisiblePosition(PositionInComposedTree(one, 1))); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree = VisibleSelectionInFlatTree(createVisiblePosition(PositionInFlatTree(one, 1))); + selectionInFlatTree.expandUsingGranularity(WordGranularity); EXPECT_EQ(Position(one, 1), selection.base()); EXPECT_EQ(Position(one, 1), selection.extent()); EXPECT_EQ(Position(one, 0), selection.start()); EXPECT_EQ(Position(two, 2), selection.end()); - EXPECT_EQ(PositionInComposedTree(one, 1), selectionInComposedTree.base()); - EXPECT_EQ(PositionInComposedTree(one, 1), selectionInComposedTree.extent()); - EXPECT_EQ(PositionInComposedTree(one, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(five, 5), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(one, 1), selectionInFlatTree.base()); + EXPECT_EQ(PositionInFlatTree(one, 1), selectionInFlatTree.extent()); + EXPECT_EQ(PositionInFlatTree(one, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(five, 5), selectionInFlatTree.end()); // From a position at distributed node selection = VisibleSelection(createVisiblePosition(Position(two, 1))); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree = VisibleSelectionInComposedTree(createVisiblePosition(PositionInComposedTree(two, 1))); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree = VisibleSelectionInFlatTree(createVisiblePosition(PositionInFlatTree(two, 1))); + selectionInFlatTree.expandUsingGranularity(WordGranularity); EXPECT_EQ(Position(two, 1), selection.base()); EXPECT_EQ(Position(two, 1), selection.extent()); EXPECT_EQ(Position(one, 0), selection.start()); EXPECT_EQ(Position(two, 2), selection.end()); - EXPECT_EQ(PositionInComposedTree(two, 1), selectionInComposedTree.base()); - EXPECT_EQ(PositionInComposedTree(two, 1), selectionInComposedTree.extent()); - EXPECT_EQ(PositionInComposedTree(three, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(four, 4), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(two, 1), selectionInFlatTree.base()); + EXPECT_EQ(PositionInFlatTree(two, 1), selectionInFlatTree.extent()); + EXPECT_EQ(PositionInFlatTree(three, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(four, 4), selectionInFlatTree.end()); // From a position at node in shadow tree selection = VisibleSelection(createVisiblePosition(Position(three, 1))); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree = VisibleSelectionInComposedTree(createVisiblePosition(PositionInComposedTree(three, 1))); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree = VisibleSelectionInFlatTree(createVisiblePosition(PositionInFlatTree(three, 1))); + selectionInFlatTree.expandUsingGranularity(WordGranularity); EXPECT_EQ(Position(three, 1), selection.base()); EXPECT_EQ(Position(three, 1), selection.extent()); EXPECT_EQ(Position(three, 0), selection.start()); EXPECT_EQ(Position(four, 4), selection.end()); - EXPECT_EQ(PositionInComposedTree(three, 1), selectionInComposedTree.base()); - EXPECT_EQ(PositionInComposedTree(three, 1), selectionInComposedTree.extent()); - EXPECT_EQ(PositionInComposedTree(three, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(four, 4), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(three, 1), selectionInFlatTree.base()); + EXPECT_EQ(PositionInFlatTree(three, 1), selectionInFlatTree.extent()); + EXPECT_EQ(PositionInFlatTree(three, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(four, 4), selectionInFlatTree.end()); // From a position at node in shadow tree selection = VisibleSelection(createVisiblePosition(Position(four, 1))); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree = VisibleSelectionInComposedTree(createVisiblePosition(PositionInComposedTree(four, 1))); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree = VisibleSelectionInFlatTree(createVisiblePosition(PositionInFlatTree(four, 1))); + selectionInFlatTree.expandUsingGranularity(WordGranularity); EXPECT_EQ(Position(four, 1), selection.base()); EXPECT_EQ(Position(four, 1), selection.extent()); EXPECT_EQ(Position(three, 0), selection.start()); EXPECT_EQ(Position(four, 4), selection.end()); - EXPECT_EQ(PositionInComposedTree(four, 1), selectionInComposedTree.base()); - EXPECT_EQ(PositionInComposedTree(four, 1), selectionInComposedTree.extent()); - EXPECT_EQ(PositionInComposedTree(three, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(four, 4), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(four, 1), selectionInFlatTree.base()); + EXPECT_EQ(PositionInFlatTree(four, 1), selectionInFlatTree.extent()); + EXPECT_EQ(PositionInFlatTree(three, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(four, 4), selectionInFlatTree.end()); // From a position at node in shadow tree selection = VisibleSelection(createVisiblePosition(Position(five, 1))); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree = VisibleSelectionInComposedTree(createVisiblePosition(PositionInComposedTree(five, 1))); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree = VisibleSelectionInFlatTree(createVisiblePosition(PositionInFlatTree(five, 1))); + selectionInFlatTree.expandUsingGranularity(WordGranularity); EXPECT_EQ(Position(five, 1), selection.base()); EXPECT_EQ(Position(five, 1), selection.extent()); EXPECT_EQ(Position(five, 0), selection.start()); EXPECT_EQ(Position(five, 5), selection.end()); - EXPECT_EQ(PositionInComposedTree(five, 1), selectionInComposedTree.base()); - EXPECT_EQ(PositionInComposedTree(five, 1), selectionInComposedTree.extent()); - EXPECT_EQ(PositionInComposedTree(one, 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(five, 5), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(five, 1), selectionInFlatTree.base()); + EXPECT_EQ(PositionInFlatTree(five, 1), selectionInFlatTree.extent()); + EXPECT_EQ(PositionInFlatTree(one, 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(five, 5), selectionInFlatTree.end()); } TEST_F(VisibleSelectionTest, Initialisation) @@ -150,20 +150,20 @@ setBodyContent(LOREM_IPSUM); VisibleSelection selection; - VisibleSelectionInComposedTree selectionInComposedTree; + VisibleSelectionInFlatTree selectionInFlatTree; setSelection(selection, 0); - setSelection(selectionInComposedTree, 0); + setSelection(selectionInFlatTree, 0); EXPECT_FALSE(selection.isNone()); - EXPECT_FALSE(selectionInComposedTree.isNone()); + EXPECT_FALSE(selectionInFlatTree.isNone()); EXPECT_TRUE(selection.isCaret()); - EXPECT_TRUE(selectionInComposedTree.isCaret()); + EXPECT_TRUE(selectionInFlatTree.isCaret()); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(0, range->startOffset()); EXPECT_EQ(0, range->endOffset()); EXPECT_EQ("", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } TEST_F(VisibleSelectionTest, ShadowCrossing) @@ -179,12 +179,12 @@ RefPtrWillBeRawPtr<Element> six = shadowRoot->querySelector("#s6", ASSERT_NO_EXCEPTION); VisibleSelection selection(Position::firstPositionInNode(one.get()), Position::lastPositionInNode(shadowRoot.get())); - VisibleSelectionInComposedTree selectionInComposedTree(PositionInComposedTree::firstPositionInNode(one.get()), PositionInComposedTree::lastPositionInNode(host.get())); + VisibleSelectionInFlatTree selectionInFlatTree(PositionInFlatTree::firstPositionInNode(one.get()), PositionInFlatTree::lastPositionInNode(host.get())); EXPECT_EQ(Position(host.get(), PositionAnchorType::BeforeAnchor), selection.start()); EXPECT_EQ(Position(one->firstChild(), 0), selection.end()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(six->firstChild(), 2), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(six->firstChild(), 2), selectionInFlatTree.end()); } TEST_F(VisibleSelectionTest, ShadowV0DistributedNodes) @@ -200,12 +200,12 @@ RefPtrWillBeRawPtr<Element> five = shadowRoot->querySelector("#s5", ASSERT_NO_EXCEPTION); VisibleSelection selection(Position::firstPositionInNode(one.get()), Position::lastPositionInNode(two.get())); - VisibleSelectionInComposedTree selectionInComposedTree(PositionInComposedTree::firstPositionInNode(one.get()), PositionInComposedTree::lastPositionInNode(two.get())); + VisibleSelectionInFlatTree selectionInFlatTree(PositionInFlatTree::firstPositionInNode(one.get()), PositionInFlatTree::lastPositionInNode(two.get())); EXPECT_EQ(Position(one->firstChild(), 0), selection.start()); EXPECT_EQ(Position(two->firstChild(), 2), selection.end()); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 0), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 2), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 0), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 2), selectionInFlatTree.end()); } TEST_F(VisibleSelectionTest, ShadowNested) @@ -217,7 +217,7 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot = setShadowContent(shadowContent, "host"); RefPtrWillBeRawPtr<ShadowRoot> shadowRoot2 = createShadowRootForElementWithIDAndSetInnerHTML(*shadowRoot, "s5", shadowContent2); - // Composed tree is something like below: + // Flat tree is something like below: // <p id="host"> // <span id="s4">44</span> // <b id="two">22</b> @@ -231,12 +231,12 @@ RefPtrWillBeRawPtr<Element> eight = shadowRoot2->querySelector("#s8", ASSERT_NO_EXCEPTION); VisibleSelection selection(Position::firstPositionInNode(one.get()), Position::lastPositionInNode(shadowRoot2.get())); - VisibleSelectionInComposedTree selectionInComposedTree(PositionInComposedTree::firstPositionInNode(one.get()), PositionInComposedTree::afterNode(eight.get())); + VisibleSelectionInFlatTree selectionInFlatTree(PositionInFlatTree::firstPositionInNode(one.get()), PositionInFlatTree::afterNode(eight.get())); EXPECT_EQ(Position(host.get(), PositionAnchorType::BeforeAnchor), selection.start()); EXPECT_EQ(Position(one->firstChild(), 0), selection.end()); - EXPECT_EQ(PositionInComposedTree(eight->firstChild(), 2), selectionInComposedTree.start()); - EXPECT_EQ(PositionInComposedTree(eight->firstChild(), 2), selectionInComposedTree.end()); + EXPECT_EQ(PositionInFlatTree(eight->firstChild(), 2), selectionInFlatTree.start()); + EXPECT_EQ(PositionInFlatTree(eight->firstChild(), 2), selectionInFlatTree.end()); } TEST_F(VisibleSelectionTest, WordGranularity) @@ -244,35 +244,35 @@ setBodyContent(LOREM_IPSUM); VisibleSelection selection; - VisibleSelectionInComposedTree selectionInComposedTree; + VisibleSelectionInFlatTree selectionInFlatTree; // Beginning of a word. { setSelection(selection, 0); - setSelection(selectionInComposedTree, 0); + setSelection(selectionInFlatTree, 0); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(0, range->startOffset()); EXPECT_EQ(5, range->endOffset()); EXPECT_EQ("Lorem", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } // Middle of a word. { setSelection(selection, 8); - setSelection(selectionInComposedTree, 8); + setSelection(selectionInFlatTree, 8); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(6, range->startOffset()); EXPECT_EQ(11, range->endOffset()); EXPECT_EQ("ipsum", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } @@ -281,15 +281,15 @@ // of the space... { setSelection(selection, 5); - setSelection(selectionInComposedTree, 5); + setSelection(selectionInFlatTree, 5); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(5, range->startOffset()); EXPECT_EQ(6, range->endOffset()); EXPECT_EQ(" ", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } // Before comma. @@ -297,57 +297,57 @@ // of the comma. { setSelection(selection, 26); - setSelection(selectionInComposedTree, 26); + setSelection(selectionInFlatTree, 26); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(26, range->startOffset()); EXPECT_EQ(27, range->endOffset()); EXPECT_EQ(",", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } // After comma. { setSelection(selection, 27); - setSelection(selectionInComposedTree, 27); + setSelection(selectionInFlatTree, 27); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(27, range->startOffset()); EXPECT_EQ(28, range->endOffset()); EXPECT_EQ(" ", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } // When selecting part of a word. { setSelection(selection, 0, 1); - setSelection(selectionInComposedTree, 0, 1); + setSelection(selectionInFlatTree, 0, 1); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(0, range->startOffset()); EXPECT_EQ(5, range->endOffset()); EXPECT_EQ("Lorem", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } // When selecting part of two words. { setSelection(selection, 2, 8); - setSelection(selectionInComposedTree, 2, 8); + setSelection(selectionInFlatTree, 2, 8); selection.expandUsingGranularity(WordGranularity); - selectionInComposedTree.expandUsingGranularity(WordGranularity); + selectionInFlatTree.expandUsingGranularity(WordGranularity); RefPtrWillBeRawPtr<Range> range = firstRangeOf(selection); EXPECT_EQ(0, range->startOffset()); EXPECT_EQ(11, range->endOffset()); EXPECT_EQ("Lorem ipsum", range->text()); - testComposedTreePositionsToEqualToDOMTreePositions(selection, selectionInComposedTree); + testFlatTreePositionsToEqualToDOMTreePositions(selection, selectionInFlatTree); } }
diff --git a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp index 66ed3f1..28b1b18 100644 --- a/third_party/WebKit/Source/core/editing/VisibleUnits.cpp +++ b/third_party/WebKit/Source/core/editing/VisibleUnits.cpp
@@ -162,7 +162,7 @@ return canonicalPosition(position); } -PositionInComposedTree canonicalPositionOf(const PositionInComposedTree& position) +PositionInFlatTree canonicalPositionOf(const PositionInFlatTree& position) { return canonicalPosition(position); } @@ -874,9 +874,9 @@ return startOfWordAlgorithm<EditingStrategy>(c, side); } -VisiblePositionInComposedTree startOfWord(const VisiblePositionInComposedTree& c, EWordSide side) +VisiblePositionInFlatTree startOfWord(const VisiblePositionInFlatTree& c, EWordSide side) { - return startOfWordAlgorithm<EditingInComposedTreeStrategy>(c, side); + return startOfWordAlgorithm<EditingInFlatTreeStrategy>(c, side); } static unsigned endWordBoundary(const UChar* characters, unsigned length, unsigned offset, BoundarySearchContextAvailability mayHaveMoreContext, bool& needMoreContext) @@ -913,9 +913,9 @@ return endOfWordAlgorithm<EditingStrategy>(c, side); } -VisiblePositionInComposedTree endOfWord(const VisiblePositionInComposedTree& c, EWordSide side) +VisiblePositionInFlatTree endOfWord(const VisiblePositionInFlatTree& c, EWordSide side) { - return endOfWordAlgorithm<EditingInComposedTreeStrategy>(c, side); + return endOfWordAlgorithm<EditingInFlatTreeStrategy>(c, side); } static unsigned previousWordPositionBoundary(const UChar* characters, unsigned length, unsigned offset, BoundarySearchContextAvailability mayHaveMoreContext, bool& needMoreContext) @@ -1009,9 +1009,9 @@ return startOfLineAlgorithm<EditingStrategy>(currentPosition); } -static PositionInComposedTreeWithAffinity startOfLine(const PositionInComposedTreeWithAffinity& currentPosition) +static PositionInFlatTreeWithAffinity startOfLine(const PositionInFlatTreeWithAffinity& currentPosition) { - return startOfLineAlgorithm<EditingInComposedTreeStrategy>(currentPosition); + return startOfLineAlgorithm<EditingInFlatTreeStrategy>(currentPosition); } // FIXME: Rename this function to reflect the fact it ignores bidi levels. @@ -1020,7 +1020,7 @@ return createVisiblePosition(startOfLine(currentPosition.toPositionWithAffinity())); } -VisiblePositionInComposedTree startOfLine(const VisiblePositionInComposedTree& currentPosition) +VisiblePositionInFlatTree startOfLine(const VisiblePositionInFlatTree& currentPosition) { return createVisiblePosition(startOfLine(currentPosition.toPositionWithAffinity())); } @@ -1045,9 +1045,9 @@ return createVisiblePosition(logicalStartOfLineAlgorithm<EditingStrategy>(currentPosition.toPositionWithAffinity())); } -VisiblePositionInComposedTree logicalStartOfLine(const VisiblePositionInComposedTree& currentPosition) +VisiblePositionInFlatTree logicalStartOfLine(const VisiblePositionInFlatTree& currentPosition) { - return createVisiblePosition(logicalStartOfLineAlgorithm<EditingInComposedTreeStrategy>(currentPosition.toPositionWithAffinity())); + return createVisiblePosition(logicalStartOfLineAlgorithm<EditingInFlatTreeStrategy>(currentPosition.toPositionWithAffinity())); } template <typename Strategy> @@ -1137,9 +1137,9 @@ return endOfLineAlgorithm<EditingStrategy>(currentPosition); } -VisiblePositionInComposedTree endOfLine(const VisiblePositionInComposedTree& currentPosition) +VisiblePositionInFlatTree endOfLine(const VisiblePositionInFlatTree& currentPosition) { - return endOfLineAlgorithm<EditingInComposedTreeStrategy>(currentPosition); + return endOfLineAlgorithm<EditingInFlatTreeStrategy>(currentPosition); } template <typename Strategy> @@ -1179,9 +1179,9 @@ return logicalEndOfLineAlgorithm<EditingStrategy>(currentPosition); } -VisiblePositionInComposedTree logicalEndOfLine(const VisiblePositionInComposedTree& currentPosition) +VisiblePositionInFlatTree logicalEndOfLine(const VisiblePositionInFlatTree& currentPosition) { - return logicalEndOfLineAlgorithm<EditingInComposedTreeStrategy>(currentPosition); + return logicalEndOfLineAlgorithm<EditingInFlatTreeStrategy>(currentPosition); } template <typename Strategy> @@ -1204,9 +1204,9 @@ return inSameLineAlgorithm<EditingStrategy>(a, b); } -bool inSameLine(const PositionInComposedTreeWithAffinity& position1, const PositionInComposedTreeWithAffinity& position2) +bool inSameLine(const PositionInFlatTreeWithAffinity& position1, const PositionInFlatTreeWithAffinity& position2) { - return inSameLineAlgorithm<EditingInComposedTreeStrategy>(position1, position2); + return inSameLineAlgorithm<EditingInFlatTreeStrategy>(position1, position2); } bool inSameLine(const VisiblePosition& position1, const VisiblePosition& position2) @@ -1214,7 +1214,7 @@ return inSameLine(position1.toPositionWithAffinity(), position2.toPositionWithAffinity()); } -bool inSameLine(const VisiblePositionInComposedTree& position1, const VisiblePositionInComposedTree& position2) +bool inSameLine(const VisiblePositionInFlatTree& position1, const VisiblePositionInFlatTree& position2) { return inSameLine(position1.toPositionWithAffinity(), position2.toPositionWithAffinity()); } @@ -1230,9 +1230,9 @@ return isStartOfLineAlgorithm<EditingStrategy>(p); } -bool isStartOfLine(const VisiblePositionInComposedTree& p) +bool isStartOfLine(const VisiblePositionInFlatTree& p) { - return isStartOfLineAlgorithm<EditingInComposedTreeStrategy>(p); + return isStartOfLineAlgorithm<EditingInFlatTreeStrategy>(p); } template <typename Strategy> @@ -1246,9 +1246,9 @@ return isEndOfLineAlgorithm<EditingStrategy>(p); } -bool isEndOfLine(const VisiblePositionInComposedTree& p) +bool isEndOfLine(const VisiblePositionInFlatTree& p) { - return isEndOfLineAlgorithm<EditingInComposedTreeStrategy>(p); + return isEndOfLineAlgorithm<EditingInFlatTreeStrategy>(p); } template <typename Strategy> @@ -1262,9 +1262,9 @@ return isLogicalEndOfLineAlgorithm<EditingStrategy>(p); } -bool isLogicalEndOfLine(const VisiblePositionInComposedTree& p) +bool isLogicalEndOfLine(const VisiblePositionInFlatTree& p) { - return isLogicalEndOfLineAlgorithm<EditingInComposedTreeStrategy>(p); + return isLogicalEndOfLineAlgorithm<EditingInFlatTreeStrategy>(p); } static inline LayoutPoint absoluteLineDirectionPointToLocalPointInBlock(RootInlineBox* root, LayoutUnit lineDirectionPoint) @@ -1410,9 +1410,9 @@ return startOfSentenceAlgorithm<EditingStrategy>(c); } -VisiblePositionInComposedTree startOfSentence(const VisiblePositionInComposedTree& c) +VisiblePositionInFlatTree startOfSentence(const VisiblePositionInFlatTree& c) { - return startOfSentenceAlgorithm<EditingInComposedTreeStrategy>(c); + return startOfSentenceAlgorithm<EditingInFlatTreeStrategy>(c); } static unsigned endSentenceBoundary(const UChar* characters, unsigned length, unsigned, BoundarySearchContextAvailability, bool&) @@ -1434,9 +1434,9 @@ return endOfSentenceAlgorithm<EditingStrategy>(c); } -VisiblePositionInComposedTree endOfSentence(const VisiblePositionInComposedTree& c) +VisiblePositionInFlatTree endOfSentence(const VisiblePositionInFlatTree& c) { - return endOfSentenceAlgorithm<EditingInComposedTreeStrategy>(c); + return endOfSentenceAlgorithm<EditingInFlatTreeStrategy>(c); } static unsigned previousSentencePositionBoundary(const UChar* characters, unsigned length, unsigned, BoundarySearchContextAvailability, bool&) @@ -1548,9 +1548,9 @@ return startOfParagraphAlgorithm<EditingStrategy>(c, boundaryCrossingRule); } -VisiblePositionInComposedTree startOfParagraph(const VisiblePositionInComposedTree& c, EditingBoundaryCrossingRule boundaryCrossingRule) +VisiblePositionInFlatTree startOfParagraph(const VisiblePositionInFlatTree& c, EditingBoundaryCrossingRule boundaryCrossingRule) { - return startOfParagraphAlgorithm<EditingInComposedTreeStrategy>(c, boundaryCrossingRule); + return startOfParagraphAlgorithm<EditingInFlatTreeStrategy>(c, boundaryCrossingRule); } template <typename Strategy> @@ -1635,9 +1635,9 @@ return endOfParagraphAlgorithm<EditingStrategy>(c, boundaryCrossingRule); } -VisiblePositionInComposedTree endOfParagraph(const VisiblePositionInComposedTree& c, EditingBoundaryCrossingRule boundaryCrossingRule) +VisiblePositionInFlatTree endOfParagraph(const VisiblePositionInFlatTree& c, EditingBoundaryCrossingRule boundaryCrossingRule) { - return endOfParagraphAlgorithm<EditingInComposedTreeStrategy>(c, boundaryCrossingRule); + return endOfParagraphAlgorithm<EditingInFlatTreeStrategy>(c, boundaryCrossingRule); } // FIXME: isStartOfParagraph(startOfNextParagraph(pos)) is not always true @@ -1668,9 +1668,9 @@ return isStartOfParagraphAlgorithm<EditingStrategy>(pos, boundaryCrossingRule); } -bool isStartOfParagraph(const VisiblePositionInComposedTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule) +bool isStartOfParagraph(const VisiblePositionInFlatTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule) { - return isStartOfParagraphAlgorithm<EditingInComposedTreeStrategy>(pos, boundaryCrossingRule); + return isStartOfParagraphAlgorithm<EditingInFlatTreeStrategy>(pos, boundaryCrossingRule); } template <typename Strategy> @@ -1684,9 +1684,9 @@ return isEndOfParagraphAlgorithm<EditingStrategy>(pos, boundaryCrossingRule); } -bool isEndOfParagraph(const VisiblePositionInComposedTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule) +bool isEndOfParagraph(const VisiblePositionInFlatTree& pos, EditingBoundaryCrossingRule boundaryCrossingRule) { - return isEndOfParagraphAlgorithm<EditingInComposedTreeStrategy>(pos, boundaryCrossingRule); + return isEndOfParagraphAlgorithm<EditingInFlatTreeStrategy>(pos, boundaryCrossingRule); } VisiblePosition previousParagraphPosition(const VisiblePosition& p, LayoutUnit x) @@ -1761,9 +1761,9 @@ return startOfDocumentAlgorithm<EditingStrategy>(c); } -VisiblePositionInComposedTree startOfDocument(const VisiblePositionInComposedTree& c) +VisiblePositionInFlatTree startOfDocument(const VisiblePositionInFlatTree& c) { - return startOfDocumentAlgorithm<EditingInComposedTreeStrategy>(c); + return startOfDocumentAlgorithm<EditingInFlatTreeStrategy>(c); } template <typename Strategy> @@ -1782,9 +1782,9 @@ return endOfDocumentAlgorithm<EditingStrategy>(c); } -VisiblePositionInComposedTree endOfDocument(const VisiblePositionInComposedTree& c) +VisiblePositionInFlatTree endOfDocument(const VisiblePositionInFlatTree& c) { - return endOfDocumentAlgorithm<EditingInComposedTreeStrategy>(c); + return endOfDocumentAlgorithm<EditingInFlatTreeStrategy>(c); } bool isStartOfDocument(const VisiblePosition& p) @@ -1824,11 +1824,11 @@ // TODO(yosin) We should rename |isEndOfEditableOrNonEditableContent()| what // this function does, e.g. |isLastVisiblePositionOrEndOfInnerEditor()|. -bool isEndOfEditableOrNonEditableContent(const VisiblePositionInComposedTree& position) +bool isEndOfEditableOrNonEditableContent(const VisiblePositionInFlatTree& position) { if (position.isNull()) return false; - const VisiblePositionInComposedTree nextPosition = nextPositionOf(position); + const VisiblePositionInFlatTree nextPosition = nextPositionOf(position); if (nextPosition.isNull()) return true; // In DOM version, following condition, the last position of inner editor @@ -2085,9 +2085,9 @@ return computeInlineBoxPositionTemplate<EditingStrategy>(position, affinity); } -InlineBoxPosition computeInlineBoxPosition(const PositionInComposedTree& position, TextAffinity affinity) +InlineBoxPosition computeInlineBoxPosition(const PositionInFlatTree& position, TextAffinity affinity) { - return computeInlineBoxPositionTemplate<EditingInComposedTreeStrategy>(position, affinity); + return computeInlineBoxPositionTemplate<EditingInFlatTreeStrategy>(position, affinity); } InlineBoxPosition computeInlineBoxPosition(const VisiblePosition& position) @@ -2095,7 +2095,7 @@ return computeInlineBoxPosition(position.deepEquivalent(), position.affinity()); } -InlineBoxPosition computeInlineBoxPosition(const VisiblePositionInComposedTree& position) +InlineBoxPosition computeInlineBoxPosition(const VisiblePositionInFlatTree& position) { return computeInlineBoxPosition(position.deepEquivalent(), position.affinity()); } @@ -2105,9 +2105,9 @@ return computeInlineBoxPositionTemplate<EditingStrategy>(position, affinity, primaryDirection); } -InlineBoxPosition computeInlineBoxPosition(const PositionInComposedTree& position, TextAffinity affinity, TextDirection primaryDirection) +InlineBoxPosition computeInlineBoxPosition(const PositionInFlatTree& position, TextAffinity affinity, TextDirection primaryDirection) { - return computeInlineBoxPositionTemplate<EditingInComposedTreeStrategy>(position, affinity, primaryDirection); + return computeInlineBoxPositionTemplate<EditingInFlatTreeStrategy>(position, affinity, primaryDirection); } template <typename Strategy> @@ -2136,9 +2136,9 @@ return localCaretRectOfPositionTemplate<EditingStrategy>(position, layoutObject); } -LayoutRect localCaretRectOfPosition(const PositionInComposedTreeWithAffinity& position, LayoutObject*& layoutObject) +LayoutRect localCaretRectOfPosition(const PositionInFlatTreeWithAffinity& position, LayoutObject*& layoutObject) { - return localCaretRectOfPositionTemplate<EditingInComposedTreeStrategy>(position, layoutObject); + return localCaretRectOfPositionTemplate<EditingInFlatTreeStrategy>(position, layoutObject); } static int boundingBoxLogicalHeight(LayoutObject *o, const IntRect &rect) @@ -2587,9 +2587,9 @@ return mostBackwardCaretPosition<EditingStrategy>(position, rule); } -PositionInComposedTree mostBackwardCaretPosition(const PositionInComposedTree& position, EditingBoundaryCrossingRule rule) +PositionInFlatTree mostBackwardCaretPosition(const PositionInFlatTree& position, EditingBoundaryCrossingRule rule) { - return mostBackwardCaretPosition<EditingInComposedTreeStrategy>(position, rule); + return mostBackwardCaretPosition<EditingInFlatTreeStrategy>(position, rule); } template <typename Strategy> @@ -2719,9 +2719,9 @@ return mostForwardCaretPosition<EditingStrategy>(position, rule); } -PositionInComposedTree mostForwardCaretPosition(const PositionInComposedTree& position, EditingBoundaryCrossingRule rule) +PositionInFlatTree mostForwardCaretPosition(const PositionInFlatTree& position, EditingBoundaryCrossingRule rule) { - return mostForwardCaretPosition<EditingInComposedTreeStrategy>(position, rule); + return mostForwardCaretPosition<EditingInFlatTreeStrategy>(position, rule); } // Returns true if the visually equivalent positions around have different @@ -2817,9 +2817,9 @@ return isVisuallyEquivalentCandidateAlgorithm<EditingStrategy>(position); } -bool isVisuallyEquivalentCandidate(const PositionInComposedTree& position) +bool isVisuallyEquivalentCandidate(const PositionInFlatTree& position) { - return isVisuallyEquivalentCandidateAlgorithm<EditingInComposedTreeStrategy>(position); + return isVisuallyEquivalentCandidateAlgorithm<EditingInFlatTreeStrategy>(position); } template <typename Strategy> @@ -2838,9 +2838,9 @@ return absoluteCaretBoundsOfAlgorithm<EditingStrategy>(visiblePosition); } -IntRect absoluteCaretBoundsOf(const VisiblePositionInComposedTree& visiblePosition) +IntRect absoluteCaretBoundsOf(const VisiblePositionInFlatTree& visiblePosition) { - return absoluteCaretBoundsOfAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return absoluteCaretBoundsOfAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } template <typename Strategy> @@ -2893,9 +2893,9 @@ return characterAfterAlgorithm<EditingStrategy>(visiblePosition); } -UChar32 characterAfter(const VisiblePositionInComposedTree& visiblePosition) +UChar32 characterAfter(const VisiblePositionInFlatTree& visiblePosition) { - return characterAfterAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return characterAfterAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } template <typename Strategy> @@ -2909,9 +2909,9 @@ return characterBeforeAlgorithm<EditingStrategy>(visiblePosition); } -UChar32 characterBefore(const VisiblePositionInComposedTree& visiblePosition) +UChar32 characterBefore(const VisiblePositionInFlatTree& visiblePosition) { - return characterBeforeAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return characterBeforeAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } template <typename Strategy> @@ -3085,9 +3085,9 @@ return leftPositionOfAlgorithm<EditingStrategy>(visiblePosition); } -VisiblePositionInComposedTree leftPositionOf(const VisiblePositionInComposedTree& visiblePosition) +VisiblePositionInFlatTree leftPositionOf(const VisiblePositionInFlatTree& visiblePosition) { - return leftPositionOfAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return leftPositionOfAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } template <typename Strategy> @@ -3263,9 +3263,9 @@ return rightPositionOfAlgorithm<EditingStrategy>(visiblePosition); } -VisiblePositionInComposedTree rightPositionOf(const VisiblePositionInComposedTree& visiblePosition) +VisiblePositionInFlatTree rightPositionOf(const VisiblePositionInFlatTree& visiblePosition) { - return rightPositionOfAlgorithm<EditingInComposedTreeStrategy>(visiblePosition); + return rightPositionOfAlgorithm<EditingInFlatTreeStrategy>(visiblePosition); } template <typename Strategy> @@ -3290,9 +3290,9 @@ return nextPositionOfAlgorithm<EditingStrategy>(visiblePosition, rule); } -VisiblePositionInComposedTree nextPositionOf(const VisiblePositionInComposedTree& visiblePosition, EditingBoundaryCrossingRule rule) +VisiblePositionInFlatTree nextPositionOf(const VisiblePositionInFlatTree& visiblePosition, EditingBoundaryCrossingRule rule) { - return nextPositionOfAlgorithm<EditingInComposedTreeStrategy>(visiblePosition, rule); + return nextPositionOfAlgorithm<EditingInFlatTreeStrategy>(visiblePosition, rule); } template <typename Strategy> @@ -3353,9 +3353,9 @@ return previousPositionOfAlgorithm<EditingStrategy>(visiblePosition, rule); } -VisiblePositionInComposedTree previousPositionOf(const VisiblePositionInComposedTree& visiblePosition, EditingBoundaryCrossingRule rule) +VisiblePositionInFlatTree previousPositionOf(const VisiblePositionInFlatTree& visiblePosition, EditingBoundaryCrossingRule rule) { - return previousPositionOfAlgorithm<EditingInComposedTreeStrategy>(visiblePosition, rule); + return previousPositionOfAlgorithm<EditingInFlatTreeStrategy>(visiblePosition, rule); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/VisibleUnits.h b/third_party/WebKit/Source/core/editing/VisibleUnits.h index 9afd6fb..4d487fbc 100644 --- a/third_party/WebKit/Source/core/editing/VisibleUnits.h +++ b/third_party/WebKit/Source/core/editing/VisibleUnits.h
@@ -99,46 +99,46 @@ // FIXME: This function should never be called when the line box tree is dirty. // See https://bugs.webkit.org/show_bug.cgi?id=97264 CORE_EXPORT Position mostBackwardCaretPosition(const Position&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT PositionInComposedTree mostBackwardCaretPosition(const PositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT PositionInFlatTree mostBackwardCaretPosition(const PositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); CORE_EXPORT Position mostForwardCaretPosition(const Position&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT PositionInComposedTree mostForwardCaretPosition(const PositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT PositionInFlatTree mostForwardCaretPosition(const PositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); CORE_EXPORT bool isVisuallyEquivalentCandidate(const Position&); -CORE_EXPORT bool isVisuallyEquivalentCandidate(const PositionInComposedTree&); +CORE_EXPORT bool isVisuallyEquivalentCandidate(const PositionInFlatTree&); CORE_EXPORT Position canonicalPositionOf(const Position&); -CORE_EXPORT PositionInComposedTree canonicalPositionOf(const PositionInComposedTree&); +CORE_EXPORT PositionInFlatTree canonicalPositionOf(const PositionInFlatTree&); // Bounds of (possibly transformed) caret in absolute coords CORE_EXPORT IntRect absoluteCaretBoundsOf(const VisiblePosition&); -CORE_EXPORT IntRect absoluteCaretBoundsOf(const VisiblePositionInComposedTree&); +CORE_EXPORT IntRect absoluteCaretBoundsOf(const VisiblePositionInFlatTree&); CORE_EXPORT UChar32 characterAfter(const VisiblePosition&); -CORE_EXPORT UChar32 characterAfter(const VisiblePositionInComposedTree&); +CORE_EXPORT UChar32 characterAfter(const VisiblePositionInFlatTree&); CORE_EXPORT UChar32 characterBefore(const VisiblePosition&); -CORE_EXPORT UChar32 characterBefore(const VisiblePositionInComposedTree&); +CORE_EXPORT UChar32 characterBefore(const VisiblePositionInFlatTree&); // TODO(yosin) Since return value of |leftPositionOf()| with |VisiblePosition| -// isn't defined well on composed tree, we should not use it for a position in -// composed tree. +// isn't defined well on flat tree, we should not use it for a position in +// flat tree. CORE_EXPORT VisiblePosition leftPositionOf(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree leftPositionOf(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree leftPositionOf(const VisiblePositionInFlatTree&); // TODO(yosin) Since return value of |rightPositionOf()| with |VisiblePosition| -// isn't defined well on composed tree, we should not use it for a position in -// composed tree. +// isn't defined well on flat tree, we should not use it for a position in +// flat tree. CORE_EXPORT VisiblePosition rightPositionOf(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree rightPositionOf(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree rightPositionOf(const VisiblePositionInFlatTree&); CORE_EXPORT VisiblePosition nextPositionOf(const VisiblePosition&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); -CORE_EXPORT VisiblePositionInComposedTree nextPositionOf(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); +CORE_EXPORT VisiblePositionInFlatTree nextPositionOf(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); CORE_EXPORT VisiblePosition previousPositionOf(const VisiblePosition&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); -CORE_EXPORT VisiblePositionInComposedTree previousPositionOf(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); +CORE_EXPORT VisiblePositionInFlatTree previousPositionOf(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CanCrossEditingBoundary); // words CORE_EXPORT VisiblePosition startOfWord(const VisiblePosition&, EWordSide = RightWordIfOnBoundary); -CORE_EXPORT VisiblePositionInComposedTree startOfWord(const VisiblePositionInComposedTree&, EWordSide = RightWordIfOnBoundary); +CORE_EXPORT VisiblePositionInFlatTree startOfWord(const VisiblePositionInFlatTree&, EWordSide = RightWordIfOnBoundary); CORE_EXPORT VisiblePosition endOfWord(const VisiblePosition&, EWordSide = RightWordIfOnBoundary); -CORE_EXPORT VisiblePositionInComposedTree endOfWord(const VisiblePositionInComposedTree&, EWordSide = RightWordIfOnBoundary); +CORE_EXPORT VisiblePositionInFlatTree endOfWord(const VisiblePositionInFlatTree&, EWordSide = RightWordIfOnBoundary); VisiblePosition previousWordPosition(const VisiblePosition&); VisiblePosition nextWordPosition(const VisiblePosition&); VisiblePosition rightWordPosition(const VisiblePosition&, bool skipsSpaceWhenMovingRight); @@ -146,9 +146,9 @@ // sentences CORE_EXPORT VisiblePosition startOfSentence(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree startOfSentence(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree startOfSentence(const VisiblePositionInFlatTree&); CORE_EXPORT VisiblePosition endOfSentence(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree endOfSentence(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree endOfSentence(const VisiblePositionInFlatTree&); VisiblePosition previousSentencePosition(const VisiblePosition&); VisiblePosition nextSentencePosition(const VisiblePosition&); @@ -156,51 +156,51 @@ // TODO(yosin) Return values of |VisiblePosition| version of |startOfLine()| // with shadow tree isn't defined well. We should not use it for shadow tree. CORE_EXPORT VisiblePosition startOfLine(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree startOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree startOfLine(const VisiblePositionInFlatTree&); // TODO(yosin) Return values of |VisiblePosition| version of |endOfLine()| with // shadow tree isn't defined well. We should not use it for shadow tree. CORE_EXPORT VisiblePosition endOfLine(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree endOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree endOfLine(const VisiblePositionInFlatTree&); CORE_EXPORT VisiblePosition previousLinePosition(const VisiblePosition&, LayoutUnit lineDirectionPoint, EditableType = ContentIsEditable); CORE_EXPORT VisiblePosition nextLinePosition(const VisiblePosition&, LayoutUnit lineDirectionPoint, EditableType = ContentIsEditable); CORE_EXPORT bool inSameLine(const VisiblePosition&, const VisiblePosition&); -CORE_EXPORT bool inSameLine(const VisiblePositionInComposedTree&, const VisiblePositionInComposedTree&); +CORE_EXPORT bool inSameLine(const VisiblePositionInFlatTree&, const VisiblePositionInFlatTree&); CORE_EXPORT bool inSameLine(const PositionWithAffinity&, const PositionWithAffinity&); -CORE_EXPORT bool inSameLine(const PositionInComposedTreeWithAffinity&, const PositionInComposedTreeWithAffinity&); +CORE_EXPORT bool inSameLine(const PositionInFlatTreeWithAffinity&, const PositionInFlatTreeWithAffinity&); CORE_EXPORT bool isStartOfLine(const VisiblePosition&); -CORE_EXPORT bool isStartOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT bool isStartOfLine(const VisiblePositionInFlatTree&); CORE_EXPORT bool isEndOfLine(const VisiblePosition&); -CORE_EXPORT bool isEndOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT bool isEndOfLine(const VisiblePositionInFlatTree&); // TODO(yosin) Return values of |VisiblePosition| version of // |logicalStartOfLine()| with shadow tree isn't defined well. We should not use // it for shadow tree. CORE_EXPORT VisiblePosition logicalStartOfLine(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree logicalStartOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree logicalStartOfLine(const VisiblePositionInFlatTree&); // TODO(yosin) Return values of |VisiblePosition| version of // |logicalEndOfLine()| with shadow tree isn't defined well. We should not use // it for shadow tree. CORE_EXPORT VisiblePosition logicalEndOfLine(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree logicalEndOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree logicalEndOfLine(const VisiblePositionInFlatTree&); CORE_EXPORT bool isLogicalEndOfLine(const VisiblePosition&); -CORE_EXPORT bool isLogicalEndOfLine(const VisiblePositionInComposedTree&); +CORE_EXPORT bool isLogicalEndOfLine(const VisiblePositionInFlatTree&); VisiblePosition leftBoundaryOfLine(const VisiblePosition&, TextDirection); VisiblePosition rightBoundaryOfLine(const VisiblePosition&, TextDirection); // paragraphs (perhaps a misnomer, can be divided by line break elements) // TODO(yosin) Since return value of |startOfParagraph()| with |VisiblePosition| -// isn't defined well on composed tree, we should not use it for a position in -// composed tree. +// isn't defined well on flat tree, we should not use it for a position in +// flat tree. CORE_EXPORT VisiblePosition startOfParagraph(const VisiblePosition&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT VisiblePositionInComposedTree startOfParagraph(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT VisiblePositionInFlatTree startOfParagraph(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); CORE_EXPORT VisiblePosition endOfParagraph(const VisiblePosition&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT VisiblePositionInComposedTree endOfParagraph(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT VisiblePositionInFlatTree endOfParagraph(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); VisiblePosition startOfNextParagraph(const VisiblePosition&); VisiblePosition previousParagraphPosition(const VisiblePosition&, LayoutUnit x); VisiblePosition nextParagraphPosition(const VisiblePosition&, LayoutUnit x); CORE_EXPORT bool isStartOfParagraph(const VisiblePosition&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT bool isStartOfParagraph(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT bool isStartOfParagraph(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); CORE_EXPORT bool isEndOfParagraph(const VisiblePosition&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); -CORE_EXPORT bool isEndOfParagraph(const VisiblePositionInComposedTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); +CORE_EXPORT bool isEndOfParagraph(const VisiblePositionInFlatTree&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); bool inSameParagraph(const VisiblePosition&, const VisiblePosition&, EditingBoundaryCrossingRule = CannotCrossEditingBoundary); // blocks (true paragraphs; line break elements don't break blocks) @@ -212,9 +212,9 @@ // document CORE_EXPORT VisiblePosition startOfDocument(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree startOfDocument(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree startOfDocument(const VisiblePositionInFlatTree&); CORE_EXPORT VisiblePosition endOfDocument(const VisiblePosition&); -CORE_EXPORT VisiblePositionInComposedTree endOfDocument(const VisiblePositionInComposedTree&); +CORE_EXPORT VisiblePositionInFlatTree endOfDocument(const VisiblePositionInFlatTree&); bool isStartOfDocument(const VisiblePosition&); bool isEndOfDocument(const VisiblePosition&); @@ -222,18 +222,18 @@ VisiblePosition startOfEditableContent(const VisiblePosition&); VisiblePosition endOfEditableContent(const VisiblePosition&); CORE_EXPORT bool isEndOfEditableOrNonEditableContent(const VisiblePosition&); -CORE_EXPORT bool isEndOfEditableOrNonEditableContent(const VisiblePositionInComposedTree&); +CORE_EXPORT bool isEndOfEditableOrNonEditableContent(const VisiblePositionInFlatTree&); CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const Position&, TextAffinity); CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const Position&, TextAffinity, TextDirection primaryDirection); -CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const PositionInComposedTree&, TextAffinity); -CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const PositionInComposedTree&, TextAffinity, TextDirection primaryDirection); +CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const PositionInFlatTree&, TextAffinity); +CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const PositionInFlatTree&, TextAffinity, TextDirection primaryDirection); CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const VisiblePosition&); -CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const VisiblePositionInComposedTree&); +CORE_EXPORT InlineBoxPosition computeInlineBoxPosition(const VisiblePositionInFlatTree&); // Rect is local to the returned layoutObject CORE_EXPORT LayoutRect localCaretRectOfPosition(const PositionWithAffinity&, LayoutObject*&); -CORE_EXPORT LayoutRect localCaretRectOfPosition(const PositionInComposedTreeWithAffinity&, LayoutObject*&); +CORE_EXPORT LayoutRect localCaretRectOfPosition(const PositionInFlatTreeWithAffinity&, LayoutObject*&); bool hasRenderedNonAnonymousDescendantsWithHeight(LayoutObject*); // Returns a hit-tested VisiblePosition for the given point in contents-space
diff --git a/third_party/WebKit/Source/core/editing/VisibleUnitsTest.cpp b/third_party/WebKit/Source/core/editing/VisibleUnitsTest.cpp index 298fb68..746e39b 100644 --- a/third_party/WebKit/Source/core/editing/VisibleUnitsTest.cpp +++ b/third_party/WebKit/Source/core/editing/VisibleUnitsTest.cpp
@@ -26,14 +26,14 @@ return createVisiblePosition(Position(&anchor, offset), affinity); } -PositionInComposedTreeWithAffinity positionWithAffinityInComposedTree(Node& anchor, int offset, TextAffinity affinity = TextAffinity::Downstream) +PositionInFlatTreeWithAffinity positionWithAffinityInFlatTree(Node& anchor, int offset, TextAffinity affinity = TextAffinity::Downstream) { - return PositionInComposedTreeWithAffinity(canonicalPositionOf(PositionInComposedTree(&anchor, offset)), affinity); + return PositionInFlatTreeWithAffinity(canonicalPositionOf(PositionInFlatTree(&anchor, offset)), affinity); } -VisiblePositionInComposedTree createVisiblePositionInComposedTree(Node& anchor, int offset, TextAffinity affinity = TextAffinity::Downstream) +VisiblePositionInFlatTree createVisiblePositionInFlatTree(Node& anchor, int offset, TextAffinity affinity = TextAffinity::Downstream) { - return createVisiblePosition(PositionInComposedTree(&anchor, offset), affinity); + return createVisiblePosition(PositionInFlatTree(&anchor, offset), affinity); } } // namespace @@ -61,10 +61,10 @@ RefPtrWillBeRawPtr<Element> one = body->querySelector("#one", ASSERT_NO_EXCEPTION); IntRect boundsInDOMTree = absoluteCaretBoundsOf(createVisiblePosition(Position(one.get(), 0))); - IntRect boundsInComposedTree = absoluteCaretBoundsOf(createVisiblePosition(PositionInComposedTree(one.get(), 0))); + IntRect boundsInFlatTree = absoluteCaretBoundsOf(createVisiblePosition(PositionInFlatTree(one.get(), 0))); EXPECT_FALSE(boundsInDOMTree.isEmpty()); - EXPECT_EQ(boundsInDOMTree, boundsInComposedTree); + EXPECT_EQ(boundsInDOMTree, boundsInFlatTree); } TEST_F(VisibleUnitsTest, associatedLayoutObjectOfFirstLetterPunctuations) @@ -159,10 +159,10 @@ RefPtrWillBeRawPtr<Element> two = document().getElementById("two"); EXPECT_EQ('2', characterAfter(createVisiblePositionInDOMTree(*one->firstChild(), 1))); - EXPECT_EQ('5', characterAfter(createVisiblePositionInComposedTree(*one->firstChild(), 1))); + EXPECT_EQ('5', characterAfter(createVisiblePositionInFlatTree(*one->firstChild(), 1))); EXPECT_EQ(0, characterAfter(createVisiblePositionInDOMTree(*two->firstChild(), 2))); - EXPECT_EQ('1', characterAfter(createVisiblePositionInComposedTree(*two->firstChild(), 2))); + EXPECT_EQ('1', characterAfter(createVisiblePositionInFlatTree(*two->firstChild(), 2))); } TEST_F(VisibleUnitsTest, canonicalPositionOfWithHTMLHtmlElement) @@ -211,16 +211,16 @@ Node* five = shadowRoot->getElementById("five")->firstChild(); EXPECT_EQ(0, characterBefore(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_EQ('2', characterBefore(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_EQ('2', characterBefore(createVisiblePositionInFlatTree(*one, 0))); EXPECT_EQ('1', characterBefore(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_EQ('1', characterBefore(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_EQ('1', characterBefore(createVisiblePositionInFlatTree(*one, 1))); EXPECT_EQ('1', characterBefore(createVisiblePositionInDOMTree(*two, 0))); - EXPECT_EQ('4', characterBefore(createVisiblePositionInComposedTree(*two, 0))); + EXPECT_EQ('4', characterBefore(createVisiblePositionInFlatTree(*two, 0))); EXPECT_EQ('4', characterBefore(createVisiblePositionInDOMTree(*five, 0))); - EXPECT_EQ('1', characterBefore(createVisiblePositionInComposedTree(*five, 0))); + EXPECT_EQ('1', characterBefore(createVisiblePositionInFlatTree(*five, 0))); } TEST_F(VisibleUnitsTest, computeInlineBoxPosition) @@ -237,21 +237,21 @@ Node* four = shadowRoot->getElementById("four")->firstChild(); Node* five = shadowRoot->getElementById("five")->firstChild(); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(one, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*one, 0))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(one, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(one, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*one, 0))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(one, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*one, 1))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(two, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*two, 0))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(two, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*two, 1))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(two, 2), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*two, 2))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(two, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*two, 0))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(two, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*two, 1))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(two, 2), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*two, 2))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(three, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*three, 0))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(three, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*three, 1))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(three, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*three, 0))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(three, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*three, 1))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(four, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*four, 0))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(four, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*four, 1))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(four, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*four, 0))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(four, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*four, 1))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(five, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*five, 0))); - EXPECT_EQ(computeInlineBoxPosition(PositionInComposedTree(five, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInComposedTree(*five, 1))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(five, 0), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*five, 0))); + EXPECT_EQ(computeInlineBoxPosition(PositionInFlatTree(five, 1), TextAffinity::Downstream), computeInlineBoxPosition(createVisiblePositionInFlatTree(*five, 1))); } TEST_F(VisibleUnitsTest, endOfDocument) @@ -266,10 +266,10 @@ Element* two = document().getElementById("two"); EXPECT_EQ(Position(two->firstChild(), 2), endOfDocument(createVisiblePositionInDOMTree(*one->firstChild(), 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 1), endOfDocument(createVisiblePositionInComposedTree(*one->firstChild(), 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 1), endOfDocument(createVisiblePositionInFlatTree(*one->firstChild(), 0)).deepEquivalent()); EXPECT_EQ(Position(two->firstChild(), 2), endOfDocument(createVisiblePositionInDOMTree(*two->firstChild(), 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 1), endOfDocument(createVisiblePositionInComposedTree(*two->firstChild(), 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 1), endOfDocument(createVisiblePositionInFlatTree(*two->firstChild(), 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, endOfLine) @@ -289,33 +289,33 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_EQ(Position(seven, 7), endOfLine(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), endOfLine(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), endOfLine(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), endOfLine(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), endOfLine(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), endOfLine(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), endOfLine(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfLine(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfLine(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); // TODO(yosin) endOfLine(two, 1) -> (five, 5) is a broken result. We keep // it as a marker for future change. EXPECT_EQ(Position(five, 5), endOfLine(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfLine(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfLine(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 5), endOfLine(createVisiblePositionInDOMTree(*three, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfLine(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfLine(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 4), endOfLine(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfLine(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfLine(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 5), endOfLine(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfLine(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfLine(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); EXPECT_EQ(Position(six, 6), endOfLine(createVisiblePositionInDOMTree(*six, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(six, 6), endOfLine(createVisiblePositionInComposedTree(*six, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(six, 6), endOfLine(createVisiblePositionInFlatTree(*six, 1)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), endOfLine(createVisiblePositionInDOMTree(*seven, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), endOfLine(createVisiblePositionInComposedTree(*seven, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), endOfLine(createVisiblePositionInFlatTree(*seven, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, endOfParagraphFirstLetter) @@ -365,10 +365,10 @@ Element* three = document().getElementById("three"); EXPECT_EQ(Position(three->firstChild(), 3), endOfParagraph(createVisiblePositionInDOMTree(*one->firstChild(), 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 1), endOfParagraph(createVisiblePositionInComposedTree(*one->firstChild(), 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 1), endOfParagraph(createVisiblePositionInFlatTree(*one->firstChild(), 1)).deepEquivalent()); EXPECT_EQ(Position(three->firstChild(), 3), endOfParagraph(createVisiblePositionInDOMTree(*two->firstChild(), 2)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two->firstChild(), 2), endOfParagraph(createVisiblePositionInComposedTree(*two->firstChild(), 2)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two->firstChild(), 2), endOfParagraph(createVisiblePositionInFlatTree(*two->firstChild(), 2)).deepEquivalent()); } TEST_F(VisibleUnitsTest, endOfParagraphSimple) @@ -420,22 +420,22 @@ Node* four = shadowRoot->getElementById("four")->firstChild(); EXPECT_EQ(Position(two, 2), endOfSentence(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(two, 2), endOfSentence(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(two, 2), endOfSentence(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(two, 2), endOfSentence(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 4), endOfSentence(createVisiblePositionInDOMTree(*three, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 4), endOfSentence(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), endOfSentence(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), endOfSentence(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, endOfWord) @@ -453,25 +453,25 @@ Node* five = shadowRoot->getElementById("five")->firstChild(); EXPECT_EQ(Position(three, 3), endOfWord(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 5), endOfWord(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 5), endOfWord(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(three, 3), endOfWord(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 5), endOfWord(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 5), endOfWord(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(three, 3), endOfWord(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfWord(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfWord(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(three, 3), endOfWord(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfWord(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfWord(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(three, 3), endOfWord(createVisiblePositionInDOMTree(*three, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 3), endOfWord(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 3), endOfWord(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 5), endOfWord(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), endOfWord(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), endOfWord(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 5), endOfWord(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 5), endOfWord(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 5), endOfWord(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, isEndOfEditableOrNonEditableContent) @@ -486,10 +486,10 @@ Element* two = document().getElementById("two"); EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInDOMTree(*one->firstChild(), 1))); - EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInComposedTree(*one->firstChild(), 1))); + EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInFlatTree(*one->firstChild(), 1))); EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInDOMTree(*two->firstChild(), 2))); - EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInComposedTree(*two->firstChild(), 2))); + EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInFlatTree(*two->firstChild(), 2))); } TEST_F(VisibleUnitsTest, isEndOfEditableOrNonEditableContentWithInput) @@ -501,13 +501,13 @@ Node* text = toHTMLTextFormControlElement(document().getElementById("sample"))->innerEditorElement()->firstChild(); EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInDOMTree(*text, 0))); - EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInComposedTree(*text, 0))); + EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInFlatTree(*text, 0))); EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInDOMTree(*text, 1))); - EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInComposedTree(*text, 1))); + EXPECT_FALSE(isEndOfEditableOrNonEditableContent(createVisiblePositionInFlatTree(*text, 1))); EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInDOMTree(*text, 2))); - EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInComposedTree(*text, 2))); + EXPECT_TRUE(isEndOfEditableOrNonEditableContent(createVisiblePositionInFlatTree(*text, 2))); } TEST_F(VisibleUnitsTest, isEndOfLine) @@ -527,28 +527,28 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_FALSE(isEndOfLine(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_FALSE(isEndOfLine(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_FALSE(isEndOfLine(createVisiblePositionInFlatTree(*one, 0))); EXPECT_FALSE(isEndOfLine(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_FALSE(isEndOfLine(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_FALSE(isEndOfLine(createVisiblePositionInFlatTree(*one, 1))); EXPECT_FALSE(isEndOfLine(createVisiblePositionInDOMTree(*two, 2))); - EXPECT_TRUE(isEndOfLine(createVisiblePositionInComposedTree(*two, 2))); + EXPECT_TRUE(isEndOfLine(createVisiblePositionInFlatTree(*two, 2))); EXPECT_FALSE(isEndOfLine(createVisiblePositionInDOMTree(*three, 3))); - EXPECT_FALSE(isEndOfLine(createVisiblePositionInComposedTree(*three, 3))); + EXPECT_FALSE(isEndOfLine(createVisiblePositionInFlatTree(*three, 3))); EXPECT_TRUE(isEndOfLine(createVisiblePositionInDOMTree(*four, 4))); - EXPECT_TRUE(isEndOfLine(createVisiblePositionInComposedTree(*four, 4))); + EXPECT_TRUE(isEndOfLine(createVisiblePositionInFlatTree(*four, 4))); EXPECT_TRUE(isEndOfLine(createVisiblePositionInDOMTree(*five, 5))); - EXPECT_FALSE(isEndOfLine(createVisiblePositionInComposedTree(*five, 5))); + EXPECT_FALSE(isEndOfLine(createVisiblePositionInFlatTree(*five, 5))); EXPECT_TRUE(isEndOfLine(createVisiblePositionInDOMTree(*six, 6))); - EXPECT_TRUE(isEndOfLine(createVisiblePositionInComposedTree(*six, 6))); + EXPECT_TRUE(isEndOfLine(createVisiblePositionInFlatTree(*six, 6))); EXPECT_TRUE(isEndOfLine(createVisiblePositionInDOMTree(*seven, 7))); - EXPECT_TRUE(isEndOfLine(createVisiblePositionInComposedTree(*seven, 7))); + EXPECT_TRUE(isEndOfLine(createVisiblePositionInFlatTree(*seven, 7))); } TEST_F(VisibleUnitsTest, isLogicalEndOfLine) @@ -568,28 +568,28 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*one, 0))); EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*one, 1))); EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*two, 2))); - EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*two, 2))); + EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*two, 2))); EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*three, 3))); - EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*three, 3))); + EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*three, 3))); EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*four, 4))); - EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*four, 4))); + EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*four, 4))); EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*five, 5))); - EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*five, 5))); + EXPECT_FALSE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*five, 5))); EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*six, 6))); - EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*six, 6))); + EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*six, 6))); EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInDOMTree(*seven, 7))); - EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInComposedTree(*seven, 7))); + EXPECT_TRUE(isLogicalEndOfLine(createVisiblePositionInFlatTree(*seven, 7))); } TEST_F(VisibleUnitsTest, inSameLine) @@ -616,15 +616,15 @@ EXPECT_FALSE(inSameLine(createVisiblePositionInDOMTree(*one->firstChild(), 0), createVisiblePositionInDOMTree(*five->firstChild(), 0))); EXPECT_FALSE(inSameLine(createVisiblePositionInDOMTree(*two->firstChild(), 0), createVisiblePositionInDOMTree(*four->firstChild(), 0))); - EXPECT_FALSE(inSameLine(positionWithAffinityInComposedTree(*one, 0), positionWithAffinityInComposedTree(*two, 0))); - EXPECT_FALSE(inSameLine(positionWithAffinityInComposedTree(*one->firstChild(), 0), positionWithAffinityInComposedTree(*two->firstChild(), 0))); - EXPECT_FALSE(inSameLine(positionWithAffinityInComposedTree(*one->firstChild(), 0), positionWithAffinityInComposedTree(*five->firstChild(), 0))); - EXPECT_TRUE(inSameLine(positionWithAffinityInComposedTree(*two->firstChild(), 0), positionWithAffinityInComposedTree(*four->firstChild(), 0))); + EXPECT_FALSE(inSameLine(positionWithAffinityInFlatTree(*one, 0), positionWithAffinityInFlatTree(*two, 0))); + EXPECT_FALSE(inSameLine(positionWithAffinityInFlatTree(*one->firstChild(), 0), positionWithAffinityInFlatTree(*two->firstChild(), 0))); + EXPECT_FALSE(inSameLine(positionWithAffinityInFlatTree(*one->firstChild(), 0), positionWithAffinityInFlatTree(*five->firstChild(), 0))); + EXPECT_TRUE(inSameLine(positionWithAffinityInFlatTree(*two->firstChild(), 0), positionWithAffinityInFlatTree(*four->firstChild(), 0))); - EXPECT_FALSE(inSameLine(createVisiblePositionInComposedTree(*one, 0), createVisiblePositionInComposedTree(*two, 0))); - EXPECT_FALSE(inSameLine(createVisiblePositionInComposedTree(*one->firstChild(), 0), createVisiblePositionInComposedTree(*two->firstChild(), 0))); - EXPECT_FALSE(inSameLine(createVisiblePositionInComposedTree(*one->firstChild(), 0), createVisiblePositionInComposedTree(*five->firstChild(), 0))); - EXPECT_TRUE(inSameLine(createVisiblePositionInComposedTree(*two->firstChild(), 0), createVisiblePositionInComposedTree(*four->firstChild(), 0))); + EXPECT_FALSE(inSameLine(createVisiblePositionInFlatTree(*one, 0), createVisiblePositionInFlatTree(*two, 0))); + EXPECT_FALSE(inSameLine(createVisiblePositionInFlatTree(*one->firstChild(), 0), createVisiblePositionInFlatTree(*two->firstChild(), 0))); + EXPECT_FALSE(inSameLine(createVisiblePositionInFlatTree(*one->firstChild(), 0), createVisiblePositionInFlatTree(*five->firstChild(), 0))); + EXPECT_TRUE(inSameLine(createVisiblePositionInFlatTree(*two->firstChild(), 0), createVisiblePositionInFlatTree(*four->firstChild(), 0))); } TEST_F(VisibleUnitsTest, isEndOfParagraph) @@ -640,19 +640,19 @@ Node* three = document().getElementById("three")->firstChild(); EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInFlatTree(*one, 0))); EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInFlatTree(*one, 1))); EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInDOMTree(*two, 2))); - EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInComposedTree(*two, 2))); + EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInFlatTree(*two, 2))); EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInDOMTree(*three, 0))); - EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInComposedTree(*three, 0))); + EXPECT_FALSE(isEndOfParagraph(createVisiblePositionInFlatTree(*three, 0))); EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInDOMTree(*three, 3))); - EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInComposedTree(*three, 3))); + EXPECT_TRUE(isEndOfParagraph(createVisiblePositionInFlatTree(*three, 3))); } TEST_F(VisibleUnitsTest, isStartOfLine) @@ -672,28 +672,28 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_TRUE(isStartOfLine(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_TRUE(isStartOfLine(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_TRUE(isStartOfLine(createVisiblePositionInFlatTree(*one, 0))); EXPECT_FALSE(isStartOfLine(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_FALSE(isStartOfLine(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_FALSE(isStartOfLine(createVisiblePositionInFlatTree(*one, 1))); EXPECT_FALSE(isStartOfLine(createVisiblePositionInDOMTree(*two, 0))); - EXPECT_FALSE(isStartOfLine(createVisiblePositionInComposedTree(*two, 0))); + EXPECT_FALSE(isStartOfLine(createVisiblePositionInFlatTree(*two, 0))); EXPECT_FALSE(isStartOfLine(createVisiblePositionInDOMTree(*three, 0))); - EXPECT_TRUE(isStartOfLine(createVisiblePositionInComposedTree(*three, 0))); + EXPECT_TRUE(isStartOfLine(createVisiblePositionInFlatTree(*three, 0))); EXPECT_FALSE(isStartOfLine(createVisiblePositionInDOMTree(*four, 0))); - EXPECT_FALSE(isStartOfLine(createVisiblePositionInComposedTree(*four, 0))); + EXPECT_FALSE(isStartOfLine(createVisiblePositionInFlatTree(*four, 0))); EXPECT_TRUE(isStartOfLine(createVisiblePositionInDOMTree(*five, 0))); - EXPECT_TRUE(isStartOfLine(createVisiblePositionInComposedTree(*five, 0))); + EXPECT_TRUE(isStartOfLine(createVisiblePositionInFlatTree(*five, 0))); EXPECT_TRUE(isStartOfLine(createVisiblePositionInDOMTree(*six, 0))); - EXPECT_TRUE(isStartOfLine(createVisiblePositionInComposedTree(*six, 0))); + EXPECT_TRUE(isStartOfLine(createVisiblePositionInFlatTree(*six, 0))); EXPECT_FALSE(isStartOfLine(createVisiblePositionInDOMTree(*seven, 0))); - EXPECT_FALSE(isStartOfLine(createVisiblePositionInComposedTree(*seven, 0))); + EXPECT_FALSE(isStartOfLine(createVisiblePositionInFlatTree(*seven, 0))); } TEST_F(VisibleUnitsTest, isStartOfParagraph) @@ -710,19 +710,19 @@ Node* three = document().getElementById("three")->firstChild(); EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInDOMTree(*zero, 0))); - EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInComposedTree(*zero, 0))); + EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInFlatTree(*zero, 0))); EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInDOMTree(*one, 0))); - EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInComposedTree(*one, 0))); + EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInFlatTree(*one, 0))); EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInDOMTree(*one, 1))); - EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInComposedTree(*one, 1))); + EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInFlatTree(*one, 1))); EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInDOMTree(*two, 0))); - EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInComposedTree(*two, 0))); + EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInFlatTree(*two, 0))); EXPECT_FALSE(isStartOfParagraph(createVisiblePositionInDOMTree(*three, 0))); - EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInComposedTree(*three, 0))); + EXPECT_TRUE(isStartOfParagraph(createVisiblePositionInFlatTree(*three, 0))); } TEST_F(VisibleUnitsTest, isVisuallyEquivalentCandidateWithHTMLHtmlElement) @@ -780,13 +780,13 @@ Element* five = shadowRoot->getElementById("five"); EXPECT_EQ(Position(two->firstChild(), 1), leftPositionOf(createVisiblePosition(Position(one, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two->firstChild(), 1), leftPositionOf(createVisiblePosition(PositionInComposedTree(one, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two->firstChild(), 1), leftPositionOf(createVisiblePosition(PositionInFlatTree(one, 0))).deepEquivalent()); EXPECT_EQ(Position(one->firstChild(), 0), leftPositionOf(createVisiblePosition(Position(two, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four->firstChild(), 3), leftPositionOf(createVisiblePosition(PositionInComposedTree(two, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four->firstChild(), 3), leftPositionOf(createVisiblePosition(PositionInFlatTree(two, 0))).deepEquivalent()); EXPECT_EQ(Position(two->firstChild(), 2), leftPositionOf(createVisiblePosition(Position(three, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 5), leftPositionOf(createVisiblePosition(PositionInComposedTree(three, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 5), leftPositionOf(createVisiblePosition(PositionInFlatTree(three, 0))).deepEquivalent()); } TEST_F(VisibleUnitsTest, localCaretRectOfPosition) @@ -802,13 +802,13 @@ LayoutObject* layoutObjectFromDOMTree; LayoutRect layoutRectFromDOMTree = localCaretRectOfPosition(Position(one->firstChild(), 0), layoutObjectFromDOMTree); - LayoutObject* layoutObjectFromComposedTree; - LayoutRect layoutRectFromComposedTree = localCaretRectOfPosition(PositionInComposedTree(one->firstChild(), 0), layoutObjectFromComposedTree); + LayoutObject* layoutObjectFromFlatTree; + LayoutRect layoutRectFromFlatTree = localCaretRectOfPosition(PositionInFlatTree(one->firstChild(), 0), layoutObjectFromFlatTree); EXPECT_TRUE(layoutObjectFromDOMTree); EXPECT_FALSE(layoutRectFromDOMTree.isEmpty()); - EXPECT_EQ(layoutObjectFromDOMTree, layoutObjectFromComposedTree); - EXPECT_EQ(layoutRectFromDOMTree, layoutRectFromComposedTree); + EXPECT_EQ(layoutObjectFromDOMTree, layoutObjectFromFlatTree); + EXPECT_EQ(layoutRectFromDOMTree, layoutRectFromFlatTree); } TEST_F(VisibleUnitsTest, logicalEndOfLine) @@ -828,33 +828,33 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_EQ(Position(seven, 7), logicalEndOfLine(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), logicalEndOfLine(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), logicalEndOfLine(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), logicalEndOfLine(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), logicalEndOfLine(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), logicalEndOfLine(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), logicalEndOfLine(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), logicalEndOfLine(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), logicalEndOfLine(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); // TODO(yosin) logicalEndOfLine(two, 1) -> (five, 5) is a broken result. We keep // it as a marker for future change. EXPECT_EQ(Position(five, 5), logicalEndOfLine(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), logicalEndOfLine(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), logicalEndOfLine(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 5), logicalEndOfLine(createVisiblePositionInDOMTree(*three, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), logicalEndOfLine(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), logicalEndOfLine(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 4), logicalEndOfLine(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 4), logicalEndOfLine(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 4), logicalEndOfLine(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 5), logicalEndOfLine(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), logicalEndOfLine(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), logicalEndOfLine(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); EXPECT_EQ(Position(six, 6), logicalEndOfLine(createVisiblePositionInDOMTree(*six, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(six, 6), logicalEndOfLine(createVisiblePositionInComposedTree(*six, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(six, 6), logicalEndOfLine(createVisiblePositionInFlatTree(*six, 1)).deepEquivalent()); EXPECT_EQ(Position(seven, 7), logicalEndOfLine(createVisiblePositionInDOMTree(*seven, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(seven, 7), logicalEndOfLine(createVisiblePositionInComposedTree(*seven, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(seven, 7), logicalEndOfLine(createVisiblePositionInFlatTree(*seven, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, logicalStartOfLine) @@ -874,33 +874,33 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_EQ(Position(one, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(five, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*three, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); // TODO(yosin) logicalStartOfLine(four, 1) -> (two, 2) is a broken result. // We keep it as a marker for future change. EXPECT_EQ(Position(two, 2), logicalStartOfLine(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); EXPECT_EQ(Position(six, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*six, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(six, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*six, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(six, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*six, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), logicalStartOfLine(createVisiblePositionInDOMTree(*seven, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), logicalStartOfLine(createVisiblePositionInComposedTree(*seven, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), logicalStartOfLine(createVisiblePositionInFlatTree(*seven, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, mostBackwardCaretPositionAfterAnchor) @@ -914,7 +914,7 @@ RefPtrWillBeRawPtr<Element> host = document().getElementById("host"); EXPECT_EQ(Position::lastPositionInNode(host.get()), mostForwardCaretPosition(Position::afterNode(host.get()))); - EXPECT_EQ(PositionInComposedTree::lastPositionInNode(host.get()), mostForwardCaretPosition(PositionInComposedTree::afterNode(host.get()))); + EXPECT_EQ(PositionInFlatTree::lastPositionInNode(host.get()), mostForwardCaretPosition(PositionInFlatTree::afterNode(host.get()))); } TEST_F(VisibleUnitsTest, mostBackwardCaretPositionFirstLetter) @@ -973,7 +973,7 @@ RefPtrWillBeRawPtr<Element> three = shadowRoot->getElementById("three"); EXPECT_EQ(Position(one->firstChild(), 1), mostBackwardCaretPosition(Position::afterNode(host.get()))); - EXPECT_EQ(PositionInComposedTree(three->firstChild(), 3), mostBackwardCaretPosition(PositionInComposedTree::afterNode(host.get()))); + EXPECT_EQ(PositionInFlatTree(three->firstChild(), 3), mostBackwardCaretPosition(PositionInFlatTree::afterNode(host.get()))); } TEST_F(VisibleUnitsTest, mostForwardCaretPositionFirstLetter) @@ -1014,16 +1014,16 @@ Element* five = shadowRoot->getElementById("five"); EXPECT_EQ(Position(one->firstChild(), 0), nextPositionOf(createVisiblePosition(Position(zero, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four->firstChild(), 0), nextPositionOf(createVisiblePosition(PositionInComposedTree(zero, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four->firstChild(), 0), nextPositionOf(createVisiblePosition(PositionInFlatTree(zero, 1))).deepEquivalent()); EXPECT_EQ(Position(one->firstChild(), 1), nextPositionOf(createVisiblePosition(Position(one, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInComposedTree(one, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInFlatTree(one, 0))).deepEquivalent()); EXPECT_EQ(Position(two->firstChild(), 1), nextPositionOf(createVisiblePosition(Position(one, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInComposedTree(one, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInFlatTree(one, 1))).deepEquivalent()); EXPECT_EQ(Position(three->firstChild(), 0), nextPositionOf(createVisiblePosition(Position(two, 2))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInComposedTree(two, 2))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one->firstChild(), 1), nextPositionOf(createVisiblePosition(PositionInFlatTree(two, 2))).deepEquivalent()); } TEST_F(VisibleUnitsTest, previousPositionOf) @@ -1042,29 +1042,29 @@ Node* five = shadowRoot->getElementById("five")->firstChild(); EXPECT_EQ(Position(zero, 0), previousPositionOf(createVisiblePosition(Position(zero, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(zero, 0), previousPositionOf(createVisiblePosition(PositionInComposedTree(zero, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(zero, 0), previousPositionOf(createVisiblePosition(PositionInFlatTree(zero, 1))).deepEquivalent()); EXPECT_EQ(Position(zero, 1), previousPositionOf(createVisiblePosition(Position(one, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 1), previousPositionOf(createVisiblePosition(PositionInComposedTree(one, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 1), previousPositionOf(createVisiblePosition(PositionInFlatTree(one, 0))).deepEquivalent()); EXPECT_EQ(Position(one, 0), previousPositionOf(createVisiblePosition(Position(one, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 2), previousPositionOf(createVisiblePosition(PositionInComposedTree(one, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 2), previousPositionOf(createVisiblePosition(PositionInFlatTree(one, 1))).deepEquivalent()); EXPECT_EQ(Position(one, 0), previousPositionOf(createVisiblePosition(Position(two, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 3), previousPositionOf(createVisiblePosition(PositionInComposedTree(two, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 3), previousPositionOf(createVisiblePosition(PositionInFlatTree(two, 0))).deepEquivalent()); // DOM tree to shadow tree EXPECT_EQ(Position(two, 2), previousPositionOf(createVisiblePosition(Position(three, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 5), previousPositionOf(createVisiblePosition(PositionInComposedTree(three, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 5), previousPositionOf(createVisiblePosition(PositionInFlatTree(three, 0))).deepEquivalent()); // Shadow tree to DOM tree EXPECT_EQ(Position(), previousPositionOf(createVisiblePosition(Position(four, 0))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(zero, 1), previousPositionOf(createVisiblePosition(PositionInComposedTree(four, 0))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(zero, 1), previousPositionOf(createVisiblePosition(PositionInFlatTree(four, 0))).deepEquivalent()); // Note: Canonicalization maps (five, 0) to (four, 4) in DOM tree and - // (one, 1) in composed tree. + // (one, 1) in flat tree. EXPECT_EQ(Position(four, 4), previousPositionOf(createVisiblePosition(Position(five, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 1), previousPositionOf(createVisiblePosition(PositionInComposedTree(five, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 1), previousPositionOf(createVisiblePosition(PositionInFlatTree(five, 1))).deepEquivalent()); } TEST_F(VisibleUnitsTest, previousPositionOfOneCharPerLine) @@ -1121,16 +1121,16 @@ Node* five = shadowRoot->getElementById("five")->firstChild(); EXPECT_EQ(Position(), rightPositionOf(createVisiblePosition(Position(one, 1))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), rightPositionOf(createVisiblePosition(PositionInComposedTree(one, 1))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), rightPositionOf(createVisiblePosition(PositionInFlatTree(one, 1))).deepEquivalent()); EXPECT_EQ(Position(one, 1), rightPositionOf(createVisiblePosition(Position(two, 2))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 1), rightPositionOf(createVisiblePosition(PositionInComposedTree(two, 2))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 1), rightPositionOf(createVisiblePosition(PositionInFlatTree(two, 2))).deepEquivalent()); EXPECT_EQ(Position(five, 0), rightPositionOf(createVisiblePosition(Position(four, 4))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 0), rightPositionOf(createVisiblePosition(PositionInComposedTree(four, 4))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 0), rightPositionOf(createVisiblePosition(PositionInFlatTree(four, 4))).deepEquivalent()); EXPECT_EQ(Position(), rightPositionOf(createVisiblePosition(Position(five, 5))).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), rightPositionOf(createVisiblePosition(PositionInComposedTree(five, 5))).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), rightPositionOf(createVisiblePosition(PositionInFlatTree(five, 5))).deepEquivalent()); } TEST_F(VisibleUnitsTest, startOfDocument) @@ -1145,10 +1145,10 @@ Node* two = document().getElementById("two")->firstChild(); EXPECT_EQ(Position(one, 0), startOfDocument(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 0), startOfDocument(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 0), startOfDocument(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfDocument(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 0), startOfDocument(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 0), startOfDocument(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, startOfLine) @@ -1168,33 +1168,33 @@ Node* seven = shadowRoot->getElementById("seven")->firstChild(); EXPECT_EQ(Position(one, 0), startOfLine(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), startOfLine(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), startOfLine(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfLine(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), startOfLine(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), startOfLine(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfLine(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), startOfLine(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), startOfLine(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(five, 0), startOfLine(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), startOfLine(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), startOfLine(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 0), startOfLine(createVisiblePositionInDOMTree(*three, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfLine(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfLine(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); // TODO(yosin) startOfLine(four, 1) -> (two, 2) is a broken result. We keep // it as a marker for future change. EXPECT_EQ(Position(two, 2), startOfLine(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfLine(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfLine(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(five, 0), startOfLine(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(five, 0), startOfLine(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(five, 0), startOfLine(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); EXPECT_EQ(Position(six, 0), startOfLine(createVisiblePositionInDOMTree(*six, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(six, 0), startOfLine(createVisiblePositionInComposedTree(*six, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(six, 0), startOfLine(createVisiblePositionInFlatTree(*six, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfLine(createVisiblePositionInDOMTree(*seven, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), startOfLine(createVisiblePositionInComposedTree(*seven, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), startOfLine(createVisiblePositionInFlatTree(*seven, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, startOfParagraph) @@ -1211,15 +1211,15 @@ Node* three = document().getElementById("three")->firstChild(); EXPECT_EQ(Position(zero, 0), startOfParagraph(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(one, 0), startOfParagraph(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(one, 0), startOfParagraph(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(zero, 0), startOfParagraph(createVisiblePositionInDOMTree(*two, 2)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(two, 0), startOfParagraph(createVisiblePositionInComposedTree(*two, 2)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(two, 0), startOfParagraph(createVisiblePositionInFlatTree(*two, 2)).deepEquivalent()); // DOM version of |startOfParagraph()| doesn't take account contents in // shadow tree. EXPECT_EQ(Position(zero, 0), startOfParagraph(createVisiblePositionInDOMTree(*three, 2)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfParagraph(createVisiblePositionInComposedTree(*three, 2)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfParagraph(createVisiblePositionInFlatTree(*three, 2)).deepEquivalent()); // crbug.com/563777. startOfParagraph() unexpectedly returned a null // position with nested editable <BODY>s. @@ -1251,22 +1251,22 @@ Node* four = shadowRoot->getElementById("four")->firstChild(); EXPECT_EQ(Position(one, 0), startOfSentence(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfSentence(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfSentence(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfSentence(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(three, 0), startOfSentence(createVisiblePositionInDOMTree(*three, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(three, 0), startOfSentence(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(three, 0), startOfSentence(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(three, 0), startOfSentence(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); } TEST_F(VisibleUnitsTest, startOfWord) @@ -1285,25 +1285,25 @@ Node* space = shadowRoot->getElementById("space")->firstChild(); EXPECT_EQ(Position(one, 0), startOfWord(createVisiblePositionInDOMTree(*one, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(space, 1), startOfWord(createVisiblePositionInComposedTree(*one, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(space, 1), startOfWord(createVisiblePositionInFlatTree(*one, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfWord(createVisiblePositionInDOMTree(*one, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(space, 1), startOfWord(createVisiblePositionInComposedTree(*one, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(space, 1), startOfWord(createVisiblePositionInFlatTree(*one, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfWord(createVisiblePositionInDOMTree(*two, 0)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 0), startOfWord(createVisiblePositionInComposedTree(*two, 0)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 0), startOfWord(createVisiblePositionInFlatTree(*two, 0)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfWord(createVisiblePositionInDOMTree(*two, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 0), startOfWord(createVisiblePositionInComposedTree(*two, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 0), startOfWord(createVisiblePositionInFlatTree(*two, 1)).deepEquivalent()); EXPECT_EQ(Position(one, 0), startOfWord(createVisiblePositionInDOMTree(*three, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(space, 1), startOfWord(createVisiblePositionInComposedTree(*three, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(space, 1), startOfWord(createVisiblePositionInFlatTree(*three, 1)).deepEquivalent()); EXPECT_EQ(Position(four, 0), startOfWord(createVisiblePositionInDOMTree(*four, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(four, 0), startOfWord(createVisiblePositionInComposedTree(*four, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(four, 0), startOfWord(createVisiblePositionInFlatTree(*four, 1)).deepEquivalent()); EXPECT_EQ(Position(space, 1), startOfWord(createVisiblePositionInDOMTree(*five, 1)).deepEquivalent()); - EXPECT_EQ(PositionInComposedTree(space, 1), startOfWord(createVisiblePositionInComposedTree(*five, 1)).deepEquivalent()); + EXPECT_EQ(PositionInFlatTree(space, 1), startOfWord(createVisiblePositionInFlatTree(*five, 1)).deepEquivalent()); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.cpp b/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.cpp index eb9b9f2..338de62 100644 --- a/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.cpp
@@ -93,6 +93,6 @@ } template class CORE_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.h b/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.h index 4095b0e1..94ce561 100644 --- a/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.h +++ b/third_party/WebKit/Source/core/editing/iterators/BackwardsCharacterIterator.h
@@ -54,7 +54,7 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT BackwardsCharacterIteratorAlgorithm<EditingInFlatTreeStrategy>; using BackwardsCharacterIterator = BackwardsCharacterIteratorAlgorithm<EditingStrategy>;
diff --git a/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.cpp b/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.cpp index e3e1e341..4f73fce 100644 --- a/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.cpp
@@ -197,6 +197,6 @@ } template class CORE_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.h b/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.h index 0137e9b..486021c1 100644 --- a/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.h +++ b/third_party/WebKit/Source/core/editing/iterators/CharacterIterator.h
@@ -81,7 +81,7 @@ extern template class CORE_EXTERN_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingStrategy>; using CharacterIterator = CharacterIteratorAlgorithm<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT CharacterIteratorAlgorithm<EditingInFlatTreeStrategy>; CORE_EXPORT EphemeralRange calculateCharacterSubrange(const EphemeralRange&, int characterOffset, int characterCount);
diff --git a/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.cpp b/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.cpp index 5b3a7cd..6e39b3a 100644 --- a/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.cpp
@@ -88,6 +88,6 @@ } template class CORE_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.h b/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.h index e157c9c..5ccc09f 100644 --- a/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.h +++ b/third_party/WebKit/Source/core/editing/iterators/FullyClippedStateStack.h
@@ -23,7 +23,7 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT FullyClippedStateStackAlgorithm<EditingInFlatTreeStrategy>; using FullyClippedStateStack = FullyClippedStateStackAlgorithm<EditingStrategy>;
diff --git a/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.cpp b/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.cpp index b49cfdd..f9d370e 100644 --- a/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.cpp
@@ -449,9 +449,9 @@ return findPlainTextAlgorithm<EditingStrategy>(inputRange, target, options); } -EphemeralRangeInComposedTree findPlainText(const EphemeralRangeInComposedTree& inputRange, const String& target, FindOptions options) +EphemeralRangeInFlatTree findPlainText(const EphemeralRangeInFlatTree& inputRange, const String& target, FindOptions options) { - return findPlainTextAlgorithm<EditingInComposedTreeStrategy>(inputRange, target, options); + return findPlainTextAlgorithm<EditingInFlatTreeStrategy>(inputRange, target, options); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.h b/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.h index ec8cbd8bc..7847351 100644 --- a/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.h +++ b/third_party/WebKit/Source/core/editing/iterators/SearchBuffer.h
@@ -84,7 +84,7 @@ }; CORE_EXPORT EphemeralRange findPlainText(const EphemeralRange& inputRange, const String&, FindOptions); -CORE_EXPORT EphemeralRangeInComposedTree findPlainText(const EphemeralRangeInComposedTree& inputRange, const String&, FindOptions); +CORE_EXPORT EphemeralRangeInFlatTree findPlainText(const EphemeralRangeInFlatTree& inputRange, const String&, FindOptions); } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.cpp b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.cpp index 71181a3..bc18302 100644 --- a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.cpp
@@ -447,7 +447,7 @@ } template class CORE_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h index 67e1dd7..89f2634b 100644 --- a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h +++ b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIterator.h
@@ -132,7 +132,7 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT SimplifiedBackwardsTextIteratorAlgorithm<EditingInFlatTreeStrategy>; using SimplifiedBackwardsTextIterator = SimplifiedBackwardsTextIteratorAlgorithm<EditingStrategy>;
diff --git a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIteratorTest.cpp b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIteratorTest.cpp index b13324d..bed28cd 100644 --- a/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIteratorTest.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/SimplifiedBackwardsTextIteratorTest.cpp
@@ -39,7 +39,7 @@ // general. To record current behavior, we have this test. even if it // isn't intuitive. EXPECT_EQ("onetwo", extractString<EditingStrategy>(*host)); - EXPECT_EQ("three two one zero", extractString<EditingInComposedTreeStrategy>(*host)); + EXPECT_EQ("three two one zero", extractString<EditingInFlatTreeStrategy>(*host)); } TEST_F(SimplifiedBackwardsTextIteratorTest, characterAt) @@ -63,8 +63,8 @@ EXPECT_EQ('n', backIter1.characterAt(1)) << message1; EXPECT_EQ('o', backIter1.characterAt(2)) << message1; - EphemeralRangeTemplate<EditingInComposedTreeStrategy> range2(EphemeralRangeTemplate<EditingInComposedTreeStrategy>::rangeOfContents(*host)); - SimplifiedBackwardsTextIteratorAlgorithm<EditingInComposedTreeStrategy> backIter2(range2.startPosition(), range2.endPosition()); + EphemeralRangeTemplate<EditingInFlatTreeStrategy> range2(EphemeralRangeTemplate<EditingInFlatTreeStrategy>::rangeOfContents(*host)); + SimplifiedBackwardsTextIteratorAlgorithm<EditingInFlatTreeStrategy> backIter2(range2.startPosition(), range2.endPosition()); const char* message2 = "|backIter2| should emit 'three ', 'two', ' ', 'one' and ' zero' in reverse order."; EXPECT_EQ('o', backIter2.characterAt(0)) << message2; EXPECT_EQ('r', backIter2.characterAt(1)) << message2; @@ -114,8 +114,8 @@ backIter1.copyTextTo(&output1, 1, 2); EXPECT_EQ("onetwo", String(output1.data(), output1.size())) << String::format(message, 1, "onetwo").utf8().data(); - EphemeralRangeTemplate<EditingInComposedTreeStrategy> range2(EphemeralRangeTemplate<EditingInComposedTreeStrategy>::rangeOfContents(*host)); - SimplifiedBackwardsTextIteratorAlgorithm<EditingInComposedTreeStrategy> backIter2(range2.startPosition(), range2.endPosition()); + EphemeralRangeTemplate<EditingInFlatTreeStrategy> range2(EphemeralRangeTemplate<EditingInFlatTreeStrategy>::rangeOfContents(*host)); + SimplifiedBackwardsTextIteratorAlgorithm<EditingInFlatTreeStrategy> backIter2(range2.startPosition(), range2.endPosition()); BackwardsTextBuffer output2; backIter2.copyTextTo(&output2, 0, 2); EXPECT_EQ("ro", String(output2.data(), output2.size())) << String::format(message, 2, "ro").utf8().data();
diff --git a/third_party/WebKit/Source/core/editing/iterators/TextIterator.cpp b/third_party/WebKit/Source/core/editing/iterators/TextIterator.cpp index 38481de..57b892e7 100644 --- a/third_party/WebKit/Source/core/editing/iterators/TextIterator.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/TextIterator.cpp
@@ -75,7 +75,7 @@ } template <> -TextIteratorBehaviorFlags adjustBehaviorFlags<EditingInComposedTreeStrategy>(TextIteratorBehaviorFlags flags) +TextIteratorBehaviorFlags adjustBehaviorFlags<EditingInFlatTreeStrategy>(TextIteratorBehaviorFlags flags) { if (flags & TextIteratorForSelectionToString) flags |= TextIteratorExcludeAutofilledValue; @@ -115,7 +115,7 @@ } template <> -int shadowDepthOf<EditingInComposedTreeStrategy>(const Node& startContainer, const Node& endContainer) +int shadowDepthOf<EditingInFlatTreeStrategy>(const Node& startContainer, const Node& endContainer) { return 0; } @@ -339,7 +339,7 @@ // // 1. Iterate over child nodes, if we haven't done yet. // To support |TextIteratorEmitsImageAltText|, we don't traversal child - // nodes, in composed tree. + // nodes, in flat tree. Node* next = m_iterationProgress < HandledChildren && !isHTMLImageElement(*m_node) ? Strategy::firstChild(*m_node) : nullptr; m_offset = 0; if (!next) { @@ -1165,12 +1165,12 @@ return createPlainText<EditingStrategy>(range, behavior); } -String plainText(const EphemeralRangeInComposedTree& range, TextIteratorBehaviorFlags behavior) +String plainText(const EphemeralRangeInFlatTree& range, TextIteratorBehaviorFlags behavior) { - return createPlainText<EditingInComposedTreeStrategy>(range, behavior); + return createPlainText<EditingInFlatTreeStrategy>(range, behavior); } template class CORE_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/TextIterator.h b/third_party/WebKit/Source/core/editing/iterators/TextIterator.h index 06b1950..8e0b8b82 100644 --- a/third_party/WebKit/Source/core/editing/iterators/TextIterator.h +++ b/third_party/WebKit/Source/core/editing/iterators/TextIterator.h
@@ -44,7 +44,7 @@ CORE_EXPORT String plainText(const EphemeralRange&, TextIteratorBehaviorFlags = TextIteratorDefaultBehavior); -String plainText(const EphemeralRangeInComposedTree&, TextIteratorBehaviorFlags = TextIteratorDefaultBehavior); +String plainText(const EphemeralRangeInFlatTree&, TextIteratorBehaviorFlags = TextIteratorDefaultBehavior); // Iterates through the DOM range, returning all the text, and 0-length boundaries // at points where replaced elements break up the text flow. The text comes back in @@ -202,10 +202,10 @@ }; extern template class CORE_EXTERN_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingStrategy>; -extern template class CORE_EXTERN_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingInComposedTreeStrategy>; +extern template class CORE_EXTERN_TEMPLATE_EXPORT TextIteratorAlgorithm<EditingInFlatTreeStrategy>; using TextIterator = TextIteratorAlgorithm<EditingStrategy>; -using TextIteratorInComposedTree = TextIteratorAlgorithm<EditingInComposedTreeStrategy>; +using TextIteratorInFlatTree = TextIteratorAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/iterators/TextIteratorTest.cpp b/third_party/WebKit/Source/core/editing/iterators/TextIteratorTest.cpp index 3134ba1..0587b2d 100644 --- a/third_party/WebKit/Source/core/editing/iterators/TextIteratorTest.cpp +++ b/third_party/WebKit/Source/core/editing/iterators/TextIteratorTest.cpp
@@ -40,9 +40,9 @@ using TextIteratorType = TextIterator; }; -struct ComposedTree : ComposedTreeTraversal { - using PositionType = PositionInComposedTree; - using TextIteratorType = TextIteratorInComposedTree; +struct FlatTree : FlatTreeTraversal { + using PositionType = PositionInFlatTree; + using TextIteratorType = TextIteratorInFlatTree; }; class TextIteratorTest : public EditingTestBase { @@ -115,7 +115,7 @@ static const char* input = "<p>Hello, \ntext</p><p>iterator.</p>"; setBodyContent(input); EXPECT_EQ("[Hello, ][text][\n][\n][iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][text][\n][\n][iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][text][\n][\n][iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, IgnoreAltTextInTextControls) @@ -123,7 +123,7 @@ static const char* input = "<p>Hello <input type='text' value='value'>!</p>"; setBodyContent(input); EXPECT_EQ("[Hello ][][!]", iterate<DOMTree>(TextIteratorEmitsImageAltText)); - EXPECT_EQ("[Hello ][][\n][value][\n][!]", iterate<ComposedTree>(TextIteratorEmitsImageAltText)); + EXPECT_EQ("[Hello ][][\n][value][\n][!]", iterate<FlatTree>(TextIteratorEmitsImageAltText)); } TEST_F(TextIteratorTest, DisplayAltTextInImageControls) @@ -131,7 +131,7 @@ static const char* input = "<p>Hello <input type='image' alt='alt'>!</p>"; setBodyContent(input); EXPECT_EQ("[Hello ][alt][!]", iterate<DOMTree>(TextIteratorEmitsImageAltText)); - EXPECT_EQ("[Hello ][alt][!]", iterate<ComposedTree>(TextIteratorEmitsImageAltText)); + EXPECT_EQ("[Hello ][alt][!]", iterate<FlatTree>(TextIteratorEmitsImageAltText)); } TEST_F(TextIteratorTest, NotEnteringTextControls) @@ -139,7 +139,7 @@ static const char* input = "<p>Hello <input type='text' value='input'>!</p>"; setBodyContent(input); EXPECT_EQ("[Hello ][][!]", iterate<DOMTree>()); - EXPECT_EQ("[Hello ][][\n][input][\n][!]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello ][][\n][input][\n][!]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, EnteringTextControlsWithOption) @@ -147,7 +147,7 @@ static const char* input = "<p>Hello <input type='text' value='input'>!</p>"; setBodyContent(input); EXPECT_EQ("[Hello ][\n][input][!]", iterate<DOMTree>(TextIteratorEntersTextControls)); - EXPECT_EQ("[Hello ][][\n][input][\n][!]", iterate<ComposedTree>(TextIteratorEntersTextControls)); + EXPECT_EQ("[Hello ][][\n][input][\n][!]", iterate<FlatTree>(TextIteratorEntersTextControls)); } TEST_F(TextIteratorTest, EnteringTextControlsWithOptionComplex) @@ -155,7 +155,7 @@ static const char* input = "<input type='text' value='Beginning of range'><div><div><input type='text' value='Under DOM nodes'></div></div><input type='text' value='End of range'>"; setBodyContent(input); EXPECT_EQ("[\n][Beginning of range][\n][Under DOM nodes][\n][End of range]", iterate<DOMTree>(TextIteratorEntersTextControls)); - EXPECT_EQ("[][\n][Beginning of range][\n][][\n][Under DOM nodes][\n][][\n][End of range]", iterate<ComposedTree>(TextIteratorEntersTextControls)); + EXPECT_EQ("[][\n][Beginning of range][\n][][\n][Under DOM nodes][\n][][\n][End of range]", iterate<FlatTree>(TextIteratorEntersTextControls)); } TEST_F(TextIteratorTest, NotEnteringTextControlHostingShadowTreeEvenWithOption) @@ -168,7 +168,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "input", shadowContent); // FIXME: Why is an empty string emitted here? EXPECT_EQ("[Hello, ][][ iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][][shadow][ iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][][shadow][ iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, NotEnteringShadowTree) @@ -179,7 +179,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent); // TextIterator doesn't emit "text" since its layoutObject is not created. The shadow tree is ignored. EXPECT_EQ("[Hello, ][ iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][shadow][ iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][shadow][ iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, NotEnteringShadowTreeWithMultipleShadowTrees) @@ -191,7 +191,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent1); createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent2); EXPECT_EQ("[Hello, ][ iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][second shadow][ iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][second shadow][ iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, NotEnteringShadowTreeWithNestedShadowTrees) @@ -203,7 +203,7 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot1 = createShadowRootForElementWithIDAndSetInnerHTML(document(), "host-in-document", shadowContent1); createShadowRootForElementWithIDAndSetInnerHTML(*shadowRoot1, "host-in-shadow", shadowContent2); EXPECT_EQ("[Hello, ][ iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][first ][second shadow][ iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][first ][second shadow][ iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, NotEnteringShadowTreeWithContentInsertionPoint) @@ -214,7 +214,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent); // In this case a layoutObject for "text" is created, so it shows up here. EXPECT_EQ("[Hello, ][text][ iterator.]", iterate<DOMTree>()); - EXPECT_EQ("[Hello, ][shadow ][text][ iterator.]", iterate<ComposedTree>()); + EXPECT_EQ("[Hello, ][shadow ][text][ iterator.]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, EnteringShadowTreeWithOption) @@ -225,7 +225,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent); // TextIterator emits "shadow" since TextIteratorEntersOpenShadowRoots is specified. EXPECT_EQ("[Hello, ][shadow][ iterator.]", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("[Hello, ][shadow][ iterator.]", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("[Hello, ][shadow][ iterator.]", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, EnteringShadowTreeWithMultipleShadowTreesWithOption) @@ -238,7 +238,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent2); // The first isn't emitted because a layoutObject for the first is not created. EXPECT_EQ("[Hello, ][second shadow][ iterator.]", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("[Hello, ][second shadow][ iterator.]", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("[Hello, ][second shadow][ iterator.]", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, EnteringShadowTreeWithNestedShadowTreesWithOption) @@ -250,7 +250,7 @@ RefPtrWillBeRawPtr<ShadowRoot> shadowRoot1 = createShadowRootForElementWithIDAndSetInnerHTML(document(), "host-in-document", shadowContent1); createShadowRootForElementWithIDAndSetInnerHTML(*shadowRoot1, "host-in-shadow", shadowContent2); EXPECT_EQ("[Hello, ][first ][second shadow][ iterator.]", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("[Hello, ][first ][second shadow][ iterator.]", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("[Hello, ][first ][second shadow][ iterator.]", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, EnteringShadowTreeWithContentInsertionPointWithOption) @@ -263,7 +263,7 @@ setBodyContent(bodyContent); createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent); EXPECT_EQ("[Hello, ][ shadow][text][ iterator.]", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("[Hello, ][text][ shadow][ iterator.]", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("[Hello, ][text][ shadow][ iterator.]", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, StartingAtNodeInShadowRoot) @@ -278,9 +278,9 @@ Position end(outerDiv, PositionAnchorType::AfterChildren); EXPECT_EQ("[ shadow][text][ iterator.]", iteratePartial<DOMTree>(start, end, TextIteratorEntersOpenShadowRoots)); - PositionInComposedTree startInComposedTree(spanInShadow, PositionAnchorType::BeforeChildren); - PositionInComposedTree endInComposedTree(outerDiv, PositionAnchorType::AfterChildren); - EXPECT_EQ("[text][ shadow][ iterator.]", iteratePartial<ComposedTree>(startInComposedTree, endInComposedTree, TextIteratorEntersOpenShadowRoots)); + PositionInFlatTree startInFlatTree(spanInShadow, PositionAnchorType::BeforeChildren); + PositionInFlatTree endInFlatTree(outerDiv, PositionAnchorType::AfterChildren); + EXPECT_EQ("[text][ shadow][ iterator.]", iteratePartial<FlatTree>(startInFlatTree, endInFlatTree, TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, FinishingAtNodeInShadowRoot) @@ -295,9 +295,9 @@ Position end(spanInShadow, PositionAnchorType::AfterChildren); EXPECT_EQ("[Hello, ][ shadow]", iteratePartial<DOMTree>(start, end, TextIteratorEntersOpenShadowRoots)); - PositionInComposedTree startInComposedTree(outerDiv, PositionAnchorType::BeforeChildren); - PositionInComposedTree endInComposedTree(spanInShadow, PositionAnchorType::AfterChildren); - EXPECT_EQ("[Hello, ][text][ shadow]", iteratePartial<ComposedTree>(startInComposedTree, endInComposedTree, TextIteratorEntersOpenShadowRoots)); + PositionInFlatTree startInFlatTree(outerDiv, PositionAnchorType::BeforeChildren); + PositionInFlatTree endInFlatTree(spanInShadow, PositionAnchorType::AfterChildren); + EXPECT_EQ("[Hello, ][text][ shadow]", iteratePartial<FlatTree>(startInFlatTree, endInFlatTree, TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, FullyClipsContents) @@ -308,7 +308,7 @@ "</div>"; setBodyContent(bodyContent); EXPECT_EQ("", iterate<DOMTree>()); - EXPECT_EQ("", iterate<ComposedTree>()); + EXPECT_EQ("", iterate<FlatTree>()); } TEST_F(TextIteratorTest, IgnoresContainerClip) @@ -322,7 +322,7 @@ "</div>"; setBodyContent(bodyContent); EXPECT_EQ("[but I am!]", iterate<DOMTree>()); - EXPECT_EQ("[but I am!]", iterate<ComposedTree>()); + EXPECT_EQ("[but I am!]", iterate<FlatTree>()); } TEST_F(TextIteratorTest, FullyClippedContentsDistributed) @@ -339,7 +339,7 @@ createShadowRootForElementWithIDAndSetInnerHTML(document(), "host", shadowContent); // FIXME: The text below is actually invisible but TextIterator currently thinks it's visible. EXPECT_EQ("[\n][Am I visible?]", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, IgnoresContainersClipDistributed) @@ -357,7 +357,7 @@ // FIXME: The text below is actually visible but TextIterator currently thinks it's invisible. // [\n][Nobody can find me!] EXPECT_EQ("", iterate<DOMTree>(TextIteratorEntersOpenShadowRoots)); - EXPECT_EQ("[Nobody can find me!]", iterate<ComposedTree>(TextIteratorEntersOpenShadowRoots)); + EXPECT_EQ("[Nobody can find me!]", iterate<FlatTree>(TextIteratorEntersOpenShadowRoots)); } TEST_F(TextIteratorTest, EmitsReplacementCharForInput) @@ -370,7 +370,7 @@ "</div>"; setBodyContent(bodyContent); EXPECT_EQ("[Before][\xEF\xBF\xBC][After]", iterate<DOMTree>(TextIteratorEmitsObjectReplacementCharacter)); - EXPECT_EQ("[Before][\xEF\xBF\xBC][After]", iterate<ComposedTree>(TextIteratorEmitsObjectReplacementCharacter)); + EXPECT_EQ("[Before][\xEF\xBF\xBC][After]", iterate<FlatTree>(TextIteratorEmitsObjectReplacementCharacter)); } TEST_F(TextIteratorTest, RangeLengthWithReplacedElements) @@ -391,7 +391,7 @@ static const char* bodyContent = "<span>Some text </span> <input type='button' value='Button text'/><span>Some more text</span>"; setBodyContent(bodyContent); EXPECT_EQ("[Some text ][][Some more text]", iterate<DOMTree>(TextIteratorCollapseTrailingSpace)); - EXPECT_EQ("[Some text ][][Button text][Some more text]", iterate<ComposedTree>(TextIteratorCollapseTrailingSpace)); + EXPECT_EQ("[Some text ][][Button text][Some more text]", iterate<FlatTree>(TextIteratorCollapseTrailingSpace)); } TEST_F(TextIteratorTest, copyTextTo) @@ -418,8 +418,8 @@ iter1.copyTextTo(&output1, 1, 2); EXPECT_EQ("onetwo", String(output1.data(), output1.size())) << String::format(message, 1, "onetwo").utf8().data(); - EphemeralRangeTemplate<EditingInComposedTreeStrategy> range2(EphemeralRangeTemplate<EditingInComposedTreeStrategy>::rangeOfContents(*host)); - TextIteratorAlgorithm<EditingInComposedTreeStrategy> iter2(range2.startPosition(), range2.endPosition()); + EphemeralRangeTemplate<EditingInFlatTreeStrategy> range2(EphemeralRangeTemplate<EditingInFlatTreeStrategy>::rangeOfContents(*host)); + TextIteratorAlgorithm<EditingInFlatTreeStrategy> iter2(range2.startPosition(), range2.endPosition()); ForwardsTextBuffer output2; iter2.copyTextTo(&output2, 0, 3); EXPECT_EQ("thr", String(output2.data(), output2.size())) << String::format(message, 2, "thr").utf8().data(); @@ -466,8 +466,8 @@ EXPECT_EQ('w', iter1.characterAt(1)) << message1; EXPECT_EQ('o', iter1.characterAt(2)) << message1; - EphemeralRangeTemplate<EditingInComposedTreeStrategy> range2(EphemeralRangeTemplate<EditingInComposedTreeStrategy>::rangeOfContents(*host)); - TextIteratorAlgorithm<EditingInComposedTreeStrategy> iter2(range2.startPosition(), range2.endPosition()); + EphemeralRangeTemplate<EditingInFlatTreeStrategy> range2(EphemeralRangeTemplate<EditingInFlatTreeStrategy>::rangeOfContents(*host)); + TextIteratorAlgorithm<EditingInFlatTreeStrategy> iter2(range2.startPosition(), range2.endPosition()); const char* message2 = "|iter2| should emit 'three ', 'two', ' ', 'one' and ' zero'."; EXPECT_EQ('t', iter2.characterAt(0)) << message2; EXPECT_EQ('h', iter2.characterAt(1)) << message2;
diff --git a/third_party/WebKit/Source/core/editing/serializers/Serialization.cpp b/third_party/WebKit/Source/core/editing/serializers/Serialization.cpp index a9908a2..6b8dae3 100644 --- a/third_party/WebKit/Source/core/editing/serializers/Serialization.cpp +++ b/third_party/WebKit/Source/core/editing/serializers/Serialization.cpp
@@ -267,9 +267,9 @@ return CreateMarkupAlgorithm<EditingStrategy>::createMarkup(startPosition, endPosition, shouldAnnotate, convertBlocksToInlines, shouldResolveURLs, constrainingAncestor); } -String createMarkup(const PositionInComposedTree& startPosition, const PositionInComposedTree& endPosition, EAnnotateForInterchange shouldAnnotate, ConvertBlocksToInlines convertBlocksToInlines, EAbsoluteURLs shouldResolveURLs, Node* constrainingAncestor) +String createMarkup(const PositionInFlatTree& startPosition, const PositionInFlatTree& endPosition, EAnnotateForInterchange shouldAnnotate, ConvertBlocksToInlines convertBlocksToInlines, EAbsoluteURLs shouldResolveURLs, Node* constrainingAncestor) { - return CreateMarkupAlgorithm<EditingInComposedTreeStrategy>::createMarkup(startPosition, endPosition, shouldAnnotate, convertBlocksToInlines, shouldResolveURLs, constrainingAncestor); + return CreateMarkupAlgorithm<EditingInFlatTreeStrategy>::createMarkup(startPosition, endPosition, shouldAnnotate, convertBlocksToInlines, shouldResolveURLs, constrainingAncestor); } PassRefPtrWillBeRawPtr<DocumentFragment> createFragmentFromMarkup(Document& document, const String& markup, const String& baseURL, ParserContentPolicy parserContentPolicy) @@ -702,6 +702,6 @@ } template class CORE_TEMPLATE_EXPORT CreateMarkupAlgorithm<EditingStrategy>; -template class CORE_TEMPLATE_EXPORT CreateMarkupAlgorithm<EditingInComposedTreeStrategy>; +template class CORE_TEMPLATE_EXPORT CreateMarkupAlgorithm<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/serializers/Serialization.h b/third_party/WebKit/Source/core/editing/serializers/Serialization.h index 80c5e001..9c3fdec 100644 --- a/third_party/WebKit/Source/core/editing/serializers/Serialization.h +++ b/third_party/WebKit/Source/core/editing/serializers/Serialization.h
@@ -68,7 +68,7 @@ CORE_EXPORT String createMarkup(const Node*, EChildrenOnly = IncludeNode, EAbsoluteURLs = DoNotResolveURLs); CORE_EXPORT String createMarkup(const Position& start, const Position& end, EAnnotateForInterchange = DoNotAnnotateForInterchange, ConvertBlocksToInlines = ConvertBlocksToInlines::NotConvert, EAbsoluteURLs = DoNotResolveURLs, Node* constrainingAncestor = nullptr); -CORE_EXPORT String createMarkup(const PositionInComposedTree& start, const PositionInComposedTree& end, EAnnotateForInterchange = DoNotAnnotateForInterchange, ConvertBlocksToInlines = ConvertBlocksToInlines::NotConvert, EAbsoluteURLs = DoNotResolveURLs, Node* constrainingAncestor = nullptr); +CORE_EXPORT String createMarkup(const PositionInFlatTree& start, const PositionInFlatTree& end, EAnnotateForInterchange = DoNotAnnotateForInterchange, ConvertBlocksToInlines = ConvertBlocksToInlines::NotConvert, EAbsoluteURLs = DoNotResolveURLs, Node* constrainingAncestor = nullptr); String urlToMarkup(const KURL&, const String& title); void mergeWithNextTextNode(Text*, ExceptionState&);
diff --git a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.cpp b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.cpp index 696e40d..638692eb 100644 --- a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.cpp +++ b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.cpp
@@ -69,7 +69,7 @@ } template<> -bool handleSelectionBoundary<EditingInComposedTreeStrategy>(const Node& node) +bool handleSelectionBoundary<EditingInFlatTreeStrategy>(const Node& node) { if (!node.isElementNode()) return false; @@ -285,10 +285,10 @@ Node* lastClosed = nullptr; for (Node* n = startNode; n && n != pastEnd; n = next) { // If |n| is a selection boundary such as <input>, traverse the child - // nodes in the DOM tree instead of the composed tree. + // nodes in the DOM tree instead of the flat tree. if (handleSelectionBoundary<Strategy>(*n)) { lastClosed = StyledMarkupTraverser<EditingStrategy>(m_accumulator, m_lastClosed.get()).traverse(n, EditingStrategy::nextSkippingChildren(*n)); - next = EditingInComposedTreeStrategy::nextSkippingChildren(*n); + next = EditingInFlatTreeStrategy::nextSkippingChildren(*n); } else { next = Strategy::next(*n); if (isEnclosingBlock(n) && canHaveChildrenForEditing(n) && next == pastEnd) { @@ -478,6 +478,6 @@ } template class StyledMarkupSerializer<EditingStrategy>; -template class StyledMarkupSerializer<EditingInComposedTreeStrategy>; +template class StyledMarkupSerializer<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.h b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.h index 92980b1..0a13f70d 100644 --- a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.h +++ b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializer.h
@@ -60,7 +60,7 @@ }; extern template class StyledMarkupSerializer<EditingStrategy>; -extern template class StyledMarkupSerializer<EditingInComposedTreeStrategy>; +extern template class StyledMarkupSerializer<EditingInFlatTreeStrategy>; } // namespace blink
diff --git a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializerTest.cpp b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializerTest.cpp index c0cad22..272bc18 100644 --- a/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializerTest.cpp +++ b/third_party/WebKit/Source/core/editing/serializers/StyledMarkupSerializerTest.cpp
@@ -52,7 +52,7 @@ setBodyContent(bodyContent); const char* expectedResult = "<span style=\"display: inline !important; float: none;\">Hello world!</span>"; EXPECT_EQ(expectedResult, serialize<EditingStrategy>()); - EXPECT_EQ(expectedResult, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(expectedResult, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, BlockFormatting) @@ -60,7 +60,7 @@ const char* bodyContent = "<div>Hello world!</div>"; setBodyContent(bodyContent); EXPECT_EQ(bodyContent, serialize<EditingStrategy>()); - EXPECT_EQ(bodyContent, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(bodyContent, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, FormControlInput) @@ -69,7 +69,7 @@ setBodyContent(bodyContent); const char* expectedResult = "<input value=\"foo\">"; EXPECT_EQ(expectedResult, serialize<EditingStrategy>()); - EXPECT_EQ(expectedResult, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(expectedResult, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, FormControlInputRange) @@ -78,7 +78,7 @@ setBodyContent(bodyContent); const char* expectedResult = "<input type=\"range\">"; EXPECT_EQ(expectedResult, serialize<EditingStrategy>()); - EXPECT_EQ(expectedResult, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(expectedResult, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, FormControlSelect) @@ -86,7 +86,7 @@ const char* bodyContent = "<select><option value=\"1\">one</option><option value=\"2\">two</option></select>"; setBodyContent(bodyContent); EXPECT_EQ(bodyContent, serialize<EditingStrategy>()); - EXPECT_EQ(bodyContent, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(bodyContent, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, FormControlTextArea) @@ -96,7 +96,7 @@ const char* expectedResult = "<textarea></textarea>"; EXPECT_EQ(expectedResult, serialize<EditingStrategy>()) << "contents of TEXTAREA element should not be appeared."; - EXPECT_EQ(expectedResult, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(expectedResult, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, HeadingFormatting) @@ -104,7 +104,7 @@ const char* bodyContent = "<h4>Hello world!</h4>"; setBodyContent(bodyContent); EXPECT_EQ(bodyContent, serialize<EditingStrategy>()); - EXPECT_EQ(bodyContent, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(bodyContent, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, InlineFormatting) @@ -112,7 +112,7 @@ const char* bodyContent = "<b>Hello world!</b>"; setBodyContent(bodyContent); EXPECT_EQ(bodyContent, serialize<EditingStrategy>()); - EXPECT_EQ(bodyContent, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(bodyContent, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, Mixed) @@ -120,7 +120,7 @@ const char* bodyContent = "<i>foo<b>bar</b>baz</i>"; setBodyContent(bodyContent); EXPECT_EQ(bodyContent, serialize<EditingStrategy>()); - EXPECT_EQ(bodyContent, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(bodyContent, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, ShadowTreeDistributeOrder) @@ -131,7 +131,7 @@ setShadowContent(shadowContent, "host"); EXPECT_EQ("<p id=\"host\"><b id=\"one\">11</b><b id=\"two\">22</b></p>", serialize<EditingStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; - EXPECT_EQ("<p id=\"host\"><a><b id=\"two\">22</b><b id=\"one\">11</b></a></p>", serialize<EditingInComposedTreeStrategy>()) + EXPECT_EQ("<p id=\"host\"><a><b id=\"two\">22</b><b id=\"one\">11</b></a></p>", serialize<EditingInFlatTreeStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; } @@ -143,7 +143,7 @@ setShadowContent(shadowContent, "host"); EXPECT_EQ("<p id=\"host\"><b id=\"one\">11</b><b id=\"two\"><input value=\"22\"></b></p>", serialize<EditingStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; - EXPECT_EQ("<p id=\"host\"><a><b id=\"two\"><input value=\"22\"></b><b id=\"one\">11</b></a></p>", serialize<EditingInComposedTreeStrategy>()) + EXPECT_EQ("<p id=\"host\"><a><b id=\"two\"><input value=\"22\"></b><b id=\"one\">11</b></a></p>", serialize<EditingInFlatTreeStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; } @@ -158,7 +158,7 @@ EXPECT_EQ("<p id=\"host\"><b id=\"one\">11</b><b id=\"two\">22</b></p>", serialize<EditingStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; - EXPECT_EQ("<p id=\"host\"><a><b id=\"two\">22</b><b id=\"host2\">NESTED</b><b id=\"one\">11</b></a></p>", serialize<EditingInComposedTreeStrategy>()) + EXPECT_EQ("<p id=\"host\"><a><b id=\"two\">22</b><b id=\"host2\">NESTED</b><b id=\"one\">11</b></a></p>", serialize<EditingInFlatTreeStrategy>()) << "00 and 33 aren't appeared since they aren't distributed."; } @@ -170,14 +170,14 @@ setShadowContent(shadowContent, "host"); std::string resultFromDOMTree = serialize<EditingStrategy>(AnnotateForInterchange); - std::string resultFromComposedTree = serialize<EditingInComposedTreeStrategy>(AnnotateForInterchange); - size_t mismatchedIndex = mismatch(resultFromDOMTree, resultFromComposedTree); + std::string resultFromFlatTree = serialize<EditingInFlatTreeStrategy>(AnnotateForInterchange); + size_t mismatchedIndex = mismatch(resultFromDOMTree, resultFromFlatTree); - // Note: We check difference between DOM tree result and composed tree + // Note: We check difference between DOM tree result and flat tree // result, because results contain "style" attribute and this test // doesn't care about actual value of "style" attribute. EXPECT_EQ("/a>", resultFromDOMTree.substr(mismatchedIndex)); - EXPECT_EQ("div><br></div></a><br class=\"Apple-interchange-newline\">", resultFromComposedTree.substr(mismatchedIndex)); + EXPECT_EQ("div><br></div></a><br class=\"Apple-interchange-newline\">", resultFromFlatTree.substr(mismatchedIndex)); } TEST_F(StyledMarkupSerializerTest, StyleDisplayNone) @@ -186,7 +186,7 @@ setBodyContent(bodyContent); const char* expectedResult = "<b>0022</b>"; EXPECT_EQ(expectedResult, serialize<EditingStrategy>()); - EXPECT_EQ(expectedResult, serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ(expectedResult, serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, StyleDisplayNoneAndNewLines) @@ -194,7 +194,7 @@ const char* bodyContent = "<div style='display:none'>11</div>\n\n"; setBodyContent(bodyContent); EXPECT_EQ("", serialize<EditingStrategy>()); - EXPECT_EQ("", serialize<EditingInComposedTreeStrategy>()); + EXPECT_EQ("", serialize<EditingInFlatTreeStrategy>()); } TEST_F(StyledMarkupSerializerTest, ShadowTreeStyle) @@ -213,9 +213,9 @@ setShadowContent(shadowContent, "host"); one = document().getElementById("one"); text = toText(one->firstChild()); - PositionInComposedTree startICT(text, 0); - PositionInComposedTree endICT(text, 2); - const std::string& serializedICT = serializePart<EditingInComposedTreeStrategy>(startICT, endICT, AnnotateForInterchange); + PositionInFlatTree startICT(text, 0); + PositionInFlatTree endICT(text, 2); + const std::string& serializedICT = serializePart<EditingInFlatTreeStrategy>(startICT, endICT, AnnotateForInterchange); EXPECT_EQ(serializedDOM, serializedICT); } @@ -238,9 +238,9 @@ setShadowContent(shadowContent2, "host2"); one = document().getElementById("one"); two = document().getElementById("two"); - PositionInComposedTree startICT(toText(one->firstChild()), 0); - PositionInComposedTree endICT(toText(two->firstChild()), 2); - const std::string& serializedICT = serializePart<EditingInComposedTreeStrategy>(startICT, endICT, AnnotateForInterchange); + PositionInFlatTree startICT(toText(one->firstChild()), 0); + PositionInFlatTree endICT(toText(two->firstChild()), 2); + const std::string& serializedICT = serializePart<EditingInFlatTreeStrategy>(startICT, endICT, AnnotateForInterchange); EXPECT_EQ(serializedDOM, serializedICT); } @@ -254,9 +254,9 @@ Position startDOM = Position::firstPositionInNode(span1.get()); Position endDOM = Position::lastPositionInNode(span2.get()); EXPECT_EQ("", serializePart<EditingStrategy>(startDOM, endDOM)); - PositionInComposedTree startICT = PositionInComposedTree::firstPositionInNode(span1.get()); - PositionInComposedTree endICT = PositionInComposedTree::lastPositionInNode(span2.get()); - EXPECT_EQ("", serializePart<EditingInComposedTreeStrategy>(startICT, endICT)); + PositionInFlatTree startICT = PositionInFlatTree::firstPositionInNode(span1.get()); + PositionInFlatTree endICT = PositionInFlatTree::lastPositionInNode(span2.get()); + EXPECT_EQ("", serializePart<EditingInFlatTreeStrategy>(startICT, endICT)); } } // namespace blink
diff --git a/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp b/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp index 118fa20..51ad645 100644 --- a/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp +++ b/third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp
@@ -265,6 +265,7 @@ return nullptr; if (m_context->is3d()) { + document().updateLayoutTreeForNodeIfNeeded(this); const ComputedStyle* style = ensureComputedStyle(); if (style) m_context->setFilterQuality(style->imageRendering() == ImageRenderingPixelated ? kNone_SkFilterQuality : kLow_SkFilterQuality);
diff --git a/third_party/WebKit/Source/core/html/HTMLElement.cpp b/third_party/WebKit/Source/core/html/HTMLElement.cpp index bc3c1bd8..d9e5e99 100644 --- a/third_party/WebKit/Source/core/html/HTMLElement.cpp +++ b/third_party/WebKit/Source/core/html/HTMLElement.cpp
@@ -38,8 +38,8 @@ #include "core/dom/ExceptionCode.h" #include "core/dom/NodeTraversal.h" #include "core/dom/Text.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" #include "core/dom/shadow/ElementShadow.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/serializers/Serialization.h" #include "core/events/EventListener.h" @@ -729,12 +729,12 @@ return textDirection; } - Node* node = ComposedTreeTraversal::firstChild(*this); + Node* node = FlatTreeTraversal::firstChild(*this); while (node) { // Skip bdi, script, style and text form controls. if (equalIgnoringCase(node->nodeName(), "bdi") || isHTMLScriptElement(*node) || isHTMLStyleElement(*node) || (node->isElementNode() && toElement(node)->isTextFormControl())) { - node = ComposedTreeTraversal::nextSkippingChildren(*node, this); + node = FlatTreeTraversal::nextSkippingChildren(*node, this); continue; } @@ -742,7 +742,7 @@ if (node->isElementNode()) { AtomicString dirAttributeValue = toElement(node)->fastGetAttribute(dirAttr); if (isValidDirAttribute(dirAttributeValue)) { - node = ComposedTreeTraversal::nextSkippingChildren(*node, this); + node = FlatTreeTraversal::nextSkippingChildren(*node, this); continue; } } @@ -756,7 +756,7 @@ return textDirection; } } - node = ComposedTreeTraversal::next(*node, this); + node = FlatTreeTraversal::next(*node, this); } if (strongDirectionalityTextNode) *strongDirectionalityTextNode = 0; @@ -773,7 +773,7 @@ // If an ancestor has dir=auto, and this node has the first character, // changes to dir attribute may affect the ancestor. updateDistribution(); - Element* parent = ComposedTreeTraversal::parentElement(*this); + Element* parent = FlatTreeTraversal::parentElement(*this); if (parent && parent->isHTMLElement() && toHTMLElement(parent)->selfOrAncestorHasDirAutoAttribute()) toHTMLElement(parent)->adjustDirectionalityIfNeededAfterChildAttributeChanged(this); @@ -787,7 +787,7 @@ TextDirection textDirection = directionality(); if (layoutObject() && layoutObject()->style() && layoutObject()->style()->direction() != textDirection) { Element* elementToAdjust = this; - for (; elementToAdjust; elementToAdjust = ComposedTreeTraversal::parentElement(*elementToAdjust)) { + for (; elementToAdjust; elementToAdjust = FlatTreeTraversal::parentElement(*elementToAdjust)) { if (elementAffectsDirectionality(elementToAdjust)) { elementToAdjust->setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::create(StyleChangeReason::WritingModeChange)); return; @@ -810,7 +810,7 @@ updateDistribution(); - for (Element* elementToAdjust = this; elementToAdjust; elementToAdjust = ComposedTreeTraversal::parentElement(*elementToAdjust)) { + for (Element* elementToAdjust = this; elementToAdjust; elementToAdjust = FlatTreeTraversal::parentElement(*elementToAdjust)) { if (elementAffectsDirectionality(elementToAdjust)) { toHTMLElement(elementToAdjust)->calculateAndAdjustDirectionality(); return;
diff --git a/third_party/WebKit/Source/core/html/HTMLSummaryElement.cpp b/third_party/WebKit/Source/core/html/HTMLSummaryElement.cpp index 1ca52f98..5a7a5b9 100644 --- a/third_party/WebKit/Source/core/html/HTMLSummaryElement.cpp +++ b/third_party/WebKit/Source/core/html/HTMLSummaryElement.cpp
@@ -22,7 +22,7 @@ #include "bindings/core/v8/ExceptionStatePlaceholder.h" #include "core/HTMLNames.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/events/KeyboardEvent.h" #include "core/html/HTMLContentElement.h"
diff --git a/third_party/WebKit/Source/core/html/HTMLTablePartElement.cpp b/third_party/WebKit/Source/core/html/HTMLTablePartElement.cpp index 9969d71..f104c50b 100644 --- a/third_party/WebKit/Source/core/html/HTMLTablePartElement.cpp +++ b/third_party/WebKit/Source/core/html/HTMLTablePartElement.cpp
@@ -30,7 +30,7 @@ #include "core/css/CSSImageValue.h" #include "core/css/StylePropertySet.h" #include "core/dom/Document.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/html/HTMLTableElement.h" #include "core/html/parser/HTMLParserIdioms.h" #include "platform/weborigin/Referrer.h" @@ -89,9 +89,9 @@ HTMLTableElement* HTMLTablePartElement::findParentTable() const { - ContainerNode* parent = ComposedTreeTraversal::parent(*this); + ContainerNode* parent = FlatTreeTraversal::parent(*this); while (parent && !isHTMLTableElement(*parent)) - parent = ComposedTreeTraversal::parent(*parent); + parent = FlatTreeTraversal::parent(*parent); return toHTMLTableElement(parent); }
diff --git a/third_party/WebKit/Source/core/html/HTMLTextFormControlElement.cpp b/third_party/WebKit/Source/core/html/HTMLTextFormControlElement.cpp index 1110e6f8..35b4b14 100644 --- a/third_party/WebKit/Source/core/html/HTMLTextFormControlElement.cpp +++ b/third_party/WebKit/Source/core/html/HTMLTextFormControlElement.cpp
@@ -384,7 +384,7 @@ newSelection.setWithoutValidation(startPosition, endPosition); newSelection.setIsDirectional(direction != SelectionHasNoDirection); - frame->selection().setSelection(newSelection, FrameSelection::DoNotAdjustInComposedTree | FrameSelection::CloseTyping | FrameSelection::ClearTypingStyle | (selectionOption == ChangeSelectionAndFocus ? 0 : FrameSelection::DoNotSetFocus)); + frame->selection().setSelection(newSelection, FrameSelection::DoNotAdjustInFlatTree | FrameSelection::CloseTyping | FrameSelection::ClearTypingStyle | (selectionOption == ChangeSelectionAndFocus ? 0 : FrameSelection::DoNotSetFocus)); if (eventBehaviour == DispatchSelectEvent) scheduleSelectEvent(); }
diff --git a/third_party/WebKit/Source/core/input/EventHandler.cpp b/third_party/WebKit/Source/core/input/EventHandler.cpp index 4939887c..e14f7c15 100644 --- a/third_party/WebKit/Source/core/input/EventHandler.cpp +++ b/third_party/WebKit/Source/core/input/EventHandler.cpp
@@ -35,7 +35,7 @@ #include "core/dom/DOMNodeIds.h" #include "core/dom/Document.h" #include "core/dom/TouchList.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/Editor.h" #include "core/editing/FrameSelection.h" @@ -527,7 +527,7 @@ LayoutObject* layoutObject = targetNode->layoutObject(); if (!layoutObject) { - Node* parent = ComposedTreeTraversal::parent(*targetNode); + Node* parent = FlatTreeTraversal::parent(*targetNode); if (!parent) return WebInputEventResult::NotHandled; @@ -1054,7 +1054,7 @@ #endif m_clickCount = mouseEvent.clickCount(); - m_clickNode = mev.innerNode()->isTextNode() ? ComposedTreeTraversal::parent(*mev.innerNode()) : mev.innerNode(); + m_clickNode = mev.innerNode()->isTextNode() ? FlatTreeTraversal::parent(*mev.innerNode()) : mev.innerNode(); m_frame->selection().setCaretBlinkingSuspended(true); @@ -1307,7 +1307,7 @@ if (node.isHTMLElement() && toHTMLElement(node).isInteractiveContent()) return nullptr; - return ComposedTreeTraversal::parent(node); + return FlatTreeTraversal::parent(node); } WebInputEventResult EventHandler::handleMouseReleaseEvent(const PlatformMouseEvent& mouseEvent) @@ -1373,7 +1373,7 @@ #endif WebInputEventResult clickEventResult = WebInputEventResult::NotHandled; - if (m_clickCount > 0 && !contextMenuEvent && mev.innerNode() && m_clickNode && mev.innerNode()->canParticipateInComposedTree() && m_clickNode->canParticipateInComposedTree()) { + if (m_clickCount > 0 && !contextMenuEvent && mev.innerNode() && m_clickNode && mev.innerNode()->canParticipateInFlatTree() && m_clickNode->canParticipateInFlatTree()) { // Updates distribution because a 'mouseup' event listener can make the // tree dirty at dispatchMouseEvent() invocation above. // Unless distribution is updated, commonAncestor would hit ASSERT. @@ -1491,7 +1491,7 @@ // Drag events should never go to text nodes (following IE, and proper mouseover/out dispatch) RefPtrWillBeRawPtr<Node> newTarget = mev.innerNode(); if (newTarget && newTarget->isTextNode()) - newTarget = ComposedTreeTraversal::parent(*newTarget); + newTarget = FlatTreeTraversal::parent(*newTarget); if (AutoscrollController* controller = autoscrollController()) controller->updateDragAndDrop(newTarget.get(), event.position(), event.timestamp()); @@ -1611,7 +1611,7 @@ } else { // If the target node is a text node, dispatch on the parent node - rdar://4196646 if (result && result->isTextNode()) - result = ComposedTreeTraversal::parent(*result); + result = FlatTreeTraversal::parent(*result); } RefPtrWillBeMember<Node> lastNodeUnderMouse = m_nodeUnderMouse; m_nodeUnderMouse = result; @@ -1691,13 +1691,13 @@ WillBeHeapVector<RefPtrWillBeMember<Node>, 32> enteredAncestors; if (isNodeInDocument(exitedNode)) { exitedNode->updateDistribution(); - for (Node* node = exitedNode; node; node = ComposedTreeTraversal::parent(*node)) { + for (Node* node = exitedNode; node; node = FlatTreeTraversal::parent(*node)) { exitedAncestors.append(node); } } if (isNodeInDocument(enteredNode)) { enteredNode->updateDistribution(); - for (Node* node = enteredNode; node; node = ComposedTreeTraversal::parent(*node)) { + for (Node* node = enteredNode; node; node = FlatTreeTraversal::parent(*node)) { enteredAncestors.append(node); } } @@ -1976,7 +1976,7 @@ Node* node = result.innerNode(); // Wheel events should not dispatch to text nodes. if (node && node->isTextNode()) - node = ComposedTreeTraversal::parent(*node); + node = FlatTreeTraversal::parent(*node); if (m_previousWheelScrolledNode) m_previousWheelScrolledNode = nullptr; @@ -2278,7 +2278,7 @@ IntPoint tappedPosition = gestureEvent.position(); if (m_clickNode && m_clickNode->isTextNode()) - m_clickNode = ComposedTreeTraversal::parent(*m_clickNode); + m_clickNode = FlatTreeTraversal::parent(*m_clickNode); PlatformMouseEvent fakeMouseDown(gestureEvent.position(), gestureEvent.globalPosition(), LeftButton, PlatformEvent::MousePressed, gestureEvent.tapCount(), @@ -3979,7 +3979,7 @@ // Touch events should not go to text nodes if (node->isTextNode()) - node = ComposedTreeTraversal::parent(*node); + node = FlatTreeTraversal::parent(*node); if (!m_touchSequenceDocument) { // Keep track of which document should receive all touch events
diff --git a/third_party/WebKit/Source/core/input/TouchActionUtil.cpp b/third_party/WebKit/Source/core/input/TouchActionUtil.cpp index 3b94cb27..f08ccef 100644 --- a/third_party/WebKit/Source/core/input/TouchActionUtil.cpp +++ b/third_party/WebKit/Source/core/input/TouchActionUtil.cpp
@@ -30,7 +30,7 @@ const Node* parentNodeAcrossFrames(const Node* curNode) { - Node* parentNode = ComposedTreeTraversal::parent(*curNode); + Node* parentNode = FlatTreeTraversal::parent(*curNode); if (parentNode) return parentNode;
diff --git a/third_party/WebKit/Source/core/inspector/InspectorOverlayPage.html b/third_party/WebKit/Source/core/inspector/InspectorOverlayPage.html index b6d6fc5..a1cc519c 100644 --- a/third_party/WebKit/Source/core/inspector/InspectorOverlayPage.html +++ b/third_party/WebKit/Source/core/inspector/InspectorOverlayPage.html
@@ -407,6 +407,7 @@ .element-description { flex: 1 1; word-wrap: break-word; + word-break: break-all; } .dimensions { @@ -752,7 +753,7 @@ var boxY = bounds.minY - arrowRadius - titleHeight; var onTop = true; if (boxY < 0) { - boxY = bounds.maxY + arrowRadius; + boxY = Math.min(canvasHeight - titleHeight, bounds.maxY + arrowRadius); onTop = false; } else if (bounds.minY > canvasHeight) { boxY = canvasHeight - arrowRadius - titleHeight;
diff --git a/third_party/WebKit/Source/core/layout/HitTestResult.cpp b/third_party/WebKit/Source/core/layout/HitTestResult.cpp index 7a4c2bc..f568e2ba 100644 --- a/third_party/WebKit/Source/core/layout/HitTestResult.cpp +++ b/third_party/WebKit/Source/core/layout/HitTestResult.cpp
@@ -23,7 +23,7 @@ #include "core/HTMLNames.h" #include "core/dom/PseudoElement.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/FrameSelection.h" #include "core/editing/VisibleUnits.h" @@ -275,7 +275,7 @@ // For <area> tags in image maps, walk the tree for the <area>, not the <img> using it. if (m_innerNode.get()) m_innerNode->updateDistribution(); - for (Node* titleNode = m_innerNode.get(); titleNode; titleNode = ComposedTreeTraversal::parent(*titleNode)) { + for (Node* titleNode = m_innerNode.get(); titleNode; titleNode = FlatTreeTraversal::parent(*titleNode)) { if (titleNode->isElementNode()) { String title = toElement(titleNode)->title(); if (!title.isNull()) { @@ -522,7 +522,7 @@ Element* HitTestResult::innerElement() const { - for (Node* node = m_innerNode.get(); node; node = ComposedTreeTraversal::parent(*node)) { + for (Node* node = m_innerNode.get(); node; node = FlatTreeTraversal::parent(*node)) { if (node->isElementNode()) return toElement(node); }
diff --git a/third_party/WebKit/Source/core/layout/LayoutListItem.cpp b/third_party/WebKit/Source/core/layout/LayoutListItem.cpp index 47711823..f29852ff 100644 --- a/third_party/WebKit/Source/core/layout/LayoutListItem.cpp +++ b/third_party/WebKit/Source/core/layout/LayoutListItem.cpp
@@ -24,7 +24,7 @@ #include "core/layout/LayoutListItem.h" #include "core/HTMLNames.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/html/HTMLOListElement.h" #include "core/layout/LayoutListMarker.h" #include "core/layout/LayoutView.h" @@ -128,7 +128,7 @@ return nullptr; Node* firstNode = nullptr; // We use parentNode because the enclosing list could be a ShadowRoot that's not Element. - for (Node* parent = ComposedTreeTraversal::parent(*listItemNode); parent; parent = ComposedTreeTraversal::parent(*parent)) { + for (Node* parent = FlatTreeTraversal::parent(*listItemNode); parent; parent = FlatTreeTraversal::parent(*parent)) { if (isList(*parent)) return parent; if (!firstNode)
diff --git a/third_party/WebKit/Source/core/layout/LayoutSearchField.cpp b/third_party/WebKit/Source/core/layout/LayoutSearchField.cpp index 764d30c..158a9b2 100644 --- a/third_party/WebKit/Source/core/layout/LayoutSearchField.cpp +++ b/third_party/WebKit/Source/core/layout/LayoutSearchField.cpp
@@ -72,23 +72,4 @@ return lineHeight + nonContentHeight; } -LayoutUnit LayoutSearchField::computeLogicalHeightLimit() const -{ - return logicalHeight(); -} - -void LayoutSearchField::centerContainerIfNeeded(LayoutBox* containerLayoutObject) const -{ - if (!containerLayoutObject) - return; - - if (containerLayoutObject->logicalHeight() <= contentLogicalHeight()) - return; - - // A quirk for find-in-page box on Safari Windows. - // http://webkit.org/b/63157 - LayoutUnit logicalHeightDiff = containerLayoutObject->logicalHeight() - contentLogicalHeight(); - containerLayoutObject->setLogicalTop(containerLayoutObject->logicalTop() - (logicalHeightDiff / 2 + layoutMod(logicalHeightDiff, 2))); -} - } // namespace blink
diff --git a/third_party/WebKit/Source/core/layout/LayoutSearchField.h b/third_party/WebKit/Source/core/layout/LayoutSearchField.h index 0756180..399964a5 100644 --- a/third_party/WebKit/Source/core/layout/LayoutSearchField.h +++ b/third_party/WebKit/Source/core/layout/LayoutSearchField.h
@@ -35,9 +35,7 @@ ~LayoutSearchField() override; private: - void centerContainerIfNeeded(LayoutBox*) const override; LayoutUnit computeControlLogicalHeight(LayoutUnit lineHeight, LayoutUnit nonContentHeight) const override; - LayoutUnit computeLogicalHeightLimit() const override; Element* searchDecorationElement() const; Element* cancelButtonElement() const;
diff --git a/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.cpp b/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.cpp index e5a2db8..ecc439b0 100644 --- a/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.cpp +++ b/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.cpp
@@ -92,29 +92,11 @@ } } -LayoutUnit LayoutTextControlSingleLine::computeLogicalHeightLimit() const -{ - return containerElement() ? contentLogicalHeight() : logicalHeight(); -} - void LayoutTextControlSingleLine::layout() { LayoutAnalyzer::Scope analyzer(*this); SubtreeLayoutScope layoutScope(*this); - // FIXME: This code is madness (https://crbug.com/461117) - // FIXME: We should remove the height-related hacks in layout() and - // styleDidChange(). We need them because - // - Center the inner elements vertically if the input height is taller than - // the intrinsic height of the inner elements. - // - Shrink the inner elment heights if the input height is samller than the - // intrinsic heights of the inner elements. - // The hack was removed for the inner-editor element. We should remove it - // for containerElement() too. - - // We don't honor paddings and borders for type=search if the text height is - // taller than the contentHeight() because of compatibility. - LayoutBox* innerEditorLayoutObject = innerEditorElement()->layoutBox(); bool innerEditorLayoutObjectHadLayout = innerEditorLayoutObject && innerEditorLayoutObject->needsLayout(); @@ -125,22 +107,6 @@ Element* container = containerElement(); LayoutBox* containerLayoutObject = container ? container->layoutBox() : 0; - LayoutUnit logicalHeightLimit = computeLogicalHeightLimit(); - // The container might be taller because of decoration elements. - if (containerLayoutObject) { - containerLayoutObject->layoutIfNeeded(); - LayoutUnit containerLogicalHeight = containerLayoutObject->logicalHeight(); - if (containerLogicalHeight > logicalHeightLimit) { - containerLayoutObject->mutableStyleRef().setLogicalHeight(Length(logicalHeightLimit, Fixed)); - layoutScope.setNeedsLayout(this, LayoutInvalidationReason::TextControlChanged); - } else if (containerLayoutObject->logicalHeight() < contentLogicalHeight()) { - containerLayoutObject->mutableStyleRef().setLogicalHeight(Length(contentLogicalHeight(), Fixed)); - layoutScope.setNeedsLayout(this, LayoutInvalidationReason::TextControlChanged); - } else { - containerLayoutObject->mutableStyleRef().setLogicalHeight(Length(containerLogicalHeight, Fixed)); - } - } - // We ensure that the inner editor layoutObject is laid out at least once. This is // required as the logic below assumes that we don't carry over previous layout values. if (innerEditorLayoutObject && !innerEditorLayoutObjectHadLayout) @@ -154,8 +120,9 @@ if (!container && innerEditorLayoutObject && innerEditorLayoutObject->size().height() != contentLogicalHeight()) { LayoutUnit logicalHeightDiff = innerEditorLayoutObject->logicalHeight() - contentLogicalHeight(); innerEditorLayoutObject->setLogicalTop(innerEditorLayoutObject->logicalTop() - (logicalHeightDiff / 2 + layoutMod(logicalHeightDiff, 2))); - } else { - centerContainerIfNeeded(containerLayoutObject); + } else if (container && containerLayoutObject && containerLayoutObject->size().height() != contentLogicalHeight()) { + LayoutUnit logicalHeightDiff = containerLayoutObject->logicalHeight() - contentLogicalHeight(); + containerLayoutObject->setLogicalTop(containerLayoutObject->logicalTop() - (logicalHeightDiff / 2 + layoutMod(logicalHeightDiff, 2))); } HTMLElement* placeholderElement = inputElement()->placeholderElement(); @@ -219,14 +186,6 @@ void LayoutTextControlSingleLine::styleDidChange(StyleDifference diff, const ComputedStyle* oldStyle) { LayoutTextControl::styleDidChange(diff, oldStyle); - - // We may have set the width and the height in the old style in layout(). - // Reset them now to avoid getting a spurious layout hint. - Element* container = containerElement(); - if (LayoutObject* containerLayoutObject = container ? container->layoutObject() : 0) { - containerLayoutObject->mutableStyleRef().setHeight(Length()); - containerLayoutObject->mutableStyleRef().setWidth(Length()); - } if (HTMLElement* placeholder = inputElement()->placeholderElement()) placeholder->setInlineStyleProperty(CSSPropertyTextOverflow, textShouldBeTruncated() ? CSSValueEllipsis : CSSValueClip); setHasOverflowClip(false);
diff --git a/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.h b/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.h index a6bd518..b0a5e7b 100644 --- a/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.h +++ b/third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.h
@@ -40,8 +40,6 @@ void capsLockStateMayHaveChanged(); protected: - virtual void centerContainerIfNeeded(LayoutBox*) const { } - virtual LayoutUnit computeLogicalHeightLimit() const; Element* containerElement() const; Element* editingViewPortElement() const; HTMLInputElement* inputElement() const;
diff --git a/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp b/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp index 8e54e313..3defaf5d3 100644 --- a/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp +++ b/third_party/WebKit/Source/core/svg/graphics/SVGImage.cpp
@@ -29,7 +29,7 @@ #include "core/animation/AnimationTimeline.h" #include "core/dom/NodeTraversal.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/frame/FrameView.h" #include "core/frame/LocalFrame.h" #include "core/frame/Settings.h" @@ -110,7 +110,7 @@ // Don't allow foreignObject elements or images that are not known to be // single-origin since these can leak cross-origin information. - for (Node* node = rootElement; node; node = ComposedTreeTraversal::next(*node)) { + for (Node* node = rootElement; node; node = FlatTreeTraversal::next(*node)) { if (isSVGForeignObjectElement(*node)) return false; if (isSVGImageElement(*node)) {
diff --git a/third_party/WebKit/Source/core/testing/CoreTestPrinters.cpp b/third_party/WebKit/Source/core/testing/CoreTestPrinters.cpp index 231cbce..60d56fa7 100644 --- a/third_party/WebKit/Source/core/testing/CoreTestPrinters.cpp +++ b/third_party/WebKit/Source/core/testing/CoreTestPrinters.cpp
@@ -86,7 +86,7 @@ return printPosition(ostream, position); } -std::ostream& operator<<(std::ostream& ostream, const PositionInComposedTree& position) +std::ostream& operator<<(std::ostream& ostream, const PositionInFlatTree& position) { return printPosition(ostream, position); }
diff --git a/third_party/WebKit/Source/core/testing/Internals.cpp b/third_party/WebKit/Source/core/testing/Internals.cpp index 0b114421..d60efc7 100644 --- a/third_party/WebKit/Source/core/testing/Internals.cpp +++ b/third_party/WebKit/Source/core/testing/Internals.cpp
@@ -59,8 +59,8 @@ #include "core/dom/StyleEngine.h" #include "core/dom/TreeScope.h" #include "core/dom/ViewportDescription.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" #include "core/dom/shadow/ElementShadow.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/dom/shadow/SelectRuleFeatureSet.h" #include "core/dom/shadow/ShadowRoot.h" #include "core/editing/Editor.h" @@ -592,54 +592,54 @@ return toShadowRoot(root)->childShadowRootCount(); } -Node* Internals::nextSiblingInComposedTree(Node* node, ExceptionState& exceptionState) +Node* Internals::nextSiblingInFlatTree(Node* node, ExceptionState& exceptionState) { ASSERT(node); - if (!node->canParticipateInComposedTree()) { - exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the composed tree."); + if (!node->canParticipateInFlatTree()) { + exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the flat tree."); return 0; } - return ComposedTreeTraversal::nextSibling(*node); + return FlatTreeTraversal::nextSibling(*node); } -Node* Internals::firstChildInComposedTree(Node* node, ExceptionState& exceptionState) +Node* Internals::firstChildInFlatTree(Node* node, ExceptionState& exceptionState) { ASSERT(node); - if (!node->canParticipateInComposedTree()) { - exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the composed tree"); + if (!node->canParticipateInFlatTree()) { + exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the flat tree"); return 0; } - return ComposedTreeTraversal::firstChild(*node); + return FlatTreeTraversal::firstChild(*node); } -Node* Internals::lastChildInComposedTree(Node* node, ExceptionState& exceptionState) +Node* Internals::lastChildInFlatTree(Node* node, ExceptionState& exceptionState) { ASSERT(node); - if (!node->canParticipateInComposedTree()) { - exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the composed tree."); + if (!node->canParticipateInFlatTree()) { + exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the flat tree."); return 0; } - return ComposedTreeTraversal::lastChild(*node); + return FlatTreeTraversal::lastChild(*node); } -Node* Internals::nextInComposedTree(Node* node, ExceptionState& exceptionState) +Node* Internals::nextInFlatTree(Node* node, ExceptionState& exceptionState) { ASSERT(node); - if (!node->canParticipateInComposedTree()) { - exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the composed tree."); + if (!node->canParticipateInFlatTree()) { + exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the flat tree."); return 0; } - return ComposedTreeTraversal::next(*node); + return FlatTreeTraversal::next(*node); } -Node* Internals::previousInComposedTree(Node* node, ExceptionState& exceptionState) +Node* Internals::previousInFlatTree(Node* node, ExceptionState& exceptionState) { ASSERT(node); - if (!node->canParticipateInComposedTree()) { - exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the composed tree."); + if (!node->canParticipateInFlatTree()) { + exceptionState.throwDOMException(InvalidAccessError, "The node argument doesn't particite in the flat tree."); return 0; } - return ComposedTreeTraversal::previous(*node); + return FlatTreeTraversal::previous(*node); } String Internals::elementLayoutTreeAsText(Element* element, ExceptionState& exceptionState)
diff --git a/third_party/WebKit/Source/core/testing/Internals.h b/third_party/WebKit/Source/core/testing/Internals.h index 6d7144f..65de0437a 100644 --- a/third_party/WebKit/Source/core/testing/Internals.h +++ b/third_party/WebKit/Source/core/testing/Internals.h
@@ -131,11 +131,11 @@ bool hasSelectorForAttributeInShadow(Element* host, const AtomicString& attributeName, ExceptionState&); unsigned short compareTreeScopePosition(const Node*, const Node*, ExceptionState&) const; - Node* nextSiblingInComposedTree(Node*, ExceptionState&); - Node* firstChildInComposedTree(Node*, ExceptionState&); - Node* lastChildInComposedTree(Node*, ExceptionState&); - Node* nextInComposedTree(Node*, ExceptionState&); - Node* previousInComposedTree(Node*, ExceptionState&); + Node* nextSiblingInFlatTree(Node*, ExceptionState&); + Node* firstChildInFlatTree(Node*, ExceptionState&); + Node* lastChildInFlatTree(Node*, ExceptionState&); + Node* nextInFlatTree(Node*, ExceptionState&); + Node* previousInFlatTree(Node*, ExceptionState&); unsigned updateStyleAndReturnAffectedElementCount(ExceptionState&) const; unsigned needsLayoutCount(ExceptionState&) const;
diff --git a/third_party/WebKit/Source/core/testing/Internals.idl b/third_party/WebKit/Source/core/testing/Internals.idl index 78ab9d9..65ec824 100644 --- a/third_party/WebKit/Source/core/testing/Internals.idl +++ b/third_party/WebKit/Source/core/testing/Internals.idl
@@ -83,11 +83,11 @@ // animation update for CSS and advance the SMIL timeline by one frame. [RaisesException] void advanceImageAnimation(Element image); - [RaisesException] Node nextSiblingInComposedTree(Node node); - [RaisesException] Node firstChildInComposedTree(Node node); - [RaisesException] Node lastChildInComposedTree(Node node); - [RaisesException] Node nextInComposedTree(Node node); - [RaisesException] Node previousInComposedTree(Node node); + [RaisesException] Node nextSiblingInFlatTree(Node node); + [RaisesException] Node firstChildInFlatTree(Node node); + [RaisesException] Node lastChildInFlatTree(Node node); + [RaisesException] Node nextInFlatTree(Node node); + [RaisesException] Node previousInFlatTree(Node node); DOMString visiblePlaceholder(Element element);
diff --git a/third_party/WebKit/Source/devtools/front_end/devtools.js b/third_party/WebKit/Source/devtools/front_end/devtools.js index 643f939..9cb6bf2 100644 --- a/third_party/WebKit/Source/devtools/front_end/devtools.js +++ b/third_party/WebKit/Source/devtools/front_end/devtools.js
@@ -1010,6 +1010,9 @@ styleElement.type = "text/css"; styleElement.textContent = "html /deep/ * { min-width: 0; min-height: 0; }"; window.document.head.appendChild(styleElement); + + // Support for legacy (<M49) frontends. Remove in M52. + Event.prototype.deepPath = undefined; } function windowLoaded()
diff --git a/third_party/WebKit/Source/devtools/front_end/security/SecurityPanel.js b/third_party/WebKit/Source/devtools/front_end/security/SecurityPanel.js index 33a1673..2bc3e5f5 100644 --- a/third_party/WebKit/Source/devtools/front_end/security/SecurityPanel.js +++ b/third_party/WebKit/Source/devtools/front_end/security/SecurityPanel.js
@@ -793,12 +793,12 @@ var table = new WebInspector.SecurityDetailsTable(); certificateSection.appendChild(table.element()); - table.addRow("Subject", certificateDetails.subject.name); - table.addRow("SAN", sanDiv); - table.addRow("Valid From", validFromString); - table.addRow("Valid Until", validUntilString); - table.addRow("Issuer", certificateDetails.issuer); - table.addRow("SCTs", this.sctSummary(originState.securityDetails.certificateValidationDetails)); + table.addRow(WebInspector.UIString("Subject"), certificateDetails.subject.name); + table.addRow(WebInspector.UIString("SAN"), sanDiv); + table.addRow(WebInspector.UIString("Valid From"), validFromString); + table.addRow(WebInspector.UIString("Valid Until"), validUntilString); + table.addRow(WebInspector.UIString("Issuer"), certificateDetails.issuer); + table.addRow(WebInspector.UIString("SCTs"), this.sctSummary(originState.securityDetails.certificateValidationDetails)); table.addRow("", WebInspector.SecurityPanel.createCertificateViewerButton(WebInspector.UIString("Open full certificate details"), originState.securityDetails.certificateId)); }
diff --git a/third_party/WebKit/Source/devtools/front_end/ui/Tooltip.js b/third_party/WebKit/Source/devtools/front_end/ui/Tooltip.js index 0739889..26e24423 100644 --- a/third_party/WebKit/Source/devtools/front_end/ui/Tooltip.js +++ b/third_party/WebKit/Source/devtools/front_end/ui/Tooltip.js
@@ -33,7 +33,7 @@ */ _mouseMove: function(event) { - var path = event.deepPath ? event.deepPath : event.path; + var path = event.path; if (!path || event.buttons !== 0) return;
diff --git a/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp b/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp index e8a60d84..a2df0b7d 100644 --- a/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp +++ b/third_party/WebKit/Source/modules/accessibility/AXNodeObject.cpp
@@ -32,7 +32,7 @@ #include "core/dom/Element.h" #include "core/dom/NodeTraversal.h" #include "core/dom/Text.h" -#include "core/dom/shadow/ComposedTreeTraversal.h" +#include "core/dom/shadow/FlatTreeTraversal.h" #include "core/html/HTMLDListElement.h" #include "core/html/HTMLFieldSetElement.h" #include "core/html/HTMLFrameElementBase.h" @@ -332,7 +332,7 @@ return DetailsRole; if (isHTMLSummaryElement(*node())) { - ContainerNode* parent = ComposedTreeTraversal::parent(*node()); + ContainerNode* parent = FlatTreeTraversal::parent(*node()); if (parent && isHTMLDetailsElement(parent)) return DisclosureTriangleRole; return UnknownRole;
diff --git a/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp b/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp index 2dbab3b..68bffa34 100644 --- a/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp +++ b/third_party/WebKit/Source/modules/mediastream/MediaStreamTrack.cpp
@@ -212,7 +212,19 @@ bool MediaStreamTrack::hasPendingActivity() const { - return !m_stopped && hasEventListeners(); + // If 'ended' listeners exist and the object hasn't yet reached + // that state, keep the object alive. + // + // An otherwise unreachable MediaStreamTrack object in an non-ended + // state will otherwise indirectly be transitioned to the 'ended' state + // while finalizing m_component. Which dispatches an 'ended' event, + // referring to this object as the target. If this object is then GCed + // at the same time, v8 objects will retain (wrapper) references to + // this dead MediaStreamTrack object. Bad. + // + // Hence insisting on keeping this object alive until the 'ended' + // state has been reached & handled. + return !ended() && hasEventListeners(EventTypeNames::ended); } PassOwnPtr<AudioSourceProvider> MediaStreamTrack::createWebAudioSource()
diff --git a/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in b/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in index ff8c314..b23b29f 100644 --- a/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in +++ b/third_party/WebKit/Source/platform/RuntimeEnabledFeatures.in
@@ -162,7 +162,7 @@ // Implements documentElement.scrollTop/Left and bodyElement.scrollTop/Left // as per the spec, matching other Web engines. ScrollTopLeftInterop status=experimental -SelectionForComposedTree status=stable +SelectionForFlatTree status=stable ServiceWorkerClientAttributes status=stable ServiceWorkerExtendableMessageEvent status=experimental ServiceWorkerPerformanceTimeline status=stable
diff --git a/third_party/WebKit/Source/platform/heap/PersistentNode.h b/third_party/WebKit/Source/platform/heap/PersistentNode.h index 5fb806f8..62d176d 100644 --- a/third_party/WebKit/Source/platform/heap/PersistentNode.h +++ b/third_party/WebKit/Source/platform/heap/PersistentNode.h
@@ -26,6 +26,7 @@ ASSERT(isUnused()); } +#if ENABLE(ASSERT) ~PersistentNode() { // If you hit this assert, it means that the thread finished @@ -34,8 +35,9 @@ // main thread finishes without clearing all persistent handles. ASSERT(isMainThread() || isUnused()); } +#endif - // It is dangrous to copy the PersistentNode because it breaks the + // It is dangerous to copy the PersistentNode because it breaks the // free list. PersistentNode& operator=(const PersistentNode& otherref) = delete;
diff --git a/third_party/WebKit/Source/web/TextFinder.cpp b/third_party/WebKit/Source/web/TextFinder.cpp index 08f7445..c87f34bd 100644 --- a/third_party/WebKit/Source/web/TextFinder.cpp +++ b/third_party/WebKit/Source/web/TextFinder.cpp
@@ -399,8 +399,8 @@ void TextFinder::scopeStringMatches(int identifier, const WebString& searchText, const WebFindOptions& options, bool reset) { - if (RuntimeEnabledFeatures::selectionForComposedTreeEnabled()) - return scopeStringMatchesAlgorithm<EditingInComposedTreeStrategy>(identifier, searchText, options, reset); + if (RuntimeEnabledFeatures::selectionForFlatTreeEnabled()) + return scopeStringMatchesAlgorithm<EditingInFlatTreeStrategy>(identifier, searchText, options, reset); scopeStringMatchesAlgorithm<EditingStrategy>(identifier, searchText, options, reset); }
diff --git a/third_party/WebKit/Source/web/TextFinder.h b/third_party/WebKit/Source/web/TextFinder.h index 1f48460..e639c9716 100644 --- a/third_party/WebKit/Source/web/TextFinder.h +++ b/third_party/WebKit/Source/web/TextFinder.h
@@ -132,7 +132,7 @@ int nearestFindMatch(const FloatPoint&, float& distanceSquared); // TODO(yosin) Templataization of |scopeStringMatchesAlgorithm| will be - // gone once |RuntimeEnabledFeatures::selectionForComposedTreeEnabled| is + // gone once |RuntimeEnabledFeatures::selectionForFlatTreeEnabled| is // removed. template <typename Strategy> void scopeStringMatchesAlgorithm(
diff --git a/third_party/WebKit/Source/web/WebAXObject.cpp b/third_party/WebKit/Source/web/WebAXObject.cpp index 3d73721c..9d8e9c6 100644 --- a/third_party/WebKit/Source/web/WebAXObject.cpp +++ b/third_party/WebKit/Source/web/WebAXObject.cpp
@@ -932,7 +932,7 @@ element = toElement(node); } else { node->updateDistribution(); - ContainerNode* parent = ComposedTreeTraversal::parent(*node); + ContainerNode* parent = FlatTreeTraversal::parent(*node); ASSERT_WITH_SECURITY_IMPLICATION(parent->isElementNode()); element = toElement(parent); }
diff --git a/third_party/WebKit/Source/web/WebViewImpl.cpp b/third_party/WebKit/Source/web/WebViewImpl.cpp index dec2d18..62c8d38 100644 --- a/third_party/WebKit/Source/web/WebViewImpl.cpp +++ b/third_party/WebKit/Source/web/WebViewImpl.cpp
@@ -1186,7 +1186,7 @@ return WebRect(); // Find the block type node based on the hit node. - // FIXME: This wants to walk composed tree with LayoutTreeBuilderTraversal::parent(). + // FIXME: This wants to walk flat tree with LayoutTreeBuilderTraversal::parent(). while (node && (!node->layoutObject() || node->layoutObject()->isInline())) node = LayoutTreeBuilderTraversal::parent(*node);
diff --git a/third_party/WebKit/Source/web/tests/TextFinderTest.cpp b/third_party/WebKit/Source/web/tests/TextFinderTest.cpp index dc79c9f7..a3ec1cc 100644 --- a/third_party/WebKit/Source/web/tests/TextFinderTest.cpp +++ b/third_party/WebKit/Source/web/tests/TextFinderTest.cpp
@@ -198,7 +198,7 @@ bool wrapWithinFrame = true; WebRect* selectionRect = nullptr; - // TextIterator currently returns the matches in the composed treeorder, so + // TextIterator currently returns the matches in the flat treeorder, so // in this case the matches will be returned in the order of // <i> -> <u> -> <b>. ASSERT_TRUE(textFinder().find(identifier, searchText, findOptions, wrapWithinFrame, selectionRect)); @@ -315,7 +315,7 @@ while (textFinder().scopingInProgress()) runPendingTasks(); - // TextIterator currently returns the matches in the composed tree order, + // TextIterator currently returns the matches in the flat tree order, // so in this case the matches will be returned in the order of // <i> -> <u> -> <b>. EXPECT_EQ(3, textFinder().totalMatchCount());
diff --git a/third_party/WebKit/public/platform/Platform.h b/third_party/WebKit/public/platform/Platform.h index fd54a75b..17b96ef 100644 --- a/third_party/WebKit/public/platform/Platform.h +++ b/third_party/WebKit/public/platform/Platform.h
@@ -259,22 +259,9 @@ return WebString(); } - // Memory -------------------------------------------------------------- - - // Returns the current space allocated for the pagefile, in MB. - // That is committed size for Windows and virtual memory size for POSIX - virtual size_t memoryUsageMB() { return 0; } - // Same as above, but always returns actual value, without any caches. virtual size_t actualMemoryUsageMB() { return 0; } - // Return the physical memory of the current machine, in MB. - virtual size_t physicalMemoryMB() { return 0; } - - // Return the available virtual memory of the current machine, in MB. Or - // zero, if there is no limit. - virtual size_t virtualMemoryLimitMB() { return 0; } - // Return the number of of processors of the current machine. virtual size_t numberOfProcessors() { return 0; }
diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 36a873f..f03c9ef 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml
@@ -76986,7 +76986,6 @@ <int value="6" label="NETWORK_ERROR"/> <int value="7" label="HTTP_ERROR"/> <int value="8" label="BACKOFF_ERROR"/> - <int value="9" label="MIN_WAIT_DURATION_ERROR"/> </enum> <enum name="SB2InterstitialAction" type="int">
diff --git a/ui/views/window/dialog_delegate_unittest.cc b/ui/views/window/dialog_delegate_unittest.cc index 6050da1..c41d58b 100644 --- a/ui/views/window/dialog_delegate_unittest.cc +++ b/ui/views/window/dialog_delegate_unittest.cc
@@ -18,6 +18,10 @@ #include "ui/views/window/dialog_client_view.h" #include "ui/views/window/dialog_delegate.h" +#if defined(OS_MACOSX) +#include "ui/base/test/scoped_fake_nswindow_focus.h" +#endif + namespace views { namespace { @@ -119,6 +123,12 @@ private: TestDialog* dialog_; +#if defined(OS_MACOSX) + // Causes Widget::Show() to transfer focus synchronously and become immune to + // losing focus to processes running in parallel. + ui::test::ScopedFakeNSWindowFocus fake_focus; +#endif + DISALLOW_COPY_AND_ASSIGN(DialogTest); };