diff options
author | olivierd <olivierd@FreeBSD.org> | 2012-12-15 02:53:31 +0800 |
---|---|---|
committer | olivierd <olivierd@FreeBSD.org> | 2012-12-15 02:53:31 +0800 |
commit | ff5b6ec46ba82e25ac5e0326f3148371d6f33978 (patch) | |
tree | 091353aec14fff9a48c2e5529652d4ba58a3deb7 /x11-fm/thunar/files | |
parent | cbbfcc79beda164bc8d2fadae115fd030f95a0e0 (diff) | |
download | freebsd-ports-gnome-ff5b6ec46ba82e25ac5e0326f3148371d6f33978.tar.gz freebsd-ports-gnome-ff5b6ec46ba82e25ac5e0326f3148371d6f33978.tar.zst freebsd-ports-gnome-ff5b6ec46ba82e25ac5e0326f3148371d6f33978.zip |
- Update to 1.6.1
- Sort options
- Use OPTIONS_GROUP for plugins, PLUG_*
- Remove ABI version numbers from LIB_DEPENDS
- Add patches for GLib 2.28
Approved by: rene, miwi (mentors, implicit)
Diffstat (limited to 'x11-fm/thunar/files')
-rw-r--r-- | x11-fm/thunar/files/patch-thunar__thunar-gio-extensions.c | 37 | ||||
-rw-r--r-- | x11-fm/thunar/files/patch-thunar__thunar-size-label.c | 91 |
2 files changed, 128 insertions, 0 deletions
diff --git a/x11-fm/thunar/files/patch-thunar__thunar-gio-extensions.c b/x11-fm/thunar/files/patch-thunar__thunar-gio-extensions.c new file mode 100644 index 000000000000..b6094e5f5880 --- /dev/null +++ b/x11-fm/thunar/files/patch-thunar__thunar-gio-extensions.c @@ -0,0 +1,37 @@ +--- ./thunar/thunar-gio-extensions.c.orig 2012-12-09 17:28:23.000000000 +0000 ++++ ./thunar/thunar-gio-extensions.c 2012-12-10 21:43:55.000000000 +0000 +@@ -569,15 +569,34 @@ + thunar_g_app_info_should_show (GAppInfo *info) + { + #ifdef HAVE_GIO_UNIX ++#if GLIB_CHECK_VERSION (2, 28, 0) ++ const gchar *filename; ++ ++ _thunar_return_val_if_fail (G_IS_APP_INFO (info), FALSE); ++ ++ if (g_app_info_should_show (info)) ++ return TRUE; ++#else + _thunar_return_val_if_fail (G_IS_APP_INFO (info), FALSE); ++#endif + + if (G_IS_DESKTOP_APP_INFO (info)) ++ /* g_desktop_app_info_get_show_in() appears from GLib 2.30 */ ++#if GLIB_CHECK_VERSION (2, 28, 0) ++ { ++ filename = g_desktop_app_info_get_filename (G_DESKTOP_APP_INFO (info)); ++ if (filename != NULL ++ && g_str_has_prefix (filename, g_get_user_data_dir ())) ++ return TRUE; ++ } ++#else + { + /* NoDisplay=true files should be visible in the interface, + * because this key is intent to hide mime-helpers from the + * application menu. Hidden=true is never returned by GIO. */ + return g_desktop_app_info_get_show_in (G_DESKTOP_APP_INFO (info), NULL); + } ++#endif + + return TRUE; + #else diff --git a/x11-fm/thunar/files/patch-thunar__thunar-size-label.c b/x11-fm/thunar/files/patch-thunar__thunar-size-label.c new file mode 100644 index 000000000000..5cb57b7292e6 --- /dev/null +++ b/x11-fm/thunar/files/patch-thunar__thunar-size-label.c @@ -0,0 +1,91 @@ +--- ./thunar/thunar-size-label.c.orig 2012-10-14 13:01:38.000000000 +0000 ++++ ./thunar/thunar-size-label.c 2012-10-21 00:27:16.000000000 +0000 +@@ -259,6 +259,51 @@ + return FALSE; + } + ++#if GLIB_CHECK_VERSION (2, 28, 0) ++static gchar* ++tsl_format_size_string (guint64 size) ++{ ++ GString *result; ++ gchar *grouping; ++ gchar *thousep; ++ gint ndigits = 0; ++ ++#ifdef HAVE_LOCALECONV ++ grouping = localeconv ()->grouping; ++ thousep = localeconv ()->thousands_sep; ++#else ++ grouping = "\3\0"; ++ thousep = ","; ++#endif ++ ++ result = g_string_sized_new (32); ++ do ++ { ++ /* prepend the next digit to the string */ ++ g_string_prepend_c (result, '0' + (size % 10)); ++ ++ndigits; ++ ++ /* check if we should add the thousands separator */ ++ if (ndigits == *grouping && *grouping != CHAR_MAX && size > 9) ++ { ++ g_string_prepend (result, thousep); ++ ndigits = 0; ++ ++ /* if *(grouping+1) == '\0' then we have to use the ++ * *grouping character (last grouping rule) for all ++ * following cases. ++ */ ++ if (*(grouping + 1) != '\0') ++ ++grouping; ++ } ++ ++ size /= 10; ++ } ++ while (size > 0); ++ ++ return g_string_free (result, FALSE); ++} ++#endif + + + static void +@@ -266,6 +311,10 @@ + { + gchar *size_string; + guint64 size; ++#if GLIB_CHECK_VERSION (2, 28, 0) ++ gchar *size_humanized; ++ gchar *text; ++#endif + + _thunar_return_if_fail (THUNAR_IS_SIZE_LABEL (size_label)); + _thunar_return_if_fail (size_label->files != NULL); +@@ -308,7 +357,25 @@ + size = thunar_file_get_size (THUNAR_FILE (size_label->files->data)); + + /* setup the new label */ ++#if GLIB_CHECK_VERSION (2, 30, 0) + size_string = g_format_size_full (size, G_FORMAT_SIZE_LONG_FORMAT); ++#else ++ /* determine the size in bytes */ ++ text = tsl_format_size_string (size); ++ size_string = g_strdup_printf (_("%s Bytes"), text); ++ g_free (text); ++ ++ /* check if the file is larger that 1kB */ ++ if (G_LIKELY (size > 1024ul)) ++ { ++ /* prepend the humanized size */ ++ size_humanized = g_format_size_for_display (size); ++ text = g_strdup_printf ("%s (%s)", size_humanized, size_string); ++ g_free (size_humanized); ++ g_free (size_string); ++ size_string = text; ++ } ++#endif + gtk_label_set_text (GTK_LABEL (size_label->label), size_string); + g_free (size_string); + } |