gnome-panel r11285 - trunk/gnome-panel



Author: vuntz
Date: Tue Sep  9 00:06:02 2008
New Revision: 11285
URL: http://svn.gnome.org/viewvc/gnome-panel?rev=11285&view=rev

Log:
2008-09-09  Vincent Untz  <vuntz gnome org>

	Revert the auto-hide behavior change that got introduced in 2.23.6.
	It was annoying for users.

	* panel-toplevel.c: (panel_toplevel_get_effective_auto_hide_size): new
	function, to know the effective auto hide size
	(panel_toplevel_update_struts): use
	panel_toplevel_get_effective_auto_hide_size() for the strut
	(panel_toplevel_update_auto_hide_position): use
	panel_toplevel_get_effective_auto_hide_size() now


Modified:
   trunk/gnome-panel/ChangeLog
   trunk/gnome-panel/panel-toplevel.c

Modified: trunk/gnome-panel/panel-toplevel.c
==============================================================================
--- trunk/gnome-panel/panel-toplevel.c	(original)
+++ trunk/gnome-panel/panel-toplevel.c	Tue Sep  9 00:06:02 2008
@@ -1355,6 +1355,22 @@
 	return TRUE;
 }
 
+static inline int
+panel_toplevel_get_effective_auto_hide_size (PanelToplevel *toplevel)
+{
+	int size;
+
+	if (toplevel->priv->orientation & PANEL_HORIZONTAL_MASK)
+		size = CLAMP (toplevel->priv->auto_hide_size,
+			      1, toplevel->priv->original_height / 2);
+	else
+		size = CLAMP (toplevel->priv->auto_hide_size,
+			      1, toplevel->priv->original_width / 2);
+
+	/* paranoia */
+	return (size <= 0) ? DEFAULT_AUTO_HIDE_SIZE : size;
+}
+
 static gboolean
 panel_toplevel_update_struts (PanelToplevel *toplevel, gboolean end_of_animation)
 {
@@ -1439,6 +1455,9 @@
 		g_object_notify (G_OBJECT (toplevel), "orientation");
 	}
 
+	if (toplevel->priv->auto_hide && strut > 0)
+		strut = panel_toplevel_get_effective_auto_hide_size (toplevel);
+
 	if (strut > 0)
 		geometry_changed = panel_struts_register_strut (toplevel,
 								screen,
@@ -1809,16 +1828,7 @@
 	snap_tolerance = toplevel->priv->snap_tolerance;
 
 	if (toplevel->priv->initial_animation_done) {
-		if (toplevel->priv->orientation & PANEL_HORIZONTAL_MASK)
-			auto_hide_size = CLAMP (toplevel->priv->auto_hide_size,
-						1, height / 2);
-		else
-			auto_hide_size = CLAMP (toplevel->priv->auto_hide_size,
-						1, width / 2);
-
-		/* paranoia */
-		if (auto_hide_size <= 0)
-			auto_hide_size = DEFAULT_AUTO_HIDE_SIZE;
+		auto_hide_size = panel_toplevel_get_effective_auto_hide_size (toplevel);
 	} else {
 		/* when loading, we animate from outside the screen */
 		auto_hide_size = 0;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]