diff options
| author | Stephen Blott | 2014-11-03 07:15:56 +0000 |
|---|---|---|
| committer | Stephen Blott | 2014-11-03 07:15:56 +0000 |
| commit | c9124b3d3027e13b90a005272c51f0728024105b (patch) | |
| tree | 4b656e8f24b78f13ad9bbc21a943306c7a09cd24 | |
| parent | 01608ce7047e3ff0e53c44842697dded489a60f0 (diff) | |
| download | vimium-c9124b3d3027e13b90a005272c51f0728024105b.tar.bz2 | |
Activate Control-Enter on page popup.
Control-Enter in either text input on the page popup saves changes and
closes the popup.
| -rw-r--r-- | pages/popup.coffee | 24 | ||||
| -rw-r--r-- | pages/popup.html | 15 |
2 files changed, 32 insertions, 7 deletions
diff --git a/pages/popup.coffee b/pages/popup.coffee index ecf683e5..001f0f2e 100644 --- a/pages/popup.coffee +++ b/pages/popup.coffee @@ -3,7 +3,7 @@ originalRule = undefined originalPattern = undefined originalPassKeys = undefined -onLoad = -> +onLoad = (initialize=false) -> document.getElementById("optionsLink").setAttribute "href", chrome.runtime.getURL("pages/options.html") chrome.tabs.getSelected null, (tab) -> isEnabled = chrome.extension.getBackgroundPage().isEnabledForUrl(url: tab.url) @@ -19,8 +19,22 @@ onLoad = -> originalRule = null originalPattern = domain originalPassKeys = "" - document.getElementById("popupPattern").value = originalPattern - document.getElementById("popupPassKeys").value = originalPassKeys + patternElement = document.getElementById("popupPattern") + passKeysElement = document.getElementById("popupPassKeys") + patternElement.value = originalPattern + passKeysElement.value = originalPassKeys + if initialize + # Activate <Ctrl-Enter> to save. + for element in [ patternElement, passKeysElement ] + element.addEventListener "keyup", (event) -> + if event.ctrlKey and event.keyCode == 13 + addExclusionRule() + window.close() + element.addEventListener "focus", -> document.getElementById("helpText").style.display = "block" + element.addEventListener "blur", -> document.getElementById("helpText").style.display = "none" + # Focus passkeys with cursor at the end (but only when creating popup). + passKeysElement.focus() + passKeysElement.setSelectionRange(passKeysElement.value.length, passKeysElement.value.length) onChange() onChange = -> @@ -83,6 +97,6 @@ document.addEventListener "DOMContentLoaded", -> document.getElementById("popupExclude").addEventListener "click", addExclusionRule, false document.getElementById("popupRemove").addEventListener "click", removeExclusionRule, false for field in ["popupPattern", "popupPassKeys"] - for event in ["keyup", "change"] + for event in ["input", "change"] document.getElementById(field).addEventListener event, onChange, false - onLoad() + onLoad true diff --git a/pages/popup.html b/pages/popup.html index 86982eae..691414f2 100644 --- a/pages/popup.html +++ b/pages/popup.html @@ -36,7 +36,7 @@ list-style: none; } - #popupMenu a, #popupMenu a:active, #popupMenu a:visited { + #popupMenu li, #popupMenu a:active, #popupMenu a:visited { color: #3F6EC2; display: block; border-top: 1px solid #DDDDDD; @@ -51,6 +51,14 @@ #optionsLink { font-family : "Helvetica Neue", "Helvetica", "Arial", sans-serif; font-size: 12px; + float: right; + } + #helpText { + color: #979ca0; + font-family : "Helvetica Neue", "Helvetica", "Arial", sans-serif; + font-size: 12px; + float: left; + display: none; } </style> <script src="popup.js"></script> @@ -67,7 +75,10 @@ <div id="popupMenu"> <ul> - <li><a id="optionsLink" target="_blank">Options</a></li> + <li> + <span id="helpText">Type <strong>Ctrl-ENTER</strong> to save and close.</span> + <a id="optionsLink" target="_blank">Options</a> + </li> </ul> </div> </div> |
