| Age | Commit message (Collapse) | Author | 
 | 
This makes the behaviour consistent between custom and non-custom
searches when there is no selection in the vomnibar (omni-mode only).
Approach:
   - When there is no selection in the vomnibar, we *always* send the
     query to to background completer (that is, both for default
     searches and for custom searches) and ask the completer to provide
     only the primary suggestion.  The primary suggestion is just what
     you get if you append the query terms to the search URL (default or
     custom).  We then immediately open the first response.
The round trip for default searches isn't strictly necessary.  However,
this uniform approach disentangles some nasty logic in the vomnibar when
we're trying to handle several cases (default or custom search, with or
without prompted text, with or without any suggestions at all).  The
extra round trip simplifies the logic to such a great extend that it's
worth it.
 | 
 | 
 | 
 | 
- 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.
 | 
 | 
 | 
 | 
 | 
 | 
- We arrange that:
   - for custom search engines, or
   - for other searches where there is at least one match
  that match is at the top of the list (relevancy 1).
This top suggestion will the suggestion which will be used to popuplated
the promted text in the vomnibar.  If we arrange that it's at the top of
the list, then it is also the text that we get in the vomnibar if we hit
<Tab>.
This leaves us in the position where:
   - If the user wants just the text they've typed, then they hit
     <Enter>.
   - If they want all of the text in the input (including the prompted
     text), then they hit <Tab>, <Enter>.  This is a very natural UX.
     It feels like <Tab> is filling in the prompted text, although all
     it's really doing is choosing a suggestion (the first one), as it
     always has done.
There is one small catch. We need to avoid a clash with the domain
completer, which also likes to force its suggestion to the top of the
list.  There's a test for that case.  Basically, we can apply this trick
if it's a custom search, or if the user has finished typing the first
query term.
 | 
 | 
This prevents an immediate re-completion after the user has repositioned
the cursor with the arrow keys (which is an odd UX).
 | 
 | 
Vomnibar action on enter
 | 
 | 
The existing behaviour is poor UX.
Also, add <Alt-Enter> binding.  This is a poor choice.  We'll need to
think about this.
 | 
 | 
This changes the behaviour of <Enter> in the vomnibar when a prompted
text is present (i.e. text from a suggestion which the user has not yet
typed.  Now, that text is no longer included in the query launched with
<Enter>.  After a little experience, I'd say that's a pretty bad UX.
This also adds a <Ctrl-Enter> binding to launch the query with the
prompted text included.
 | 
 | 
Tweak vomnibar for custom search.
 | 
 | 
This applies only to custom searches for which we have a completion engine.
Status quo: Exclusively offer suggestions generated by this completer.
This PR: Also include other suggestions (e.g. history) if their URL and
query match this custom search engine.
 | 
 | 
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.
 | 
 | 
 | 
 | 
 | 
 | 
Separate the hud from frontend code and rewrite tween to be more generic
 | 
 | 
Bugs:
  - The serch-engine completer wasn't being configured correctly for the
    case when we don't have a completion engine.
  - Handle Control-Shift-Left/Right in vomnibar.
Also: better comments.
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Conflicts:
	background_scripts/completion.coffee
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Use css @import rather than XMLHttpRequest for shadow DOM external style
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
Use classes for border flashes
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
github.com:smblott-github/vimium into search-engine-completion-v2
Conflicts:
	pages/vomnibar.coffee
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 |