[Xfce4-commits] <xfce4-panel:master> Add style property to control size of autohide window.

Nick Schermer noreply at xfce.org
Sat May 28 14:12:03 CEST 2011


Updating branch refs/heads/master
         to 2d84329885b5754122f1a2613be8c4ab9d7925e8 (commit)
       from 98f1c5f11b3a6d573d96841b65c3f67898e0093e (commit)

commit 2d84329885b5754122f1a2613be8c4ab9d7925e8
Author: Nick Schermer <nick at xfce.org>
Date:   Sat May 28 12:57:48 2011 +0200

    Add style property to control size of autohide window.

 docs/README.gtkrc-2.0 |    3 +++
 panel/panel-window.c  |   14 +++++++++++++-
 2 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/docs/README.gtkrc-2.0 b/docs/README.gtkrc-2.0
index fae91ed..0f8b874 100644
--- a/docs/README.gtkrc-2.0
+++ b/docs/README.gtkrc-2.0
@@ -17,6 +17,9 @@ style "xfce-panel-window-style"
 
   # Time in miliseconds before the panel will hide on a leave event
   XfcePanelWindow::popdown-delay = 350
+
+  # Size of autohide window in pixels
+  XfcePanelWindow::autohide-size = 3
 }
 class "XfcePanelWindow" style "xfce-panel-window-style"
 
diff --git a/panel/panel-window.c b/panel/panel-window.c
index c3f1347..ecdc854 100644
--- a/panel/panel-window.c
+++ b/panel/panel-window.c
@@ -53,6 +53,7 @@
 #define SET_OLD_WM_STRUTS     (FALSE)
 #define DEFAULT_POPUP_DELAY   (225)
 #define DEFAULT_POPDOWN_DELAY (350)
+#define DEFAULT_ATUOHIDE_SIZE (3)
 #define HANDLE_SPACING        (4)
 #define HANDLE_DOTS           (2)
 #define HANDLE_PIXELS         (2)
@@ -269,6 +270,7 @@ struct _PanelWindow
   guint                autohide_timeout_id;
   gint                 autohide_block;
   gint                 autohide_grab_block;
+  gint                 autohide_size;
 
   /* popup/down delay from gtk style */
   gint                 popup_delay;
@@ -408,6 +410,14 @@ panel_window_class_init (PanelWindowClass *klass)
                                                              DEFAULT_POPDOWN_DELAY,
                                                              EXO_PARAM_READABLE));
 
+  gtk_widget_class_install_style_property (gtkwidget_class,
+                                           g_param_spec_int ("autohide-size",
+                                                             NULL,
+                                                             "Size of hidden panel",
+                                                             1, G_MAXINT,
+                                                             DEFAULT_ATUOHIDE_SIZE,
+                                                             EXO_PARAM_READABLE));
+
   /* initialize the atoms */
   cardinal_atom = gdk_atom_intern_static_string ("CARDINAL");
   net_wm_strut_partial_atom = gdk_atom_intern_static_string ("_NET_WM_STRUT_PARTIAL");
@@ -436,6 +446,7 @@ panel_window_init (PanelWindow *window)
   window->autohide_timeout_id = 0;
   window->autohide_block = 0;
   window->autohide_grab_block = 0;
+  window->autohide_size = DEFAULT_ATUOHIDE_SIZE;
   window->popup_delay = DEFAULT_POPUP_DELAY;
   window->popdown_delay = DEFAULT_POPDOWN_DELAY;
   window->base_x = -1;
@@ -1152,7 +1163,7 @@ panel_window_size_allocate (GtkWidget     *widget,
       window->alloc.x = window->alloc.y = -9999;
 
       /* set hidden window size */
-      w = h = 3;
+      w = h = window->autohide_size;
 
       switch (window->snap_position)
         {
@@ -1388,6 +1399,7 @@ panel_window_style_set (GtkWidget *widget,
   gtk_widget_style_get (GTK_WIDGET (widget),
                         "popup-delay", &window->popup_delay,
                         "popdown-delay", &window->popdown_delay,
+                        "autohide-size", &window->autohide_size,
                         NULL);
 }
 



More information about the Xfce4-commits mailing list