Index: trunk/src/org/openstreetmap/josm/gui/conflict/pair/tags/TagMerger.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/conflict/pair/tags/TagMerger.java	(revision 18844)
+++ trunk/src/org/openstreetmap/josm/gui/conflict/pair/tags/TagMerger.java	(revision 18845)
@@ -5,4 +5,6 @@
 
 import java.awt.Adjustable;
+import java.awt.GridBagConstraints;
+import java.awt.GridBagLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.AdjustmentEvent;
@@ -19,4 +21,5 @@
 import javax.swing.JButton;
 import javax.swing.JComponent;
+import javax.swing.JPanel;
 import javax.swing.JScrollPane;
 import javax.swing.JTable;
@@ -30,4 +33,5 @@
 import org.openstreetmap.josm.gui.conflict.pair.MergeDecisionType;
 import org.openstreetmap.josm.gui.tagging.TagTableColumnModelBuilder;
+import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.tools.GBC;
 import org.openstreetmap.josm.tools.ImageProvider;
@@ -113,5 +117,9 @@
          */
         JScrollPane embeddInScrollPane(JTable table) {
-            JScrollPane pane = new JScrollPane(table);
+            // See #23189: Tag tables should resize (where possible) with the window
+            final JPanel panel = new JPanel(new GridBagLayout());
+            panel.add(table.getTableHeader(), GBC.eol().fill(GridBagConstraints.HORIZONTAL));
+            panel.add(table, GBC.eol().fill(GridBagConstraints.BOTH));
+            final JScrollPane pane = GuiHelper.embedInVerticalScrollPane(panel);
             adjustmentSynchronizer.synchronizeAdjustment(pane.getVerticalScrollBar());
             return pane;
