claws-mail_2.9.1.bb : version bump and new embedded GUI thanks to poky
authorGraeme Gregory <dp@xora.org.uk>
Wed, 18 Jul 2007 14:08:35 +0000 (14:08 +0000)
committerGraeme Gregory <dp@xora.org.uk>
Wed, 18 Jul 2007 14:08:35 +0000 (14:08 +0000)
claws-plugin-* : version bumps for above, thanks to poky

packages/sylpheed/claws-mail.inc [new file with mode: 0644]
packages/sylpheed/claws-mail_2.9.1.bb [new file with mode: 0644]
packages/sylpheed/claws-plugin-gtkhtml2-viewer_0.15.bb [new file with mode: 0644]
packages/sylpheed/claws-plugin-mailmbox_1.13.bb [new file with mode: 0644]
packages/sylpheed/claws-plugin-rssyl_0.13.bb [new file with mode: 0644]
packages/sylpheed/files/desktop.patch [new file with mode: 0644]
packages/sylpheed/files/streamline-ui.patch [new file with mode: 0644]

diff --git a/packages/sylpheed/claws-mail.inc b/packages/sylpheed/claws-mail.inc
new file mode 100644 (file)
index 0000000..e62ca90
--- /dev/null
@@ -0,0 +1,54 @@
+SECTION = "x11/network"
+DESCRIPTION = "Mail user agent"
+DEPENDS = "gtk+ libetpan openssl aspell"
+LICENSE = "GPL"
+PR = "r0"
+
+SRC_URI = "\
+       ${SOURCEFORGE_MIRROR}/sylpheed-claws/claws-mail-${PV}.tar.bz2   \
+       file://desktop.patch;patch=1                            \
+       file://streamline-ui.patch;patch=1                              \
+       "
+
+FILES_${PN} = "${bindir} ${datadir}/pixmaps ${datadir}/applications"
+
+EXTRA_OECONF = "--disable-aspell-test          \
+               --enable--aspell                \
+               --disable-manual                \
+               --disable-crash-dialog          \
+               --disable-jpilot                \
+               --disable-trayicon-plugin       \
+               --disable-spamassassin-plugin   \
+               --disable-bogofilter-plugin     \
+               --disable-pgpcore-plugin        \
+               --disable-pgpmime-plugin        \
+               --disable-pgpinline-plugin      \
+               --disable-dillo-viewer-plugin   \
+               --disable-clamav-plugin         \
+               --disable-gnomeprint            \
+               --disable-valgrind              \
+               "
+
+CFLAGS += "-D_GNU_SOURCE"
+
+inherit autotools pkgconfig
+
+
+do_configure() {
+       gnu-configize
+       libtoolize --force
+       oe_runconf
+}
+
+do_install_append() {
+       install -d ${D}${datadir}/applications
+       install -m 0644 claws-mail.desktop ${D}${datadir}/applications/
+       install -d ${D}${datadir}/pixmaps
+       install -m 0644 claws-mail.png ${D}${datadir}/pixmaps/
+       mv ${D}${bindir}/${TARGET_SYS}-claws-mail ${D}${bindir}/${PN}
+}
+
+do_stage () {
+       autotools_stage_all
+}
+
diff --git a/packages/sylpheed/claws-mail_2.9.1.bb b/packages/sylpheed/claws-mail_2.9.1.bb
new file mode 100644 (file)
index 0000000..f8a8396
--- /dev/null
@@ -0,0 +1 @@
+require claws-mail.inc
diff --git a/packages/sylpheed/claws-plugin-gtkhtml2-viewer_0.15.bb b/packages/sylpheed/claws-plugin-gtkhtml2-viewer_0.15.bb
new file mode 100644 (file)
index 0000000..5ca95d9
--- /dev/null
@@ -0,0 +1,20 @@
+SECTION = "x11/network"
+DESCRIPTION = "Mail user agent plugins"
+DEPENDS = "claws-mail gtkhtml2 curl"
+LICENSE = "GPL"
+PR = "r0"
+
+SRC_URI = "http://www.claws-mail.org/downloads/plugins/gtkhtml2_viewer-${PV}.tar.gz"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/gtkhtml2_viewer-${PV}"
+
+do_configure() {
+    gnu-configize
+    libtoolize --force
+    oe_runconf
+}
+
+FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
+
diff --git a/packages/sylpheed/claws-plugin-mailmbox_1.13.bb b/packages/sylpheed/claws-plugin-mailmbox_1.13.bb
new file mode 100644 (file)
index 0000000..03e939e
--- /dev/null
@@ -0,0 +1,20 @@
+SECTION = "x11/network"
+DESCRIPTION = "Mail user agent plugins"
+DEPENDS = "claws-mail"
+LICENSE = "GPL"
+PR = "r1"
+
+SRC_URI = "http://www.claws-mail.org/downloads/plugins/mailmbox-${PV}.tar.gz"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/mailmbox-${PV}"
+
+do_configure() {
+    gnu-configize
+    libtoolize --force
+    oe_runconf
+}
+
+FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
+FILES_${PN}-dbg = "${libdir}/claws-mail/plugins/.debug"
diff --git a/packages/sylpheed/claws-plugin-rssyl_0.13.bb b/packages/sylpheed/claws-plugin-rssyl_0.13.bb
new file mode 100644 (file)
index 0000000..29fc245
--- /dev/null
@@ -0,0 +1,20 @@
+SECTION = "x11/network"
+DESCRIPTION = "Mail user agent plugins"
+DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+"
+LICENSE = "GPL"
+PR = "r0"
+
+SRC_URI = "http://www.claws-mail.org/downloads/plugins/rssyl-${PV}.tar.gz"
+
+inherit autotools pkgconfig
+
+S = "${WORKDIR}/rssyl-${PV}"
+
+do_configure() {
+    gnu-configize
+    libtoolize --force
+    oe_runconf
+}
+
+FILES_${PN} = "${libdir}/claws-mail/plugins/*.so"
+
diff --git a/packages/sylpheed/files/desktop.patch b/packages/sylpheed/files/desktop.patch
new file mode 100644 (file)
index 0000000..c5ed7a9
--- /dev/null
@@ -0,0 +1,19 @@
+Index: claws-mail-2.9.1/claws-mail.desktop
+===================================================================
+--- claws-mail-2.9.1.orig/claws-mail.desktop   2007-04-24 17:40:20.000000000 +0100
++++ claws-mail-2.9.1/claws-mail.desktop        2007-04-25 07:08:36.000000000 +0100
+@@ -1,11 +1,11 @@
+ [Desktop Entry]
+ Encoding=UTF-8
+-Name=Claws Mail
++Name=Mail
+ Exec=claws-mail
+ Icon=claws-mail
+-Info="Claws Mail"
++Info=Email Application
+ Categories=GTK;Network;Email;
+-Comment="Gtk+ based Mail Client"
++Comment=Email Application
+ Terminal=false
+ Type=Application
+ StartupNotify=true
diff --git a/packages/sylpheed/files/streamline-ui.patch b/packages/sylpheed/files/streamline-ui.patch
new file mode 100644 (file)
index 0000000..29a52ff
--- /dev/null
@@ -0,0 +1,1008 @@
+Index: claws-mail-2.9.1/src/mainwindow.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/mainwindow.c     2007-04-25 07:40:10.000000000 +0100
++++ claws-mail-2.9.1/src/mainwindow.c  2007-04-25 10:26:40.000000000 +0100
+@@ -189,9 +189,6 @@
+ static void toggle_statusbar_cb        (MainWindow    *mainwin,
+                                 guint          action,
+                                 GtkWidget     *widget);
+-static void set_layout_cb      (MainWindow    *mainwin,
+-                                guint          action,
+-                                GtkWidget     *widget);
+ static void addressbook_open_cb       (MainWindow     *mainwin,
+                                guint           action,
+@@ -538,94 +535,24 @@
+       {N_("/_Edit/_Search folder..."),        "<shift><control>F", search_cb, 1, NULL},
+       {N_("/_Edit/_Quick search"),            "slash", mainwindow_quicksearch, 0, NULL},
+       {N_("/_View"),                          NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/Show or hi_de"),            NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/Show or hi_de/_Message view"),
+-                                              "V", toggle_message_cb, 0, "<ToggleItem>"},
+-      {N_("/_View/Show or hi_de/_Toolbar"),
+-                                              NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/Show or hi_de/_Toolbar/Text _below icons"),
+-                                              NULL, toggle_toolbar_cb, TOOLBAR_BOTH, "<RadioItem>"},
+-      {N_("/_View/Show or hi_de/_Toolbar/Text be_side icons"),
+-                                              NULL, toggle_toolbar_cb, TOOLBAR_BOTH_HORIZ, "/View/Show or hide/Toolbar/Text below icons"},
+-      {N_("/_View/Show or hi_de/_Toolbar/_Icons only"),
+-                                              NULL, toggle_toolbar_cb, TOOLBAR_ICON, "/View/Show or hide/Toolbar/Text below icons"},
+-      {N_("/_View/Show or hi_de/_Toolbar/_Text only"),
+-                                              NULL, toggle_toolbar_cb, TOOLBAR_TEXT, "/View/Show or hide/Toolbar/Text below icons"},
+-      {N_("/_View/Show or hi_de/_Toolbar/_Hide"),
+-                                              NULL, toggle_toolbar_cb, TOOLBAR_NONE, "/View/Show or hide/Toolbar/Text below icons"},
+-      {N_("/_View/Show or hi_de/Status _bar"),
+-                                              NULL, toggle_statusbar_cb, 0, "<ToggleItem>"},
+       {N_("/_View/Set displayed _columns"),   NULL, NULL, 0, "<Branch>"},
+       {N_("/_View/Set displayed _columns/in _Folder list..."),        NULL, set_folder_display_item_cb, 0, NULL},
+       {N_("/_View/Set displayed _columns/in _Message list..."),NULL, set_summary_display_item_cb, 0, NULL},
+       {N_("/_View/---"),                      NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/La_yout"),                  NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/Layout/_Standard"),         NULL, set_layout_cb, NORMAL_LAYOUT, "<RadioItem>"},
+-      {N_("/_View/Layout/_Three columns"),    NULL, set_layout_cb, VERTICAL_LAYOUT, "/View/Layout/Standard"},
+-      {N_("/_View/Layout/_Wide message"),     NULL, set_layout_cb, WIDE_LAYOUT, "/View/Layout/Standard"},
+-      {N_("/_View/Layout/W_ide message list"),NULL, set_layout_cb, WIDE_MSGLIST_LAYOUT, "/View/Layout/Standard"},
+-      {N_("/_View/Layout/S_mall screen"),     NULL, set_layout_cb, SMALL_LAYOUT, "/View/Layout/Standard"},
+-      {N_("/_View/---"),                      NULL, NULL, 0, "<Separator>"},
+       {N_("/_View/_Sort"),                    NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/_Sort/by _number"),         NULL, sort_summary_cb, SORT_BY_NUMBER, "<RadioItem>"},
+-      {N_("/_View/_Sort/by S_ize"),           NULL, sort_summary_cb, SORT_BY_SIZE, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _Date"),           NULL, sort_summary_cb, SORT_BY_DATE, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _From"),           NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _To"),             NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by S_ubject"),        NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _color label"),
+-                                              NULL, sort_summary_cb, SORT_BY_LABEL, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _mark"),           NULL, sort_summary_cb, SORT_BY_MARK, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by _status"),         NULL, sort_summary_cb, SORT_BY_STATUS, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by a_ttachment"),
+-                                              NULL, sort_summary_cb, SORT_BY_MIME, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by score"),           NULL, sort_summary_cb, SORT_BY_SCORE, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/by locked"),          NULL, sort_summary_cb, SORT_BY_LOCKED, "/View/Sort/by number"},
+-      {N_("/_View/_Sort/D_on't sort"),        NULL, sort_summary_cb, SORT_BY_NONE, "/View/Sort/by number"},
++      {N_("/_View/_Sort/by _Date"),           NULL, sort_summary_cb, SORT_BY_DATE, "<RadioItem>"},
++      {N_("/_View/_Sort/by _From"),           NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by Date"},
++      {N_("/_View/_Sort/by _To"),             NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by Date"},
++      {N_("/_View/_Sort/by S_ubject"),        NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by Date"},
+       {N_("/_View/_Sort/---"),                NULL, NULL, 0, "<Separator>"},
+       {N_("/_View/_Sort/Ascending"),          NULL, sort_summary_type_cb, SORT_ASCENDING, "<RadioItem>"},
+       {N_("/_View/_Sort/Descending"),         NULL, sort_summary_type_cb, SORT_DESCENDING, "/View/Sort/Ascending"},
+-      {N_("/_View/_Sort/---"),                NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Sort/_Attract by subject"),
+-                                              NULL, attract_by_subject_cb, 0, NULL},
+       {N_("/_View/Th_read view"),             "<control>T", thread_cb, 0, "<ToggleItem>"},
+       {N_("/_View/E_xpand all threads"),      NULL, expand_threads_cb, 0, NULL},
+       {N_("/_View/Co_llapse all threads"),    NULL, collapse_threads_cb, 0, NULL},
+       {N_("/_View/_Hide read messages"),      NULL, hide_read_messages, 0, "<ToggleItem>"},
+-      {N_("/_View/---"),                      NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to"),                   NULL, NULL, 0, "<Branch>"},
+-      {N_("/_View/_Go to/_Previous message"), "P", prev_cb, 0, NULL},
+-      {N_("/_View/_Go to/_Next message"),     "N", next_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/P_revious unread message"),
+-                                              "<shift>P", prev_unread_cb, 0, NULL},
+-      {N_("/_View/_Go to/N_ext unread message"),
+-                                              "<shift>N", next_unread_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/Previous ne_w message"),     NULL, prev_new_cb, 0, NULL},
+-      {N_("/_View/_Go to/Ne_xt new message"), NULL, next_new_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/Previous _marked message"),
+-                                              NULL, prev_marked_cb, 0, NULL},
+-      {N_("/_View/_Go to/Next m_arked message"),
+-                                              NULL, next_marked_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/Previous _labeled message"),
+-                                              NULL, prev_labeled_cb, 0, NULL},
+-      {N_("/_View/_Go to/Next la_beled message"),
+-                                              NULL, next_labeled_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/Last read message"),
+-                                              NULL, last_read_cb, 0, NULL},
+-      {N_("/_View/_Go to/Parent message"),
+-                                              "<control>Up", parent_cb, 0, NULL},
+-      {N_("/_View/_Go to/---"),               NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/_Go to/Next unread _folder"),       "<shift>G", goto_unread_folder_cb, 0, NULL},
+-      {N_("/_View/_Go to/_Other folder..."),  "G", goto_folder_cb, 0, NULL},
+-      {N_("/_View/---"),                      NULL, NULL, 0, "<Separator>"},
+-
+ #define ENC_SEPARATOR \
+       {N_("/_View/Character _encoding/---"),          NULL, NULL, 0, "<Separator>"}
+ #define ENC_ACTION(action) \
+@@ -742,7 +669,6 @@
+ #undef DEC_ACTION
+       {N_("/_View/---"),                      NULL, NULL, 0, "<Separator>"},
+-      {N_("/_View/Open in new _window"),      "<control><alt>N", open_msg_cb, 0, NULL},
+       {N_("/_View/Mess_age source"),          "<control>U", view_source_cb, 0, NULL},
+       {N_("/_View/All headers"),              "<control>H", show_all_header_cb, 0, "<ToggleItem>"},
+       {N_("/_View/Quotes"),                   NULL, NULL, 0, "<Branch>"},
+@@ -1137,23 +1063,14 @@
+       gint i;
+       guint n_menu_entries;
+-      static GdkGeometry geometry;
+-
+       debug_print("Creating main window...\n");
+       mainwin = g_new0(MainWindow, 1);
+       /* main window */
+       window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "mainwindow");
+-      gtk_window_set_title(GTK_WINDOW(window), PROG_VERSION);
++      gtk_window_set_title(GTK_WINDOW(window), _("Mail"));
+       gtk_window_set_resizable(GTK_WINDOW(window), TRUE);
+-      if (!geometry.min_height) {
+-              geometry.min_width = 320;
+-              geometry.min_height = 200;
+-      }
+-      gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry,
+-                                    GDK_HINT_MIN_SIZE);
+-
+       g_signal_connect(G_OBJECT(window), "delete_event",
+                        G_CALLBACK(main_window_close_cb), mainwin);
+       MANAGE_WINDOW_SIGNALS_CONNECT(window);
+@@ -1184,21 +1101,9 @@
+ /*    gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List"));
+       main_create_mailing_list_menu (mainwin, NULL); */
+-      menu_set_sensitive(ifactory, "/Help/Manual", manual_available(MANUAL_MANUAL_LOCAL));
+-
+-      if (prefs_common.toolbar_detachable) {
+-              handlebox = gtk_handle_box_new();
+-              gtk_widget_show(handlebox);
+-              gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
+-              g_signal_connect(G_OBJECT(handlebox), "child_attached",
+-                               G_CALLBACK(toolbar_child_attached), mainwin);
+-              g_signal_connect(G_OBJECT(handlebox), "child_detached",
+-                               G_CALLBACK(toolbar_child_detached), mainwin);
+-      } else {
+-              handlebox = gtk_hbox_new(FALSE, 0);
+-              gtk_widget_show(handlebox);
+-              gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
+-      }
++      handlebox = gtk_hbox_new(FALSE, 0);
++      gtk_widget_show(handlebox);
++      gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
+       /* link window to mainwin->window to avoid gdk warnings */
+       mainwin->window       = window;
+       
+@@ -1405,36 +1310,6 @@
+               (ifactory, "/View/Character encoding/Auto detect");
+       gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);
+-      switch (prefs_common.toolbar_style) {
+-      case TOOLBAR_NONE:
+-              menuitem = gtk_item_factory_get_item
+-                      (ifactory, "/View/Show or hide/Toolbar/Hide");
+-              break;
+-      case TOOLBAR_ICON:
+-              menuitem = gtk_item_factory_get_item
+-                      (ifactory, "/View/Show or hide/Toolbar/Icons only");
+-              break;
+-      case TOOLBAR_TEXT:
+-              menuitem = gtk_item_factory_get_item
+-                      (ifactory, "/View/Show or hide/Toolbar/Text only");
+-              break;
+-      case TOOLBAR_BOTH:
+-              menuitem = gtk_item_factory_get_item
+-                      (ifactory, "/View/Show or hide/Toolbar/Text below icons");
+-              break;
+-      case TOOLBAR_BOTH_HORIZ:
+-              menuitem = gtk_item_factory_get_item
+-                      (ifactory,
+-                       "/View/Show or hide/Toolbar/Text beside icons");
+-      }
+-      gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);
+-
+-      gtk_widget_hide(mainwin->hbox_stat);
+-      menuitem = gtk_item_factory_get_item
+-              (ifactory, "/View/Show or hide/Status bar");
+-      gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem),
+-                                     prefs_common.show_statusbar);
+-      
+       /* set account selection menu */
+       ac_menu = gtk_item_factory_get_widget
+               (ifactory, "/Configuration/Change current account");
+@@ -2284,16 +2159,6 @@
+               {"/View/Expand all threads"        , M_MSG_EXIST},
+               {"/View/Collapse all threads"      , M_MSG_EXIST},
+               {"/View/Hide read messages"        , M_HIDE_READ_MSG},
+-              {"/View/Go to/Previous message"        , M_MSG_EXIST},
+-              {"/View/Go to/Next message"        , M_MSG_EXIST},
+-              {"/View/Go to/Previous unread message" , M_MSG_EXIST},
+-              {"/View/Go to/Previous new message"    , M_MSG_EXIST},
+-              {"/View/Go to/Previous marked message" , M_MSG_EXIST},
+-              {"/View/Go to/Previous labeled message", M_MSG_EXIST},
+-              {"/View/Go to/Next labeled message", M_MSG_EXIST},
+-              {"/View/Go to/Last read message"   , M_SINGLE_TARGET_EXIST},
+-              {"/View/Go to/Parent message"      , M_SINGLE_TARGET_EXIST},
+-              {"/View/Open in new window"        , M_SINGLE_TARGET_EXIST},
+               {"/View/Message source"            , M_SINGLE_TARGET_EXIST},
+               {"/View/All headers"               , M_SINGLE_TARGET_EXIST},
+               {"/View/Quotes"                    , M_SINGLE_TARGET_EXIST},
+@@ -2379,40 +2244,20 @@
+       gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \
+ }
+-      SET_CHECK_MENU_ACTIVE("/View/Show or hide/Message view",
+-                            messageview_is_visible(mainwin->messageview));
+-
+       summaryview = mainwin->summaryview;
+-      menu_path = "/View/Sort/Don't sort";
++      menu_path = "/View/Sort/by Date";
+       switch (summaryview->sort_key) {
+-      case SORT_BY_NUMBER:
+-              menu_path = "/View/Sort/by number"; break;
+-      case SORT_BY_SIZE:
+-              menu_path = "/View/Sort/by Size"; break;
+-      case SORT_BY_DATE:
+-              menu_path = "/View/Sort/by Date"; break;
+       case SORT_BY_FROM:
+               menu_path = "/View/Sort/by From"; break;
+       case SORT_BY_TO:
+               menu_path = "/View/Sort/by To"; break;
+       case SORT_BY_SUBJECT:
+               menu_path = "/View/Sort/by Subject"; break;
+-      case SORT_BY_LABEL:
+-              menu_path = "/View/Sort/by color label"; break;
+-      case SORT_BY_MARK:
+-              menu_path = "/View/Sort/by mark"; break;
+-      case SORT_BY_STATUS:
+-              menu_path = "/View/Sort/by status"; break;
+-      case SORT_BY_MIME:
+-              menu_path = "/View/Sort/by attachment"; break;
+-      case SORT_BY_SCORE:
+-              menu_path = "/View/Sort/by score"; break;
+-      case SORT_BY_LOCKED:
+-              menu_path = "/View/Sort/by locked"; break;
+       case SORT_BY_NONE:
++      case SORT_BY_DATE:
+       default:
+-              menu_path = "/View/Sort/Don't sort"; break;
++              menu_path = "/View/Sort/by Date"; break;
+       }
+       SET_CHECK_MENU_ACTIVE(menu_path, TRUE);
+@@ -2735,8 +2580,6 @@
+                       gtk_widget_destroy(mainwin->hpaned);
+       }
+-      menu_set_sensitive(ifactory, "/View/Show or hide/Message view", 
+-              (layout_mode != WIDE_MSGLIST_LAYOUT && layout_mode != SMALL_LAYOUT));
+       switch (layout_mode) {
+       case VERTICAL_LAYOUT:
+       case NORMAL_LAYOUT:
+@@ -2877,37 +2720,6 @@
+       prefs_common.layout_mode = layout_mode;
+-      menuitem = gtk_item_factory_get_item
+-              (ifactory, "/View/Show or hide/Message view");
+-      gtk_check_menu_item_set_active
+-              (GTK_CHECK_MENU_ITEM(menuitem),
+-               messageview_is_visible(mainwin->messageview));
+-
+-#define SET_CHECK_MENU_ACTIVE(path, active) \
+-{ \
+-      menuitem = gtk_item_factory_get_widget(ifactory, path); \
+-      gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \
+-}
+-
+-      switch (prefs_common.layout_mode) {
+-      case NORMAL_LAYOUT:
+-              SET_CHECK_MENU_ACTIVE("/View/Layout/Standard", TRUE);
+-              break;
+-      case VERTICAL_LAYOUT:
+-              SET_CHECK_MENU_ACTIVE("/View/Layout/Three columns", TRUE);
+-              break;
+-      case WIDE_LAYOUT:
+-              SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message", TRUE);
+-              break;
+-      case WIDE_MSGLIST_LAYOUT:
+-              SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message list", TRUE);
+-              break;
+-      case SMALL_LAYOUT:
+-              SET_CHECK_MENU_ACTIVE("/View/Layout/Small screen", TRUE);
+-              break;
+-      }
+-#undef SET_CHECK_MENU_ACTIVE
+-
+       if (folderwin) {
+               g_signal_connect
+                       (G_OBJECT(folderwin), "size_allocate",
+@@ -3116,12 +2928,6 @@
+               summary_toggle_view(mainwin->summaryview);
+ }
+-static void toggle_toolbar_cb(MainWindow *mainwin, guint action,
+-                            GtkWidget *widget)
+-{
+-      toolbar_toggle(action, mainwin);
+-}
+-
+ static void main_window_reply_cb(MainWindow *mainwin, guint action,
+                         GtkWidget *widget)
+ {
+Index: claws-mail-2.9.1/src/prefs_common.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/prefs_common.c   2007-04-25 07:40:10.000000000 +0100
++++ claws-mail-2.9.1/src/prefs_common.c        2007-04-25 07:42:17.000000000 +0100
+@@ -262,7 +262,7 @@
+       {"default_reply_list", "TRUE", &prefs_common.default_reply_list, P_BOOL,
+        NULL, NULL, NULL},
+-#ifndef MAEMO
++#if 0
+       {"show_ruler", "TRUE", &prefs_common.show_ruler, P_BOOL,
+        NULL, NULL, NULL},
+ #else
+@@ -300,7 +300,7 @@
+         &prefs_common.normalfont_gtk1,        P_STRING, NULL, NULL, NULL},
+       /* new fonts */
+-#ifndef MAEMO
++#if 0
+       {"widget_font_gtk2",    NULL,
+         &SPECIFIC_PREFS.widgetfont,           P_STRING, NULL, NULL, NULL},
+       {"message_font_gtk2",   "Monospace 9",
+@@ -416,7 +416,7 @@
+       {"enable_thread", "TRUE", &prefs_common.enable_thread, P_BOOL,
+        NULL, NULL, NULL},
+-#ifndef MAEMO
++#if 0
+       {"toolbar_style", "3", &prefs_common.toolbar_style, P_ENUM,
+        NULL, NULL, NULL},
+ #else
+@@ -544,7 +544,7 @@
+       {"folder_col_pos_total", "3",
+        &prefs_common.folder_col_pos[F_COL_TOTAL], P_INT, NULL, NULL, NULL},
+-#ifndef MAEMO
++#if 0
+       {"folder_col_size_folder", "120",
+        &prefs_common.folder_col_size[F_COL_FOLDER], P_INT, NULL, NULL, NULL},
+       {"folder_col_size_new", "32",
+@@ -702,7 +702,7 @@
+        &SPECIFIC_PREFS.mime_open_cmd,     P_STRING, NULL, NULL, NULL},
+       /* Interface */
+-#ifndef MAEMO
++#if 0
+       {"layout_mode", "0", &prefs_common.layout_mode, P_INT,
+        NULL, NULL, NULL},
+ #else
+Index: claws-mail-2.9.1/src/toolbar.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/toolbar.c        2007-04-25 07:40:10.000000000 +0100
++++ claws-mail-2.9.1/src/toolbar.c     2007-04-25 07:42:17.000000000 +0100
+@@ -841,26 +841,17 @@
+               gtk_widget_hide(handlebox_wid);
+               break;
+       case TOOLBAR_ICON:
+-              gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
+-                                    GTK_TOOLBAR_ICONS);
+-              break;
+       case TOOLBAR_TEXT:
+-              gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
+-                                    GTK_TOOLBAR_TEXT);
+-              break;
+       case TOOLBAR_BOTH:
+-              gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
+-                                    GTK_TOOLBAR_BOTH);
+-              break;
+       case TOOLBAR_BOTH_HORIZ:
+               gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid),
+-                                    GTK_TOOLBAR_BOTH_HORIZ);
++                                    GTK_TOOLBAR_ICONS);
+               break;
+       default:
+               return;
+       }
+-      prefs_common.toolbar_style = (ToolbarStyle)action;
++      prefs_common.toolbar_style = (ToolbarStyle)TOOLBAR_ICON;
+       gtk_widget_set_size_request(handlebox_wid, 1, -1);
+       
+       if (prefs_common.toolbar_style != TOOLBAR_NONE) {
+@@ -1594,7 +1585,7 @@
+       gtk_container_add(GTK_CONTAINER(container), toolbar);
+       gtk_container_set_border_width(GTK_CONTAINER(container), 2);
+       gtk_toolbar_set_orientation(GTK_TOOLBAR(toolbar), GTK_ORIENTATION_HORIZONTAL);
+-      gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH);
++      gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS);
+       
+       for (cur = toolbar_list; cur != NULL; cur = cur->next) {
+Index: claws-mail-2.9.1/src/gtk/prefswindow.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/gtk/prefswindow.c        2007-04-25 07:40:10.000000000 +0100
++++ claws-mail-2.9.1/src/gtk/prefswindow.c     2007-04-25 10:30:15.000000000 +0100
+@@ -343,6 +343,10 @@
+       gint x = gdk_screen_width();
+       gint y = gdk_screen_height();
+       static GdkGeometry geometry;
++      gint col_count = g_slist_length (prefs_pages);
++
++      if (col_count > 1)
++          col_count = 2;
+       prefswindow = g_new0(PrefsWindow, 1);
+@@ -360,39 +364,52 @@
+       gtk_window_set_resizable (GTK_WINDOW(prefswindow->window), TRUE);
+       gtk_container_set_border_width(GTK_CONTAINER(prefswindow->window), 4);
+-      prefswindow->table1 = gtk_table_new(2, 2, FALSE);
++      prefswindow->table1 = gtk_table_new(col_count, col_count, FALSE);
+       gtk_widget_show(prefswindow->table1);
+       gtk_container_add(GTK_CONTAINER(prefswindow->window), prefswindow->table1);
+-      prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
+-      gtk_widget_show(prefswindow->scrolledwindow1);
+-      gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+-      gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2);
+-
+-      prefswindow->tree_view = prefswindow_tree_view_create(prefswindow);
+-      gtk_widget_show(prefswindow->tree_view);
+-      gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1), 
+-                        prefswindow->tree_view);
+-
+-      prefswindow->frame = gtk_frame_new(NULL);
+-      gtk_widget_show(prefswindow->frame);
+-      gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN);
+-      gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, 1, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
+-
+-      prefswindow->table2 = gtk_table_new(1, 2, FALSE);
+-      gtk_widget_show(prefswindow->table2);
+-      gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2);
+-
+-      prefswindow->labelframe = gtk_frame_new(NULL);
+-      gtk_widget_show(prefswindow->labelframe);
+-      gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT);
+-      gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1);
+-
+-      prefswindow->pagelabel = gtk_label_new("");
+-      gtk_widget_show(prefswindow->pagelabel);
+-      gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT);
+-      gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0);
+-      gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel);
++      if (col_count > 1)
++      {
++          prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
++          gtk_widget_show(prefswindow->scrolledwindow1);
++          gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
++          gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2);
++
++          prefswindow->tree_view = prefswindow_tree_view_create(prefswindow);
++          gtk_widget_show(prefswindow->tree_view);
++          gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1),
++                            prefswindow->tree_view);
++
++          prefswindow->frame = gtk_frame_new(NULL);
++          gtk_widget_show(prefswindow->frame);
++          gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN);
++          gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, col_count - 1, col_count, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
++
++          prefswindow->table2 = gtk_table_new(1, 2, FALSE);
++          gtk_widget_show(prefswindow->table2);
++          gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2);
++      }
++      else
++      {
++          prefswindow->table2 = gtk_table_new(1, 2, FALSE);
++          gtk_widget_show(prefswindow->table2);
++          gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->table2, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2);
++      }
++
++
++      if (col_count > 1)
++      {
++          prefswindow->labelframe = gtk_frame_new(NULL);
++          gtk_widget_show(prefswindow->labelframe);
++          gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT);
++          gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1);
++
++          prefswindow->pagelabel = gtk_label_new("");
++          gtk_widget_show(prefswindow->pagelabel);
++          gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT);
++          gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0);
++          gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel);
++      }
+       prefswindow->scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL);
+       gtk_widget_show(prefswindow->scrolledwindow2);
+@@ -411,9 +428,38 @@
+       gtk_widget_show(prefswindow->empty_page);
+       gtk_container_add(GTK_CONTAINER(prefswindow->notebook), prefswindow->empty_page);
+-      prefswindow_build_tree(prefswindow->tree_view, prefs_pages);            
++      if (col_count > 1)
++      {
++          prefswindow_build_tree(prefswindow->tree_view, prefs_pages);
++
++          gtk_widget_grab_focus(prefswindow->tree_view);
++      }
++      else
++      {
++          PrefsPage * page = prefs_pages->data;
++          gint pagenum;
++          GtkAdjustment *adj;
++
++          if (!page->page_open)
++          {
++              page->create_widget(page,
++                                  GTK_WINDOW(prefswindow->window),
++                                  prefswindow->data);
++              gtk_container_add(GTK_CONTAINER(prefswindow->notebook),
++                                page->widget);
++              page->page_open = TRUE;
++          }
++
++          pagenum = gtk_notebook_page_num(GTK_NOTEBOOK(prefswindow->notebook),
++                                      page->widget);
++          gtk_notebook_set_current_page(GTK_NOTEBOOK(prefswindow->notebook),
++                                        pagenum);
+-      gtk_widget_grab_focus(prefswindow->tree_view);
++          adj = gtk_scrolled_window_get_vadjustment(
++                      GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow2));
++          gtk_adjustment_set_value(adj, 0);
++
++      }
+       gtkut_stock_button_set_create(&prefswindow->confirm_area,
+                                     &prefswindow->apply_btn,  GTK_STOCK_APPLY,
+@@ -440,28 +486,6 @@
+                          G_CALLBACK(prefswindow_key_pressed), &(prefswindow->window));
+ #endif
+-      /* connect to callback only if we hhave non-NULL pointers to store size to */
+-      if (prefswindow->save_width && prefswindow->save_height) {
+-              g_signal_connect(G_OBJECT(prefswindow->window), "size_allocate",
+-                               G_CALLBACK(prefs_size_allocate_cb), prefswindow);
+-      }
+-
+-      if (!geometry.min_height) {
+-              
+-              if (x < 800 && y < 600) {
+-                      geometry.min_width = 600;
+-                      geometry.min_height = 440;
+-              } else {
+-                      geometry.min_width = 700;
+-                      geometry.min_height = 550;
+-              }
+-      }
+-      gtk_window_set_geometry_hints(GTK_WINDOW(prefswindow->window), NULL, &geometry,
+-                                    GDK_HINT_MIN_SIZE);
+-      if (prefswindow->save_width && prefswindow->save_height) {
+-              gtk_widget_set_size_request(prefswindow->window, *(prefswindow->save_width),
+-                                          *(prefswindow->save_height));
+-      }
+       gtk_widget_show(prefswindow->window);
+ #ifdef MAEMO
+Index: claws-mail-2.9.1/src/compose.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/compose.c        2007-04-25 07:40:10.000000000 +0100
++++ claws-mail-2.9.1/src/compose.c     2007-04-25 10:18:13.000000000 +0100
+@@ -352,9 +352,6 @@
+ /* callback functions */
+-static gboolean compose_edit_size_alloc (GtkEditable  *widget,
+-                                       GtkAllocation  *allocation,
+-                                       GtkSHRuler     *shruler);
+ static void account_activated         (GtkComboBox *optmenu,
+                                        gpointer        data);
+ static void attach_selected           (GtkTreeView    *tree_view, 
+@@ -439,9 +436,6 @@
+                                        guint           action,
+                                        GtkWidget      *widget);
+-static void compose_toggle_ruler_cb   (gpointer        data,
+-                                       guint           action,
+-                                       GtkWidget      *widget);
+ static void compose_toggle_sign_cb    (gpointer        data,
+                                        guint           action,
+                                        GtkWidget      *widget);
+@@ -788,7 +782,6 @@
+        ENC_ACTION(C_WINDOWS_874)},
+       {N_("/_Tools"),                 NULL, NULL, 0, "<Branch>"},
+-      {N_("/_Tools/Show _ruler"),     NULL, compose_toggle_ruler_cb, 0, "<ToggleItem>"},
+       {N_("/_Tools/_Address book"),   "<shift><control>A", compose_address_cb , 0, NULL},
+       {N_("/_Tools/_Template"),       NULL, NULL, 0, "<Branch>"},
+       {N_("/_Tools/Actio_ns"),        NULL, NULL, 0, "<Branch>"},
+@@ -2067,7 +2060,6 @@
+       menu_set_sensitive(ifactory, "/Message/Insert signature", FALSE);
+       menu_set_sensitive(ifactory, "/Edit", FALSE);
+       menu_set_sensitive(ifactory, "/Options", FALSE);
+-      menu_set_sensitive(ifactory, "/Tools/Show ruler", FALSE);
+       menu_set_sensitive(ifactory, "/Tools/Actions", FALSE);
+       
+       if (compose->toolbar->draft_btn)
+@@ -5684,7 +5676,7 @@
+       g_signal_connect(G_OBJECT(GTK_COMBO(combo)->entry), "grab_focus",
+                        G_CALLBACK(compose_grab_focus_cb), compose);
+       gtk_widget_show(combo);
+-      gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_SHRINK, GTK_FILL, 0, 0);
++      gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_FILL, GTK_FILL, 0, 0);
+       if (compose->header_last) {     
+               const gchar *last_header_entry = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(compose->header_last->combo)->entry));
+               string = headers;
+@@ -5778,7 +5770,7 @@
+ static GtkWidget *compose_create_header(Compose *compose) 
+ {
+-      GtkWidget *from_optmenu_hbox;
++      GtkWidget *from_optmenu;
+       GtkWidget *header_scrolledwin;
+       GtkWidget *header_table;
+@@ -5788,18 +5780,20 @@
+       header_scrolledwin = gtk_scrolled_window_new(NULL, NULL);
+       gtk_widget_show(header_scrolledwin);
+       gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(header_scrolledwin), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
+-
+       header_table = gtk_table_new(2, 2, FALSE);
++      gtk_table_set_col_spacings (GTK_TABLE (header_table), BORDER_WIDTH);
+       gtk_widget_show(header_table);
+       gtk_container_set_border_width(GTK_CONTAINER(header_table), BORDER_WIDTH);
+       gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(header_scrolledwin), header_table);
+-      gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_ETCHED_IN);
++      gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_NONE);
+       count = 0;
+       /* option menu for selecting accounts */
+-      from_optmenu_hbox = compose_account_option_menu_create(compose);
+-      gtk_table_attach(GTK_TABLE(header_table), from_optmenu_hbox,
+-                                0, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_SHRINK, 0, 0);
++      from_optmenu = compose_account_option_menu_create(compose);
++      gtk_table_attach(GTK_TABLE(header_table), from_optmenu,
++                                0, 1, count, count + 1, GTK_FILL, GTK_FILL, 0, 0);
++      gtk_table_attach(GTK_TABLE(header_table), compose->from_name,
++                                1, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0);
+       count++;
+       compose->header_table = header_table;
+@@ -6140,15 +6134,12 @@
+       GtkWidget *vbox2;
+       GtkWidget *label;
+-      GtkWidget *subject_hbox;
+-      GtkWidget *subject_frame;
++      GtkWidget *edit_frame;
+       GtkWidget *subject_entry;
+       GtkWidget *subject;
+       GtkWidget *paned;
+       GtkWidget *edit_vbox;
+-      GtkWidget *ruler_hbox;
+-      GtkWidget *ruler;
+       GtkWidget *scrolledwin;
+       GtkWidget *text;
+       GtkTextBuffer *buffer;
+@@ -6169,8 +6160,6 @@
+         GtkAspell * gtkaspell = NULL;
+ #endif
+-      static GdkGeometry geometry;
+-
+       g_return_val_if_fail(account != NULL, NULL);
+       debug_print("Creating compose window...\n");
+@@ -6190,28 +6179,6 @@
+       window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "compose");
+-      gtk_window_set_resizable(GTK_WINDOW(window), TRUE);
+-      gtk_widget_set_size_request(window, -1, prefs_common.compose_height);
+-
+-      if (!geometry.max_width) {
+-              geometry.max_width = gdk_screen_width();
+-              geometry.max_height = gdk_screen_height();
+-      }
+-
+-      gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL,
+-                                    &geometry, GDK_HINT_MAX_SIZE);
+-      if (!geometry.min_width) {
+-              geometry.min_width = 600;
+-              geometry.min_height = 480;
+-      }
+-      gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL,
+-                                    &geometry, GDK_HINT_MIN_SIZE);
+-
+-#ifndef MAEMO 
+-      if (compose_force_window_origin)
+-              gtk_widget_set_uposition(window, prefs_common.compose_x, 
+-                               prefs_common.compose_y);
+-#endif
+       g_signal_connect(G_OBJECT(window), "delete_event",
+                        G_CALLBACK(compose_delete_cb), compose);
+       MANAGE_WINDOW_SIGNALS_CONNECT(window);
+@@ -6227,11 +6194,7 @@
+                                n_menu_entries, "<Compose>", compose);
+       gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
+-      if (prefs_common.toolbar_detachable) {
+-              handlebox = gtk_handle_box_new();
+-      } else {
+-              handlebox = gtk_hbox_new(FALSE, 0);
+-      }
++      handlebox = gtk_hbox_new(FALSE, 0);
+       gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0);
+       gtk_widget_realize(handlebox);
+@@ -6244,7 +6207,6 @@
+       
+       /* Notebook */
+       notebook = gtk_notebook_new();
+-      gtk_widget_set_size_request(notebook, -1, 130);
+       gtk_widget_show(notebook);
+       /* header labels and entries */
+@@ -6258,18 +6220,10 @@
+       /* Others Tab */
+       gtk_notebook_append_page(GTK_NOTEBOOK(notebook),
+                       compose_create_others(compose),
+-                      gtk_label_new_with_mnemonic(_("Othe_rs")));
++                      gtk_label_new_with_mnemonic(_("Othe_r")));
+       /* Subject */
+-      subject_hbox = gtk_hbox_new(FALSE, 0);
+-      gtk_widget_show(subject_hbox);
+-
+-      subject_frame = gtk_frame_new(NULL);
+-      gtk_frame_set_shadow_type(GTK_FRAME(subject_frame), GTK_SHADOW_NONE);
+-      gtk_box_pack_start(GTK_BOX(subject_hbox), subject_frame, TRUE, TRUE, 0);
+-      gtk_widget_show(subject_frame);
+-
+-      subject = gtk_hbox_new(FALSE, HSPACING_NARROW);
++      subject = gtk_hbox_new(FALSE, BORDER_WIDTH);
+       gtk_container_set_border_width(GTK_CONTAINER(subject), 0);
+       gtk_widget_show(subject);
+@@ -6283,20 +6237,16 @@
+                        G_CALLBACK(compose_grab_focus_cb), compose);
+       gtk_widget_show(subject_entry);
+       compose->subject_entry = subject_entry;
+-      gtk_container_add(GTK_CONTAINER(subject_frame), subject);
+       
+-      edit_vbox = gtk_vbox_new(FALSE, 0);
++      edit_vbox = gtk_vbox_new(FALSE, BORDER_WIDTH);
++      gtk_container_set_border_width(GTK_CONTAINER(edit_vbox), BORDER_WIDTH);
+-      gtk_box_pack_start(GTK_BOX(edit_vbox), subject_hbox, FALSE, FALSE, 0);
++      gtk_box_pack_start(GTK_BOX(edit_vbox), subject, FALSE, FALSE, 0);
+-      /* ruler */
+-      ruler_hbox = gtk_hbox_new(FALSE, 0);
+-      gtk_box_pack_start(GTK_BOX(edit_vbox), ruler_hbox, FALSE, FALSE, 0);
+-
+-      ruler = gtk_shruler_new();
+-      gtk_ruler_set_range(GTK_RULER(ruler), 0.0, 100.0, 1.0, 100.0);
+-      gtk_box_pack_start(GTK_BOX(ruler_hbox), ruler, TRUE, TRUE,
+-                         BORDER_WIDTH);
++      edit_frame = gtk_frame_new(NULL);
++      gtk_frame_set_shadow_type(GTK_FRAME(edit_frame), GTK_SHADOW_IN);
++      gtk_widget_show(edit_frame);
++      gtk_container_add(GTK_CONTAINER(edit_frame), edit_vbox);
+       /* text widget */
+       scrolledwin = gtk_scrolled_window_new(NULL, NULL);
+@@ -6317,9 +6267,6 @@
+       
+       gtk_container_add(GTK_CONTAINER(scrolledwin), text);
+-      g_signal_connect_after(G_OBJECT(text), "size_allocate",
+-                             G_CALLBACK(compose_edit_size_alloc),
+-                             ruler);
+       g_signal_connect(G_OBJECT(buffer), "changed",
+                        G_CALLBACK(compose_changed_cb), compose);
+       g_signal_connect(G_OBJECT(text), "grab_focus",
+@@ -6363,7 +6310,7 @@
+               gtk_widget_set_size_request(edit_vbox, -1, mode == COMPOSE_NEW ? 250 : 230);
+ #endif
+       gtk_paned_add1(GTK_PANED(paned), notebook);
+-      gtk_paned_add2(GTK_PANED(paned), edit_vbox);
++      gtk_paned_add2(GTK_PANED(paned), edit_frame);
+       gtk_widget_show_all(paned);
+@@ -6408,8 +6355,6 @@
+       compose->notebook      = notebook;
+       compose->edit_vbox     = edit_vbox;
+-      compose->ruler_hbox    = ruler_hbox;
+-      compose->ruler         = ruler;
+       compose->scrolledwin   = scrolledwin;
+       compose->text          = text;
+@@ -6531,13 +6476,6 @@
+       compose_list = g_list_append(compose_list, compose);
+-      if (!prefs_common.show_ruler)
+-              gtk_widget_hide(ruler_hbox);
+-              
+-      menuitem = gtk_item_factory_get_item(ifactory, "/Tools/Show ruler");
+-      gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem),
+-                                     prefs_common.show_ruler);
+-
+       /* Priority */
+       compose->priority = PRIORITY_NORMAL;
+       compose_update_priority_menu_item(compose);
+@@ -6568,7 +6506,6 @@
+ static GtkWidget *compose_account_option_menu_create(Compose *compose)
+ {
+       GList *accounts;
+-      GtkWidget *hbox;
+       GtkWidget *optmenu;
+       GtkWidget *optmenubox;
+       GtkListStore *menu;
+@@ -6584,7 +6521,6 @@
+       optmenu = gtkut_sc_combobox_create(optmenubox, FALSE);
+       menu = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(optmenu)));
+-      hbox = gtk_hbox_new(FALSE, 6);
+       from_name = gtk_entry_new();
+       
+       g_signal_connect_after(G_OBJECT(from_name), "grab_focus",
+@@ -6623,9 +6559,6 @@
+                       G_CALLBACK(account_activated),
+                       compose);
+-      gtk_box_pack_start(GTK_BOX(hbox), optmenubox, FALSE, FALSE, 0);
+-      gtk_box_pack_start(GTK_BOX(hbox), from_name, TRUE, TRUE, 0);
+-      
+       gtk_tooltips_set_tip(compose->tooltips, optmenubox,
+               _("Account to use for this email"), NULL);
+       gtk_tooltips_set_tip(compose->tooltips, from_name,
+@@ -6633,7 +6566,7 @@
+       compose->from_name = from_name;
+       
+-      return hbox;
++      return optmenubox;
+ }
+ static void compose_set_priority_cb(gpointer data,
+@@ -7851,32 +7784,6 @@
+ /* callback functions */
+-/* compose_edit_size_alloc() - called when resized. don't know whether Gtk
+- * includes "non-client" (windows-izm) in calculation, so this calculation
+- * may not be accurate.
+- */
+-static gboolean compose_edit_size_alloc(GtkEditable *widget,
+-                                      GtkAllocation *allocation,
+-                                      GtkSHRuler *shruler)
+-{
+-      if (prefs_common.show_ruler) {
+-              gint char_width = 0, char_height = 0;
+-              gint line_width_in_chars;
+-
+-              gtkut_get_font_size(GTK_WIDGET(widget),
+-                                  &char_width, &char_height);
+-              line_width_in_chars =
+-                      (allocation->width - allocation->x) / char_width;
+-
+-              /* got the maximum */
+-              gtk_ruler_set_range(GTK_RULER(shruler),
+-                                  0.0, line_width_in_chars, 0,
+-                                  /*line_width_in_chars*/ char_width);
+-      }
+-
+-      return TRUE;
+-}
+-
+ static void account_activated(GtkComboBox *optmenu, gpointer data)
+ {
+       Compose *compose = (Compose *)data;
+@@ -9040,21 +8947,6 @@
+       compose_update_privacy_system_menu_item(compose, warn);
+ }
+-static void compose_toggle_ruler_cb(gpointer data, guint action,
+-                                  GtkWidget *widget)
+-{
+-      Compose *compose = (Compose *)data;
+-
+-      if (GTK_CHECK_MENU_ITEM(widget)->active) {
+-              gtk_widget_show(compose->ruler_hbox);
+-              prefs_common.show_ruler = TRUE;
+-      } else {
+-              gtk_widget_hide(compose->ruler_hbox);
+-              gtk_widget_queue_resize(compose->edit_vbox);
+-              prefs_common.show_ruler = FALSE;
+-      }
+-}
+-
+ static void compose_attach_drag_received_cb (GtkWidget                *widget,
+                                            GdkDragContext     *context,
+                                            gint                x,
+Index: claws-mail-2.9.1/src/folderview.c
+===================================================================
+--- claws-mail-2.9.1.orig/src/folderview.c     2007-04-03 19:10:25.000000000 +0100
++++ claws-mail-2.9.1/src/folderview.c  2007-04-25 10:28:00.000000000 +0100
+@@ -73,6 +73,11 @@
+ #define COL_FOLDER_WIDTH      150
+ #define COL_NUM_WIDTH         32
++/* added dummy column to stop the last column from
++ * resizing insanely in small screen view
++ */
++#define _N_FOLDER_COLS (N_FOLDER_COLS + 1)
++
+ static GList *folderview_list = NULL;
+ static GtkStyle *normal_style;
+@@ -448,7 +453,7 @@
+       gint *col_pos;
+       FolderColumnState *col_state;
+       FolderColumnType type;
+-      gchar *titles[N_FOLDER_COLS];
++      gchar *titles[_N_FOLDER_COLS];
+       gint i;
+       GtkWidget *scrolledwin = folderview->scrolledwin;
+@@ -471,8 +476,9 @@
+       titles[col_pos[F_COL_UNREAD]] = _("Unread");
+       /* TRANSLATORS: This in Number sign in American style */
+       titles[col_pos[F_COL_TOTAL]]  = _("#");
++      titles[F_COL_DUMMY] = "";
+-      ctree = gtk_sctree_new_with_titles(N_FOLDER_COLS, col_pos[F_COL_FOLDER],
++      ctree = gtk_sctree_new_with_titles(_N_FOLDER_COLS, col_pos[F_COL_FOLDER],
+                                          titles);
+       gtk_clist_set_selection_mode(GTK_CLIST(ctree), GTK_SELECTION_BROWSE);
+@@ -510,6 +516,9 @@
+                       (GTK_CLIST(ctree), i, col_state[i].visible);
+       }
++      GTK_WIDGET_UNSET_FLAGS(GTK_CLIST(ctree)->column[i].button,
++                             GTK_CAN_FOCUS);
++
+       g_signal_connect(G_OBJECT(ctree), "key_press_event",
+                        G_CALLBACK(folderview_key_pressed),
+                        folderview);
+@@ -605,9 +614,6 @@
+               (GTK_SCROLLED_WINDOW(scrolledwin),
+                GTK_POLICY_AUTOMATIC,
+                prefs_common.folderview_vscrollbar_policy);
+-      gtk_widget_set_size_request(scrolledwin,
+-                           prefs_common.folderview_width,
+-                           prefs_common.folderview_height);
+       folderview->scrolledwin  = scrolledwin;
+       ctree = folderview_ctree_create(folderview);
+@@ -2268,7 +2274,7 @@
+ static void folderview_create_folder_node(FolderView *folderview, FolderItem *item)
+ {
+       GtkCTree *ctree = GTK_CTREE(folderview->ctree);
+-      gchar *text[N_FOLDER_COLS] = {NULL, "0", "0", "0"};
++      gchar *text[_N_FOLDER_COLS] = {NULL, "0", "0", "0", ""};
+       GtkCTreeNode *node, *parent_node;
+       gint *col_pos = folderview->col_pos;
+       FolderItemUpdateData hookdata;
+Index: claws-mail-2.9.1/src/folderview.h
+===================================================================
+--- claws-mail-2.9.1.orig/src/folderview.h     2007-03-22 17:22:52.000000000 +0000
++++ claws-mail-2.9.1/src/folderview.h  2007-04-25 10:16:55.000000000 +0100
+@@ -37,7 +37,8 @@
+       F_COL_FOLDER,
+       F_COL_NEW,
+       F_COL_UNREAD,
+-      F_COL_TOTAL
++      F_COL_TOTAL,
++      F_COL_DUMMY
+ } FolderColumnType;
+ #define N_FOLDER_COLS 4