sync with 0.7.6cvs4
authorPaul Mangan <paul@claws-mail.org>
Wed, 15 May 2002 07:47:34 +0000 (07:47 +0000)
committerPaul Mangan <paul@claws-mail.org>
Wed, 15 May 2002 07:47:34 +0000 (07:47 +0000)
ChangeLog
ChangeLog.claws
ChangeLog.jp
configure.in
src/foldersel.c
src/imap.c
src/mainwindow.c
src/messageview.c

index 418a65d313e9d5644cf26b8b20ec05919f153f07..8afc97668dc98d95f18a14e2eee73908830fec17 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2002-05-15
+
+       * src/imap.c: imap_create_folder(): keep trailing directory separator
+         to create a folder that contains sub folder.
+
+2002-05-14
+
+       * src/foldersel.c: sort tree with case insensitive.
+       * src/mainwindow.c: allsel_cb()
+         src/messageview.c: messageview_select_all(): fixed 'Select all'
+         on MIME view.
+       * src/mainwindow.c: removed common and account prefs button from
+         the toolbar.
+
 2002-05-13
 
        * src/compose.c: compose_account_option_menu_create(): check if
@@ -13,7 +27,7 @@
          manual/en/*: updated the English manual.
        * faq/de/*
          faq/it/*: added German and Italian FAQ.
-         faq/en/*
+       * faq/en/*
          faq/es/*
          faq/fr/*: updated FAQs.
        * src/manual.[ch]
index 945e3e69772e9cee8e2195c76c1ca509a26354ef..f20d4e1056110bc9a004567aa4c67b15b618f1c5 100644 (file)
@@ -1,3 +1,8 @@
+2002-05-15 [paul]      0.7.5claws27
+
+       * sync with 0.7.6cvs4
+               see ChangeLog 2002-05-14 and 2002-05-15
+
 2002-05-14 [paul]      0.7.5claws26
 
        * sync with 0.7.6cvs1
index 0eed192db3b652308a613ea7a5c054fdcac63e7c..5739a147b91e1651ad3d940bf85f48a224e982db 100644 (file)
@@ -1,3 +1,17 @@
+2002-05-15
+
+       * src/imap.c: imap_create_folder(): ¥µ¥Ö¥Õ¥©¥ë¥À¤ò´Þ¤à¥Õ¥©¥ë¥À¤ò
+         ºîÀ®¤¹¤ë¤¿¤á¤ËËöÈø¤Î¥Ç¥£¥ì¥¯¥È¥ê¥»¥Ñ¥ì¡¼¥¿¤òÊݤĤ褦¤Ë¤·¤¿¡£
+
+2002-05-14
+
+       * src/foldersel.c: ¥Ä¥ê¡¼¤òÂ羮ʸ»ú¤ò¶èÊ̤»¤º¤Ë¥½¡¼¥È¡£
+       * src/mainwindow.c: allsel_cb()
+         src/messageview.c: messageview_select_all(): MIME ¥Ó¥å¡¼¤Ç¤Î
+         ¡Ö¤¹¤Ù¤ÆÁªÂò¡×¤ò½¤Àµ¡£
+       * src/mainwindow.c: Á´ÈÌ¡¦¥¢¥«¥¦¥ó¥È¤ÎÀßÄê¥Ü¥¿¥ó¤ò¥Ä¡¼¥ë¥Ð¡¼¤«¤é
+         ºï½ü¡£
+
 2002-05-13
 
        * src/compose.c: compose_account_option_menu_create(): ac->name ¤¬
@@ -13,7 +27,7 @@
          manual/en/*: ±Ñ¸ì¥Þ¥Ë¥å¥¢¥ë¤ò¹¹¿·¡£
        * faq/de/*
          faq/it/*: ¥É¥¤¥Ä¸ì¤È¥¤¥¿¥ê¥¢¸ì¥Þ¥Ë¥å¥¢¥ë¤òÄɲá£
-         faq/en/*
+       * faq/en/*
          faq/es/*
          faq/fr/*: FAQ ¤ò¹¹¿·¡£
        * src/manual.[ch]
index bc65bfdd23c8969fd6af1b3d561ae72fbcd9b21f..9e51f7fc5dca5fb29f8e7dff8d2f81c54ef853d0 100644 (file)
@@ -8,7 +8,7 @@ MINOR_VERSION=7
 MICRO_VERSION=5
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=claws26
+EXTRA_VERSION=claws27
 VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
 
 dnl set $target
index 0af020f736facc0a7186a92df281544660c6bf4d..be3b84c204bcaf6c6f104337501bf9564d2461de 100644 (file)
@@ -86,6 +86,10 @@ static void key_pressed              (GtkWidget      *widget,
                                 GdkEventKey    *event,
                                 gpointer        data);
 
+static gint foldersel_clist_compare    (GtkCList       *clist,
+                                        gconstpointer   ptr1,
+                                        gconstpointer   ptr2);
+
 FolderItem *foldersel_folder_sel(Folder *cur_folder,
                                 FolderSelectionType type,
                                 const gchar *default_folder)
@@ -170,6 +174,7 @@ static void foldersel_create(void)
        gtk_ctree_set_expander_style(GTK_CTREE(ctree),
                                     GTK_CTREE_EXPANDER_SQUARE);
        gtk_ctree_set_indent(GTK_CTREE(ctree), CTREE_INDENT);
+       gtk_clist_set_compare_func(GTK_CLIST(ctree), foldersel_clist_compare);
        GTK_WIDGET_UNSET_FLAGS(GTK_CLIST(ctree)->column[0].button,
                               GTK_CAN_FOCUS);
        /* gtk_signal_connect(GTK_OBJECT(ctree), "tree_select_row",
@@ -376,3 +381,17 @@ static void key_pressed(GtkWidget *widget, GdkEventKey *event, gpointer data)
        if (event && event->keyval == GDK_Escape)
                foldersel_cancel(NULL, NULL);
 }
+
+static gint foldersel_clist_compare(GtkCList *clist,
+                                   gconstpointer ptr1, gconstpointer ptr2)
+{
+       FolderItem *item1 = ((GtkCListRow *)ptr1)->data;
+       FolderItem *item2 = ((GtkCListRow *)ptr2)->data;
+
+       if (!item1->name)
+               return (item2->name != NULL);
+       if (!item2->name)
+               return -1;
+
+       return g_strcasecmp(item1->name, item2->name);
+}
index de06eb838ffcdc18792f4fcdfcfc9c88fed4cdf5..76319b792d494a5adc7ecfb32eb2f15be373fc43 100644 (file)
@@ -1268,8 +1268,10 @@ FolderItem *imap_create_folder(Folder *folder, FolderItem *parent,
        } else
                dirpath = g_strdup(name);
 
-       strtailchomp(dirpath, '/');
+       /* keep trailing directory separator to create a folder that contains
+          sub folder */
        imap_path = imap_locale_to_modified_utf7(dirpath);
