Move some operations to properly find the parent window
[modest] / src / modest-utils.c
index 1956c3b..d611f3e 100644 (file)
@@ -53,6 +53,9 @@
 #include "modest-widget-memory.h"
 #include "widgets/modest-sort-criterium-view.h"
 #include "widgets/modest-header-window.h"
+#ifdef MODEST_TOOLKIT_GTK
+#include <modest-gtk-window-mgr.h>
+#endif
 #include <langinfo.h>
 
 GQuark
@@ -420,9 +423,9 @@ void
 modest_utils_show_dialog_and_forget (GtkWindow *parent_window,
                                     GtkDialog *dialog)
 {
-       g_return_if_fail (GTK_IS_WINDOW(parent_window));
        g_return_if_fail (GTK_IS_DIALOG(dialog));
 
+       g_return_if_fail (GTK_IS_WINDOW(parent_window));
        gtk_window_set_transient_for (GTK_WINDOW (dialog), parent_window);
 
        /* Destroy the dialog when it is closed: */
@@ -534,7 +537,7 @@ checked_modest_sort_criterium_view_add_sort_key (ModestSortCriteriumView *view,
 }
 
 static void
-launch_sort_headers_dialog (GtkWindow *parent_window,
+launch_sort_headers_dialog (ModestWindow *parent_window,
                            GtkDialog *dialog)
 {
        ModestHeaderView *header_view = NULL;
@@ -551,16 +554,9 @@ launch_sort_headers_dialog (GtkWindow *parent_window,
        GtkTreeSortable *sortable;
 
        /* Get header window */
-#ifndef MODEST_TOOLKIT_HILDON2
-       if (MODEST_IS_MAIN_WINDOW (parent_window)) {
-               header_view = MODEST_HEADER_VIEW(modest_main_window_get_child_widget (MODEST_MAIN_WINDOW(parent_window),
-                                                                                     MODEST_MAIN_WINDOW_WIDGET_TYPE_HEADER_VIEW));
-       }
-#else
        if (MODEST_IS_HEADER_WINDOW (parent_window)) {
                header_view = MODEST_HEADER_VIEW (modest_header_window_get_header_view (MODEST_HEADER_WINDOW (parent_window)));
        }
-#endif
        if (!header_view)
                return;
 
@@ -681,13 +677,13 @@ launch_sort_headers_dialog (GtkWindow *parent_window,
 }
 
 void
-modest_utils_run_sort_dialog (GtkWindow *parent_window,
+modest_utils_run_sort_dialog (ModestWindow *parent_window,
                              ModestSortDialogType type)
 {
        GtkWidget *dialog = NULL;
 
        /* Build dialog */
-       dialog = modest_platform_create_sort_dialog (parent_window);
+       dialog = modest_platform_create_sort_dialog (modest_toolkit_utils_parent_window (GTK_WIDGET (parent_window)));
        if (dialog == NULL)
                return;
        modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),