aboutsummaryrefslogtreecommitdiffstats
path: root/content_scripts/mode_find.coffee
AgeCommit message (Collapse)Author
2016-10-01Fix find-mode hangs.Stephen Blott
"/" followed immediately by "i" can hang Vimium. The problem is that launching find mode is asynchronous (we wait until the HUD is available). Because normal mode is still active, we can enter insert mode *before* the find-mode HUD receives the focus. The result is that we end up in both find mode and insert mode, the HUD has the focus, but the HUD is in insert mode, so it ignores keyboard events (including `Escape`). The only way out is to click the page's body and then type `Escape`. This commit demonstrates the problem: 7d2b00411eae3293fa4c7b1f61b384c0c495b5a2. This happens in practice, for example while a busy page is loading. This commit fixes this by ensuring that find-mode blocks keyboard events immediately (and synchronously) on launch.
2016-05-05install the real selectionchange listener after window.findgdh1995
2016-03-21Simplify singleton handling.Stephen Blott
While working on the visual-mode code, it became apparent that our current "singleton" implementation is unnecessarily complicated. This simplifies it. The keys are now required to be strings. (Previously, they could be any object; which meant we needed to gove objects an identity. All of which was complicated.)
2015-09-11Move repeated conditional FindMode code into one placemrmr1993
2015-09-11Move escaping regex special chars to its own utility functionmrmr1993
2015-06-26Fix oversight from #1693.Stephen Blott
(We need to use "this" inside this function.)
2015-06-13Clean up code after mergemrmr1993
2015-06-13Refactor duplicate code.Stephen Blott
2015-06-13Fix returnToViewport.Stephen Blott
The super-class's constructor sets @options, so we can't set it here; instead, we pass the options along.
2015-06-13Refactor findInPlace.Stephen Blott
This code belongs together, so we put it together.
2015-06-10Update rawQuery directly from FindMode.updateQuerymrmr1993
2015-06-10Integrate executeFind into FindMode as FindMode.executemrmr1993
2015-06-10Move findModeQuery to FindMode.querymrmr1993
2015-06-10Simplify executeFind by hardcoding default argumentsmrmr1993
2015-06-10Add FindMode.saveQuery to avoid addressing findModeQuery directlymrmr1993
2015-06-10Integrate functions exposed on window into FindModemrmr1993
2015-06-10Move getNextQueryFromFindModeMatches and getFindModeQuery into mode_findmrmr1993
2015-06-10Move updateFindModeQuery to FindMode.updateQuerymrmr1993
2015-06-10Move updateFindModeQuery to mode_find.coffeemrmr1993
2015-06-10Move findModeQueryHasResults to findModeQuery.hasResultsmrmr1993
2015-06-10Remove global findMode and pass new FindMode instances direct to the HUDmrmr1993
2015-06-10Move FindMode from vimium_frontend to mode_findmrmr1993
2015-04-18Mode indicator: strip all references to badges.Stephen Blott
2015-01-28Visual/edit modes: yet more minor changes.Stephen Blott
- Use a has for singletons (as it was previously), but with a distinct identity generated by Utils.getIdentity. - Fix counts not be using in a number of places.
2015-01-27Visual/edit modes: minor changes.Stephen Blott
- Minor changes. - Deactivate modes on inputs from focusInput().
2015-01-27Visual/edit modes: self code review.Stephen Blott
2015-01-18Modes; pre-merge clean up.Stephen Blott
2015-01-17Modes; yet more tweaks...Stephen Blott
- Mainly comments. - Rename chooseBadge to updateBadge (for consistency). - No badge for passkeys; also fix tests.
2015-01-16Modes; clean up.Stephen Blott
2015-01-16Modes; tweaks.Stephen Blott
2015-01-16Modes; refactoring.Stephen Blott
- refactor PostFindMode (to keep separate functionality separated).
2015-01-15Modes; yet more teaks and fiddles.Stephen Blott
2015-01-15Modes; tweaks and fiddles.Stephen Blott
2015-01-14Modes; rework PostFindMode (again).Stephen Blott
2015-01-14Modes; substantial reworking of insert mode (and friends).Stephen Blott
2015-01-13Modes; temporary commit.Stephen Blott
2015-01-13Modes; enter insert mode if the selection changes.Stephen Blott
See discussion in #1415.
2015-01-11Modes; rework debugging support.Stephen Blott
2015-01-10Modes; reinstate key blockers:Stephen Blott
- when the selection is contentEditable - in PostFindMode Restricted to printable characters.
2015-01-10Modes; revert to master's handling of #1415.Stephen Blott
The behaviour in the situations described in #1415 require more thought and discussion.
2015-01-10Modes; instrument for debugging...Stephen Blott
- Set Mode.debug to true to see mode activation/deactivation on the console. - Use Mode.log() to see a list of currently-active modes. - Use handlerStack.debugOn() to enable debugging of the handler stack.
2015-01-10Modes; more changes...Stephen Blott
- Better comments. - Strip unnecessary handlers for leaving post-find mode. - Simplify passKeys. - focusInput now re-bubbles its triggering keydown event.
2015-01-09Modes; various changes...Stephen Blott
- Refactor insert-mode constructor. - Gneralise focusInput.
2015-01-09Modes; fix click handling for all "overlay" modes.Stephen Blott
From #1413... Go here: http://jsfiddle.net/smblott/9u7geasd/ In the result window: Type /Fish (do not press enter). Click in one of the text areas. Press Esc. Type aaa - you're in insert mode. Type jk - hmm, where did they go? Type o - oops, you're also in normal mode.
2015-01-08Modes; refactor and simplify.Stephen Blott
- Insert mode trigger and blocker. - Better comments for PostFindMode. - Better comments for FocusSelector. - Make insert mode consistent with master.
2015-01-08Modes; refactor PostFindMode key handling.Stephen Blott
In particular, this refactors the handling of non-vimium key events in PostFindMode. This implements option 2 from #1415. However, #1415 is not resolved, and option 3 remains a viable option.
2015-01-07Modes; Continue incorporation of comments in #1413.Stephen Blott
- Slight rework of HandlerStack. - Remove classs ExitOnEscape and ExitOnBlur - Rework InsertMode, plus trigger and blocker. - Remove StateMode. - Do no mixin options. - Lots of tidy up (including set a debug variable to Mode).
2015-01-07Modes; rework Singletons, InsertModeBlocker and HandlerStack.Stephen Blott
This begins work on addressing @philc's comments in #1413. That work is nevertheless not yet complete.
2015-01-06Modes; when exiting on Escape, also grab keyup event.Stephen Blott
Also fix post insert.
2015-01-06Modes; fix PostFindMode for contentEditable.Stephen Blott