diff --git a/web/src/hotkey.js b/web/src/hotkey.js index 743d0fd6b5..788962ae57 100644 --- a/web/src/hotkey.js +++ b/web/src/hotkey.js @@ -285,7 +285,7 @@ export function process_escape_key(e) { return true; } - if (overlays.is_active()) { + if (overlays.any_active()) { overlays.close_active(); return true; } @@ -718,7 +718,7 @@ export function process_hotkey(e, hotkey) { } } - if (hotkey.message_view_only && overlays.is_active()) { + if (hotkey.message_view_only && overlays.any_active()) { if (processing_text()) { return false; } diff --git a/web/src/overlays.ts b/web/src/overlays.ts index 310d4518b0..a0d204bff2 100644 --- a/web/src/overlays.ts +++ b/web/src/overlays.ts @@ -41,7 +41,7 @@ function call_hooks(func_list: Hook[]): void { } } -export function is_active(): boolean { +export function any_active(): boolean { return Boolean(open_overlay_name); } @@ -129,7 +129,7 @@ export function close_overlay(name: string): void { } if (active_overlay === undefined) { - blueslip.error("close_overlay called without checking is_active()"); + blueslip.error("close_overlay called without checking any_active()"); return; } @@ -146,7 +146,7 @@ export function close_overlay(name: string): void { export function close_active(): void { if (!open_overlay_name) { - blueslip.warn("close_active() called without checking is_active()"); + blueslip.warn("close_active() called without checking any_active()"); return; } diff --git a/web/src/overlays_modals.ts b/web/src/overlays_modals.ts index caec533330..c323fe4265 100644 --- a/web/src/overlays_modals.ts +++ b/web/src/overlays_modals.ts @@ -2,5 +2,5 @@ import * as modals from "./modals"; import * as overlays from "./overlays"; export function any_active(): boolean { - return overlays.is_active() || modals.any_active(); + return overlays.any_active() || modals.any_active(); } diff --git a/web/src/user_card_popover.js b/web/src/user_card_popover.js index 3dd7f31bc7..f09f433787 100644 --- a/web/src/user_card_popover.js +++ b/web/src/user_card_popover.js @@ -659,7 +659,7 @@ function register_click_handlers() { const user_id = elem_to_user_id($(e.target).parents("ul")); const email = people.get_by_user_id(user_id).email; hide_all(); - if (overlays.is_active()) { + if (overlays.any_active()) { overlays.close_active(); } narrow.by("dm", email, {trigger: "user sidebar popover"}); @@ -671,7 +671,7 @@ function register_click_handlers() { const user_id = elem_to_user_id($(e.target).parents("ul")); const email = people.get_by_user_id(user_id).email; hide_all(); - if (overlays.is_active()) { + if (overlays.any_active()) { overlays.close_active(); } narrow.by("sender", email, {trigger: "user sidebar popover"}); @@ -823,7 +823,7 @@ function register_click_handlers() { private_message_recipient: email, }); hide_all(); - if (overlays.is_active()) { + if (overlays.any_active()) { overlays.close_active(); } e.stopPropagation(); diff --git a/web/tests/hotkey.test.js b/web/tests/hotkey.test.js index e1d1a69795..373cd197e8 100644 --- a/web/tests/hotkey.test.js +++ b/web/tests/hotkey.test.js @@ -60,7 +60,7 @@ const modals = mock_esm("../src/modals", { active_modal: () => undefined, }); const overlays = mock_esm("../src/overlays", { - is_active: () => false, + any_active: () => false, settings_open: () => false, streams_open: () => false, lightbox_open: () => false, @@ -287,14 +287,14 @@ run_test("allow normal typing when processing text", ({override, override_rewire override_rewire(hotkey, "processing_text", () => true); let settings_open; - let is_active; + let any_active; let info_overlay_open; - override(overlays, "is_active", () => is_active); + override(overlays, "any_active", () => any_active); override(overlays, "settings_open", () => settings_open); override(overlays, "info_overlay_open", () => info_overlay_open); for (settings_open of [true, false]) { - for (is_active of [true, false]) { + for (any_active of [true, false]) { for (info_overlay_open of [true, false]) { test_normal_typing(); } @@ -307,7 +307,7 @@ run_test("streams", ({override}) => { delete settings_data.user_can_create_public_streams; delete settings_data.user_can_create_web_public_streams; override(overlays, "streams_open", () => true); - override(overlays, "is_active", () => true); + override(overlays, "any_active", () => true); assert_mapping("S", stream_settings_ui, "keyboard_sub"); assert_mapping("V", stream_settings_ui, "view_stream"); assert_mapping("n", stream_settings_ui, "open_create_stream"); @@ -333,19 +333,19 @@ run_test("basic mappings", () => { }); run_test("drafts open", ({override}) => { - override(overlays, "is_active", () => true); + override(overlays, "any_active", () => true); override(overlays, "drafts_open", () => true); assert_mapping("d", overlays, "close_overlay"); }); run_test("drafts closed w/other overlay", ({override}) => { - override(overlays, "is_active", () => true); + override(overlays, "any_active", () => true); override(overlays, "drafts_open", () => false); test_normal_typing(); }); run_test("drafts closed launch", ({override}) => { - override(overlays, "is_active", () => false); + override(overlays, "any_active", () => false); assert_mapping("d", browser_history, "go_to_location"); }); @@ -409,19 +409,19 @@ run_test("misc", ({override}) => { }); run_test("lightbox overlay open", ({override}) => { - override(overlays, "is_active", () => true); + override(overlays, "any_active", () => true); override(overlays, "lightbox_open", () => true); assert_mapping("v", overlays, "close_overlay"); }); run_test("lightbox closed w/other overlay open", ({override}) => { - override(overlays, "is_active", () => true); + override(overlays, "any_active", () => true); override(overlays, "lightbox_open", () => false); test_normal_typing(); }); run_test("v w/no overlays", ({override}) => { - override(overlays, "is_active", () => false); + override(overlays, "any_active", () => false); assert_mapping("v", lightbox, "show_from_selected_message"); }); @@ -539,10 +539,10 @@ run_test("motion_keys", () => { assert_unmapped("spacebar"); delete overlays.settings_open; - delete overlays.is_active; + delete overlays.any_active; overlays.drafts_open = () => true; assert_mapping("up_arrow", drafts_overlay_ui, "handle_keyboard_events"); assert_mapping("down_arrow", drafts_overlay_ui, "handle_keyboard_events"); - delete overlays.is_active; + delete overlays.any_active; delete overlays.drafts_open; });