diff options
Diffstat (limited to 'src/client')
| -rw-r--r-- | src/client/event.rs | 13 | ||||
| -rw-r--r-- | src/client/handler.rs | 22 |
2 files changed, 8 insertions, 27 deletions
diff --git a/src/client/event.rs b/src/client/event.rs index 2c06d98..56e133e 100644 --- a/src/client/event.rs +++ b/src/client/event.rs @@ -17,20 +17,13 @@ pub enum Event { SysMessage { text: String }, /// We joined a channel - Joined { channel: String, nick: String }, + Joined { nick: String }, /// We or someone else left a channel - Parted { - channel: String, - nick: String, - reason: Option<String>, - }, + Parted { nick: String }, /// Someone quit the server - Quit { - nick: String, - reason: Option<String>, - }, + Quit { nick: String }, /// A nick change (could be ours) NickChanged { old_nick: String, new_nick: String }, diff --git a/src/client/handler.rs b/src/client/handler.rs index 63baf87..f30260f 100644 --- a/src/client/handler.rs +++ b/src/client/handler.rs @@ -90,40 +90,28 @@ pub fn handle(msg: IrcMessage, state: &mut ClientState, sender: &Sender) -> Vec< Command::Join => { let nick = nick_from_prefix(&msg.prefix); - if let Some(channel) = msg.params.first() { - events.push(Event::Joined { - channel: channel.clone(), - nick: nick.clone(), - }); - if nick != state.nick { - state.channel.members.insert(nick); - } + events.push(Event::Joined { nick: nick.clone() }); + if nick != state.nick { + state.channel.members.insert(nick); } } Command::Part => { let nick = nick_from_prefix(&msg.prefix); - let channel = msg.params.first().cloned().unwrap_or_default(); - let reason = msg.params.get(1).cloned(); if nick != state.nick { state.channel.members.remove(&nick); } - events.push(Event::Parted { - channel, - nick, - reason, - }); + events.push(Event::Parted { nick }); } Command::Quit => { let nick = nick_from_prefix(&msg.prefix); - let reason = msg.params.first().cloned(); state.channel.members.remove(&nick); - events.push(Event::Quit { nick, reason }); + events.push(Event::Quit { nick }); } Command::Nick => { |
