| Age | Commit message (Collapse) | Author |
|
- 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.
|
|
- Better comments.
- Strip unnecessary handlers for leaving post-find mode.
- Simplify passKeys.
- focusInput now re-bubbles its triggering keydown event.
|
|
|
|
|
|
Up until this point in the development of modes, we've just let the
normal mode handlers return whatever they previously would have
returned. This allowed keyboard events to continue bubbling down the
stack, but didn't matter, because normal mode is the last keyboard
handler on the stack.
This changes that. Now, normal-mode key handlers return the right value
to have the handler stack stop or continue bubbling, as appropriate.
|
|
|
|
|
|
- Refactor insert-mode constructor.
- Gneralise focusInput.
|
|
This is @mrmr1993's trick from #1258.
See: https://github.com/philc/vimium/pull/1258/files
|
|
This is @mrmr1993's trick from #1258.
See: https://github.com/philc/vimium/pull/1258/files
|
|
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.
|
|
|
|
Slightly more significant:
Move several utilities to dome_utils.
|
|
- Simplify InsertMode Trigger/Blocker (yet again).
- Reduce badge flicker for singletons.
|
|
- Insert mode trigger and blocker.
- Better comments for PostFindMode.
- Better comments for FocusSelector.
- Make insert mode consistent with master.
|
|
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.
|
|
|
|
- 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).
|
|
This begins work on addressing @philc's comments in #1413. That work is
nevertheless not yet complete.
|
|
|
|
Also fix post insert.
|
|
Fixes #1416.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix bug whereby clicking on the focused element does not activate insert
mode. This bug is also present (though harder to fix) in master.
|
|
Fixes #1412.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The old implementation:
- Wasn't actually checking whether handlers had been removed before
calling them.
- Could end up calling the same handler twice (if a handler was removed
further down the stack, and the stack elements moved due the resulting
splice.
Solution:
- Mark elements as removed and check. Set their ids to null.
- Don't splice stack.
Also, optimisation:
- Removing the element at the top of the stack is still O(1).
- In Modes, reverse handlers before removing (so, more likely to hit the
optimisation above).
For the record, the stable stack length at the moment seems to be about
10-12 elements.
|
|
|
|
- Add StateMode.
- PasskeysMode is a StateMode.
- BadgeUpdateMode is a StateMode.
- Improve badge handling.
- Add push method to Mode.
- Document how modes work.
- Cache badge on background page to reduce the number of updates.
- Remove badge restriction on document.body?.tagName.toLowerCase() == "frameset".
- Add ExitOnEscape mode, use it for ConstrainedMode and FindMode.
- Move PostFindMode to its own file.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Visual mode command has been create: bound to `v`, of course.
The template is in mode_visual.coffee. It shouldn't really be necessary
to make changes outside of there.
Let me know if you have any issues.
|
|
|