nautilus r14563 - in trunk: . libnautilus-private
- From: cneumair svn gnome org
- To: svn-commits-list gnome org
- Subject: nautilus r14563 - in trunk: . libnautilus-private
- Date: Mon, 1 Sep 2008 15:40:33 +0000 (UTC)
Author: cneumair
Date: Mon Sep 1 15:40:32 2008
New Revision: 14563
URL: http://svn.gnome.org/viewvc/nautilus?rev=14563&view=rev
Log:
2008-09-01 Christian Neumair <cneumair gnome org>
* libnautilus-private/nautilus-icon-container.c
(nautilus_icon_container_scroll_to_icon):
Also reveal entire rows/columns, and ensure a nice padding around icons.
Modified:
trunk/ChangeLog
trunk/libnautilus-private/nautilus-icon-container.c
Modified: trunk/libnautilus-private/nautilus-icon-container.c
==============================================================================
--- trunk/libnautilus-private/nautilus-icon-container.c (original)
+++ trunk/libnautilus-private/nautilus-icon-container.c Mon Sep 1 15:40:32 2008
@@ -6471,9 +6471,8 @@
GList *l;
NautilusIcon *icon;
GtkAdjustment *hadj, *vadj;
- int x, y;
- double x1, y1, x2, y2;
EelCanvasItem *item;
+ EelIRect bounds;
hadj = gtk_layout_get_hadjustment (GTK_LAYOUT (container));
vadj = gtk_layout_get_vadjustment (GTK_LAYOUT (container));
@@ -6488,26 +6487,20 @@
if (icon->data == data &&
icon_is_positioned (icon)) {
+
item = EEL_CANVAS_ITEM (icon->item);
- eel_canvas_item_get_bounds (item,
- &x1, &y1, &x2, &y2);
- eel_canvas_item_i2w (item->parent,
- &x1,
- &y1);
- eel_canvas_w2c (item->canvas,
- x1, y1,
- &x, &y);
- if (nautilus_icon_container_is_layout_vertical (container)) {
- x -= ICON_PAD_LEFT;
- x = MAX (0, x);
+ if (nautilus_icon_container_is_auto_layout (container)) {
+ /* ensure that we reveal the entire row/column */
+ icon_get_row_and_column_bounds (container, icon, &bounds, TRUE);
+ } else {
+ item_get_canvas_bounds (EEL_CANVAS_ITEM (icon->item), &bounds, TRUE);
+ }
- eel_gtk_adjustment_set_value (hadj, x);
+ if (nautilus_icon_container_is_layout_vertical (container)) {
+ eel_gtk_adjustment_set_value (hadj, bounds.x0);
} else {
- y -= ICON_PAD_TOP;
- y = MAX (0, y);
-
- eel_gtk_adjustment_set_value (vadj, y);
+ eel_gtk_adjustment_set_value (vadj, bounds.x0);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]