diff options
Diffstat (limited to 'src/common')
-rw-r--r-- | src/common/hexchat.c | 2 | ||||
-rw-r--r-- | src/common/hexchat.h | 1 | ||||
-rw-r--r-- | src/common/inbound.c | 2 |
3 files changed, 5 insertions, 0 deletions
diff --git a/src/common/hexchat.c b/src/common/hexchat.c index 07f91cfb..8729df33 100644 --- a/src/common/hexchat.c +++ b/src/common/hexchat.c @@ -528,6 +528,8 @@ new_ircwindow (server *serv, char *name, int type, int focus) irc_init (sess); chanopt_load (sess); scrollback_load (sess); + if (sess->scrollwritten && sess->scrollback_replay_marklast) + sess->scrollback_replay_marklast (sess); plugin_emit_dummy_print (sess, "Open Context"); return sess; diff --git a/src/common/hexchat.h b/src/common/hexchat.h index 7143f8ab..5d96fd4b 100644 --- a/src/common/hexchat.h +++ b/src/common/hexchat.h @@ -459,6 +459,7 @@ typedef struct session int doing_who:1; /* /who sent on this channel */ int done_away_check:1; /* done checking for away status changes */ gtk_xtext_search_flags lastlog_flags; + void (*scrollback_replay_marklast) (struct session *sess); } session; struct msproxy_state_t diff --git a/src/common/inbound.c b/src/common/inbound.c index ea7c3c9b..3737e479 100644 --- a/src/common/inbound.c +++ b/src/common/inbound.c @@ -608,6 +608,8 @@ inbound_ujoin (server *serv, char *chan, char *nick, char *ip, { chanopt_load (sess); scrollback_load (sess); + if (sess->scrollwritten && sess->scrollback_replay_marklast) + sess->scrollback_replay_marklast (sess); } fe_set_channel (sess); |