[gthumb/ext] set a fixed width for the sidebars
- From: Paolo Bacchilega <paobac src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [gthumb/ext] set a fixed width for the sidebars
- Date: Fri, 4 Sep 2009 15:19:44 +0000 (UTC)
commit 8e30d7ae689cd33ecd886f83b4f948bc78b5d8fb
Author: Paolo Bacchilega <paobac src gnome org>
Date: Fri Sep 4 17:13:08 2009 +0200
set a fixed width for the sidebars
When a sidebar is on the right side, it's hard to set its width
correctly. Use a fixed size for now.
gthumb/gth-browser.c | 12 +++++++++---
gthumb/gtk-utils.c | 11 ++++++-----
2 files changed, 15 insertions(+), 8 deletions(-)
---
diff --git a/gthumb/gth-browser.c b/gthumb/gth-browser.c
index 366a38d..e55d670 100644
--- a/gthumb/gth-browser.c
+++ b/gthumb/gth-browser.c
@@ -62,7 +62,8 @@
#define GO_PARENT_POPUP "/GoParentPopup"
#define MAX_HISTORY_LENGTH 15
#define GCONF_NOTIFICATIONS 10
-#define DEF_SIDEBAR_WIDTH 250
+#define DEF_SIDEBAR_WIDTH 255
+#define DEF_VIEWER_SIDEBAR_WIDTH 295
#define DEF_PROPERTIES_HEIGHT 128
#define DEF_THUMBNAIL_SIZE 128
#define LOAD_FILE_DELAY 150
@@ -3399,7 +3400,7 @@ _gth_browser_construct (GthBrowser *browser)
browser->priv->file_popup = gtk_ui_manager_get_widget (browser->priv->ui, "/FilePopup");
- _gtk_paned_set_position2 (GTK_PANED (browser->priv->viewer_pane), eel_gconf_get_integer (PREF_UI_VIEWER_SIDEBAR_WIDTH, DEFAULT_UI_WINDOW_WIDTH - DEF_SIDEBAR_WIDTH));
+ _gtk_paned_set_position2 (GTK_PANED (browser->priv->viewer_pane), eel_gconf_get_integer (PREF_UI_VIEWER_SIDEBAR_WIDTH, DEF_VIEWER_SIDEBAR_WIDTH));
_gtk_paned_set_position2 (GTK_PANED (browser->priv->browser_sidebar), eel_gconf_get_integer (PREF_UI_PROPERTIES_HEIGHT, DEF_PROPERTIES_HEIGHT));
_gth_browser_set_toolbar_visibility (browser, eel_gconf_get_boolean (PREF_UI_TOOLBAR_VISIBLE, TRUE));
@@ -4203,8 +4204,10 @@ _gth_browser_load_file (GthBrowser *browser,
return;
}
- else
+ else if (! GTK_WIDGET_VISIBLE (browser->priv->file_properties)) {
+ gtk_paned_set_position (GTK_PANED (browser->priv->browser_sidebar), browser->priv->browser_sidebar->allocation.height / 2);
gtk_widget_show (browser->priv->file_properties);
+ }
g_object_ref (file_data);
_g_object_unref (browser->priv->current_file);
@@ -4365,6 +4368,7 @@ gth_browser_show_viewer_properties (GthBrowser *browser,
_gth_browser_set_action_active (browser, "Viewer_Properties", show);
if (show) {
+ _gtk_paned_set_position2 (GTK_PANED (browser->priv->viewer_pane), DEF_VIEWER_SIDEBAR_WIDTH);
_gth_browser_set_action_active (browser, "Viewer_Tools", FALSE);
gtk_widget_show (browser->priv->viewer_sidebar);
gth_sidebar_show_properties (GTH_SIDEBAR (browser->priv->viewer_sidebar));
@@ -4381,6 +4385,7 @@ gth_browser_show_viewer_tools (GthBrowser *browser,
_gth_browser_set_action_active (browser, "Viewer_Tools", show);
if (show) {
+ _gtk_paned_set_position2 (GTK_PANED (browser->priv->viewer_pane), DEF_VIEWER_SIDEBAR_WIDTH);
_gth_browser_set_action_active (browser, "Viewer_Properties", FALSE);
gtk_widget_show (browser->priv->viewer_sidebar);
gth_sidebar_show_tools (GTH_SIDEBAR (browser->priv->viewer_sidebar));
@@ -4627,6 +4632,7 @@ gth_browser_fullscreen (GthBrowser *browser)
gth_viewer_page_fullscreen (browser->priv->viewer_page, TRUE);
gth_viewer_page_show_pointer (browser->priv->viewer_page, FALSE);
}
+
gth_browser_update_sensitivity (browser);
browser->priv->last_mouse_x = 0.0;
diff --git a/gthumb/gtk-utils.c b/gthumb/gtk-utils.c
index 39b0e89..e17bd67 100644
--- a/gthumb/gtk-utils.c
+++ b/gthumb/gtk-utils.c
@@ -1037,14 +1037,15 @@ void
_gtk_paned_set_position2 (GtkPaned *paned,
int pos)
{
- GtkRequisition requisition;
- int size;
+ GtkWidget *top_level;
+ GtkRequisition requisition;
+ int size;
- gtk_window_get_size (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (paned))), &(requisition.width), &(requisition.height));
+ top_level = gtk_widget_get_toplevel (GTK_WIDGET (paned));
if (gtk_orientable_get_orientation (GTK_ORIENTABLE (paned)) == GTK_ORIENTATION_HORIZONTAL)
- size = requisition.width;
+ size = top_level->allocation.width;
else
- size = requisition.height;
+ size = top_level->allocation.height;
if (pos > 0)
gtk_paned_set_position (paned, size - pos);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]