Subject: pkg/24044: pkgsrc/news/pan patch-ab for "Reply and Follow-Up" feature restoration
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <lavalamp@spiritual-machines.org>
List: netbsd-bugs
Date: 01/10/2004 23:18:05
>Number: 24044
>Category: pkg
>Synopsis: pkgsrc/news/pan patch-ab for "Reply and Follow-Up" feature restoration
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Sat Jan 10 23:19:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Seklecki, Brian A.
>Release: -current / i386
>Organization:
Spiritual Machines
>Environment:
NetBSD lovebox 1.6ZG NetBSD 1.6ZG (BLACKPEARL) #0: Sat Jan 3 00:37:53 EST 2004
>Description:
...for some reason the maintainer decided to remove the "Reply and Follow-Up" feature in 0.14.0.94 or some pre-release snapshot?.
There's a patch to put it back (and relevant discussion between the Mandrake RPM maintainer and the core pan developer, Charles Kerr) at
http://mail.gnu.org/archive/html/pan-devel/2003-08/msg00013.html
This particular patch only affects the Reply/Follow-Up fix, not the thread-sorting-watching code that the discussion gets into detail about; I removed the rest of the unrelated chunks. In fact, there's very little archived discussion on his decision to do so -- just an arbitrary it seems.
The PR# for this patch is: pkg/ -- TBD
The SHA1 sum is:
SHA1 (patch-ab) = b236ee9432a3081dc729201ace914a2136db6b7e
I tested it on my -current system (see activity in comp.unix.bsd.netbsd.misc) .
...thx,
-lava
>How-To-Repeat:
Run Pan.
Patch also in MIME in tech-pkg@netbsd.org
>Fix:
Apply patch:
Index: pan/gui.c
--- pan/gui.c 2003-08-09 01:07:59.000000000 +0200
+++ pan/gui.c 2003-08-16 23:36:58.000000000 +0200
@@ -136,7 +136,7 @@
**/
/* remember to subtract 1 for the Windows #ifdef! */
-#define MAIN_MENU_ENTRIES_QTY 155
+#define MAIN_MENU_ENTRIES_QTY 157
static GtkItemFactoryEntry main_menu_entries[MAIN_MENU_ENTRIES_QTY];
GtkItemFactory * _main_menu_factory;
@@ -299,6 +299,7 @@
/* post menu */
menu_set_sensitive (gif, "/Post/Followup to Newsgroup...", have_read_article);
menu_set_sensitive (gif, "/Post/Reply by Email...", have_read_article);
+ menu_set_sensitive (gif, "/Post/Followup and Reply...", have_read_article);
menu_set_sensitive (gif, "/Post/Forward by Email...", have_read_article);
menu_set_sensitive (gif, "/Post/Send Pending Messages", TRUE);
@@ -1860,6 +1863,7 @@
/* p */ {N_("/_Post/_Post to Newsgroup..."), "P", menu_cb, ACTION_COMPOSE_NEW, "<ImageItem>", icon_compose_post},
/* f */ {N_("/_Post/_Followup to Newsgroup..."), "F", menu_cb, ACTION_COMPOSE_FOLLOWUP, "<ImageItem>", icon_compose_followup},
/* r */ {N_("/_Post/_Reply by Email..."), "R", message_reply_window, 0, "<ImageItem>", icon_stock_mail_reply},
+ /* a */ {N_("/_Post/Followup _and Reply..."), NULL, message_followup_reply_window, 0, "<ImageItem>", icon_stock_mail_reply},
/* w */ {N_("/_Post/For_ward by Email..."), NULL, message_forward_window, 0, "<ImageItem>", icon_stock_mail_forward},
/* */ {N_("/_Post/---"), NULL, NULL, 0, "<Separator>"},
/* m */ {N_("/_Post/Send Pending _Messages"), NULL, flush_sendlater_messages, 0, "<ImageItem>", icon_compose_send},
Index: pan/message-window.h
--- pan/message-window.h 2003-08-04 17:35:13.000000000 +0200
+++ pan/message-window.h 2003-08-16 23:37:19.000000000 +0200
@@ -22,6 +22,8 @@
#include <gmime/gmime-message.h>
+void message_followup_reply_window (void);
+
void message_followup_window (void);
void message_reply_window (void);
Index: pan/message-window.c
--- pan/message-window.c 2003-08-12 16:25:55.000000000 +0200
+++ pan/message-window.c 2003-08-16 23:37:19.000000000 +0200
@@ -71,6 +71,7 @@
NNTP_POST,
NNTP_REPLY,
EMAIL_REPLY,
+ EMAIL_AND_POST_REPLY,
EMAIL_FORWARD,
EDIT_ORIGINAL
}
@@ -489,7 +490,9 @@
static gboolean
is_posting (ComposeType type)
{
- return type==NNTP_POST || type==NNTP_REPLY;
+ return type==NNTP_POST
+ || type==NNTP_REPLY
+ || type==EMAIL_AND_POST_REPLY;
}
static gboolean
@@ -1914,7 +1917,7 @@
}
/* are we sending mail? */
- if (mw->type==EMAIL_REPLY)
+ if (mw->type==EMAIL_REPLY || mw->type==EMAIL_AND_POST_REPLY)
{
/* figure out who to send mail to by checking reply-to: and from: */
if (m!=NULL)
@@ -2050,6 +2053,7 @@
/* sanity clause */
g_return_if_fail (type==EMAIL_REPLY
|| type==NNTP_REPLY
+ || type==EMAIL_AND_POST_REPLY
|| type==EMAIL_FORWARD);
/* get current message */
@@ -2074,6 +2078,11 @@
make_reply_window (EMAIL_REPLY);
}
void
+message_followup_reply_window (void)
+{
+ make_reply_window (EMAIL_AND_POST_REPLY);
+}
+void
message_followup_window (void)
{
make_reply_window (NNTP_REPLY);
@@ -2148,6 +2157,7 @@
case NNTP_REPLY:
case EMAIL_REPLY:
+ case EMAIL_AND_POST_REPLY:
case EMAIL_FORWARD:
message_reply_window_create (compose);
break;
@@ -2348,7 +2358,8 @@
g_free (pch);
/* references (for posting articles) */
- if ((mw->type==NNTP_REPLY || mw->type==EMAIL_REPLY) && (mw->message != NULL))
+ if ((mw->type==NNTP_REPLY || mw->type==EMAIL_REPLY || mw->type==EMAIL_AND_POST_REPLY)
+ && (mw->message != NULL))
{
const char * refs = g_mime_message_get_header (mw->message, HEADER_REFERENCES);
const char * msg_id = g_mime_message_get_message_id (mw->message);
>Release-Note:
>Audit-Trail:
>Unformatted: