From 26f664be697f949bbe206cd90d49ad2ef0fcf90d Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 9 May 2025 17:57:11 -0700 Subject: [PATCH] hotkey: Avoid jQuery sizzle extension :visible. Signed-off-by: Anders Kaseorg --- web/src/hotkey.js | 8 ++++---- web/tests/hotkey.test.cjs | 4 +++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/web/src/hotkey.js b/web/src/hotkey.js index 1fae02100f..17b33d086e 100644 --- a/web/src/hotkey.js +++ b/web/src/hotkey.js @@ -550,7 +550,7 @@ export function process_enter_key(e) { return false; } - if ($("#preview_message_area").is(":visible")) { + if ($("#compose").hasClass("preview_mode")) { compose.handle_enter_key_with_preview_open(); return true; } @@ -600,7 +600,7 @@ export function process_enter_key(e) { } export function process_cmd_or_ctrl_enter_key() { - if ($("#preview_message_area").is(":visible")) { + if ($("#compose").hasClass("preview_mode")) { const cmd_or_ctrl_pressed = true; compose.handle_enter_key_with_preview_open(cmd_or_ctrl_pressed); return true; @@ -849,7 +849,7 @@ export function process_hotkey(e, hotkey) { } if (compose_state.composing()) { - if ($("#compose .markdown_preview").is(":visible")) { + if ($("#compose").hasClass("preview_mode")) { compose.show_preview_area(); } else { compose.clear_preview_area(); @@ -1200,7 +1200,7 @@ export function process_hotkey(e, hotkey) { const $row = message_lists.current.selected_row(); const $emoji_icon = $row.find(".emoji-message-control-button-container"); let emoji_picker_reference; - if ($emoji_icon.is(":visible")) { + if ($emoji_icon.closest(".message_control_button").css("display") !== "none") { emoji_picker_reference = $emoji_icon[0]; } else { emoji_picker_reference = $row.find(".message-actions-menu-button")[0]; diff --git a/web/tests/hotkey.test.cjs b/web/tests/hotkey.test.cjs index 13f96d5d7d..66ff2003f8 100644 --- a/web/tests/hotkey.test.cjs +++ b/web/tests/hotkey.test.cjs @@ -108,7 +108,9 @@ message_lists.current = { selected_row() { const $row = $.create("selected-row-stub"); $row.set_find_results(".message-actions-menu-button", []); - $row.set_find_results(".emoji-message-control-button-container", {is: () => false}); + $row.set_find_results(".emoji-message-control-button-container", { + closest: () => ({css: () => "none"}), + }); return $row; }, selected_message() {