diff --git a/Gtk3/src/background.cpp b/Gtk3/src/background.cpp index e7adfee..3a54e6e 100644 --- a/Gtk3/src/background.cpp +++ b/Gtk3/src/background.cpp @@ -42,18 +42,17 @@ void fileopen(GtkWidget *widget,GtkBuilder *builder){ And For Linux,just use the image/* mime type */ -#ifdef G_OS_WIN32 - int i; - for (i = 0; supported_globs != NULL && supported_globs[i] != NULL; i++) + if(mime_type_supported()){ + gtk_file_filter_add_mime_type(filter,"image/*"); + }else{ + int i; + for (i = 0; supported_globs != NULL && supported_globs[i] != NULL; i++) { const char *glob = supported_globs[i]; gtk_file_filter_add_pattern (filter, glob); } - -#else - gtk_file_filter_add_mime_type(filter,"image/*"); -#endif + } gtk_file_chooser_add_filter(GTK_FILE_CHOOSER(dialog),filter); //Filter For All Files diff --git a/Gtk3/src/image_types.h b/Gtk3/src/image_types.h index 402d9c6..3b77a7f 100644 --- a/Gtk3/src/image_types.h +++ b/Gtk3/src/image_types.h @@ -1,3 +1,7 @@ +#pragma once + +#include + static const char * const supported_globs[]={ "*.bmp", "*.cod", @@ -24,3 +28,11 @@ static const char * const supported_globs[]={ "*.xwd", NULL }; + +static inline gboolean mime_type_supported(){ +#ifdef G_OS_WIN32 + return FALSE; +#else + return TRUE; +#endif +}