From 72900a31de40ad7c8e69938f70fdacbd6ce007eb Mon Sep 17 00:00:00 2001 From: Guus der Kinderen Date: Tue, 4 Aug 2020 22:21:53 +0200 Subject: [PATCH] SPARK-1784: Do not surpress ROAR popup when chat container is inactive/has no focus Prior to this change, popups where surpressed when the chat container was not explicitly closed. --- .../java/org/jivesoftware/spark/roar/RoarMessageListener.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/roar/src/main/java/org/jivesoftware/spark/roar/RoarMessageListener.java b/plugins/roar/src/main/java/org/jivesoftware/spark/roar/RoarMessageListener.java index 2ce9371ca..07dd86fa7 100644 --- a/plugins/roar/src/main/java/org/jivesoftware/spark/roar/RoarMessageListener.java +++ b/plugins/roar/src/main/java/org/jivesoftware/spark/roar/RoarMessageListener.java @@ -55,8 +55,10 @@ public class RoarMessageListener implements GlobalMessageListener { int framestate = SparkManager.getChatManager().getChatContainer().getChatFrame().getState(); + final boolean chatContainerHasFocus = SparkManager.getChatManager().getChatContainer().isFocusOwner(); + // If the message is for a chat that's currently active and showing, do not popup. - if (framestate == JFrame.NORMAL && activeroom.equals(room) && room.isShowing() + if (!chatContainerHasFocus && framestate == JFrame.NORMAL && activeroom.equals(room) && room.isShowing() && (isOldGroupChat(room) || isMessageFromRoom(room, message))) { Log.debug( "Surpressing popup: chat is currently active and showing."); return;