Index: /applications/editors/josm/plugins/geochat/src/geochat/ChatPaneManager.java
===================================================================
--- /applications/editors/josm/plugins/geochat/src/geochat/ChatPaneManager.java	(revision 35159)
+++ /applications/editors/josm/plugins/geochat/src/geochat/ChatPaneManager.java	(revision 35160)
@@ -102,23 +102,20 @@
         final String nline = line.startsWith("\n") ? line : "\n" + line;
         final JTextPane thepane = chatPanes.get(userName).pane;
-        GuiHelper.runInEDT(new Runnable() {
-            @Override
-            public void run() {
-                Document doc = thepane.getDocument();
-                try {
-                    SimpleAttributeSet attrs = null;
-                    if (messageType != MESSAGE_TYPE_DEFAULT) {
-                        attrs = new SimpleAttributeSet();
-                        if (messageType == MESSAGE_TYPE_INFORMATION)
-                            StyleConstants.setItalic(attrs, true);
-                        else if (messageType == MESSAGE_TYPE_ATTENTION)
-                            StyleConstants.setForeground(attrs, COLOR_ATTENTION);
-                    }
-                    doc.insertString(doc.getLength(), nline, attrs);
-                } catch (BadLocationException ex) {
-                    Logging.warn(ex);
+        GuiHelper.runInEDT(() -> {
+            Document doc = thepane.getDocument();
+            try {
+                SimpleAttributeSet attrs = null;
+                if (messageType != MESSAGE_TYPE_DEFAULT) {
+                    attrs = new SimpleAttributeSet();
+                    if (messageType == MESSAGE_TYPE_INFORMATION)
+                        StyleConstants.setItalic(attrs, true);
+                    else if (messageType == MESSAGE_TYPE_ATTENTION)
+                        StyleConstants.setForeground(attrs, COLOR_ATTENTION);
                 }
-                thepane.setCaretPosition(doc.getLength());
+                doc.insertString(doc.getLength(), nline, attrs);
+            } catch (BadLocationException ex) {
+                Logging.warn(ex);
             }
+            thepane.setCaretPosition(doc.getLength());
         });
     }
Index: /applications/editors/josm/plugins/geochat/src/geochat/ChatServerConnection.java
===================================================================
--- /applications/editors/josm/plugins/geochat/src/geochat/ChatServerConnection.java	(revision 35159)
+++ /applications/editors/josm/plugins/geochat/src/geochat/ChatServerConnection.java	(revision 35160)
@@ -116,17 +116,14 @@
             return;
         }
-        new Thread(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    int cnt = 10;
-                    while (getPosition() == null && cnt-- > 0) {
-                        Thread.sleep(200);
-                    }
-                } catch (InterruptedException e) {
-                    Logging.warn(e);
-                }
-                autoLogin(userName);
-            }
+        new Thread(() -> {
+            try {
+                int cnt = 10;
+                while (getPosition() == null && cnt-- > 0) {
+                    Thread.sleep(200);
+                }
+            } catch (InterruptedException e) {
+                Logging.warn(e);
+            }
+            autoLogin(userName);
         }).start();
     }
Index: /applications/editors/josm/plugins/geochat/src/geochat/GeoChatPanel.java
===================================================================
--- /applications/editors/josm/plugins/geochat/src/geochat/GeoChatPanel.java	(revision 35159)
+++ /applications/editors/josm/plugins/geochat/src/geochat/GeoChatPanel.java	(revision 35160)
@@ -235,10 +235,5 @@
             title = title + " (" + comment + ")";
         final String alarm = (alarmLevel <= 0 ? "" : alarmLevel == 1 ? "* " : "!!! ") + title;
-        GuiHelper.runInEDT(new Runnable() {
-            @Override
-            public void run() {
-                setTitle(alarm);
-            }
-        });
+        GuiHelper.runInEDT(() -> setTitle(alarm));
     }
 
@@ -259,11 +254,8 @@
         Config.getPref().put("geochat.username", userName);
         if (gcPanel.getComponentCount() == 1) {
-            GuiHelper.runInEDTAndWait(new Runnable() {
-                @Override
-                public void run() {
-                    gcPanel.remove(0);
-                    gcPanel.add(tabs, BorderLayout.CENTER);
-                    gcPanel.add(input, BorderLayout.SOUTH);
-                }
+            GuiHelper.runInEDTAndWait(() -> {
+                gcPanel.remove(0);
+                gcPanel.add(tabs, BorderLayout.CENTER);
+                gcPanel.add(input, BorderLayout.SOUTH);
             });
         }
@@ -274,10 +266,5 @@
     public void notLoggedIn(final String reason) {
         if (reason != null) {
-            GuiHelper.runInEDT(new Runnable() {
-                @Override
-                public void run() {
-                    new Notification(tr("Failed to log in to GeoChat:") + "\n" + reason).show();
-                }
-            });
+            GuiHelper.runInEDT(() -> new Notification(tr("Failed to log in to GeoChat:") + '\n' + reason).show());
         } else {
             // regular logout
@@ -292,10 +279,5 @@
     @Override
     public void messageSendFailed(final String reason) {
-        GuiHelper.runInEDT(new Runnable() {
-            @Override
-            public void run() {
-                new Notification(tr("Failed to send message:") + "\n" + reason).show();
-            }
-        });
+        GuiHelper.runInEDT(() -> new Notification(tr("Failed to send message:") + '\n' + reason).show());
     }
 
Index: /applications/editors/josm/plugins/geochat/src/geochat/JsonQueryUtil.java
===================================================================
--- /applications/editors/josm/plugins/geochat/src/geochat/JsonQueryUtil.java	(revision 35159)
+++ /applications/editors/josm/plugins/geochat/src/geochat/JsonQueryUtil.java	(revision 35160)
@@ -90,10 +90,5 @@
     public void run() {
         if (EventQueue.isDispatchThread()) {
-            new Thread(new Runnable() {
-                @Override
-                public void run() {
-                    doRealRun();
-                }
-            }).start();
+            new Thread(this::doRealRun).start();
         } else {
             doRealRun();
