Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(443)

Unified Diff: third_party/WebKit/Source/core/editing/CaretBase.h

Issue 2293293003: Make CaretBase a DisplayItemClient. (Closed)
Patch Set: Fix unit test and disable failing test on SPv2. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/editing/CaretBase.h
diff --git a/third_party/WebKit/Source/core/editing/CaretBase.h b/third_party/WebKit/Source/core/editing/CaretBase.h
index ea53653aa3ae662ddfe13a1dbf129dae0974efdc..b17474874624d0357ec288abf7e01c2ce6a0a621 100644
--- a/third_party/WebKit/Source/core/editing/CaretBase.h
+++ b/third_party/WebKit/Source/core/editing/CaretBase.h
@@ -44,7 +44,7 @@ class LayoutViewItem;
enum class CaretVisibility { Visible, Hidden };
-class CORE_EXPORT CaretBase : public GarbageCollectedFinalized<CaretBase> {
+class CORE_EXPORT CaretBase : public GarbageCollectedFinalized<CaretBase>, public DisplayItemClient {
WTF_MAKE_NONCOPYABLE(CaretBase);
public:
explicit CaretBase(CaretVisibility = CaretVisibility::Hidden);
@@ -69,15 +69,18 @@ public:
CaretVisibility getCaretVisibility() const { return m_caretVisibility; }
static LayoutBlock* caretLayoutObject(Node*);
- static void invalidateLocalCaretRect(Node*, const LayoutRect&);
+ void invalidateLocalCaretRect(Node*, const LayoutRect&);
+
+ // DisplayItemClient methods.
+ LayoutRect visualRect() const override;
+ String debugName() const final;
DECLARE_VIRTUAL_TRACE();
private:
- static DisplayItemClient* displayItemClientForCaret(Node*);
-
LayoutRect m_caretLocalRect; // caret rect in coords local to the layoutObject responsible for painting the caret
CaretVisibility m_caretVisibility;
+ LayoutRect m_visualRect;
};
} // namespace blink

Powered by Google App Engine
This is Rietveld 408576698