Skip to content
  • Christian Neumair's avatar
    No more overlapping desktop icons. · 40c79aec
    Christian Neumair authored
    2008-08-24  Christian Neumair  <cneumair@gnome.org>
    
    	* libnautilus-private/nautilus-directory.c
    	(nautilus_directory_schedule_position_set):
    	* libnautilus-private/nautilus-file.c (get_time_from_time_string),
    	(nautilus_file_get_time_metadata),
    	(nautilus_file_set_time_metadata):
    	* libnautilus-private/nautilus-file.h:
    	* libnautilus-private/nautilus-icon-container.c
    	(lay_down_icons_vertical_desktop),
    	(nautilus_icon_container_class_init),
    	(nautilus_icon_container_instance_init),
    	(nautilus_icon_container_clear), (finish_adding_new_icons),
    	(is_old_or_unknown_icon_data), (nautilus_icon_container_add),
    	(nautilus_icon_container_begin_loading),
    	(store_layout_timestamps_now),
    	(nautilus_icon_container_end_loading),
    	(nautilus_icon_container_get_store_layout_timestamps),
    	(nautilus_icon_container_set_store_layout_timestamps):
    	* libnautilus-private/nautilus-icon-container.h:
    	* libnautilus-private/nautilus-icon-dnd.c (handle_local_move):
    	* libnautilus-private/nautilus-icon-private.h:
    	* libnautilus-private/nautilus-metadata.h:
    	* src/file-manager/fm-desktop-icon-view.c
    	(fm_desktop_icon_view_init):
    	* src/file-manager/fm-directory-view.c (done_loading),
    	(display_pending_files), (fm_directory_view_end_loading),
    	(fm_directory_view_stop), (fm_directory_view_class_init):
    	* src/file-manager/fm-directory-view.h:
    	* src/file-manager/fm-icon-view.c (fm_icon_view_add_file),
    	(fm_icon_view_begin_loading), (fm_icon_view_end_loading),
    	(fm_icon_view_screen_changed), (get_stored_layout_timestamp),
    	(store_layout_timestamp), (create_icon_container):
    	No more overlapping desktop icons.
    
    	Implement a layout timestamp concept where each file on the desktop
    	and the desktop directory itself is timestamped when a full layout
    	happened. Iff files were not part of the last layout (or added more
    	recently, through DND), they are treated as being “semi-positioned“
    	(cf. 2005-11-07).
    	This means that they may be freely shifted around, starting from their
    	last position, until they don't overlap and fully laid out items.
    	Should inter alia fix #330298.
    
    svn path=/trunk/; revision=14519
    40c79aec