diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-05-09 23:08:30 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-05-09 23:08:30 +0100 | 
| commit | a067771fa1799e689653931f6743b3502182b850 (patch) | |
| tree | afe0a0d236deb045a8000405a83609c85a691ef7 | |
| parent | 4e608d6fee8ee39b871338524b6da00aa5a6e86b (diff) | |
Per-account channels also exist now.
| -rw-r--r-- | irc.h | 1 | ||||
| -rw-r--r-- | irc_channel.c | 2 | ||||
| -rw-r--r-- | irc_im.c | 2 | 
3 files changed, 5 insertions, 0 deletions
| @@ -191,6 +191,7 @@ struct irc_control_channel  {  	irc_control_channel_type_t type;  	struct bee_group *group; +	struct account *account;  };  extern const struct bee_ui_funcs irc_ui_funcs; diff --git a/irc_channel.c b/irc_channel.c index 159c16dc..f000a997 100644 --- a/irc_channel.c +++ b/irc_channel.c @@ -264,6 +264,8 @@ static gboolean control_channel_init( irc_channel_t *ic )  	if( ( icc->group = bee_group_by_name( ic->irc->b, ic->name + 1, FALSE ) ) )  		icc->type = IRC_CC_TYPE_GROUP; +	else if( ( icc->account = account_get( ic->irc->b, ic->name + 1 ) ) ) +		icc->type = IRC_CC_TYPE_ACCOUNT;  	bee_irc_channel_update( ic->irc, ic, NULL ); @@ -144,6 +144,8 @@ void bee_irc_channel_update( irc_t *irc, irc_channel_t *ic, irc_user_t *iu )  		show = TRUE;  	else if( icc->type == IRC_CC_TYPE_GROUP )  		show = iu->bu->group == icc->group; +	else if( icc->type == IRC_CC_TYPE_ACCOUNT ) +		show = iu->bu->ic->acc == icc->account;  	if( !show )  	{ | 
