OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2009, 2010, 2011 Apple Inc. All rights reserved. |
3 * Copyright (C) 2015 Google Inc. All rights reserved. | 3 * Copyright (C) 2015 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 void updateSelectionForMouseDrag(Node*, const LayoutPoint&, const IntPoint&)
; | 58 void updateSelectionForMouseDrag(Node*, const LayoutPoint&, const IntPoint&)
; |
59 void updateSelectionForMouseDrag(const HitTestResult&, Node*, const LayoutPo
int&, const IntPoint&); | 59 void updateSelectionForMouseDrag(const HitTestResult&, Node*, const LayoutPo
int&, const IntPoint&); |
60 void sendContextMenuEvent(const MouseEventWithHitTestResults&, const LayoutP
oint&); | 60 void sendContextMenuEvent(const MouseEventWithHitTestResults&, const LayoutP
oint&); |
61 void passMousePressEventToSubframe(const MouseEventWithHitTestResults&); | 61 void passMousePressEventToSubframe(const MouseEventWithHitTestResults&); |
62 | 62 |
63 void initializeSelectionState(); | 63 void initializeSelectionState(); |
64 void setMouseDownMayStartSelect(bool); | 64 void setMouseDownMayStartSelect(bool); |
65 bool mouseDownMayStartSelect() const; | 65 bool mouseDownMayStartSelect() const; |
66 bool mouseDownWasSingleClickInSelection() const; | 66 bool mouseDownWasSingleClickInSelection() const; |
67 void notifySelectionChanged(); | 67 void notifySelectionChanged(); |
| 68 bool hasExtendedSelection() const { return m_selectionState == SelectionStat
e::ExtendedSelection; } |
68 | 69 |
69 private: | 70 private: |
70 explicit SelectionController(LocalFrame&); | 71 explicit SelectionController(LocalFrame&); |
71 | 72 |
72 enum class AppendTrailingWhitespace { ShouldAppend, DontAppend }; | 73 enum class AppendTrailingWhitespace { ShouldAppend, DontAppend }; |
73 | 74 |
74 void selectClosestWordFromHitTestResult(const HitTestResult&, AppendTrailing
Whitespace); | 75 void selectClosestWordFromHitTestResult(const HitTestResult&, AppendTrailing
Whitespace); |
75 void selectClosestMisspellingFromHitTestResult(const HitTestResult&, AppendT
railingWhitespace); | 76 void selectClosestMisspellingFromHitTestResult(const HitTestResult&, AppendT
railingWhitespace); |
76 void selectClosestWordFromMouseEvent(const MouseEventWithHitTestResults&); | 77 void selectClosestWordFromMouseEvent(const MouseEventWithHitTestResults&); |
77 void selectClosestMisspellingFromMouseEvent(const MouseEventWithHitTestResul
ts&); | 78 void selectClosestMisspellingFromMouseEvent(const MouseEventWithHitTestResul
ts&); |
78 void selectClosestWordOrLinkFromMouseEvent(const MouseEventWithHitTestResult
s&); | 79 void selectClosestWordOrLinkFromMouseEvent(const MouseEventWithHitTestResult
s&); |
79 bool updateSelectionForMouseDownDispatchingSelectStart(Node*, const VisibleS
electionInFlatTree&, TextGranularity); | 80 bool updateSelectionForMouseDownDispatchingSelectStart(Node*, const VisibleS
electionInFlatTree&, TextGranularity); |
80 | 81 |
81 FrameSelection& selection() const; | 82 FrameSelection& selection() const; |
82 | 83 |
83 RawPtrWillBeMember<LocalFrame> const m_frame; | 84 RawPtrWillBeMember<LocalFrame> const m_frame; |
84 bool m_mouseDownMayStartSelect; | 85 bool m_mouseDownMayStartSelect; |
85 bool m_mouseDownWasSingleClickInSelection; | 86 bool m_mouseDownWasSingleClickInSelection; |
86 bool m_mouseDownAllowsMultiClick; | 87 bool m_mouseDownAllowsMultiClick; |
87 enum class SelectionState { HaveNotStartedSelection, PlacedCaret, ExtendedSe
lection }; | 88 enum class SelectionState { HaveNotStartedSelection, PlacedCaret, ExtendedSe
lection }; |
88 SelectionState m_selectionState; | 89 SelectionState m_selectionState; |
89 }; | 90 }; |
90 | 91 |
| 92 bool isLinkSelection(const MouseEventWithHitTestResults&); |
| 93 |
91 } // namespace blink | 94 } // namespace blink |
92 | 95 |
93 #endif // SelectionController_h | 96 #endif // SelectionController_h |
OLD | NEW |