diff options
author | Damian Minkov <damencho@jitsi.org> | 2012-08-16 07:26:22 +0000 |
---|---|---|
committer | Damian Minkov <damencho@jitsi.org> | 2012-08-16 07:26:22 +0000 |
commit | 77a2ef87b34ea7b4679e30a4304651c1d011bec7 (patch) | |
tree | e03b18caa376998355034416c185620bfa5257b6 /src/net | |
parent | 6dacc7968f20a85b3410f9330fb11f9cd01080e7 (diff) | |
download | jitsi-77a2ef87b34ea7b4679e30a4304651c1d011bec7.zip jitsi-77a2ef87b34ea7b4679e30a4304651c1d011bec7.tar.gz jitsi-77a2ef87b34ea7b4679e30a4304651c1d011bec7.tar.bz2 |
Changes the way we read count of unread notifications, to show to user overall number of unread voice messages.
Diffstat (limited to 'src/net')
3 files changed, 42 insertions, 2 deletions
diff --git a/src/net/java/sip/communicator/impl/gui/main/UINotification.java b/src/net/java/sip/communicator/impl/gui/main/UINotification.java index 18a9c90..5165f60 100644 --- a/src/net/java/sip/communicator/impl/gui/main/UINotification.java +++ b/src/net/java/sip/communicator/impl/gui/main/UINotification.java @@ -33,6 +33,11 @@ public class UINotification private final Date notificationTime; /** + * Number of unread objects like calls or messages. + */ + private int unreadObjects = 0; + + /** * Creates an instance of <tt>UINotification</tt> by specifying the * notification name and time. * @@ -46,9 +51,29 @@ public class UINotification Date time, UINotificationGroup parentGroup) { + this(displayName, time, parentGroup, 1); + } + + /** + * Creates an instance of <tt>UINotification</tt> by specifying the + * notification name and time. + * + * notification belongs + * @param displayName the name associated to this notification + * @param time the time when the notification was received + * @param parentGroup the group of notifications, to which this notification + * belongs + * @param unreadObjects number of unread objects for this notification. + */ + public UINotification( String displayName, + Date time, + UINotificationGroup parentGroup, + int unreadObjects) + { this.notificationName = displayName; this.notificationTime = time; this.parentGroup = parentGroup; + this.unreadObjects = unreadObjects; } /** @@ -80,4 +105,13 @@ public class UINotification { return parentGroup; } + + /** + * Returns the number of unread objects for this notification. + * @return + */ + public int getUnreadObjects() + { + return unreadObjects; + } } diff --git a/src/net/java/sip/communicator/impl/gui/main/UINotificationGroup.java b/src/net/java/sip/communicator/impl/gui/main/UINotificationGroup.java index 8763746..076f658 100644 --- a/src/net/java/sip/communicator/impl/gui/main/UINotificationGroup.java +++ b/src/net/java/sip/communicator/impl/gui/main/UINotificationGroup.java @@ -108,7 +108,12 @@ public class UINotificationGroup { synchronized (unreadNotifications) { - return unreadNotifications.size(); + int count = 0; + + for(UINotification n : unreadNotifications) + count += n.getUnreadObjects(); + + return count; } } } diff --git a/src/net/java/sip/communicator/impl/gui/main/contactlist/notifsource/NotificationGroup.java b/src/net/java/sip/communicator/impl/gui/main/contactlist/notifsource/NotificationGroup.java index 669d966..599976b 100644 --- a/src/net/java/sip/communicator/impl/gui/main/contactlist/notifsource/NotificationGroup.java +++ b/src/net/java/sip/communicator/impl/gui/main/contactlist/notifsource/NotificationGroup.java @@ -310,7 +310,8 @@ public class NotificationGroup contact.getDisplayName() + " : " + contact.getDisplayDetails(), new Date(), - uiNotificationGroup)); + uiNotificationGroup, + contact.getUnreadMessageCount())); } } } |