@ -223,7 +223,7 @@ public class ChatWindow extends JFrame {
|
||||
.get();
|
||||
|
||||
// Set all unread messages in the chat to read
|
||||
if (currentChat != null) { localDB.setMessagesToRead(currentChat); }
|
||||
readCurrentChat();
|
||||
|
||||
client.setRecipient(user);
|
||||
|
||||
@ -319,9 +319,14 @@ public class ChatWindow extends JFrame {
|
||||
// Synchronize
|
||||
localDB.applySync(
|
||||
client.sendSync(client.getSender().getID(), localDB.fillSync(client.getSender().getID())));
|
||||
|
||||
// Process unread messages
|
||||
localDB.addUnreadMessagesToLocalDB();
|
||||
localDB.clearUnreadMessagesSync();
|
||||
|
||||
// Mark unread messages as read when they are in the current chat
|
||||
readCurrentChat();
|
||||
|
||||
// Update UI
|
||||
SwingUtilities
|
||||
.invokeLater(() -> { updateUserStates(); contentPane.revalidate(); contentPane.repaint(); });
|
||||
@ -335,4 +340,9 @@ public class ChatWindow extends JFrame {
|
||||
if (userList.getModel().getElementAt(i).getID() == localDB.getChats().get(j).getRecipient().getID())
|
||||
userList.getModel().getElementAt(i).setStatus(localDB.getChats().get(j).getRecipient().getStatus());
|
||||
}
|
||||
|
||||
/**
|
||||
* Marks messages in the current chat as {@code READ}.
|
||||
*/
|
||||
private void readCurrentChat() { if (currentChat != null) { localDB.setMessagesToRead(currentChat); } }
|
||||
}
|
Reference in New Issue
Block a user