diff --git a/nautilus-bnc363122-lockdown-context-menus.diff b/nautilus-bnc363122-lockdown-context-menus.diff index 38a22be..40ecda2 100644 --- a/nautilus-bnc363122-lockdown-context-menus.diff +++ b/nautilus-bnc363122-lockdown-context-menus.diff @@ -1,117 +1,81 @@ -https://bugzilla.novell.com/show_bug.cgi?id=363122 - -Add a way to disable context menus in Nautilus's file views, for -quick-and-dirty kiosks. - -This adds an /apps/nautilus/lockdown/disable_context_menus GConf key; -if set to true, it will disable all the contextual menus on file views. - -Index: nautilus-2.28.0/libnautilus-private/apps_nautilus_preferences.schemas.in -=================================================================== ---- nautilus-2.28.0.orig/libnautilus-private/apps_nautilus_preferences.schemas.in -+++ nautilus-2.28.0/libnautilus-private/apps_nautilus_preferences.schemas.in -@@ -1186,6 +1186,21 @@ most cases, this should be left alone. - - - - -- +diff --git a/libnautilus-private/nautilus-global-preferences.h b/libnautilus-private/nautilus-global-preferences.h +index 8a9af8e..0465edf 100644 +--- a/libnautilus-private/nautilus-global-preferences.h ++++ b/libnautilus-private/nautilus-global-preferences.h +@@ -96,6 +96,9 @@ typedef enum + /* The default folder viewer - one of the two enums below */ + #define NAUTILUS_PREFERENCES_DEFAULT_FOLDER_VIEWER "default-folder-viewer" + ++/* Disable context menus */ ++#define NAUTILUS_PREFERENCES_DISABLE_CONTEXT_MENU "disable-context-menus" + -+ -+ /schemas/apps/nautilus/lockdown/disable_context_menus -+ /apps/nautilus/lockdown/disable_context_menus -+ nautilus -+ bool + enum + { + NAUTILUS_DEFAULT_FOLDER_VIEWER_ICON_VIEW, +diff --git a/libnautilus-private/nautilus.convert b/libnautilus-private/nautilus.convert +index 5850477..6f91815 100644 +--- a/libnautilus-private/nautilus.convert ++++ b/libnautilus-private/nautilus.convert +@@ -23,6 +23,7 @@ desktop-is-home-dir = /apps/nautilus/preferences/desktop_is_home_dir + default-folder-viewer = /apps/nautilus/preferences/default_folder_viewer + date-format = /apps/nautilus/preferences/date_format + show-hidden-files = /desktop/gnome/file_views/show_hidden_files ++disable-context-menus = /apps/nautilus/lockdown/disable_context_menus + + [org.gnome.nautilus.icon-view] + captions = /apps/nautilus/icon_view/captions +diff --git a/libnautilus-private/org.gnome.nautilus.gschema.xml.in b/libnautilus-private/org.gnome.nautilus.gschema.xml.in +index 178ba82..f29c38f 100644 +--- a/libnautilus-private/org.gnome.nautilus.gschema.xml.in ++++ b/libnautilus-private/org.gnome.nautilus.gschema.xml.in +@@ -204,6 +204,11 @@ + <_summary>Bulk rename utility + <_description>If set, Nautilus will append URIs of selected files and treat the result as a command line for bulk renaming. Bulk rename applications can register themselves in this key by setting the key to a space-separated string of their executable name and any command line options. If the executable name is not set to a full path, it will be searched for in the search path. + ++ + false -+ -+ Disable context menus in file views -+ -+ Set this to true if you are deploying a kiosk and don't want users -+ to access the context menu in file views. -+ -+ -+ -+ - - -Index: nautilus-2.28.0/libnautilus-private/nautilus-debug-log.h -=================================================================== ---- nautilus-2.28.0.orig/libnautilus-private/nautilus-debug-log.h -+++ nautilus-2.28.0/libnautilus-private/nautilus-debug-log.h -@@ -30,6 +30,7 @@ - #define NAUTILUS_DEBUG_LOG_DOMAIN_USER "USER" /* always enabled */ - #define NAUTILUS_DEBUG_LOG_DOMAIN_ASYNC "async" /* when asynchronous notifications come in */ - #define NAUTILUS_DEBUG_LOG_DOMAIN_GLOG "GLog" /* used for GLog messages; don't use it yourself */ -+#define NAUTILUS_DEBUG_LOG_DOMAIN_LOCKDOWN "lockdown" /* when things get *not* done due to lockdown */ ++ <_summary>Disable context menus in file views ++ <_description>Set this to true if you are deploying a kiosk and don't want users to access the context menu in file views. ++ + - void nautilus_debug_log (gboolean is_milestone, const char *domain, const char *format, ...); - -Index: nautilus-2.28.0/libnautilus-private/nautilus-global-preferences.c -=================================================================== ---- nautilus-2.28.0.orig/libnautilus-private/nautilus-global-preferences.c -+++ nautilus-2.28.0/libnautilus-private/nautilus-global-preferences.c -@@ -236,6 +236,10 @@ typedef struct - * YOU SHOULD EDIT THE SCHEMAS FILE TO CHANGE DEFAULTS. - */ - static const PreferenceDefault preference_defaults[] = { -+ { NAUTILUS_LOCKDOWN_DISABLE_CONTEXT_MENUS, -+ PREFERENCE_BOOLEAN, -+ GINT_TO_POINTER (FALSE) -+ }, - { NAUTILUS_PREFERENCES_EXIT_WITH_LAST_WINDOW, - PREFERENCE_BOOLEAN, - GINT_TO_POINTER (TRUE) -Index: nautilus-2.28.0/libnautilus-private/nautilus-global-preferences.h -=================================================================== ---- nautilus-2.28.0.orig/libnautilus-private/nautilus-global-preferences.h -+++ nautilus-2.28.0/libnautilus-private/nautilus-global-preferences.h -@@ -33,6 +33,8 @@ G_BEGIN_DECLS - /* Whether exit when last window destroyed */ - #define NAUTILUS_PREFERENCES_EXIT_WITH_LAST_WINDOW "preferences/exit_with_last_window" - -+#define NAUTILUS_LOCKDOWN_DISABLE_CONTEXT_MENUS "lockdown/disable_context_menus" -+ - /* Which theme is active */ - #define NAUTILUS_PREFERENCES_THEME "/desktop/gnome/file_views/icon_theme" - -Index: nautilus-2.28.0/src/file-manager/fm-directory-view.c -=================================================================== ---- nautilus-2.28.0.orig/src/file-manager/fm-directory-view.c -+++ nautilus-2.28.0/src/file-manager/fm-directory-view.c -@@ -8728,6 +8728,12 @@ fm_directory_view_pop_up_selection_conte + +diff --git a/src/nautilus-view.c b/src/nautilus-view.c +index fbd482d..0492bee 100644 +--- a/src/nautilus-view.c ++++ b/src/nautilus-view.c +@@ -8677,6 +8677,11 @@ nautilus_view_pop_up_selection_context_menu (NautilusView *view, { - g_assert (FM_IS_DIRECTORY_VIEW (view)); + g_assert (NAUTILUS_IS_VIEW (view)); -+ if (eel_preferences_get_boolean (NAUTILUS_LOCKDOWN_DISABLE_CONTEXT_MENUS)) { -+ nautilus_debug_log (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_LOCKDOWN, -+ "Ignoring request to pop up the context menu for the view's selection"); ++ if (g_settings_get_boolean (nautilus_preferences, NAUTILUS_PREFERENCES_DISABLE_CONTEXT_MENU)) { ++ DEBUG ("Ignoring request to pop up the context menu for the view's selection"); + return; + } + /* Make the context menu items not flash as they update to proper disabled, * etc. states by forcing menus to update now. */ -@@ -8757,6 +8763,12 @@ fm_directory_view_pop_up_background_cont +@@ -8706,6 +8711,11 @@ nautilus_view_pop_up_background_context_menu (NautilusView *view, { - g_assert (FM_IS_DIRECTORY_VIEW (view)); + g_assert (NAUTILUS_IS_VIEW (view)); -+ if (eel_preferences_get_boolean (NAUTILUS_LOCKDOWN_DISABLE_CONTEXT_MENUS)) { -+ nautilus_debug_log (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_LOCKDOWN, -+ "Ignoring request to pop up the context menu for the view's background"); ++ if (g_settings_get_boolean (nautilus_preferences, NAUTILUS_PREFERENCES_DISABLE_CONTEXT_MENU)) { ++ DEBUG ("Ignoring request to pop up the context menu for the view's background"); + return; + } + /* Make the context menu items not flash as they update to proper disabled, * etc. states by forcing menus to update now. */ -@@ -8864,6 +8876,12 @@ fm_directory_view_pop_up_location_contex +@@ -8813,6 +8823,11 @@ nautilus_view_pop_up_location_context_menu (NautilusView *view, - g_assert (FM_IS_DIRECTORY_VIEW (view)); + g_assert (NAUTILUS_IS_VIEW (view)); -+ if (eel_preferences_get_boolean (NAUTILUS_LOCKDOWN_DISABLE_CONTEXT_MENUS)) { -+ nautilus_debug_log (FALSE, NAUTILUS_DEBUG_LOG_DOMAIN_LOCKDOWN, -+ "Ignoring request to pop up the context menu for the view"); ++ if (g_settings_get_boolean (nautilus_preferences, NAUTILUS_PREFERENCES_DISABLE_CONTEXT_MENU)) { ++ DEBUG ("Ignoring request to pop up the context menu for the view"); + return; -+ } ++ } + if (location != NULL) { file = nautilus_file_get_by_uri (location); diff --git a/nautilus-replace-deprecated-function.patch b/nautilus-replace-deprecated-function.patch new file mode 100644 index 0000000..51fa0ba --- /dev/null +++ b/nautilus-replace-deprecated-function.patch @@ -0,0 +1,116 @@ +commit 3e69fb702393cf42486321c88cede4668329b4c8 +Author: Ryan Lortie +Date: Wed Jul 20 20:25:17 2011 +0200 + + all: switch to g_format_size() + + g_format_size_for_display() has been deprecated in GLib and replaced with + g_format_size(). Follow that change. + + https://bugzilla.gnome.org/show_bug.cgi?id=654995 + +diff --git a/configure.in b/configure.in +index 48f463c..7f17360 100644 +--- a/configure.in ++++ b/configure.in +@@ -2,7 +2,7 @@ AC_PREREQ(2.54) + + dnl =========================================================================== + +-m4_define(glib_minver, 2.28.0) ++m4_define(glib_minver, 2.29.13) + m4_define(gnome_desktop_minver, 3.0.0) + m4_define(pango_minver, 1.28.3) + m4_define(gtk_minver, 3.1.6) +diff --git a/libnautilus-private/nautilus-file-operations.c b/libnautilus-private/nautilus-file-operations.c +index 88223cf..8d73213 100644 +--- a/libnautilus-private/nautilus-file-operations.c ++++ b/libnautilus-private/nautilus-file-operations.c +@@ -846,7 +846,7 @@ custom_size_to_string (char *format, va_list va) + goffset size; + + size = va_arg (va, goffset); +- return g_format_size_for_display (size); ++ return g_format_size (size); + } + + static void +diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c +index 55b7407..548f0c8 100644 +--- a/libnautilus-private/nautilus-file.c ++++ b/libnautilus-private/nautilus-file.c +@@ -5811,7 +5811,7 @@ nautilus_file_get_size_as_string (NautilusFile *file) + if (file->details->size == -1) { + return NULL; + } +- return g_format_size_for_display (file->details->size); ++ return g_format_size (file->details->size); + } + + /** +@@ -5852,7 +5852,7 @@ nautilus_file_get_size_as_string_with_real_size (NautilusFile *file) + return NULL; + } + +- formated = g_format_size_for_display (file->details->size); ++ formated = g_format_size (file->details->size); + /* Do this in a separate stage so that we don't have to put G_GUINT64_FORMAT in the translated string */ + real_size = g_strdup_printf (_("%"G_GUINT64_FORMAT), (guint64) file->details->size); + formated_plus_real = g_strdup_printf (_("%s (%s bytes)"), formated, real_size); +@@ -5918,7 +5918,7 @@ nautilus_file_get_deep_count_as_string_internal (NautilusFile *file, + * directly if desired. + */ + if (report_size) { +- return g_format_size_for_display (total_size); ++ return g_format_size (total_size); + } + + return format_item_count_for_display (report_directory_count +@@ -6657,7 +6657,7 @@ nautilus_file_get_volume_free_space (NautilusFile *file) + + res = NULL; + if (directory->details->free_space != (guint64)-1) { +- res = g_format_size_for_display (directory->details->free_space); ++ res = g_format_size (directory->details->free_space); + } + + return res; +diff --git a/src/nautilus-properties-window.c b/src/nautilus-properties-window.c +index 1e9d04e..3b0df9b 100644 +--- a/src/nautilus-properties-window.c ++++ b/src/nautilus-properties-window.c +@@ -2155,7 +2155,7 @@ directory_contents_value_field_update (NautilusPropertiesWindow *window) + } + } else { + char *size_str; +- size_str = g_format_size_for_display (total_size); ++ size_str = g_format_size (total_size); + text = g_strdup_printf (ngettext("%'d item, with size %s", + "%'d items, totalling %s", + total_count), +@@ -2915,9 +2915,9 @@ create_pie_widget (NautilusPropertiesWindow *window) + GFile *location; + GFileInfo *info; + +- capacity = g_format_size_for_display (window->details->volume_capacity); +- free = g_format_size_for_display (window->details->volume_free); +- used = g_format_size_for_display (window->details->volume_capacity - window->details->volume_free); ++ capacity = g_format_size (window->details->volume_capacity); ++ free = g_format_size (window->details->volume_free); ++ used = g_format_size (window->details->volume_capacity - window->details->volume_free); + + file = get_original_file (window); + +diff --git a/src/nautilus-view.c b/src/nautilus-view.c +index fbd482d..7712518 100644 +--- a/src/nautilus-view.c ++++ b/src/nautilus-view.c +@@ -2852,7 +2852,7 @@ nautilus_view_display_selection_info (NautilusView *view) + if (non_folder_size_known) { + char *size_string; + +- size_string = g_format_size_for_display (non_folder_size); ++ size_string = g_format_size (non_folder_size); + /* This is marked for translation in case a localiser + * needs to use something other than parentheses. The + * first message gives the number of items selected; diff --git a/nautilus.changes b/nautilus.changes index 1dff7aa..2702188 100644 --- a/nautilus.changes +++ b/nautilus.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Fri Jul 29 06:58:02 UTC 2011 - glin@suse.com + +- Rebase nautilus-bnc363122-lockdown-context-menus.diff +- Add nautilus-replace-deprecated-function.patch to fix + 64bit-portability-issue from rpmlint + ------------------------------------------------------------------- Sat Jul 2 08:59:07 CEST 2011 - vuntz@opensuse.org diff --git a/nautilus.spec b/nautilus.spec index 6c525a9..8653a1d 100644 --- a/nautilus.spec +++ b/nautilus.spec @@ -36,10 +36,12 @@ Patch4: nautilus-bgo350950-search-desktop.diff Patch9: nautilus-146947-rename-bad-parameters-message.diff # PATCH-NEEDS-REBASE nautilus-drives-and-volumes-on-desktop.diff bnc335411 federico@novell.com Patch15: nautilus-drives-and-volumes-on-desktop.diff -# PATCH_NEEDS-REBASE PATCH-FIX-OPENSUSE nautilus-bnc363122-lockdown-context-menus.diff bnc363122 federico@novell.com +# PATCH-FIX-OPENSUSE nautilus-bnc363122-lockdown-context-menus.diff bnc363122 federico@novell.com Patch20: nautilus-bnc363122-lockdown-context-menus.diff # PATCH-NEEDS-REBASE nautilus-sysadmin-desktop-items.diff fate305252 federico@novell.com -- Support sysadmin-defined desktop items (was PATCH-FEATURE-OPENSUSE) Patch21: nautilus-sysadmin-desktop-items.diff +# PATCH-FIX-UPSTREAM nautilus-replace-deprecated-function.patch bgo654995 glin@suse.com -- Replace g_format_size_for_display() with g_format_size() to remove 64bit-portability-issue from rpmlint +Patch22: nautilus-replace-deprecated-function.patch # needed for directory ownership BuildRequires: dbus-1 BuildRequires: fdupes @@ -104,8 +106,9 @@ translation-update-upstream ##%patch4 -p1 #%patch9 -p0 ### %patch15 -p1 -####%patch20 -p1 +%patch20 -p1 #%patch21 -p1 +%patch22 -p1 #gnome-patch-translation-update %build