| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  |  | 
|  | Mainly fix the indentation on comments.  Also tweak wording a bid. | 
|  |  | 
|  | This only effects link hints with "Use the link's name and numbers for
link-hint filtering" enabled.
We have been matching the *entire text content* of each link-hint
element.
With two (or more) hints, and with one of the elements a descendent of
the other, we have been using the entire text content of the outer node
(which includes the text content of the inner node).  This leads to odd
situations where the inner element cannot be selected just by typing its
text, because its text is a substring of the outer element's text.
For example, on Google calendar, the "Today" button shows up as two
hints, one inside the other.  Typing "today" never disambiguates the
hint.  You always have to hit enter.
There's another nasty example on feedly, where an outer container is
clickable, but its text contains all of the (many) texts of the (many)
contained links.  So the hint always has to be selected manually.
Here, when generating the text for an element, we exclude the texts from
any descendent node which has already been considered. | 
|  | This restores behaviour to how it was at commit
7cedc5d2481f61f4b0d1cbf99fbd203bb5c68b54. | 
|  |  | 
|  |  | 
|  |  | 
|  | These elements throw an error on access, meaning that we can't do an
existence check. | 
|  | Conflicts:
	background_scripts/main.coffee
	content_scripts/vimium_frontend.coffee
	lib/keyboard_utils.coffee | 
|  | - convert getCaretCoordinates from JS to CS
- handle x axis in scrollIntoView
- better comments throughout. | 
|  | Conflicts:
	content_scripts/vimium_frontend.coffee | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | Also, change how vim's "w" is implemented.
Also some code-review/cleanup.
Better dd and yy for gmail. | 
|  | - 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. | 
|  | - "dw", "3dw", "d3w"
- "dc", "3dc", "d3c"
- "D"
- "C"
Also refactor enterInsertMode.
Also major refactor of interface between edit and visual modes. | 
|  |  | 
|  |  | 
|  | - 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. | 
|  | - 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). | 
|  |  | 
|  | This allows us to select contentEditable elements in the same way as we
can select other inputs.
Fixes #1437. | 
|  | 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. | 
|  | - 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. | 
|  | 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. | 
|  |  | 
|  |  | 
|  | Fixes #1430. | 
|  |  | 
|  | A modal-browsing framework | 
|  |  | 
|  |  | 
|  | Uses document.readyState for all onDOMContentLoaded dependent functions.
This should fix the same race condition as #1426 for all cases. | 
|  | Fixes #1426. | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | - when the selection is contentEditable
- in PostFindMode
Restricted to printable characters. | 
|  | - 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. | 
|  | Slightly more significant:
   Move several utilities to dome_utils. | 
|  | - Simplify InsertMode Trigger/Blocker (yet again).
- Reduce badge flicker for singletons. | 
|  | 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). |