aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/utils.coffee2
-rw-r--r--pages/options.coffee23
-rw-r--r--pages/popup.html26
3 files changed, 26 insertions, 25 deletions
diff --git a/lib/utils.coffee b/lib/utils.coffee
index 8ee948b0..81b0fb49 100644
--- a/lib/utils.coffee
+++ b/lib/utils.coffee
@@ -26,7 +26,7 @@ Utils =
-> id += 1
hasChromePrefix: do ->
- chromePrefixes = [ "about:", "view-source:", "extension:", "chrome://", "chrome-extension:", "data:" ]
+ chromePrefixes = [ "about:", "view-source:", "extension:", "chrome-extension:", "data:" ]
(url) ->
if 0 < url.indexOf ":"
for prefix in chromePrefixes
diff --git a/pages/options.coffee b/pages/options.coffee
index eefac48b..249677be 100644
--- a/pages/options.coffee
+++ b/pages/options.coffee
@@ -254,23 +254,17 @@ initOptionsPage = ->
initPopupPage = ->
chrome.tabs.getSelected null, (tab) ->
exclusions = null
- console.log tab.url
- hasChromePrefix = bgUtils.hasChromePrefix tab.url
document.getElementById("optionsLink").setAttribute "href", chrome.runtime.getURL("pages/options.html")
updateState = ->
- rules = exclusions.readValueFromElement()
- isEnabled = bgExclusions.getRule tab.url, rules
- console.log hasChromePrefix
- $("state").innerHTML =
- if hasChromePrefix
- "Vimium cannot run on this page."
- else if isEnabled and isEnabled.passKeys
- "Excluded: <strong class='code'>#{isEnabled.passKeys}</strong>"
- else if isEnabled
- "Disabled"
+ rule = bgExclusions.getRule tab.url, exclusions.readValueFromElement()
+ $("state").innerHTML = "Vimium will " +
+ if rule and rule.passKeys
+ "exclude <span class='code'>#{rule.passKeys}</span>"
+ else if rule
+ "be disabled"
else
- "Enabled"
+ "be enabled"
onUpdated = ->
$("helpText").innerHTML = "Type <strong>Ctrl-Enter</strong> to save and close."
@@ -280,8 +274,7 @@ initPopupPage = ->
saveOptions = ->
Option.saveOptions()
- $("helpText").innerHTML = "Rules saved."
- $("saveOptions").innerHTML = "No Changes"
+ $("saveOptions").innerHTML = "Saved"
$("saveOptions").disabled = true
chrome.tabs.query { windowId: chrome.windows.WINDOW_ID_CURRENT, active: true }, (tabs) ->
chrome.extension.getBackgroundPage().updateActiveState(tabs[0].id)
diff --git a/pages/popup.html b/pages/popup.html
index dcf123a9..53a75495 100644
--- a/pages/popup.html
+++ b/pages/popup.html
@@ -12,18 +12,26 @@
font-size: 12px;
}
- #helpText, #stateLine { color: #979ca0; }
+ #helpText, #stateLine, #state { color: #979ca0; }
#exclusionAddButton { width: 80px; }
#saveOptions {
- margin-top: 5px; /* Match exclusionAddButton */
+ margin-top: 5px; /* Match #exclusionAddButton */
margin-left: 5px;
float: right;
}
+ #state {
+ padding-left: 5px;
+ background: #f5f5f5;
+ width: 100%;
+ border-bottom: 1px solid #979ca0;
+ margin: 0px;
+ }
+
/* These are overridden from options.css. */
- #endSpace, #footerWrapper { width: 450px; }
+ #endSpace, #footerWrapper { width: 500px; }
#footerWrapper { margin-left: 0px; }
/* Make exclusionScrollBox smaller than on the options page, because there are likely to be fewer
@@ -35,14 +43,16 @@
}
#endSpace { /* Leave space for the fixed footer. */
- min-height: 46px;
- max-height: 46px;
+ min-height: 40px;
+ max-height: 40px;
}
</style>
<script src="options.js"></script>
</head>
<body>
+ <div id="state"></div>
+
<!-- Copied (almost) directly from options.html - start -->
<!-- The only difference is the column headers. -->
<div id="exclusionScrollBox">
@@ -71,11 +81,9 @@
<table>
<tr>
<td id="stateLine" style="width: 99%">
- <span id="state"></span>
- <br/>
- <span id="helpText">These are the matching rules for this page.</span>
+ <span id="helpText">These are rules matching this page.</span>
<br/>
- <a id="optionsLink" target="_blank">Options</a>
+ <a id="optionsLink" target="_blank" tabindex="99999">Options</a>
</td>
<td valign="top">
<button id="exclusionAddButton">Add Rule</button>