diff --git a/frappe/desk/page/desktop/desktop.js b/frappe/desk/page/desktop/desktop.js index bb37ac75c6..98b2c98c14 100644 --- a/frappe/desk/page/desktop/desktop.js +++ b/frappe/desk/page/desktop/desktop.js @@ -522,25 +522,28 @@ class DesktopPage { if (frappe.boot.desk_settings.search_bar) { let awesome_bar = new frappe.search.AwesomeBar(); awesome_bar.setup(".desktop-search-wrapper #desktop-navbar-modal-search"); + + frappe.ui.keys.add_shortcut({ + shortcut: "ctrl+g", + action: function (e) { + $(".desktop-search-wrapper #desktop-navbar-modal-search").click(); + e.preventDefault(); + return false; + }, + description: __("Open Awesomebar"), + ignore_inputs: true, + }); + frappe.ui.keys.add_shortcut({ + shortcut: "ctrl+k", + action: function (e) { + $(".desktop-search-wrapper #desktop-navbar-modal-search").click(); + e.preventDefault(); + return false; + }, + description: __("Toggle Awesomebar"), + ignore_inputs: true, + }); } - frappe.ui.keys.add_shortcut({ - shortcut: "ctrl+g", - action: function (e) { - $(".desktop-search-wrapper #desktop-navbar-modal-search").click(); - e.preventDefault(); - return false; - }, - description: __("Open Awesomebar"), - }); - frappe.ui.keys.add_shortcut({ - shortcut: "ctrl+k", - action: function (e) { - $(".desktop-search-wrapper #desktop-navbar-modal-search").click(); - e.preventDefault(); - return false; - }, - description: __("Open Awesomebar"), - }); } handle_route_change() { const me = this; diff --git a/frappe/public/js/frappe/ui/keyboard.js b/frappe/public/js/frappe/ui/keyboard.js index daecc0bb59..dcb41b1545 100644 --- a/frappe/public/js/frappe/ui/keyboard.js +++ b/frappe/public/js/frappe/ui/keyboard.js @@ -205,6 +205,7 @@ frappe.ui.keys.add_shortcut({ return false; }, description: __("Open Awesomebar"), + ignore_inputs: true, }); frappe.ui.keys.add_shortcut({ @@ -215,6 +216,7 @@ frappe.ui.keys.add_shortcut({ return false; }, description: __("Open Awesomebar"), + ignore_inputs: true, }); frappe.ui.keys.add_shortcut({ diff --git a/frappe/public/js/frappe/ui/toolbar/awesome_bar.js b/frappe/public/js/frappe/ui/toolbar/awesome_bar.js index d6b1c0e8f7..319c6e2134 100644 --- a/frappe/public/js/frappe/ui/toolbar/awesome_bar.js +++ b/frappe/public/js/frappe/ui/toolbar/awesome_bar.js @@ -49,7 +49,7 @@ frappe.search.AwesomeBar = class AwesomeBar { ${__("to select")} - ${__("esc")} + ${frappe.utils.is_mac() ? "⌘K" : "Ctrl+K"} ${__("to close")} @@ -68,6 +68,10 @@ frappe.search.AwesomeBar = class AwesomeBar { }); $search_element.on("click", () => { + if ($(search_modal).hasClass("show")) { + search_modal.modal("hide"); + return; + } search_modal.modal("show"); if (is_event_listeners_added) return;