+       strtailchomp(dirpath, '/');
        Xstrdup_a(new_name, name, {g_free(dirpath); return NULL;});
        strtailchomp(new_name, '/');
        separator = imap_get_path_separator(IMAP_FOLDER(folder), imap_path);
index 902771e5aa0515ec87b8921804f9815ad0dbfa04..e9dedbad7ac3c856cba0058f5f32c507908f41ed 100644 (file)
@@ -169,9 +169,11 @@ static void toolbar_prefs_cb               (GtkWidget      *widget,
 static void toolbar_account_cb         (GtkWidget      *widget,
                                         gpointer        data);
 
+#if 0
 static void toolbar_account_button_pressed     (GtkWidget      *widget,
                                                 GdkEventButton *event,
                                                 gpointer        data);
+#endif
 static void ac_label_button_pressed            (GtkWidget      *widget,
                                                 GdkEventButton *event,
                                                 gpointer        data);
@@ -1549,39 +1551,41 @@ void main_window_set_toolbar_sensitive(MainWindow *mainwin)
 {
        SensitiveCond state;
        gboolean sensitive;
-       gint i;
+       gint i = 0;
 
        struct {
                GtkWidget *widget;
                SensitiveCond cond;
        } entry[11];
 
-       entry[0].widget  = mainwin->get_btn;
-       entry[0].cond    = M_HAVE_ACCOUNT|M_UNLOCKED;
-       entry[1].widget  = mainwin->getall_btn;
-       entry[1].cond    = M_HAVE_ACCOUNT|M_UNLOCKED;
-       entry[2].widget  = mainwin->compose_news_btn;
-       entry[2].cond    = M_HAVE_NEWS_ACCOUNT;
-       entry[3].widget  = mainwin->reply_btn;
-       entry[3].cond    = M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST;
-       entry[4].widget  = mainwin->replyall_btn;
-       entry[4].cond    = M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST;
-       entry[5].widget  = mainwin->replysender_btn;
-       entry[5].cond    = M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST;
-       entry[6].widget  = mainwin->fwd_btn;
-       entry[6].cond    = M_HAVE_ACCOUNT|M_TARGET_EXIST;
-/*     entry[6].widget  = mainwin->prefs_btn;
-       entry[6].cond    = M_UNLOCKED;
-       entry[7].widget  = mainwin->account_btn;
-       entry[7].cond    = M_UNLOCKED; */
-       entry[7].widget  = mainwin->next_btn;
-       entry[7].cond    = M_MSG_EXIST;
-       entry[8].widget  = mainwin->delete_btn;
-       entry[8].cond    = M_TARGET_EXIST|M_ALLOW_DELETE|M_UNLOCKED;
-       entry[9].widget = mainwin->exec_btn;
-       entry[9].cond   = M_MSG_EXIST|M_EXEC|M_UNLOCKED;
-       entry[10].widget = NULL;
-       entry[10].cond   = 0;
+#define SET_WIDGET_COND(w, c)  \
+{                              \
+       entry[i].widget = w;    \
+       entry[i].cond = c;      \
+       i++;                    \
+}
+
+       SET_WIDGET_COND(mainwin->get_btn, M_HAVE_ACCOUNT|M_UNLOCKED);
+       SET_WIDGET_COND(mainwin->getall_btn, M_HAVE_ACCOUNT|M_UNLOCKED);
+       SET_WIDGET_COND(mainwin->compose_news_btn, M_HAVE_ACCOUNT);
+       SET_WIDGET_COND(mainwin->reply_btn,
+                       M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST);
+       SET_WIDGET_COND(mainwin->replyall_btn,
+                       M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST);
+       SET_WIDGET_COND(mainwin->replysender_btn,
+                       M_HAVE_ACCOUNT|M_SINGLE_TARGET_EXIST);
+       SET_WIDGET_COND(mainwin->fwd_btn, M_HAVE_ACCOUNT|M_TARGET_EXIST);
+#if 0
+       SET_WIDGET_COND(mainwin->prefs_btn, M_UNLOCKED);
+       SET_WIDGET_COND(mainwin->account_btn, M_UNLOCKED);
+#endif
+       SET_WIDGET_COND(mainwin->next_btn, M_MSG_EXIST);
+       SET_WIDGET_COND(mainwin->delete_btn,
+                       M_TARGET_EXIST|M_ALLOW_DELETE|M_UNLOCKED);
+       SET_WIDGET_COND(mainwin->exec_btn, M_MSG_EXIST|M_EXEC|M_UNLOCKED);
+       SET_WIDGET_COND(NULL, 0);
+
+#undef SET_WIDGET_COND
 
        state = main_window_get_current_state(mainwin);
 
@@ -1938,10 +1942,10 @@ static void main_window_toolbar_create(MainWindow *mainwin,
        GtkWidget *replysender_btn;
        GtkWidget *fwd_btn;
        GtkWidget *send_btn;
-       /*
+#if 0
        GtkWidget *prefs_btn;
        GtkWidget *account_btn;
-       */
+#endif
        GtkWidget *next_btn;
        GtkWidget *delete_btn;
        GtkWidget *exec_btn;
@@ -2075,13 +2079,13 @@ static void main_window_toolbar_create(MainWindow *mainwin,
                                           toolbar_next_unread_cb,
                                           mainwin);
 
-       /*
+#if 0
        gtk_toolbar_append_space(GTK_TOOLBAR(toolbar));
 
        icon_wid = stock_pixmap_widget(container, STOCK_PIXMAP_PREFERENCES);
        prefs_btn = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar),
                                            _("Prefs"),
-                                           _("Common preference"),
+                                           _("Common preferences"),
                                            "Prefs",
                                            icon_wid,
                                            toolbar_prefs_cb,
@@ -2097,7 +2101,7 @@ static void main_window_toolbar_create(MainWindow *mainwin,
        gtk_signal_connect(GTK_OBJECT(account_btn), "button_press_event",
                           GTK_SIGNAL_FUNC(toolbar_account_button_pressed),
                           mainwin);
-       */
+#endif
 
        gtk_signal_connect(GTK_OBJECT(reply_btn), "button_press_event",
                GTK_SIGNAL_FUNC(toolbar_reply_popup_cb),
@@ -2116,23 +2120,23 @@ static void main_window_toolbar_create(MainWindow *mainwin,
                mainwin);
        
 
-       mainwin->toolbar                         = toolbar;
-       mainwin->get_btn                         = get_btn;
-       mainwin->getall_btn                      = getall_btn;
-       mainwin->compose_mail_btn                = compose_mail_btn;
-       mainwin->compose_news_btn                = compose_news_btn;
-       mainwin->reply_btn                       = reply_btn;
-       mainwin->replyall_btn                    = replyall_btn;
-       mainwin->replysender_btn                 = replysender_btn;
-       mainwin->fwd_btn         = fwd_btn;
-       mainwin->send_btn        = send_btn;
-       /*
-       mainwin->prefs_btn       = prefs_btn;
-       mainwin->account_btn     = account_btn;
-       */
-       mainwin->next_btn        = next_btn;
-       mainwin->delete_btn      = delete_btn;
-       mainwin->exec_btn        = exec_btn;
+       mainwin->toolbar                = toolbar;
+       mainwin->get_btn                = get_btn;
+       mainwin->getall_btn             = getall_btn;
+       mainwin->compose_mail_btn       = compose_mail_btn;
+       mainwin->compose_news_btn       = compose_news_btn;
+       mainwin->reply_btn              = reply_btn;
+       mainwin->replyall_btn           = replyall_btn;
+       mainwin->replysender_btn        = replysender_btn;
+       mainwin->fwd_btn                = fwd_btn;
+       mainwin->send_btn               = send_btn;
+       #if 0
+       mainwin->prefs_btn              = prefs_btn;
+       mainwin->account_btn            = account_btn;
+       #endif
+       mainwin->next_btn               = next_btn;
+       mainwin->delete_btn             = delete_btn;
+       mainwin->exec_btn               = exec_btn;
 
        gtk_widget_show_all(toolbar);
 }
@@ -2358,6 +2362,7 @@ static void toolbar_account_cb    (GtkWidget      *widget,
        prefs_account_open_cb(mainwin, 0, NULL);
 }
 
+#if 0
 static void toolbar_account_button_pressed(GtkWidget *widget,
                                           GdkEventButton *event,
                                           gpointer data)
@@ -2375,6 +2380,7 @@ static void toolbar_account_button_pressed(GtkWidget *widget,
                       menu_button_position, widget,
                       event->button, event->time);
 }
+#endif
 
 static void ac_label_button_pressed(GtkWidget *widget, GdkEventButton *event,
                                    gpointer data)
index 68f2515b6cf22cf0264cc4ae192397fe2c69bcc9..72ab34eec79d1e8e0f90bfe5083c21dd4c8eeef3 100644 (file)
@@ -527,23 +527,20 @@ void messageview_copy_clipboard(MessageView *messageview)
 
 void messageview_select_all(MessageView *messageview)
 {
-       gint displaytype = /* force MVIEV_TEXT on first page */
-               ((messageview->type == MVIEW_MIME)
-               && (gtk_notebook_get_current_page(GTK_NOTEBOOK(
-                               messageview->mimeview->notebook)) > 0))
-               ? MVIEW_MIME
-               : MVIEW_TEXT;
-
-       switch (displaytype) {
-       case MVIEW_TEXT:
-               gtk_editable_select_region(GTK_EDITABLE(messageview->textview->text), 0, -1);
-               break;
-       case MVIEW_MIME:
-               if (messageview->mimeview->type == MIMEVIEW_TEXT)
-                       gtk_editable_select_region(GTK_EDITABLE(messageview->mimeview->textview->text), 0, -1);
-       default:
-               break;
+       GtkWidget *text = NULL;
+
+       if (messageview->type == MVIEW_TEXT)
+               text = messageview->textview->text;
+       else if (messageview->type == MVIEW_MIME) {
+               if (gtk_notebook_get_current_page
+                       (GTK_NOTEBOOK(messageview->mimeview->notebook)) == 0)
+                       text = messageview->textview->text;
+               else if (messageview->mimeview->type == MIMEVIEW_TEXT)
+                       text = messageview->mimeview->textview->text;
        }
+
+       if (text)
+               gtk_editable_select_region(GTK_EDITABLE(text), 0, -1);
 }
 
 void messageview_set_position(MessageView *messageview, gint pos)