Index: third_party/WebKit/Source/core/editing/FrameSelection.h |
diff --git a/third_party/WebKit/Source/core/editing/FrameSelection.h b/third_party/WebKit/Source/core/editing/FrameSelection.h |
index 4b609af678dfd4e2a3ec142aa91b85a698d9bfc8..b7045a2ca36023eb5779b6f16c8c2657980b4ddd 100644 |
--- a/third_party/WebKit/Source/core/editing/FrameSelection.h |
+++ b/third_party/WebKit/Source/core/editing/FrameSelection.h |
@@ -65,6 +65,8 @@ enum class SelectionDirectionalMode { NonDirectional, Directional }; |
enum class CaretVisibility; |
+enum class HandleVisibility { NotVisible, Visible }; |
+ |
class CORE_EXPORT FrameSelection final |
: public GarbageCollectedFinalized<FrameSelection> { |
WTF_MAKE_NONCOPYABLE(FrameSelection); |
@@ -84,6 +86,7 @@ class CORE_EXPORT FrameSelection final |
DoNotUpdateAppearance = 1 << 4, |
DoNotClearStrategy = 1 << 5, |
DoNotAdjustInFlatTree = 1 << 6, |
+ HandleVisible = 1 << 7, |
}; |
// Union of values in SetSelectionOption and EUserTriggered |
typedef unsigned SetSelectionOptions; |
@@ -235,6 +238,11 @@ class CORE_EXPORT FrameSelection final |
void pageActivationChanged(); |
void setUseSecureKeyboardEntryWhenActive(bool); |
+ |
+ bool isHandleVisible() const { |
+ return m_handleVisibility == HandleVisibility::Visible; |
+ } |
+ |
void updateSecureKeyboardEntryIfActive(); |
// Returns true if a word is selected. |
@@ -335,6 +343,8 @@ class CORE_EXPORT FrameSelection final |
bool m_focused : 1; |
+ HandleVisibility m_handleVisibility = HandleVisibility::NotVisible; |
+ |
// Controls text granularity used to adjust the selection's extent in |
// moveRangeSelectionExtent. |
std::unique_ptr<GranularityStrategy> m_granularityStrategy; |