summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlex Valavanis <valavanisalex@gmail.com>2012-05-21 10:01:41 +0000
committerAlex Valavanis <valavanisalex@gmail.com>2012-05-21 10:01:41 +0000
commita89dd0f5f45c3df19c3d6756fef83ab06f3d5356 (patch)
treeee629d7f9aefd38bccf3e5092830d6ca81e1ab1d /src
parentExtended control resizing to node editing. Fixes half of bug #172059. (diff)
downloadinkscape-a89dd0f5f45c3df19c3d6756fef83ab06f3d5356.tar.gz
inkscape-a89dd0f5f45c3df19c3d6756fef83ab06f3d5356.zip
More size-request GTK+ 3 fixes
(bzr r11391)
Diffstat (limited to 'src')
-rw-r--r--src/ui/dialog/inkscape-preferences.cpp18
-rw-r--r--src/ui/dialog/layers.cpp8
-rw-r--r--src/ui/widget/dock-item.cpp8
3 files changed, 28 insertions, 6 deletions
diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp
index 5280d8bbd..66149237a 100644
--- a/src/ui/dialog/inkscape-preferences.cpp
+++ b/src/ui/dialog/inkscape-preferences.cpp
@@ -77,7 +77,13 @@ InkscapePreferences::InkscapePreferences()
sb->set_width_chars(6);
_getContents()->add(*sb);
show_all_children();
- Gtk::Requisition sreq = sb->size_request();
+ Gtk::Requisition sreq;
+#if WITH_GTKMM_3_0
+ Gtk::Requisition sreq_natural;
+ sb->get_preferred_size(sreq_natural, sreq);
+#else
+ sreq = sb->size_request();
+#endif
_sb_width = sreq.width;
_getContents()->remove(*sb);
delete sb;
@@ -1446,7 +1452,7 @@ void InkscapePreferences::initPageSystem()
_sys_user_prefs.set_editable(false);
_page_system.add_line(true, _("User preferences: "), _sys_user_prefs, "", _("Location of the users preferences file"), true);
- _sys_user_extension_dir.set_text((char const *)get_path(IO::Resource::USER, IO::Resource::EXTENSIONS, ""));
+ _sys_user_extension_dir.set_text((char const *)IO::Resource::get_path(IO::Resource::USER, IO::Resource::EXTENSIONS, ""));
_sys_user_extension_dir.set_editable(false);
_page_system.add_line(true, _("User extensions: "), _sys_user_extension_dir, "", _("Location of the users extensions"), true);
@@ -1512,7 +1518,13 @@ bool InkscapePreferences::SetMaxDialogSize(const Gtk::TreeModel::iterator& iter)
DialogPage* page = row[_page_list_columns._col_page];
_page_frame.add(*page);
this->show_all_children();
- Gtk:: Requisition sreq = this->size_request();
+ Gtk::Requisition sreq;
+#if WITH_GTKMM_3_0
+ Gtk::Requisition sreq_natural;
+ this->get_preferred_size(sreq_natural, sreq);
+#else
+ sreq = this->size_request();
+#endif
_max_dialog_width=std::max(_max_dialog_width, sreq.width);
_max_dialog_height=std::max(_max_dialog_height, sreq.height);
_page_frame.remove();
diff --git a/src/ui/dialog/layers.cpp b/src/ui/dialog/layers.cpp
index 3bd047ebc..6fb41fcbf 100644
--- a/src/ui/dialog/layers.cpp
+++ b/src/ui/dialog/layers.cpp
@@ -626,7 +626,13 @@ LayersPanel::LayersPanel() :
_scroller.add( _tree );
_scroller.set_policy( Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC );
_scroller.set_shadow_type(Gtk::SHADOW_IN);
- Gtk:: Requisition sreq = _scroller.size_request();
+ Gtk::Requisition sreq;
+#if WITH_GTKMM_3_0
+ Gtk::Requisition sreq_natural;
+ _scroller.get_preferred_size(sreq_natural, sreq);
+#else
+ sreq = _scroller.size_request();
+#endif
int minHeight = 70;
if (sreq.height < minHeight) {
// Set a min height to see the layers when used with Ubuntu liboverlay-scrollbar
diff --git a/src/ui/widget/dock-item.cpp b/src/ui/widget/dock-item.cpp
index 238e93b0b..0f93968e5 100644
--- a/src/ui/widget/dock-item.cpp
+++ b/src/ui/widget/dock-item.cpp
@@ -168,10 +168,14 @@ DockItem::set_size_request(int width, int height)
getWidget().set_size_request(width, height);
}
-void
-DockItem::size_request(Gtk::Requisition& requisition)
+void DockItem::size_request(Gtk::Requisition& requisition)
{
+#if WITH_GTKMM_3_0
+ Gtk::Requisition req_natural;
+ getWidget().get_preferred_size(req_natural, requisition);
+#else
requisition = getWidget().size_request();
+#endif
}
void