* Adds the force parameter to the connect_and_perform which forces the device to...
[modest] / src / maemo / modest-platform.c
index 83080ae..a41e3ce 100644 (file)
@@ -397,6 +397,7 @@ activate_uri_popup_item (GtkMenuItem *menu_item,
                        action_name += strlen ("mailto:");
                
                gtk_clipboard_set_text (clipboard, action_name, strlen (action_name));
+               modest_platform_information_banner (NULL, NULL, _CS("ecoc_ib_edwin_copied"));
                return; /* we're done */
        }
        
@@ -1591,7 +1592,6 @@ modest_platform_create_folder_view (TnyFolderStoreQuery *query)
        modest_folder_view_set_style (MODEST_FOLDER_VIEW (widget),
                                      MODEST_FOLDER_VIEW_STYLE_SHOW_ONE);
 
-
        /* Restore settings */
        modest_widget_memory_restore (modest_runtime_get_conf(), 
                                      G_OBJECT (widget),
@@ -1600,12 +1600,28 @@ modest_platform_create_folder_view (TnyFolderStoreQuery *query)
        return widget;
 }
 
+void
+banner_finish (gpointer data, GObject *object)
+{
+       ModestWindowMgr *mgr = (ModestWindowMgr *) data;
+       modest_window_mgr_unregister_banner (mgr);
+       g_object_unref (mgr);
+}
+
 void 
 modest_platform_information_banner (GtkWidget *parent,
                                    const gchar *icon_name,
                                    const gchar *text)
 {
-       hildon_banner_show_information (parent, icon_name, text);
+       GtkWidget *banner;
+       ModestWindowMgr *mgr;
+
+       mgr = modest_runtime_get_window_mgr ();
+       banner = hildon_banner_show_information (parent, icon_name, text);
+
+       modest_window_mgr_register_banner (mgr);
+       g_object_ref (mgr);
+       g_object_weak_ref ((GObject *) banner, banner_finish, mgr);
 }
 
 void
@@ -1950,6 +1966,7 @@ on_conic_device_went_online (TnyMaemoConicDevice *device, const gchar* iap_id, g
        
 void 
 modest_platform_connect_and_perform (GtkWindow *parent_window, 
+                                    gboolean force,
                                     TnyAccount *account, 
                                     ModestConnectedPerformer callback, 
                                     gpointer user_data)
@@ -1958,15 +1975,10 @@ modest_platform_connect_and_perform (GtkWindow *parent_window,
        TnyDevice *device;
        TnyConnectionStatus conn_status;
        OnWentOnlineInfo *info;
-       gboolean user_requested;
        
        device = modest_runtime_get_device();
        device_online = tny_device_is_online (device);
 
-       /* Whether the connection is user requested or automatically
-          requested, for example via D-Bus */
-       user_requested = (parent_window) ? TRUE : FALSE;
-
        /* If there is no account check only the device status */
        if (!account) {
                
@@ -1993,7 +2005,7 @@ modest_platform_connect_and_perform (GtkWindow *parent_window,
                        info->callback = callback;
                
                        tny_maemo_conic_device_connect_async (TNY_MAEMO_CONIC_DEVICE (device), NULL,
-                                                             user_requested, on_conic_device_went_online, 
+                                                             force, on_conic_device_went_online, 
                                                              info);
  
                        /* We'll cleanup in on_conic_device_went_online */
@@ -2046,7 +2058,7 @@ modest_platform_connect_and_perform (GtkWindow *parent_window,
                 * and the account */
                
                tny_maemo_conic_device_connect_async (TNY_MAEMO_CONIC_DEVICE (device), NULL,
-                                                     user_requested, on_conic_device_went_online, 
+                                                     force, on_conic_device_went_online, 
                                                      info);
                
        } else {
@@ -2065,6 +2077,7 @@ modest_platform_connect_and_perform (GtkWindow *parent_window,
 
 void
 modest_platform_connect_if_remote_and_perform (GtkWindow *parent_window, 
+                                              gboolean force,
                                               TnyFolderStore *folder_store, 
                                               ModestConnectedPerformer callback, 
                                               gpointer user_data)
@@ -2106,7 +2119,7 @@ modest_platform_connect_if_remote_and_perform (GtkWindow *parent_window,
                }
        }
  
-       modest_platform_connect_and_perform (parent_window, account, callback, user_data);
+       modest_platform_connect_and_perform (parent_window, force, account, callback, user_data);
  
        return;
 }