2005-05-06 [paul] 1.9.6cvs56
[claws.git] / src / mainwindow.c
index b2ae49058d94f7676309bb953c78fe5df60e918c..335a12ce1332d35636d9edfba73195bdc65d434d 100644 (file)
@@ -1937,13 +1937,13 @@ void main_window_show(MainWindow *mainwin)
                                  prefs_common.mainwin_x,
                                  prefs_common.mainwin_y);
 
-       gtk_widget_set_usize(GTK_WIDGET_PTR(mainwin->folderview),
+       gtk_widget_set_size_request(GTK_WIDGET_PTR(mainwin->folderview),
                             prefs_common.folderview_width,
                             prefs_common.folderview_height);
-       gtk_widget_set_usize(GTK_WIDGET_PTR(mainwin->summaryview),
+       gtk_widget_set_size_request(GTK_WIDGET_PTR(mainwin->summaryview),
                             prefs_common.summaryview_width,
                             prefs_common.summaryview_height);
-       gtk_widget_set_usize(GTK_WIDGET_PTR(mainwin->messageview),
+       gtk_widget_set_size_request(GTK_WIDGET_PTR(mainwin->messageview),
                             prefs_common.msgview_width,
                             prefs_common.msgview_height);
 
@@ -2008,35 +2008,63 @@ static void main_window_set_widgets(MainWindow *mainwin, SeparateType type)
 
        /* create separated window(s) if needed */
        if (type & SEPARATE_FOLDER) {
+               static GdkGeometry folderwin_geometry;
+               
                folderwin = gtk_window_new(GTK_WINDOW_TOPLEVEL);
                gtk_window_set_title(GTK_WINDOW(folderwin),
                                     _("Sylpheed - Folder View"));
-               gtk_window_set_resizable(GTK_WINDOW(folderwin), TRUE);
-               gtk_window_move(GTK_WINDOW(folderwin), prefs_common.folderwin_x,
+
+               gtk_window_move(GTK_WINDOW(folderwin),
+                               prefs_common.folderwin_x,
                                prefs_common.folderwin_y);
+
+               if (!folderwin_geometry.min_height) {
+                       folderwin_geometry.min_width = 320;
+                       folderwin_geometry.min_height = 200;
+               }
+               gtk_window_set_geometry_hints(GTK_WINDOW(folderwin), NULL,
+                                             &folderwin_geometry, GDK_HINT_MIN_SIZE);
+                               
+               gtk_widget_set_size_request(folderwin,
+                                           prefs_common.folderview_width,
+                                           prefs_common.folderview_height);
+
                gtk_container_set_border_width(GTK_CONTAINER(folderwin),
                                               BORDER_WIDTH);
+
                g_signal_connect(G_OBJECT(folderwin), "delete_event",
                                 G_CALLBACK(folder_window_close_cb),
                                   mainwin);
                gtk_container_add(GTK_CONTAINER(folderwin),
                                  GTK_WIDGET_PTR(mainwin->folderview));
                gtk_widget_realize(folderwin);
+
                if (prefs_common.folderview_visible)
                        gtk_widget_show(folderwin);
        }
 
        if (type & SEPARATE_MESSAGE) {
+               static GdkGeometry msgwin_geometry;
+               
                messagewin = gtk_window_new(GTK_WINDOW_TOPLEVEL);
                gtk_window_set_title(GTK_WINDOW(messagewin),
                                     _("Sylpheed - Message View"));
-               gtk_window_set_resizable(GTK_WINDOW(messagewin), TRUE);
+                                    
                gtk_window_move(GTK_WINDOW(messagewin), 
                                prefs_common.main_msgwin_x,
                                prefs_common.main_msgwin_y);
+
+               if (!msgwin_geometry.min_height) {
+                       msgwin_geometry.min_width = 320;
+                       msgwin_geometry.min_height = 200;
+               }
+               gtk_window_set_geometry_hints(GTK_WINDOW(messagewin), NULL,
+                                             &msgwin_geometry, GDK_HINT_MIN_SIZE);
+               
                gtk_widget_set_size_request(messagewin, 
                                            prefs_common.msgwin_width,
                                            prefs_common.msgwin_height);
+
                gtk_container_set_border_width(GTK_CONTAINER(messagewin),
                                               BORDER_WIDTH);
                g_signal_connect(G_OBJECT(messagewin), "delete_event",
@@ -2261,13 +2289,13 @@ static gboolean toolbar_account_button_pressed(GtkWidget *widget,
 static void toolbar_child_attached(GtkWidget *widget, GtkWidget *child,
                                   gpointer data)
 {
-       gtk_widget_set_usize(child, 1, -1);
+       gtk_widget_set_size_request(child, 1, -1);
 }
 
 static void toolbar_child_detached(GtkWidget *widget, GtkWidget *child,
                                   gpointer data)
 {
-       gtk_widget_set_usize(child, -1, -1);
+       gtk_widget_set_size_request(child, -1, -1);
 }
 
 static gboolean ac_label_button_pressed(GtkWidget *widget, GdkEventButton *event,
@@ -2824,7 +2852,9 @@ static void delete_duplicated_all_cb(MainWindow *mainwin, guint action,
        struct DelDupsData data = {0, 0};
 
        folder_func_to_all_folders(deldup_all, &data);
-       alertpanel_notice(_("Deleted %d duplicate message(s) in %d folders.\n"),
+       alertpanel_notice(ngettext("Deleted %d duplicate message in %d folders.\n",
+                                  "Deleted %d duplicate messages in %d folders.\n",
+                                  data.dups),
                          data.dups, data.folders);
 }