From 63e164babb9be131c3e892cbf4c5c0ed3bd860c1 Mon Sep 17 00:00:00 2001 From: nik Date: Mon, 20 May 2019 12:52:22 +0300 Subject: [PATCH] ui: don't change combobox text in table while evaluating 'getPreferredSize' (IDEA-210798) GitOrigin-RevId: d0c1a93b3d12758fabbd6fa8709915183e95987f --- .../src/com/intellij/openapi/ui/ComboBoxTableRenderer.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/platform/platform-api/src/com/intellij/openapi/ui/ComboBoxTableRenderer.java b/platform/platform-api/src/com/intellij/openapi/ui/ComboBoxTableRenderer.java index b5572b6dc352..91c6a6536791 100644 --- a/platform/platform-api/src/com/intellij/openapi/ui/ComboBoxTableRenderer.java +++ b/platform/platform-api/src/com/intellij/openapi/ui/ComboBoxTableRenderer.java @@ -54,6 +54,8 @@ public class ComboBoxTableRenderer extends JLabel implements TableCellRendere Dimension size = addIconSize(super.getPreferredSize()); if (myValues != null) { + String oldText = getText(); + Icon oldIcon = getIcon(); for(T v : myValues) { setText(getTextFor(v)); setIcon(getIconFor(v)); @@ -63,6 +65,8 @@ public class ComboBoxTableRenderer extends JLabel implements TableCellRendere size.width = Math.max(size.width, vSize.width); size.height = Math.max(size.height, vSize.height); } + setText(oldText); + setIcon(oldIcon); } return size;