[gtk+] Gail: Take fill/page size into account when returning a range's maximum value



commit da0975d5f24d775ac4a03dc100bd61a2be01d69b
Author: Mike Gorse <mgorse novell com>
Date:   Fri Sep 10 06:09:41 2010 -0400

    Gail: Take fill/page size into account when returning a range's maximum value

 modules/other/gail/gailrange.c |   17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)
---
diff --git a/modules/other/gail/gailrange.c b/modules/other/gail/gailrange.c
index 65fd89a..07b6d75 100644
--- a/modules/other/gail/gailrange.c
+++ b/modules/other/gail/gailrange.c
@@ -190,6 +190,9 @@ gail_range_get_maximum_value (AtkValue		*obj,
                               GValue		*value)
 {
   GailRange *range;
+  GtkRange *gtk_range;
+  GtkAdjustment *gtk_adjustment;
+  gdouble max = 0;
 
   g_return_if_fail (GAIL_IS_RANGE (obj));
 
@@ -199,8 +202,20 @@ gail_range_get_maximum_value (AtkValue		*obj,
      * Adjustment has not been specified
      */
     return;
-
+ 
   atk_value_get_maximum_value (ATK_VALUE (range->adjustment), value);
+
+  gtk_range = GTK_RANGE (gtk_accessible_get_widget (GTK_ACCESSIBLE (range)));
+  g_return_if_fail (gtk_range);
+
+  gtk_adjustment = gtk_range_get_adjustment (gtk_range);
+  max = g_value_get_double (value);
+  max -=  gtk_adjustment_get_page_size (gtk_adjustment);
+
+  if (gtk_range_get_restrict_to_fill_level (gtk_range))
+    max = MIN (max, gtk_range_get_fill_level (gtk_range));
+
+  g_value_set_double (value, max);
 }
 
 static void	 



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