From 37ae7d442098e0f57ae8dff5b9f71aa84846397f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pa=CC=84vels=20Nadtoc=CC=8Cajevs?= <7645683+bruvzg@users.noreply.github.com> Date: Sun, 20 Jul 2025 20:44:33 +0300 Subject: [PATCH] [macOS] Use "file" icon for bundles in the file dialogs. --- editor/gui/editor_file_dialog.cpp | 5 +++-- editor/gui/editor_file_dialog.h | 1 + scene/gui/file_dialog.cpp | 4 ++-- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/editor/gui/editor_file_dialog.cpp b/editor/gui/editor_file_dialog.cpp index ce322c3d00a..f1338837cb9 100644 --- a/editor/gui/editor_file_dialog.cpp +++ b/editor/gui/editor_file_dialog.cpp @@ -229,6 +229,7 @@ void EditorFileDialog::_update_theme_item_cache() { theme_cache.filter_box = get_editor_theme_icon(SNAME("Search")); theme_cache.file_sort_button = get_editor_theme_icon(SNAME("Sort")); + theme_cache.file = get_editor_theme_icon(SNAME("File")); theme_cache.folder = get_editor_theme_icon(SNAME("Folder")); theme_cache.folder_icon_color = get_theme_color(SNAME("folder_icon_color"), SNAME("FileDialog")); @@ -1114,9 +1115,9 @@ void EditorFileDialog::update_file_list() { item_list->add_item(dir_name); if (display_mode == DISPLAY_THUMBNAILS) { - item_list->set_item_icon(-1, folder_thumbnail); + item_list->set_item_icon(-1, bundle ? file_thumbnail : folder_thumbnail); } else { - item_list->set_item_icon(-1, theme_cache.folder); + item_list->set_item_icon(-1, bundle ? theme_cache.file : theme_cache.folder); } Dictionary d; diff --git a/editor/gui/editor_file_dialog.h b/editor/gui/editor_file_dialog.h index 68738a86ba3..41f922736f6 100644 --- a/editor/gui/editor_file_dialog.h +++ b/editor/gui/editor_file_dialog.h @@ -185,6 +185,7 @@ private: Ref filter_box; Ref file_sort_button; + Ref file; Ref folder; Color folder_icon_color; diff --git a/scene/gui/file_dialog.cpp b/scene/gui/file_dialog.cpp index 3756225c8b9..a5d1f6a9c81 100644 --- a/scene/gui/file_dialog.cpp +++ b/scene/gui/file_dialog.cpp @@ -882,9 +882,9 @@ void FileDialog::update_file_list() { for (const DirInfo &info : filtered_dirs) { if (display_mode == DISPLAY_THUMBNAILS) { - file_list->add_item(info.name, theme_cache.folder_thumbnail); + file_list->add_item(info.name, info.bundle ? theme_cache.file_thumbnail : theme_cache.folder_thumbnail); } else { - file_list->add_item(info.name, theme_cache.folder); + file_list->add_item(info.name, info.bundle ? theme_cache.file : theme_cache.folder); } file_list->set_item_icon_modulate(-1, theme_cache.folder_icon_color);