aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/background/presenters/IndicatorPresenter.ts8
-rw-r--r--src/background/usecases/CompletionsUseCase.ts6
-rw-r--r--src/background/usecases/LinkUseCase.ts7
3 files changed, 15 insertions, 6 deletions
diff --git a/src/background/presenters/IndicatorPresenter.ts b/src/background/presenters/IndicatorPresenter.ts
index d9a615a..5d9c21f 100644
--- a/src/background/presenters/IndicatorPresenter.ts
+++ b/src/background/presenters/IndicatorPresenter.ts
@@ -3,7 +3,13 @@ export default class IndicatorPresenter {
let path = enabled
? 'resources/enabled_32x32.png'
: 'resources/disabled_32x32.png';
- return browser.browserAction.setIcon({ path });
+ if (typeof browser.browserAction.setIcon === "function") {
+ return browser.browserAction.setIcon({ path });
+ }
+ else {
+ // setIcon not supported on Android
+ return Promise.resolve();
+ }
}
onClick(listener: (arg: browser.tabs.Tab) => void): void {
diff --git a/src/background/usecases/CompletionsUseCase.ts b/src/background/usecases/CompletionsUseCase.ts
index ae1ceed..7f6322e 100644
--- a/src/background/usecases/CompletionsUseCase.ts
+++ b/src/background/usecases/CompletionsUseCase.ts
@@ -52,13 +52,15 @@ export default class CompletionsUseCase {
if (engines.length > 0) {
groups.push({ name: 'Search Engines', items: engines });
}
- } else if (c === 'h') {
+ // browser.history not supported on Android
+ } else if (c === 'h' && typeof browser.history === "object") {
// eslint-disable-next-line no-await-in-loop
let histories = await this.queryHistoryItems(name, keywords);
if (histories.length > 0) {
groups.push({ name: 'History', items: histories });
}
- } else if (c === 'b') {
+ // browser.bookmarks not supported on Android
+ } else if (c === 'b' && typeof browser.bookmarks === "object") {
// eslint-disable-next-line no-await-in-loop
let bookmarks = await this.queryBookmarkItems(name, keywords);
if (bookmarks.length > 0) {
diff --git a/src/background/usecases/LinkUseCase.ts b/src/background/usecases/LinkUseCase.ts
index 2f4df7b..21cf0e7 100644
--- a/src/background/usecases/LinkUseCase.ts
+++ b/src/background/usecases/LinkUseCase.ts
@@ -12,8 +12,9 @@ export default class LinkUseCase {
}
openNewTab(url: string, openerId: number, background: boolean): Promise<any> {
- return this.tabPresenter.create(url, {
- openerTabId: openerId, active: !background
- });
+ // openerTabId not supported on Android
+ let properties = typeof browser.tabs.Tab === "object" ?
+ { openerTabId: openerId, active: !background } : { active: !background };
+ return this.tabPresenter.create(url, properties);
}
}