| 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 24a903f0b6793212aaf9c072c1818ff0010f94b0..c164b64911cac8d5071dba3fb655b95bfcaef027 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; | 
| @@ -151,6 +154,7 @@ class CORE_EXPORT FrameSelection final | 
| // the frame you entirely selected. | 
| void selectFrameElementInParentIfFullySelected(); | 
|  | 
| +  bool contains(const HitTestResult&); | 
| bool contains(const LayoutPoint&); | 
|  | 
| SelectionType getSelectionType() const { | 
| @@ -235,6 +239,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 +344,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; | 
|  |