$ git clone https://wlchat.ion.nu/wlchat.git
commit 0980daa8b7a50709f1729745ee622a54e61310c2
Author: Alicia <...>
Date: Fri Oct 24 20:40:34 2025 +0200
Fixed handling of pinned messages
diff --git a/wlchat.py b/wlchat.py
index 3928667..590d2e7 100644
--- a/wlchat.py
+++ b/wlchat.py
@@ -177,7 +177,12 @@ def joinchat(domain, browser, browserprofile, nick, conn, ui, uictx, authmethod=
ui['msg'](uictx, chan, nick, data)
elif(msg.startswith('BROADCAST ')):
data=json.loads(msg[10:])
- ui['broadcast'](uictx, chan, nick, data)
+ if(data.get('data').startswith('MSGPIN ') and ui.get('topic')):
+ ui['topic'](uictx, chan, nick, data['data'][7:])
+ elif(data.get('data').startswith('whom ') and data['data'].endswith(' unpin') and ui.get('topic')):
+ ui['topic'](uictx, chan, nick, '')
+ else:
+ ui['broadcast'](uictx, chan, nick, data)
elif(msg.startswith('PRIVMSG ')):
data=json.loads(msg[8:])
ui['privmsg'](uictx, chan, nick, data)
@@ -219,8 +224,6 @@ def joinchat(domain, browser, browserprofile, nick, conn, ui, uictx, authmethod=
elif(msg.startswith('UNMUTE ')):
data=json.loads(msg[7:])
ui['notice'](uictx, chan, nick, data['nick']+' unmutes '+data['data'])
- elif(msg.startswith('MSGPIN ') and ui.get('topic')):
- ui['topic'](uictx, chan, nick, msg[7:])
else:
print('Unknown message: '+msg)
def onclose(x,y,z):