| Index: third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp b/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp
|
| index 96c14d16f740e3fa91102d8348a283d458a097dd..a872ff25fa98aa2c209ea2f1f610dfbb617a2b32 100644
|
| --- a/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp
|
| +++ b/third_party/WebKit/Source/core/editing/FrameSelectionTest.cpp
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "core/editing/FrameSelection.h"
|
|
|
| +#include <memory>
|
| #include "bindings/core/v8/ExceptionState.h"
|
| #include "core/dom/Document.h"
|
| #include "core/dom/Element.h"
|
| @@ -14,6 +15,7 @@
|
| #include "core/frame/FrameView.h"
|
| #include "core/html/HTMLBodyElement.h"
|
| #include "core/input/EventHandler.h"
|
| +#include "core/layout/LayoutBlock.h"
|
| #include "core/paint/PaintInfo.h"
|
| #include "core/paint/PaintLayer.h"
|
| #include "core/testing/DummyPageHolder.h"
|
| @@ -23,7 +25,6 @@
|
| #include "wtf/PassRefPtr.h"
|
| #include "wtf/RefPtr.h"
|
| #include "wtf/StdLibExtras.h"
|
| -#include <memory>
|
|
|
| namespace blink {
|
|
|
| @@ -41,17 +42,6 @@ class FrameSelectionTest : public EditingTestBase {
|
| return dummyPageHolder().frameView().layoutCount();
|
| }
|
|
|
| - bool isCaretBoundsDirty() const {
|
| - return selection().m_frameCaret->m_caretRectDirty;
|
| - }
|
| -
|
| - bool shouldPaintCaretForTesting() const {
|
| - return selection().shouldPaintCaretForTesting();
|
| - }
|
| - bool isPreviousCaretDirtyForTesting() const {
|
| - return selection().isPreviousCaretDirtyForTesting();
|
| - }
|
| -
|
| PositionWithAffinity caretPosition() const {
|
| return selection().m_frameCaret->caretPosition();
|
| }
|
| @@ -76,25 +66,6 @@ TEST_F(FrameSelectionTest, SetValidSelection) {
|
| EXPECT_FALSE(selection().isNone());
|
| }
|
|
|
| -TEST_F(FrameSelectionTest, InvalidateCaretRect) {
|
| - Text* text = appendTextNode("Hello, World!");
|
| - document().view()->updateAllLifecyclePhases();
|
| -
|
| - selection().setSelection(
|
| - SelectionInDOMTree::Builder().collapse(Position(text, 0)).build());
|
| - selection().setCaretRectNeedsUpdate();
|
| - EXPECT_TRUE(isCaretBoundsDirty());
|
| - selection().invalidateCaretRect();
|
| - EXPECT_FALSE(isCaretBoundsDirty());
|
| -
|
| - document().body()->removeChild(text);
|
| - document().updateStyleAndLayoutIgnorePendingStylesheets();
|
| - selection().setCaretRectNeedsUpdate();
|
| - EXPECT_TRUE(isCaretBoundsDirty());
|
| - selection().invalidateCaretRect();
|
| - EXPECT_FALSE(isCaretBoundsDirty());
|
| -}
|
| -
|
| TEST_F(FrameSelectionTest, PaintCaretShouldNotLayout) {
|
| Text* text = appendTextNode("Hello, World!");
|
| document().view()->updateAllLifecyclePhases();
|
| @@ -106,8 +77,10 @@ TEST_F(FrameSelectionTest, PaintCaretShouldNotLayout) {
|
| selection().setCaretVisible(true);
|
| selection().setSelection(
|
| SelectionInDOMTree::Builder().collapse(Position(text, 0)).build());
|
| + document().view()->updateAllLifecyclePhases();
|
| EXPECT_TRUE(selection().isCaret());
|
| - EXPECT_TRUE(shouldPaintCaretForTesting());
|
| + EXPECT_TRUE(toLayoutBlock(document().body()->layoutObject())
|
| + ->shouldPaintCursorCaret());
|
|
|
| int startCount = layoutCount();
|
| {
|
| @@ -127,58 +100,6 @@ TEST_F(FrameSelectionTest, PaintCaretShouldNotLayout) {
|
| EXPECT_EQ(startCount, layoutCount());
|
| }
|
|
|
| -TEST_F(FrameSelectionTest, InvalidatePreviousCaretAfterRemovingLastCharacter) {
|
| - Text* text = appendTextNode("Hello, World!");
|
| - document().view()->updateAllLifecyclePhases();
|
| -
|
| - document().body()->setContentEditable("true", ASSERT_NO_EXCEPTION);
|
| - document().body()->focus();
|
| - EXPECT_TRUE(document().body()->isFocused());
|
| -
|
| - selection().setCaretVisible(true);
|
| - EXPECT_TRUE(selection().isCaret());
|
| - EXPECT_TRUE(shouldPaintCaretForTesting());
|
| -
|
| - // Simulate to type "Hello, World!".
|
| - DisableCompositingQueryAsserts disabler;
|
| - document().updateStyleAndLayout();
|
| - selection().setSelection(
|
| - SelectionInDOMTree::Builder().collapse(selection().end()).build());
|
| - selection().setCaretRectNeedsUpdate();
|
| - EXPECT_TRUE(isCaretBoundsDirty());
|
| - EXPECT_FALSE(isPreviousCaretDirtyForTesting());
|
| - selection().invalidateCaretRect();
|
| - EXPECT_FALSE(isCaretBoundsDirty());
|
| - EXPECT_TRUE(isPreviousCaretDirtyForTesting());
|
| -
|
| - // Simulate to remove all except for "H".
|
| - text->replaceWholeText("H");
|
| - document().updateStyleAndLayout();
|
| - selection().setSelection(
|
| - SelectionInDOMTree::Builder().collapse(selection().end()).build());
|
| - selection().setCaretRectNeedsUpdate();
|
| - EXPECT_TRUE(isCaretBoundsDirty());
|
| - // "H" remains so early previousCaret invalidation isn't needed.
|
| - EXPECT_TRUE(isPreviousCaretDirtyForTesting());
|
| - selection().invalidateCaretRect();
|
| - EXPECT_FALSE(isCaretBoundsDirty());
|
| - EXPECT_TRUE(isPreviousCaretDirtyForTesting());
|
| -
|
| - // Simulate to remove the last character.
|
| - document().body()->removeChild(text);
|
| - // This line is the objective of this test.
|
| - // As removing the last character, early previousCaret invalidation is
|
| - // executed.
|
| - EXPECT_FALSE(isPreviousCaretDirtyForTesting());
|
| - document().updateStyleAndLayoutIgnorePendingStylesheets();
|
| - selection().setCaretRectNeedsUpdate();
|
| - EXPECT_TRUE(isCaretBoundsDirty());
|
| - EXPECT_FALSE(isPreviousCaretDirtyForTesting());
|
| - selection().invalidateCaretRect();
|
| - EXPECT_FALSE(isCaretBoundsDirty());
|
| - EXPECT_TRUE(isPreviousCaretDirtyForTesting());
|
| -}
|
| -
|
| #define EXPECT_EQ_SELECTED_TEXT(text) \
|
| EXPECT_EQ(text, WebString(selection().selectedText()).utf8())
|
|
|
|
|