diff options
| author | mrmr1993 | 2017-11-09 15:47:22 +0000 |
|---|---|---|
| committer | mrmr1993 | 2017-11-09 15:47:22 +0000 |
| commit | a946edb5294fab414d5c2afa218e9f9e889394ce (patch) | |
| tree | 40b60a51f2e100211b654707796c224b3bc99bb5 | |
| parent | 56c2a89613199bc0369a66d19bf848e14b019671 (diff) | |
| download | vimium-a946edb5294fab414d5c2afa218e9f9e889394ce.tar.bz2 | |
Use HTML labels accessor to get link hint labels for input elements
| -rw-r--r-- | content_scripts/link_hints.coffee | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/content_scripts/link_hints.coffee b/content_scripts/link_hints.coffee index 9145454a..2fa27d26 100644 --- a/content_scripts/link_hints.coffee +++ b/content_scripts/link_hints.coffee @@ -814,25 +814,10 @@ LocalHints = hint.rect.left += left if Settings.get "filterLinkHints" - @withLabelMap (labelMap) => - extend hint, @generateLinkText labelMap, hint for hint in localHints + extend hint, @generateLinkText hint for hint in localHints localHints - # Generate a map of input element => label text, call a callback with it. - withLabelMap: (callback) -> - labelMap = {} - labels = document.querySelectorAll "label" - for label in labels - forElement = label.getAttribute "for" - if forElement - labelText = label.textContent.trim() - # Remove trailing ":" commonly found in labels. - if labelText[labelText.length-1] == ":" - labelText = labelText.substr 0, labelText.length-1 - labelMap[forElement] = labelText - callback labelMap - - generateLinkText: (labelMap, hint) -> + generateLinkText: (hint) -> element = hint.element linkText = "" showLinkText = false @@ -840,8 +825,11 @@ LocalHints = nodeName = element.nodeName.toLowerCase() if nodeName == "input" - if labelMap[element.id] - linkText = labelMap[element.id] + if element.labels?.length > 0 + linkText = element.labels[0].textContent.trim() + # Remove trailing ":" commonly found in labels. + if linkText[linkText.length-1] == ":" + linkText = linkText.substr 0, linkText.length-1 showLinkText = true else if element.getAttribute("type")?.toLowerCase() == "file" linkText = "Choose File" |
