Browse Source

Add ability to hide nick change events in the jpq plugin.

Closes #428
pull/473/head
Greg Holmes 8 years ago
parent
commit
e314922272
1 changed files with 17 additions and 0 deletions
  1. 17
    0
      jpq/src/com/dmdirc/addons/jpq/GroupChatHandler.java

+ 17
- 0
jpq/src/com/dmdirc/addons/jpq/GroupChatHandler.java View File

@@ -25,6 +25,7 @@ package com.dmdirc.addons.jpq;
25 25
 import com.dmdirc.config.ConfigBinder;
26 26
 import com.dmdirc.config.ConfigBinding;
27 27
 import com.dmdirc.events.ChannelJoinEvent;
28
+import com.dmdirc.events.ChannelNickChangeEvent;
28 29
 import com.dmdirc.events.ChannelPartEvent;
29 30
 import com.dmdirc.events.ChannelQuitEvent;
30 31
 import com.dmdirc.events.DisplayProperty;
@@ -44,6 +45,7 @@ public class GroupChatHandler {
44 45
     private final GroupChat groupChat;
45 46
     private final ConfigBinder binder;
46 47
     private boolean hideEvents;
48
+    private boolean hideNickChanges;
47 49
 
48 50
     public GroupChatHandler(final String domain, final GroupChat groupChat) {
49 51
         this.groupChat = groupChat;
@@ -73,6 +75,12 @@ public class GroupChatHandler {
73 75
         hideEvents = value;
74 76
     }
75 77
 
78
+    @VisibleForTesting
79
+    @ConfigBinding(key = "hidenickchanges")
80
+    void handleSettingChangeNickname(final boolean value) {
81
+        hideNickChanges = value;
82
+    }
83
+
76 84
     @SuppressWarnings("TypeMayBeWeakened")
77 85
     @VisibleForTesting
78 86
     @Handler
@@ -100,6 +108,15 @@ public class GroupChatHandler {
100 108
         }
101 109
     }
102 110
 
111
+    @SuppressWarnings("TypeMayBeWeakened")
112
+    @VisibleForTesting
113
+    @Handler
114
+    void handleNickChange(final ChannelNickChangeEvent event) {
115
+        if (event.getChannel().equals(groupChat) && hideNickChanges) {
116
+            event.setDisplayProperty(DisplayProperty.DO_NOT_DISPLAY, true);
117
+        }
118
+    }
119
+
103 120
     private void hideEvent(final DisplayableEvent event) {
104 121
         if (hideEvents) {
105 122
             event.setDisplayProperty(DisplayProperty.DO_NOT_DISPLAY, true);

Loading…
Cancel
Save