aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormrmr19932015-09-13 15:03:04 +0100
committermrmr19932015-09-13 15:03:04 +0100
commit940ab8d62db784c2506222d3c5c6c1117b30fea3 (patch)
treeff5d5af6df4e1e90c9df5ece2c37f05c430cd553
parentd53e0a2f09f704c8006e04123f453e930232d79e (diff)
downloadvimium-940ab8d62db784c2506222d3c5c6c1117b30fea3.tar.bz2
Make <label>s clickable with LinkHints
-rw-r--r--content_scripts/link_hints.coffee2
-rw-r--r--tests/dom_tests/dom_tests.coffee4
2 files changed, 4 insertions, 2 deletions
diff --git a/content_scripts/link_hints.coffee b/content_scripts/link_hints.coffee
index 18c608a5..dae7b14e 100644
--- a/content_scripts/link_hints.coffee
+++ b/content_scripts/link_hints.coffee
@@ -214,6 +214,8 @@ class LinkHintsMode
(element.readOnly and DomUtils.isSelectable element))
when "button", "select"
isClickable ||= not element.disabled
+ when "label"
+ isClickable ||= element.control?
# Elements with tabindex are sometimes useful, but usually not. We can treat them as second class
# citizens when it improves UX, so take special note of them.
diff --git a/tests/dom_tests/dom_tests.coffee b/tests/dom_tests/dom_tests.coffee
index 9d703774..80e39dfa 100644
--- a/tests/dom_tests/dom_tests.coffee
+++ b/tests/dom_tests/dom_tests.coffee
@@ -243,8 +243,8 @@ context "Filtered link hints",
hintMarkers = getHintMarkers()
hintMarkers = getHintMarkers().map (marker) -> marker.textContent.toLowerCase()
# We don't know the actual hint numbers which will be assigned, so we replace them with "N".
- hintMarkers = hintMarkers.map (str) -> str.replace /^[1-5]/, "N"
- assert.equal 5, hintMarkers.length
+ hintMarkers = hintMarkers.map (str) -> str.replace /^[0-9]+/, "N"
+ assert.equal 7, hintMarkers.length
assert.isTrue "N" in hintMarkers
assert.isTrue "N" in hintMarkers
assert.isTrue "N: a label" in hintMarkers