summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Neumair <cneumair@gnome.org>2008-09-01 15:34:56 +0000
committerChristian Neumair <cneumair@src.gnome.org>2008-09-01 15:34:56 +0000
commit88a6b10dac962ca8b204169e88614c8b867a3174 (patch)
tree5596ae5c79a2fcd7185c79159a0996c784739498
parent6f962d159f326467a55e8fee83b4678904eec3ce (diff)
downloadnautilus-88a6b10dac962ca8b204169e88614c8b867a3174.tar.gz
Fix RTL scroll region calculation.
2008-09-01 Christian Neumair <cneumair@gnome.org> * libnautilus-private/nautilus-icon-container.c (nautilus_icon_container_update_scroll_region): Fix RTL scroll region calculation. svn path=/trunk/; revision=14562
-rw-r--r--ChangeLog6
-rw-r--r--libnautilus-private/nautilus-icon-container.c16
2 files changed, 19 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 1d904d7fe..ad5402ba7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2008-09-01 Christian Neumair <cneumair@gnome.org>
+ * libnautilus-private/nautilus-icon-container.c
+ (nautilus_icon_container_update_scroll_region):
+ Fix RTL scroll region calculation.
+
+2008-09-01 Christian Neumair <cneumair@gnome.org>
+
* libnautilus-private/nautilus-icon-container.c (key_press_event):
Reset event window before freeing event.
diff --git a/libnautilus-private/nautilus-icon-container.c b/libnautilus-private/nautilus-icon-container.c
index 909afe709..d1f42c08d 100644
--- a/libnautilus-private/nautilus-icon-container.c
+++ b/libnautilus-private/nautilus-icon-container.c
@@ -1073,8 +1073,14 @@ nautilus_icon_container_update_scroll_region (NautilusIconContainer *container)
/* Auto-layout assumes a 0, 0 scroll origin */
if (nautilus_icon_container_is_auto_layout (container)) {
- x1 = 0;
- y1 = 0;
+ if (nautilus_icon_container_is_layout_rtl (container)) {
+ allocation = &GTK_WIDGET (container)->allocation;
+ x2 = allocation->width;
+ y2 = allocation->height;
+ } else {
+ x1 = 0;
+ y1 = 0;
+ }
} else {
x1 -= CONTAINER_PAD_LEFT;
y1 -= CONTAINER_PAD_TOP;
@@ -1092,7 +1098,11 @@ nautilus_icon_container_update_scroll_region (NautilusIconContainer *container)
* which does not need a bottom border.
*/
if (nautilus_icon_container_is_layout_vertical (container)) {
- x2 += ICON_PAD_RIGHT + CONTAINER_PAD_RIGHT;
+ if (nautilus_icon_container_is_layout_rtl (container)) {
+ x1 -= ICON_PAD_RIGHT + CONTAINER_PAD_RIGHT;
+ } else {
+ x2 += ICON_PAD_RIGHT + CONTAINER_PAD_RIGHT;
+ }
} else {
y2 += ICON_PAD_BOTTOM + CONTAINER_PAD_BOTTOM;
}