diff options
| author | Stephen Blott | 2014-11-02 09:16:13 +0000 |
|---|---|---|
| committer | Stephen Blott | 2014-11-02 09:16:13 +0000 |
| commit | d95a79eaf58b33e350cf12442154815131727a73 (patch) | |
| tree | 481373aa92e01b49951f554bb87b836c720d7a04 | |
| parent | 3bae8f0f8fc012720001caced69999160d9005fa (diff) | |
| parent | 474bcb7552dd538978e546f02b2bff1d7204aa34 (diff) | |
| download | vimium-d95a79eaf58b33e350cf12442154815131727a73.tar.bz2 | |
Merge branch 'customNewTabPage' of github.com:mrmr1993/vimium into mrmr1993-customNewTabPage
| -rw-r--r-- | background_scripts/main.coffee | 2 | ||||
| -rw-r--r-- | background_scripts/settings.coffee | 1 | ||||
| -rw-r--r-- | pages/blank.html | 8 | ||||
| -rw-r--r-- | pages/content_script_loader.coffee | 28 | ||||
| -rw-r--r-- | pages/options.coffee | 1 | ||||
| -rw-r--r-- | pages/options.html | 22 |
6 files changed, 51 insertions, 11 deletions
diff --git a/background_scripts/main.coffee b/background_scripts/main.coffee index 898f46f1..5c5d3180 100644 --- a/background_scripts/main.coffee +++ b/background_scripts/main.coffee @@ -231,7 +231,7 @@ moveTab = (callback, direction) -> # These are commands which are bound to keystroke which must be handled by the background page. They are # mapped in commands.coffee. BackgroundCommands = - createTab: (callback) -> chrome.tabs.create({ url: "chrome://newtab" }, (tab) -> callback()) + createTab: (callback) -> chrome.tabs.create({url: Settings.get("newTabUrl")}, (tab) -> callback()) duplicateTab: (callback) -> chrome.tabs.getSelected(null, (tab) -> chrome.tabs.duplicate(tab.id) diff --git a/background_scripts/settings.coffee b/background_scripts/settings.coffee index 7150fcba..d6e8fcde 100644 --- a/background_scripts/settings.coffee +++ b/background_scripts/settings.coffee @@ -105,6 +105,7 @@ root.Settings = Settings = searchUrl: "http://www.google.com/search?q=" # put in an example search engine searchEngines: "w: http://www.wikipedia.org/w/index.php?title=Special:Search&search=%s" + newTabUrl: "chrome://newtab" settingsVersion: Utils.getCurrentVersion() diff --git a/pages/blank.html b/pages/blank.html new file mode 100644 index 00000000..aa9e762a --- /dev/null +++ b/pages/blank.html @@ -0,0 +1,8 @@ +<html> + <head> + <title>New Tab Page</title> + <script src="content_script_loader.js"></script> + </head> + <body> + </body> +</html> diff --git a/pages/content_script_loader.coffee b/pages/content_script_loader.coffee new file mode 100644 index 00000000..5058bb7b --- /dev/null +++ b/pages/content_script_loader.coffee @@ -0,0 +1,28 @@ +injectContentScripts = -> + manifest = chrome.runtime.getManifest() + content_scripts = manifest.content_scripts + + insertLocation = document.head.firstChild + + for scriptInfo in content_scripts + continue if scriptInfo.matches.indexOf("<all_urls>") == -1 + + if scriptInfo.js + for script in scriptInfo.js + scriptElement = document.createElement "script" + scriptElement.type = "text/javascript" + scriptElement.async = false # Don't load out of order! + scriptElement.src = chrome.runtime.getURL script + + insertLocation.parentElement.insertBefore scriptElement, insertLocation + + if scriptInfo.css + for style in scriptInfo.css + styleElement = document.createElement "link" + styleElement.rel = "stylesheet" + styleElement.type = "text/css" + styleElement.href = chrome.runtime.getURL style + + insertLocation.parentElement.insertBefore styleElement, insertLocation + +injectContentScripts() diff --git a/pages/options.coffee b/pages/options.coffee index 7f374f5d..5590774b 100644 --- a/pages/options.coffee +++ b/pages/options.coffee @@ -179,6 +179,7 @@ document.addEventListener "DOMContentLoaded", -> keyMappings: TextOption linkHintCharacters: NonEmptyTextOption linkHintNumbers: NonEmptyTextOption + newTabUrl: NonEmptyTextOption nextPatterns: NonEmptyTextOption previousPatterns: NonEmptyTextOption regexFindMode: CheckBoxOption diff --git a/pages/options.html b/pages/options.html index fb904316..c3d3a4d0 100644 --- a/pages/options.html +++ b/pages/options.html @@ -1,15 +1,7 @@ <html> <head> <title>Vimium Options</title> - <script src="../lib/utils.js"></script> - <script src="../lib/keyboard_utils.js"></script> - <script src="../lib/dom_utils.js"></script> - <script src="../lib/handler_stack.js"></script> - <script src="../lib/clipboard.js"></script> - <script src="../content_scripts/link_hints.js"></script> - <script src="../content_scripts/vomnibar.js"></script> - <script src="../content_scripts/scroller.js"></script> - <script src="../content_scripts/vimium_frontend.js"></script> + <script src="content_script_loader.js"></script> <style type="text/css" media="screen"> body { font: 14px "DejaVu Sans", "Arial", sans-serif; @@ -199,7 +191,6 @@ margin-right: 0px; } </style> - <link rel="stylesheet" type="text/css" href="../content_scripts/vimium.css" /> <script type="text/javascript" src="options.js"></script> @@ -365,6 +356,17 @@ unmapAll </td> </tr> <tr> + <td class="caption">New Tab Page</td> + <td verticalAlign="top"> + <div class="help"> + <div class="example"> + Choose a custom page (or pages/blank.html for a blank, Vimium-enabled page) for Vimium to open with the "create new tab" command.<br /> + </div> + </div> + <input id="newTabUrl" type="text" /> + </td> + </tr> + <tr> <td class="caption">Default Search<br/>Engine</td> <td verticalAlign="top"> <div class="help"> |
