Modified webpage: now tinymail repository is in gitorious.
[modest] / src / widgets / modest-folder-window.c
index e5c4986..db7b11f 100644 (file)
@@ -42,9 +42,7 @@
 #include <modest-window.h>
 #ifdef MODEST_TOOLKIT_HILDON2
 #include <modest-maemo-utils.h>
-#include <hildon/hildon-program.h>
-#include <hildon/hildon-banner.h>
-#include <hildon/hildon-button.h>
+#include <hildon/hildon.h>
 #endif
 #include <tny-account-store-view.h>
 #include <tny-gtk-folder-list-store.h>
@@ -115,9 +113,11 @@ static void on_visible_account_changed (ModestFolderView *folder_view,
 static void on_account_changed (TnyAccountStore *account_store,
                                TnyAccount *account,
                                gpointer user_data);
+#ifdef MODEST_TOOLKIT_HILDON2
 static gboolean on_key_press(GtkWidget *widget,
-                               GdkEventKey *event,
-                               gpointer user_data);
+                            GdkEventKey *event,
+                            gpointer user_data);
+#endif
 
 typedef struct _ModestFolderWindowPrivate ModestFolderWindowPrivate;
 struct _ModestFolderWindowPrivate {
@@ -140,7 +140,7 @@ struct _ModestFolderWindowPrivate {
                                                                          ModestFolderWindowPrivate))
 
 /* globals */
-static GtkWindowClass *parent_class = NULL;
+static ModestWindowParentClass *parent_class = NULL;
 
 /************************************************************************/
 
@@ -323,8 +323,10 @@ connect_signals (ModestFolderWindow *self)
                                                       G_CALLBACK (on_account_changed), self);
 
 
+#ifdef MODEST_TOOLKIT_HILDON2
        g_signal_connect(G_OBJECT(self), "key-press-event",
                        G_CALLBACK(on_key_press), self);
+#endif
 }
 
 ModestWindow *
@@ -334,9 +336,10 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
        ModestFolderWindowPrivate *priv = NULL;
        GdkPixbuf *window_icon;
        GtkWidget *scrollable;
-       guint accel_key;
-       GdkModifierType accel_mods;
        GtkWidget *top_alignment;
+#ifdef MODEST_TOOLKIT_HILDON2
+       GtkWidget *live_search;
+#endif
        
        self  = MODEST_FOLDER_WINDOW(g_object_new(MODEST_TYPE_FOLDER_WINDOW, NULL));
        priv = MODEST_FOLDER_WINDOW_GET_PRIVATE(self);
@@ -350,6 +353,10 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
                                  self);
 
        priv->folder_view  = modest_platform_create_folder_view (query);
+#ifdef MODEST_TOOLKIT_HILDON2
+       live_search = modest_folder_view_setup_live_search (MODEST_FOLDER_VIEW (priv->folder_view));
+       hildon_live_search_widget_hook (HILDON_LIVE_SEARCH (live_search), GTK_WIDGET (self), priv->folder_view);
+#endif
        modest_folder_view_set_cell_style (MODEST_FOLDER_VIEW (priv->folder_view),
                                           MODEST_FOLDER_VIEW_CELL_STYLE_COMPACT);
        modest_folder_view_set_filter (MODEST_FOLDER_VIEW (priv->folder_view), 
@@ -388,6 +395,9 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
 
        gtk_container_add (GTK_CONTAINER (scrollable), priv->folder_view);
        gtk_container_add (GTK_CONTAINER (top_alignment), scrollable);
+#ifdef MODEST_TOOLKIT_HILDON2
+       gtk_box_pack_end (GTK_BOX (priv->top_vbox), live_search, FALSE, FALSE, 0);
+#endif
        gtk_box_pack_end (GTK_BOX (priv->top_vbox), top_alignment, TRUE, TRUE, 0);
        gtk_container_add (GTK_CONTAINER (self), priv->top_vbox);
 
@@ -410,7 +420,8 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
        /* Set window icon */
        window_icon = modest_platform_get_icon (MODEST_APP_ICON, MODEST_ICON_SIZE_BIG);
        if (window_icon) {
-               gtk_window_set_icon (GTK_WINDOW (self), window_icon);
+               GtkWindow *toplevel = (GtkWindow *) gtk_widget_get_toplevel ((GtkWidget *) self);
+               gtk_window_set_icon (toplevel, window_icon);
                g_object_unref (window_icon);
        }
 
@@ -452,6 +463,9 @@ modest_folder_window_new (TnyFolderStoreQuery *query)
 
 #ifdef MODEST_TOOLKIT_HILDON2
        GtkAccelGroup *accel_group;
+       guint accel_key;
+       GdkModifierType accel_mods;
+
        accel_group = gtk_accel_group_new ();
        gtk_accelerator_parse ("<Control>n", &accel_key, &accel_mods);
        gtk_widget_add_accelerator (priv->new_message_button, "clicked", accel_group,
@@ -587,6 +601,16 @@ setup_menu (ModestFolderWindow *self)
        modest_window_add_to_menu (MODEST_WINDOW (self), _("mcen_me_delete_folder"), NULL,
                                   MODEST_WINDOW_MENU_CALLBACK (set_delete_edit_mode),
                                   MODEST_DIMMING_CALLBACK (modest_ui_dimming_rules_on_folder_window_delete));
+#else
+       modest_window_add_to_menu (MODEST_WINDOW (self), _("mcen_me_rename_folder"), NULL,
+                                  MODEST_WINDOW_MENU_CALLBACK (modest_ui_actions_on_rename_folder),
+                                  NULL);
+       modest_window_add_to_menu (MODEST_WINDOW (self), _("mcen_me_move_folder"), NULL,
+                                  MODEST_WINDOW_MENU_CALLBACK (modest_ui_actions_on_move_to),
+                                  NULL);
+       modest_window_add_to_menu (MODEST_WINDOW (self), _("mcen_me_delete_folder"), NULL,
+                                  MODEST_WINDOW_MENU_CALLBACK (modest_ui_actions_on_delete_folder),
+                                  NULL);
 #endif
 
        modest_window_add_to_menu (MODEST_WINDOW (self), _("mcen_me_outbox_cancelsend"), NULL,
@@ -956,7 +980,7 @@ on_account_changed (TnyAccountStore *account_store,
                update_window_title (MODEST_FOLDER_WINDOW (user_data), account);
 }
 
-
+#ifdef MODEST_TOOLKIT_HILDON2
 static gboolean
 on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data)
 {
@@ -983,3 +1007,4 @@ on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer user_data)
 
        return FALSE;
 }
+#endif