diff --git a/templates/zerver/app/index.html b/templates/zerver/app/index.html index 00204cb694..a649ddbcdb 100644 --- a/templates/zerver/app/index.html +++ b/templates/zerver/app/index.html @@ -139,6 +139,7 @@ https://bugzilla.mozilla.org/show_bug.cgi?id=1943053 -->
+ diff --git a/tools/test-js-with-node b/tools/test-js-with-node index 805b3a6c99..77eb6345df 100755 --- a/tools/test-js-with-node +++ b/tools/test-js-with-node @@ -193,6 +193,7 @@ EXEMPT_FILES = make_set( "web/src/recent_view_ui.ts", "web/src/reload.ts", "web/src/reload_setup.js", + "web/src/reminders_overlay_ui.ts", "web/src/resize.ts", "web/src/resize_handler.ts", "web/src/rows.ts", diff --git a/web/src/hash_parser.ts b/web/src/hash_parser.ts index 85e03f93eb..20cd38676b 100644 --- a/web/src/hash_parser.ts +++ b/web/src/hash_parser.ts @@ -66,6 +66,7 @@ export function is_overlay_hash(hash: string | undefined): boolean { "search-operators", "about-zulip", "scheduled", + "reminders", "user", ]; const main_hash = get_hash_category(hash); diff --git a/web/src/hashchange.ts b/web/src/hashchange.ts index 9eaccc2e29..f82404ab55 100644 --- a/web/src/hashchange.ts +++ b/web/src/hashchange.ts @@ -20,6 +20,7 @@ import {page_params} from "./page_params.ts"; import * as people from "./people.ts"; import * as popovers from "./popovers.ts"; import * as recent_view_ui from "./recent_view_ui.ts"; +import * as reminders_overlay_ui from "./reminders_overlay_ui.ts"; import * as scheduled_messages_overlay_ui from "./scheduled_messages_overlay_ui.ts"; import * as settings from "./settings.ts"; import * as settings_panel_menu from "./settings_panel_menu.ts"; @@ -260,6 +261,7 @@ function do_hashchange_normal(from_reload: boolean, restore_selected_id: boolean case "#settings": case "#about-zulip": case "#scheduled": + case "#reminders": blueslip.error("overlay logic skipped for: " + hash[0]); break; default: @@ -504,6 +506,11 @@ function do_hashchange_overlay(old_hash: string | undefined): void { return; } + if (base === "reminders") { + reminders_overlay_ui.launch(); + return; + } + if (base === "user") { const user_id = Number.parseInt(hash_parser.get_current_hash_section(), 10); if (!people.is_known_user_id(user_id)) { diff --git a/web/src/hotkey.js b/web/src/hotkey.js index d756e9a93a..3eda8c6d86 100644 --- a/web/src/hotkey.js +++ b/web/src/hotkey.js @@ -47,6 +47,7 @@ import * as reactions from "./reactions.ts"; import * as read_receipts from "./read_receipts.ts"; import * as recent_view_ui from "./recent_view_ui.ts"; import * as recent_view_util from "./recent_view_util.ts"; +import * as reminders_overlay_ui from "./reminders_overlay_ui.ts"; import * as scheduled_messages_overlay_ui from "./scheduled_messages_overlay_ui.ts"; import * as search from "./search.ts"; import {message_edit_history_visibility_policy_values} from "./settings_config.ts"; @@ -616,6 +617,11 @@ export function process_enter_key(e) { return true; } + if (overlays.reminders_open()) { + reminders_overlay_ui.handle_keyboard_events("enter"); + return true; + } + // Transfer the enter keypress from button to the `` tag inside // it since it is the trigger for the popover.