diff options
| author | Stephen Blott | 2015-01-03 05:58:09 +0000 |
|---|---|---|
| committer | Stephen Blott | 2015-01-03 06:56:08 +0000 |
| commit | 103fcde7c51fe83bc9c58fc28c3c11ce6a791f0f (patch) | |
| tree | 582ffa2023f6b909f63681c48173deb456c50910 /content_scripts/mode_insert.coffee | |
| parent | a71da0e9aff6a4f89724f5a15a022790e23d5049 (diff) | |
| download | vimium-103fcde7c51fe83bc9c58fc28c3c11ce6a791f0f.tar.bz2 | |
Modes; more renaming and refactoring.
Diffstat (limited to 'content_scripts/mode_insert.coffee')
| -rw-r--r-- | content_scripts/mode_insert.coffee | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/content_scripts/mode_insert.coffee b/content_scripts/mode_insert.coffee index 34fad926..64aaa445 100644 --- a/content_scripts/mode_insert.coffee +++ b/content_scripts/mode_insert.coffee @@ -67,16 +67,25 @@ class InsertMode extends Mode @handlers.push handlerStack.push focus: (event) => - handlerStack.alwaysPropagate => + handlerStack.alwaysContinueBubbling => if not @isInsertMode and @isFocusable event.target @activate event.target blur: (event) => - handlerStack.alwaysPropagate => + handlerStack.alwaysContinueBubbling => if @isInsertMode and event.target == @insertModeLock @deactivate() # We may already have been dropped into insert mode. So check. Mode.updateBadge() +# Utility mode. +# Activate this mode to prevent a focused, editable element from triggering insert mode. +class FocusMustNotTriggerInsertMode extends Mode + constructor: -> + super() + @handlers.push handlerStack.push + focus: => @suppressEvent + root = exports ? window root.InsertMode = InsertMode +root.FocusMustNotTriggerInsertMode = FocusMustNotTriggerInsertMode |
