| Age | Commit message (Collapse) | Author |
|
Don't show UIComponent <iframe>s while vimium.css loads
|
|
|
|
|
|
This fixes #1817, where our stylesheet isn't loaded correctly due to a
Chromium issue and the Vomnibar/HUD <iframe>s are always visible on the
new tab page.
|
|
JavaScript's sort function is not stable; this PR makes the sort used for filtered link hints stable.
There are two reasons for doing this:
- High-scoring hints are more likely to keep the same hint string as the user continues typing. (Currently, the hints assigned change based on the vaguaries of the non-stable sort.)
- For equal-scoring hints, we retain the visit-child-before-parent ordering (which is used to NOT match a parent's text if we have already matched that text in a child).
And, as a result of all of that, the UX is more predictable and hence better.
|
|
|
|
Only apply passkeys to single character keys explicitly
|
|
|
|
|
|
|
|
|
|
|
|
This implements @gdh1995's idea from #1796.
|
|
If we miss the keyup event while a smooth scroll is active (because the
focus changes), then we scroll forever. This stops scrolling on blur.
Fixes #1788.
|
|
Add support for ngClick to link hints
|
|
|
|
Before this change, a string in KeyboardUtils.keyNames could have the
key it represents disabled if
* its letters were in alphabetical order, and
* the user has set all of its letters as passkeys, with none in between.
For example, imagining that "del" (for delete) was in
KeyboardUtils.keyNames, the passkeys "dpyl0e" would cause the delete key
to be a passkey too.
This commit fixes the issue by only applying passkeys when keyChar is a
single character.
|
|
|
|
See @mrmr1993's comment in 2cc7dc1d2164b5dbb27bcc1d4bc0517402dd7581.
|
|
Re-working of @poacher2k's ideas from #1745.
- check whether AngularJS is being used.
- avoid building the AngularJS attribute strings multiple times.
- avoid building them *at all* if AngularJS is not being used.
|
|
(We need to use "this" inside this function.)
|
|
|
|
|
|
This only affects the transition from visual mode back to edit mode.
Previously, we were incorrectly leaving the selection in place.
(The comment above was correct, but the implementation wasn't.)
|
|
Because I apparently can't read docs properly!
|
|
|
|
CoffeeScript is not my native tongue.
|
|
Changed from : to =
|
|
There's a fair amount of angular-sites running around, so including ngClick (with all its valid variations) seems like a good idea.
I added a hasNgClick-check in the if block that checks if an element is clickable regardless of tagName.
|
|
Previously, we initialised modes early, but then installed our listeners
only after DOM ready, and then only after we'd heard back from the
background page in `checkIfEnabledForUrl`. This creates a gap during
which modes are installed, but they're not receiving events.
If an input is focused during that gap, then we don't pick it up when
the modes are installed, and we don't pick it up when the input is
focussed (because we're not listening). This commit moves these two
initialisation steps together, so they happen at the same time and there
is no gap.
Fixes #1738.
|
|
|
|
|
|
The super-class's constructor sets @options, so we can't set it here;
instead, we pass the options along.
|
|
This code belongs together, so we put it together.
|
|
This undoes the effect of the breaking refactor in
73f66f25e6b8e5b5b8456074ad4fa79ba1d3ca4d, where PostFindMode was entered
whenever FindMode was exited, instead of only when it was exited with
<enter>.
|
|
This reverts commit 53d131700e5f33cb9476f00a905c238b0083f3dc.
(This needs more thought.)
|
|
When we read hint characters, we read them lower case. When we generate
hint markers, we generate them upper case. So they never match.
(Exactly why anyone would want to use "abcde" for filtered link hints
isn't clear, but at least we should behave correctly.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|