mirror of
https://github.com/bitwarden/browser
synced 2025-12-14 07:13:32 +00:00
[PM-4735] - Refactor event handling of the browser close listener (#16798)
This commit is contained in:
@@ -6,7 +6,7 @@ import {
|
|||||||
filter,
|
filter,
|
||||||
firstValueFrom,
|
firstValueFrom,
|
||||||
fromEvent,
|
fromEvent,
|
||||||
fromEventPattern,
|
map,
|
||||||
merge,
|
merge,
|
||||||
Observable,
|
Observable,
|
||||||
Subject,
|
Subject,
|
||||||
@@ -28,6 +28,7 @@ import {
|
|||||||
import { Utils } from "@bitwarden/common/platform/misc/utils";
|
import { Utils } from "@bitwarden/common/platform/misc/utils";
|
||||||
|
|
||||||
import { BrowserApi } from "../../../platform/browser/browser-api";
|
import { BrowserApi } from "../../../platform/browser/browser-api";
|
||||||
|
import { fromChromeEvent } from "../../../platform/browser/from-chrome-event";
|
||||||
// FIXME (PM-22628): Popup imports are forbidden in background
|
// FIXME (PM-22628): Popup imports are forbidden in background
|
||||||
// eslint-disable-next-line no-restricted-imports
|
// eslint-disable-next-line no-restricted-imports
|
||||||
import { closeFido2Popout, openFido2Popout } from "../../../vault/popup/utils/vault-popout-window";
|
import { closeFido2Popout, openFido2Popout } from "../../../vault/popup/utils/vault-popout-window";
|
||||||
@@ -232,12 +233,8 @@ export class BrowserFido2UserInterfaceSession implements Fido2UserInterfaceSessi
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
this.windowClosed$ = fromEventPattern(
|
this.windowClosed$ = fromChromeEvent(chrome.windows.onRemoved).pipe(
|
||||||
// FIXME: Make sure that is does not cause a memory leak in Safari or use BrowserApi.AddListener
|
map(([windowId]) => windowId),
|
||||||
// and test that it doesn't break. Tracking Ticket: https://bitwarden.atlassian.net/browse/PM-4735
|
|
||||||
// eslint-disable-next-line no-restricted-syntax
|
|
||||||
(handler: any) => chrome.windows.onRemoved.addListener(handler),
|
|
||||||
(handler: any) => chrome.windows.onRemoved.removeListener(handler),
|
|
||||||
);
|
);
|
||||||
|
|
||||||
BrowserFido2UserInterfaceSession.sendMessage({
|
BrowserFido2UserInterfaceSession.sendMessage({
|
||||||
|
|||||||
Reference in New Issue
Block a user