Index: src/org/openstreetmap/josm/gui/history/HistoryBrowserPanel.java
===================================================================
--- src/org/openstreetmap/josm/gui/history/HistoryBrowserPanel.java	(revision 19016)
+++ src/org/openstreetmap/josm/gui/history/HistoryBrowserPanel.java	(working copy)
@@ -1,6 +1,7 @@
 // License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.gui.history;
 
+import java.awt.Component;
 import java.awt.GridBagLayout;
 import java.util.ArrayList;
 import java.util.List;
@@ -93,4 +94,20 @@
         josmActions.forEach(JosmAction::destroy);
         josmActions.clear();
     }
+
+    @Override
+    public void doLayout() {
+        super.doLayout();
+        // see #23482 comment 22: sometimes the calculated width is larger than wanted
+        int maxWidth = (getWidth() / 2) - 5; // -5 for the insets
+        if (maxWidth > 0) {
+            for (Component c : getComponents()) {
+                if (c.getHeight() > 0 && c.getWidth() > maxWidth) {
+                    // this is a workaround for what might be a java error, it causes a flicker :(
+                    c.setSize(maxWidth, c.getHeight());
+                }
+            }
+        }
+    }
+
 }
