bitwarden-estensione-browser/src/background/tabs.background.ts

44 lines
1.4 KiB
TypeScript
Raw Normal View History

import MainBackground from './main.background';
export default class TabsBackground {
private tabs: any;
2019-08-21 15:42:34 +02:00
constructor(private main: MainBackground) {
this.tabs = chrome.tabs;
}
async init() {
if (!this.tabs) {
return;
}
this.tabs.onActivated.addListener(async (activeInfo: any) => {
await this.main.refreshBadgeAndMenu();
this.main.messagingService.send('tabActivated');
this.main.messagingService.send('tabChanged');
});
this.tabs.onReplaced.addListener(async (addedTabId: any, removedTabId: any) => {
if (this.main.onReplacedRan) {
return;
}
this.main.onReplacedRan = true;
2018-08-01 05:24:11 +02:00
await this.main.checkNotificationQueue();
await this.main.refreshBadgeAndMenu();
this.main.messagingService.send('tabReplaced');
this.main.messagingService.send('tabChanged');
});
this.tabs.onUpdated.addListener(async (tabId: any, changeInfo: any, tab: any) => {
if (this.main.onUpdatedRan) {
return;
}
this.main.onUpdatedRan = true;
2018-08-01 05:24:11 +02:00
await this.main.checkNotificationQueue();
await this.main.refreshBadgeAndMenu();
this.main.messagingService.send('tabUpdated');
this.main.messagingService.send('tabChanged');
});
}
}