Skip to content

Commit 2faf2ab

Browse files
committed
fix tests
1 parent 75fd3aa commit 2faf2ab

4 files changed

Lines changed: 220 additions & 203 deletions

File tree

‎extension/chrome/settings/inbox/inbox.ts‎

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -185,12 +185,7 @@ export class InboxView extends View {
185185
private addBrowserMsgListeners = () => {
186186
BrowserMsg.addListener('add_end_session_btn', () => this.injector.insertEndSessionBtn(this.acctEmail));
187187
BrowserMsg.addListener('set_active_window', async ({ frameId }: Bm.ComposeWindow) => {
188-
if ($(`.secure_compose_window.active[data-frame-id="${frameId}"]`).length) {
189-
return; // already active
190-
}
191-
$(`.secure_compose_window`).removeClass('previous_active');
192-
$(`.secure_compose_window.active`).addClass('previous_active').removeClass('active');
193-
$(`.secure_compose_window[data-frame-id="${frameId}"]`).addClass('active');
188+
this.injector.setActiveComposeWindow(frameId);
194189
});
195190
BrowserMsg.addListener('close_compose_window', async ({ frameId }: Bm.ComposeWindow) => {
196191
$(`.secure_compose_window[data-frame-id="${frameId}"]`).remove();

‎extension/js/common/inject.ts‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,15 +68,28 @@ export class Injector {
6868
const alreadyOpenedCount = this.S.now('secure_compose_window').length;
6969
if (alreadyOpenedCount < 3) {
7070
const composeWin = $(this.factory.embeddedCompose(draftId, openInFullScreen, thunderbirdMsgId, replyOption, replyMsgId));
71+
const frameId = composeWin.data('frame-id') as string;
7172
composeWin.attr('data-order', alreadyOpenedCount + 1);
73+
composeWin.on('click focusin', () => this.setActiveComposeWindow(frameId));
74+
composeWin.find('iframe').on('focus', () => this.setActiveComposeWindow(frameId));
7275
this.S.cached('body').append(composeWin); // xss-safe-factory
76+
this.setActiveComposeWindow(frameId);
7377
return true;
7478
} else {
7579
Ui.toast('Only 3 FlowCrypt windows can be opened at a time', false, 3, 'top', 'error');
7680
return false;
7781
}
7882
};
7983

84+
public setActiveComposeWindow = (frameId: string) => {
85+
if ($(`.secure_compose_window.active[data-frame-id="${frameId}"]`).length) {
86+
return; // already active
87+
}
88+
$(`.secure_compose_window`).removeClass('previous_active');
89+
$(`.secure_compose_window.active`).addClass('previous_active').removeClass('active');
90+
$(`.secure_compose_window[data-frame-id="${frameId}"]`).addClass('active');
91+
};
92+
8093
public btns = () => {
8194
if (this.S.now('compose_button_container').length === 0) {
8295
// don't inject too early

‎extension/js/content_scripts/webmail/generic/setup-webmail-content-script.ts‎

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -152,12 +152,7 @@ export const contentScriptSetupIfVacant = async (webmailSpecific: WebmailSpecifi
152152
) => {
153153
BrowserMsg.addListener('set_active_window', async req => {
154154
const { frameId } = req as Bm.ComposeWindow;
155-
if ($(`.secure_compose_window.active[data-frame-id="${frameId}"]`).length) {
156-
return; // already active
157-
}
158-
$(`.secure_compose_window`).removeClass('previous_active');
159-
$(`.secure_compose_window.active`).addClass('previous_active').removeClass('active');
160-
$(`.secure_compose_window[data-frame-id="${frameId}"]`).addClass('active');
155+
inject.setActiveComposeWindow(frameId);
161156
});
162157
BrowserMsg.addListener('close_compose_window', async req => {
163158
const { frameId } = req as Bm.ComposeWindow;

0 commit comments

Comments
 (0)