File xchat-tabs_outgoing_msg.patch of Package xchat
---
src/common/cfgfiles.c | 1 +
src/common/outbound.c | 5 ++++-
src/common/xchat.h | 1 +
src/fe-gtk/setup.c | 1 +
4 files changed, 7 insertions(+), 1 deletion(-)
Index: xchat-2.8.6/src/common/cfgfiles.c
===================================================================
--- xchat-2.8.6.orig/src/common/cfgfiles.c
+++ xchat-2.8.6/src/common/cfgfiles.c
@@ -537,6 +537,7 @@ const struct prefs vars[] = {
{"tab_layout", P_OFFINT (tab_layout), TYPE_INT},
{"tab_new_to_front", P_OFFINT (newtabstofront), TYPE_INT},
{"tab_notices", P_OFFINT (notices_tabs), TYPE_BOOL},
+ {"tab_outgoing_msg", P_OFFINT (tabs_outgoing_msg), TYPE_BOOL},
{"tab_pos", P_OFFINT (tab_pos), TYPE_INT},
{"tab_position", P_OFFINT (_tabs_position), TYPE_INT}, /* obsolete */
{"tab_server", P_OFFINT (use_server_tab), TYPE_BOOL},
Index: xchat-2.8.6/src/common/outbound.c
===================================================================
--- xchat-2.8.6.orig/src/common/outbound.c
+++ xchat-2.8.6/src/common/outbound.c
@@ -2607,8 +2607,11 @@ cmd_msg (struct session *sess, char *tbu
sess->server->p_message (sess->server, nick, msg);
}
newsess = find_dialog (sess->server, nick);
- if (!newsess)
+ if (!newsess) {
newsess = find_channel (sess->server, nick);
+ if(!newsess && prefs.tabs_outgoing_msg)
+ newsess = new_ircwindow (sess->server, nick, SESS_DIALOG, 0);
+ }
if (newsess)
inbound_chanmsg (newsess->server, NULL, newsess->channel,
newsess->server->nick, msg, TRUE, FALSE);
Index: xchat-2.8.6/src/common/xchat.h
===================================================================
--- xchat-2.8.6.orig/src/common/xchat.h
+++ xchat-2.8.6/src/common/xchat.h
@@ -267,6 +267,7 @@ struct xchatprefs
unsigned int irc_whois_front;
unsigned int use_server_tab;
unsigned int notices_tabs;
+ unsigned int tabs_outgoing_msg;
unsigned int style_namelistgad;
unsigned int style_inputbox;
unsigned int windows_as_tabs;
Index: xchat-2.8.6/src/fe-gtk/setup.c
===================================================================
--- xchat-2.8.6.orig/src/fe-gtk/setup.c
+++ xchat-2.8.6/src/fe-gtk/setup.c
@@ -249,6 +249,7 @@ static const setting tabs_settings[] =
{ST_RADIO, N_("Switcher type:"),P_OFFINTNL(tab_layout), 0, swtype, 0},
{ST_TOGGLE, N_("Open an extra tab for server messages"), P_OFFINTNL(use_server_tab), 0, 0, 0},
{ST_TOGGLE, N_("Open an extra tab for server notices"), P_OFFINTNL(notices_tabs), 0, 0, 0},
+ {ST_TOGGLE, N_("Open an extra tab for outgoing msg"), P_OFFINTNL(tabs_outgoing_msg), 0, 0, 0},
{ST_TOGGLE, N_("Open a new tab when you receive a private message"), P_OFFINTNL(autodialog), 0, 0, 0},
{ST_TOGGLE, N_("Sort tabs in alphabetical order"), P_OFFINTNL(tab_sort), 0, 0, 0},
{ST_TOGGLE, N_("Smaller text"), P_OFFINTNL(tab_small), 0, 0, 0},