aboutsummaryrefslogtreecommitdiff
path: root/modules/ircv3_editmsg.py
diff options
context:
space:
mode:
authorGravatar jesopo2020-01-17 14:20:42 +0000
committerGravatar jesopo2020-01-17 14:20:42 +0000
commit5d9bbed0fadb041088e3e335af6ac510548b025e (patch)
tree497770c24c3daac74eabed33d317c9f3082d5f8f /modules/ircv3_editmsg.py
parentallow BufferLines to be marked as deleted (diff)
signature
use `draft/delete` tags to mark BufferLines as deleted
Diffstat (limited to 'modules/ircv3_editmsg.py')
-rw-r--r--modules/ircv3_editmsg.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/modules/ircv3_editmsg.py b/modules/ircv3_editmsg.py
new file mode 100644
index 00000000..d1d33d04
--- /dev/null
+++ b/modules/ircv3_editmsg.py
@@ -0,0 +1,13 @@
+from src import ModuleManager, utils
+
+DELETE_TAG = utils.irc.MessageTag(None, "draft/delete")
+
+class Module(ModuleManager.BaseModule):
+ @utils.hook("received.tagmsg.private")
+ @utils.hook("received.tagmsg.channel")
+ def tagmsg(self, event):
+ msgid = DELETE_TAG.get_value(event["line"].tags)
+ if msgid:
+ line = event["target"].buffer.find_id(msgid)
+ if line:
+ line.deleted = True