diff --git a/apps/browser/src/autofill/background/abstractions/overlay.background.ts b/apps/browser/src/autofill/background/abstractions/overlay.background.ts index 627e1730830..99516df083a 100644 --- a/apps/browser/src/autofill/background/abstractions/overlay.background.ts +++ b/apps/browser/src/autofill/background/abstractions/overlay.background.ts @@ -120,7 +120,7 @@ export type OverlayBackgroundExtensionMessageHandlers = { checkShouldRepositionInlineMenu: ({ sender }: BackgroundSenderParam) => boolean; getCurrentTabFrameId: ({ sender }: BackgroundSenderParam) => number; updateSubFrameData: ({ message, sender }: BackgroundOnMessageHandlerParams) => void; - updateSubFrameOffsetsForReflowEvent: ({ sender }: BackgroundSenderParam) => void; + rebuildSubFrameOffsets: ({ sender }: BackgroundSenderParam) => void; repositionAutofillInlineMenuForSubFrame: ({ sender }: BackgroundSenderParam) => void; destroyAutofillInlineMenuListeners: ({ message, diff --git a/apps/browser/src/autofill/background/overlay.background.ts b/apps/browser/src/autofill/background/overlay.background.ts index fc10533ab52..f6e39cd8651 100644 --- a/apps/browser/src/autofill/background/overlay.background.ts +++ b/apps/browser/src/autofill/background/overlay.background.ts @@ -95,7 +95,7 @@ export class OverlayBackground implements OverlayBackgroundInterface { checkShouldRepositionInlineMenu: ({ sender }) => this.checkShouldRepositionInlineMenu(sender), getCurrentTabFrameId: ({ sender }) => this.getSenderFrameId(sender), updateSubFrameData: ({ message, sender }) => this.updateSubFrameData(message, sender), - updateSubFrameOffsetsForReflowEvent: ({ sender }) => this.rebuildSubFrameOffsets(sender), + rebuildSubFrameOffsets: ({ sender }) => this.rebuildSubFrameOffsets(sender), repositionAutofillInlineMenuForSubFrame: ({ sender }) => this.repositionInlineMenuForSubFrame(sender), destroyAutofillInlineMenuListeners: ({ message, sender }) => @@ -628,7 +628,7 @@ export class OverlayBackground implements OverlayBackgroundInterface { { overlayElement }: { overlayElement?: string }, sender: chrome.runtime.MessageSender, ) { - if (this.delayedUpdateInlineMenuPositionTimeout && this.isFieldCurrentlyFocused) { + if (this.isFieldCurrentlyFocused && this.delayedUpdateInlineMenuPositionTimeout) { this.closeInlineMenu(sender, { forceCloseInlineMenu: true }); return; } diff --git a/apps/browser/src/autofill/services/autofill-overlay-content.service.ts b/apps/browser/src/autofill/services/autofill-overlay-content.service.ts index 41f86a7c749..47d0911fc7e 100644 --- a/apps/browser/src/autofill/services/autofill-overlay-content.service.ts +++ b/apps/browser/src/autofill/services/autofill-overlay-content.service.ts @@ -45,8 +45,6 @@ export class AutofillOverlayContentService implements AutofillOverlayContentServ private focusedFieldData: FocusedFieldData; private userInteractionEventTimeout: number | NodeJS.Timeout; private recalculateSubFrameOffsetsTimeout: number | NodeJS.Timeout; - private reflowPerformanceObserver: PerformanceObserver; - private reflowMutationObserver: MutationObserver; private eventHandlersMemo: { [key: string]: EventListener } = {}; private readonly extensionMessageHandlers: AutofillOverlayContentExtensionMessageHandlers = { openAutofillInlineMenu: ({ message }) => this.openInlineMenu(message), @@ -1118,7 +1116,7 @@ export class AutofillOverlayContentService implements AutofillOverlayContentServ }; private handleSubFrameFocusInEvent = () => { - this.updateSubFrameForReflow(); + this.rebuildSubFrameOffsets(); globalThis.removeEventListener(EVENTS.FOCUS, this.handleSubFrameFocusInEvent); globalThis.document.body.removeEventListener( @@ -1132,10 +1130,10 @@ export class AutofillOverlayContentService implements AutofillOverlayContentServ ); }; - private updateSubFrameForReflow = () => { + private rebuildSubFrameOffsets = () => { this.clearUserInteractionEventTimeout(); this.clearRecalculateSubFrameOffsetsTimeout(); - void this.sendExtensionMessage("updateSubFrameOffsetsForReflowEvent"); + void this.sendExtensionMessage("rebuildSubFrameOffsets"); }; /** @@ -1169,8 +1167,6 @@ export class AutofillOverlayContentService implements AutofillOverlayContentServ this.handleVisibilityChangeEvent, ); globalThis.removeEventListener(EVENTS.FOCUSOUT, this.handleFormFieldBlurEvent); - this.reflowPerformanceObserver?.disconnect(); - this.reflowMutationObserver?.disconnect(); this.removeOverlayRepositionEventListeners(); } }