diff options
Diffstat (limited to 'packages/mutt')
-rw-r--r-- | packages/mutt/mutt-1.5.15/makedoc.patch | 26 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.15/patch-1.5.15.sidebar.20070408.txt | 1347 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.4i/configure.patch | 303 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.4i/cppflags.patch | 27 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.4i/keymap.h.patch | 11 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.4i/posix1_lim.patch | 49 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.9i/cppflags.patch | 11 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.9i/makedoc.patch | 11 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.9i/patch-1.5.9i.sidebar.20050628.txt.hackedfornntp | 1527 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.9i/posix1_lim.patch | 49 | ||||
-rw-r--r-- | packages/mutt/mutt-1.5.9i/sidebar-nntp-clash.patch | 63 | ||||
-rw-r--r-- | packages/mutt/mutt_1.5.15.bb | 27 | ||||
-rw-r--r-- | packages/mutt/mutt_1.5.4i.bb | 29 | ||||
-rw-r--r-- | packages/mutt/mutt_1.5.9i.bb | 33 |
14 files changed, 0 insertions, 3513 deletions
diff --git a/packages/mutt/mutt-1.5.15/makedoc.patch b/packages/mutt/mutt-1.5.15/makedoc.patch deleted file mode 100644 index 275c325769..0000000000 --- a/packages/mutt/mutt-1.5.15/makedoc.patch +++ /dev/null @@ -1,26 +0,0 @@ -Index: mutt-1.5.15/makedoc.c -=================================================================== ---- mutt-1.5.15.orig/makedoc.c 2007-04-01 22:58:56.000000000 +0100 -+++ mutt-1.5.15/makedoc.c 2007-04-19 09:33:17.000000000 +0100 -@@ -49,7 +49,7 @@ - #ifndef HAVE_STRERROR - #ifndef STDC_HEADERS - extern int sys_nerr; --extern char *sys_errlist[]; -+extern __const char *__const sys_errlist[]; - #endif - - #define strerror(x) ((x) > 0 && (x) < sys_nerr) ? sys_errlist[(x)] : 0 -Index: mutt-1.5.15/Makefile.am -=================================================================== ---- mutt-1.5.15.orig/Makefile.am 2007-04-19 09:33:30.000000000 +0100 -+++ mutt-1.5.15/Makefile.am 2007-04-19 09:33:54.000000000 +0100 -@@ -49,6 +49,8 @@ - # @rm -rf makedoc - # $(HOST_CC) $(AM_CFLAGS) $(LDFLAGS) $(makedoc_LDFLAGS) $(makedoc_OBJECTS) $(makedoc_LDADD) -o makedoc - -+makedoc : $(makedoc_SOURCES) -+ - DEFS=-DPKGDATADIR=\"$(pkgdatadir)\" -DSYSCONFDIR=\"$(sysconfdir)\" \ - -DBINDIR=\"$(bindir)\" -DMUTTLOCALEDIR=\"$(datadir)/locale\" \ - -DHAVE_CONFIG_H=1 diff --git a/packages/mutt/mutt-1.5.15/patch-1.5.15.sidebar.20070408.txt b/packages/mutt/mutt-1.5.15/patch-1.5.15.sidebar.20070408.txt deleted file mode 100644 index a2f7810ad8..0000000000 --- a/packages/mutt/mutt-1.5.15/patch-1.5.15.sidebar.20070408.txt +++ /dev/null @@ -1,1347 +0,0 @@ -Index: mutt-1.5.15/buffy.c -=================================================================== ---- mutt-1.5.15.orig/buffy.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/buffy.c 2007-04-18 09:28:14.000000000 +0100 -@@ -259,7 +259,7 @@ - char path[_POSIX_PATH_MAX]; - struct stat contex_sb; - time_t t; -- -+ CONTEXT *ctx; - #ifdef USE_IMAP - /* update postponed count as well, on force */ - if (force) -@@ -297,6 +297,8 @@ - - for (tmp = Incoming; tmp; tmp = tmp->next) - { -+ if ( tmp->new == 1 ) -+ tmp->has_new = 1; - #ifdef USE_IMAP - if (tmp->magic != M_IMAP) - #endif -@@ -354,48 +356,108 @@ - case M_MBOX: - case M_MMDF: - -- if (STAT_CHECK) -+ { -+ if (STAT_CHECK || tmp->msgcount == 0) - { -- BuffyCount++; -- tmp->new = 1; -+ BUFFY b = *tmp; -+ int msgcount = 0; -+ int msg_unread = 0; -+ /* parse the mailbox, to see how much mail there is */ -+ ctx = mx_open_mailbox( tmp->path, M_READONLY | M_QUIET | M_NOSORT | M_PEEK, NULL); -+ if(ctx) -+ { -+ msgcount = ctx->msgcount; -+ msg_unread = ctx->unread; -+ mx_close_mailbox(ctx, 0); -+ } -+ *tmp = b; -+ tmp->msgcount = msgcount; -+ tmp->msg_unread = msg_unread; -+ if(STAT_CHECK) { -+ tmp->has_new = tmp->new = 1; -+ BuffyCount++; -+ } - } - else if (option(OPTCHECKMBOXSIZE)) - { - /* some other program has deleted mail from the folder */ - tmp->size = (long) sb.st_size; - } -- if (tmp->newly_created && -- (sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime)) -- tmp->newly_created = 0; -- -- break; -+ if (tmp->newly_created && -+ (sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime)) -+ tmp->newly_created = 0; -+ } -+ break; - - case M_MAILDIR: - -+ /* count new message */ - snprintf (path, sizeof (path), "%s/new", tmp->path); - if ((dirp = opendir (path)) == NULL) - { - tmp->magic = 0; - break; - } -+ tmp->msgcount = 0; -+ tmp->msg_unread = 0; - while ((de = readdir (dirp)) != NULL) - { - char *p; - if (*de->d_name != '.' && - (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T'))) - { -- /* one new and undeleted message is enough */ -- BuffyCount++; -- tmp->new = 1; -- break; -+ tmp->has_new = tmp->new = 1; -+ tmp->msgcount++; -+ tmp->msg_unread++; -+ } -+ } -+ if(tmp->msg_unread) -+ BuffyCount++; -+ -+ closedir (dirp); -+ -+ /* -+ * count read messages (for folderlist (sidebar) we also need to count -+ * messages in cur so that we the total number of messages -+ */ -+ snprintf (path, sizeof (path), "%s/cur", tmp->path); -+ if ((dirp = opendir (path)) == NULL) -+ { -+ tmp->magic = 0; -+ break; -+ } -+ while ((de = readdir (dirp)) != NULL) -+ { -+ char *p; -+ if (*de->d_name != '.' && -+ (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T'))) -+ { -+ tmp->msgcount++; - } - } - closedir (dirp); - break; - - case M_MH: -- if ((tmp->new = mh_buffy (tmp->path)) > 0) -- BuffyCount++; -+ { -+ DIR *dp; -+ struct dirent *de; -+ if ((tmp->new = mh_buffy (tmp->path)) > 0) -+ BuffyCount++; -+ -+ if ((dp = opendir (path)) == NULL) -+ break; -+ tmp->msgcount = 0; -+ while ((de = readdir (dp))) -+ { -+ if (mh_valid_message (de->d_name)) -+ { -+ tmp->msgcount++; -+ tmp->has_new = tmp->new = 1; -+ } -+ } -+ closedir (dp); -+ } - break; - } - } -Index: mutt-1.5.15/buffy.h -=================================================================== ---- mutt-1.5.15.orig/buffy.h 2007-04-01 22:58:55.000000000 +0100 -+++ mutt-1.5.15/buffy.h 2007-04-18 09:28:14.000000000 +0100 -@@ -25,7 +25,11 @@ - char *path; - long size; - struct buffy_t *next; -+ struct buffy_t *prev; - short new; /* mailbox has new mail */ -+ short has_new; /* set it new if new and not read */ -+ int msgcount; /* total number of messages */ -+ int msg_unread; /* number of unread messages */ - short notified; /* user has been notified */ - short magic; /* mailbox type */ - short newly_created; /* mbox or mmdf just popped into existence */ -Index: mutt-1.5.15/color.c -=================================================================== ---- mutt-1.5.15.orig/color.c 2007-04-01 22:58:55.000000000 +0100 -+++ mutt-1.5.15/color.c 2007-04-18 09:28:14.000000000 +0100 -@@ -93,6 +93,7 @@ - { "bold", MT_COLOR_BOLD }, - { "underline", MT_COLOR_UNDERLINE }, - { "index", MT_COLOR_INDEX }, -+ { "sidebar_new", MT_COLOR_NEW }, - { NULL, 0 } - }; - -Index: mutt-1.5.15/compose.c -=================================================================== ---- mutt-1.5.15.orig/compose.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/compose.c 2007-04-18 09:32:54.000000000 +0100 -@@ -80,7 +80,7 @@ - - #define HDR_XOFFSET 14 - #define TITLE_FMT "%14s" /* Used for Prompts, which are ASCII */ --#define W (COLS - HDR_XOFFSET) -+#define W (COLS - HDR_XOFFSET - SidebarWidth) - - static char *Prompts[] = - { -@@ -146,16 +146,16 @@ - if ((WithCrypto & APPLICATION_PGP) && (WithCrypto & APPLICATION_SMIME)) - { - if (!msg->security) -- mvaddstr (HDR_CRYPT, 0, " Security: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " Security: "); - else if (msg->security & APPLICATION_SMIME) -- mvaddstr (HDR_CRYPT, 0, " S/MIME: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: "); - else if (msg->security & APPLICATION_PGP) -- mvaddstr (HDR_CRYPT, 0, " PGP: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: "); - } - else if ((WithCrypto & APPLICATION_SMIME)) -- mvaddstr (HDR_CRYPT, 0, " S/MIME: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: "); - else if ((WithCrypto & APPLICATION_PGP)) -- mvaddstr (HDR_CRYPT, 0, " PGP: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: "); - else - return; - -@@ -179,7 +179,7 @@ - } - clrtoeol (); - -- move (HDR_CRYPTINFO, 0); -+ move (HDR_CRYPTINFO, SidebarWidth); - clrtoeol (); - if ((WithCrypto & APPLICATION_PGP) - && msg->security & APPLICATION_PGP && msg->security & SIGN) -@@ -195,7 +195,7 @@ - && (msg->security & ENCRYPT) - && SmimeCryptAlg - && *SmimeCryptAlg) { -- mvprintw (HDR_CRYPTINFO, 40, "%s%s", _("Encrypt with: "), -+ mvprintw (HDR_CRYPTINFO, SidebarWidth + 40, "%s%s", _("Encrypt with: "), - NONULL(SmimeCryptAlg)); - off = 20; - } -@@ -209,7 +209,7 @@ - int c; - char *t; - -- mvaddstr (HDR_MIX, 0, " Mix: "); -+ mvaddstr (HDR_MIX, SidebarWidth, " Mix: "); - - if (!chain) - { -@@ -224,7 +224,7 @@ - if (t && t[0] == '0' && t[1] == '\0') - t = "<random>"; - -- if (c + mutt_strlen (t) + 2 >= COLS) -+ if (c + mutt_strlen (t) + 2 >= COLS - SidebarWidth) - break; - - addstr (NONULL(t)); -@@ -276,7 +276,7 @@ - - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), addr, 1); -- mvprintw (line, 0, TITLE_FMT, Prompts[line - 1]); -+ mvprintw (line, SidebarWidth, TITLE_FMT, Prompts[line - 1]); - mutt_paddstr (W, buf); - } - -@@ -294,21 +294,21 @@ - } - else - { -- mvprintw (HDR_TO, 0, TITLE_FMT , Prompts[HDR_NEWSGROUPS - 1]); -+ mvprintw (HDR_TO, SidebarWidth, TITLE_FMT , Prompts[HDR_NEWSGROUPS - 1]); - mutt_paddstr (W, NONULL (msg->env->newsgroups)); -- mvprintw (HDR_CC, 0, TITLE_FMT , Prompts[HDR_FOLLOWUPTO - 1]); -+ mvprintw (HDR_CC, SidebarWidth, TITLE_FMT , Prompts[HDR_FOLLOWUPTO - 1]); - mutt_paddstr (W, NONULL (msg->env->followup_to)); - if (option (OPTXCOMMENTTO)) - { -- mvprintw (HDR_BCC, 0, TITLE_FMT , Prompts[HDR_XCOMMENTTO - 1]); -+ mvprintw (HDR_BCC, SidebarWidth, TITLE_FMT , Prompts[HDR_XCOMMENTTO - 1]); - mutt_paddstr (W, NONULL (msg->env->x_comment_to)); - } - } - #endif -- mvprintw (HDR_SUBJECT, 0, TITLE_FMT, Prompts[HDR_SUBJECT - 1]); -+ mvprintw (HDR_SUBJECT, SidebarWidth, TITLE_FMT, Prompts[HDR_SUBJECT - 1]); - mutt_paddstr (W, NONULL (msg->env->subject)); - draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to); -- mvprintw (HDR_FCC, 0, TITLE_FMT, Prompts[HDR_FCC - 1]); -+ mvprintw (HDR_FCC, SidebarWidth, TITLE_FMT, Prompts[HDR_FCC - 1]); - mutt_paddstr (W, fcc); - - if (WithCrypto) -@@ -319,7 +319,7 @@ - #endif - - SETCOLOR (MT_COLOR_STATUS); -- mvaddstr (HDR_ATTACH - 1, 0, _("-- Attachments")); -+ mvaddstr (HDR_ATTACH - 1, SidebarWidth, _("-- Attachments")); - BKGDSET (MT_COLOR_STATUS); - clrtoeol (); - -@@ -357,7 +357,7 @@ - /* redraw the expanded list so the user can see the result */ - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), *addr, 1); -- move (line, HDR_XOFFSET); -+ move (line, HDR_XOFFSET+SidebarWidth); - mutt_paddstr (W, buf); - - return 0; -@@ -687,7 +687,7 @@ - if (mutt_get_field ("Subject: ", buf, sizeof (buf), 0) == 0) - { - mutt_str_replace (&msg->env->subject, buf); -- move (HDR_SUBJECT, HDR_XOFFSET); -+ move (HDR_SUBJECT, HDR_XOFFSET + SidebarWidth); - clrtoeol (); - if (msg->env->subject) - mutt_paddstr (W, msg->env->subject); -@@ -704,7 +704,7 @@ - { - strfcpy (fcc, buf, _POSIX_PATH_MAX); - mutt_pretty_mailbox (fcc); -- move (HDR_FCC, HDR_XOFFSET); -+ move (HDR_FCC, HDR_XOFFSET + SidebarWidth); - mutt_paddstr (W, fcc); - fccSet = 1; - } -Index: mutt-1.5.15/curs_main.c -=================================================================== ---- mutt-1.5.15.orig/curs_main.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/curs_main.c 2007-04-18 09:28:14.000000000 +0100 -@@ -30,6 +30,7 @@ - #include "sort.h" - #include "buffy.h" - #include "mx.h" -+#include "sidebar.h" - - #ifdef USE_POP - #include "pop.h" -@@ -555,8 +556,13 @@ - menu->redraw |= REDRAW_STATUS; - if (do_buffy_notify) - { -- if (mutt_buffy_notify () && option (OPTBEEPNEW)) -- beep (); -+ if (mutt_buffy_notify ()) -+ { -+ menu->redraw |= REDRAW_FULL; -+ if (option (OPTBEEPNEW)) -+ beep (); -+ } -+ - } - else - do_buffy_notify = 1; -@@ -568,6 +574,7 @@ - if (menu->redraw & REDRAW_FULL) - { - menu_redraw_full (menu); -+ draw_sidebar(menu->menu); - mutt_show_error (); - } - -@@ -590,10 +597,13 @@ - - if (menu->redraw & REDRAW_STATUS) - { -+ DrawFullLine = 1; - menu_status_line (buf, sizeof (buf), menu, NONULL (Status)); -+ DrawFullLine = 0; - CLEARLINE (option (OPTSTATUSONTOP) ? 0 : LINES-2); - SETCOLOR (MT_COLOR_STATUS); - BKGDSET (MT_COLOR_STATUS); -+ set_buffystats(Context); - mutt_paddstr (COLS, buf); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); -@@ -607,7 +617,7 @@ - menu->oldcurrent = -1; - - if (option (OPTARROWCURSOR)) -- move (menu->current - menu->top + menu->offset, 2); -+ move (menu->current - menu->top + menu->offset, SidebarWidth + 2); - else if (option (OPTBRAILLEFRIENDLY)) - move (menu->current - menu->top + menu->offset, 0); - else -@@ -1214,6 +1224,7 @@ - menu->redraw = REDRAW_FULL; - break; - -+ case OP_SIDEBAR_OPEN: - case OP_MAIN_CHANGE_FOLDER: - case OP_MAIN_CHANGE_FOLDER_READONLY: - #ifdef USE_NNTP -@@ -1254,7 +1265,11 @@ - #endif - mutt_buffy (buf, sizeof (buf)); - -- if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1) -+ if ( op == OP_SIDEBAR_OPEN ) { -+ if(!CurBuffy) -+ break; -+ strncpy( buf, CurBuffy->path, sizeof(buf) ); -+ } else if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1) - { - if (menu->menu == MENU_PAGER) - { -@@ -1279,6 +1294,7 @@ - else - #endif - mutt_expand_path (buf, sizeof (buf)); -+ set_curbuffy(buf); - if (mx_get_magic (buf) <= 0) - { - mutt_error (_("%s is not a mailbox."), buf); -@@ -2424,6 +2440,12 @@ - mutt_what_key(); - break; - -+ case OP_SIDEBAR_SCROLL_UP: -+ case OP_SIDEBAR_SCROLL_DOWN: -+ case OP_SIDEBAR_NEXT: -+ case OP_SIDEBAR_PREV: -+ scroll_sidebar(op, menu->menu); -+ break; - default: - if (menu->menu == MENU_MAIN) - km_error_key (MENU_MAIN); -Index: mutt-1.5.15/flags.c -=================================================================== ---- mutt-1.5.15.orig/flags.c 2007-04-01 22:58:55.000000000 +0100 -+++ mutt-1.5.15/flags.c 2007-04-18 09:28:14.000000000 +0100 -@@ -22,8 +22,10 @@ - - #include "mutt.h" - #include "mutt_curses.h" -+#include "mutt_menu.h" - #include "sort.h" - #include "mx.h" -+#include "sidebar.h" - - #ifdef USE_IMAP - #include "imap_private.h" -@@ -251,6 +253,7 @@ - */ - if (h->searched && (changed != h->changed || deleted != ctx->deleted || tagged != ctx->tagged || flagged != ctx->flagged)) - h->searched = 0; -+ draw_sidebar(0); - } - - void mutt_tag_set_flag (int flag, int bf) -Index: mutt-1.5.15/functions.h -=================================================================== ---- mutt-1.5.15.orig/functions.h 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/functions.h 2007-04-18 09:28:14.000000000 +0100 -@@ -186,6 +186,11 @@ - { "decrypt-save", OP_DECRYPT_SAVE, NULL }, - - -+ { "sidebar-scroll-up", OP_SIDEBAR_SCROLL_UP, NULL }, -+ { "sidebar-scroll-down", OP_SIDEBAR_SCROLL_DOWN, NULL }, -+ { "sidebar-next", OP_SIDEBAR_NEXT, NULL }, -+ { "sidebar-prev", OP_SIDEBAR_PREV, NULL }, -+ { "sidebar-open", OP_SIDEBAR_OPEN, NULL }, - { NULL, 0, NULL } - }; - -@@ -293,6 +298,11 @@ - { "decrypt-save", OP_DECRYPT_SAVE, NULL }, - - -+ { "sidebar-scroll-up", OP_SIDEBAR_SCROLL_UP, NULL }, -+ { "sidebar-scroll-down", OP_SIDEBAR_SCROLL_DOWN, NULL }, -+ { "sidebar-next", OP_SIDEBAR_NEXT, NULL }, -+ { "sidebar-prev", OP_SIDEBAR_PREV, NULL }, -+ { "sidebar-open", OP_SIDEBAR_OPEN, NULL }, - { NULL, 0, NULL } - }; - -Index: mutt-1.5.15/globals.h -=================================================================== ---- mutt-1.5.15.orig/globals.h 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/globals.h 2007-04-18 09:28:14.000000000 +0100 -@@ -126,6 +126,7 @@ - WHERE char *SendCharset; - WHERE char *Sendmail; - WHERE char *Shell; -+WHERE char *SidebarDelim; - WHERE char *Signature; - WHERE char *SimpleSearch; - #if USE_SMTP -@@ -222,6 +223,9 @@ - WHERE short ScoreThresholdRead; - WHERE short ScoreThresholdFlag; - -+WHERE struct buffy_t *CurBuffy INITVAL(0); -+WHERE short DrawFullLine INITVAL(0); -+WHERE short SidebarWidth; - #ifdef USE_IMAP - WHERE short ImapKeepalive; - #endif -Index: mutt-1.5.15/init.h -=================================================================== ---- mutt-1.5.15.orig/init.h 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/init.h 2007-04-18 09:28:14.000000000 +0100 -@@ -1614,6 +1614,22 @@ - ** If ``no'', never attempt to verify cryptographic signatures. - ** (Crypto only) - */ -+ {"sidebar_delim", DT_STR, R_BOTH, UL &SidebarDelim, "|"}, -+ /* -+ ** .pp -+ ** This specifies the delimiter between the sidebar (if visible) and -+ ** other screens. -+ */ -+ { "sidebar_visible", DT_BOOL, R_BOTH, OPTSIDEBAR, 0 }, -+ /* -+ ** .pp -+ ** This specifies whether or not to show sidebar (left-side list of folders). -+ */ -+ { "sidebar_width", DT_NUM, R_BOTH, UL &SidebarWidth, 0 }, -+ /* -+ ** .pp -+ ** The width of the sidebar. -+ */ - { "smime_is_default", DT_BOOL, R_NONE, OPTSMIMEISDEFAULT, 0}, - /* - ** .pp -Index: mutt-1.5.15/mailbox.h -=================================================================== ---- mutt-1.5.15.orig/mailbox.h 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/mailbox.h 2007-04-18 09:28:14.000000000 +0100 -@@ -27,6 +27,7 @@ - #define M_NEWFOLDER (1<<4) /* create a new folder - same as M_APPEND, but uses - * safe_fopen() for mbox-style folders. - */ -+#define M_PEEK (1<<5) /* revert atime back after taking a look (if applicable) */ - - /* mx_open_new_message() */ - #define M_ADD_FROM 1 /* add a From_ line */ -Index: mutt-1.5.15/Makefile.am -=================================================================== ---- mutt-1.5.15.orig/Makefile.am 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/Makefile.am 2007-04-18 09:28:14.000000000 +0100 -@@ -29,7 +29,8 @@ - score.c send.c sendlib.c signal.c sort.c \ - status.c system.c thread.c charset.c history.c lib.c \ - muttlib.c editmsg.c mbyte.c \ -- url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h -+ url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h \ -+ sidebar.c - - mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \ - $(INTLLIBS) $(LIBICONV) $(GPGME_LIBS) -Index: mutt-1.5.15/Makefile.in -=================================================================== ---- mutt-1.5.15.orig/Makefile.in 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/Makefile.in 2007-04-18 09:28:14.000000000 +0100 -@@ -91,7 +91,8 @@ - thread.$(OBJEXT) charset.$(OBJEXT) history.$(OBJEXT) \ - lib.$(OBJEXT) muttlib.$(OBJEXT) editmsg.$(OBJEXT) \ - mbyte.$(OBJEXT) url.$(OBJEXT) ascii.$(OBJEXT) \ -- mutt_idna.$(OBJEXT) crypt-mod.$(OBJEXT) -+ mutt_idna.$(OBJEXT) crypt-mod.$(OBJEXT) \ -+ sidebar.$(OBJEXT) - mutt_OBJECTS = $(am_mutt_OBJECTS) - am__DEPENDENCIES_1 = - am_mutt_dotlock_OBJECTS = mutt_dotlock.$(OBJEXT) -@@ -312,7 +313,8 @@ - score.c send.c sendlib.c signal.c sort.c \ - status.c system.c thread.c charset.c history.c lib.c \ - muttlib.c editmsg.c mbyte.c \ -- url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h -+ url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h \ -+ sidebar.c - - mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \ - $(INTLLIBS) $(LIBICONV) $(GPGME_LIBS) -@@ -348,7 +350,7 @@ - makedoc.c makedoc-defs.h stamp-doc-rc README.SSL smime.h \ - muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \ - ChangeLog ChangeLog.old mkchangelog.sh cvslog2changelog.pl mutt_idna.h \ -- snprintf.c regex.c crypt-gpgme.h hcachever.sh -+ snprintf.c regex.c crypt-gpgme.h sidebar.h hcachever.sh - - EXTRA_SCRIPTS = smime_keys - mutt_dotlock_SOURCES = mutt_dotlock.c -Index: mutt-1.5.15/mbox.c -=================================================================== ---- mutt-1.5.15.orig/mbox.c 2007-04-01 22:58:56.000000000 +0100 -+++ mutt-1.5.15/mbox.c 2007-04-18 09:28:14.000000000 +0100 -@@ -100,6 +100,7 @@ - mutt_perror (ctx->path); - return (-1); - } -+ ctx->atime = sb.st_atime; - ctx->mtime = sb.st_mtime; - ctx->size = sb.st_size; - -@@ -251,6 +252,7 @@ - - ctx->size = sb.st_size; - ctx->mtime = sb.st_mtime; -+ ctx->atime = sb.st_atime; - - #ifdef NFS_ATTRIBUTE_HACK - if (sb.st_mtime > sb.st_atime) -Index: mutt-1.5.15/menu.c -=================================================================== ---- mutt-1.5.15.orig/menu.c 2007-04-01 22:58:56.000000000 +0100 -+++ mutt-1.5.15/menu.c 2007-04-18 09:28:14.000000000 +0100 -@@ -24,6 +24,7 @@ - #include "mutt_curses.h" - #include "mutt_menu.h" - #include "mbyte.h" -+#include "sidebar.h" - - #ifdef USE_IMAP - #include "imap.h" -@@ -158,7 +159,7 @@ - { - char *scratch = safe_strdup (s); - int shift = option (OPTARROWCURSOR) ? 3 : 0; -- int cols = COLS - shift; -+ int cols = COLS - shift - SidebarWidth; - - mutt_format_string (s, n, cols, cols, 0, ' ', scratch, mutt_strlen (scratch), 1); - s[n - 1] = 0; -@@ -209,6 +210,7 @@ - char buf[STRING]; - int i; - -+ draw_sidebar(1); - for (i = menu->top; i < menu->top + menu->pagelen; i++) - { - if (i < menu->max) -@@ -219,7 +221,7 @@ - if (option (OPTARROWCURSOR)) - { - attrset (menu->color (i)); -- CLEARLINE (i - menu->top + menu->offset); -+ CLEARLINE_WIN (i - menu->top + menu->offset); - - if (i == menu->current) - { -@@ -248,14 +250,14 @@ - BKGDSET (MT_COLOR_INDICATOR); - } - -- CLEARLINE (i - menu->top + menu->offset); -+ CLEARLINE_WIN (i - menu->top + menu->offset); - print_enriched_string (menu->color(i), (unsigned char *) buf, i != menu->current); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - } - } - else -- CLEARLINE (i - menu->top + menu->offset); -+ CLEARLINE_WIN (i - menu->top + menu->offset); - } - menu->redraw = 0; - } -@@ -270,7 +272,7 @@ - return; - } - -- move (menu->oldcurrent + menu->offset - menu->top, 0); -+ move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - -@@ -285,13 +287,13 @@ - clrtoeol (); - menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent); - menu_pad_string (buf, sizeof (buf)); -- move (menu->oldcurrent + menu->offset - menu->top, 3); -+ move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth + 3); - print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1); - SETCOLOR (MT_COLOR_NORMAL); - } - - /* now draw it in the new location */ -- move (menu->current + menu->offset - menu->top, 0); -+ move (menu->current + menu->offset - menu->top, SidebarWidth); - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - addstr ("->"); -@@ -312,7 +314,7 @@ - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - BKGDSET (MT_COLOR_INDICATOR); -- CLEARLINE (menu->current - menu->top + menu->offset); -+ CLEARLINE_WIN (menu->current - menu->top + menu->offset); - print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); -@@ -324,7 +326,7 @@ - { - char buf[STRING]; - -- move (menu->current + menu->offset - menu->top, 0); -+ move (menu->current + menu->offset - menu->top, SidebarWidth); - menu_make_entry (buf, sizeof (buf), menu, menu->current); - menu_pad_string (buf, sizeof (buf)); - -@@ -867,7 +869,7 @@ - - - if (option (OPTARROWCURSOR)) -- move (menu->current - menu->top + menu->offset, 2); -+ move (menu->current - menu->top + menu->offset, SidebarWidth + 2); - else if (option (OPTBRAILLEFRIENDLY)) - move (menu->current - menu->top + menu->offset, 0); - else -Index: mutt-1.5.15/mutt_curses.h -=================================================================== ---- mutt-1.5.15.orig/mutt_curses.h 2007-04-01 22:58:56.000000000 +0100 -+++ mutt-1.5.15/mutt_curses.h 2007-04-18 09:28:14.000000000 +0100 -@@ -64,6 +64,7 @@ - #undef lines - #endif /* lines */ - -+#define CLEARLINE_WIN(x) move(x,SidebarWidth), clrtoeol() - #define CLEARLINE(x) move(x,0), clrtoeol() - #define CENTERLINE(x,y) move(y, (COLS-strlen(x))/2), addstr(x) - #define BEEP() do { if (option (OPTBEEP)) beep(); } while (0) -@@ -126,6 +127,7 @@ - MT_COLOR_BOLD, - MT_COLOR_UNDERLINE, - MT_COLOR_INDEX, -+ MT_COLOR_NEW, - MT_COLOR_MAX - }; - -Index: mutt-1.5.15/mutt.h -=================================================================== ---- mutt-1.5.15.orig/mutt.h 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/mutt.h 2007-04-18 09:28:14.000000000 +0100 -@@ -443,6 +443,7 @@ - OPTSAVEEMPTY, - OPTSAVENAME, - OPTSCORE, -+ OPTSIDEBAR, - OPTSIGDASHES, - OPTSIGONTOP, - OPTSORTRE, -@@ -904,6 +905,7 @@ - { - char *path; - FILE *fp; -+ time_t atime; - time_t mtime; - off_t size; - off_t vsize; -@@ -938,6 +940,7 @@ - unsigned int quiet : 1; /* inhibit status messages? */ - unsigned int collapsed : 1; /* are all threads collapsed? */ - unsigned int closing : 1; /* mailbox is being closed */ -+ unsigned int peekonly : 1; /* just taking a glance, revert atime */ - - /* driver hooks */ - void *data; /* driver specific data */ -Index: mutt-1.5.15/muttlib.c -=================================================================== ---- mutt-1.5.15.orig/muttlib.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/muttlib.c 2007-04-18 09:28:14.000000000 +0100 -@@ -1206,7 +1206,10 @@ - ch = *src++; /* pad char */ - /* calculate space left on line. if we've already written more data - than will fit on the line, ignore the rest of the line */ -- count = (COLS < destlen ? COLS : destlen); -+ if ( DrawFullLine ) -+ count = (COLS < destlen ? COLS : destlen); -+ else -+ count = ((COLS-SidebarWidth) < destlen ? COLS - SidebarWidth : destlen); - if (count > col) - { - count -= col; /* how many columns left on this line */ -Index: mutt-1.5.15/Muttrc -=================================================================== ---- mutt-1.5.15.orig/Muttrc 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/Muttrc 2007-04-18 09:28:14.000000000 +0100 -@@ -2235,6 +2235,26 @@ - # function. - # - # -+# set sidebar_visible=no -+# -+# Name: sidebar_visible -+# Type: boolean -+# Default: no -+# -+# -+# This specifies whether or not to show sidebar (left-side list of folders). -+# -+# -+# set sidebar_width=0 -+# -+# Name: sidebar_width -+# Type: number -+# Default: 0 -+# -+# -+# The width of the sidebar. -+# -+# - # set crypt_autosign=no - # - # Name: crypt_autosign -Index: mutt-1.5.15/mx.c -=================================================================== ---- mutt-1.5.15.orig/mx.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/mx.c 2007-04-18 09:28:14.000000000 +0100 -@@ -637,6 +637,7 @@ - * M_APPEND open mailbox for appending - * M_READONLY open mailbox in read-only mode - * M_QUIET only print error messages -+ * M_PEEK revert atime where applicable - * ctx if non-null, context struct to use - */ - CONTEXT *mx_open_mailbox (const char *path, int flags, CONTEXT *pctx) -@@ -659,6 +660,8 @@ - ctx->quiet = 1; - if (flags & M_READONLY) - ctx->readonly = 1; -+ if (flags & M_PEEK) -+ ctx->peekonly = 1; - - if (flags & (M_APPEND|M_NEWFOLDER)) - { -@@ -764,9 +767,21 @@ - void mx_fastclose_mailbox (CONTEXT *ctx) - { - int i; -+#ifndef BUFFY_SIZE -+ struct utimbuf ut; -+#endif - - if(!ctx) - return; -+#ifndef BUFFY_SIZE -+ /* fix up the times so buffy won't get confused */ -+ if (ctx->peekonly && ctx->path && ctx->mtime > ctx->atime) -+ { -+ ut.actime = ctx->atime; -+ ut.modtime = ctx->mtime; -+ utime (ctx->path, &ut); -+ } -+#endif - - if (ctx->mx_close) - ctx->mx_close (ctx); -Index: mutt-1.5.15/OPS -=================================================================== ---- mutt-1.5.15.orig/OPS 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/OPS 2007-04-18 09:28:14.000000000 +0100 -@@ -196,3 +196,8 @@ - OP_MAIN_SHOW_LIMIT "show currently active limit pattern" - OP_MAIN_COLLAPSE_THREAD "collapse/uncollapse current thread" - OP_MAIN_COLLAPSE_ALL "collapse/uncollapse all threads" -+OP_SIDEBAR_SCROLL_UP "scroll the mailbox pane up 1 page" -+OP_SIDEBAR_SCROLL_DOWN "scroll the mailbox pane down 1 page" -+OP_SIDEBAR_NEXT "go down to next mailbox" -+OP_SIDEBAR_PREV "go to previous mailbox" -+OP_SIDEBAR_OPEN "open hilighted mailbox" -Index: mutt-1.5.15/pager.c -=================================================================== ---- mutt-1.5.15.orig/pager.c 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/pager.c 2007-04-18 09:28:14.000000000 +0100 -@@ -30,6 +30,7 @@ - #include "pager.h" - #include "attach.h" - #include "mbyte.h" -+#include "sidebar.h" - - #include "mx.h" - -@@ -1073,6 +1074,8 @@ - - int wrap_cols = mutt_term_width (Wrap); - -+ wrap_cols -= SidebarWidth; -+ - /* FIXME: this should come from lineInfo */ - memset(&mbstate, 0, sizeof(mbstate)); - -@@ -1723,7 +1726,7 @@ - if ((redraw & REDRAW_BODY) || topline != oldtopline) - { - do { -- move (bodyoffset, 0); -+ move (bodyoffset, SidebarWidth); - curline = oldtopline = topline; - lines = 0; - force_redraw = 0; -@@ -1736,6 +1739,7 @@ - &QuoteList, &q_level, &force_redraw, &SearchRE) > 0) - lines++; - curline++; -+ move(lines + bodyoffset, SidebarWidth); - } - last_offset = lineInfo[curline].offset; - } while (force_redraw); -@@ -1749,6 +1753,7 @@ - addch ('~'); - addch ('\n'); - lines++; -+ move(lines + bodyoffset, SidebarWidth); - } - /* We are going to update the pager status bar, so it isn't - * necessary to reset to normal color now. */ -@@ -1761,22 +1766,22 @@ - /* print out the pager status bar */ - SETCOLOR (MT_COLOR_STATUS); - BKGDSET (MT_COLOR_STATUS); -- CLEARLINE (statusoffset); -+ CLEARLINE_WIN(statusoffset); - if (IsHeader (extra)) - { -- size_t l1 = (COLS - 9) * MB_LEN_MAX; -+ size_t l1 = ((COLS - 9) * MB_LEN_MAX) - (SidebarWidth * MB_LEN_MAX); - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->hdr, M_FORMAT_MAKEPRINT); - } - else if (IsMsgAttach (extra)) - { -- size_t l1 = (COLS - 9) * MB_LEN_MAX; -+ size_t l1 = (COLS - 9) * MB_LEN_MAX - (SidebarWidth * MB_LEN_MAX); - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->bdy->hdr, M_FORMAT_MAKEPRINT); - } -- mutt_paddstr (COLS-10, IsHeader (extra) || IsMsgAttach (extra) ? -+ mutt_paddstr (COLS-10-SidebarWidth, IsHeader (extra) || IsMsgAttach (extra) ? - buffer : banner); - addstr (" -- ("); - if (last_pos < sb.st_size - 1) -@@ -1792,18 +1797,24 @@ - /* redraw the pager_index indicator, because the - * flags for this message might have changed. */ - menu_redraw_current (index); -+ draw_sidebar(MENU_PAGER); - - /* print out the index status bar */ - menu_status_line (buffer, sizeof (buffer), index, NONULL(Status)); - -- move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), 0); -+ move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), -+ SidebarWidth); - SETCOLOR (MT_COLOR_STATUS); - BKGDSET (MT_COLOR_STATUS); -- mutt_paddstr (COLS, buffer); -+ mutt_paddstr (COLS-SidebarWidth, buffer); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - } - -+ /* if we're not using the index, update every time */ -+ if ( index == 0 ) -+ draw_sidebar(MENU_PAGER); -+ - redraw = 0; - - if (option(OPTBRAILLEFRIENDLY)) { -@@ -2739,6 +2750,12 @@ - redraw = REDRAW_FULL; - break; - -+ case OP_SIDEBAR_SCROLL_UP: -+ case OP_SIDEBAR_SCROLL_DOWN: -+ case OP_SIDEBAR_NEXT: -+ case OP_SIDEBAR_PREV: -+ scroll_sidebar(ch, MENU_PAGER); -+ break; - default: - ch = -1; - break; -Index: mutt-1.5.15/PATCHES -=================================================================== ---- mutt-1.5.15.orig/PATCHES 2007-04-18 09:28:14.000000000 +0100 -+++ mutt-1.5.15/PATCHES 2007-04-18 09:28:14.000000000 +0100 -@@ -1,3 +1,4 @@ -+patch-1.5.15.sidebar.20070408.txt - vvv.quote - vvv.initials - vvv.nntp -Index: mutt-1.5.15/sidebar.c -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ mutt-1.5.15/sidebar.c 2007-04-18 09:28:14.000000000 +0100 -@@ -0,0 +1,294 @@ -+/* -+ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu> -+ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. -+ */ -+ -+ -+#if HAVE_CONFIG_H -+# include "config.h" -+#endif -+ -+#include "mutt.h" -+#include "mutt_menu.h" -+#include "mutt_curses.h" -+#include "sidebar.h" -+#include "buffy.h" -+#include <libgen.h> -+#include "keymap.h" -+#include <stdbool.h> -+ -+/*BUFFY *CurBuffy = 0;*/ -+static BUFFY *TopBuffy = 0; -+static BUFFY *BottomBuffy = 0; -+static int known_lines = 0; -+ -+static int quick_log10(int n) -+{ -+ char string[32]; -+ sprintf(string, "%d", n); -+ return strlen(string); -+} -+ -+void calc_boundaries (int menu) -+{ -+ BUFFY *tmp = Incoming; -+ -+ if ( known_lines != LINES ) { -+ TopBuffy = BottomBuffy = 0; -+ known_lines = LINES; -+ } -+ for ( ; tmp->next != 0; tmp = tmp->next ) -+ tmp->next->prev = tmp; -+ -+ if ( TopBuffy == 0 && BottomBuffy == 0 ) -+ TopBuffy = Incoming; -+ if ( BottomBuffy == 0 ) { -+ int count = LINES - 2 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); -+ BottomBuffy = TopBuffy; -+ while ( --count && BottomBuffy->next ) -+ BottomBuffy = BottomBuffy->next; -+ } -+ else if ( TopBuffy == CurBuffy->next ) { -+ int count = LINES - 2 - (menu != MENU_PAGER); -+ BottomBuffy = CurBuffy; -+ tmp = BottomBuffy; -+ while ( --count && tmp->prev) -+ tmp = tmp->prev; -+ TopBuffy = tmp; -+ } -+ else if ( BottomBuffy == CurBuffy->prev ) { -+ int count = LINES - 2 - (menu != MENU_PAGER); -+ TopBuffy = CurBuffy; -+ tmp = TopBuffy; -+ while ( --count && tmp->next ) -+ tmp = tmp->next; -+ BottomBuffy = tmp; -+ } -+} -+ -+char *make_sidebar_entry(char *box, int size, int new) -+{ -+ static char *entry = 0; -+ char *c; -+ int i = 0; -+ int delim_len = strlen(SidebarDelim); -+ -+ c = realloc(entry, SidebarWidth - delim_len + 2); -+ if ( c ) entry = c; -+ entry[SidebarWidth - delim_len + 1] = 0; -+ for (; i < SidebarWidth - delim_len + 1; entry[i++] = ' ' ); -+ i = strlen(box); -+ strncpy( entry, box, i < (SidebarWidth - delim_len + 1) ? i : (SidebarWidth - delim_len + 1) ); -+ -+ if (size == -1) -+ sprintf(entry + SidebarWidth - delim_len - 3, "?"); -+ else if ( new ) -+ sprintf( -+ entry + SidebarWidth - delim_len - 3 - quick_log10(size) - quick_log10(new), -+ "% d(%d)", size, new); -+ else -+ sprintf( entry + SidebarWidth - delim_len - 1 - quick_log10(size), "% d", size); -+ return entry; -+} -+ -+void set_curbuffy(char buf[LONG_STRING]) -+{ -+ BUFFY* tmp = CurBuffy = Incoming; -+ -+ if (!Incoming) -+ return; -+ -+ while(1) { -+ if(!strcmp(tmp->path, buf)) { -+ CurBuffy = tmp; -+ break; -+ } -+ -+ if(tmp->next) -+ tmp = tmp->next; -+ else -+ break; -+ } -+} -+ -+int draw_sidebar(int menu) { -+ -+ int lines = option(OPTHELP) ? 1 : 0; -+ BUFFY *tmp; -+#ifndef USE_SLANG_CURSES -+ attr_t attrs; -+#endif -+ short delim_len = strlen(SidebarDelim); -+ short color_pair; -+ -+ static bool initialized = false; -+ static int prev_show_value; -+ static short saveSidebarWidth; -+ -+ /* initialize first time */ -+ if(!initialized) { -+ prev_show_value = option(OPTSIDEBAR); -+ saveSidebarWidth = SidebarWidth; -+ if(!option(OPTSIDEBAR)) SidebarWidth = 0; -+ initialized = true; -+ } -+ -+ /* save or restore the value SidebarWidth */ -+ if(prev_show_value != option(OPTSIDEBAR)) { -+ if(prev_show_value && !option(OPTSIDEBAR)) { -+ saveSidebarWidth = SidebarWidth; -+ SidebarWidth = 0; -+ } else if(!prev_show_value && option(OPTSIDEBAR)) { -+ SidebarWidth = saveSidebarWidth; -+ } -+ prev_show_value = option(OPTSIDEBAR); -+ } -+ -+ -+// if ( SidebarWidth == 0 ) return 0; -+ if (SidebarWidth > 0 && option (OPTSIDEBAR) -+ && delim_len >= SidebarWidth) { -+ unset_option (OPTSIDEBAR); -+ /* saveSidebarWidth = SidebarWidth; */ -+ if (saveSidebarWidth > delim_len) { -+ SidebarWidth = saveSidebarWidth; -+ mutt_error (_("Value for sidebar_delim is too long. Disabling sidebar.")); -+ sleep (2); -+ } else { -+ SidebarWidth = 0; -+ mutt_error (_("Value for sidebar_delim is too long. Disabling sidebar. Please set your sidebar_width to a sane value.")); -+ sleep (4); /* the advise to set a sane value should be seen long enough */ -+ } -+ saveSidebarWidth = 0; -+ return (0); -+ } -+ -+ if ( SidebarWidth == 0 || !option(OPTSIDEBAR)) { -+ if (SidebarWidth > 0) { -+ saveSidebarWidth = SidebarWidth; -+ SidebarWidth = 0; -+ } -+ unset_option(OPTSIDEBAR); -+ return 0; -+ } -+ -+ /* get attributes for divider */ -+ SETCOLOR(MT_COLOR_STATUS); -+#ifndef USE_SLANG_CURSES -+ attr_get(&attrs, &color_pair, 0); -+#else -+ color_pair = attr_get(); -+#endif -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ /* draw the divider */ -+ -+ for ( ; lines < LINES-1-(menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) { -+ move(lines, SidebarWidth - delim_len); -+ addstr(NONULL(SidebarDelim)); -+#ifndef USE_SLANG_CURSES -+ mvchgat(lines, SidebarWidth - delim_len, delim_len, 0, color_pair, NULL); -+#endif -+ } -+ -+ if ( Incoming == 0 ) return 0; -+ lines = option(OPTHELP) ? 1 : 0; /* go back to the top */ -+ -+ if ( known_lines != LINES || TopBuffy == 0 || BottomBuffy == 0 ) -+ calc_boundaries(menu); -+ if ( CurBuffy == 0 ) CurBuffy = Incoming; -+ -+ tmp = TopBuffy; -+ -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ for ( ; tmp && lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); tmp = tmp->next ) { -+ if ( tmp == CurBuffy ) -+ SETCOLOR(MT_COLOR_INDICATOR); -+ else if ( tmp->msg_unread > 0 ) -+ SETCOLOR(MT_COLOR_NEW); -+ else -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ move( lines, 0 ); -+ if ( Context && !strcmp( tmp->path, Context->path ) ) { -+ tmp->msg_unread = Context->unread; -+ tmp->msgcount = Context->msgcount; -+ } -+ printw( "%.*s", SidebarWidth - delim_len + 1, -+ make_sidebar_entry(basename(tmp->path), tmp->msgcount, -+ tmp->msg_unread)); -+ lines++; -+ } -+ SETCOLOR(MT_COLOR_NORMAL); -+ for ( ; lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) { -+ int i = 0; -+ move( lines, 0 ); -+ for ( ; i < SidebarWidth - delim_len - 1; i++ ) -+ addch(' '); -+ } -+ return 0; -+} -+ -+ -+void set_buffystats(CONTEXT* Context) -+{ -+ BUFFY *tmp = Incoming; -+ while(tmp) { -+ if(Context && !strcmp(tmp->path, Context->path)) { -+ tmp->msg_unread = Context->unread; -+ tmp->msgcount = Context->msgcount; -+ break; -+ } -+ tmp = tmp->next; -+ } -+} -+ -+void scroll_sidebar(int op, int menu) -+{ -+ if(!SidebarWidth) return; -+ if(!CurBuffy) return; -+ -+ switch (op) { -+ case OP_SIDEBAR_NEXT: -+ if ( CurBuffy->next == NULL ) return; -+ CurBuffy = CurBuffy->next; -+ break; -+ case OP_SIDEBAR_PREV: -+ if ( CurBuffy->prev == NULL ) return; -+ CurBuffy = CurBuffy->prev; -+ break; -+ case OP_SIDEBAR_SCROLL_UP: -+ CurBuffy = TopBuffy; -+ if ( CurBuffy != Incoming ) { -+ calc_boundaries(menu); -+ CurBuffy = CurBuffy->prev; -+ } -+ break; -+ case OP_SIDEBAR_SCROLL_DOWN: -+ CurBuffy = BottomBuffy; -+ if ( CurBuffy->next ) { -+ calc_boundaries(menu); -+ CurBuffy = CurBuffy->next; -+ } -+ break; -+ default: -+ return; -+ } -+ calc_boundaries(menu); -+ draw_sidebar(menu); -+} -Index: mutt-1.5.15/sidebar.h -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ mutt-1.5.15/sidebar.h 2007-04-18 09:28:14.000000000 +0100 -@@ -0,0 +1,36 @@ -+/* -+ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu> -+ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. -+ */ -+ -+#ifndef SIDEBAR_H -+#define SIDEBAR_H -+ -+struct MBOX_LIST { -+ char *path; -+ int msgcount; -+ int new; -+} MBLIST; -+ -+/* parameter is whether or not to go to the status line */ -+/* used for omitting the last | that covers up the status bar in the index */ -+int draw_sidebar(int); -+void scroll_sidebar(int, int); -+void set_curbuffy(char*); -+void set_buffystats(CONTEXT*); -+ -+#endif /* SIDEBAR_H */ -Index: mutt-1.5.15/imap/imap.c -=================================================================== ---- mutt-1.5.15.orig/imap/imap.c 2007-04-06 20:52:53.000000000 +0100 -+++ mutt-1.5.15/imap/imap.c 2007-04-18 09:28:14.000000000 +0100 -@@ -1483,7 +1483,7 @@ - - imap_munge_mbox_name (munged, sizeof (munged), name); - snprintf (command, sizeof (command), -- "STATUS %s (UIDNEXT UIDVALIDITY UNSEEN RECENT)", munged); -+ "STATUS %s (UIDNEXT UIDVALIDITY UNSEEN RECENT MESSAGES)", munged); - - if (imap_cmd_queue (idata, command) < 0) - { -Index: mutt-1.5.15/imap/command.c -=================================================================== ---- mutt-1.5.15.orig/imap/command.c 2007-04-05 16:58:57.000000000 +0100 -+++ mutt-1.5.15/imap/command.c 2007-04-18 09:28:14.000000000 +0100 -@@ -914,6 +914,13 @@ - opened */ - status->uidnext = oldun; - -+ /* Added to make the sidebar show the correct numbers */ -+ if (status->messages) -+ { -+ inc->msgcount = status->messages; -+ inc->msg_unread = status->unseen; -+ } -+ - FREE (&value); - return; - } diff --git a/packages/mutt/mutt-1.5.4i/configure.patch b/packages/mutt/mutt-1.5.4i/configure.patch deleted file mode 100644 index 70cf2b36f0..0000000000 --- a/packages/mutt/mutt-1.5.4i/configure.patch +++ /dev/null @@ -1,303 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- mutt-1.5.4/./configure.in~configure -+++ mutt-1.5.4/./configure.in -@@ -3,8 +3,9 @@ - dnl !!! WHEN ADDING NEW CONFIGURE TESTS, PLEASE ADD CODE TO MAIN.C !!! - dnl !!! TO DUMP THEIR RESULTS WHEN MUTT -V IS CALLED !!! - --AC_PREREQ(2.12) --AC_INIT(mutt.h) -+AC_PREREQ(2.57) -+AC_INIT -+AC_CONFIG_SRCDIR([mutt.h]) - AM_CONFIG_HEADER(config.h) - - mutt_cv_version=`cat $srcdir/VERSION` -@@ -151,7 +152,7 @@ - - AC_ARG_WITH(slang, [ --with-slang[=DIR] Use S-Lang instead of ncurses], - [AC_CACHE_CHECK([if this is a BSD system], mutt_cv_bsdish, -- [AC_TRY_RUN([#include <sys/param.h> -+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <sys/param.h> - - main () - { -@@ -160,10 +161,7 @@ - #else - exit (1); - #endif --}], -- mutt_cv_bsdish=yes, -- mutt_cv_bsdish=no, -- mutt_cv_bsdish=no)]) -+}]])],[mutt_cv_bsdish=yes],[mutt_cv_bsdish=no],[mutt_cv_bsdish=no])]) - - AC_MSG_CHECKING(for S-Lang) - if test $withval = yes; then -@@ -294,7 +292,8 @@ - AC_DEFINE(SIG_ATOMIC_VOLATILE_T, [volatile sig_atomic_t]) - fi - --AC_DECL_SYS_SIGLIST -+AC_CHECK_DECLS([sys_siglist]) -+ - - dnl For MD5 and SHA1 on 64-bit systems - AC_C_BIGENDIAN -@@ -302,7 +301,7 @@ - dnl This is the method autoconf-2.50's new AC_CHECK_TYPE macro uses. - dnl We need to be backwards compatible to autoconf 2.13, though. -lh - AC_MSG_CHECKING(for uint32_t) --AC_TRY_COMPILE([ -+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include <sys/types.h> - #if HAVE_INTTYPES_H - #include <inttypes.h> -@@ -310,16 +309,15 @@ - #if HAVE_STDINT_H - #include <stdint.h> - #endif --#endif], --[if ((uint32_t *) 0) -+#endif]], [[if ((uint32_t *) 0) - return 0; - if (sizeof (uint32_t)) - return 0; --],[ -+]])],[ - AC_DEFINE(HAVE_UINT32_T,1,[ Define if you have the uint32_t type. ]) - AC_MSG_RESULT(yes) -- ], AC_MSG_RESULT(no) --) -+ ],[AC_MSG_RESULT(no) -+]) - AC_CHECK_SIZEOF(int) - AC_CHECK_SIZEOF(long) - -@@ -339,8 +337,7 @@ - AC_CHECK_FUNCS(snprintf, , [mutt_cv_snprintf=yes]) - AC_CHECK_FUNCS(vsnprintf, , [mutt_cv_snprintf=yes]) - if test $mutt_cv_snprintf = yes; then --# AC_LIBOBJ(snprintf) -- LIBOBJS="$LIBOBJS snprintf.o" -+ AC_LIBOBJ(snprintf) - fi - - dnl SCO uses chsize() instead of ftruncate() -@@ -359,21 +356,19 @@ - if test $mutt_cv_regex = no ; then - AC_CACHE_CHECK([whether your system's regexp library is completely broken], - [mutt_cv_regex_broken], -- AC_TRY_RUN([ -+ AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include <unistd.h> - #include <regex.h> --main() { regex_t blah ; regmatch_t p; p.rm_eo = p.rm_eo; return regcomp(&blah, "foo.*bar", REG_NOSUB) || regexec (&blah, "foobar", 0, NULL, 0); }], -- mutt_cv_regex_broken=no, mutt_cv_regex_broken=yes, mutt_cv_regex_broken=yes)) -+main() { regex_t blah ; regmatch_t p; p.rm_eo = p.rm_eo; return regcomp(&blah, "foo.*bar", REG_NOSUB) || regexec (&blah, "foobar", 0, NULL, 0); }]])],[mutt_cv_regex_broken=no],[mutt_cv_regex_broken=yes],[mutt_cv_regex_broken=yes])) - if test $mutt_cv_regex_broken = yes ; then -- echo "Using the included GNU regex instead." >&AC_FD_MSG -+ echo "Using the included GNU regex instead." >&AS_MESSAGE_FD([]) - mutt_cv_regex=yes - fi - fi - - if test $mutt_cv_regex = yes; then - AC_DEFINE(USE_GNU_REGEX,1,[ Define if you want to use the included regex.c. ]) --### AC_LIBOBJ(regex) -- LIBOBJS="$LIBOBJS regex.o" -+ AC_LIBOBJ(regex) - fi - - -@@ -410,7 +405,7 @@ - fi - AC_DEFINE_UNQUOTED(MAILPATH,"$mutt_cv_mailpath",[ Where new mail is spooled. ]) - -- AC_CACHE_CHECK(if $mutt_cv_mailpath is world writable, mutt_cv_worldwrite, [AC_TRY_RUN([#include <sys/types.h> -+ AC_CACHE_CHECK(if $mutt_cv_mailpath is world writable, mutt_cv_worldwrite, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <sys/types.h> - #include <sys/stat.h> - - int main (int argc, char **argv) -@@ -420,14 +415,14 @@ - stat ("$mutt_cv_mailpath", &s); - if (s.st_mode & S_IWOTH) exit (0); - exit (1); --}], mutt_cv_worldwrite=yes, mutt_cv_worldwrite=no, mutt_cv_worldwrite=no)]) -+}]])],[mutt_cv_worldwrite=yes],[mutt_cv_worldwrite=no],[mutt_cv_worldwrite=no])]) - - mutt_cv_setgid=no - if test $mutt_cv_worldwrite = yes; then - AC_DEFINE(USE_DOTLOCK,1,[ Define to use dotlocking for mailboxes. ]) - else - -- AC_CACHE_CHECK(if $mutt_cv_mailpath is group writable, mutt_cv_groupwrite, [AC_TRY_RUN([#include <sys/types.h> -+ AC_CACHE_CHECK(if $mutt_cv_mailpath is group writable, mutt_cv_groupwrite, [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <sys/types.h> - #include <sys/stat.h> - - int main (int argc, char **argv) -@@ -437,7 +432,7 @@ - stat ("$mutt_cv_mailpath", &s); - if (s.st_mode & S_IWGRP) exit (0); - exit (1); --}], mutt_cv_groupwrite=yes, mutt_cv_groupwrite=no, mutt_cv_groupwrite=no)]) -+}]])],[mutt_cv_groupwrite=yes],[mutt_cv_groupwrite=no],[mutt_cv_groupwrite=no])]) - - if test $mutt_cv_groupwrite = yes; then - AC_DEFINE(USE_DOTLOCK,1,[ Define to use dotlocking for mailboxes. ]) -@@ -813,7 +808,7 @@ - AC_CACHE_CHECK([whether this iconv is good enough], mutt_cv_iconv_good, - mutt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" -- AC_TRY_RUN([ -+ AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include <iconv.h> - int main() - { -@@ -829,10 +824,7 @@ - !(ob == buf && obl == sizeof(buf)) || - iconv_close(cd))); - } -- ], -- mutt_cv_iconv_good=yes, -- mutt_cv_iconv_good=no, -- mutt_cv_iconv_good=yes) -+ ]])],[mutt_cv_iconv_good=yes],[mutt_cv_iconv_good=no],[mutt_cv_iconv_good=yes]) - LIBS="$mutt_save_LIBS") - if test "$mutt_cv_iconv_good" = no; then - AC_MSG_ERROR(Try using libiconv instead) -@@ -844,7 +836,7 @@ - AC_CACHE_CHECK([whether iconv is non-transcribing], mutt_cv_iconv_nontrans, - mutt_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" -- AC_TRY_RUN([ -+ AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include <iconv.h> - #include <string.h> - int main() -@@ -861,10 +853,7 @@ - return ((cd = iconv_open("UTF-8", "UTF-8")) == (iconv_t)(-1) || - iconv(cd, &ib, &ibl, &ob, &obl)); - } -- ], -- mutt_cv_iconv_nontrans=no, -- mutt_cv_iconv_nontrans=yes, -- mutt_cv_iconv_nontrans=no) -+ ]])],[mutt_cv_iconv_nontrans=no],[mutt_cv_iconv_nontrans=yes],[mutt_cv_iconv_nontrans=no]) - LIBS="$mutt_save_LIBS") - if test "$mutt_cv_iconv_nontrans" = yes; then - AC_DEFINE(ICONV_NONTRANS, 1) -@@ -888,32 +877,26 @@ - AC_CHECK_HEADERS(wchar.h) - - AC_CACHE_CHECK([for wchar_t], mutt_cv_wchar_t, -- AC_TRY_COMPILE([ -+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include <stddef.h> - #include <stdlib.h> - #ifdef HAVE_WCHAR_H - #include <wchar.h> - #endif -- ], -- [ wchar_t wc; return 0; ], -- mutt_cv_wchar_t=yes, -- mutt_cv_wchar_t=no)) -+ ]], [[ wchar_t wc; return 0; ]])],[mutt_cv_wchar_t=yes],[mutt_cv_wchar_t=no])) - - if test "$mutt_cv_wchar_t" = no; then - AC_DEFINE(wchar_t,int,[ Define to 'int' if system headers don't define. ]) - fi - - AC_CACHE_CHECK([for wint_t], mutt_cv_wint_t, -- AC_TRY_COMPILE([ -+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include <stddef.h> - #include <stdlib.h> - #ifdef HAVE_WCHAR_H - #include <wchar.h> - #endif -- ], -- [ wint_t wc; return 0; ], -- mutt_cv_wint_t=yes, -- mutt_cv_wint_t=no)) -+ ]], [[ wint_t wc; return 0; ]])],[mutt_cv_wint_t=yes],[mutt_cv_wint_t=no])) - - if test "$mutt_cv_wint_t" = no; then - AC_DEFINE(wint_t,int,[ Define to 'int' if system headers don't define. ]) -@@ -925,16 +908,13 @@ - AC_CHECK_FUNCS(iswxdigit towupper towlower) - - AC_CACHE_CHECK([for mbstate_t], mutt_cv_mbstate_t, -- AC_TRY_COMPILE([ -+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #include <stddef.h> - #include <stdlib.h> - #ifdef HAVE_WCHAR_H - #include <wchar.h> - #endif -- ], -- [ mbstate_t s; return 0; ], -- mutt_cv_mbstate_t=yes, -- mutt_cv_mbstate_t=no)) -+ ]], [[ mbstate_t s; return 0; ]])],[mutt_cv_mbstate_t=yes],[mutt_cv_mbstate_t=no])) - - if test "$mutt_cv_mbstate_t" = no; then - AC_DEFINE(mbstate_t,int,[ Define to 'int' if system headers don't define. ]) -@@ -947,7 +927,7 @@ - if test "$wc_funcs" != yes -a "$wc_funcs" != no; then - AC_CACHE_CHECK([for wchar_t functions], mutt_cv_wc_funcs, - mutt_cv_wc_funcs=no -- AC_TRY_LINK([ -+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[ - #define _XOPEN_SOURCE 1 - #include <stddef.h> - #include <stdlib.h> -@@ -956,10 +936,8 @@ - #endif - #ifdef HAVE_WCHAR_H - #include <wchar.h> --#endif], -- [mbrtowc(0, 0, 0, 0); wctomb(0, 0); wcwidth(0); -- iswprint(0); iswspace(0); towlower(0); towupper(0); iswalnum(0)], -- mutt_cv_wc_funcs=yes)) -+#endif]], [[mbrtowc(0, 0, 0, 0); wctomb(0, 0); wcwidth(0); -+ iswprint(0); iswspace(0); towlower(0); towupper(0); iswalnum(0)]])],[mutt_cv_wc_funcs=yes],[])) - wc_funcs=$mutt_cv_wc_funcs - fi - -@@ -968,26 +946,21 @@ - fi - - AC_CACHE_CHECK([for nl_langinfo and CODESET], mutt_cv_langinfo_codeset, -- [AC_TRY_LINK([#include <langinfo.h>], -- [char* cs = nl_langinfo(CODESET);], -- mutt_cv_langinfo_codeset=yes, -- mutt_cv_langinfo_codeset=no)]) -+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[char* cs = nl_langinfo(CODESET);]])],[mutt_cv_langinfo_codeset=yes],[mutt_cv_langinfo_codeset=no])]) - if test $mutt_cv_langinfo_codeset = yes; then - AC_DEFINE(HAVE_LANGINFO_CODESET,1,[ Define if you have <langinfo.h> and nl_langinfo(CODESET). ]) - fi - - AC_CACHE_CHECK([for nl_langinfo and YESEXPR], mutt_cv_langinfo_yesexpr, -- [AC_TRY_LINK([#include <langinfo.h>], -- [char* cs = nl_langinfo(YESEXPR);], -- mutt_cv_langinfo_yesexpr=yes, -- mutt_cv_langinfo_yesexpr=no)]) -+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[char* cs = nl_langinfo(YESEXPR);]])],[mutt_cv_langinfo_yesexpr=yes],[mutt_cv_langinfo_yesexpr=no])]) - if test $mutt_cv_langinfo_yesexpr = yes; then - AC_DEFINE(HAVE_LANGINFO_YESEXPR,1,[ Define if you have <langinfo.h> and nl_langinfo(YESEXPR). ]) - fi - --AC_OUTPUT(Makefile intl/Makefile m4/Makefile -+AC_CONFIG_FILES([Makefile intl/Makefile m4/Makefile - po/Makefile.in doc/Makefile contrib/Makefile - muttbug.sh - imap/Makefile - Muttrc.head -- doc/instdoc.sh) -+ doc/instdoc.sh]) -+AC_OUTPUT diff --git a/packages/mutt/mutt-1.5.4i/cppflags.patch b/packages/mutt/mutt-1.5.4i/cppflags.patch deleted file mode 100644 index f53cc240e1..0000000000 --- a/packages/mutt/mutt-1.5.4i/cppflags.patch +++ /dev/null @@ -1,27 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- mutt-1.5.4/Makefile.am~cppflags -+++ mutt-1.5.4/Makefile.am -@@ -55,7 +55,7 @@ - - INCLUDES=-I. -I$(top_srcdir) $(IMAP_INCLUDES) -Iintl - --CPPFLAGS=@CPPFLAGS@ -I$(includedir) -+CPPFLAGS=@CPPFLAGS@ - - - EXTRA_mutt_SOURCES = account.c md5c.c mutt_sasl.c mutt_socket.c mutt_ssl.c \ ---- mutt-1.5.4/Makefile.in~cppflags -+++ mutt-1.5.4/Makefile.in -@@ -145,7 +145,7 @@ - - INCLUDES = -I. -I$(top_srcdir) $(IMAP_INCLUDES) -Iintl - --CPPFLAGS = @CPPFLAGS@ -I$(includedir) -+CPPFLAGS = @CPPFLAGS@ - - EXTRA_mutt_SOURCES = account.c md5c.c mutt_sasl.c mutt_socket.c mutt_ssl.c mutt_tunnel.c pop.c pop_auth.c pop_lib.c smime.c pgp.c pgpinvoke.c pgpkey.c pgplib.c sha1.c pgpmicalg.c gnupgparse.c resize.c dotlock.c remailer.c browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c pgppacket.c mutt_idna.h nntp.c newsrc.c - diff --git a/packages/mutt/mutt-1.5.4i/keymap.h.patch b/packages/mutt/mutt-1.5.4i/keymap.h.patch deleted file mode 100644 index 40995aa58f..0000000000 --- a/packages/mutt/mutt-1.5.4i/keymap.h.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mutt-1.5.4/keymap.h.orig 2006-07-01 16:50:25.000000000 +0200 -+++ mutt-1.5.4/keymap.h 2006-07-01 16:50:58.000000000 +0200 -@@ -19,6 +19,8 @@ - #ifndef KEYMAP_H - #define KEYMAP_H - -+#include "mapping.h" -+ - /* maximal length of a key binding sequence used for buffer in km_bindkey */ - #define MAX_SEQ 8 - diff --git a/packages/mutt/mutt-1.5.4i/posix1_lim.patch b/packages/mutt/mutt-1.5.4i/posix1_lim.patch deleted file mode 100644 index 8381174cc3..0000000000 --- a/packages/mutt/mutt-1.5.4i/posix1_lim.patch +++ /dev/null @@ -1,49 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- mutt-1.5.4/mutt_dotlock.c~posix1_lim -+++ mutt-1.5.4/mutt_dotlock.c -@@ -39,7 +39,7 @@ - #include <limits.h> - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include "dotlock.h" ---- mutt-1.5.4/mutt.h~posix1_lim -+++ mutt-1.5.4/mutt.h -@@ -43,7 +43,7 @@ - #endif - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include <pwd.h> ---- mutt-1.5.4/dotlock.c~posix1_lim -+++ mutt-1.5.4/dotlock.c -@@ -39,7 +39,7 @@ - #include <limits.h> - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include "dotlock.h" ---- mutt-1.5.4/lib.h~posix1_lim -+++ mutt-1.5.4/lib.h -@@ -40,7 +40,7 @@ - # include <signal.h> - - # ifndef _POSIX_PATH_MAX --# include <posix1_lim.h> -+# include <bits/posix1_lim.h> - # endif - - # ifdef ENABLE_NLS diff --git a/packages/mutt/mutt-1.5.9i/cppflags.patch b/packages/mutt/mutt-1.5.9i/cppflags.patch deleted file mode 100644 index 774bc020ed..0000000000 --- a/packages/mutt/mutt-1.5.9i/cppflags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mutt-1.5.9/Makefile.am.orig 2005-08-04 08:58:08.169498584 +0000 -+++ mutt-1.5.9/Makefile.am 2005-08-04 08:58:30.514101688 +0000 -@@ -55,7 +55,7 @@ - - INCLUDES=-I. -I$(top_srcdir) $(IMAP_INCLUDES) $(LIBGPGME_CFLAGS) -Iintl - --CPPFLAGS=@CPPFLAGS@ -I$(includedir) -+CPPFLAGS=@CPPFLAGS@ - - - EXTRA_mutt_SOURCES = account.c md5c.c mutt_sasl.c mutt_socket.c mutt_ssl.c \ diff --git a/packages/mutt/mutt-1.5.9i/makedoc.patch b/packages/mutt/mutt-1.5.9i/makedoc.patch deleted file mode 100644 index f2b64a6f22..0000000000 --- a/packages/mutt/mutt-1.5.9i/makedoc.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- mutt-1.5.9/makedoc.c.orig 2005-08-04 10:26:18.686217792 +0000 -+++ mutt-1.5.9/makedoc.c 2005-08-04 10:26:36.254547000 +0000 -@@ -49,7 +49,7 @@ - #ifndef HAVE_STRERROR - #ifndef STDC_HEADERS - extern int sys_nerr; --extern char *sys_errlist[]; -+extern __const char *__const sys_errlist[]; - #endif - - #define strerror(x) ((x) > 0 && (x) < sys_nerr) ? sys_errlist[(x)] : 0 diff --git a/packages/mutt/mutt-1.5.9i/patch-1.5.9i.sidebar.20050628.txt.hackedfornntp b/packages/mutt/mutt-1.5.9i/patch-1.5.9i.sidebar.20050628.txt.hackedfornntp deleted file mode 100644 index ebe6a1b014..0000000000 --- a/packages/mutt/mutt-1.5.9i/patch-1.5.9i.sidebar.20050628.txt.hackedfornntp +++ /dev/null @@ -1,1527 +0,0 @@ -diff -N -c -r mutt-1.5.9i-orig/buffy.c mutt-1.5.9i-patched/buffy.c -*** mutt-1.5.9i-orig/buffy.c 2005-02-03 13:47:52.000000000 -0500 ---- mutt-1.5.9i-patched/buffy.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 267,273 **** - char path[_POSIX_PATH_MAX]; - struct stat contex_sb; - time_t t; -! - #ifdef USE_IMAP - /* update postponed count as well, on force */ - if (force) ---- 267,273 ---- - char path[_POSIX_PATH_MAX]; - struct stat contex_sb; - time_t t; -! CONTEXT *ctx; - #ifdef USE_IMAP - /* update postponed count as well, on force */ - if (force) -*************** -*** 300,305 **** ---- 300,307 ---- - - for (tmp = Incoming; tmp; tmp = tmp->next) - { -+ if ( tmp->new == 1 ) -+ tmp->has_new = 1; - tmp->new = 0; - - #ifdef USE_IMAP -*************** -*** 353,362 **** - case M_MBOX: - case M_MMDF: - -! if (STAT_CHECK) - { - BuffyCount++; -! tmp->new = 1; - } - #ifdef BUFFY_SIZE - else ---- 355,380 ---- - case M_MBOX: - case M_MMDF: - -! { -! if (STAT_CHECK || tmp->msgcount == 0) - { -+ BUFFY b = *tmp; -+ int msgcount = 0; -+ int msg_unread = 0; - BuffyCount++; -! /* parse the mailbox, to see how much mail there is */ -! ctx = mx_open_mailbox( tmp->path, M_READONLY | M_QUIET | M_NOSORT | M_PEEK, NULL); -! if(ctx) -! { -! msgcount = ctx->msgcount; -! msg_unread = ctx->unread; -! mx_close_mailbox(ctx, 0); -! } -! *tmp = b; -! tmp->msgcount = msgcount; -! tmp->msg_unread = msg_unread; -! if(STAT_CHECK) -! tmp->has_new = tmp->new = 1; - } - #ifdef BUFFY_SIZE - else -*************** -*** 368,408 **** - if (tmp->newly_created && - (sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime)) - tmp->newly_created = 0; -! - break; - - case M_MAILDIR: - - snprintf (path, sizeof (path), "%s/new", tmp->path); - if ((dirp = opendir (path)) == NULL) - { - tmp->magic = 0; - break; - } - while ((de = readdir (dirp)) != NULL) - { - char *p; - if (*de->d_name != '.' && - (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T'))) - { -! /* one new and undeleted message is enough */ -! BuffyCount++; -! tmp->new = 1; -! break; - } - } - closedir (dirp); - break; - - case M_MH: -! if ((tmp->new = mh_buffy (tmp->path)) > 0) -! BuffyCount++; - break; - - #ifdef USE_IMAP - case M_IMAP: -! if ((tmp->new = imap_mailbox_check (tmp->path, 1)) > 0) - BuffyCount++; - else - tmp->new = 0; - ---- 386,471 ---- - if (tmp->newly_created && - (sb.st_ctime != sb.st_mtime || sb.st_ctime != sb.st_atime)) - tmp->newly_created = 0; -! } - break; - - case M_MAILDIR: - -+ /* count new message */ - snprintf (path, sizeof (path), "%s/new", tmp->path); - if ((dirp = opendir (path)) == NULL) - { - tmp->magic = 0; - break; - } -+ tmp->msgcount = 0; -+ tmp->msg_unread = 0; - while ((de = readdir (dirp)) != NULL) - { - char *p; - if (*de->d_name != '.' && - (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T'))) - { -! tmp->has_new = tmp->new = 1; -! tmp->msgcount++; -! tmp->msg_unread++; -! } -! } -! if(tmp->msg_unread) -! BuffyCount++; -! -! closedir (dirp); -! -! /* -! * count read messages (for folderlist (sidebar) we also need to count -! * messages in cur so that we the total number of messages -! */ -! snprintf (path, sizeof (path), "%s/cur", tmp->path); -! if ((dirp = opendir (path)) == NULL) -! { -! tmp->magic = 0; -! break; -! } -! while ((de = readdir (dirp)) != NULL) -! { -! char *p; -! if (*de->d_name != '.' && -! (!(p = strstr (de->d_name, ":2,")) || !strchr (p + 3, 'T'))) -! { -! tmp->msgcount++; - } - } - closedir (dirp); - break; - - case M_MH: -! { -! DIR *dp; -! struct dirent *de; -! if ((tmp->new = mh_buffy (tmp->path)) > 0) -! BuffyCount++; -! -! if ((dp = opendir (path)) == NULL) -! break; -! tmp->msgcount = 0; -! while ((de = readdir (dp))) -! { -! if (mh_valid_message (de->d_name)) -! { -! tmp->msgcount++; -! tmp->has_new = tmp->new = 1; -! } -! } -! closedir (dp); -! } - break; - - #ifdef USE_IMAP - case M_IMAP: -! tmp->msgcount = imap_mailbox_check(tmp->path, 0); -! if ((tmp->new = imap_mailbox_check (tmp->path, 1)) > 0) { - BuffyCount++; -+ } - else - tmp->new = 0; - -diff -N -c -r mutt-1.5.9i-orig/buffy.h mutt-1.5.9i-patched/buffy.h -*** mutt-1.5.9i-orig/buffy.h 2002-12-11 06:19:39.000000000 -0500 ---- mutt-1.5.9i-patched/buffy.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 27,33 **** ---- 27,37 ---- - long size; - #endif /* BUFFY_SIZE */ - struct buffy_t *next; -+ struct buffy_t *prev; - short new; /* mailbox has new mail */ -+ short has_new; /* set it new if new and not read */ -+ int msgcount; /* total number of messages */ -+ int msg_unread; /* number of unread messages */ - short notified; /* user has been notified */ - short magic; /* mailbox type */ - short newly_created; /* mbox or mmdf just popped into existence */ -diff -N -c -r mutt-1.5.9i-orig/color.c mutt-1.5.9i-patched/color.c -*** mutt-1.5.9i-orig/color.c 2005-02-03 13:47:52.000000000 -0500 ---- mutt-1.5.9i-patched/color.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 93,98 **** ---- 93,99 ---- - { "bold", MT_COLOR_BOLD }, - { "underline", MT_COLOR_UNDERLINE }, - { "index", MT_COLOR_INDEX }, -+ { "sidebar_new", MT_COLOR_NEW }, - { NULL, 0 } - }; - -diff -N -c -r mutt-1.5.9i-orig/compose.c mutt-1.5.9i-patched/compose.c -*** mutt-1.5.9i-orig/compose.c 2005-02-03 13:47:52.000000000 -0500 ---- mutt-1.5.9i-patched/compose.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 72,78 **** - - #define HDR_XOFFSET 10 - #define TITLE_FMT "%14s" /* Used for Prompts, which are ASCII */ -! #define W (COLS - HDR_XOFFSET) - - static char *Prompts[] = - { ---- 72,78 ---- - - #define HDR_XOFFSET 10 - #define TITLE_FMT "%10s" /* Used for Prompts, which are ASCII */ -! #define W (COLS - HDR_XOFFSET - SidebarWidth) - - static char *Prompts[] = - { -*************** -*** 148,154 **** - } - clrtoeol (); - -! move (HDR_CRYPTINFO, 0); - clrtoeol (); - if ((WithCrypto & APPLICATION_PGP) - && msg->security & APPLICATION_PGP && msg->security & SIGN) ---- 148,154 ---- - } - clrtoeol (); - -! move (HDR_CRYPTINFO, SidebarWidth); - clrtoeol (); - if ((WithCrypto & APPLICATION_PGP) - && msg->security & APPLICATION_PGP && msg->security & SIGN) -*************** -*** 164,170 **** - && (msg->security & ENCRYPT) - && SmimeCryptAlg - && *SmimeCryptAlg) { -! mvprintw (HDR_CRYPTINFO, 40, "%s%s", _("Encrypt with: "), - NONULL(SmimeCryptAlg)); - off = 20; - } ---- 164,170 ---- - && (msg->security & ENCRYPT) - && SmimeCryptAlg - && *SmimeCryptAlg) { -! mvprintw (HDR_CRYPTINFO, SidebarWidth + 40, "%s%s", _("Encrypt with: "), - NONULL(SmimeCryptAlg)); - off = 20; - } -*************** -*** 178,184 **** - int c; - char *t; - -! mvaddstr (HDR_MIX, 0, " Mix: "); - - if (!chain) - { ---- 178,184 ---- - int c; - char *t; - -! mvaddstr (HDR_MIX, SidebarWidth, " Mix: "); - - if (!chain) - { -*************** -*** 193,199 **** - if (t && t[0] == '0' && t[1] == '\0') - t = "<random>"; - -! if (c + mutt_strlen (t) + 2 >= COLS) - break; - - addstr (NONULL(t)); ---- 193,199 ---- - if (t && t[0] == '0' && t[1] == '\0') - t = "<random>"; - -! if (c + mutt_strlen (t) + 2 >= COLS - SidebarWidth) - break; - - addstr (NONULL(t)); -*************** -*** 245,251 **** - - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), addr, 1); -! mvprintw (line, 0, TITLE_FMT, Prompts[line - 1]); - mutt_paddstr (W, buf); - } - ---- 245,251 ---- - - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), addr, 1); -! mvprintw (line, SidebarWidth, TITLE_FMT, Prompts[line - 1]); - mutt_paddstr (W, buf); - } - -*************** -*** 269,275 **** - #endif - - SETCOLOR (MT_COLOR_STATUS); -! mvaddstr (HDR_ATTACH - 1, 0, _("-- Attachments")); - BKGDSET (MT_COLOR_STATUS); - clrtoeol (); - ---- 269,275 ---- - #endif - - SETCOLOR (MT_COLOR_STATUS); -! mvaddstr (HDR_ATTACH - 1, SidebarWidth, _("-- Attachments")); - BKGDSET (MT_COLOR_STATUS); - clrtoeol (); - -*************** -*** 307,313 **** - /* redraw the expanded list so the user can see the result */ - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), *addr, 1); -! move (line, HDR_XOFFSET); - mutt_paddstr (W, buf); - - return 0; ---- 307,313 ---- - /* redraw the expanded list so the user can see the result */ - buf[0] = 0; - rfc822_write_address (buf, sizeof (buf), *addr, 1); -! move (line, HDR_XOFFSET+SidebarWidth); - mutt_paddstr (W, buf); - - return 0; -*************** -*** 553,559 **** - if (mutt_get_field ("Subject: ", buf, sizeof (buf), 0) == 0) - { - mutt_str_replace (&msg->env->subject, buf); -! move (HDR_SUBJECT, HDR_XOFFSET); - clrtoeol (); - if (msg->env->subject) - mutt_paddstr (W, msg->env->subject); ---- 553,559 ---- - if (mutt_get_field ("Subject: ", buf, sizeof (buf), 0) == 0) - { - mutt_str_replace (&msg->env->subject, buf); -! move (HDR_SUBJECT, HDR_XOFFSET + SidebarWidth); - clrtoeol (); - if (msg->env->subject) - mutt_paddstr (W, msg->env->subject); -*************** -*** 570,576 **** - { - strfcpy (fcc, buf, _POSIX_PATH_MAX); - mutt_pretty_mailbox (fcc); -! move (HDR_FCC, HDR_XOFFSET); - mutt_paddstr (W, fcc); - fccSet = 1; - } ---- 570,576 ---- - { - strfcpy (fcc, buf, _POSIX_PATH_MAX); - mutt_pretty_mailbox (fcc); -! move (HDR_FCC, HDR_XOFFSET + SidebarWidth); - mutt_paddstr (W, fcc); - fccSet = 1; - } -diff -N -c -r mutt-1.5.9i-orig/curs_main.c mutt-1.5.9i-patched/curs_main.c -*** mutt-1.5.9i-orig/curs_main.c 2005-02-28 13:36:35.000000000 -0500 ---- mutt-1.5.9i-patched/curs_main.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 28,33 **** ---- 28,34 ---- - #include "sort.h" - #include "buffy.h" - #include "mx.h" -+ #include "sidebar.h" - - #ifdef USE_POP - #include "pop.h" -*************** -*** 538,543 **** ---- 539,545 ---- - if (menu->redraw & REDRAW_FULL) - { - menu_redraw_full (menu); -+ draw_sidebar(menu->menu); - mutt_show_error (); - } - -*************** -*** 560,570 **** ---- 562,575 ---- - - if (menu->redraw & REDRAW_STATUS) - { -+ DrawFullLine = 1; - menu_status_line (buf, sizeof (buf), menu, NONULL (Status)); -+ DrawFullLine = 0; - CLEARLINE (option (OPTSTATUSONTOP) ? 0 : LINES-2); - SETCOLOR (MT_COLOR_STATUS); - mutt_paddstr (COLS, buf); - SETCOLOR (MT_COLOR_NORMAL); -+ set_buffystats(Context); - menu->redraw &= ~REDRAW_STATUS; - } - -*************** -*** 1040,1045 **** ---- 1045,1051 ---- - menu->redraw = REDRAW_FULL; - break; - -+ case OP_SIDEBAR_OPEN: - case OP_MAIN_CHANGE_FOLDER: - - if (attach_msg) -*************** -*** 1057,1063 **** - buf[0] = '\0'; - mutt_buffy (buf, sizeof (buf)); - -! if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1) - break; - if (!buf[0]) - { ---- 1063,1073 ---- - buf[0] = '\0'; - mutt_buffy (buf, sizeof (buf)); - -! if ( op == OP_SIDEBAR_OPEN ) { -! if(!CurBuffy) -! break; -! strncpy( buf, CurBuffy->path, sizeof(buf) ); -! } else if (mutt_enter_fname (cp, buf, sizeof (buf), &menu->redraw, 1) == -1) - break; - if (!buf[0]) - { -*************** -*** 1066,1071 **** ---- 1076,1082 ---- - } - - mutt_expand_path (buf, sizeof (buf)); -+ set_curbuffy(buf); - if (mx_get_magic (buf) <= 0) - { - mutt_error (_("%s is not a mailbox."), buf); -*************** -*** 2092,2097 **** ---- 2103,2114 ---- - mutt_what_key(); - break; - -+ case OP_SIDEBAR_SCROLL_UP: -+ case OP_SIDEBAR_SCROLL_DOWN: -+ case OP_SIDEBAR_NEXT: -+ case OP_SIDEBAR_PREV: -+ scroll_sidebar(op, menu->menu); -+ break; - default: - if (menu->menu == MENU_MAIN) - km_error_key (MENU_MAIN); -diff -N -c -r mutt-1.5.9i-orig/flags.c mutt-1.5.9i-patched/flags.c -*** mutt-1.5.9i-orig/flags.c 2005-02-03 13:47:52.000000000 -0500 ---- mutt-1.5.9i-patched/flags.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 22,29 **** ---- 22,31 ---- - - #include "mutt.h" - #include "mutt_curses.h" -+ #include "mutt_menu.h" - #include "sort.h" - #include "mx.h" -+ #include "sidebar.h" - - #ifdef USE_IMAP - #include "imap_private.h" -*************** -*** 274,279 **** ---- 276,282 ---- - */ - if (h->searched && (changed != h->changed || deleted != ctx->deleted || tagged != ctx->tagged)) - h->searched = 0; -+ draw_sidebar(0); - } - - void mutt_tag_set_flag (int flag, int bf) -diff -N -c -r mutt-1.5.9i-orig/functions.h mutt-1.5.9i-patched/functions.h -*** mutt-1.5.9i-orig/functions.h 2005-02-19 08:49:39.000000000 -0500 ---- mutt-1.5.9i-patched/functions.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 149,154 **** ---- 149,159 ---- - { "decrypt-save", OP_DECRYPT_SAVE, NULL }, - - -+ { "sidebar-scroll-up", OP_SIDEBAR_SCROLL_UP, NULL }, -+ { "sidebar-scroll-down", OP_SIDEBAR_SCROLL_DOWN, NULL }, -+ { "sidebar-next", OP_SIDEBAR_NEXT, NULL }, -+ { "sidebar-prev", OP_SIDEBAR_PREV, NULL }, -+ { "sidebar-open", OP_SIDEBAR_OPEN, NULL }, - { NULL, 0, NULL } - }; - -*************** -*** 243,248 **** ---- 248,258 ---- - { "decrypt-save", OP_DECRYPT_SAVE, NULL }, - - -+ { "sidebar-scroll-up", OP_SIDEBAR_SCROLL_UP, NULL }, -+ { "sidebar-scroll-down", OP_SIDEBAR_SCROLL_DOWN, NULL }, -+ { "sidebar-next", OP_SIDEBAR_NEXT, NULL }, -+ { "sidebar-prev", OP_SIDEBAR_PREV, NULL }, -+ { "sidebar-open", OP_SIDEBAR_OPEN, NULL }, - { NULL, 0, NULL } - }; - -diff -N -c -r mutt-1.5.9i-orig/globals.h mutt-1.5.9i-patched/globals.h -*** mutt-1.5.9i-orig/globals.h 2005-02-12 15:01:02.000000000 -0500 ---- mutt-1.5.9i-patched/globals.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 179,184 **** ---- 179,187 ---- - WHERE short ScoreThresholdRead; - WHERE short ScoreThresholdFlag; - -+ WHERE struct buffy_t *CurBuffy INITVAL(0); -+ WHERE short DrawFullLine INITVAL(0); -+ WHERE short SidebarWidth; - #ifdef USE_IMAP - WHERE short ImapKeepalive; - #endif -diff -N -c -r mutt-1.5.9i-orig/init.h mutt-1.5.9i-patched/init.h -*** mutt-1.5.9i-orig/init.h 2005-03-01 10:56:02.000000000 -0500 ---- mutt-1.5.9i-patched/init.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 1078,1083 **** ---- 1078,1093 ---- - ** This specifies the folder into which read mail in your ``$$spoolfile'' - ** folder will be appended. - */ -+ { "sidebar_visible", DT_BOOL, R_BOTH, OPTSIDEBAR, 0 }, -+ /* -+ ** .pp -+ ** This specifies whether or not to show sidebar (left-side list of folders). -+ */ -+ { "sidebar_width", DT_NUM, R_BOTH, UL &SidebarWidth, 0 }, -+ /* -+ ** .pp -+ ** The width of the sidebar. -+ */ - { "mbox_type", DT_MAGIC,R_NONE, UL &DefaultMagic, M_MBOX }, - /* - ** .pp -diff -N -c -r mutt-1.5.9i-orig/mailbox.h mutt-1.5.9i-patched/mailbox.h -*** mutt-1.5.9i-orig/mailbox.h 2002-11-12 02:53:09.000000000 -0500 ---- mutt-1.5.9i-patched/mailbox.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 27,32 **** ---- 27,33 ---- - #define M_NEWFOLDER (1<<4) /* create a new folder - same as M_APPEND, but uses - * safe_fopen() for mbox-style folders. - */ -+ #define M_PEEK (1<<5) /* revert atime back after taking a look (if applicable) */ - - /* mx_open_new_message() */ - #define M_ADD_FROM 1 /* add a From_ line */ -diff -N -c -r mutt-1.5.9i-orig/Makefile.in mutt-1.5.9i-patched/Makefile.in -*** mutt-1.5.9i-orig/Makefile.in 2005-03-13 11:37:46.000000000 -0500 ---- mutt-1.5.9i-patched/Makefile.in 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 94,100 **** - history.$(OBJEXT) lib.$(OBJEXT) muttlib.$(OBJEXT) \ - editmsg.$(OBJEXT) utf8.$(OBJEXT) mbyte.$(OBJEXT) \ - wcwidth.$(OBJEXT) url.$(OBJEXT) ascii.$(OBJEXT) \ -! mutt_idna.$(OBJEXT) crypt-mod.$(OBJEXT) - mutt_OBJECTS = $(am_mutt_OBJECTS) - am__DEPENDENCIES_1 = - am_mutt_dotlock_OBJECTS = mutt_dotlock.$(OBJEXT) ---- 94,101 ---- - history.$(OBJEXT) lib.$(OBJEXT) muttlib.$(OBJEXT) \ - editmsg.$(OBJEXT) utf8.$(OBJEXT) mbyte.$(OBJEXT) \ - wcwidth.$(OBJEXT) url.$(OBJEXT) ascii.$(OBJEXT) \ -! mutt_idna.$(OBJEXT) crypt-mod.$(OBJEXT) \ -! sidebar.$(OBJEXT) - mutt_OBJECTS = $(am_mutt_OBJECTS) - am__DEPENDENCIES_1 = - am_mutt_dotlock_OBJECTS = mutt_dotlock.$(OBJEXT) -*************** -*** 304,310 **** - score.c send.c sendlib.c signal.c sort.c \ - status.c system.c thread.c charset.c history.c lib.c \ - muttlib.c editmsg.c utf8.c mbyte.c wcwidth.c \ -! url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h - - mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \ - $(INTLLIBS) $(LIBICONV) $(LIBGPGME_LIBS) ---- 305,312 ---- - score.c send.c sendlib.c signal.c sort.c \ - status.c system.c thread.c charset.c history.c lib.c \ - muttlib.c editmsg.c utf8.c mbyte.c wcwidth.c \ -! url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h \ -! sidebar.c - - mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \ - $(INTLLIBS) $(LIBICONV) $(LIBGPGME_LIBS) -*************** -*** 337,343 **** - makedoc.c stamp-doc-rc README.SSL smime.h\ - muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \ - ChangeLog.old mkchangelog.sh cvslog2changelog.pl mutt_idna.h \ -! snprintf.c regex.c crypt-gpgme.h - - EXTRA_SCRIPTS = smime_keys - mutt_dotlock_SOURCES = mutt_dotlock.c ---- 339,345 ---- - makedoc.c stamp-doc-rc README.SSL smime.h\ - muttbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh \ - ChangeLog.old mkchangelog.sh cvslog2changelog.pl mutt_idna.h \ -! snprintf.c regex.c crypt-gpgme.h sidebar.h - - EXTRA_SCRIPTS = smime_keys - mutt_dotlock_SOURCES = mutt_dotlock.c -diff -N -c -r mutt-1.5.9i-orig/mbox.c mutt-1.5.9i-patched/mbox.c -*** mutt-1.5.9i-orig/mbox.c 2005-02-03 13:47:53.000000000 -0500 ---- mutt-1.5.9i-patched/mbox.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 97,102 **** ---- 97,103 ---- - mutt_perror (ctx->path); - return (-1); - } -+ ctx->atime = sb.st_atime; - ctx->mtime = sb.st_mtime; - ctx->size = sb.st_size; - -*************** -*** 245,250 **** ---- 246,252 ---- - - ctx->size = sb.st_size; - ctx->mtime = sb.st_mtime; -+ ctx->atime = sb.st_atime; - - #ifdef NFS_ATTRIBUTE_HACK - if (sb.st_mtime > sb.st_atime) -diff -N -c -r mutt-1.5.9i-orig/menu.c mutt-1.5.9i-patched/menu.c -*** mutt-1.5.9i-orig/menu.c 2005-02-28 10:13:57.000000000 -0500 ---- mutt-1.5.9i-patched/menu.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 24,29 **** ---- 24,30 ---- - #include "mutt_curses.h" - #include "mutt_menu.h" - #include "mbyte.h" -+ #include "sidebar.h" - - #ifdef USE_IMAP - #include "imap.h" -*************** -*** 157,163 **** - void menu_pad_string (char *s, size_t n) - { - int shift = option (OPTARROWCURSOR) ? 3 : 0; -! int cols = COLS - shift; - - mutt_format_string (s, n, cols, cols, 0, ' ', s, strlen (s), 1); - s[n - 1] = 0; ---- 158,164 ---- - void menu_pad_string (char *s, size_t n) - { - int shift = option (OPTARROWCURSOR) ? 3 : 0; -! int cols = COLS - shift - SidebarWidth; - - mutt_format_string (s, n, cols, cols, 0, ' ', s, strlen (s), 1); - s[n - 1] = 0; -*************** -*** 207,212 **** ---- 208,214 ---- - char buf[STRING]; - int i; - -+ draw_sidebar(1); - for (i = menu->top; i < menu->top + menu->pagelen; i++) - { - if (i < menu->max) -*************** -*** 217,223 **** - if (option (OPTARROWCURSOR)) - { - attrset (menu->color (i)); -! CLEARLINE (i - menu->top + menu->offset); - - if (i == menu->current) - { ---- 219,225 ---- - if (option (OPTARROWCURSOR)) - { - attrset (menu->color (i)); -! CLEARLINE_WIN (i - menu->top + menu->offset); - - if (i == menu->current) - { -*************** -*** 228,234 **** - addch (' '); - } - else -! move (i - menu->top + menu->offset, 3); - - print_enriched_string (menu->color(i), (unsigned char *) buf, 1); - SETCOLOR (MT_COLOR_NORMAL); ---- 230,236 ---- - addch (' '); - } - else -! move (i - menu->top + menu->offset, SidebarWidth + 3); - - print_enriched_string (menu->color(i), (unsigned char *) buf, 1); - SETCOLOR (MT_COLOR_NORMAL); -*************** -*** 243,256 **** - BKGDSET (MT_COLOR_INDICATOR); - } - -! CLEARLINE (i - menu->top + menu->offset); - print_enriched_string (menu->color(i), (unsigned char *) buf, i != menu->current); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - } - } - else -! CLEARLINE (i - menu->top + menu->offset); - } - menu->redraw = 0; - } ---- 245,258 ---- - BKGDSET (MT_COLOR_INDICATOR); - } - -! CLEARLINE_WIN (i - menu->top + menu->offset); - print_enriched_string (menu->color(i), (unsigned char *) buf, i != menu->current); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - } - } - else -! CLEARLINE_WIN (i - menu->top + menu->offset); - } - menu->redraw = 0; - } -*************** -*** 265,271 **** - return; - } - -! move (menu->oldcurrent + menu->offset - menu->top, 0); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - ---- 267,273 ---- - return; - } - -! move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); - -*************** -*** 280,292 **** - clrtoeol (); - menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent); - menu_pad_string (buf, sizeof (buf)); -! move (menu->oldcurrent + menu->offset - menu->top, 3); - print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1); - SETCOLOR (MT_COLOR_NORMAL); - } - - /* now draw it in the new location */ -! move (menu->current + menu->offset - menu->top, 0); - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - addstr ("->"); ---- 282,294 ---- - clrtoeol (); - menu_make_entry (buf, sizeof (buf), menu, menu->oldcurrent); - menu_pad_string (buf, sizeof (buf)); -! move (menu->oldcurrent + menu->offset - menu->top, SidebarWidth + 3); - print_enriched_string (menu->color(menu->oldcurrent), (unsigned char *) buf, 1); - SETCOLOR (MT_COLOR_NORMAL); - } - - /* now draw it in the new location */ -! move (menu->current + menu->offset - menu->top, SidebarWidth); - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - addstr ("->"); -*************** -*** 307,313 **** - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - BKGDSET (MT_COLOR_INDICATOR); -! CLEARLINE (menu->current - menu->top + menu->offset); - print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); ---- 309,315 ---- - attrset (menu->color (menu->current)); - ADDCOLOR (MT_COLOR_INDICATOR); - BKGDSET (MT_COLOR_INDICATOR); -! CLEARLINE_WIN (menu->current - menu->top + menu->offset); - print_enriched_string (menu->color(menu->current), (unsigned char *) buf, 0); - SETCOLOR (MT_COLOR_NORMAL); - BKGDSET (MT_COLOR_NORMAL); -*************** -*** 319,325 **** - { - char buf[STRING]; - -! move (menu->current + menu->offset - menu->top, 0); - menu_make_entry (buf, sizeof (buf), menu, menu->current); - menu_pad_string (buf, sizeof (buf)); - ---- 321,327 ---- - { - char buf[STRING]; - -! move (menu->current + menu->offset - menu->top, SidebarWidth); - menu_make_entry (buf, sizeof (buf), menu, menu->current); - menu_pad_string (buf, sizeof (buf)); - -diff -N -c -r mutt-1.5.9i-orig/mutt_curses.h mutt-1.5.9i-patched/mutt_curses.h -*** mutt-1.5.9i-orig/mutt_curses.h 2004-06-17 16:33:04.000000000 -0400 ---- mutt-1.5.9i-patched/mutt_curses.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 59,64 **** ---- 59,65 ---- - #undef lines - #endif /* lines */ - -+ #define CLEARLINE_WIN(x) move(x,SidebarWidth), clrtoeol() - #define CLEARLINE(x) move(x,0), clrtoeol() - #define CENTERLINE(x,y) move(y, (COLS-strlen(x))/2), addstr(x) - #define BEEP() do { if (option (OPTBEEP)) beep(); } while (0) -*************** -*** 121,126 **** ---- 122,128 ---- - MT_COLOR_BOLD, - MT_COLOR_UNDERLINE, - MT_COLOR_INDEX, -+ MT_COLOR_NEW, - MT_COLOR_MAX - }; - -diff -N -c -r mutt-1.5.9i-orig/mutt.h mutt-1.5.9i-patched/mutt.h -*** mutt-1.5.9i-orig/mutt.h 2005-02-28 10:13:57.000000000 -0500 ---- mutt-1.5.9i-patched/mutt.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 415,420 **** ---- 415,421 ---- - OPTSAVEEMPTY, - OPTSAVENAME, - OPTSCORE, -+ OPTSIDEBAR, - OPTSIGDASHES, - OPTSIGONTOP, - OPTSORTRE, -*************** -*** 799,804 **** ---- 800,806 ---- - { - char *path; - FILE *fp; -+ time_t atime; - time_t mtime; - time_t mtime_cur; /* used with maildir folders */ - off_t size; -*************** -*** 834,839 **** ---- 836,842 ---- - unsigned int quiet : 1; /* inhibit status messages? */ - unsigned int collapsed : 1; /* are all threads collapsed? */ - unsigned int closing : 1; /* mailbox is being closed */ -+ unsigned int peekonly : 1; /* just taking a glance, revert atime */ - } CONTEXT; - - typedef struct attachptr -diff -N -c -r mutt-1.5.9i-orig/muttlib.c mutt-1.5.9i-patched/muttlib.c -*** mutt-1.5.9i-orig/muttlib.c 2005-02-12 14:30:16.000000000 -0500 ---- mutt-1.5.9i-patched/muttlib.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 1020,1026 **** - ch = *src++; /* pad char */ - /* calculate space left on line. if we've already written more data - than will fit on the line, ignore the rest of the line */ -! count = (COLS < destlen ? COLS : destlen); - if (count > col) - { - count -= col; /* how many columns left on this line */ ---- 1020,1029 ---- - ch = *src++; /* pad char */ - /* calculate space left on line. if we've already written more data - than will fit on the line, ignore the rest of the line */ -! if ( DrawFullLine ) -! count = (COLS < destlen ? COLS : destlen); -! else -! count = ((COLS-SidebarWidth) < destlen ? COLS - SidebarWidth : destlen); - if (count > col) - { - count -= col; /* how many columns left on this line */ -diff -N -c -r mutt-1.5.9i-orig/Muttrc mutt-1.5.9i-patched/Muttrc -*** mutt-1.5.9i-orig/Muttrc 2005-03-13 11:37:11.000000000 -0500 ---- mutt-1.5.9i-patched/Muttrc 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 1770,1775 **** ---- 1770,1795 ---- - # function. - # - # -+ # set sidebar_visible=no -+ # -+ # Name: sidebar_visible -+ # Type: boolean -+ # Default: no -+ # -+ # -+ # This specifies whether or not to show sidebar (left-side list of folders). -+ # -+ # -+ # set sidebar_width=0 -+ # -+ # Name: sidebar_width -+ # Type: number -+ # Default: 0 -+ # -+ # -+ # The width of the sidebar. -+ # -+ # - # set crypt_autosign=no - # - # Name: crypt_autosign -diff -N -c -r mutt-1.5.9i-orig/mx.c mutt-1.5.9i-patched/mx.c -*** mutt-1.5.9i-orig/mx.c 2005-02-03 13:47:53.000000000 -0500 ---- mutt-1.5.9i-patched/mx.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 620,625 **** ---- 620,626 ---- - * M_APPEND open mailbox for appending - * M_READONLY open mailbox in read-only mode - * M_QUIET only print error messages -+ * M_PEEK revert atime where applicable - * ctx if non-null, context struct to use - */ - CONTEXT *mx_open_mailbox (const char *path, int flags, CONTEXT *pctx) -*************** -*** 639,644 **** ---- 640,647 ---- - ctx->quiet = 1; - if (flags & M_READONLY) - ctx->readonly = 1; -+ if (flags & M_PEEK) -+ ctx->peekonly = 1; - - if (flags & (M_APPEND|M_NEWFOLDER)) - { -*************** -*** 738,746 **** ---- 741,761 ---- - void mx_fastclose_mailbox (CONTEXT *ctx) - { - int i; -+ #ifndef BUFFY_SIZE -+ struct utimbuf ut; -+ #endif - - if(!ctx) - return; -+ #ifndef BUFFY_SIZE -+ /* fix up the times so buffy won't get confused */ -+ if (ctx->peekonly && ctx->path && ctx->mtime > ctx->atime) -+ { -+ ut.actime = ctx->atime; -+ ut.modtime = ctx->mtime; -+ utime (ctx->path, &ut); -+ } -+ #endif - - #ifdef USE_IMAP - if (ctx->magic == M_IMAP) -diff -N -c -r mutt-1.5.9i-orig/OPS mutt-1.5.9i-patched/OPS -*** mutt-1.5.9i-orig/OPS 2005-02-19 08:49:37.000000000 -0500 ---- mutt-1.5.9i-patched/OPS 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 175,177 **** ---- 175,182 ---- - OP_MAIN_SHOW_LIMIT "show currently active limit pattern" - OP_MAIN_COLLAPSE_THREAD "collapse/uncollapse current thread" - OP_MAIN_COLLAPSE_ALL "collapse/uncollapse all threads" -+ OP_SIDEBAR_SCROLL_UP "scroll the mailbox pane up 1 page" -+ OP_SIDEBAR_SCROLL_DOWN "scroll the mailbox pane down 1 page" -+ OP_SIDEBAR_NEXT "go down to next mailbox" -+ OP_SIDEBAR_PREV "go to previous mailbox" -+ OP_SIDEBAR_OPEN "open hilighted mailbox" -diff -N -c -r mutt-1.5.9i-orig/pager.c mutt-1.5.9i-patched/pager.c -*** mutt-1.5.9i-orig/pager.c 2005-02-12 14:30:16.000000000 -0500 ---- mutt-1.5.9i-patched/pager.c 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 30,35 **** ---- 30,36 ---- - #include "pager.h" - #include "attach.h" - #include "mbyte.h" -+ #include "sidebar.h" - - #include "mx.h" - -*************** -*** 1036,1042 **** - wchar_t wc; - mbstate_t mbstate; - -! int wrap_cols = COLS - WrapMargin; - - if (wrap_cols <= 0) - wrap_cols = COLS; ---- 1037,1043 ---- - wchar_t wc; - mbstate_t mbstate; - -! int wrap_cols = COLS - WrapMargin - SidebarWidth; - - if (wrap_cols <= 0) - wrap_cols = COLS; -*************** -*** 1669,1675 **** - if ((redraw & REDRAW_BODY) || topline != oldtopline) - { - do { -! move (bodyoffset, 0); - curline = oldtopline = topline; - lines = 0; - force_redraw = 0; ---- 1670,1676 ---- - if ((redraw & REDRAW_BODY) || topline != oldtopline) - { - do { -! move (bodyoffset, SidebarWidth); - curline = oldtopline = topline; - lines = 0; - force_redraw = 0; -*************** -*** 1682,1687 **** ---- 1683,1689 ---- - &QuoteList, &q_level, &force_redraw, &SearchRE) > 0) - lines++; - curline++; -+ move(lines + bodyoffset, SidebarWidth); - } - last_offset = lineInfo[curline].offset; - } while (force_redraw); -*************** -*** 1695,1700 **** ---- 1697,1703 ---- - addch ('~'); - addch ('\n'); - lines++; -+ move(lines + bodyoffset, SidebarWidth); - } - /* We are going to update the pager status bar, so it isn't - * necessary to reset to normal color now. */ -*************** -*** 1707,1728 **** - /* print out the pager status bar */ - SETCOLOR (MT_COLOR_STATUS); - BKGDSET (MT_COLOR_STATUS); -! CLEARLINE (statusoffset); - if (IsHeader (extra)) - { -! size_t l1 = (COLS - 9) * MB_LEN_MAX; - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->hdr, M_FORMAT_MAKEPRINT); - } - else if (IsMsgAttach (extra)) - { -! size_t l1 = (COLS - 9) * MB_LEN_MAX; - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->bdy->hdr, M_FORMAT_MAKEPRINT); - } -! mutt_paddstr (COLS-10, IsHeader (extra) || IsMsgAttach (extra) ? - buffer : banner); - addstr (" -- ("); - if (last_pos < sb.st_size - 1) ---- 1710,1731 ---- - /* print out the pager status bar */ - SETCOLOR (MT_COLOR_STATUS); - BKGDSET (MT_COLOR_STATUS); -! CLEARLINE_WIN(statusoffset); - if (IsHeader (extra)) - { -! size_t l1 = ((COLS - 9) * MB_LEN_MAX) - (SidebarWidth * MB_LEN_MAX); - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->hdr, M_FORMAT_MAKEPRINT); - } - else if (IsMsgAttach (extra)) - { -! size_t l1 = (COLS - 9) * MB_LEN_MAX - (SidebarWidth * MB_LEN_MAX); - size_t l2 = sizeof (buffer); - _mutt_make_string (buffer, l1 < l2 ? l1 : l2, NONULL (PagerFmt), - Context, extra->bdy->hdr, M_FORMAT_MAKEPRINT); - } -! mutt_paddstr (COLS-10-SidebarWidth, IsHeader (extra) || IsMsgAttach (extra) ? - buffer : banner); - addstr (" -- ("); - if (last_pos < sb.st_size - 1) -*************** -*** 1738,1752 **** - /* redraw the pager_index indicator, because the - * flags for this message might have changed. */ - menu_redraw_current (index); -! - /* print out the index status bar */ - menu_status_line (buffer, sizeof (buffer), index, NONULL(Status)); -! -! move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), 0); - SETCOLOR (MT_COLOR_STATUS); -! mutt_paddstr (COLS, buffer); - SETCOLOR (MT_COLOR_NORMAL); - } - - redraw = 0; - ---- 1741,1758 ---- - /* redraw the pager_index indicator, because the - * flags for this message might have changed. */ - menu_redraw_current (index); -! draw_sidebar(MENU_PAGER); - /* print out the index status bar */ - menu_status_line (buffer, sizeof (buffer), index, NONULL(Status)); -! move (indexoffset + (option (OPTSTATUSONTOP) ? 0 : (indexlen - 1)), -! SidebarWidth); - SETCOLOR (MT_COLOR_STATUS); -! mutt_paddstr (COLS-SidebarWidth, buffer); - SETCOLOR (MT_COLOR_NORMAL); - } -+ /* if we're not using the index, update every time */ -+ if ( index == 0 ) -+ draw_sidebar(MENU_PAGER); - - redraw = 0; - -*************** -*** 2624,2629 **** ---- 2630,2641 ---- - redraw = REDRAW_FULL; - break; - -+ case OP_SIDEBAR_SCROLL_UP: -+ case OP_SIDEBAR_SCROLL_DOWN: -+ case OP_SIDEBAR_NEXT: -+ case OP_SIDEBAR_PREV: -+ scroll_sidebar(ch, MENU_PAGER); -+ break; - default: - ch = -1; - break; -diff -N -c -r mutt-1.5.9i-orig/PATCHES mutt-1.5.9i-patched/PATCHES -*** mutt-1.5.9i-orig/PATCHES 2005-03-13 11:33:06.000000000 -0500 ---- mutt-1.5.9i-patched/PATCHES 2005-06-28 15:36:06.000000000 -0400 -*************** -*** 0 **** ---- 1 ---- -+ patch-1.5.9i.sidebar.20050628 -diff -N -c -r mutt-1.5.9i-orig/sidebar.c mutt-1.5.9i-patched/sidebar.c -*** mutt-1.5.9i-orig/sidebar.c 1969-12-31 19:00:00.000000000 -0500 ---- mutt-1.5.9i-patched/sidebar.c 2005-06-28 15:32:07.000000000 -0400 -*************** -*** 0 **** ---- 1,264 ---- -+ /* -+ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu> -+ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. -+ */ -+ -+ -+ #if HAVE_CONFIG_H -+ # include "config.h" -+ #endif -+ -+ #include "mutt.h" -+ #include "mutt_menu.h" -+ #include "mutt_curses.h" -+ #include "sidebar.h" -+ #include "buffy.h" -+ #include <libgen.h> -+ #include "keymap.h" -+ #include <stdbool.h> -+ -+ /*BUFFY *CurBuffy = 0;*/ -+ static BUFFY *TopBuffy = 0; -+ static BUFFY *BottomBuffy = 0; -+ static int known_lines = 0; -+ -+ static int quick_log10(int n) -+ { -+ char string[32]; -+ sprintf(string, "%d", n); -+ return strlen(string); -+ } -+ -+ void calc_boundaries (int menu) -+ { -+ BUFFY *tmp = Incoming; -+ -+ if ( known_lines != LINES ) { -+ TopBuffy = BottomBuffy = 0; -+ known_lines = LINES; -+ } -+ for ( ; tmp->next != 0; tmp = tmp->next ) -+ tmp->next->prev = tmp; -+ -+ if ( TopBuffy == 0 && BottomBuffy == 0 ) -+ TopBuffy = Incoming; -+ if ( BottomBuffy == 0 ) { -+ int count = LINES - 2 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); -+ BottomBuffy = TopBuffy; -+ while ( --count && BottomBuffy->next ) -+ BottomBuffy = BottomBuffy->next; -+ } -+ else if ( TopBuffy == CurBuffy->next ) { -+ int count = LINES - 2 - (menu != MENU_PAGER); -+ BottomBuffy = CurBuffy; -+ tmp = BottomBuffy; -+ while ( --count && tmp->prev) -+ tmp = tmp->prev; -+ TopBuffy = tmp; -+ } -+ else if ( BottomBuffy == CurBuffy->prev ) { -+ int count = LINES - 2 - (menu != MENU_PAGER); -+ TopBuffy = CurBuffy; -+ tmp = TopBuffy; -+ while ( --count && tmp->next ) -+ tmp = tmp->next; -+ BottomBuffy = tmp; -+ } -+ } -+ -+ char *make_sidebar_entry(char *box, int size, int new) -+ { -+ static char *entry = 0; -+ char *c; -+ int i = 0; -+ -+ c = realloc(entry, SidebarWidth + 1); -+ if ( c ) entry = c; -+ entry[SidebarWidth] = 0; -+ for (; i < SidebarWidth; entry[i++] = ' ' ); -+ i = strlen(box); -+ strncpy( entry, box, i < SidebarWidth ? i :SidebarWidth ); -+ -+ if ( new ) -+ sprintf( -+ entry + SidebarWidth - 5 - quick_log10(size) - quick_log10(new), -+ "% d(%d)", size, new); -+ else -+ sprintf( entry + SidebarWidth - 3 - quick_log10(size), "% d", size); -+ return entry; -+ } -+ -+ void set_curbuffy(char buf[LONG_STRING]) -+ { -+ BUFFY* tmp = CurBuffy = Incoming; -+ -+ if (!Incoming) -+ return; -+ -+ while(1) { -+ if(!strcmp(tmp->path, buf)) { -+ CurBuffy = tmp; -+ break; -+ } -+ -+ if(tmp->next) -+ tmp = tmp->next; -+ else -+ break; -+ } -+ } -+ -+ int draw_sidebar(int menu) { -+ -+ int lines = option(OPTHELP) ? 1 : 0; -+ BUFFY *tmp; -+ #ifndef USE_SLANG_CURSES -+ attr_t attrs; -+ #endif -+ short color_pair; -+ -+ static bool initialized = false; -+ static int prev_show_value; -+ static short saveSidebarWidth; -+ -+ /* initialize first time */ -+ if(!initialized) { -+ prev_show_value = option(OPTSIDEBAR); -+ saveSidebarWidth = SidebarWidth; -+ if(!option(OPTSIDEBAR)) SidebarWidth = 0; -+ initialized = true; -+ } -+ -+ /* save or restore the value SidebarWidth */ -+ if(prev_show_value != option(OPTSIDEBAR)) { -+ if(prev_show_value && !option(OPTSIDEBAR)) { -+ saveSidebarWidth = SidebarWidth; -+ SidebarWidth = 0; -+ } else if(!prev_show_value && option(OPTSIDEBAR)) { -+ SidebarWidth = saveSidebarWidth; -+ } -+ prev_show_value = option(OPTSIDEBAR); -+ } -+ -+ -+ if ( SidebarWidth == 0 ) return 0; -+ -+ /* get attributes for divider */ -+ SETCOLOR(MT_COLOR_STATUS); -+ #ifndef USE_SLANG_CURSES -+ attr_get(&attrs, &color_pair, 0); -+ #else -+ color_pair = attr_get(); -+ #endif -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ /* draw the divider */ -+ -+ for ( ; lines < LINES-1-(menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) { -+ move(lines, SidebarWidth - 1); -+ addch('|'); -+ #ifndef USE_SLANG_CURSES -+ mvchgat(lines, SidebarWidth - 1, 1, 0, color_pair, NULL); -+ #endif -+ } -+ if ( Incoming == 0 ) return 0; -+ lines = option(OPTHELP) ? 1 : 0; /* go back to the top */ -+ -+ if ( known_lines != LINES || TopBuffy == 0 || BottomBuffy == 0 ) -+ calc_boundaries(menu); -+ if ( CurBuffy == 0 ) CurBuffy = Incoming; -+ -+ tmp = TopBuffy; -+ -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ for ( ; tmp && lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); tmp = tmp->next ) { -+ if ( tmp == CurBuffy ) -+ SETCOLOR(MT_COLOR_INDICATOR); -+ else if ( tmp->msg_unread > 0 ) -+ SETCOLOR(MT_COLOR_NEW); -+ else -+ SETCOLOR(MT_COLOR_NORMAL); -+ -+ move( lines, 0 ); -+ if ( Context && !strcmp( tmp->path, Context->path ) ) { -+ tmp->msg_unread = Context->unread; -+ tmp->msgcount = Context->msgcount; -+ } -+ printw( "%.*s", SidebarWidth, -+ make_sidebar_entry(basename(tmp->path), tmp->msgcount, -+ tmp->msg_unread)); -+ lines++; -+ } -+ SETCOLOR(MT_COLOR_NORMAL); -+ for ( ; lines < LINES-1 - (menu != MENU_PAGER || option(OPTSTATUSONTOP)); lines++ ) { -+ int i = 0; -+ move( lines, 0 ); -+ for ( ; i < SidebarWidth - 1; i++ ) -+ addch(' '); -+ } -+ return 0; -+ } -+ -+ -+ void set_buffystats(CONTEXT* Context) -+ { -+ BUFFY *tmp = Incoming; -+ while(tmp) { -+ if(Context && !strcmp(tmp->path, Context->path)) { -+ tmp->msg_unread = Context->unread; -+ tmp->msgcount = Context->msgcount; -+ break; -+ } -+ tmp = tmp->next; -+ } -+ } -+ -+ void scroll_sidebar(int op, int menu) -+ { -+ if(!SidebarWidth) return; -+ if(!CurBuffy) return; -+ -+ switch (op) { -+ case OP_SIDEBAR_NEXT: -+ if ( CurBuffy->next == NULL ) return; -+ CurBuffy = CurBuffy->next; -+ break; -+ case OP_SIDEBAR_PREV: -+ if ( CurBuffy->prev == NULL ) return; -+ CurBuffy = CurBuffy->prev; -+ break; -+ case OP_SIDEBAR_SCROLL_UP: -+ CurBuffy = TopBuffy; -+ if ( CurBuffy != Incoming ) { -+ calc_boundaries(menu); -+ CurBuffy = CurBuffy->prev; -+ } -+ break; -+ case OP_SIDEBAR_SCROLL_DOWN: -+ CurBuffy = BottomBuffy; -+ if ( CurBuffy->next ) { -+ calc_boundaries(menu); -+ CurBuffy = CurBuffy->next; -+ } -+ break; -+ default: -+ return; -+ } -+ calc_boundaries(menu); -+ draw_sidebar(menu); -+ } -diff -N -c -r mutt-1.5.9i-orig/sidebar.h mutt-1.5.9i-patched/sidebar.h -*** mutt-1.5.9i-orig/sidebar.h 1969-12-31 19:00:00.000000000 -0500 ---- mutt-1.5.9i-patched/sidebar.h 2005-05-25 14:53:34.000000000 -0400 -*************** -*** 0 **** ---- 1,36 ---- -+ /* -+ * Copyright (C) ????-2004 Justin Hibbits <jrh29@po.cwru.edu> -+ * Copyright (C) 2004 Thomer M. Gil <mutt@thomer.com> -+ * -+ * This program is free software; you can redistribute it and/or modify -+ * it under the terms of the GNU General Public License as published by -+ * the Free Software Foundation; either version 2 of the License, or -+ * (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. -+ */ -+ -+ #ifndef SIDEBAR_H -+ #define SIDEBAR_H -+ -+ struct MBOX_LIST { -+ char *path; -+ int msgcount; -+ int new; -+ } MBLIST; -+ -+ /* parameter is whether or not to go to the status line */ -+ /* used for omitting the last | that covers up the status bar in the index */ -+ int draw_sidebar(int); -+ void scroll_sidebar(int, int); -+ void set_curbuffy(char*); -+ void set_buffystats(CONTEXT*); -+ -+ #endif /* SIDEBAR_H */ diff --git a/packages/mutt/mutt-1.5.9i/posix1_lim.patch b/packages/mutt/mutt-1.5.9i/posix1_lim.patch deleted file mode 100644 index 8381174cc3..0000000000 --- a/packages/mutt/mutt-1.5.9i/posix1_lim.patch +++ /dev/null @@ -1,49 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- mutt-1.5.4/mutt_dotlock.c~posix1_lim -+++ mutt-1.5.4/mutt_dotlock.c -@@ -39,7 +39,7 @@ - #include <limits.h> - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include "dotlock.h" ---- mutt-1.5.4/mutt.h~posix1_lim -+++ mutt-1.5.4/mutt.h -@@ -43,7 +43,7 @@ - #endif - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include <pwd.h> ---- mutt-1.5.4/dotlock.c~posix1_lim -+++ mutt-1.5.4/dotlock.c -@@ -39,7 +39,7 @@ - #include <limits.h> - - #ifndef _POSIX_PATH_MAX --#include <posix1_lim.h> -+#include <bits/posix1_lim.h> - #endif - - #include "dotlock.h" ---- mutt-1.5.4/lib.h~posix1_lim -+++ mutt-1.5.4/lib.h -@@ -40,7 +40,7 @@ - # include <signal.h> - - # ifndef _POSIX_PATH_MAX --# include <posix1_lim.h> -+# include <bits/posix1_lim.h> - # endif - - # ifdef ENABLE_NLS diff --git a/packages/mutt/mutt-1.5.9i/sidebar-nntp-clash.patch b/packages/mutt/mutt-1.5.9i/sidebar-nntp-clash.patch deleted file mode 100644 index c180f1861f..0000000000 --- a/packages/mutt/mutt-1.5.9i/sidebar-nntp-clash.patch +++ /dev/null @@ -1,63 +0,0 @@ ---- mutt-1.5.9/compose.c.orig 2005-08-04 10:58:39.282202360 +0000 -+++ mutt-1.5.9/compose.c 2005-08-04 11:02:58.420807304 +0000 -@@ -146,16 +146,16 @@ - if ((WithCrypto & APPLICATION_PGP) && (WithCrypto & APPLICATION_SMIME)) - { - if (!msg->security) -- mvaddstr (HDR_CRYPT, 0, " Security: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " Security: "); - else if (msg->security & APPLICATION_SMIME) -- mvaddstr (HDR_CRYPT, 0, " S/MIME: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: "); - else if (msg->security & APPLICATION_PGP) -- mvaddstr (HDR_CRYPT, 0, " PGP: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: "); - } - else if ((WithCrypto & APPLICATION_SMIME)) -- mvaddstr (HDR_CRYPT, 0, " S/MIME: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " S/MIME: "); - else if ((WithCrypto & APPLICATION_PGP)) -- mvaddstr (HDR_CRYPT, 0, " PGP: "); -+ mvaddstr (HDR_CRYPT, SidebarWidth, " PGP: "); - else - return; - -@@ -294,21 +294,21 @@ - } - else - { -- mvprintw (HDR_TO, 0, TITLE_FMT , Prompts[HDR_NEWSGROUPS - 1]); -+ mvprintw (HDR_TO, SidebarWidth, TITLE_FMT , Prompts[HDR_NEWSGROUPS - 1]); - mutt_paddstr (W, NONULL (msg->env->newsgroups)); -- mvprintw (HDR_CC, 0, TITLE_FMT , Prompts[HDR_FOLLOWUPTO - 1]); -+ mvprintw (HDR_CC, SidebarWidth, TITLE_FMT , Prompts[HDR_FOLLOWUPTO - 1]); - mutt_paddstr (W, NONULL (msg->env->followup_to)); - if (option (OPTXCOMMENTTO)) - { -- mvprintw (HDR_BCC, 0, TITLE_FMT , Prompts[HDR_XCOMMENTTO - 1]); -+ mvprintw (HDR_BCC, SidebarWidth, TITLE_FMT , Prompts[HDR_XCOMMENTTO - 1]); - mutt_paddstr (W, NONULL (msg->env->x_comment_to)); - } - } - #endif -- mvprintw (HDR_SUBJECT, 0, TITLE_FMT, Prompts[HDR_SUBJECT - 1]); -+ mvprintw (HDR_SUBJECT, SidebarWidth, TITLE_FMT, Prompts[HDR_SUBJECT - 1]); - mutt_paddstr (W, NONULL (msg->env->subject)); - draw_envelope_addr (HDR_REPLYTO, msg->env->reply_to); -- mvprintw (HDR_FCC, 0, TITLE_FMT, Prompts[HDR_FCC - 1]); -+ mvprintw (HDR_FCC, SidebarWidth, TITLE_FMT, Prompts[HDR_FCC - 1]); - mutt_paddstr (W, fcc); - - if (WithCrypto) ---- mutt-1.5.9/Makefile.am.orig 2005-08-04 11:22:12.390377264 +0000 -+++ mutt-1.5.9/Makefile.am 2005-08-04 11:22:29.806729576 +0000 -@@ -28,7 +28,8 @@ - score.c send.c sendlib.c signal.c sort.c \ - status.c system.c thread.c charset.c history.c lib.c \ - muttlib.c editmsg.c utf8.c mbyte.c wcwidth.c \ -- url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h -+ url.c ascii.c mutt_idna.c crypt-mod.c crypt-mod.h \ -+ sidebar.c - - mutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(MUTTLIBS) \ - $(INTLLIBS) $(LIBICONV) $(LIBGPGME_LIBS) diff --git a/packages/mutt/mutt_1.5.15.bb b/packages/mutt/mutt_1.5.15.bb deleted file mode 100644 index 83d8d770d7..0000000000 --- a/packages/mutt/mutt_1.5.15.bb +++ /dev/null @@ -1,27 +0,0 @@ -SECTION = "console/network" -DEPENDS = "ncurses gnutls gpgme" -DESCRIPTION = "Mutt is a small but very powerful text-based \ -MIME mail client. It is highly configurable, and is well-suited \ -to the mail power user with advanced features like key \ -bindings, keyboard macros, mail threading, regular expression \ -searches, and a powerful pattern matching language for selecting \ -groups of messages." -LICENSE = "GPL" -PR = "r0" -SRC_URI = "ftp://ftp.mutt.org/mutt/devel/mutt-${PV}.tar.gz \ - http://mutt.org.ua/download/mutt-1.5.15/patch-1.5.15.vvv.nntp.2.gz;patch=1 \ - http://mutt.org.ua/download/mutt-1.5.15/patch-1.5.15.vvv.initials.gz;patch=1 \ - http://mutt.org.ua/download/mutt-1.5.15/patch-1.5.15.vvv.quote.gz;patch=1 \ - file://patch-1.5.15.sidebar.20070408.txt;patch=1 \ - file://makedoc.patch;patch=1 " - -S = "${WORKDIR}/mutt-1.5.15" - -inherit autotools - -EXTRA_OECONF = "--enable-gpgme --with-curses=${STAGING_LIBDIR}/.. \ - --enable-pop --enable-imap --with-gnutls --enable-nntp" - -do_compile_prepend () { - ${BUILD_CC} makedoc.c -o makedoc -} diff --git a/packages/mutt/mutt_1.5.4i.bb b/packages/mutt/mutt_1.5.4i.bb deleted file mode 100644 index 50c6019e21..0000000000 --- a/packages/mutt/mutt_1.5.4i.bb +++ /dev/null @@ -1,29 +0,0 @@ -SECTION = "console/network" -DEPENDS = "ncurses openssl" -DESCRIPTION = "Mutt is a small but very powerful text-based \ -MIME mail client. It is highly configurable, and is well-suited \ -to the mail power user with advanced features like key \ -bindings, keyboard macros, mail threading, regular expression \ -searches, and a powerful pattern matching language for selecting \ -groups of messages." -LICENSE = "GPL" -PR = "r1" -SRC_URI = "ftp://ftp.mutt.org/mutt/devel/mutt-${PV}.tar.gz \ - http://mutt.kiev.ua/download/mutt-1.5.4/patch-1.5.4.rr.compressed.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.4/patch-1.5.4.vvv.nntp.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.4/patch-1.5.4.vvv.initials.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.4/patch-1.5.4.vvv.quote.gz;patch=1 \ - file://cppflags.patch;patch=1 \ - file://posix1_lim.patch;patch=1 \ - file://keymap.h.patch;patch=1 \ - file://configure.patch;patch=1" -S = "${WORKDIR}/mutt-1.5.4" - -inherit autotools - -EXTRA_OECONF = "--disable-pgp --without-mixmaster --with-curses=${STAGING_LIBDIR}/.. \ - --enable-pop --enable-imap --with-ssl --enable-compressed --enable-nntp" - -do_compile_prepend () { - ${BUILD_CC} makedoc.c -o makedoc -} diff --git a/packages/mutt/mutt_1.5.9i.bb b/packages/mutt/mutt_1.5.9i.bb deleted file mode 100644 index ba30ccb4ef..0000000000 --- a/packages/mutt/mutt_1.5.9i.bb +++ /dev/null @@ -1,33 +0,0 @@ -SECTION = "console/network" -DEPENDS = "ncurses gnutls gpgme" -DESCRIPTION = "Mutt is a small but very powerful text-based \ -MIME mail client. It is highly configurable, and is well-suited \ -to the mail power user with advanced features like key \ -bindings, keyboard macros, mail threading, regular expression \ -searches, and a powerful pattern matching language for selecting \ -groups of messages." -LICENSE = "GPL" -PR = "r0" -SRC_URI = "ftp://ftp.mutt.org/mutt/devel/mutt-${PV}.tar.gz \ - http://mutt.kiev.ua/download/mutt-1.5.9/patch-1.5.9.rr.compressed.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.9/patch-1.5.9.vvv.nntp.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.9/patch-1.5.9.vvv.initials.gz;patch=1 \ - http://mutt.kiev.ua/download/mutt-1.5.9/patch-1.5.9.vvv.quote.gz;patch=1 \ - file://patch-1.5.9i.sidebar.20050628.txt.hackedfornntp;patch=1 \ - file://sidebar-nntp-clash.patch;patch=1 \ - file://cppflags.patch;patch=1 \ - file://posix1_lim.patch;patch=1 \ - file://makedoc.patch;patch=1 " -# file://configure.patch;patch=1" -S = "${WORKDIR}/mutt-1.5.9" - -DEFAULT_PREFERENCE = "-1" - -inherit autotools - -EXTRA_OECONF = "--enable-gpgme --with-curses=${STAGING_LIBDIR}/.. \ - --enable-pop --enable-imap --with-gnutls --enable-compressed --enable-nntp" - -do_compile_prepend () { - ${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} makedoc.c -o makedoc -} |