aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-05-15Use query text as title, if necessary and possible.Stephen Blott
2015-05-15Better explaination of query-term extract.Stephen Blott
2015-05-15Add comment explaining why we use try/catch.Stephen Blott
2015-05-15Add ? to the list of query-term separators.Stephen Blott
2015-05-15Give the vomnibar a (kind of) history (autoSelect).Stephen Blott
If we insert the text of hostory completions into the vomnibar input, then when the completions change, we'll pick up the arbitrary text of whatever happens to be the current selection. So we need to always reset the selection when the vomnibar updates. This eliminates the need for the previous autoSelect logic.
2015-05-15Give the vomnibar a (kind of) history (relevancy).Stephen Blott
2015-05-15Give the vomnibar a (kind of) history.Stephen Blott
2015-05-15Search completion; disable background-page logging.Stephen Blott
2015-05-14Rework how SimpleCache works.Stephen Blott
Change the implementation of SimpleCache such that it does not rely upon timers. The problem with times is that they retain a reference to the object even if Vimium itself loses all references. This approach seems simpler, and perfectly adequate for our purposes.
2015-05-14Search completion; add additional filtering stage.Stephen Blott
Two things: 1. Do not fire off requests to completion engines if the relevancy score they are assigned wouldn't be enough to be included. 2. Fix off-by-one error in prepareSuggestions.
2015-05-14Add a couple of Google search perameter filters.Stephen Blott
2015-05-14Merge branch 'vomnibar-filter'Stephen Blott
2015-05-14Tweak comments.Stephen Blott
2015-05-14Two lines which should have been removed in #1659.Stephen Blott
Omitting to remove these lines has the effect of disabling the left/right keys in the vomnibar.
2015-05-14Search completion; remove console.log().Stephen Blott
2015-05-14Search completion; add Merriam-Webster.Stephen Blott
2015-05-13Merge pull request #1659 from smblott-github/completion-for-vimium-(not-chrome)Stephen Blott
What should the search-completion UX be? It should be like this.
2015-05-13Search completion; complete rework of UX.Stephen Blott
This is a major reworking of how the search-completion systems works. Previously, the goal had been to emulate roughly how chrome itself handles completions. This has turned out to be a bad idea: - It creates issues around what it means to hit <Enter> in the vomnibar. - And the contents of the vomnibar change asynchronously (because we fetch completions asynchronously), so it creates the possibility that the effect of <Enter> changes depending on how long the user waits before typing <Enter>. All of that is bad. This commit changes things: - In normal omni mode, the vomnibar looks and behaves pretty much like it always has, just with some extra completion suggestions thrown in. - And in custom-search-engine mode it also behaves mostly as it has previously, but (again, possibly) with some extra completion suggestions thrown in, and with many useless suggestions excluded. This is all far more Vimium-like than Chrome-like.
2015-05-13Search completion; ensure wighting fact stays within bounds.Stephen Blott
2015-05-13Search completion; implement <Enter> timer.Stephen Blott
With suggested completions appearing in the vomnibar, the meaning of <Enter> can change when the completion list is updated, which happens asynchronously. The user can end up selecting something they didn't intend to ... which is bad. This implements a temporary fix. When the completion list updates (and the update might affect what the user expects <Enter> to do), we block <Enter> for a short time (250ms). That's pretty bad too. These UX issues around search completion are proving difficult to get right. I will open an issue to discuss them soon.
2015-05-13Search completion; tweak constants.Stephen Blott
2015-05-13Search completion; yet another reworking.Stephen Blott
I'm having difficulty getting all aspects of the UX right for all combinations of modes. This is the latest attempt. The main goal is to mimic Chrome to the greatest extent possible. There will be more to come, but I think this is an improvement.
2015-05-13Domain completer: no completions for "w ".Stephen Blott
If the input is "w ", the user is going for something like "w query terms" (a custom search engine). So the domain completer should not offer completions if the user has finished the first word.
2015-05-13Search completion; rework handling when no selection.Stephen Blott
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.
2015-05-13Search completion; minor changes.Stephen Blott
2015-05-13Minor fixes for #1658.Stephen Blott
- 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.
2015-05-13Remove unused styles for the HUDmrmr1993
2015-05-13Move the HUD to an iframe, managed by UIComponentmrmr1993
2015-05-12Rework some aspects of search engine completion.Stephen Blott
- 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.
2015-05-12Prevent immediate re-completionStephen Blott
This prevents an immediate re-completion after the user has repositioned the cursor with the arrow keys (which is an odd UX).
2015-05-12Merge pull request #1657 from smblott-github/vomnibar-action-on-enterStephen Blott
Vomnibar action on enter
2015-05-12Fix bad UX for <Enter> with prompted text.Stephen Blott
The existing behaviour is poor UX. Also, add <Alt-Enter> binding. This is a poor choice. We'll need to think about this.
2015-05-12In vomnibar, <Enter> excludes prompted text.Stephen Blott
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.
2015-05-12Simplify and filter vomnibar URLs (tweaks).Stephen Blott
2015-05-12Merge pull request #1655 from smblott-github/completion-filtersStephen Blott
Tweak vomnibar for custom search.
2015-05-12Tweak vomnibar for custom search.Stephen Blott
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.
2015-05-12Simplify and filter vomnibar URLs.Stephen Blott
- Remove various bits of URL fluff (the scheme, trailing URL separators). - Remove various unhelpful Google search parameters. - Filter for duplicates (based on the simplified URL).
2015-05-12Fix HUD on options page (temporary fix, v2).Stephen Blott
Alternative to 7004420e178416cc680416091a23dd804fb9370c.
2015-05-12Fix HUD on options page (temporary fix).Stephen Blott
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.
2015-05-12Add header for Advanced Options.Stephen Blott
2015-05-12Search completion; simplify engine definitions.Stephen Blott
2015-05-12Update "Release Notes" in README.Stephen Blott
2015-05-12Merge pull request #1652 from mrmr1993/separate-hud-from-frontendStephen Blott
Separate the hud from frontend code and rewrite tween to be more generic
2015-05-11Search completion; fix typos and small bugs.Stephen Blott
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.
2015-05-11Move all HUD .style declarations into vimium.cssmrmr1993
2015-05-11Make HUD less intertwined with Tween, rewrite Tween as more genericmrmr1993
2015-05-11Change HUD. to @ for improved readabilitymrmr1993
2015-05-11Move the HUD to its own filemrmr1993
2015-05-11Search completion; fix relevancy calculation.Stephen Blott
2015-05-11Merge branch 'search-engine-completion-v5'Stephen Blott