private void initializeChatFor(IJoinPhaseMultiplayerGameConnector joinMultiPlayerMap) { joinMultiPlayerMap.setChatListener(new IChatMessageListener() { @Override public void chatMessageReceived(String authorId, String message) { chatArea.append(authorId + ": " + message + "\n"); } @Override public void systemMessageReceived(IMultiplayerPlayer author, ENetworkMessage message) { chatArea.append(Labels.getString("network-message-" + message.name()) + "\n"); } }); ActionListener sendChatMessage = e -> { String message = chatInputField.getText(); if (!message.equals("")) { joinMultiPlayerMap.sendChatMessage(message); chatInputField.setText(""); } }; J8Arrays.stream(sendChatMessageButton.getActionListeners()).forEach(sendChatMessageButton::removeActionListener); J8Arrays.stream(chatInputField.getActionListeners()).forEach(chatInputField::removeActionListener); sendChatMessageButton.addActionListener(sendChatMessage); chatInputField.addActionListener(sendChatMessage); }