diff -up mate-panel-2.31.90/mate-panel/panel-applet-frame.c.applet-error mate-panel-2.31.90/mate-panel/mate-panel-applet-frame.c --- mate-panel-2.31.90/mate-panel/mate-panel-applet-frame.c.applet-error 2010-06-22 19:00:28.000000000 -0400 +++ mate-panel-2.31.90/mate-panel/mate-panel-applet-frame.c 2010-09-10 13:17:37.507233002 -0400 @@ -513,6 +513,21 @@ _panel_applet_frame_set_iid (PanelApplet frame->priv->iid = g_strdup (iid); } +static gboolean +in_default_panel_config (const gchar *id) +{ + gchar *dir; + gboolean result; + + dir = g_strconcat (PANEL_DEFAULTS_DIR, "/applets/", id, NULL); + result = mateconf_client_dir_exists (panel_mateconf_get_client (), + dir, + NULL); + g_free (dir); + + return result; +} + void _mate_panel_applet_frame_activated (MatePanelAppletFrame *frame, MatePanelAppletFrameActivating *frame_act, @@ -527,9 +542,11 @@ mate_panel_applet_frame_activated (PanelAppl frame->priv->iid, error->message); g_error_free (error); - mate_panel_applet_frame_loading_failed (frame->priv->iid, - frame_act->panel, - frame_act->id); + if (!in_default_panel_config (frame_act->id)) { + mate_panel_applet_frame_loading_failed (frame->priv->iid, + frame_act->panel, + frame_act->id); + } mate_panel_applet_frame_activating_free (frame_act); gtk_widget_destroy (GTK_WIDGET (frame));