A fork of https://github.com/ueokande/vim-vixen
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
717 B
28 lines
717 B
import { injectable } from 'tsyringe'; |
|
import TabPresenter from '../presenters/TabPresenter'; |
|
|
|
@injectable() |
|
export default class LinkUseCase { |
|
constructor( |
|
private tabPresenter: TabPresenter, |
|
) { |
|
} |
|
|
|
openToTab(url: string, tabId: number): Promise<any> { |
|
return this.tabPresenter.open(url, tabId); |
|
} |
|
|
|
async openNewTab( |
|
url: string, openerId: number, background: boolean, |
|
): Promise<any> { |
|
let properties: any = { active: !background }; |
|
|
|
let platform = await browser.runtime.getPlatformInfo(); |
|
if (platform.os !== 'android') { |
|
// openerTabId not supported on Android |
|
properties.openerTabId = openerId; |
|
} |
|
|
|
return this.tabPresenter.create(url, properties); |
|
} |
|
}
|
|
|