diff options
| -rw-r--r-- | background_page.html | 7 | ||||
| -rw-r--r-- | bookmarks.js | 131 | ||||
| -rw-r--r-- | commands.js | 7 | ||||
| -rw-r--r-- | completionDialog.js | 145 | ||||
| -rw-r--r-- | manifest.json | 4 | ||||
| -rw-r--r-- | options.html | 2 |
6 files changed, 1 insertions, 295 deletions
diff --git a/background_page.html b/background_page.html index 12ef158e..755233d2 100644 --- a/background_page.html +++ b/background_page.html @@ -27,7 +27,6 @@ returnScrollPosition: handleReturnScrollPosition, getCurrentTabUrl: getCurrentTabUrl, settings: handleSettings, - getBookmarks: getBookmarks, filterCompleter: filterCompleter, }; @@ -303,12 +302,6 @@ } } - function getBookmarks(args, port) { - chrome.bookmarks.search(args.query, function(bookmarks) { - port.postMessage({bookmarks:bookmarks}) - }) - } - function refreshCompleter(request) { completers[request.name].refresh(); } diff --git a/bookmarks.js b/bookmarks.js deleted file mode 100644 index 85d12aac..00000000 --- a/bookmarks.js +++ /dev/null @@ -1,131 +0,0 @@ -function activateBookmarkFindModeToOpenInNewTab() { - BookmarkMode.openInNewTab(true); - BookmarkMode.enable(); -} - -function activateBookmarkFindMode() { - BookmarkMode.openInNewTab(false); - BookmarkMode.enable(); -} - -(function() { - // so when they let go of shift after hitting capital "B" it won't - // untoggle it - var shiftWasPressedWhileToggled = false; - - var BookmarkMode = { - isEnabled: function() { - return this.enabled; - }, - openInNewTab: function(newTab) { - this.newTab = newTab; - }, - invertNewTabSetting: function() { - this.newTab = !this.newTab; - if(this.isEnabled()) { - this.renderHUD(); - } - }, - enable: function() { - this.enabled = true; - - if(!this.initialized) { - initialize.call(this); - } - - handlerStack.push({ - keydown: this.onKeydown, - keypress: this.onKeypress, - keyup: this.onKeyup - }); - - this.renderHUD(); - this.completionDialog.show(); - }, - disable: function() { - this.enabled = false; - this.completionDialog.hide(); - handlerStack.pop(); - HUD.hide(); - }, - renderHUD: function() { - if (this.newTab) - HUD.show("Open bookmark in new tab"); - else - HUD.show("Open bookmark in current tab"); - } - - } - - // private method - var initialize = function() { - var self = this; - self.initialized = true; - - self.completionDialog = new CompletionDialog({ - source: findBookmarks, - - onSelect: function(selection) { - var url = selection.url; - var isABookmarklet = function(url) { return url.indexOf("javascript:") === 0; } - - if (isABookmarklet(url)) - window.location = url; - else if (!self.newTab) - chrome.extension.sendRequest({ handler: "openUrlInCurrentTab", url: url }); - else - chrome.extension.sendRequest({ handler: "openUrlInNewTab", url: url }); - - self.disable(); - }, - - renderOption: function(searchString, selection) { - var displaytext = selection.title + " (" + selection.url + ")" - if (displaytext.length > 70) - displaytext = displaytext.substr(0, 70) + "..."; - - return displaytext.split(new RegExp(searchString, "i")).join("<strong>"+searchString+"</strong>") - }, - - initialSearchText: "Type a bookmark name or URL" - }) - - self.onKeydown = function(event) { - // shift key will toggle between new tab/same tab - if (event.keyCode == keyCodes.shiftKey) { - self.invertNewTabSetting(); - shiftWasPressedWhileToggled = true; - return; - } - - var keyChar = getKeyChar(event); - if (!keyChar) - return; - - // TODO(philc): Ignore keys that have modifiers. - if (isEscape(event)) - self.disable(); - }; - - self.onKeypress = function(event) { return false; } - - self.onKeyup = function(event) { - // shift key will toggle between new tab/same tab - if (event.keyCode == keyCodes.shiftKey && shiftWasPressedWhileToggled) { - self.invertNewTabSetting(); - shiftWasPressedWhileToggled = false; - } - }; - } - - var findBookmarks = function(searchString, callback) { - var port = chrome.extension.connect({ name: "getBookmarks" }) ; - port.onMessage.addListener(function(msg) { - callback(msg.bookmarks); - port = null; - }) - port.postMessage({query:searchString}); - }; - - window.BookmarkMode = BookmarkMode; -}()) diff --git a/commands.js b/commands.js index 727bf3c7..269deb14 100644 --- a/commands.js +++ b/commands.js @@ -141,9 +141,6 @@ function clearKeyMappingsAndSetDefaults() { "x": "removeTab", "X": "restoreTab", - "b": "activateBookmarkFindMode", - "B": "activateBookmarkFindModeToOpenInNewTab", - "o": "fuzzyMode.activateAll", "O": "fuzzyMode.activateAllNewTab", @@ -213,9 +210,6 @@ var commandDescriptions = { removeTab: ["Close current tab", { background: true }], restoreTab: ["Restore closed tab", { background: true }], - activateBookmarkFindMode: ["Open a bookmark in the current tab"], - activateBookmarkFindModeToOpenInNewTab: ["Open a bookmark in a new tab"], - 'fuzzyMode.activateAll': ["Open URL, bookmark, history entry or a custom search (fuzzy)"], 'fuzzyMode.activateAllNewTab': ["Open URL, bookmark, history entry or a custom search (fuzzy, new tab)"], 'fuzzyMode.activateTabs': ["Go to a tab in this window (fuzzy)"], @@ -238,7 +232,6 @@ var commandGroups = { "openCopiedUrlInCurrentTab", "openCopiedUrlInNewTab", "goUp", "enterInsertMode", "focusInput", "linkHints.activateMode", "linkHints.activateModeToOpenInNewTab", "linkHints.activateModeWithQueue", - "activateBookmarkFindMode", "activateBookmarkFindModeToOpenInNewTab", "fuzzyMode.activateAll", "fuzzyMode.activateAllNewTab", "fuzzyMode.activateTabs", "goPrevious", "goNext", "nextFrame"], findCommands: ["enterFindMode", "performFind", "performBackwardsFind"], diff --git a/completionDialog.js b/completionDialog.js deleted file mode 100644 index eec089a0..00000000 --- a/completionDialog.js +++ /dev/null @@ -1,145 +0,0 @@ -(function(window, document) { - - var CompletionDialog = function(options) { this.options = options; } - - CompletionDialog.prototype = { - show: function() { - if (!this.isShown) { - this.isShown=true; - this.query = []; - if (!this.initialized) { - initialize.call(this); - this.initialized = true; - } - handlerStack.push({ keydown: this.onKeydown }); - render.call(this); - clearInterval(this._tweenId); - this.container.style.display = "block"; - this._tweenId = Tween.fade(this.container, 1.0, 150); - } - }, - - hide: function() { - if (this.isShown) { - handlerStack.pop(); - this.isShown = false; - this.currentSelection = 0; - clearInterval(this._tweenId); - var completionContainer = this.container; - var cssHide = function() { completionContainer.style.display = "none"; } - this._tweenId = Tween.fade(this.container, 0, 150, cssHide); - } - }, - - getDisplayElement: function() { - if (!this.container) - this.container = createDivInside(document.body); - return this.container; - }, - - getQueryString: function() { return this.query.join(""); } - } - - var initialize = function() { - var self = this; - - self.currentSelection = 0; - - self.onKeydown = function(event) { - var keyChar = getKeyChar(event); - // change selection with up or Shift-Tab - if (keyChar==="up" || (event.keyCode == 9 && event.shiftKey)) { - if (self.currentSelection>0) { - self.currentSelection-=1; - } - render.call(self,self.getQueryString(), self.completions); - } - // change selection with down or Tab - else if (keyChar==="down" || (event.keyCode == 9 && !event.shiftKey)) { - if (self.currentSelection < self.completions.length - 1) { - self.currentSelection += 1; - } - render.call(self,self.getQueryString(), self.completions); - } - else if (event.keyCode == keyCodes.enter) { - self.options.onSelect(self.completions[self.currentSelection]); - } - else if (event.keyCode == keyCodes.backspace || event.keyCode == keyCodes.deleteKey) { - if (self.query.length > 0) { - self.query.pop(); - self.options.source(self.getQueryString(), function(completions) { - render.call(self, self.getQueryString(), completions); - }) - } - } - else if (keyChar!=="left" && keyChar!="right") { - self.query.push(keyChar); - self.options.source(self.getQueryString(), function(completions) { - render.call(self, self.getQueryString(), completions); - }); - } - - event.stopPropagation(); - event.preventDefault(); - return true; - } - } - - var render = function(searchString, completions) { - if (this.isShown) { - this.searchString = searchString; - this.completions = completions; - var container = this.getDisplayElement(); - clearChildren(container); - container.style.display = ""; - - if (searchString === undefined) { - this.container.className = "vimiumReset vimium-dialog"; - createDivInside(container).innerHTML = this.options.initialSearchText || "Begin typing"; - } - else { - this.container.className = "vimiumReset vimium-dialog vimium-completions"; - var searchBar = createDivInside(container); - searchBar.innerHTML=searchString; - searchBar.className="vimiumReset vimium-searchBar"; - - searchResults = createDivInside(container); - searchResults.className="vimiumReset vimium-searchResults"; - if (completions.length<=0) { - var resultDiv = createDivInside(searchResults); - resultDiv.className="vimiumReset vimium-noResults"; - resultDiv.innerHTML="No results found"; - } - else { - for (var i = 0; i < completions.length; i++) { - var resultDiv = createDivInside(searchResults); - if (i === this.currentSelection) { - resultDiv.className="vimiumReset vimium-selected"; - } - resultDiv.innerHTML=this.options.renderOption(searchString, completions[i]); - } - } - } - - container.style.top = Math.max(0, (window.innerHeight/2-container.clientHeight/2)) + "px"; - container.style.left = (window.innerWidth/2-container.clientWidth/2) + "px"; - } - }; - var createDivInside = function(parent) { - var element = document.createElement("div"); - element.className = "vimiumReset"; - parent.appendChild(element); - return element; - } - - var clearChildren = function(elem) { - if (elem.hasChildNodes()) { - while (elem.childNodes.length >= 1) { - elem.removeChild(elem.firstChild); - } - } - } - - window.CompletionDialog = CompletionDialog; - -}(window, document)) diff --git a/manifest.json b/manifest.json index a14e2fef..78b3a088 100644 --- a/manifest.json +++ b/manifest.json @@ -24,9 +24,7 @@ "lib/completion.js", "linkHints.js", "fuzzyMode.js", - "vimiumFrontend.js", - "completionDialog.js", - "bookmarks.js" + "vimiumFrontend.js" ], "css": ["vimium.css"], "run_at": "document_start", diff --git a/options.html b/options.html index 399ad311..64399dc9 100644 --- a/options.html +++ b/options.html @@ -7,8 +7,6 @@ <script src="lib/clipboard.js"></script> <script src="linkHints.js"></script> <script src="vimiumFrontend.js"></script> - <script src="completionDialog.js"></script> - <script src="bookmarks.js"></script> <style type="text/css" media="screen"> body { font-family:"helvetica neue", "helvetica", "arial", "sans"; |
