* Removed an invalid g_source_remove
authorSergio Villar Senin <svillar@igalia.com>
Wed, 30 Apr 2008 16:13:47 +0000 (16:13 +0000)
committerSergio Villar Senin <svillar@igalia.com>
Wed, 30 Apr 2008 16:13:47 +0000 (16:13 +0000)
* Fixed some calls to modest_platform_animation_banner that were not taking into account that it could return NULL

pmo-trunk-r4493

src/maemo/modest-address-book.c
src/maemo/modest-platform.c
src/modest-ui-actions.c

index 4391355..3120bb3 100644 (file)
@@ -656,7 +656,6 @@ show_check_names_banner (gpointer userdata)
 static void
 hide_check_names_banner (GtkWidget **banner, guint banner_timeout)
 {
-       g_source_remove (banner_timeout);
        if (*banner != NULL) {
                gtk_widget_destroy (*banner);
                *banner = NULL;
index 4d61dbd..c4af06c 100644 (file)
@@ -1659,9 +1659,11 @@ modest_platform_information_banner (GtkWidget *parent,
                                    const gchar *text)
 {
        GtkWidget *banner;
-       ModestWindowMgr *mgr;
+       ModestWindowMgr *mgr = modest_runtime_get_window_mgr ();
+
+       if (modest_window_mgr_num_windows (mgr) == 0)
+               return;
 
-       mgr = modest_runtime_get_window_mgr ();
        banner = hildon_banner_show_information (parent, icon_name, text);
 
        modest_window_mgr_register_banner (mgr);
@@ -1676,6 +1678,10 @@ modest_platform_information_banner_with_timeout (GtkWidget *parent,
                                                 gint timeout)
 {
        GtkWidget *banner;
+
+       if (modest_window_mgr_num_windows (modest_runtime_get_window_mgr ()) == 0)
+               return;
+
        banner = hildon_banner_show_information (parent, icon_name, text);
        hildon_banner_set_timeout(HILDON_BANNER(banner), timeout);
 }
@@ -1689,6 +1695,9 @@ modest_platform_animation_banner (GtkWidget *parent,
 
        g_return_val_if_fail (text != NULL, NULL);
 
+       if (modest_window_mgr_num_windows (modest_runtime_get_window_mgr ()) == 0)
+               return NULL;
+
        /* If the parent is not visible then do not show */
        if (parent && !GTK_WIDGET_VISIBLE (parent))
                return NULL;
index 1cb1fef..fb88cb6 100644 (file)
@@ -848,7 +848,8 @@ open_msg_banner_idle (gpointer userdata)
        gdk_threads_enter ();
        banner_info->idle_handler = 0;
        banner_info->banner = modest_platform_animation_banner (NULL, NULL, banner_info->message);
-       g_object_ref (banner_info->banner);
+       if (banner_info)
+               g_object_ref (banner_info->banner);
        
        gdk_threads_leave ();
 
@@ -3778,8 +3779,10 @@ paste_as_attachment_free (gpointer data)
 {
        PasteAsAttachmentHelper *helper = (PasteAsAttachmentHelper *) data;
 
-       gtk_widget_destroy (helper->banner);
-       g_object_unref (helper->banner);
+       if (helper->banner) {
+               gtk_widget_destroy (helper->banner);
+               g_object_unref (helper->banner);
+       }
        g_free (helper);
 }
 
@@ -3833,7 +3836,6 @@ modest_ui_actions_on_paste (GtkAction *action,
                        mail_op = modest_mail_operation_new (G_OBJECT (window));
                        if (helper->banner != NULL) {
                                g_object_ref (G_OBJECT (helper->banner));
-                               gtk_window_set_modal (GTK_WINDOW (helper->banner), FALSE);
                                gtk_widget_show (GTK_WIDGET (helper->banner));
                        }
 
@@ -4669,8 +4671,10 @@ move_to_cb (ModestMailOperation *mail_op,
         }
 
        /* Close the "Pasting" information banner */
-       gtk_widget_destroy (GTK_WIDGET(helper->banner));
-       g_object_unref (helper->banner);
+       if (helper->banner) {
+               gtk_widget_destroy (GTK_WIDGET(helper->banner));
+               g_object_unref (helper->banner);
+       }
        if (helper->reference != NULL)
                gtk_tree_row_reference_free (helper->reference);
        g_free (helper);
@@ -5039,7 +5043,6 @@ xfer_messages_performer  (gboolean canceled,
                                                           _CS("ckct_nw_pasting"));
        if (helper->banner != NULL)  {
                g_object_ref (helper->banner);
-               gtk_window_set_modal (GTK_WINDOW(helper->banner), FALSE);
                gtk_widget_show (GTK_WIDGET(helper->banner));
        }
 
@@ -5097,7 +5100,6 @@ on_move_folder_cb (gboolean canceled, GError *err, GtkWindow *parent_window,
                        _CS("ckct_nw_pasting"));
        if (helper->banner != NULL)  {
                g_object_ref (helper->banner);
-               gtk_window_set_modal (GTK_WINDOW(helper->banner), FALSE);
                gtk_widget_show (GTK_WIDGET(helper->banner));
        }
        /* Clean folder on header view before moving it */