diff options
author | Trygve Aaberge <trygveaa@gmail.com> | 2019-04-05 14:05:14 +0200 |
---|---|---|
committer | Trygve Aaberge <trygveaa@gmail.com> | 2019-06-02 23:02:07 +0200 |
commit | 8304491a63566fad1764f569d6be1052f7889982 (patch) | |
tree | 563e679cbbc05a47d65c8923f16a48d33aaccfd6 /wee_slack.py | |
parent | cb5fb9d4683edf849ff7756354856eeebcded738 (diff) | |
download | wee-slack-8304491a63566fad1764f569d6be1052f7889982.tar.gz |
Set conditions for muted channels on channel instead of message
Instead of setting tags on each message to prevent notify and
highlights, set variables on the buffer to prevent it.
Diffstat (limited to 'wee_slack.py')
-rw-r--r-- | wee_slack.py | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/wee_slack.py b/wee_slack.py index bccde0b..632064e 100644 --- a/wee_slack.py +++ b/wee_slack.py @@ -1609,6 +1609,17 @@ class SlackChannel(SlackChannelCommon): h_str = ",".join(self.highlights()) w.buffer_set(self.channel_buffer, "highlight_words", h_str) + if self.muted and config.muted_channels_activity != "all": + notify_level = "0" if config.muted_channels_activity == "none" else "1" + w.buffer_set(self.channel_buffer, "notify", notify_level) + else: + w.buffer_set(self.channel_buffer, "notify", "3") + + if self.muted and config.muted_channels_activity == "none": + w.buffer_set(self.channel_buffer, "highlight_tags_restrict", "highlight_force") + else: + w.buffer_set(self.channel_buffer, "highlight_tags_restrict", "") + def create_buffer(self): """ Creates the weechat buffer where the channel magic happens. @@ -1685,7 +1696,7 @@ class SlackChannel(SlackChannelCommon): tagset = "default" self.new_messages = True - tags = tag(tagset, user=tag_nick, muted=self.muted) + tags = tag(tagset, user=tag_nick) try: if (config.unhide_buffers_with_activity @@ -2119,7 +2130,7 @@ class SlackThreadChannel(SlackChannelCommon): # tags = tag("dm") # self.new_messages = True # else: - tags = tag("default", thread=True, muted=self.muted) + tags = tag("default") # self.new_messages = True w.prnt_date_tags(self.channel_buffer, ts.major, tags, data) modify_last_print_time(self.channel_buffer, ts.minor) @@ -3399,7 +3410,7 @@ def format_nick(nick, previous_nick=None): return nick_prefix_color + nick_prefix + w.color("reset") + nick + nick_suffix_color + nick_suffix + w.color("reset") -def tag(tagset, user=None, thread=False, muted=False): +def tag(tagset, user=None): tagsets = { # messages in the team/server buffer, e.g. "new channel created" "team_info": {"no_highlight", "log3"}, @@ -3419,13 +3430,6 @@ def tag(tagset, user=None, thread=False, muted=False): nick_tag = {"nick_{}".format(user or "unknown").replace(" ", "_")} slack_tag = {"slack_{}".format(tagset)} tags = nick_tag | slack_tag | tagsets[tagset] - if muted: - tags.add("slack_muted_channel") - if not thread and config.muted_channels_activity != "all": - tags -= {"notify_highlight", "notify_message", "notify_private"} - tags.add("notify_none") - if config.muted_channels_activity == "none": - tags.add("no_highlight") return ",".join(tags) ###### New/converted command_ commands |