1. 26 Jan, 2000 7 commits
  2. 25 Jan, 2000 6 commits
    • Darin Adler's avatar
      Redid drag code so that it will work if there are multiple windows · 6d5f07d8
      Darin Adler authored
      	* libnautilus/gnome-icon-container-dnd.c:
      	(create_selection_shadow):
      	(set_gnome_icon_list_selection):
      	(get_gnome_icon_list_selection):
      	(gnome_icon_container_receive_dropped_icons):
      	Redid drag code so that it will work if there are multiple
      	windows involved, although we still don't handle copies.
      	Changed selection to include the width and height of the icon,
      	and to hold the top left of the icon.
      
      	* libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container.c:
      	(move_icon):
      	(gnome_icon_container_move_icon):
      	Made move_icon visible to the DnD code, and added a raise boolean
      	so it could move and icon and bring it to the front.
      	(gnome_icon_container_get_icon_by_uri):
      	(gnome_icon_container_select_list_unselect_others):
      	Added new functions for use by DnD code.
      
      	* libnautilus/gnome-icon-container-private.h:
      	libnautilus/gnome-icon-container.c:
      	(handle_icon_button_press):
      	Got rid of unused drag_x_offset and drag_y_offset.
      
      	* libnautilus/gnome-icon-container.c:
      	(icon_select):
      	(icon_toggle_selected):
      	(select_icon):
      	(select_one_unselect_others):
      	(toggle_icon):
      	(unselect_all_but_one):
      	(unselect_all):
      	(rubberband_select_in_cell):
      	(kbd_move_to):
      	(kbd_space):
      	(linger_select_timeout_cb):
      	(handle_icon_button_press):
      	(gnome_icon_container_select_all):
      	(gnome_icon_container_unselect_all):
      	Cleaned up selection logic and made it simpler.
      
      	* libnautilus/gnome-icon-container.h:
      	libnautilus/gnome-icon-container.c:
      	(gnome_icon_container_xlate_selected):
      	Got rid of unused function.
      
      	* libnautilus/nautilus-self-checks.h:
      	libnautilus/nautilus-self-checks.c:
      	(nautilus_self_checks_failed):
      	(nautilus_exit_if_self_checks_failed):
      	src/ntl-main.c:
      	(main):
      	Added blank lines before and after the first and last failed
      	checks when at least one check fails.
      
      	* src/ntl-view.c:
      	(nautilus_view_destroy):
      	Removed a straggler message. (I hope Elliot's not still using it.)
      
      	* RENAMING: Some new name ideas.
      6d5f07d8
    • John Sullivan's avatar
      Better text for date column in list view. · c1e840df
      John Sullivan authored
      c1e840df
    • Andy Hertzfeld's avatar
      icons are now drawn with a custom canvas item instead of with a group. · 961f18d6
      Andy Hertzfeld authored
      
             icons are now drawn with a custom canvas item instead of with a group.
             This is a first cut, it doesn't work at non-unity scale factors plus
             other small problems.
      961f18d6
    • 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
    • Maciej Stachowiak's avatar
      Corrected memory management for background and item popup menus. · 469af208
      Maciej Stachowiak authored
      	* src/file-manager/fm-directory-view-icons.c: Corrected memory
      	management for background and item popup menus.
      469af208
    • Darin Adler's avatar
      Removed bogus warning. Need to do some more work to get dragging working · 6b72c37f
      Darin Adler authored
      	* gnome-icon-container-dnd.c:
      	(gnome_icon_container_receive_dropped_icons):
      	Removed bogus warning. Need to do some more work to get
      	dragging working with multiple windows, but there's no
      	easy way to detect that case, so just let it go.
      
      	* fm-directory-view-icons.c:
      	(icon_container_context_click_icon_cb):
      	(icon_container_context_click_background_cb):
      	Fixed the callbacks to match the new interface without the
      	icon name. I missed this in my check-in earlier today.
      6b72c37f
  3. 24 Jan, 2000 5 commits
    • John Sullivan's avatar
      c428ff2c
    • Maciej Stachowiak's avatar
      Fixed bad merge. · b615c0b1
      Maciej Stachowiak authored
      b615c0b1
    • Maciej Stachowiak's avatar
      Rename "row_popup_menu" and "empty_popup_menu" signals to · f1c27961
      Maciej Stachowiak authored
      	* libnautilus/gtkflist.c, libnautilus/gtkflist.h: Rename
      	"row_popup_menu" and "empty_popup_menu" signals to
      	"context_click_row" and "context_click_background" for more
      	consistency with the way the icon container does it. Removed
      	GdkEvent parameters from these signals. Added an int indicating
      	the row right-clicked.
      	(gtk_flist_button_press): Do not change the selection to the row
      	that gets right-clicked. It was inconsistent with the icon view
      	and most of the known universe.
      f1c27961
    • 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
    • John Sullivan's avatar
      Made Shift as well as Control modify the selection, and prevented · d12bae4b
      John Sullivan authored
      activation on single-click when modifying the selection.
      d12bae4b
  4. 22 Jan, 2000 3 commits
    • Havoc Pennington's avatar
      check for libwww · f538796e
      Havoc Pennington authored
      2000-01-22  Havoc Pennington  <hp@pobox.com>
      
      	* configure.in: check for libwww
      
      		* components/html/Makefile.am: add libwww flags
      f538796e
    • Maciej Stachowiak's avatar
      Added background and item context click menus. Right now they only work · 4da01575
      Maciej Stachowiak authored
      	* src/file-manager/fm-directory-view-icons.c: Added background and
      	item context click menus. Right now they only work for the
      	directory view, and contain only insensitive items. This needs
      	more work but I wanted to check in something basic.
      4da01575
    • Havoc Pennington's avatar
      fix to gnomecanvaspixbuf · 7bc75aef
      Havoc Pennington authored
      2000-01-21  Havoc Pennington  <hp@redhat.com>
      
      * src/file-manager/Makefile.am (INCLUDES): fix to gnomecanvaspixbuf
      
      * src/Makefile.am (INCLUDES): fix to gnomecanvaspixbuf
      
      * libnautilus/Makefile.am (INCLUDES): fix to use gnomecanvaspixbuf
      flags
      
      * configure.in: Look for gnomecanvaspixbuf properly (via
      gnome-config)
      7bc75aef
  5. 21 Jan, 2000 11 commits
    • John Sullivan's avatar
      *** empty log message *** · d5794212
      John Sullivan authored
      d5794212
    • John Sullivan's avatar
      Make icons appear in list view. · e73d8421
      John Sullivan authored
      e73d8421
    • Elliot Lee's avatar
      Add a specific flag to indicate reload, and make use of it. · f7492a63
      Elliot Lee authored
      
      
      * src/ntl-window.[ch], src/ntl-window-msgs.c,
      src/ntl-window-private.h: Add a specific flag to indicate reload, and make use of it.
      f7492a63
    • Elliot Lee's avatar
      Allocate an extra byte in the buffer, for safety's sake. Fix back/fwd · dfc585b3
      Elliot Lee authored
      
      
      * libnautilus/nautilus-directory.c: Allocate an extra byte in the
        buffer, for safety's sake.
      * src/ntl-window-msgs.c: Fix back/fwd buttons.
      dfc585b3
    • Elliot Lee's avatar
      Remove debugging printouts, and display error dialogs. · 482a598e
      Elliot Lee authored
      
      
      * src/ntl-window-msgs.c: Remove debugging printouts, and display error dialogs.
      482a598e
    • Elliot Lee's avatar
      Fix bug that was causing list view to be blank. · 84bc7431
      Elliot Lee authored
      
      
      Fix bug that was causing list view to be blank.
      84bc7431
    • Darin Adler's avatar
      Started some cleanup of the icon view. · 49f7a162
      Darin Adler authored
      	* libnautilus/Makefile.am:
      	libnautilus/gnome-icon-container-layout.c:
      	libnautilus/gnome-icon-container-layout.h:
      	libnautilus/gnome-icon-container.c:
      	libnautilus/gnome-icon-container.h:
      	src/file-manager/fm-directory-view-icons.c:
      	src/file-manager/fm-directory-view-icons.h:
      	Got rid of the GnomeIconContainerLayout.
      	This was the old mechanism for saving and loading
      	icon positions and we have a better signal-based one.
      	Also made the new mechanism work more the way that
      	Ettore had intended to make the layout work, where
      	all the icons that have preassigned positions get
      	positioned first, then the ones that are auto positioned.
      	In the long run, we'll need something a bit fancier.
      
      	* libnautilus/gnome-icon-container-dnd.c:
      	libnautilus/gnome-icon-container.c:
      	libnautilus/gnome-icon-container.h:
      	libnautilus/gnome-icon-container-private.h:
      	Change the priv pointer to be named details to match
      	what we use in other places in Nautilus.
      49f7a162
    • John Sullivan's avatar
      Activate on single-click in list view. · 7c1de70b
      John Sullivan authored
      7c1de70b
    • Andy Hertzfeld's avatar
      disabled the pernicious call to relayout in size_allocate, at least · 8080e76f
      Andy Hertzfeld authored
      
            disabled the pernicious call to relayout in size_allocate, at least
            temporarily
      8080e76f
    • John Sullivan's avatar
      Added missing entry. · c02264c8
      John Sullivan authored
      c02264c8
    • 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
  6. 20 Jan, 2000 8 commits
    • John Sullivan's avatar
      fde66d2d
    • Jonathan Blandford's avatar
      more initialization to clean up an warning. · f7b5f98c
      Jonathan Blandford authored
      2000-01-20  Jonathan Blandford  <jrb@redhat.com>
      
              * src/file-manager/fm-directory-view-list.c (column_clicked_cb):
              more initialization to clean up an warning.
      f7b5f98c
    • Darin Adler's avatar
      Fixed a bug where dragging an icon would cause the "kbd_selected" icon to · c4c5ae7d
      Darin Adler authored
      	* src/gnome-icon-container.c:
      	(gnome_icon_container_xlate_selected):
      	Fixed a bug where dragging an icon would cause the "kbd_selected"
      	icon to scroll into view. Just passed FALSE instead of TRUE for
      	"schedule_visibility".
      
      	* libnautilus/nautilus-background.c:
      	(nautilus_background_draw_flat_box):
      	Tiny change, to fit our style rule against initializing.
      c4c5ae7d
    • Jonathan Blandford's avatar
      fix warning. · 75cb3ed1
      Jonathan Blandford authored
      2000-01-20  Jonathan Blandford  <jrb@redhat.com>
      
      	* libnautilus/nautilus-background.c
      	(nautilus_background_draw_flat_box): fix warning.
      75cb3ed1
    • 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
      Just fixed date. · 430ca69c
      John Sullivan authored
      430ca69c
    • John Sullivan's avatar
      188354f8