From efe6a3f9480eaf1f920cc80cfdd5e4c65765a6ef Mon Sep 17 00:00:00 2001 From: SRHTNIN Date: Wed, 7 Oct 2026 17:33:42 +0200 Subject: [PATCH] Show icon previews in icon pickers --- Browser.py | 12 ++++++++++-- Settings.py | 5 ++++- Sidebar.py | 6 +++++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/Browser.py b/Browser.py index bca84ef..54b8432 100644 --- a/Browser.py +++ b/Browser.py @@ -2128,7 +2128,11 @@ class Browser(ft.Row): value=Override.Icon if Override else "", label="Custom icon", options=[ft.DropdownOption(key="", text="(Use default)")] + [ - ft.DropdownOption(key=Name, text=FolderIconLabelOverrides.get(Name, Name.split("_")[0].title())) + ft.DropdownOption( + key=Name, + text=FolderIconLabelOverrides.get(Name, Name.split("_")[0].title()), + leading_icon=getattr(ft.Icons, Name), + ) for Name in FolderIconChoices ], ) @@ -2319,7 +2323,11 @@ class Browser(ft.Row): value=DefaultBookmarkIcon, label="Icon", options=[ - ft.DropdownOption(key=Name, text=IconLabelOverrides.get(Name, Name.split("_")[0].title())) + ft.DropdownOption( + key=Name, + text=IconLabelOverrides.get(Name, Name.split("_")[0].title()), + leading_icon=getattr(ft.Icons, Name), + ) for Name in BookmarkIconChoices ], ) diff --git a/Settings.py b/Settings.py index 05a53f0..18a335d 100644 --- a/Settings.py +++ b/Settings.py @@ -181,7 +181,10 @@ def BuildSettingsDialog( IconDropdown = ft.Dropdown( value=BandData["Icon"], - options=[ft.DropdownOption(key=Name, text=_FolderIconLabel(Name)) for Name in FolderIconChoices], + options=[ + ft.DropdownOption(key=Name, text=_FolderIconLabel(Name), leading_icon=getattr(ft.Icons, Name)) + for Name in FolderIconChoices + ], width=150, ) ImageField = ft.TextField(value=BandData["ImagePath"], label="Or custom image path", expand=True) diff --git a/Sidebar.py b/Sidebar.py index 87ed636..b285356 100644 --- a/Sidebar.py +++ b/Sidebar.py @@ -296,7 +296,11 @@ class Sidebar(ft.Container): value=Bookmark.Icon, label="Icon", options=[ - ft.DropdownOption(key=Name, text=IconLabelOverrides.get(Name, Name.split("_")[0].title())) + ft.DropdownOption( + key=Name, + text=IconLabelOverrides.get(Name, Name.split("_")[0].title()), + leading_icon=getattr(ft.Icons, Name), + ) for Name in IconChoices ], )