aboutsummaryrefslogtreecommitdiffstats
path: root/pages
AgeCommit message (Collapse)Author
2015-06-10Accept input in the HUD iframemrmr1993
2015-06-10Reduce down the HUD's match count string codemrmr1993
2015-06-10Make all find mode updates go via the HUD in preparation to use an inputmrmr1993
2015-06-10Decide find mode text in the HUD iframe, not in frontendmrmr1993
2015-06-07On completion-engines page, put example first.Stephen Blott
On that page, we have regular expressions (which are not new-user friendly) and an example (which is new-user friendly). So the example should come before the regular expressions.
2015-06-06Merge branch 'rework-completions'Stephen Blott
Conflicts: background_scripts/completion.coffee background_scripts/completion_engines.coffee
2015-06-06Re-work completions: extend engine wrapper to handle prefixes.Stephen Blott
This commit contains the bulk og the material changes for which the previous commits established the basis. 1) Add a general framework for detecting query prefixes in search URLs, adding them to query sent to the completion engine, and stripping them from the resulting suggestions. This allows the user to have a search engine... j: http://www.google.com/search?q=javascript+%s Javascript and have the prefix "javascript" included (automatically) in queries sent to completion engines, which results in substantially better suggestions. 2) Re-work completion for Google Maps in a simpler form.
2015-06-06Re-work completions: initial refactor.Stephen Blott
The original completion-engine interface was based on three functions. With some experience, it seems there is a pattern involving explicit regular expressions which is used by all actual engine implementations. This is a refactoring to make those regular expressions explicit (and required), and is a first step towards adding additional fucntionality. This also simplifies the completion cache key (use JSON instead of some weird hash).
2015-06-04Completion page; avoid building many separate strings.Stephen Blott
2015-06-03Completion page; add example DECLARATIONS to page.Stephen Blott
Instead of just giving an example search URL, we can give the actual declaration (which the user can copy, paste and tweak).
2015-06-03Completion page; add example URLs to page.Stephen Blott
This allows the user to copy and paste search URLs from this page into the options page.
2015-06-03Tweak vomnibar custom search behaviour.Stephen Blott
With this, if we're in custom search mode and the cursor is at the start of the vomnibar input and the user types <Delete>, then we exit custom search mode and reinstate the keyword (and arrange for the cursor to be in the right place). This makes it possible to change (or just disable) the custom search engine without having to first wholly delete the query.
2015-06-01Tweak a456de97daaf1361bc3ad7df775f1b6cbe1f720e.Stephen Blott
2015-06-01Use JSON.stringify to compare setting values everywheremrmr1993
2015-06-01Merge branch 'unified-settings-implementation'Stephen Blott
2015-06-01Always call performPostUpdateHook after Setting updates (.set/.clear)mrmr1993
2015-06-01Eliminate possibility of race condition.Stephen Blott
See newly-added long comment for details.
2015-06-01Re-work unified settings.Stephen Blott
This is a minor re-working of #1705 from @mrmr1993. The main changes are: - Simplify initialisation logic. - Always initialise Settings immediately and automatically (ie. don't initialise Settings separately and manually in the background, content scripts, options and tests). - Get rid of addEventListener (it's only being used for on "load"). - Add Settings.use() in its place.
2015-05-31Completion page; tidy up regular expressions.Stephen Blott
2015-05-31Completion page; functional version.Stephen Blott
2015-05-31Re-write class with inheritence.Stephen Blott
2015-05-31Fully remove unused option.Stephen Blott
(This was supposed to have been removed previously. Oops!).
2015-05-31Completion page; initial version.Stephen Blott
2015-05-31Merge pull request #1486 from smblott-github/advanced-options-buttonStephen Blott
Move "show-advanced-options" to a fixed-position button.
2015-05-31Merge pull request #1700 from smblott-github/help-page-vomnibar-commandsStephen Blott
Move Vomnibar commands to own category on help page.
2015-05-31Merge pull request #1697 from smblott-github/vomnibar-map-with-prepopulated-textStephen Blott
Direct keyboard access to custom-search engines via keyword flag
2015-05-30Move Vomnibar commands to own category on help page.Stephen Blott
The help page gets pretty lopsided when advanced commands are shown. This balances things out a bit by creating a new category for Vomnibar commands in the right-hand column.
2015-05-30Add a link to the wiki to the help page.Stephen Blott
Ass suggested in by @LarryBattle in #1643.
2015-05-29Prepopulate @customSearchMode in vomnibar.Stephen Blott
This avoids a flicker whereby the keyword is first inserted into the input, then removed.
2015-05-29Use lib/settings.coffee to provide settings to options.html/popup.htmlmrmr1993
Instead of directly accessing the background page's Settings object, the options page and the page popup now have their own.
2015-05-29Merge branch 'completion-on-custom-search-only' into ↵Stephen Blott
completion-on-custom-search-only-merge Conflicts: background_scripts/completion.coffee
2015-05-28Custom-only: fix long-standing race condition.Stephen Blott
In omni mode, the vomnibar suggestions are updated asynchronously. Therefore, the contents of the primary custom search-engine suggestion may be behind the actual contents of the comnibar input. So, we reconstruct the custom search-engine query on "enter". (This fixes a long-standing race condition.)
2015-05-28Custom-only: remove omniSearchWeightOption.Stephen Blott
This option is no longer needed, since we don't do search completion except for custom searches.
2015-05-28Custom-only: strip non-custom search code.Stephen Blott
2015-05-27Tap-to-open only in omni-mode vomnibar.Stephen Blott
Do not use tab-to-open the vominibar in tabs mode. (It doesn't make any sense.)
2015-05-27Custom-only: remove underlining of matches.Stephen Blott
Underling is just ugly, in this case. Also, it is applied inconsistently between titles and URLs.
2015-05-26Merge pull request #1654 from smblott-github/options-page-use-headerStephen Blott
Add header for Advanced Options.
2015-05-19Add insertText visual indicator.Stephen Blott
Conflicts: background_scripts/completion.coffee
2015-05-17TabToOpen: tidy up pre-PR.Stephen Blott
2015-05-17TabToOpen: reactivate custom search engines.Stephen Blott
When the user begins editing the inserted text from a custom-search-engine suggestion, we reactivate the original custom-search-engine mode.
2015-05-17TabToOpen: reactivate previous custom search engine.Stephen Blott
Note: There's still an unpleasant flicker when this happens. TBD: Fix this.
2015-05-17TabToOpen: tweaksStephen Blott
2015-05-17TabToOpen: tab to open vomnibar.Stephen Blott
`o` then `Tab` opens the vomnibar completionlist with history completions (the only completions) ranked by recently only. Hence, the most recent requests are at the top. This is a (far) simpler approach than #1662 which catches the most important use case (repeat a search with an edited query).
2015-05-16Add insertText visual indicator.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-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-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; 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; 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-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.