Index: libnautilus-private/nautilus-icon-canvas-item.c
===================================================================
--- libnautilus-private/nautilus-icon-canvas-item.c	(Revision 14453)
+++ libnautilus-private/nautilus-icon-canvas-item.c	(Arbeitskopie)
@@ -385,6 +385,7 @@ nautilus_icon_canvas_item_set_property (
 			return;
 		}
 		details->is_highlighted_for_selection = g_value_get_boolean (value);
+		nautilus_icon_canvas_item_invalidate_label_size (item);
 		break;
          
         case PROP_HIGHLIGHTED_AS_KEYBOARD_FOCUS:
@@ -1024,6 +1025,11 @@ draw_or_measure_label_text (NautilusIcon
 
 	if (have_editable) {
 		editable_layout = get_label_layout (&details->editable_text_layout, item, details->editable_text);
+		if (needs_highlight) {
+			pango_layout_set_height (editable_layout, G_MININT);
+		} else {
+			pango_layout_set_height (editable_layout, -3);
+		}
 		layout_get_full_size (editable_layout, &editable_width, &editable_height, &editable_dx);
 	}
 
@@ -1866,6 +1872,7 @@ create_label_layout (NautilusIconCanvasI
 		pango_layout_set_width (layout, -1);
 	} else {
 		pango_layout_set_width (layout, floor (nautilus_icon_canvas_item_get_max_text_width (item)) * PANGO_SCALE);
+		pango_layout_set_ellipsize (layout, PANGO_ELLIPSIZE_END);
 	}
 			
 	pango_layout_set_auto_dir (layout, FALSE);
