From 64845ac3b7a3db2d6c20e318512a48e663dea2b5 Mon Sep 17 00:00:00 2001 From: Nikolay Krasko Date: Wed, 25 Apr 2018 20:49:53 +0300 Subject: [PATCH] Better UI for configure plugin updates (KT-23980) - Control with Alt + Letter - Don't stretch channel combobox - Focus on label selection #KT-23980 Fixed --- .../ui/ConfigurePluginUpdatesForm.form | 9 +++++---- .../ui/ConfigurePluginUpdatesForm.java | 14 +++++++++++++- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.form b/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.form index 6b1a891c511..9e797e4d6b9 100644 --- a/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.form +++ b/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.form @@ -13,7 +13,8 @@ - + + @@ -23,7 +24,7 @@ - + @@ -43,7 +44,7 @@ - + @@ -73,7 +74,7 @@ - + diff --git a/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.java b/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.java index 3f27fb557cd..df56d7e7e42 100644 --- a/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.java +++ b/idea/src/org/jetbrains/kotlin/idea/configuration/ui/ConfigurePluginUpdatesForm.java @@ -10,13 +10,25 @@ import com.intellij.util.ui.AsyncProcessIcon; import javax.swing.*; public class ConfigurePluginUpdatesForm { - public JComboBox channelCombo; + public JComboBox channelCombo; public JButton checkForUpdatesNowButton; public JPanel mainPanel; public AsyncProcessIcon updateCheckProgressIcon; public JLabel updateStatusLabel; public JButton installButton; + public ConfigurePluginUpdatesForm() { + int size = channelCombo.getModel().getSize(); + String maxLengthItem = ""; + for (int i = 0; i < size; i++) { + String item = channelCombo.getModel().getElementAt(i); + if (item.length() > maxLengthItem.length()) { + maxLengthItem = item; + } + } + channelCombo.setPrototypeDisplayValue(maxLengthItem + " "); + } + private void createUIComponents() { updateCheckProgressIcon = new AsyncProcessIcon("Plugin update check progress"); }