From 104a5c04bdec78072c8ecd996829a07e18d60511 Mon Sep 17 00:00:00 2001 From: sokumon Date: Tue, 27 Jan 2026 18:21:21 +0530 Subject: [PATCH] feat: allow to add background colors for icon --- frappe/desk/doctype/desktop_icon/desktop_icon.json | 9 ++++++++- frappe/desk/doctype/desktop_icon/desktop_icon.py | 2 ++ frappe/public/js/frappe/ui/desktop_icon.html | 2 +- frappe/public/js/frappe/utils/utils.js | 4 ---- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/frappe/desk/doctype/desktop_icon/desktop_icon.json b/frappe/desk/doctype/desktop_icon/desktop_icon.json index fe7bfb7585..21041a00c4 100644 --- a/frappe/desk/doctype/desktop_icon/desktop_icon.json +++ b/frappe/desk/doctype/desktop_icon/desktop_icon.json @@ -23,6 +23,7 @@ "link", "hidden", "restrict_removal", + "bg_color", "roles_tab", "roles" ], @@ -141,10 +142,16 @@ "fieldname": "restrict_removal", "fieldtype": "Check", "label": "Restrict Removal" + }, + { + "fieldname": "bg_color", + "fieldtype": "Select", + "label": "Background Color", + "options": "blue\ngray" } ], "links": [], - "modified": "2026-01-25 15:29:33.884930", + "modified": "2026-01-27 18:17:48.667070", "modified_by": "Administrator", "module": "Desk", "name": "Desktop Icon", diff --git a/frappe/desk/doctype/desktop_icon/desktop_icon.py b/frappe/desk/doctype/desktop_icon/desktop_icon.py index 03ab12e0aa..86dd014cde 100644 --- a/frappe/desk/doctype/desktop_icon/desktop_icon.py +++ b/frappe/desk/doctype/desktop_icon/desktop_icon.py @@ -24,6 +24,7 @@ class DesktopIcon(Document): from frappe.types import DF app: DF.Autocomplete | None + bg_color: DF.Literal["blue", "gray"] hidden: DF.Check icon_image: DF.Attach | None icon_type: DF.Literal["Link", "Folder", "App"] @@ -147,6 +148,7 @@ def get_desktop_icons(user=None, bootinfo=None): if not user_icons: fields = [ "label", + "bg_color", "link", "link_type", "app", diff --git a/frappe/public/js/frappe/ui/desktop_icon.html b/frappe/public/js/frappe/ui/desktop_icon.html index 28d3363b32..f11975cb49 100644 --- a/frappe/public/js/frappe/ui/desktop_icon.html +++ b/frappe/public/js/frappe/ui/desktop_icon.html @@ -12,7 +12,7 @@ {% } else { %} - {%= frappe.utils.desktop_icon(icon.label,"gray")%} + {%= frappe.utils.desktop_icon(icon.label, icon.bg_color || "gray") %} {% } %} {% if (!in_folder) { %}
diff --git a/frappe/public/js/frappe/utils/utils.js b/frappe/public/js/frappe/utils/utils.js index 40615f2fd5..ed628a7de8 100644 --- a/frappe/public/js/frappe/utils/utils.js +++ b/frappe/public/js/frappe/utils/utils.js @@ -1389,10 +1389,6 @@ Object.assign(frappe.utils, { blue: "#0981E3", gray: "#7B808A", }, - desktop_bg_color(color_name) { - let color_value = this.desktop_pallete[color_name]; - color_value + ""; - }, icon( icon_name, size = "sm",