Also avoid shadows with viewport in scrollables
[modest] / src / widgets / modest-window-mgr.h
index d5eece0..88494ed 100644 (file)
@@ -31,7 +31,8 @@
 #define __MODEST_WINDOW_MGR_H__
 
 #include <glib-object.h>
-#include "widgets/modest-msg-view-window.h"
+#include "modest-window.h"
+#include <tny-header.h>
 
 G_BEGIN_DECLS
 
@@ -66,8 +67,10 @@ struct _ModestWindowMgrClass {
                                                                 GType window_type,
                                                                 gboolean show_toolbars,
                                                                 gboolean fullscreen);
+#ifndef MODEST_TOOLKIT_HILDON2
        ModestWindow *        (*get_main_window)                (ModestWindowMgr *self,
                                                                 gboolean show);
+#endif
        gboolean              (*close_all_windows)              (ModestWindowMgr *self);
        GtkWindow *           (*get_modal)                      (ModestWindowMgr *self);
        void                  (*set_modal)                      (ModestWindowMgr *self,
@@ -76,10 +79,19 @@ struct _ModestWindowMgrClass {
        gboolean              (*find_registered_header)         (ModestWindowMgr *self,
                                                                 TnyHeader *header,
                                                                 ModestWindow **win);
+       gboolean              (*find_registered_message_uid)    (ModestWindowMgr *self,
+                                                                const gchar *msg_uid,
+                                                                ModestWindow **win);
        GList *               (*get_window_list)                (ModestWindowMgr *self);
        ModestWindow *        (*show_initial_window)            (ModestWindowMgr *self);
        ModestWindow *        (*get_current_top)                (ModestWindowMgr *self);
+       gboolean              (*close_all_but_initial)          (ModestWindowMgr *self);
+
        gboolean              (*screen_is_on)                   (ModestWindowMgr *self);
+       void                  (*create_caches)                  (ModestWindowMgr *self);
+
+       ModestWindow *        (*get_folder_window)              (ModestWindowMgr *self);
+
        /* Signals */
        void (*window_list_empty) (ModestWindowMgr *self);
        void (*progress_list_changed) (ModestWindowMgr *self);
@@ -171,6 +183,7 @@ void           modest_window_mgr_show_toolbars         (ModestWindowMgr *self,
                                                        GType window_type,
                                                        gboolean show_toolbars,
                                                        gboolean fullscreen);
+#ifndef MODEST_TOOLKIT_HILDON2
 /**
  * modest_window_mgr_get_main_window:
  * @self: a #ModestWindowMgr
@@ -201,8 +214,7 @@ void modest_window_mgr_set_main_window (ModestWindowMgr *self, ModestWindow *mai
  * Returns: TRUE if there's a main window, FALSE otherwise
  **/
 gboolean  modest_window_mgr_main_window_exists       (ModestWindowMgr *self);
-
-
+#endif
 
 /**
  * modest_window_mgr_get_modal:
@@ -283,6 +295,20 @@ modest_window_mgr_get_help_id (ModestWindowMgr *self, GtkWindow *win);
 gboolean modest_window_mgr_find_registered_header (ModestWindowMgr *self,  TnyHeader *header,
                                               ModestWindow **win);
 
+
+/**
+ * modest_window_mgr_find_registered_header
+ * @self: a #ModestWindowMgr
+ * @msg_uid: a message uid
+ * 
+ * search for the given uid in both the list of preregistered uids and in the window list;
+ * if it's available in the window list, fill the *win out-param
+ *
+ * returns TRUE if found, FALSE otherwise
+ **/
+gboolean modest_window_mgr_find_registered_message_uid (ModestWindowMgr *self,  const gchar *msg_uid,
+                                                       ModestWindow **win);
+
 /**
  * modest_window_mgr_get_window_list:
  * @self: a #ModestWindowMgr
@@ -447,6 +473,30 @@ gboolean modest_window_mgr_has_progress_operation (ModestWindowMgr *self);
 gboolean modest_window_mgr_has_progress_operation_on_account (ModestWindowMgr *self,
                                                              const gchar *account_name);
 
+/**
+ * modest_window_mgr_create_caches:
+ * @self: a #ModestWindowMgr
+ *
+ * creates cached windows. This is called in modest main, just before the show-ui
+ * code. So it should be valid for the two startup ways (with --show-ui and without).
+ */
+void modest_window_mgr_create_caches (ModestWindowMgr *self);
+
+/**
+ * modest_window_mgr_close_all_but_initial:
+ * @self: a #ModestWindowMgr
+ *
+ * closes all but the initial window.
+ *
+ * Returns: %TRUE if the initial window is returned in @initial_window
+ * and it does not have any other dialog or window on top, otherwhise
+ * %FALSE
+ */
+gboolean modest_window_mgr_close_all_but_initial (ModestWindowMgr *self);
+
+ModestWindow *modest_window_mgr_get_folder_window (ModestWindowMgr *self);
+
+
 G_END_DECLS
 
 #endif /* __MODEST_WINDOW_MGR_H__ */