diff --git a/Base/res/icons/32x32/filetype-sound.png b/Base/res/icons/32x32/filetype-sound.png new file mode 100644 index 0000000000..72a641976c Binary files /dev/null and b/Base/res/icons/32x32/filetype-sound.png differ diff --git a/Libraries/LibGUI/GDirectoryModel.cpp b/Libraries/LibGUI/GDirectoryModel.cpp index abf38a0a78..7a71cb61a6 100644 --- a/Libraries/LibGUI/GDirectoryModel.cpp +++ b/Libraries/LibGUI/GDirectoryModel.cpp @@ -33,6 +33,7 @@ GDirectoryModel::GDirectoryModel() m_socket_icon = GIcon::default_icon("filetype-socket"); m_executable_icon = GIcon::default_icon("filetype-executable"); m_filetype_image_icon = GIcon::default_icon("filetype-image"); + m_filetype_sound_icon = GIcon::default_icon("filetype-sound"); setpwent(); while (auto* passwd = getpwent()) @@ -156,6 +157,8 @@ GIcon GDirectoryModel::icon_for(const Entry& entry) const return m_socket_icon; if (entry.mode & S_IXUSR) return m_executable_icon; + if (entry.name.to_lowercase().ends_with(".wav")) + return m_filetype_sound_icon; if (entry.name.to_lowercase().ends_with(".png")) { if (!entry.thumbnail) { if (!const_cast(this)->fetch_thumbnail_for(entry)) diff --git a/Libraries/LibGUI/GDirectoryModel.h b/Libraries/LibGUI/GDirectoryModel.h index 2391c4460a..580454ec65 100644 --- a/Libraries/LibGUI/GDirectoryModel.h +++ b/Libraries/LibGUI/GDirectoryModel.h @@ -76,6 +76,7 @@ private: GIcon m_socket_icon; GIcon m_executable_icon; GIcon m_filetype_image_icon; + GIcon m_filetype_sound_icon; HashMap m_user_names; HashMap m_group_names;