1. 18 Feb, 2000 1 commit
    • Darin Adler's avatar
      Hand tuned icons for multiple resolutions. · 3bce71a5
      Darin Adler authored
      	So for example you can have an icon designed for the 96x96
      	size, which is called i-directory-96.png, and it will be
      	loaded instead of loading i-directory.png and scaling it.
      
      	* libnautilus/nautilus-icon-factory.c:
      	(nautilus_icon_factory_get_icon_name_for_regular_file),
      	(add_size_to_icon_name), (nautilus_icon_factory_load_icon),
      	(nautilus_icon_factory_create_image_for_item),
      	(get_larger_icon_size), (get_smaller_icon_size),
      	(get_next_icon_size_to_try), (load_specific_image),
      	(load_image_for_scaling), (load_image_scale_if_necessary),
      	(nautilus_icon_factory_mark_recently_used), (mark_recently_used),
      	(nautilus_icon_factory_get_pixbuf_for_icon),
      	(get_image_from_cache), (nautilus_icon_factory_scale): Changed the
      	icon factory so it will look for icons of multiple resolutions and
      	scale the nearest. Also made other improvements including sharing
      	a single fallback icon instead of making multiple ones, using the
      	"core-dump" icon for files named "core", adding some additional
      	g_return_if_fail.
      
      	* libnautilus/nautilus-icon-factory.c:
      	(self_test_next_icon_size_to_try),
      	(nautilus_self_check_icon_factory):
      	* libnautilus/nautilus-lib-self-check-functions.h:
      	The new code needed a bit of self-check code, so I added it.
      
      	* libnautilus/nautilus-directory.c:
      	(nautilus_directory_try_to_read_metafile),
      	(nautilus_directory_construct_alternate_metafile_uri):
      	Since "make check" was failing, I checked to see what was wrong.
      	The code that was respecting the new "valid_fields" part of
      	GnomeVFSFileInfo was looking at the wrong field (flags instead
      	of valid_fields), which caused all metafile reading to fail.
      	While debugging this, I noticed that the alternate metafiles
      	had particularly bad long names, so I fixed that too.
      
      	* libnautilus/nautilus-directory.c: (nautilus_file_ref):
      	* libnautilus/nautilus-glib-extensions.c:
      	(nautilus_strdup_strftime):
      	* libnautilus/nautilus-string.c: (nautilus_string_to_int):
      	Switched from using <limits.h> constants to the ones from
      	<glib.h>. I have no idea why I made this change. All hail
      	glib! C Standard be damned!
      
      	* fm-directory-view.c:
      	(use_eazel_theme_icons_cb), (add_menu_item),
      	(fm_directory_view_real_append_background_context_menu_items):
      	Started on a user interface to switch to the Eazel theme
      	icons so you can see the multiple-resolution icons, but
      	I wanted to check in, so I stopped before it was done.
      
      	* src/nautilus-index-title.c:
      	Reindented Andy's new code to match the emacs mode header.
      
      	* configure.in:
      	* icons/Makefile.am:
      	* icons/eazel/.cvsignore:
      	* icons/eazel/Makefile.am:
      	* icons/eazel/i-directory-24.png:
      	* icons/eazel/i-directory-36.png:
      	* icons/eazel/i-directory-72.png:
      	* icons/eazel/i-directory-96.png:
      	* icons/eazel/i-directory.png:
      	I needed some variable-size icons to demonstrate the multiple
      	resolution support in the icon factory, so I added a few
      	directory icons from gnomad. Since these don't match the other
      	icons, I made them part of an "eazel" icons theme.
      
      	* RENAMING: Some new name ideas.
      3bce71a5
  2. 16 Feb, 2000 1 commit
    • Darin Adler's avatar
      Added icon stretching and did some cleanups. · 9b94323c
      Darin Adler authored
      	Stretched icons aren't yet persistent (the scale factor is not
      	saved in metadata), but that's not much more work.
      
      	* libnautilus/gnome-icon-container-private.h:
      	* libnautilus/gnome-icon-container.h:
      	* libnautilus/gnome-icon-container.c: (icon_new), (icon_position),
      	(icon_set_position), (icon_get_size), (icon_set_size),
      	(icon_toggle_selected), (icon_select), (icon_set_selected),
      	(button_press_event), (gnome_icon_container_begin_stretch),
      	(start_stretching), (gnome_icon_container_stretch),
      	(continue_stretching), (gnome_icon_container_end_stretch),
      	(end_stretching), (button_release_event), (motion_notify_event),
      	(handle_icon_button_press), (gnome_icon_container_clear),
      	(request_update_one), (update_icon), (get_first_selected_icon),
      	(gnome_icon_container_show_stretch_handles),
      	(gnome_icon_container_has_stretch_handles),
      	(gnome_icon_container_is_stretched),
      	(gnome_icon_container_unstretch), (compute_stretch),
      	(nautilus_self_check_compute_stretch),
      	(nautilus_self_check_gnome_icon_container):
      	* libnautilus/nautilus-icons-view-icon-item.h:
      	* libnautilus/nautilus-icons-view-icon-item.c:
      	(nautilus_icons_view_icon_item_draw),
      	(nautilus_icons_view_icon_item_point),
      	(nautilus_icons_view_icon_item_set_show_stretch_handles),
      	(nautilus_icons_view_icon_item_get_hit_stretch_handle):
      	* libnautilus/nautilus-lib-self-check-functions.h:
      	Added machinery for stretching icons.
      
      	* src/file-manager/fm-directory-view.h:
      	* src/file-manager/fm-directory-view.c:
      	(append_item_context_menu_items),
      	(fm_directory_view_real_append_item_context_menu_items),
      	(fm_directory_view_initialize_class), (create_item_context_menu):
      	Added machinery for views to have view-specific menu items for
      	icons as well as for the window as a whole.
      
      	* src/file-manager/fm-directory-view-icons.c:
      	(fm_directory_view_icons_initialize_class),
      	(fm_directory_view_icons_append_item_context_menu_items),
      	(show_stretch_handles_cb), (unstretch_item_cb):
      	Added menu items for stretching icons.
      
      	* libnautilus/gnome-icon-container.c: (start_rubberbanding):
      	Fixed bug that would result in two rubberband timeouts at
      	once if you did rubberbanding quickly.
      
      	* components/notes/.cvsignore: Andy's new component needs a
      	.cvsignore file for its generated pieces.
      
      	* libnautilus/nautilus-directory.c:
      	(nautilus_directory_try_to_read_metafile),
      	(nautilus_directory_read_metafile):
      	Simplified logic in metafile-reading functions and fixed a bug
      	where the vfs handle would be left open if certain categories
      	of errors occurred.
      
      	* libnautilus/nautilus-gtk-extensions.h:
      	Added a missing gtk_marshal function.
      
      	* libnautilus/nautilus-icon-factory.h:
      	* libnautilus/nautilus-icon-factory.c:
      	(nautilus_icon_size_for_zoom_level),
      	(nautilus_get_icon_size_for_zoom_level),
      	(nautilus_icon_factory_get_pixbuf_for_file),
      	(nautilus_icon_factory_get_pixmap_and_mask_for_file):
      	* src/nautilus-index-title.c: (nautilus_index_title_set_up_icon):
      	* src/nautilus-zoom-control.c: (set_zoom_level):
      	* src/file-manager/fm-directory-view-list.c:
      	(fm_directory_view_list_bump_zoom_level), (install_icon):
      	Made some API improvements for the icon factory. Added a missing
      	get_ to the name nautilus_get_icon_size_for_zoom_level and added
      	convenience functions for the most common uses of the factory.
      
      	* libnautilus/ntl-content-view-frame.c:
      	* libnautilus/ntl-meta-view-frame.c:
      	* libnautilus/ntl-view-frame.c:
      	Weaned all the files in libnautilus itself from using the
      	libnautilus.h include file. They instead include the parts that
      	they need. Also added some missing <config.h> includes.
      9b94323c
  3. 15 Feb, 2000 2 commits
  4. 11 Feb, 2000 1 commit
  5. 08 Feb, 2000 1 commit
  6. 01 Feb, 2000 1 commit
    • Elliot Lee's avatar
      If an error happens, we need to reset the location bar to current · e1231238
      Elliot Lee authored
      
      
      * src/ntl-window-msgs.c: If an error happens, we need to reset the
      location bar to current location, in case the location change
      happened via a drop on the location bar.
      
      * src/file-manager/fm-directory-view.c: Consensus is to use
      individual headers rather than catch-alls.
      
      * libnautilus/gnome-icon-container-dnd.c,
      libnautilus/nautilus-icons-view-icon-item.c,
      libnautilus/nautilus-icon-factory.c: Use bilinear scaling - almost
      as fast, much nicer looking.
      e1231238
  7. 31 Jan, 2000 4 commits
    • John Sullivan's avatar
    • Andy Hertzfeld's avatar
      implemented the "select all" command in the context menu · bc177a67
      Andy Hertzfeld authored
      
             implemented the "select all" command in the context menu
      bc177a67
    • Elliot Lee's avatar
      Update debugging messages. Allow synchronous state changes (needed to · 36e8d6ca
      Elliot Lee authored
      
      
      * src/ntl-window-msgs.c, src/ntl-window-private.h: Update debugging messages. Allow
      synchronous state changes (needed to avoid race conditions), and
      don't reset the idle handler if the idle handler is already running.
      
      * src/file-manager/fm-directory-view.c: Include
      <libnautilus/libnautilus.h> rather than just
      <libnautilus/nautilus-alloc.h> - nitpick in passing.
      
      * src/ntl-uri-map.c: OK, don't check for NULL here, in an attempt to flush out bugs elsewhere.
      Let me know of any problems that show up because of this.
      36e8d6ca
    • Darin Adler's avatar
      Changed it to not attempt to create a GC just to measure the text. This · 58a9b33c
      Darin Adler authored
      	* nautilus-icons-view-icon-item.c:
      	(nautilus_icons_view_draw_text_box):
      	Changed it to not attempt to create a GC just to measure the text.
      	This makes it work when the widget is not realized.
      
      	* nautilus-icons-view-icon-item.h:
      	nautilus-icons-view-icon-item.c:
      	gnome-icon-container-dnd.c:
      	(nautilus_icons_view_icon_item_center_offset):
      	Changed the parameter type to NautilusIconsViewIconItem.
      
      	* fm-directory-view.c:
      	(stop_load):
      	(fm_directory_view_load_uri):
      	Fixed code so that if you stop loading more than once, or
      	stop before you even start, it won't send extra progress
      	requests to the Nautilus shell or call stop_monitoring
      	extra times on the NautilusDirectory object.
      
      	* nautilus-icons-view-icon-item.h:
      	nautilus-icons-view-icon-item.c:
      	gnome-icon-container-dnd.c:
      	Quick cleanup of the new NautilusIconsViewIconItem class.
      
      	* libnautilus/gdk-extensions.c:
      	libnautilus/gnome-icon-container-dnd.c:
      	libnautilus/gnome-icon-container.c:
      	libnautilus/gtkflist.c:
      	libnautilus/nautilus-background-canvas-group.c:
      	libnautilus/nautilus-background.c:
      	libnautilus/nautilus-debug.c:
      	libnautilus/nautilus-default-file-icon.c:
      	libnautilus/nautilus-directory.c:
      	libnautilus/nautilus-icon-factory.c:
      	libnautilus/nautilus-icons-controller.c:
      	libnautilus/nautilus-icons-view-icon-item.c:
      	libnautilus/nautilus-lib-self-check-functions.c:
      	libnautilus/nautilus-self-checks.c:
      	libnautilus/nautilus-string.c:
      	src/explorer-location-bar.c:
      	src/file-manager/dfos-corba.c:
      	src/file-manager/dfos-xfer-progress-dialog.c:
      	src/file-manager/dfos-xfer.c:
      	src/file-manager/dfos.c:
      	src/file-manager/fm-directory-view-icons.c:
      	src/file-manager/fm-directory-view-list.c:
      	src/file-manager/fm-directory-view.c:
      	src/file-manager/fm-icons-controller.c:
      	src/file-manager/fm-main.c:
      	src/nautilus-self-check-functions.c:
      	src/ntl-index-panel.c:
      	Got rid of #ifdef HAVE_CONFIG_H. Elliot says that we must always
      	include <config.h>, but there's no reason to include that ifdef
      	since we don't plan on building without a <config.h> ever.
      58a9b33c
  8. 30 Jan, 2000 3 commits
    • Darin Adler's avatar
      NautilusDirectory is now in charge of loading directories. · 7c7932a8
      Darin Adler authored
      	FMDirectoryView has been relieved of that responsibility.
      
      	* nautilus-directory.h:
      	nautilus-directory.c:
      	(nautilus_directory_start_monitoring):
      	(nautilus_directory_stop_monitoring):
      	(nautilus_directory_is_ready_for_layout):
      	(nautilus_directory_new_file):
      	(nautilus_directory_are_all_files_seen):
      	Added monitoring API that's used to read the contents of
      	a directory. Made nautilus_directory_new_file private since
      	we now use the monitoring API instead.
      
      	* fm-directory-view.c:
      	(fm_directory_view_initialize):
      	(stop_load):
      	(display_pending_entries):
      	(display_pending_files):
      	(display_pending_idle_cb):
      	(display_timeout_cb):
      	(display_pending_timeout_cb):
      	(directory_load_cb):
      	(schedule_idle_display_of_pending_files):
      	(schedule_timeout_display_of_pending_files):
      	(unschedule_idle_display_of_pending_files):
      	(unschedule_timeout_display_of_pending_files):
      	(unschedule_display_of_pending_files):
      	(add_files_cb):
      	(fm_directory_view_activate_entry):
      	(fm_directory_view_load_uri):
      	(disconnect_model_handlers):
      	(fm_directory_view_stop):
      	Changed to use monitoring instead of directly calling
      	gnome_vfs_async_load_directory directly.
      
      	* fm-directory-view.c:
      	(update_zoom_menu_items):
      	(zoom_in_cb):
      	(zoom_out_cb):
      	(pop_up_context_menu):
      	(pop_up_temporary_context_menu):
      	(append_background_items):
      	(create_background_context_menu):
      	(fm_directory_view_popup_item_context_menu):
      	(fm_directory_view_popup_background_context_menu):
      	Changed to re-created background menu each time instead of
      	keeping a single global menu up to date. This is simpler, and
      	the imperceptible additional delay from recreating the menu
      	each time should not be a problem.
      
      	* ntl-window.c:	(nautilus_window_up):
      	ntl-map.c: (nautilus_navinfo_new):
      	Handle the case where the current URI is NULL.
      
      	* fm-directory-view-icons.c: (create_icon_container):
      	Removed the leftover puts calls in here.
      	This gets rid of "A", "B", "C" on each start of nautilus.
      7c7932a8
    • John Sullivan's avatar
      Added can_zoom_in and can_zoom_out, and made item context menu disable · d1404606
      John Sullivan authored
      Zoom In and Zoom Out correctly.
      d1404606
    • Andy Hertzfeld's avatar
      made fonts scale according to zoom level enabled/disabled zoom items in · dd8153b2
      Andy Hertzfeld authored
      
           	made fonts scale according to zoom level
      	enabled/disabled zoom items in context menu as necessary
      dd8153b2
  9. 28 Jan, 2000 1 commit
  10. 27 Jan, 2000 3 commits
  11. 26 Jan, 2000 2 commits
  12. 25 Jan, 2000 1 commit
    • Maciej Stachowiak's avatar
      New functions for subclasses to call, to implement right-click menus. Most · f0e4c44c
      Maciej Stachowiak authored
      	* src/file-manager/fm-directory-view.c,
      	src/file-manager/fm-directory-view.h
      	(fm_directory_view_popup_item_context_menu,
      	fm_directory_view_popup_background_context_menu): New functions
      	for subclasses to call, to implement right-click menus. Most of
      	the guts are here now. Machinery to merge view-specific items with
      	generic ones will be added here.
      	* src/file-manager/fm-directory-view-icons.c,
      	src/file-manager/fm-directory-view-list.c: Use the new interface
      	for right-click stuff.
      f0e4c44c
  13. 24 Jan, 2000 1 commit
    • Darin Adler's avatar
      Added a controller object that lets GnomeIconContainer · c8853690
      Darin Adler authored
      	ask questions and perform actions, even though only the
      	FMDirectoryViewIcons knows how to answer the questions
      	and perform the actions.
      
      	Replaced use of nautilus_file_get_info with specific
      	accessors for various file info.
      
      	* libnautilus/Makefile.am:
      	libnautilus/nautilus-icons-controller.h:
      	libnautilus/nautilus-icons-controller.c:
      	libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container.h:
      	libnautilus/gnome-icon-container.c:
      	(icon_new_pixbuf):
      	(gnome_icon_container_new):
      	(gnome_icon_container_add):
      	(gnome_icon_container_add_auto):
      	Added NautilusIconsController, an interface provided so that the
      	file manager can connect the icons up with the file code. This is
      	all so we can keep the view/controller separation. This eliminates
      	the need to pass around the icon name all the time, so the signals
      	have changed to not take the icon name as a parameter.
      
      	* src/file-manager/Makefile.am:
      	src/file-manager/fm-icons-controller.c:
      	src/file-manager/fm-icons-controller.h:
      	Added FMIconsController, the actual controller used by the file
      	manager instance of GnomeIconContainer.
      	src/file-manager/fm-directory-view-icons.c:
      	(create_icon_container):
      	(add_icon_if_already_positioned):
      	(add_icon_at_free_position):
      	(icon_container_activate_cb):
      	(fm_directory_view_icons_icon_moved_cb):
      	Create and use the FMIconController.
      
      	* libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container-dnd.c:
      	(set_gnome_icon_list_selection):
      	(set_uri_list_selection):
      	libnautilus/gnome-icon-container.c:
      	(gnome_icon_container_set_base_uri):
      	src/file-manager/fm-directory-view-icons.c:
      	(set_up_base_uri):
      	(fm_directory_view_icons_begin_loading):
      	Get rid of the old base_uri technique for handling drags. Instead
      	the icon controller supplies URIs for icons when requested.
      
      	* RENAMING: Proposed that we use NautilusIconsView as the new name
      	for GnomeIconContainer instead of NautilusIconContainer.
      
      	* libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container.h:
      	libnautilus/gnome-icon-container.c:
      	(gnome_icon_container_initialize):
      	(handle_icon_enter_notify):
      	(handle_icon_leave_notify):
      	Renamed browser mode to linger selection mode.
      
      	* libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container.h:
      	libnautilus/gnome-icon-container.c:
      	(icon_configure):
      	(icon_position):
      	(change_icon_mode):
      	(gnome_icon_container_initialize):
      	(gnome_icon_container_set_icon_mode):
      	(gnome_icon_container_get_icon_mode):
      	src/file-manager/fm-directory-view-icons.c:
      	(fm_directory_view_icons_initialize):
      	Got rid of icon mode, since we won't be using it.
      
      	* libnautilus/gnome-icon-container-dnd.c:
      	(get_gnome_icon_list_selection):
      	Changed geometry parsing so it will not ignore extra characters
      	after the numeric geometry.
      	(gnome_icon_container_receive_dropped_icons):
      	The code here tried to work when dragging icons between windows,
      	but the implementation was actually only good within the same
      	window, so I modified it to check for that case.
      
      	* libnautilus/gnome-icon-container-dnd.c:
      	(create_selection_shadow):
      	(set_gnome_icon_list_selection):
      	libnautilus/gnome-icon-container.c:
      	(icon_position):
      	Renamed GNOME_ICON_CONTAINER_ICON_XOFFSET to
      	GNOME_ICON_CONTAINER_ICON_X_OFFSET and
      	GNOME_ICON_CONTAINER_ICON_YOFFSET to
      	GNOME_ICON_CONTAINER_ICON_Y_OFFSET. We use an underscore between
      	words in identifiers.
      
      	* libnautilus/gnome-icon-container.c:
      	(destroy):
      	Added code to remove timeouts and idles when the container is
      	destroyed.
      
      	* libnautilus/nautilus-directory.h:
      	libnautilus/nautilus-directory.c:
      	(nautilus_file_get_info):
      	Get rid of the direct call to get GnomeVFSFileInfo. All info is
      	accessed through individual functions.
      	(nautilus_file_get_size):
      	(nautilus_file_get_type):
      	(nautilus_file_get_mime_type):
      	(nautilus_file_is_executable):
      	(nautilus_file_is_symbolic_link):
      	Added new accessor functions as needed.
      	src/file-manager/fm-directory-view.c:
      	(display_selection_info):
      	src/file-manager/fm-icon-cache.c:
      	(fm_icon_cache_get_icon_set_for_file):
      	(fm_icon_cache_get_icon_for_file):
      	Change code to use the accessors instead of get_info.
      
      	* libnautilus/nautilus-gtk-macros.h:
      	(NAUTILUS_ASSIGN_MUST_OVERRIDE_SIGNAL):
      	Changed macro to take a class pointer of the right type instead
      	of taking both a casting macro name and a class pointer.
      	src/file-manager/fm-directory-view.c:
      	(fm_directory_view_initialize_class):
      	Changed existing uses of macro to match.
      
      	* src/file-manager/Makefile.am:
      	src/file-manager/fm-icon-cache.c:
      	src/file-manager/fm-default-file-icon.h:
      	src/file-manager/fm-default-file-icon.c:
      	Moved the default icon into its own file.
      c8853690
  14. 21 Jan, 2000 1 commit
    • Darin Adler's avatar
      Fixed double free that was causing lots of nasty errors in the file · 97ce483d
      Darin Adler authored
      	* src/file-manager/fm-directory-view.c:
      	(fm_directory_view_activate_entry):
      	Fixed double free that was causing lots of nasty errors in
      	the file manager.
      	(fm_directory_view_load_uri):
      	Made the old directory hang around a bit longer when loading
      	a new uri.
      	(display_selection_info):
      	(fm_directory_view_send_selection_change):
      	(display_selection_info_idle_cb):
      	Fixed a storage leak and broke out the selection change into
      	its own function instead of mixing it with the status line.
      	Also made the selection actually use URIs instead of just
      	names for the selected items.
      
      	* libnautilus/nautilus-directory.h:
      	libnautilus/nautilus-directory.c:
      	(nautilus_file_get_uri):
      	Added this function that gets a URI (rather than just a
      	leaf name).
      
      	* libnautilus/nautilus-directory.c:
      	(nautilus_directory_finalize):
      	(nautilus_self_check_directory):
      	Added more self checks and fixed a bug where a metadata
      	change would get lost if you delete the directory too soon
      	after making the change.
      97ce483d
  15. 20 Jan, 2000 3 commits
    • Elliot Lee's avatar
      Async notification of navinfo - now we just need an async get_file_info · e7df9b4e
      Elliot Lee authored
      
      
      * src/ntl-uri-map.c: Async notification of navinfo - now we just need an async get_file_info call.
      * src/ntl-view.[ch]: Better error handling.
      * src/file-manager/fm-directory-view.c (display_selection_info): Send a 'selection change' request.
      * src/ntl-window-msgs.c: Totally rewrite the state changing machine. Now handles errors slightly
        better.
      * src/ntl-types.h: Remove requesting_view from the navigation info.
      * src/ntl-window.h: Move all the state machine stuff into NautilusWindow itself.
      * src/ntl-window.c: Update for new 'stop doing stuff' API.
      e7df9b4e
    • Darin Adler's avatar
      Store icon positions as "x,y" in ICON_POSITION instead of · f804c9ac
      Darin Adler authored
      	storing ICON_X and ICON_Y.
      
      	Take first step in moving the directory view to use the opaque
      	NautilusDirectory and NautilusFile instead of using gnome-vfs
      	directly. This will separate the controller from the model:
      	FMDirectoryView is a controller and NautilusDirectory a model.
      
      	* src/file-manager/fm-directory-view-icons.c:
      	(add_to_icon_container):
      	(fm_directory_view_icons_icon_moved_cb):
      	Store icons positions as "x,y" in ICON_POSITION instead of storing
      	separate numbers in ICON_X and ICON_Y.
      
      	* libnautilus/nautilus-directory.h:
      	libnautilus/nautilus-directory.c:
      	(nautilus_directory_get_uri):
      	Added a new call needed to replace fm_directory_view_get_uri.
      	(nautilus_directory_get_file_metadata):
      	(nautilus_directory_set_file_metadata):
      	(nautilus_file_get_metadata):
      	(nautilus_file_set_metadata):
      	Moved the calls for getting and setting file metadata into the
      	file objects.
      	(nautilus_directory_new_file):
      	(nautilus_file_get_info):
      	Added temporary interfaces for the current situation where we're
      	dealing with both NautilusFile and GnomeVFSFileInfo objects at
      	once.
      	(nautilus_directory_finalize):
      	Detach and unref all the files when the directory is destroyed.
      	(nautilus_file_unref):
      	(nautilus_file_get_name):
      	Implemented these functions now that we are using them.
      
      	* src/file-manager/fm-directory-view.h:
      	src/file-manager/fm-directory-view.c:
      	(fm_directory_view_add_entry):
      	(fm_directory_view_activate_entry):
      	(display_selection_info):
      	(fm_directory_view_get_selection):
      	src/file-manager/fm-directory-view-icons.c:
      	(add_to_icon_container):
      	(fm_directory_view_icons_icon_moved_cb):
      	(dm_directory_view_icons_add_entry):
      	(fm_directory_view_icons_get_selection):
      	(icon_container_activate_cb):
      	src/file-manager/fm-directory-view-list.c:
      	(add_to_flist):
      	(fm_directory_view_list_add_entry):
      	Change all the code to work with NautilusFile instead of
      	GnomeVFSFileInfo, except for the parts of FMDirectoryView dealing
      	with the directory_list.
      
      	* src/file-manager/fm-directory-view.h:
      	src/file-manager/fm-directory-view.c:
      	(nautilus_file_date_as_string):
      	(nautilus_file_size_as_string):
      	(nautilus_file_type_as_string):
      	libnautilus/nautilus-directory.h:
      	libnautilus/nautilus-directory.c:
      	(nautilus_file_get_date_as_string):
      	(nautilus_file_get_size_as_string):
      	(nautilus_file_get_type_as_string):
      	Moved and renamed these functions and made them work on
      	NautilusFile objects.
      f804c9ac
    • John Sullivan's avatar
      188354f8
  16. 19 Jan, 2000 3 commits
    • John Sullivan's avatar
      Ref and destroy file infos correctly. · 8d1eba09
      John Sullivan authored
      8d1eba09
    • Darin Adler's avatar
      Allow changing the background of the icon view by dropping colors · 4dc286da
      Darin Adler authored
      	on the icon view.
      
      	* libnautilus/gnome-icon-container-dnd.h:
      	libnautilus/gnome-icon-container-dnd.c:
      	(gnome_icon_container_position_shadow): (drag_data_received_cb):
      	(gnome_icon_container_ensure_drag_data): (drag_motion_cb):
      	(drag_drop_cb): (gnome_icon_container_receive_dropped_icons):
      	(gnome_icon_container_free_drag_data): (drag_leave_cb): Added
      	support for receiving dropped colors to change the background of a
      	GnomeIconContainer.
      
      	* src/file-manager/fm-directory-view-icons.c:
      	(fm_directory_view_icons_initialize_class):
      	(fm_directory_view_icons_clear):
      	(fm_directory_view_icons_background_changed_cb): Added code to
      	load and save the background color from metadata.
      
      	* libnautilus/gdk-extensions.c: (nautilus_gradient_new): Changed
      	nautilus_gradient_new to handle NULLs in the same way that the
      	rest of the gradient functions do instead of NULL being an illegal
      	input value.
      
      	* src/file-manager/fm-directory-view.h:
      	src/file-manager/fm-directory-view.c:
      	(fm_directory_view_initialize): (fm_directory_view_destroy):
      	(fm_directory_view_get_model): (fm_directory_view_load_uri): Added
      	a NautilusDirectory object to each directory view, accessed by
      	subclasses with a call to fm_directory_view_get_model.
      
      	* libnautilus/nautilus-gtk-extensions.h:
      	libnautilus/nautilus-gtk-extensions.c:
      	(gnome_icon_container_dropped_icon_feedback):
      	(nautilus_gdk_selection_data_copy_deep): Added deep versions of
      	these GtkSelectionData functions.
      
      	* libnautilus/nautilus-gtk-macros.h:
      	(NAUTILUS_DEFINE_GET_TYPE_FUNCTION):
      	(NAUTILUS_DEFINE_CLASS_BOILERPLATE): Added definition and
      	initialization of the parent_class global to
      	NAUTILUS_DEFINE_GET_TYPE_FUNCTION and renamed it to
      	NAUTILUS_DEFINE_CLASS_BOILERPLATE.
      
      	* libnautilus/nautilus-background-canvas-group:
      	(nautilus_background_canvas_group_initialize_class):
      	libnautilus/nautilus-background.c:
      	(nautilus_background_initialize_class):
      	libnautilus/nautilus-directory.c:
      	(nautilus_directory_initialize_class): src/ntl-index-panel.c:
      	(nautilus_index_panel_initialize_class):
      	src/file-manager/fm-directory-view-icons.c:
      	(fm_directory_view_icons_initialize_class):
      	src/file-manager/fm-directory-view-list.c:
      	(fm_directory_view_list_initialize_class):
      	src/file-manager/fm-directory-view.c:
      	(fm_directory_view_initialize_class): Take advantage of the new
      	NAUTILUS_DEFINE_CLASS_BOILERPLATE and get rid of existing code to
      	set up parent_class.
      
      	* libnautilus/gnome-icon-container-dnd.h:
      	libnautilus/gnome-icon-container-dnd.c:
      	libnautilus/gnome-icon-container-layout.h:
      	libnautilus/gnome-icon-container-layout.c:
      	libnautilus/gnome-icon-container.c: Minimized includes.
      4dc286da
    • John Sullivan's avatar
      a5ee623e
  17. 18 Jan, 2000 4 commits
    • John Sullivan's avatar
      Call selection "items" rather than "files" · 3a5a36ab
      John Sullivan authored
      3a5a36ab
    • John Sullivan's avatar
      6e7ca6f3
    • Darin Adler's avatar
      Added first cut at code to put metafiles in the user's home directory if · 7e292ac0
      Darin Adler authored
      	* libnautilus/nautilus-directory.c:
      	(nautilus_directory_read_metafile):
      	(nautilus_directory_try_to_read_metafile):
      	(nautilus_directory_write_metafile):
      	(nautilus_directory_try_to_write_metafile):
      	(nautilus_directory_switch_to_alternate_metafile_uri):
      	(nautilus_directory_escape_slashes):
      	(nautilus_make_directory_and_parents): Added first cut at code to
      	put metafiles in the user's home directory if the directory is not
      	accessible and you can't read and write a metafile in the
      	directory itself. We'll have to refine this later to handle cases
      	where you end up with two metafiles.
      
      	* libnautilus/Makefile.am: libnautilus/nautilus-debug.h:
      	libnautilus/nautilus-debug.c: Took trick for getting into the
      	debugger and put it into a public header file so it can be used
      	outside of the nautilus executable.
      
      	* src/ntl-main.c: (stop_in_debugger):
      	(nautilus_stop_after_default_log_handler): (main): Use the new
      	calls from libnautilus to set up the drop into debugger for
      	criticals and warnings.
      
      	* src/file-manager/fm-main.c: (main): Minimized includes and used
      	the new calls from libnautilus to set up the drop into debugger
      	for criticals and warnings.
      
      	* src/ntl-uri-map.c: (nautilus_navinfo_add_mapping):
      	src/ntl-window.c: (nautilus_window_constructed):
      	src/file-manager/fm-directory-view.c:
      	(fm_directory_view_initialize): (fm_directory_view_destroy):
      	(notify_location_change_cb): (stop_location_change_cb):
      	(fm_directory_view_sort): Removed some messages that aren't so
      	useful.
      
      	* libnautilus/ntl-view-frame.h: Minimized includes.
      	* libnautilus/ntl-view-frame.c: Include "ntl-view-frame.h" first
      	so it tests to see that it has sufficient includes in it.
      
      	* src/ntl-view.c: (nautilus_view_load_client): Changed function so
      	that NULL for an iid is allowed and simply results in a failed
      	load instead of being illegal.
      
      	* src/ntl-window-msgs.c:
      	(nautilus_window_change_location_internal): src/ntl-window.c:
      	(nautilus_window_up): Got rid of calls to gnome_vfs_uri_destroy;
      	use gnome_vfs_uri_unref instead since it's safer and Federico is
      	getting rid of gnome_vfs_uri_destroy.
      
      	* src/file-manager/fm-directory-view-icons.h:
      	src/file-manager/fm-directory-view-icons.c:
      	(fm_directory_view_icons_new):
      	src/file-manager/fm-directory-view-list.h:
      	src/file-manager/fm-directory-view-list.c:
      	(fm_directory_view_list_new):
      	src/file-manager/fm-directory-view.h:
      	src/file-manager/fm-directory-view.c: (fm_directory_view_new):
      	Minimized includes and got rid of the unused _new functions.
      
      	* libnautilus/nautilus-directory.h: Added a missing 2000 copyright
      	date.
      7e292ac0
    • John Sullivan's avatar
      98d22d4f
  18. 15 Jan, 2000 2 commits
  19. 14 Jan, 2000 1 commit
  20. 13 Jan, 2000 2 commits
  21. 12 Jan, 2000 1 commit
  22. 11 Jan, 2000 1 commit