diff --git a/src/browser/browserApi.ts b/src/browser/browserApi.ts index e70807541e..7a9ad88a47 100644 --- a/src/browser/browserApi.ts +++ b/src/browser/browserApi.ts @@ -44,10 +44,12 @@ class BrowserApi { const returnedTabs: any[] = []; tabs.forEach((tab: any) => { + const winIndex = safari.application.browserWindows.indexOf(tab.browserWindow); + const tabIndex = tab.browserWindow.tabs.indexOf(tab); returnedTabs.push({ - id: BrowserApi.getTabOrWindowId(tab), - index: tab.browserWindow.tabs.indexOf(tab), - windowId: BrowserApi.getTabOrWindowId(tab.browserWindow), + id: winIndex + '_' + tabIndex, + index: tabIndex, + windowId: winIndex, title: tab.title, active: tab === tab.browserWindow.activeTab, url: tab.url || 'about:blank', @@ -154,22 +156,6 @@ class BrowserApi { // TODO } } - - private static getTabOrWindowId(tabOrWindow: any) { - if (tabOrWindow.id) { - return tabOrWindow.id; - } - - if (!tabOrWindow.BitwardenCachedId) { - tabOrWindow.BitwardenCachedId = BrowserApi.randomInt(1, Number.MAX_SAFE_INTEGER); - } - - return tabOrWindow.BitwardenCachedId; - } - - private static randomInt(min: number, max: number): number { - return Math.floor(Math.random() * (max - min + 1)) + min; - } } export { BrowserApi };