From 89ad8e485a720ee4add3aeda21374de67fcee5b7 Mon Sep 17 00:00:00 2001 From: Cesar Gonzalez Date: Tue, 18 Jun 2024 14:56:27 -0500 Subject: [PATCH] [PM-5189] Reworking how we handle updating the inline menu position --- .../autofill/background/overlay.background.ts | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/apps/browser/src/autofill/background/overlay.background.ts b/apps/browser/src/autofill/background/overlay.background.ts index ba917832657..0c86a0d1b9a 100644 --- a/apps/browser/src/autofill/background/overlay.background.ts +++ b/apps/browser/src/autofill/background/overlay.background.ts @@ -66,8 +66,8 @@ export class OverlayBackground implements OverlayBackgroundInterface { private inlineMenuPageTranslations: Record; private inlineMenuFadeInTimeout: number | NodeJS.Timeout; private delayedCloseTimeout: number | NodeJS.Timeout; - private repositionInlineMenuDebounce$ = new Subject(); - private rebuildSubFrameOffsetsThrottle$ = new Subject(); + private repositionInlineMenuSubject = new Subject(); + private rebuildSubFrameOffsetsSubject = new Subject(); private focusedFieldData: FocusedFieldData; private isFieldCurrentlyFocused: boolean = false; private isFieldCurrentlyFilling: boolean = false; @@ -140,13 +140,13 @@ export class OverlayBackground implements OverlayBackgroundInterface { private platformUtilsService: PlatformUtilsService, private themeStateService: ThemeStateService, ) { - this.repositionInlineMenuDebounce$ + this.repositionInlineMenuSubject .pipe( debounceTime(500), switchMap((sender) => this.repositionInlineMenu(sender)), ) .subscribe(); - this.rebuildSubFrameOffsetsThrottle$ + this.rebuildSubFrameOffsetsSubject .pipe( throttleTime(600), switchMap((sender) => this.rebuildSubFrameOffsets(sender)), @@ -1315,13 +1315,13 @@ export class OverlayBackground implements OverlayBackgroundInterface { private async triggerOverlayReposition(sender: chrome.runtime.MessageSender) { if (await this.checkShouldRepositionInlineMenu(sender)) { await this.toggleInlineMenuHidden({ isInlineMenuHidden: true }, sender); - this.repositionInlineMenuDebounce$.next(sender); + this.repositionInlineMenuSubject.next(sender); } } private async triggerSubFrameFocusInRebuild(sender: chrome.runtime.MessageSender) { - this.rebuildSubFrameOffsetsThrottle$.next(sender); - this.repositionInlineMenuDebounce$.next(sender); + this.rebuildSubFrameOffsetsSubject.next(sender); + this.repositionInlineMenuSubject.next(sender); } private repositionInlineMenu = async (sender: chrome.runtime.MessageSender) => { @@ -1341,7 +1341,7 @@ export class OverlayBackground implements OverlayBackgroundInterface { } if (this.focusedFieldData.frameId > 0 && sender.frameId !== this.focusedFieldData.frameId) { - this.rebuildSubFrameOffsetsThrottle$.next(sender); + this.rebuildSubFrameOffsetsSubject.next(sender); } await this.updateInlineMenuPositionAfterRepositionEvent(sender);