Merge branch 'improve-follow'

jh-changes
Shin'ya Ueoka 7 years ago
commit c5aaaa948f
  1. 1
      src/content/follow.js
  2. 3
      src/content/hint.css
  3. 22
      src/content/index.js

@ -142,6 +142,7 @@ export default class Follow {
return style.display !== 'none' &&
style.visibility !== 'hidden' &&
element.type !== 'hidden' &&
element.offsetHeight > 0 &&
Follow.inWindow(window, element);
});
return filtered;

@ -4,4 +4,7 @@
font-weight: bold;
position: absolute;
text-transform: uppercase;
z-index: 100000;
font-size: 12px;
color: black;
}

@ -9,15 +9,25 @@ import messages from '../messages';
consoleFrames.initialize(window.document);
const startFollows = (newTab) => {
let follow = new Follow(window.document, newTab);
let follow = new Follow(window.document);
follow.onActivated((element) => {
switch (element.tagName.toLowerCase()) {
case 'a':
return browser.runtime.sendMessage({
type: messages.OPEN_URL,
url: element.href,
newTab
});
if (newTab) {
// getAttribute() to avoid to resolve absolute path
let href = element.getibute('href');
// eslint-disable-next-line no-script-url
if (!href || href === '#' || href.startsWith('javascript:')) {
return;
}
return browser.runtime.sendMessage({
type: messages.OPEN_URL,
url: element.href,
newTab
});
}
return element.click();
case 'input':
switch (element.type) {
case 'file':