diff --git a/configure.ac b/configure.ac index 4016c715..63fd222e 100644 --- a/configure.ac +++ b/configure.ac @@ -242,6 +242,17 @@ if test "x$need_cxx_compile_stdcxx_11" = xyes; then fi +dnl Check for gtkmm >= 3.22 to determine availability of Gtk::ScrolledWindow::set_propagate_natural_width(). +AC_MSG_CHECKING([for Gtk::ScrolledWindow::set_propagate_natural_width() method]) +PKG_CHECK_EXISTS( + [gtkmm-3.0 >= 3.22.0], + [AC_DEFINE([HAVE_SET_PROPAGATE_NATURAL_WIDTH], 1, + [Define to 1 if gtkmm provides Gtk::ScrolledWindow::set_propagate_natural_width() method.]) + AC_MSG_RESULT([yes]) + ], + [AC_MSG_RESULT([no])] +) + dnl Definitions for building of and with gtest. Gets flags for pthread via earlier dnl gthread package check. diff --git a/src/Dialog_Partition_Info.cc b/src/Dialog_Partition_Info.cc index af13e702..68e831d7 100644 --- a/src/Dialog_Partition_Info.cc +++ b/src/Dialog_Partition_Info.cc @@ -52,6 +52,9 @@ Dialog_Partition_Info::Dialog_Partition_Info( const Partition & partition ) : pa info_msg_vbox.set_orientation(Gtk::ORIENTATION_VERTICAL); info_msg_vbox .set_border_width( 6 ) ; info_scrolled .set_policy( Gtk::POLICY_NEVER, Gtk::POLICY_AUTOMATIC ) ; +#if HAVE_SET_PROPAGATE_NATURAL_WIDTH + info_scrolled.set_propagate_natural_width(true); +#endif info_scrolled .add( info_msg_vbox ) ; // As Gtk::Box widget info_msg_vbox doesn't have a native scrolling capability a // Gtk::Viewport is automatically created to contain it when it is added to the diff --git a/src/Win_GParted.cc b/src/Win_GParted.cc index 71d18553..4f006b85 100644 --- a/src/Win_GParted.cc +++ b/src/Win_GParted.cc @@ -658,6 +658,9 @@ void Win_GParted::init_hpaned_main() scrollwindow = manage( new Gtk::ScrolledWindow() ) ; scrollwindow ->set_shadow_type( Gtk::SHADOW_ETCHED_IN ); scrollwindow ->set_policy( Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC ); +#if HAVE_SET_PROPAGATE_NATURAL_WIDTH + scrollwindow->set_propagate_natural_width(true); +#endif hpaned_main .pack1( *scrollwindow, true, true ); scrollwindow ->add( vbox_info ); @@ -666,7 +669,10 @@ void Win_GParted::init_hpaned_main() scrollwindow = manage( new Gtk::ScrolledWindow() ) ; scrollwindow ->set_shadow_type( Gtk::SHADOW_ETCHED_IN ); scrollwindow ->set_policy( Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC ); - +#if HAVE_SET_PROPAGATE_NATURAL_WIDTH + scrollwindow->set_propagate_natural_width(true); +#endif + //connect signals and add treeview_detail treeview_detail .signal_partition_selected .connect( sigc::mem_fun( this, &Win_GParted::on_partition_selected ) ); treeview_detail .signal_partition_activated .connect( sigc::mem_fun( this, &Win_GParted::on_partition_activated ) );