diff options
Diffstat (limited to 'src/content/presenters')
-rw-r--r-- | src/content/presenters/ConsoleFramePresenter.ts | 4 | ||||
-rw-r--r-- | src/content/presenters/FindPresenter.ts | 8 | ||||
-rw-r--r-- | src/content/presenters/FocusPresenter.ts | 8 | ||||
-rw-r--r-- | src/content/presenters/FollowPresenter.ts | 32 | ||||
-rw-r--r-- | src/content/presenters/Hint.ts | 12 | ||||
-rw-r--r-- | src/content/presenters/NavigationPresenter.ts | 4 | ||||
-rw-r--r-- | src/content/presenters/ScrollPresenter.ts | 50 |
7 files changed, 59 insertions, 59 deletions
diff --git a/src/content/presenters/ConsoleFramePresenter.ts b/src/content/presenters/ConsoleFramePresenter.ts index 62db2bb..63c78fb 100644 --- a/src/content/presenters/ConsoleFramePresenter.ts +++ b/src/content/presenters/ConsoleFramePresenter.ts @@ -6,7 +6,7 @@ export default interface ConsoleFramePresenter { export class ConsoleFramePresenterImpl implements ConsoleFramePresenter { initialize(): void { - let iframe = document.createElement('iframe'); + const iframe = document.createElement('iframe'); iframe.src = browser.runtime.getURL('build/console.html'); iframe.id = 'vimvixen-console-frame'; iframe.className = 'vimvixen-console-frame'; @@ -14,7 +14,7 @@ export class ConsoleFramePresenterImpl implements ConsoleFramePresenter { } blur(): void { - let ele = document.getElementById('vimvixen-console-frame'); + const ele = document.getElementById('vimvixen-console-frame'); if (!ele) { throw new Error('console frame not created'); } diff --git a/src/content/presenters/FindPresenter.ts b/src/content/presenters/FindPresenter.ts index f171d2f..98d8088 100644 --- a/src/content/presenters/FindPresenter.ts +++ b/src/content/presenters/FindPresenter.ts @@ -26,13 +26,13 @@ declare var window: MyWindow; export class FindPresenterImpl implements FindPresenter { find(keyword: string, backwards: boolean): boolean { - let caseSensitive = false; - let wrapScan = true; + const caseSensitive = false; + const wrapScan = true; // NOTE: aWholeWord dows not implemented, and aSearchInFrames does not work // because of same origin policy - let found = window.find(keyword, caseSensitive, backwards, wrapScan); + const found = window.find(keyword, caseSensitive, backwards, wrapScan); if (found) { return found; } @@ -42,7 +42,7 @@ export class FindPresenterImpl implements FindPresenter { } clearSelection(): void { - let sel = window.getSelection(); + const sel = window.getSelection(); if (sel) { sel.removeAllRanges(); } diff --git a/src/content/presenters/FocusPresenter.ts b/src/content/presenters/FocusPresenter.ts index 7e20cd6..842c41e 100644 --- a/src/content/presenters/FocusPresenter.ts +++ b/src/content/presenters/FocusPresenter.ts @@ -6,10 +6,10 @@ export default interface FocusPresenter { export class FocusPresenterImpl implements FocusPresenter { focusFirstElement(): boolean { - let inputTypes = ['email', 'number', 'search', 'tel', 'text', 'url']; - let inputSelector = inputTypes.map(type => `input[type=${type}]`).join(','); - let targets = window.document.querySelectorAll(inputSelector + ',textarea'); - let target = Array.from(targets).find(doms.isVisible); + const inputTypes = ['email', 'number', 'search', 'tel', 'text', 'url']; + const inputSelector = inputTypes.map(type => `input[type=${type}]`).join(','); + const targets = window.document.querySelectorAll(inputSelector + ',textarea'); + const target = Array.from(targets).find(doms.isVisible); if (target instanceof HTMLInputElement) { target.focus(); return true; diff --git a/src/content/presenters/FollowPresenter.ts b/src/content/presenters/FollowPresenter.ts index 0132621..fef8140 100644 --- a/src/content/presenters/FollowPresenter.ts +++ b/src/content/presenters/FollowPresenter.ts @@ -23,12 +23,12 @@ const inViewport = ( viewSize: Size, framePosition: Point, ): boolean => { - let { + const { top, left, bottom, right } = doms.viewportRect(element); - let doc = win.document; - let frameWidth = doc.documentElement.clientWidth; - let frameHeight = doc.documentElement.clientHeight; + const doc = win.document; + const frameWidth = doc.documentElement.clientWidth; + const frameHeight = doc.documentElement.clientHeight; if (right < 0 || bottom < 0 || top > frameHeight || left > frameWidth) { // out of frame @@ -47,10 +47,10 @@ const isAriaHiddenOrAriaDisabled = (win: Window, element: Element): boolean => { if (!element || win.document.documentElement === element) { return false; } - for (let attr of ['aria-hidden', 'aria-disabled']) { - let value = element.getAttribute(attr); + for (const attr of ['aria-hidden', 'aria-disabled']) { + const value = element.getAttribute(attr); if (value !== null) { - let hidden = value.toLowerCase(); + const hidden = value.toLowerCase(); if (hidden === '' || hidden === 'true') { return true; } @@ -79,15 +79,15 @@ export class FollowPresenterImpl implements FollowPresenter { } getTargetCount(viewSize: Size, framePosition: Point): number { - let targets = this.getTargets(viewSize, framePosition); + const targets = this.getTargets(viewSize, framePosition); return targets.length; } createHints(viewSize: Size, framePosition: Point, tags: string[]): void { - let targets = this.getTargets(viewSize, framePosition); - let min = Math.min(targets.length, tags.length); + const targets = this.getTargets(viewSize, framePosition); + const min = Math.min(targets.length, tags.length); for (let i = 0; i < min; ++i) { - let target = targets[i]; + const target = targets[i]; if (target instanceof HTMLAnchorElement || target instanceof HTMLAreaElement) { this.hints.push(new LinkHint(target, tags[i])); @@ -98,8 +98,8 @@ export class FollowPresenterImpl implements FollowPresenter { } filterHints(prefix: string): void { - let shown = this.hints.filter(h => h.getTag().startsWith(prefix)); - let hidden = this.hints.filter(h => !h.getTag().startsWith(prefix)); + const shown = this.hints.filter(h => h.getTag().startsWith(prefix)); + const hidden = this.hints.filter(h => !h.getTag().startsWith(prefix)); shown.forEach(h => h.show()); hidden.forEach(h => h.hide()); @@ -115,9 +115,9 @@ export class FollowPresenterImpl implements FollowPresenter { } private getTargets(viewSize: Size, framePosition: Point): HTMLElement[] { - let all = window.document.querySelectorAll(TARGET_SELECTOR); - let filtered = Array.prototype.filter.call(all, (element: HTMLElement) => { - let style = window.getComputedStyle(element); + const all = window.document.querySelectorAll(TARGET_SELECTOR); + const filtered = Array.prototype.filter.call(all, (element: HTMLElement) => { + const style = window.getComputedStyle(element); // AREA's 'display' in Browser style is 'none' return (element.tagName === 'AREA' || style.display !== 'none') && diff --git a/src/content/presenters/Hint.ts b/src/content/presenters/Hint.ts index 60c0f4c..44b8185 100644 --- a/src/content/presenters/Hint.ts +++ b/src/content/presenters/Hint.ts @@ -6,7 +6,7 @@ interface Point { } const hintPosition = (element: Element): Point => { - let { left, top, right, bottom } = doms.viewportRect(element); + const { left, top, right, bottom } = doms.viewportRect(element); if (element.tagName !== 'AREA') { return { x: left, y: top }; @@ -26,15 +26,15 @@ export default abstract class Hint { constructor(target: HTMLElement, tag: string) { this.tag = tag; - let doc = target.ownerDocument; + const doc = target.ownerDocument; if (doc === null) { throw new TypeError('ownerDocument is null'); } - let { x, y } = hintPosition(target); - let { scrollX, scrollY } = window; + const { x, y } = hintPosition(target); + const { scrollX, scrollY } = window; - let hint = doc.createElement('span'); + const hint = doc.createElement('span'); hint.className = 'vimvixen-hint'; hint.textContent = tag; hint.style.left = x + scrollX + 'px'; @@ -95,7 +95,7 @@ export class InputHint extends Hint { } activate(): void { - let target = this.target; + const target = this.target; switch (target.tagName.toLowerCase()) { case 'input': switch ((target as HTMLInputElement).type) { diff --git a/src/content/presenters/NavigationPresenter.ts b/src/content/presenters/NavigationPresenter.ts index 11d96ec..951e62a 100644 --- a/src/content/presenters/NavigationPresenter.ts +++ b/src/content/presenters/NavigationPresenter.ts @@ -49,7 +49,7 @@ export class NavigationPresenterImpl implements NavigationPresenter { // Code common to linkPrev and linkNext which navigates to the specified page. private linkRel(rel: 'prev' | 'next'): void { - let link = selectLast<HTMLLinkElement>(`link[rel~=${rel}][href]`); + const link = selectLast<HTMLLinkElement>(`link[rel~=${rel}][href]`); if (link) { window.location.href = link.href; return; @@ -57,7 +57,7 @@ export class NavigationPresenterImpl implements NavigationPresenter { const pattern = REL_PATTERN[rel]; - let a = selectLast<HTMLAnchorElement>(`a[rel~=${rel}][href]`) || + const a = selectLast<HTMLAnchorElement>(`a[rel~=${rel}][href]`) || // `innerText` is much slower than `textContent`, but produces much better // (i.e. less unexpected) results selectLast('a[href]', lnk => pattern.test(lnk.innerText)); diff --git a/src/content/presenters/ScrollPresenter.ts b/src/content/presenters/ScrollPresenter.ts index e83f172..387ab62 100644 --- a/src/content/presenters/ScrollPresenter.ts +++ b/src/content/presenters/ScrollPresenter.ts @@ -8,7 +8,7 @@ let scrolling = false; let lastTimeoutId: number | null = null; const isScrollableStyle = (element: Element): boolean => { - let { overflowX, overflowY } = window.getComputedStyle(element); + const { overflowX, overflowY } = window.getComputedStyle(element); return !(overflowX !== 'scroll' && overflowX !== 'auto' && overflowY !== 'scroll' && overflowY !== 'auto'); }; @@ -27,9 +27,9 @@ const findScrollable = (element: Element): Element | null => { return element; } - let children = Array.from(element.children).filter(doms.isVisible); - for (let child of children) { - let scrollable = findScrollable(child); + const children = Array.from(element.children).filter(doms.isVisible); + for (const child of children) { + const scrollable = findScrollable(child); if (scrollable) { return scrollable; } @@ -44,7 +44,7 @@ const scrollTarget = () => { if (isOverflowed(window.document.body)) { return window.document.body; } - let target = findScrollable(window.document.documentElement); + const target = findScrollable(window.document.documentElement); if (target) { return target; } @@ -79,8 +79,8 @@ class Scroller { } scrollBy(x: number, y: number): void { - let left = this.element.scrollLeft + x; - let top = this.element.scrollTop + y; + const left = this.element.scrollLeft + x; + const top = this.element.scrollTop + y; this.scrollTo(left, top); } @@ -110,12 +110,12 @@ export default interface ScrollPresenter { export class ScrollPresenterImpl { getScroll(): Point { - let target = scrollTarget(); + const target = scrollTarget(); return { x: target.scrollLeft, y: target.scrollTop }; } scrollVertically(count: number, smooth: boolean): void { - let target = scrollTarget(); + const target = scrollTarget(); let delta = SCROLL_DELTA_Y * count; if (scrolling) { delta = SCROLL_DELTA_Y * count * 4; @@ -124,7 +124,7 @@ export class ScrollPresenterImpl { } scrollHorizonally(count: number, smooth: boolean): void { - let target = scrollTarget(); + const target = scrollTarget(); let delta = SCROLL_DELTA_X * count; if (scrolling) { delta = SCROLL_DELTA_X * count * 4; @@ -133,8 +133,8 @@ export class ScrollPresenterImpl { } scrollPages(count: number, smooth: boolean): void { - let target = scrollTarget(); - let height = target.clientHeight; + const target = scrollTarget(); + const height = target.clientHeight; let delta = height * count; if (scrolling) { delta = height * count; @@ -143,35 +143,35 @@ export class ScrollPresenterImpl { } scrollTo(x: number, y: number, smooth: boolean): void { - let target = scrollTarget(); + const target = scrollTarget(); new Scroller(target, smooth).scrollTo(x, y); } scrollToTop(smooth: boolean): void { - let target = scrollTarget(); - let x = target.scrollLeft; - let y = 0; + const target = scrollTarget(); + const x = target.scrollLeft; + const y = 0; new Scroller(target, smooth).scrollTo(x, y); } scrollToBottom(smooth: boolean): void { - let target = scrollTarget(); - let x = target.scrollLeft; - let y = target.scrollHeight; + const target = scrollTarget(); + const x = target.scrollLeft; + const y = target.scrollHeight; new Scroller(target, smooth).scrollTo(x, y); } scrollToHome(smooth: boolean): void { - let target = scrollTarget(); - let x = 0; - let y = target.scrollTop; + const target = scrollTarget(); + const x = 0; + const y = target.scrollTop; new Scroller(target, smooth).scrollTo(x, y); } scrollToEnd(smooth: boolean): void { - let target = scrollTarget(); - let x = target.scrollWidth; - let y = target.scrollTop; + const target = scrollTarget(); + const x = target.scrollWidth; + const y = target.scrollTop; new Scroller(target, smooth).scrollTo(x, y); } } |