diff --git a/common/dialogs/eda_list_dialog.cpp b/common/dialogs/eda_list_dialog.cpp
index 5ebd61e027..695bb9ff68 100644
--- a/common/dialogs/eda_list_dialog.cpp
+++ b/common/dialogs/eda_list_dialog.cpp
@@ -62,6 +62,20 @@ EDA_LIST_DIALOG::EDA_LIST_DIALOG( wxWindow* aParent, const wxString& aTitle,
 }
 
 
+bool EDA_LIST_DIALOG::Show( bool show )
+{
+    bool retVal = DIALOG_SHIM::Show( show );
+
+    if( show )
+    {
+        wxSizeEvent dummy;
+        onSize( dummy );
+    }
+
+    return retVal;
+}
+
+
 void EDA_LIST_DIALOG::initDialog( const wxArrayString& aItemHeaders, const wxString& aSelection )
 {
     if( aItemHeaders.Count() == 1 )
diff --git a/include/eda_list_dialog.h b/include/eda_list_dialog.h
index ece1fd1df3..284a6784d6 100644
--- a/include/eda_list_dialog.h
+++ b/include/eda_list_dialog.h
@@ -71,6 +71,8 @@ public:
 
     long GetSelection();
 
+    bool Show( bool show ) override;
+
 private:
     virtual void onSize( wxSizeEvent& event ) override;
     void onListItemActivated( wxListEvent& event ) override;