From 43f655bd6b111994ea3c0dcce6bae1821ee6a98d Mon Sep 17 00:00:00 2001 From: sokumon Date: Wed, 11 Mar 2026 13:28:01 +0530 Subject: [PATCH 1/4] fix: add icon in settings dropdown --- frappe/core/doctype/navbar_item/navbar_item.json | 11 +++++++++-- frappe/public/js/frappe/ui/menu.js | 2 +- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/frappe/core/doctype/navbar_item/navbar_item.json b/frappe/core/doctype/navbar_item/navbar_item.json index f247b7b7cb..694e7c6952 100644 --- a/frappe/core/doctype/navbar_item/navbar_item.json +++ b/frappe/core/doctype/navbar_item/navbar_item.json @@ -10,6 +10,7 @@ "action", "hidden", "is_standard", + "icon", "column_break_dtwu", "condition" ], @@ -72,19 +73,25 @@ { "fieldname": "column_break_dtwu", "fieldtype": "Column Break" + }, + { + "fieldname": "icon", + "fieldtype": "Icon", + "label": "Icon" } ], "istable": 1, "links": [], - "modified": "2024-11-15 14:12:19.803995", + "modified": "2026-03-11 12:23:02.473404", "modified_by": "Administrator", "module": "Core", "name": "Navbar Item", "owner": "Administrator", "permissions": [], "quick_entry": 1, + "row_format": "Dynamic", "sort_field": "creation", "sort_order": "DESC", "states": [], "track_changes": 1 -} \ No newline at end of file +} diff --git a/frappe/public/js/frappe/ui/menu.js b/frappe/public/js/frappe/ui/menu.js index 48c060f874..78406fb456 100644 --- a/frappe/public/js/frappe/ui/menu.js +++ b/frappe/public/js/frappe/ui/menu.js @@ -57,7 +57,7 @@ frappe.ui.menu = class ContextMenu { if (typeof item.condition == "function") { render = item.condition(); } else { - render = frappe.utils.eval_expression(item.condition); + render = frappe.utils.eval(item.condition); } if (render) { this.add_menu_item(item); From bc1b8ab0fcf865b941cc0a7230a14008808c26e7 Mon Sep 17 00:00:00 2001 From: sokumon Date: Wed, 11 Mar 2026 13:37:14 +0530 Subject: [PATCH 2/4] chore: remove debugging statements --- frappe/public/js/frappe/icon_picker/icon_picker.js | 1 - frappe/public/js/frappe/ui/menu.js | 1 - 2 files changed, 2 deletions(-) diff --git a/frappe/public/js/frappe/icon_picker/icon_picker.js b/frappe/public/js/frappe/icon_picker/icon_picker.js index 0f2f5dc212..15c25c7f8e 100644 --- a/frappe/public/js/frappe/icon_picker/icon_picker.js +++ b/frappe/public/js/frappe/icon_picker/icon_picker.js @@ -35,7 +35,6 @@ class Picker { } } setup_emojis() { - console.log("Making emojis"); // setup tab this.setup_tab(); // setup emoji container diff --git a/frappe/public/js/frappe/ui/menu.js b/frappe/public/js/frappe/ui/menu.js index 78406fb456..e0f824018f 100644 --- a/frappe/public/js/frappe/ui/menu.js +++ b/frappe/public/js/frappe/ui/menu.js @@ -52,7 +52,6 @@ frappe.ui.menu = class ContextMenu { function () { return true; }; - console.log(typeof item.condition); let render = false; if (typeof item.condition == "function") { render = item.condition(); From ac6d19317e10090b22914276f0b80b3297af86d5 Mon Sep 17 00:00:00 2001 From: sokumon Date: Wed, 11 Mar 2026 21:13:48 +0530 Subject: [PATCH 3/4] fix: add seperator for menu --- .../js/frappe/ui/sidebar/sidebar_header.js | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/frappe/public/js/frappe/ui/sidebar/sidebar_header.js b/frappe/public/js/frappe/ui/sidebar/sidebar_header.js index c587f3ae1d..d2ea33bde5 100644 --- a/frappe/public/js/frappe/ui/sidebar/sidebar_header.js +++ b/frappe/public/js/frappe/ui/sidebar/sidebar_header.js @@ -24,6 +24,17 @@ frappe.ui.SidebarHeader = class SidebarHeader { }, items: this.sibling_workspaces, }, + { + name: "website", + label: __("Website"), + icon: "web", + onClick: function () { + window.open(window.location.origin); + }, + }, + { + is_divider: true, + }, { name: "edit-sidebar", label: __("Edit Sidebar"), @@ -35,18 +46,13 @@ frappe.ui.SidebarHeader = class SidebarHeader { me.sidebar.editor.toggle(); }, }, - { - name: "website", - label: __("Website"), - icon: "web", - onClick: function () { - window.open(window.location.origin); - }, - }, ]; if (frappe.boot.desk_settings.notifications) { let is_dark = frappe.ui.get_current_theme() === "dark"; this.dropdown_items.push( + { + is_divider: true, + }, { label: "Session Defaults", action: "frappe.ui.toolbar.setup_session_defaults()", @@ -77,6 +83,9 @@ frappe.ui.SidebarHeader = class SidebarHeader { icon: "info", items: this.get_help_siblings(), }, + { + is_divider: true, + }, { name: "logout", label: "Logout", From 29048540db1395bceac9befc4a1d6589fdd6601c Mon Sep 17 00:00:00 2001 From: sokumon Date: Mon, 16 Mar 2026 11:07:30 +0530 Subject: [PATCH 4/4] fix: seperator styles --- frappe/public/js/frappe/ui/sidebar/sidebar_header.js | 9 ++++++--- frappe/public/scss/desk/menu.scss | 7 +++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/frappe/public/js/frappe/ui/sidebar/sidebar_header.js b/frappe/public/js/frappe/ui/sidebar/sidebar_header.js index d2ea33bde5..0e2f2f101e 100644 --- a/frappe/public/js/frappe/ui/sidebar/sidebar_header.js +++ b/frappe/public/js/frappe/ui/sidebar/sidebar_header.js @@ -46,13 +46,16 @@ frappe.ui.SidebarHeader = class SidebarHeader { me.sidebar.editor.toggle(); }, }, + { + is_divider: true, + condition: function () { + return frappe.boot.developer_mode; + }, + }, ]; if (frappe.boot.desk_settings.notifications) { let is_dark = frappe.ui.get_current_theme() === "dark"; this.dropdown_items.push( - { - is_divider: true, - }, { label: "Session Defaults", action: "frappe.ui.toolbar.setup_session_defaults()", diff --git a/frappe/public/scss/desk/menu.scss b/frappe/public/scss/desk/menu.scss index f8462d0f63..27d5022eb9 100644 --- a/frappe/public/scss/desk/menu.scss +++ b/frappe/public/scss/desk/menu.scss @@ -16,7 +16,7 @@ .dropdown-menu-item { // padding: var(--padding-xs); border-radius: var(--border-radius-sm); - &:hover { + &:hover:has(a) { background-color: var(--sidebar-hover-color); } @@ -37,7 +37,10 @@ } } } - + .dropdown-divider { + margin-right: calc(var(--margin-xs) + 3px); + margin-left: calc(var(--margin-xs) + 3px); + } .menu-item-title { text-overflow: ellipsis; text-wrap: nowrap;