diff options
author | Victor Kareh <[email protected]> | 2025-07-24 09:26:33 -0400 |
---|---|---|
committer | Victor Kareh <[email protected]> | 2025-07-24 09:27:45 -0400 |
commit | f1275445e638d3c38c93457227602b7314f59d86 (patch) | |
tree | 431aca91c64e795b17ee9e1cac76a6ed2887569b /src/eom-file-chooser.c | |
parent | 1dcda49f5ca719dfea822a34ac7925246875240f (diff) | |
download | eom-fast-content-type.tar.bz2 eom-fast-content-type.tar.xz |
Eom*: Use fast content type as fallbackfast-content-type
It turns out that, depending on the responsible GVfs implementation,
a GFileInfo may not actually set the content type attribute even if
requested. Since knowing the content type is rather critical for eom
try to use the fast content type as a fallback in those cases.
The fast content type should be hardly unknown as it is usually just
based on the file extension.
Fixes #360.
Backported from https://gitlab.gnome.org/GNOME/eog/-/commit/de19faf73c8d8627193320d512c8b97316d9740c
Diffstat (limited to 'src/eom-file-chooser.c')
-rw-r--r-- | src/eom-file-chooser.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/eom-file-chooser.c b/src/eom-file-chooser.c index 5d82901..5c366fa 100644 --- a/src/eom-file-chooser.c +++ b/src/eom-file-chooser.c @@ -22,6 +22,7 @@ #include "eom-file-chooser.h" #include "eom-config-keys.h" #include "eom-pixbuf-util.h" +#include "eom-util.h" #include <stdlib.h> @@ -333,7 +334,8 @@ update_preview_cb (GtkFileChooser *file_chooser, gpointer data) G_FILE_ATTRIBUTE_TIME_MODIFIED "," G_FILE_ATTRIBUTE_STANDARD_TYPE "," G_FILE_ATTRIBUTE_STANDARD_SIZE "," - G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE, + G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE"," + G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE, 0, NULL, NULL); g_object_unref (file); @@ -352,7 +354,7 @@ update_preview_cb (GtkFileChooser *file_chooser, gpointer data) /* read files smaller than 100kb directly */ gchar *mime_type = g_content_type_get_mime_type ( - g_file_info_get_content_type (file_info)); + eom_util_get_content_type_with_fallback (file_info)); if (G_LIKELY (mime_type)) { gboolean can_thumbnail, has_failed; |