| Age | Commit message (Collapse) | Author |
|
Direct keyboard access to custom-search engines via keyword flag
|
|
Add a link to the wiki on the help page.
|
|
On smaller screens (and with the advanced options unfolded), the help
page can need scrolling. Currently, you have to click it to give it the
focus. Here, we simulate-click it, so that "j" and "k" scrolling is
active immediately.
|
|
Ass suggested in by @LarryBattle in #1643.
|
|
"Flags" implies binary toggles. The term "options" seems more
consistent with what's actually going on here.
|
|
For ...
map s Vomnibar.activate keyword=g
... we verify that "g" is indeed a custom search-engine keyword before
setting it. If it is not, we output a console.log message and launch a
vanilla vomnibar. (An alternative would be to bail.)
|
|
This avoids a flicker whereby the keyword is first inserted into the
input, then removed.
|
|
|
|
|
|
If the page is an XML document, nothing we do works:
* <style> elements show their contents inline,
* <iframe> elements don't load any content,
* document.createElement generates elements that
- have Element.style == null, and
- ignore CSS.
This commit stops us from injecting anything into the DOM from
UIComponent, fixing #1640.
|
|
Now, a mapping of the form:
map s vomnibar.activate keyword=g
makes the vomnibar open (on "s") with the Google custom-search engine
activated immediately (assuming it's configured).
The corresponding custom search-engine configuration would be:
g: http://www.google.com/search?q=%s Google
|
|
|
|
|
|
Fix word movement for non-English characters.
|
|
|
|
I haven't seen this happen, but...
It could be possible for the iframe's contents to load before this
callback is called (on nextTick), in which case the "load" callback
wouldn't be called. So we delay setting the iframe's source until
nextTick has elapsed.
|
|
|
|
Approach: Re-use the existing AsynDataFetcher class to "fetch" and use
the iframe message port. Messages are queued until the iframe's
contents have loaded and the message port is open.
Fixes #1679.
|
|
|
|
This ensures that \\\r is interpreted as {escaped-\}{escaped-r} rather
than \{escaped-\}r.
|
|
This fixes #1673
|
|
See #1671.
The problem was that we were making the vomnibar visible in the frontend,
even if the vomnibar initialisation was not yet complete, and the iframe
port was not yet available.
(Also, @activate() is never being called without options, so we can drop
that test.)
Fixes #1671.
|
|
- Mis-named: "handler" -> "name".
- We need to reset the HUD's innerHTML on hide to avoid a flicker when
HUD later becomes visible again (but with new text).
- There is no longer a need to hide the HUD in order to avoid mathing
the text in the HUD itself.
|
|
|
|
|
|
Alternative to 7004420e178416cc680416091a23dd804fb9370c.
|
|
Following on from #1652, vimium was failing to initialize correctly on
the options page.
Specifically, installListeners() was running before
initializeOnDomReady(), hence before HUD.init(). installListeners()
runs new GrabBackFocus(), which hides the HUD, which is not yet
initialized - so it fails.
This is a temporary fix. Could you take a look, @mrmr1993? Perhaps
there is a race condition which only arises on the options page. It may
be enough to just have HUD.hide() silently pass if @tween is not yet
set.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Make GrabBackFocus work for javascript page transitions from links
|
|
This fixes issue #853.
|
|
|
|
|
|
|
|
|
|
This reverts commit 061e99f895e5655d351ad1585af028a12abf3ec0.
|
|
This reverts commit f1e46d8145c834a712f6be7c1e5bd590c72da749.
|
|
Use a shadowDom for the Vomnibar (and all UIComponents)
|
|
If we use contentText, then it is possible for a child and its to
have exactly the same content text, in which case it is arbitrary as to
which is sorted first, hence which we choose (where we should be
choosing the child).
Using innerHTML instead, we guess that even if the contentText lengths
are the same, the innerHTML of the parent will be longer (since it
contains that of the child).
|
|
|
|
We need to sort elements by their text length. This allows us to
exclude the text of descendants from the hint text generated for their
ancestors.
Note: Tests not yet fixed.
|
|
|
|
Since we don't use this huge regexp on most pages, lets just compile it
when we need it.
|