aboutsummaryrefslogtreecommitdiffstats
path: root/content_scripts/mode_visual_edit.coffee
diff options
context:
space:
mode:
authorStephen Blott2015-01-26 11:30:21 +0000
committerStephen Blott2015-01-26 11:32:18 +0000
commitd57b08232513b285360b220dbb4de91bc6b61765 (patch)
tree7cd5ee0f8dd50de6811fa7321b573ab6dc0327c7 /content_scripts/mode_visual_edit.coffee
parentf644d622ffd7b8ce332d4c2470cd52772abadb2a (diff)
downloadvimium-d57b08232513b285360b220dbb4de91bc6b61765.tar.bz2
Visual/edit modes: fix problem resuming insert mode.
Diffstat (limited to 'content_scripts/mode_visual_edit.coffee')
-rw-r--r--content_scripts/mode_visual_edit.coffee11
1 files changed, 7 insertions, 4 deletions
diff --git a/content_scripts/mode_visual_edit.coffee b/content_scripts/mode_visual_edit.coffee
index 1271a7fe..ff9114e9 100644
--- a/content_scripts/mode_visual_edit.coffee
+++ b/content_scripts/mode_visual_edit.coffee
@@ -456,12 +456,14 @@ class EditMode extends Movement
@launchSubMode VisualMode, extend defaults, options
enterInsertMode: () ->
- @launchSubMode InsertMode, badge: "I", blurOnEscape: false
+ @launchSubMode InsertMode,
+ exitOnEscape: true
+ targetElement: @options.targetElement
launchSubMode: (mode, options = {}) ->
@lastSubMode =
mode: mode
- instance: new mode extend options, editModeParent: @
+ instance: Mode.cloneMode mode, extend options, editModeParent: @
pasteClipboard: (direction) ->
@paste (text) =>
@@ -521,8 +523,9 @@ class SuspendedEditMode extends Mode
@alwaysContinueBubbling =>
if event?.target == editModeOptions.singleton
console.log "#{@id}: reactivating edit mode" if @debug
- editMode = new EditMode editModeOptions
- editMode.launchSubMode lastSubMode.mode, lastSubMode.instance.options if lastSubMode
+ editMode = Mode.cloneMode EditMode, editModeOptions
+ if lastSubMode
+ editMode.launchSubMode lastSubMode.mode, lastSubMode.instance.options
keypress: (event) =>
@alwaysContinueBubbling =>
@exit() unless event.metaKey or event.ctrlKey or event.altKey