diff --git a/applet-error.patch b/applet-error.patch new file mode 100644 index 0000000..26a8d35 --- /dev/null +++ b/applet-error.patch @@ -0,0 +1,38 @@ +diff -up gnome-panel-2.20.0.1/gnome-panel/panel-applet-frame.c.applet-error gnome-panel-2.20.0.1/gnome-panel/panel-applet-frame.c +--- gnome-panel-2.20.0.1/gnome-panel/panel-applet-frame.c.applet-error 2007-09-21 16:24:28.000000000 -0400 ++++ gnome-panel-2.20.0.1/gnome-panel/panel-applet-frame.c 2007-09-21 16:24:32.000000000 -0400 +@@ -1253,6 +1253,21 @@ panel_applet_frame_event_listener (Bonob + panel_applet_frame_set_size_hints_from_any (frame, any); + } + ++static gboolean ++in_default_panel_config (const gchar *id) ++{ ++ gchar *dir; ++ gboolean result; ++ ++ dir = g_strconcat (PANEL_DEFAULTS_DIR, "/applets/", id, NULL); ++ result = gconf_client_dir_exists (panel_gconf_get_client (), ++ dir, ++ NULL); ++ g_free (dir); ++ ++ return result; ++} ++ + static void + panel_applet_frame_activated (Bonobo_Unknown object, + CORBA_Environment *ev, +@@ -1275,8 +1290,10 @@ panel_applet_frame_activated (Bonobo_Unk + if (BONOBO_EX (ev) || object == CORBA_OBJECT_NIL) { + error = bonobo_exception_get_text (ev); + g_warning (G_STRLOC ": failed to load applet %s:\n%s", +- frame->priv->iid, error); +- panel_applet_frame_loading_failed (frame, frame_act->id); ++ frame->priv->iid, error); ++ if (!in_default_panel_config (frame_act->id)) { ++ panel_applet_frame_loading_failed (frame, frame_act->id); ++ } + g_free (frame_act->id); + g_free (frame_act); + g_free (error); diff --git a/gnome-panel.spec b/gnome-panel.spec index aa49de8..f68dfe7 100644 --- a/gnome-panel.spec +++ b/gnome-panel.spec @@ -22,7 +22,7 @@ Summary: GNOME panel Name: gnome-panel Version: 2.20.0.1 -Release: 1%{?dist} +Release: 2%{?dist} URL: http://www.gnome.org Source0: http://download.gnome.org/sources/gnome-panel/2.20/%{name}-%{version}.tar.bz2 Source1: redhat-panel-default-setup.entries @@ -39,12 +39,6 @@ Requires: gnome-menus >= %{gnome_menus_version} %if %{use_evolution_data_server} Requires: evolution-data-server >= %{evolution_data_server_version} %endif -Requires: fast-user-switch-applet - -# Mono isn't available for s390 or ppc64 apparently -%ifnarch s390 s390x ppc64 -Requires: tomboy -%endif Requires(post): GConf2 >= %{gconf_version} Requires(post): scrollkeeper @@ -103,6 +97,11 @@ Patch8: launcher-desktop-files.patch Patch9: desktop-file-monitoring.patch Patch10: preferred-apps.patch +# don't pop up an error dialog if an applet from the +# default configuration is missing; we don't want to +# add a hard dependency on e.g. tomboy +Patch11: applet-error.patch + Conflicts: gnome-power-manager < 2.15.3 %description @@ -138,6 +137,7 @@ Panel Applets using the libpanel-applet library. %patch8 -p1 -b .launcher-desktop-files %patch9 -p1 -b .desktop-file-monitoring %patch10 -p1 -b .preferred-apps +%patch11 -p1 -b .applet-error . %{SOURCE4} @@ -316,6 +316,10 @@ fi %{_datadir}/gtk-doc/html/* %changelog +* Fri Sep 21 2007 Matthias Clasen - 2.20.0.1-2 +- Don't pop up an error if an applet from the default + configuration is missing + * Tue Sep 18 2007 Matthias Clasen - 2.20.0.1-1 - Update to 2.20.0.1