aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-05-29Verify keyword for custom search-engine activation.Stephen Blott
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.)
2015-05-29Move search-engine parsing to Utils.Stephen Blott
This will allow us to use the same search-engine parsing code in the background page and in content scripts.
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-29Merge pull request #1599 from mrmr1993/settings-refactorStephen Blott
Separate Settings from the background page, and use it directly in options.html/popup.html
2015-05-29Make a check more coffeescript-ymrmr1993
2015-05-29Disable Tween on XML pagesmrmr1993
2015-05-29Also disable all externally-used functions for XML.Stephen Blott
2015-05-29Disable UIComponent for XML documentsmrmr1993
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.
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-29Make Settings explicitly use a cachemrmr1993
The Settings object used by the background page now uses 1 of 3 caches, depending on the context it is available in: * localStorage - in the background page * a copy of localStorage - in non-background extension pages (options.html, popup.html, etc.) * an empty object - in all other pages (where localStorage doesn't point to the extension's localStorage object). For any extension page which is *not* the background page, a copy of localStorage is used instead of true localStorage: * Once localStorage is updated by one background page, the others can only see the updated copy. - Pages with an updated cache can't tell which changes are new, and so don't know which postUpdateHooks to run. * By copying localStorage's contents into a new object, extension pages can still access settings synchronously. - This is especially important to options.html and popup.html; they will not work without it.
2015-05-29Move settings.coffee from background_scripts/ to lib/mrmr1993
2015-05-29Only perform settings migration in the background pagemrmr1993
2015-05-29Move registration of postUpdateHooks to the corresponding source filesmrmr1993
This completely decouples settings.coffee from all other background source files, so that it can (eventually) also be used in the frontend.
2015-05-29Remove all direct calls to Sync, stop exporting itmrmr1993
This stops Sync from being referred to from anywhere except settings.coffee and settings_test.coffee.
2015-05-29Move Sync.storeAndPropagate to Settings.storeAndPropagatemrmr1993
This function does nothing related to Sync, and only affects Settings.
2015-05-29Combine sync.coffee with settings.coffeemrmr1993
2015-05-29Implement pre-population of custom-search keywords.Stephen Blott
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
2015-05-29Pass the command's registry entry to vomnibar commands.Stephen Blott
2015-05-29Pass command's registry entry to content script.Stephen Blott
2015-05-29Rework parsing of custom key mappings.Stephen Blott
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.
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-29Merge pull request #1610 from smblott-github/word-movement-non-englishStephen Blott
Fix word movement for non-English characters.
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 now unnecessary optimisation.Stephen Blott
This optimisation is now unnecessary, because we will *always* show at least one completion suggestion in top spot.
2015-05-28Custom-only: ensure top-ranking completion is always in top slot.Stephen Blott
This ensures that <Tab> can always be used to complete the top-ranking completion.
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-27Merge remote-tracking branch 'upstream/master'Stephen Blott
2015-05-27Remove unintentionally pushed console.log()s.Stephen Blott
2015-05-27Merge pull request #1616 from mrmr1993/detect-inline-inline-fontSize-elementsStephen Blott
Fix for #1554.
2015-05-27Consistent highlighting of search suggestions.Stephen Blott
Also suppress highlighting of matching text in previous suggestions. (It looks odd to have highlighting in some suggestions but not others, with no apparent difference to the user.)
2015-05-27Fix significant typo.Stephen Blott
Fix incorrect property name from 764d70312f292882abe4940adf9fee3d6e834327.
2015-05-27Merge pull request #1690 from smblott-github/do-not-deduplicate-tabsStephen Blott
Two errors fixed...
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-27Merge pull request #1689 from smblott-github/direct-next-previous-tabStephen Blott
Go directly to next/previous tab.
2015-05-27Simplify index calculation.Stephen Blott
2015-05-27Do not de-duplicate tabs vomnibar entries.Stephen Blott
2015-05-27Go directly to next/previous tab.Stephen Blott
This makes nextTab and previousTab go directly to the relevant tab, without visiting intervening tabs -- all of which avoids a nasty flicker for 5J or 5K.
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-27Custom-only: fix comment.Stephen Blott
2015-05-27Custom-only: verify match on query terms alone.Stephen Blott
2015-05-27Custom-only: single-line completions for custom search engines.Stephen Blott
2015-05-27Custom-only: always filter for the custom search engine.Stephen Blott
2015-05-27Custom-only: disable default search completion.Stephen Blott
2015-05-26Merge pull request #1685 from smblott-github/fix-ui_component-race-conditionStephen Blott
Fix UI-Component race condition on start up.
2015-05-26Refactor to avoid potential race condition (cont).Stephen Blott
2015-05-26Merge pull request #1686 from ↵Stephen Blott
smblott-github/change-vomnibar-insert-text-indicator Change vomnibar insert-text indicator.
2015-05-26Change vomnibar insert-text indicator.Stephen Blott
Use a rightwards hooked arrow instead of a small greater-than sign, which according to @philc, renders as a large greater-than sign on Macs, See #1651.
2015-05-26Refactor to avoid potential race condition.Stephen Blott
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.
2015-05-26Add comment noting why we need AsyncDataFetcher.Stephen Blott