| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/editing/CaretDisplayItemClient.h" | 5 #include "core/editing/CaretDisplayItemClient.h" |
| 6 | 6 |
| 7 #include "core/HTMLNames.h" | 7 #include "core/HTMLNames.h" |
| 8 #include "core/editing/FrameSelection.h" | 8 #include "core/editing/FrameSelection.h" |
| 9 #include "core/frame/FrameView.h" | 9 #include "core/frame/FrameView.h" |
| 10 #include "core/layout/LayoutTestHelper.h" | 10 #include "core/layout/LayoutTestHelper.h" |
| (...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 305 | 305 |
| 306 Text* text = AppendTextNode("Hello, World!"); | 306 Text* text = AppendTextNode("Hello, World!"); |
| 307 GetDocument().body()->focus(); | 307 GetDocument().body()->focus(); |
| 308 UpdateAllLifecyclePhases(); | 308 UpdateAllLifecyclePhases(); |
| 309 const auto* block = ToLayoutBlock(GetDocument().body()->GetLayoutObject()); | 309 const auto* block = ToLayoutBlock(GetDocument().body()->GetLayoutObject()); |
| 310 | 310 |
| 311 LayoutRect caret_visual_rect = GetCaretDisplayItemClient().VisualRect(); | 311 LayoutRect caret_visual_rect = GetCaretDisplayItemClient().VisualRect(); |
| 312 EXPECT_EQ(1, caret_visual_rect.Width()); | 312 EXPECT_EQ(1, caret_visual_rect.Width()); |
| 313 EXPECT_EQ(block->Location(), caret_visual_rect.Location()); | 313 EXPECT_EQ(block->Location(), caret_visual_rect.Location()); |
| 314 | 314 |
| 315 GetDocument().View()->SetTracksPaintInvalidations(true); |
| 315 // Simulate that the blinking cursor becomes invisible. | 316 // Simulate that the blinking cursor becomes invisible. |
| 316 Selection().SetCaretVisible(false); | 317 Selection().SetCaretVisible(false); |
| 317 // Move the caret to the end of the text. | 318 // Move the caret to the end of the text. |
| 318 GetDocument().View()->SetTracksPaintInvalidations(true); | |
| 319 Selection().SetSelection( | 319 Selection().SetSelection( |
| 320 SelectionInDOMTree::Builder().Collapse(Position(text, 5)).Build()); | 320 SelectionInDOMTree::Builder().Collapse(Position(text, 5)).Build()); |
| 321 // Simulate that the cursor blinking is restarted. | 321 // Simulate that the cursor blinking is restarted. |
| 322 Selection().SetCaretVisible(true); | 322 Selection().SetCaretVisible(true); |
| 323 UpdateAllLifecyclePhases(); | 323 UpdateAllLifecyclePhases(); |
| 324 | 324 |
| 325 LayoutRect new_caret_visual_rect = GetCaretDisplayItemClient().VisualRect(); | 325 LayoutRect new_caret_visual_rect = GetCaretDisplayItemClient().VisualRect(); |
| 326 EXPECT_EQ(caret_visual_rect.Size(), new_caret_visual_rect.Size()); | 326 EXPECT_EQ(caret_visual_rect.Size(), new_caret_visual_rect.Size()); |
| 327 EXPECT_EQ(caret_visual_rect.Y(), new_caret_visual_rect.Y()); | 327 EXPECT_EQ(caret_visual_rect.Y(), new_caret_visual_rect.Y()); |
| 328 EXPECT_LT(caret_visual_rect.X(), new_caret_visual_rect.X()); | 328 EXPECT_LT(caret_visual_rect.X(), new_caret_visual_rect.X()); |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 378 EXPECT_EQ(LayoutRect(50, 50, 1, 1), GetCaretDisplayItemClient().VisualRect()); | 378 EXPECT_EQ(LayoutRect(50, 50, 1, 1), GetCaretDisplayItemClient().VisualRect()); |
| 379 | 379 |
| 380 // Uncomposite container. | 380 // Uncomposite container. |
| 381 container->setAttribute(HTMLNames::styleAttr, ""); | 381 container->setAttribute(HTMLNames::styleAttr, ""); |
| 382 UpdateAllLifecyclePhases(); | 382 UpdateAllLifecyclePhases(); |
| 383 EXPECT_EQ(LayoutRect(116, 105, 1, 1), | 383 EXPECT_EQ(LayoutRect(116, 105, 1, 1), |
| 384 GetCaretDisplayItemClient().VisualRect()); | 384 GetCaretDisplayItemClient().VisualRect()); |
| 385 } | 385 } |
| 386 | 386 |
| 387 } // namespace blink | 387 } // namespace blink |
| OLD | NEW |