summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <maclas@gmx.de>2003-12-12 23:40:58 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2003-12-12 23:40:58 +0000
commit802e094bd3500fa9a0f9591b5347346a5d3e2efc (patch)
tree2168b7780f61feee354c26d2773c85255f82b694
parent375ccb28b329d28453b9cf8de66be7d000640736 (diff)
downloadgdk-pixbuf-802e094bd3500fa9a0f9591b5347346a5d3e2efc.tar.gz
Implement "gravity" for RTL mode in a better way: Keep the distance from
Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de> * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement "gravity" for RTL mode in a better way: Keep the distance from the upper end of the page to the upper bound constant. This also fixes problems with the initial position of the viewport in RTL mode. (#129063)
-rw-r--r--ChangeLog8
-rw-r--r--ChangeLog.pre-2-108
-rw-r--r--ChangeLog.pre-2-48
-rw-r--r--ChangeLog.pre-2-68
-rw-r--r--ChangeLog.pre-2-88
-rw-r--r--gtk/gtkviewport.c8
6 files changed, 46 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a33f30f41..51942c8b3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
+ "gravity" for RTL mode in a better way: Keep the distance from
+ the upper end of the page to the upper bound constant. This also
+ fixes problems with the initial position of the viewport in RTL
+ mode. (#129063)
+
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index a33f30f41..51942c8b3 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,11 @@
+Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
+ "gravity" for RTL mode in a better way: Keep the distance from
+ the upper end of the page to the upper bound constant. This also
+ fixes problems with the initial position of the viewport in RTL
+ mode. (#129063)
+
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index a33f30f41..51942c8b3 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,11 @@
+Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
+ "gravity" for RTL mode in a better way: Keep the distance from
+ the upper end of the page to the upper bound constant. This also
+ fixes problems with the initial position of the viewport in RTL
+ mode. (#129063)
+
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index a33f30f41..51942c8b3 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,11 @@
+Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
+ "gravity" for RTL mode in a better way: Keep the distance from
+ the upper end of the page to the upper bound constant. This also
+ fixes problems with the initial position of the viewport in RTL
+ mode. (#129063)
+
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index a33f30f41..51942c8b3 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,11 @@
+Sat Dec 13 00:39:24 2003 Matthias Clasen <maclas@gmx.de>
+
+ * gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
+ "gravity" for RTL mode in a better way: Keep the distance from
+ the upper end of the page to the upper bound constant. This also
+ fixes problems with the initial position of the viewport in RTL
+ mode. (#129063)
+
Fri Dec 12 21:00:12 2003 Kristian Rietveld <kris@gtk.org>
Combo box flipping support.
diff --git a/gtk/gtkviewport.c b/gtk/gtkviewport.c
index 4977865ff..084a7a00b 100644
--- a/gtk/gtkviewport.c
+++ b/gtk/gtkviewport.c
@@ -383,10 +383,14 @@ viewport_set_hadjustment_values (GtkViewport *viewport,
GtkAllocation view_allocation;
GtkAdjustment *hadjustment = gtk_viewport_get_hadjustment (viewport);
gdouble old_page_size;
+ gdouble old_upper;
+ gdouble old_value;
viewport_get_view_allocation (viewport, &view_allocation);
old_page_size = hadjustment->page_size;
+ old_upper = hadjustment->upper;
+ old_value = hadjustment->value;
hadjustment->page_size = view_allocation.width;
hadjustment->step_increment = view_allocation.width * 0.1;
hadjustment->page_increment = view_allocation.width * 0.9;
@@ -405,8 +409,8 @@ viewport_set_hadjustment_values (GtkViewport *viewport,
if (gtk_widget_get_direction (GTK_WIDGET (viewport)) == GTK_TEXT_DIR_RTL)
{
- gdouble old_value = hadjustment->value;
- hadjustment->value = hadjustment->value + old_page_size - hadjustment->page_size;
+ gdouble dist = old_upper - (old_value + old_page_size);
+ hadjustment->value = hadjustment->upper - dist - hadjustment->page_size;
viewport_reclamp_adjustment (hadjustment, value_changed);
*value_changed = (old_value != hadjustment->value);
}