diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc index cc9d09b654..21a9b0280d 100644 --- a/gtk2_ardour/sfdb_ui.cc +++ b/gtk2_ardour/sfdb_ui.cc @@ -1317,6 +1317,25 @@ SoundFileOmega::SoundFileOmega (Gtk::Window& parent, string title, ARDOUR::Sessi disposition_map.insert (pair(_("all files in one region"), ImportMergeFiles)); chooser.signal_selection_changed().connect (mem_fun (*this, &SoundFileOmega::file_selection_changed)); + + /* set size requests for a couple of combos to allow them to display the longest text + they will ever be asked to display. This prevents them being resized when the user + selects a file to import, which in turn prevents the size of the dialog from jumping + around. */ + + vector t; + t.push_back (_("one track per file")); + t.push_back (_("one track per channel")); + t.push_back (_("sequence files")); + t.push_back (_("all files in one region")); + set_size_request_to_display_given_text (channel_combo, t, COMBO_FUDGE + 10, 15); + + t.clear (); + t.push_back (importmode2string (ImportAsTrack)); + t.push_back (importmode2string (ImportToTrack)); + t.push_back (importmode2string (ImportAsRegion)); + t.push_back (importmode2string (ImportAsTapeTrack)); + set_size_request_to_display_given_text (action_combo, t, COMBO_FUDGE + 10, 15); } void