aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-01-27Visual/edit modes: better word-movement/"w".Stephen Blott
2015-01-27Visual/edit modes: minor changes.Stephen Blott
2015-01-26Visual/edit modes: "P" and "p" to copy-and-go.Stephen Blott
2015-01-26Visual/edit modes: minor improvements.Stephen Blott
2015-01-26Visual/edit modes: fix problem resuming entering visual line mode.Stephen Blott
2015-01-26Visual/edit modes: fix problem resuming insert mode.Stephen Blott
2015-01-26Visual/edit modes: better recovery after focus change.Stephen Blott
If we're in edit mode and the user changes tab, we lose the focus. That causes edit mode (and any sub mode like visual mode) to exit. When we return, we're in insert mode! With this commit, we save the state, and restore it when appropriate.
2015-01-26Visual/edit modes: minor changes.Stephen Blott
2015-01-26Visual/edit modes: "x" and entity moves ("daw", "cas", etc.)Stephen Blott
2015-01-25Visual/edit modes: miscellaneous improvements.Stephen Blott
2015-01-25Visual/edit modes: enter insert mode directly.Stephen Blott
2015-01-25Visual/edit modes: establish an initial selection.Stephen Blott
2015-01-25Visual/edit modes: miscellaneous changes.Stephen Blott
2015-01-25Visual/edit modes: better mode changes on blur/focus.Stephen Blott
2015-01-25Visual/edit modes: implement "V" in visual mode.Stephen Blott
2015-01-25Visual/edit modes: experimental "x" implementation.Stephen Blott
2015-01-25Visual/edit modes: better reverseSelection().Stephen Blott
There's an efficient way to implement reverseSelection, and an inefficient way. Unfortunately, the efficient way does not work for text inputs like textareas. So we fall back to the inefficient method in that case.
2015-01-25Visual/edit modes: find (experimental).Stephen Blott
The UX around find in visual mode can be a bit weird. It may be better to remove it.
2015-01-25Visual/edit modes: visual line mode.Stephen Blott
2015-01-24Visual/edit modes: implement "yy".Stephen Blott
2015-01-24Visual/edit modes: for "$", advance to real end of line.Stephen Blott
2015-01-24Visual/edit modes: minor changes.Stephen Blott
2015-01-24Visual/edit modes: more edit-mode commands.Stephen Blott
- "dw", "3dw", "d3w" - "dc", "3dc", "d3c" - "D" - "C" Also refactor enterInsertMode. Also major refactor of interface between edit and visual modes.
2015-01-24Visual/edit modes: miscellaneous improvements.Stephen Blott
2015-01-23Visual/edit modes: more (and better) commands.Stephen Blott
2015-01-23Visual/edit modes: develop edit mode.Stephen Blott
- implement "i", "a". - fix "w" for edit mode. - try out "e" for enter edit mode. - initial implementation "o", "O" - Suppress backspace and delete. - Scroll in text areas.
2015-01-22Visual/edit modes: revert to slow "o".Stephen Blott
There are cases where the faster approach gets the wrong answer.
2015-01-22Visual/edit modes: faster "o" implementation.Stephen Blott
2015-01-22Visual/edit modes: further development.Stephen Blott
- Better abstraction. - Add HUD message on yank. - Require initial selection for visual mode. - Try to start with a visible selection. - Scroll the active end of the selection into view (with smooth scrolling, if enabled).
2015-01-22Visual/edit modes: initial "w" and "W" commands.Stephen Blott
2015-01-22Visual/edit modes: continued development...Stephen Blott
- Some better comments. - More commands. - The "o" command for visual mode (the implementation is poor, there has to be a better way).
2015-01-22Visual/edit modes: consolidate both modes in a single file.Stephen Blott
These modes turn out to be almost identical. So they're better off in a single file.
2015-01-22Visual/edit modes: refactor.Stephen Blott
2015-01-21Edit mode: first working visual mode.Stephen Blott
2015-01-21Edit mode: initial framework.Stephen Blott
2015-01-20Add contentEditable as criterion for isSelectable.Stephen Blott
This allows us to select contentEditable elements in the same way as we can select other inputs. Fixes #1437.
2015-01-20Rework focus input so it can be better included in tests.Stephen Blott
focusInput was getting its focus events from the handler stack. When the handler stack was reset during tests, we lost focusInput's handler. So we couldn't test the feature whereby focusInput has a memory (#1438). Instead, here focusInput adds its listener directly to the window, and we add the approriate test.
2015-01-20Merge branch 'modes-rework-dom-tests' of github.com:smblott-github/vimium ↵Stephen Blott
into modes-rework-dom-tests
2015-01-20Rebase.Stephen Blott
2015-01-20Rework DOM tests (clean up).Stephen Blott
2015-01-20Rework DOM tests (integrate keyboard-event handling).Stephen Blott
This uses phantomjs to generate keyboard events. So the events are propagated through the regular event listeners. So we're testing the full keyboard-event flow.
2015-01-20Rework DOM tests.Stephen Blott
- Set up modes such that they can be re-initialised. - Move initialisation of BadgeMode to general initialisation function. - Add reset() method for handlerStack. - Consistently use initializeModeState() in all tests' setup(). - Refactor focusInput tests. - Add some more tests. - Simplify some other tests. Note: Clean-up of the inputFocus overlay now happens when the exit() method is called in Mode.reset(). This eliminates most needs to artificially bubble a keyboard event to clear the overlay.
2015-01-20Merge pull request #1438 from smblott-github/focus-input-with-memoryStephen Blott
Give focusInput (gi) a memory
2015-01-20Merge pull request #1436 from smblott-github/fix-simulate-selectStephen Blott
On simulateSelect, do not change selection if selection exists.
2015-01-20Minor refactoring of isSelected().Stephen Blott
There's no point in focusing element if it's already active. Also, we leave the caret in place, not just a range selection. isSelected makes the wrong decision if the user has placed the caret at the start of element. We cannot distinguish that case from the user having made no selection. Nevertheless, this is substantially better than the existing UX, which *always* moves the caret to the end.
2015-01-20Rework DOM tests (clean up).Stephen Blott
2015-01-19Rework DOM tests (integrate keyboard-event handling).Stephen Blott
This uses phantomjs to generate keyboard events. So the events are propagated through the regular event listeners. So we're testing the full keyboard-event flow.
2015-01-19Fix bug in mode_passkeys.Stephen Blott
Caught this while working on the dom_tests infrastructure. Testing works!
2015-01-19Rework DOM tests.Stephen Blott
- Set up modes such that they can be re-initialised. - Move initialisation of BadgeMode to general initialisation function. - Add reset() method for handlerStack. - Consistently use initializeModeState() in all tests' setup(). - Refactor focusInput tests. - Add some more tests. - Simplify some other tests. Note: Clean-up of the inputFocus overlay now happens when the exit() method is called in Mode.reset(). This eliminates most needs to artificially bubble a keyboard event to clear the overlay.
2015-01-18Give focusInput a memory (refactor).Stephen Blott
This makes the diff look big, but that's mainly due to a change in the indentation.