| Age | Commit message (Collapse) | Author |
|
Conflicts:
background_scripts/completion.coffee
background_scripts/completion_engines.coffee
|
|
On the help page, use separate row for very-long bindings.
|
|
When filter suggestions from other completers, most notably the history
completer, we only keep suggestions which match the current searchUrl
and completer. Here, we also *replace* the URL of the suggestion. With
duplicate elimination, multiple history entries (e.g. those generated
with various "Search Tools" settings on Google) will be collapsed to
one. This matters because, with custom search engines, we don't show
the URL, so the user can't see differences in the URL. Without this,
the user can be presented with a list of apparently identical
completions.
|
|
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.
|
|
|
|
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).
|
|
Improved global marks
|
|
With global marks, we may later create a new tab when the mark is used.
When doing so, we should always be using the URL and scroll position of
the top frame within the tab. For example, if a global mark is created
from within the Hangouts frame of Google's Inbox and the mark is later
used, then we should create a new tab for Inbox's URL and scroll
position, not for the Hangout's URL and scroll position.
|
|
|
|
As suggested by @mrmr1993 in #1716.
|
|
|
|
|
|
(As suggested by @mrmr1993 in #1716.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If there are many bindings for a command, then the column layout on the
help page can become out of whack. This commit puts such bindings on a
separate table row which spans all three columns.
(Many bindings for a single command are more likely in light of #1697.)
|
|
|
|
Fixes #1712:
- Make global marks work.
- Add mode indicator.
- Don't fail for global marks on background page if mark is not set.
- Give HUD warning for global marks if global mark is not set.
(The diff is big but, which the exception of infrastructure refactoring,
the main change is to not exit on <Shift>, thereby fixing #1712).
|
|
Instead of just giving an example search URL, we can give the actual
declaration (which the user can copy, paste and tweak).
|
|
For each completion engine, this adds an @example properties (not
comments)
|
|
When the user changes custom search engine during a single vomnibar
activation, we should only offer suggestions which match the current
search engine (not the previous one).
We now do this not just by checking that the suggestion is a custom
search suggestion, but by checking that the actual search URL matches.
|
|
In Google Maps, we get a new history entry for every pan and every zoom.
This removes such duplicates.
|
|
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.
|
|
|
|
|
|
Conflicts:
misc/completion_engines/completion_engines.md
|
|
We need to use "\\." to get a literal ".".
|
|
Allowing mapping <space>.
|
|
Move Vomnibar commands to own category on help page.
|
|
Direct keyboard access to custom-search engines via keyword flag
|
|
|
|
|
|
This removes a couple of lines which should have been removed
previously.
|
|
|
|
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.
|
|
"Flags" implies binary toggles. The term "options" seems more
consistent with what's actually going on here.
|
|
This will allow us to use the same search-engine parsing code in the
background page and in content scripts.
|
|
|
|
|
|
This completely decouples settings.coffee from all other background
source files, so that it can (eventually) also be used in the frontend.
|
|
This stops Sync from being referred to from anywhere except
settings.coffee and settings_test.coffee.
|
|
This function does nothing related to Sync, and only affects Settings.
|
|
|
|
|
|
Most of this is just a tidy up of code that's been around for a long
time.
The only difference, however, is that now a key mapping can include
extra data ("extras") after the name of the command. For example,
map s vomnibar.activate keyword=g
Here, and extra property "extras" is added to the command registry:
extras: ["keyword=g"]
This is a first step towards direct vomnibar activation for custom
search.
|
|
completion-on-custom-search-only-merge
Conflicts:
background_scripts/completion.coffee
|