Commit graph

590 commits

Author SHA1 Message Date
Andy Hertzfeld c729ae0409 fixed update problem with zoom control and disabled arrows when
fixed update problem with zoom control and disabled arrows when
       appropriate.
       Also, crassly slapped an Eazel logo on the nautilus image
2000-02-02 04:41:22 +00:00
Elliot Lee e12312388a If an error happens, we need to reset the location bar to current
* 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.
2000-02-01 23:51:09 +00:00
John Sullivan d0c581b5c3 Fixed bug where extra item appeared at each reload or view switch. 2000-02-01 21:09:10 +00:00
Andy Hertzfeld 7c97b308cf added zoom control to location bar, not yet wired up to the content view
added zoom control to location bar, not yet wired up to the content view
2000-02-01 11:27:43 +00:00
Darin Adler 39b26449f4 Changed the icon factory interface in a few ways: 1) There's no longer a
* libnautilus/nautilus-icon-factory.h:
	* libnautilus/nautilus-icon-factory.c:
	(nautilus_icon_factory_new):
	(nautilus_icon_factory_destroy):
	(nautilus_get_current_icon_factory):
	(nautilus_icon_factory_get_icon_for_file):
	(nautilus_icon_factory_set_theme):
	(nautilus_icon_factory_get_icon_by_name):
	(nautilus_icon_factory_get_pixbuf_for_icon):
	(nautilus_scalable_icon_ref):
	(nautilus_scalable_icon_unref):
	(nautilus_scalable_icon_get_name):
	(scalable_icon_get):
	(icon_set_possibly_free):
	(scalable_icon_new):
	Changed the icon factory interface in a few ways: 1) There's no
	longer a NautilusIconFactory object. There's just a single global
	icon factory. If we find that we need multiple factories, we can
	implement that later. 2) Instead of going straight from a file to
	a pixbuf, you get a scalable icon, and then get a pixbuf from
	that. This allows you to choose the icon and then get
	different-sized versions of it without going through the icon
	selection process over and over again. There's also a name for
	each icon which can be stored in the metafile so you can get the
	same icon again before you have full information on a file.

	* src/nautilus-bookmark.c:
	(nautilus_bookmark_get_pixmap_and_mask):
	* src/file-manager/fm-directory-view-list.c:
	(install_icon):
	* src/file-manager/fm-icons-controller.c:
	(fm_icons_controller_get_icon_image):
	Changed icon factory clients to use the new interface. Maybe
	after a while I'll add a convenience function that's as simple as
	the old interface was for the common case where you want to go
	straight to the pixbuf, but lets try it this way for a while.

	* libnautilus/nautilus-string.h:
	* libnautilus/nautilus-string.c:
	(nautilus_has_prefix):
	Added nautilus_has_prefix. This checks to see if a string has a
	particular prefix. It's both clearer to read and more efficient
	than Andy's typical trick of calling strstr.

	* libnautilus/nautilus-lib-self-check-functions.h:
	* libnautilus/nautilus-string.c:
	Added self-checks for nautilus-string.c. The tests uncovered a
	bug in nautilus_string_to_int that I fixed.

	* nautilus-glib-extensions.c:
	Just a stray new-line.
2000-02-01 05:34:46 +00:00
John Sullivan fe8e69affc Fixed bug where Select All in list view didn't put selection info in status bar. 2000-02-01 00:39:49 +00:00
Darin Adler 8b485ee223 Oops. Spelled it wrong. 2000-01-31 22:45:00 +00:00
Darin Adler 78c57693cf Started work on icon stretching. In the process, I am doing some
cleanup on the icon container, and I am checking in some of that
	before the stretching is implemented.

	* libnautilus/gnome-icon-container-private.h:
	* libnautilus/gnome-icon-container.c:
	(icon_is_in_region):
	Got rid of width and height stored in each icon.

	* libnautilus/gnome-icon-container.c:
	A lot of cleanup, including getting rid of the
	icon_get_text_bounding_box function.

	* libnautilus/gnome-icon-container.c:
	(gnome_icon_container_begin_stretch):
	(gnome_icon_container_stretch):
	(gnome_icon_container_end_stretch):
	(button_release_event):
	(motion_notify_event):
	(handle_icon_button_press):
	First cut at adding stretching hooks in button handlers.

	* libnautilus/nautilus-icons-view-icon-item.c:
	(nautilus_icons_view_draw_text_box):
	Rewrote to fix bug with position of text when it's too long for
	a single line.

	* libnautilus/nautilus-glib-extensions.h:
	Added a macro named NAUTILUS_G_N_ELEMENTS.
	src/ntl-index-panel.c:
	src/explorer-location-bar.c:
	libnautilus/gtkflist.c:
	Used the NAUTILUS_G_N_ELEMENTS macro.
2000-01-31 22:25:21 +00:00
Andy Hertzfeld 4e1175d7a8 made the keyboard selection rectangle work again, not as a separate canvas
made the keyboard selection rectangle work again, not as a separate
       canvas item like it used to be, but as an attribute drawn by the
       icon item.
2000-01-31 04:53:50 +00:00
John Sullivan de79345d4a Now saves/restores zoom level, and (in list view) sort column & direction. 2000-01-31 04:27:20 +00:00
Andy Hertzfeld bc177a67c2 implemented the "select all" command in the context menu
implemented the "select all" command in the context menu
2000-01-31 02:13:12 +00:00
Elliot Lee 36e8d6ca24 Update debugging messages. Allow synchronous state changes (needed to
* 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.
2000-01-31 01:53:10 +00:00
Darin Adler 58a9b33c33 Changed it to not attempt to create a GC just to measure the text. This
* 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.
2000-01-31 01:30:16 +00:00
Andy Hertzfeld e250cfd796 fixed bug where icons were horizontally mis-positioned after dragging;
fixed bug where icons were horizontally mis-positioned after dragging;
       fixed by taking the center offset into account
2000-01-31 01:09:42 +00:00
John Sullivan 66762e61ef Added convenience functions for getting/setting boolean & integer metadata. 2000-01-31 01:01:22 +00:00
Elliot Lee 2002db115c Undo
Undo
2000-01-31 00:19:48 +00:00
Elliot Lee 89663cf1c1 g_strdup already checks for NULL parameter - no need.
* src/ntl-uri-map.c: g_strdup already checks for NULL parameter - no need.
2000-01-30 23:52:01 +00:00
Darin Adler 7c7932a8ae NautilusDirectory is now in charge of loading directories.
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.
2000-01-30 23:39:22 +00:00
John Sullivan 74e70dc7e5 Put #defines for all metadata keys into new central location. 2000-01-30 21:45:17 +00:00
John Sullivan d1404606ee Added can_zoom_in and can_zoom_out, and made item context menu disable
Zoom In and Zoom Out correctly.
2000-01-30 21:00:08 +00:00
Andy Hertzfeld dd8153b2d0 made fonts scale according to zoom level enabled/disabled zoom items in
made fonts scale according to zoom level
	enabled/disabled zoom items in context menu as necessary
2000-01-30 11:04:09 +00:00
Andy Hertzfeld 3abb791e41 made the shadow rectangles track the icons properly by adding the center
made the shadow rectangles track the icons properly by adding the center
	offset
2000-01-28 10:02:08 +00:00
John Sullivan ecc10811f9 Added icons to bookmarks menu & window; cleaned up some zoom code; fixed a few
storage leaks.
2000-01-28 06:10:00 +00:00
Andy Hertzfeld 6abbef778c made icons be centered properly
made icons be centered properly
2000-01-28 04:49:07 +00:00
John Sullivan 40698cbec9 Renamed FMIconCache to NautilusIconFactory and moved it to libnautilus. 2000-01-27 22:42:04 +00:00
John Sullivan f9a9b1eb0e Made zooming work in list view. 2000-01-27 21:18:01 +00:00
Elliot Lee 2350369c6c Remove use of gtk_html_parse() - deprecated in latest GtkHTML.
* components/html/ntl-web-browser.c: Remove use of gtk_html_parse() - deprecated in latest
GtkHTML.
2000-01-27 18:53:43 +00:00
Andy Hertzfeld d07bae8cad fixed dragging when zoomed by scaling the pixbuf and offsets when
fixed dragging when zoomed by scaling the pixbuf and offsets when
	necessary
2000-01-27 11:31:06 +00:00
Andy Hertzfeld c9c47555cc made it position things better when zoomed by multiplying by
made it position things better when zoomed by multiplying by
       pixels_per_unit when appropriate
2000-01-27 05:18:06 +00:00
John Sullivan 10e2b0004b Finished this round of sorting architecture improvements; list view now handles
sorting itself instead of delegating to superclass. Superclass now knows nothing
about sorting.
2000-01-27 03:51:49 +00:00
Darin Adler 085da46b4d Added missing includes to get it to compile.
* src/ntl-app.c: Added missing includes to get it to compile.
	* components/help/converters/.cvsignore:
	components/help/converters/gnome-info2html2/.cvsignore:
	components/help/converters/gnome-man2html2/.cvsignore:
	Added Makefile.
2000-01-27 02:16:55 +00:00
Maciej Stachowiak 1d6a860040 Made the file manager component statically linked in again. Removed.
* src/Makefile.am, src/nautilus.goad, src/ntl-app.c,
	src/file-manager/Makefile.am: Made the file manager component
	statically linked in again.
	* src/file-manager/ntl-file-manager.goad: Removed.
2000-01-27 01:55:04 +00:00
Elliot Lee 6f9294eebe Add components/help/converters/* makefiles. Check for NULL directory
* configure.in: Add components/help/converters/* makefiles.
* libnautilus/nautilus-directory.c: Check for NULL directory
  result before doing stuff with it.
* src/ntl-index-panel.c: Ditto.
* src/ntl-prefs.c: Add help browser nav tree to list of possibilities.
* src/ntl-window-msgs.c: Handle non-VFS-handleable URIs correctly WRT 'up' button.
2000-01-27 01:37:08 +00:00
Andy Hertzfeld 8c176f1a74 made it respect the scale factor by removing code from
made it respect the scale factor by removing code from compute_viewport_affine
       that was defeating it.
2000-01-27 01:35:56 +00:00
Andy Hertzfeld c9692eff80 hooked up zooming to the background context menu
hooked up zooming to the background context menu
2000-01-27 01:09:23 +00:00
Darin Adler a5d6405de9 *** empty log message *** 2000-01-27 01:04:19 +00:00
John Sullivan f588a6af29 Some work towards changing the file-sorting framework. 2000-01-26 23:03:15 +00:00
Elliot Lee fc0007b3f9 Link to $(BONOBO_LIBS) Include <string.h> to get prototype for memset.
* libnautilus/Makefile.am: Link to $(BONOBO_LIBS)
* libnautilus/gnome-icon-container.c: Include <string.h> to get prototype for memset.
2000-01-26 21:19:31 +00:00
Maciej Stachowiak a26d6288b2 Build with the recent Bonobo global renaming, and Havoc's changes. A patch
* components/help/hyperbola-main.c,
	components/help/hyperbola-nav-tree.c,
	components/history/ntl-history-view.c, components/html/main.c,
	components/html/ntl-web-browser.c,
	components/websearch/ntl-web-search.c, idl/nautilus.idl,
	libnautilus/gnome-icon-container.c,
	libnautilus/gnome-progressive-loader.c,
	libnautilus/gnome-progressive-loader.h, libnautilus/libnautilus.h,
	libnautilus/ntl-content-view-frame.c,
	libnautilus/ntl-meta-view-frame.c, libnautilus/ntl-view-frame.c,
	libnautilus/ntl-view-frame.h, src/nautilus.h,
	src/ntl-index-panel.c, src/ntl-view-bonobo-control.c,
	src/ntl-view-bonobo-subdoc.c, src/ntl-view-frame-svr.c,
	src/ntl-view-nautilus.c, src/ntl-view-private.h, src/ntl-view.c,
	src/ntl-view.h, src/ntl-window.c, src/ntl-window.h,
	src/file-manager/dfos-corba.h, src/file-manager/dfos-xfer.c,
	src/file-manager/dfos-xfer.h, src/file-manager/fm-main.c: Build
	with the recent Bonobo global renaming, and Havoc's changes. A
	patch from Kjartan Maraas <kmaraas@online.no> and scripts from Nat
	Friedman <nat@helixcode.com> were a very helpful starting point.
2000-01-26 08:22:44 +00:00
Havoc Pennington 8bf9719ddb Trivial files I'd written before getting stuck on the OAF thing, that
2000-01-26  Havoc Pennington  <hp@pobox.com>

	* src/nautilus-gconf.h, src/nautilus-gconf.c: Trivial files I'd
		written before getting stuck on the OAF thing, that might be of
			interest. I have some other bits I did that aren't
worth checking
	in, Ramiro said he's doing the prefs dialog.
2000-01-26 06:22:48 +00:00
John Sullivan 6ae5e7add1 Moved list view sort indicator to left side of right-justified columns. 2000-01-26 03:30:47 +00:00
John Sullivan 8f1491ea41 Some changes towards fixing the architecture for sorting in directory views. 2000-01-26 02:51:39 +00:00
Andy Hertzfeld 920e9eb8b3 made the drag shadow have the same dimensions as the dragged object
made the drag shadow have the same dimensions as the dragged object
2000-01-26 02:46:13 +00:00
Darin Adler 47bf5ad695 Fixed an assert I missed.
* libnautilus/nautilus-directory.c:
	(nautilus_file_get_name):
	Fixed an assert I missed.
2000-01-26 00:56:25 +00:00
Darin Adler c796ee4c97 Added interface to get a NautilusFile for a specific file rather than a
* libnautilus/nautilus-directory.h:
	(nautilus_file_get):
	(nautilus_file_detach):
	(nautilus_directory_finalize):
	(nautilus_file_unref):
	Added interface to get a NautilusFile for a specific file rather than
	a file from a directory that we are scanning.

	* libnautilus/nautilus-glib-extensions.c:
	(check_tm_to_g_date):
	A little cleanup of the self-check code.

	* libnautilus/Makefile.am:
	libnautilus/libnautilus.h:
	libnautilus/nautilus-alloc.h:
	libnautilus/nautilus-directory.h:
	Moved g_alloca into its own header file so you don't have to include
	all the Bonobo stuff just to use g_alloca.
2000-01-26 00:34:30 +00:00
Andy Hertzfeld ebcee7a778 first cut at making small images (<10K) show as themselves. also, cleaned
first cut at making small images (<10K) show as themselves.
	also, cleaned up icon item class and added boolean for kbd selection
2000-01-26 00:29:08 +00:00
John Sullivan 794baebe62 A few cleanups to file-date-as-string code. 2000-01-26 00:29:08 +00:00
Andy Hertzfeld a320ceead5 disabled icon centering code that was causing glitchy updates
disabled icon centering code that was causing glitchy updates
2000-01-26 00:07:34 +00:00
Darin Adler 6d5f07d86e Redid drag code so that it will work if there are multiple windows
* 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.
2000-01-25 23:49:39 +00:00
John Sullivan c1e840df79 Better text for date column in list view. 2000-01-25 23:38:46 +00:00
Andy Hertzfeld 961f18d600 icons are now drawn with a custom canvas item instead of with a group.
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.
2000-01-25 21:17:05 +00:00
Maciej Stachowiak f0e4c44c90 New functions for subclasses to call, to implement right-click menus. Most
* 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.
2000-01-25 04:50:22 +00:00
Maciej Stachowiak 469af2086e Corrected memory management for background and item popup menus.
* src/file-manager/fm-directory-view-icons.c: Corrected memory
	management for background and item popup menus.
2000-01-25 03:02:08 +00:00
Darin Adler 6b72c37ff1 Removed bogus warning. Need to do some more work to get dragging working
* 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.
2000-01-25 01:08:41 +00:00
John Sullivan c428ff2cb0 Added sort indicators to column headers in list view 2000-01-24 23:02:30 +00:00
Maciej Stachowiak b615c0b1d9 Fixed bad merge. 2000-01-24 20:34:47 +00:00
Maciej Stachowiak f1c2796128 Rename "row_popup_menu" and "empty_popup_menu" signals to
* 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.
2000-01-24 20:34:25 +00:00
Darin Adler c885369012 Added a controller object that lets GnomeIconContainer
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.
2000-01-24 18:27:20 +00:00
John Sullivan d12bae4bf6 Made Shift as well as Control modify the selection, and prevented
activation on single-click when modifying the selection.
2000-01-24 17:00:08 +00:00
Havoc Pennington f538796e6d check for libwww
2000-01-22  Havoc Pennington  <hp@pobox.com>

	* configure.in: check for libwww

		* components/html/Makefile.am: add libwww flags
2000-01-22 07:20:53 +00:00
Maciej Stachowiak 4da01575f3 Added background and item context click menus. Right now they only work
* 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.
2000-01-22 01:53:01 +00:00
Havoc Pennington 7bc75aef86 fix to gnomecanvaspixbuf
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)
2000-01-22 00:21:37 +00:00
John Sullivan d5794212d0 *** empty log message *** 2000-01-21 23:29:15 +00:00
John Sullivan e73d842165 Make icons appear in list view. 2000-01-21 22:35:41 +00:00
Elliot Lee f7492a6330 Add a specific flag to indicate reload, and make use of it.
* 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.
2000-01-21 21:52:50 +00:00
Elliot Lee dfc585b327 Allocate an extra byte in the buffer, for safety's sake. Fix back/fwd
* libnautilus/nautilus-directory.c: Allocate an extra byte in the
  buffer, for safety's sake.
* src/ntl-window-msgs.c: Fix back/fwd buttons.
2000-01-21 20:56:02 +00:00
Elliot Lee 482a598e30 Remove debugging printouts, and display error dialogs.
* src/ntl-window-msgs.c: Remove debugging printouts, and display error dialogs.
2000-01-21 20:27:31 +00:00
Elliot Lee 84bc7431f1 Fix bug that was causing list view to be blank.
Fix bug that was causing list view to be blank.
2000-01-21 20:00:44 +00:00
Darin Adler 49f7a162e1 Started some cleanup of the icon view.
* 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.
2000-01-21 17:53:19 +00:00
John Sullivan 7c1de70be9 Activate on single-click in list view. 2000-01-21 16:23:06 +00:00
Andy Hertzfeld 8080e76fc8 disabled the pernicious call to relayout in size_allocate, at least
disabled the pernicious call to relayout in size_allocate, at least
      temporarily
2000-01-21 08:23:09 +00:00
John Sullivan c02264c8e0 Added missing entry. 2000-01-21 01:58:13 +00:00
Darin Adler 97ce483ddd Fixed double free that was causing lots of nasty errors in the file
* 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.
2000-01-21 01:13:12 +00:00
John Sullivan fde66d2ddd Moved fields inside private details structure. 2000-01-20 23:27:05 +00:00
Jonathan Blandford f7b5f98c67 more initialization to clean up an warning.
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.
2000-01-20 23:03:12 +00:00
Darin Adler c4c5ae7de9 Fixed a bug where dragging an icon would cause the "kbd_selected" icon to
* 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.
2000-01-20 22:54:35 +00:00
Jonathan Blandford 75cb3ed1f8 fix warning.
2000-01-20  Jonathan Blandford  <jrb@redhat.com>

	* libnautilus/nautilus-background.c
	(nautilus_background_draw_flat_box): fix warning.
2000-01-20 22:45:07 +00:00
Elliot Lee e7df9b4e9b Async notification of navinfo - now we just need an async get_file_info
* 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.
2000-01-20 21:59:03 +00:00
Darin Adler f804c9acd5 Store icon positions as "x,y" in ICON_POSITION instead of
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.
2000-01-20 21:23:35 +00:00
John Sullivan 430ca69cea Just fixed date. 2000-01-20 19:37:57 +00:00
John Sullivan 188354f817 Use name of item in status bar when one item selected. 2000-01-20 19:23:44 +00:00
Darin Adler 1546a8b2dc Made backgrounds work better in the list view. Gradients still
won't work because the list view draws its background with calls
	to gdk_draw_rectangle explicitly, and doesn't call the functions
	in the style, so it can't be overridden.

	* libnautilus/nautilus-background.c:
	(nautilus_background_set_widget_style): Fix bug where the list
	items were not highlighting properly. Set only the NORMAL and
	ACTIVE background color. That way we don't screw up the SELECTED
	and other background colors.
2000-01-20 18:19:46 +00:00
Darin Adler 390272a371 Fix segfault when viewing a directory without a metafile. 2000-01-20 17:28:47 +00:00
Darin Adler 72acf48fea The list view now has a background color just like the
icon view does. Some more code could be saved, but that's
	a refactoring for another time.

	* libnautilus/gtkflist.c: Added support for receiving dragged
	colors to set the background of the list.

	* src/file-manager/fm-directory-view-list.c:
	(fm_directory_view_list_initialize_class):
	(fm_directory_view_list_clear):
	(fm_directory_view_list_background_changed_cb): Added code to load
	and save the background color from metadata.

	* libnautilus/nautilus-background.c: Put the background color in
	all the bg and base colors in the style instead of putting it only
	in bg[GTK_STATE_NORMAL].

	* libnautilus/nautilus-gtk-macros.h:
	(NAUTILUS_DEFINE_CLASS_BOILERPLATE): Make sure that the macro only
	evaluates the parent_class_type argument once, like it says in the
	comment. (NAUTILUS_CALL_PARENT_CLASS): Fix this macro so it can
	be used in places where an expression is expected.

	* RENAMING: Added this file to list name changes we are
	planning for the future.

	* libnautilus/gtkflist.h: libnautilus/gtkflist.c:
	src/explorer-location-bar.h: src/explorer-location-bar.c:
	Minimized includes.

	* src/ntl-index-panel.c:
	src/file-manager/fm-directory-view-icons.c: Fixed some comments
	and formatting.
2000-01-20 01:08:12 +00:00
Darin Adler 771cbf47d6 Icon positions are now written out when you drag an icon,
and read in when you visit a directory. But the code then
	immediately re-lays out the icons, so the position is lost!

	* src/file-manager/fm-directory-view-icons.c:
	(fm_directory_view_icons_icon_moved_cb):
	(fm_directory_view_icons_initialize): (add_container_icon): Save
	icon position when an icon is moved. Get icon position when an
	icon is first created.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_get_metadata_from_node):
	(nautilus_directory_get_metadata):
	(nautilus_directory_create_metafile_tree_root):
	(nautilus_directory_get_metadata):
	(nautilus_directory_set_metadata):
	(nautilus_directory_get_file_metadata):
	(nautilus_directory_set_file_metadata): Added the routines to get
	and set metadata for individual files.

	* libnautilus/nautilus-string.h: libnautilus/nautilus-string.c:
	(nautilus_eat_strcmp): (nautilus_string_to_int):
	(nautilus_eat_string_to_int): Made new string functions that free
	the existing strings, and a function to convert an int to a
	string.

	* libnautilus/gnome-icon-container.h:
	libnautilus/gnome-icon-container.c: (move_icon): (class_init):
	(handle_icon_button_press): Added context_click_background and
	icon_moved signals, and renamed context_click to
	context_click_icon.

	* configure.in: Turned -Wunused back on. I had to turn -W off,
	but I think it's worth it.
2000-01-19 23:39:56 +00:00
John Sullivan 8d1eba0905 Ref and destroy file infos correctly. 2000-01-19 21:02:01 +00:00
Darin Adler edb4ab4e6f After Andy explained his change to me, I realized that it would always
* libnautilus/nautilus-directory.c: (nautilus_directory_finalize):
	(nautilus_directory_try_to_read_metafile):
	(nautilus_directory_read_metafile):
	(nautilus_directory_try_to_write_metafile):
	(nautilus_directory_write_metafile):
	(nautilus_directory_construct_alternate_metafile_uri):
	(nautilus_directory_new): After Andy explained his change to me, I
	realized that it would always write the metafile in the alternate
	place if there was no pre-existing metafile. So I changed the
	logic. The new rule is: read the metafile from the alternate
	location first. If we find it there, write it back
	there. Otherwise, try to write in the directory itself. If that
	fails, write it in the alternate location instead.

	* libnautilus/nautilus-directory.c:
	(nautilus_directory_get_metadata): Allow get_metadata on a NULL
	NautilusDirectory and return NULL for data.
2000-01-19 19:08:03 +00:00
Darin Adler 4dc286da90 Allow changing the background of the icon view by dropping colors
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.
2000-01-19 18:34:33 +00:00
Andy Hertzfeld 2689b7f236 made icons centered with respect to the text
made icons centered with respect to the text
2000-01-19 08:03:22 +00:00
Ettore Perazzoli 8881c805e3 Use gnome_vfs_file_info_unref', not gnome_vfs_file_info_destroy'. 2000-01-19 03:12:00 +00:00
Andy Hertzfeld 3067cd62f0 don't activate files if the button was held down for too long
don't activate files if the button was held down for too long
2000-01-19 02:55:48 +00:00
John Sullivan a5ee623e60 Fixed crash going into directory and back up. 2000-01-19 01:18:59 +00:00
John Sullivan b7cb31dbcd Change window title when location changes. 2000-01-18 23:21:02 +00:00
John Sullivan 3a5a36ab79 Call selection "items" rather than "files" 2000-01-18 22:50:46 +00:00
John Sullivan 6e7ca6f3a0 Column headers now sort in list view; added Type column. 2000-01-18 22:25:48 +00:00
Andy Hertzfeld b0e9bb2005 made reading metafile from directory where we don't have write permissions
made reading metafile from directory where we don't have write
	permissions work properly by looking in the common place on any error,
	not just if we get ACCESS_DENIED
2000-01-18 21:18:26 +00:00
Andy Hertzfeld df3078be57 *** empty log message *** 2000-01-18 20:44:05 +00:00
Elliot Lee b591e4c50a Since the prototypes for GtkObjectInitFunc and GtkClassInitFunc just have
* libnautilus/nautilus-gtk-macros.h: Since the prototypes for
	GtkObjectInitFunc and GtkClassInitFunc just have a 'gpointer' for the args,
	cast the given values to these function types, so that people can use the actual
	pointer types as arguments without receiving a warning.

	* src/ntl-index-panel.c: Change to match. Also set
	object_klass->destroy & object_klass->finalize to point to our
	implementation. Also remove unused variables
	(nautilus_index_panel_initialize,
	nautilus_index_panel_set_up_label).

	* libnautilus/nautilus-background.c, src/ntl-window-msgs.c,
	src/ntl-window.c, src/file-manager/fm-directory-icons.c: Remove
	unused variables.

	* src/ntl-window.h: Add a variable (unused) for future handling of content view loading.

	* libnautilus/libnautilus.h: Add an interim g_alloca.

	* libnautilus/nautilus-directory.c: Clean up a bit further, by
	removing the need for another if(), and using g_alloca instead of
	g_malloc.
2000-01-18 19:21:16 +00:00
Darin Adler 7e292ac004 Added first cut at code to put metafiles in the user's home directory if
* 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.
2000-01-18 18:55:36 +00:00
John Sullivan 98d22d4f2b Added size & mod date columns to list view. 2000-01-18 01:23:30 +00:00
Andy Hertzfeld e72fb15b13 made dragging work right by rendering a pixbuf to a pixmap and mask to
made dragging work right by rendering a pixbuf to a pixmap and mask
       to pass to the gtk dragging machinery.
2000-01-17 22:36:13 +00:00
Andy Hertzfeld d4ce3fc6d4 made the dragging code set up an image of the canvas item being dragged
made the dragging code set up an image of the canvas item being dragged
       currently disabled because it's not handling the mask yet
2000-01-17 08:43:27 +00:00
Andy Hertzfeld 497e3e7a48 made single-click open work made dragging to desktop work
made single-click open work
	made dragging to desktop work
2000-01-17 05:49:39 +00:00
Andy Hertzfeld 3b781046af made dragging within a window actually move the canvas item correctly, and
made dragging within a window actually move the canvas item correctly,
	and set the stage for copying between directories
2000-01-16 01:23:46 +00:00
John Sullivan 798b52bb8d Fixed deadly typo (g_free that should have been g_list_free) 2000-01-15 00:50:27 +00:00
John Sullivan 89896e51a7 Finished refactoring FMDirectoryView code into two subclasses. 2000-01-15 00:43:48 +00:00
Darin Adler daa6131835 Made it stop in the debugger for a g_warning, but not abort if the
debugger is not running.
2000-01-14 23:55:54 +00:00
Darin Adler b7c1294461 Turned on gradients for backgrounds. 2000-01-14 23:36:00 +00:00
Darin Adler 8190453e91 Changed to use gnome_vfs_uri_extract_short_name. 2000-01-14 20:52:05 +00:00
Darin Adler 4a8e99789c Added code to load and save metadata. 2000-01-14 19:36:38 +00:00
John Sullivan 38e733fe7d Lots more work pushing code from FMDirectoryView into subclasses. Almost
done now!
2000-01-14 02:04:00 +00:00
John Sullivan fa043157af Defined and deployed macros for signals that must be overridden by
subclass; also deployed Darin's other boilerplate-reducing macros
in fm-directory-view-icons.c and fm-directory-view-list.c
2000-01-13 19:49:33 +00:00
John Sullivan 35d40686c3 More work pushing fm_directory_view code into subclasses. 2000-01-13 01:56:47 +00:00
John Sullivan 43fb5cbcd3 Made option menu say "View as Icons" (e.g.) instead of just "Icons" 2000-01-12 16:53:55 +00:00
Andy Hertzfeld f0e609795c added a debug menu and it's first item that shows the color picker
added a debug menu and it's first item that shows the color picker
2000-01-12 04:56:59 +00:00
John Sullivan d8db69e05c Started pushing code from fm-directory-view into subclasses. Also renamed
a private function in ntl-window.c.
2000-01-12 00:19:33 +00:00
Darin Adler 32f075751e Made the index panel use NautilusBackground. 2000-01-12 00:08:20 +00:00
John Sullivan 8c92ececd0 Added nautilus_gtk_signal_connect_free_data, and deployed it. 2000-01-11 22:12:23 +00:00
John Sullivan 3e6324f15a The content view type menu now works (can switch between Icons and List views) 2000-01-11 21:29:35 +00:00
Darin Adler 737b238103 Fixed typos and oversights in Maciej's check-in.
He didn't compile his changes :-(
2000-01-11 20:53:40 +00:00
Maciej Stachowiak 2dcd5c3f91 Redo signals the conventional way, to avoid array size mismatches in the
* libnautilus/ntl-view-frame.c, libnautilus/ntl-view-frame.h: Redo
	signals the conventional way, to avoid array size mismatches in
	the future.
2000-01-11 19:57:07 +00:00
Maciej Stachowiak 5fd8689456 Redo signals the conventional way, to avoid array size mismatches in the
* libnautilus/ntl-view-frame.c: Redo signals the conventional way,
	to avoid array size mismatches in the future.
2000-01-11 19:55:49 +00:00
Maciej Stachowiak 1feebd336e Some documentation on the nautilus architecture including a block diagram
* docs/architecture.txt: Some documentation on the nautilus
	architecture including a block diagram and some conrol flow
	explanations. Needs editing for both style and technical
	completeness/accuracy, but it's a start.
2000-01-11 06:31:00 +00:00
Maciej Stachowiak 8ea96d1d5b Reorder code so "context_click" is actually emitted on a button 3 press.
* libnautilus/gnome-icon-container.c (handle_icon_button_press):
	Reorder code so "context_click" is actually emitted on a button 3
	press.
2000-01-11 05:47:40 +00:00
Maciej Stachowiak 54ff776ebe Changed FMDirectoryView to use a NautilusViewFrame rather than inheriting
* src/file-manager/fm-main.c,
	src/file-manager/fm-directory-view.c,
	src/file-manager/fm-directory-view.h: Changed FMDirectoryView to
	use a NautilusViewFrame rather than inheriting from one.
2000-01-11 04:10:50 +00:00
Maciej Stachowiak 8306cde9ba Fixed marshall type for "stop_location_change" signal. How could this ever
* libnautilus/ntl-view-frame.c (nautilus_view_frame_class_init):
	Fixed marshall type for "stop_location_change" signal. How could
	this ever have worked?
2000-01-11 04:09:00 +00:00
Maciej Stachowiak 0f3e13fe55 Once an appropriate component type is found, do not keep looping.
* src/ntl-view.c (nautilus_view_load_client): Once an appropriate
	component type is found, do not keep looping.
2000-01-11 03:33:22 +00:00
John Sullivan bba4e340d6 First steps at splitting directory view into two classes (icon view & list view) 2000-01-11 03:26:17 +00:00
Maciej Stachowiak d9d61b5271 Fixed mismatch between declared signal array size and actual number of
* libnautilus/ntl-view-frame.c, libnautilus/ntl-view-frame.c:
	Fixed mismatch between declared signal array size and actual
	number of signals (this should still be rewritten to follow proper
	style).
2000-01-11 02:12:49 +00:00
Maciej Stachowiak 3d3e02b1f8 Added Eazel copyright to files I've changed non-trivially.
* libnautilus/ntl-content-view-frame.c,
	libnautilus/ntl-content-view-frame.h,
	libnautilus/ntl-meta-view-frame.c,
	libnautilus/ntl-meta-view-frame.h, libnautilus/ntl-view-frame.c,
	libnautilus/ntl-view-frame.h, src/ntl-app.c,
	src/ntl-view-bonobo-control.c, src/ntl-view-bonobo-subdoc.c,
	src/ntl-view-frame-svr.c, src/ntl-view-nautilus.c,
	src/ntl-view-private.h, src/ntl-view.c, src/ntl-view.h,
	src/ntl-window-msgs.c, src/ntl-window-msgs.h,
	src/ntl-window-state.c, src/ntl-window.c, src/ntl-window.h,
	src/file-manager/fm-directory-view.c,
	src/file-manager/fm-directory-view.h, src/file-manager/fm-main.c:
	Added Eazel copyright to files I've changed non-trivially.
2000-01-11 02:09:14 +00:00
Darin Adler 7d8e258233 Put in workaround for basename problem. 2000-01-11 00:13:07 +00:00
Maciej Stachowiak 0018d98d48 Renamed from libnautilus/ntl-view-client.c, libnautilus/ntl-view-client.h,
* libnautilus/ntl-view-frame.c, libnautilus/ntl-view-frame.h,
	libnautilus/ntl-content-view-frame.c,
	libnautilus/ntl-content-view-frame.h,
	libnautilus/ntl-meta-view-frame.c,
	libnautilus/ntl-meta-view-frame.h: Renamed from
	libnautilus/ntl-view-client.c, libnautilus/ntl-view-client.h,
	libnautilus/ntl-content-view-client.c,
	libnautilus/ntl-content-view-client.h,
	libnautilus/ntl-meta-view-client.c,
	libnautilus/ntl-meta-view-client.h.
	* libnautilus/Makefile.am, libnautilus/libnautilus.h: reflect this
	renaming.
2000-01-10 22:54:18 +00:00
Darin Adler e0ad656046 Got rid of the race condition in the existing code and cleaned up the
state machine a bit. The new code separates the state of the nautilus
window from the state of the content view, which makes things a bit
simpler.
2000-01-10 22:12:46 +00:00
John Sullivan 3d953577f6 Added some of the framework for supporting multiple content views for the same
uri.
2000-01-10 20:17:13 +00:00
Darin Adler c912e1ef33 Added NautilusBackground class, string functions that allow NULL, made
gradient functions allow NULL and treat it as an empty string, added
gdk_color_parse variants that have a default color, cleanup of
NautilusIndexPanel, and some other minor stuff.
2000-01-10 19:52:24 +00:00
John Sullivan c5864f0483 Check for NULL filename 2000-01-10 16:36:00 +00:00
Maciej Stachowiak bdd9fc25b2 Ignore ntl-file-manager rather than libntl-file-manager.la
* src/file-manager/.cvsignore: Ignore ntl-file-manager rather than
libntl-file-manager.la
2000-01-10 10:14:00 +00:00
Maciej Stachowiak 9950e1f3bf Made file manager view a CORBA server that lives in a separate
executable:

	* src/file-manager/fm-main.c: New file which includes main()
	function and basic framework to make the file manager an
	executable CORBA server.
	* src/file-manager/ntl-file-manager.goad: gnorba activation file
	for the file manager.
	* src/file-manager/Makefile.am: Build ntl-file-manager as an
	executable rather than a library. Add fm-main.c to build. Install
	ntl-file-manager.goad. Link in appropriate libraries.
	* src/ntl-app.c: Remove nautilus_make_object() and other vestiges
	of the attempt to be a CORBA server for file manager view objects.
	* src/nautilus.gnorba: Removed.
	* nautilus-self-check-functions.c: Remove call to test of
	functions now in the separate ntl-file-manager executable.
	* src/Makefile.am: Don't try to link in file manager. Don't try to
	install nautilus.goad.
2000-01-10 10:03:24 +00:00
Maciej Stachowiak 873ec64531 Added missing CORBA_exception_init() call.
* src/ntl-main.c (main): Added missing CORBA_exception_init() call.
2000-01-10 10:00:48 +00:00
Maciej Stachowiak 78106a7394 Rename NautilusViewClient to NautilusViewFrame, NautilusContentViewClient
* libnautilus/ntl-view-client.c, libnautilus/ntl-view-client.h,
	libnautilus/ntl-content-view-client.c,
	libnautilus/ntl-content-view-client.h,
	libnautilus/ntl-meta-view-client.c,
	libnautilus/ntl-meta-view-client.h,: Rename NautilusViewClient to
	NautilusViewFrame, NautilusContentViewClient to
	NautilusContentViewFrame, and NautilusMetaViewClient to
	NautilusMetaViewFrame.
	* components/help/hyperbola-nav-tree.c,
	components/history/ntl-history-view.c,
	components/html/ntl-web-browser.c,
	components/websearch/ntl-web-search.c, src/ntl-app.c,
	src/file-manager/fm-directory-view.c,
	src/file-manager/fm-directory-view.h: Reflect the above renaming.
2000-01-10 08:37:41 +00:00
Andy Hertzfeld 1cfc709b61 made dropping a color on the index panel work (it doesn't save the
made dropping a color on the index panel work (it doesn't save the
       metadata yet, though)
2000-01-10 03:36:30 +00:00
Maciej Stachowiak edbde50943 Added .deps, .libs, ntl-web-search 2000-01-09 11:48:16 +00:00
Andy Hertzfeld 63a4bfebed changed the way the index panel gets notified of location changes
changed the way the index panel gets notified of location changes
	restructured code that populates the index panel
	made the title use the largest font that fits
2000-01-08 00:28:43 +00:00
John Sullivan 9d0a6860f8 Made there be just one About window, and added a utility function for
presenting a window to the user regardless of its current state.
2000-01-07 21:48:58 +00:00
John Sullivan 076e9575fa Bookmarks window now saves and restores its size & position within and
across sessions. And to think I only had to modify 7 files!
2000-01-07 17:20:39 +00:00
Elliot Lee 37a083b05b Fix warnings. Add Andy.
Fix warnings.
Add Andy.
2000-01-07 13:50:43 +00:00
Andy Hertzfeld bef22f0096 initial bare bones implementation of index panel
initial bare bones implementation of index panel
2000-01-07 07:00:34 +00:00
Darin Adler 313469f413 Moved self-check framework into libnautilus. Added functions so each
check will report if it fails instead of just aborting.

Added new functions to manage a string that specifies a color or
gradient, and added tests for the new functions.
2000-01-07 00:07:34 +00:00
John Sullivan 7e08264ebd Added nautilus_app_exiting call, home of right-before-quitting code. 2000-01-06 22:32:52 +00:00
Elliot Lee 19c9e26029 Relayout when size changes.
Relayout when size changes.
2000-01-06 17:19:13 +00:00
Andy Hertzfeld 56cfd59aad made the location bar draggable by removing LOCKED flag to be consistent
made the location bar draggable by removing LOCKED flag to be
	 consistent with the other bars
2000-01-06 17:09:04 +00:00
Elliot Lee 145a5c4a67 Eliminate gratuitous scroll bars.
* libnautilus/gnome-icon-container.c: Eliminate gratuitous scroll bars.
2000-01-06 16:03:42 +00:00
Elliot Lee 1d3c1001cd Bug fixes.
Bug fixes.
2000-01-06 15:35:22 +00:00
John Sullivan e8657633b3 Eliminated compiler warnings. 2000-01-06 15:23:17 +00:00
Elliot Lee 69f10655b5 Implement preferences for which meta-views to always load with a page.
* src/ntl-prefs.c, src/ntl-uri-map.c: Implement preferences for
which meta-views to always load with a page. Loading doesn't seem to quite work.
* src/ntl-window.c, src/ntl-view.c: Try to fix a crash that
happens when going to a new page, and a meta view is being
destroyed in the process. Still crashes.
2000-01-06 03:32:17 +00:00
Maciej Stachowiak 2be9c5cc7e Fix warning.
* src/ntl-uri-map.c (nautilus_navinfo_free): Fix warning.
2000-01-06 03:19:38 +00:00
Elliot Lee 348154665c Update for gdk-pixbuf changes.
Update for gdk-pixbuf changes.
2000-01-06 00:59:03 +00:00
Elliot Lee 6018bcea24 Add support for the location change state machine and related
* src/ntl-types.h, src/ntl-uri-map.[ch], src/ntl-window-msgs.c, src/ntl-window.[ch]:
  Add support for the location change state machine and related notifications,
  to allow much better error handling.

* src/ntl-view.[ch]: Catch client failures, also allow for active sensing of client death.
* src/file-manager/fm-directory-view.c: Send progress notifications.
* components/html/ntl-web-browser.c: Send progress
  notifications. Try to fix crashes caused by ending an error stream
  twice.
2000-01-05 23:21:06 +00:00
John Sullivan cdf570ee03 Remove horizontal scroll bar from bookmarks list in bookmarks window. 2000-01-05 21:28:40 +00:00
John Sullivan e40bf51c1e Fixed macro use for Add Bookmark item, was causing screen-filling-menu-item
on some computers.
2000-01-05 21:06:19 +00:00
John Sullivan dce368dd3e Remove button now has a little padding; clicking it now moves the selection
to the next item in the list.
2000-01-04 22:58:24 +00:00
Darin Adler fd8bad007c A couple of quick fixes to get "make check" working. 2000-01-04 21:37:50 +00:00
John Sullivan b3fe018443 Made bookmarks window have a minimum size. 2000-01-04 21:15:51 +00:00
John Sullivan 2ff700028f Backed out nautilus-uri-utilities changes from earlier today. 2000-01-04 20:26:04 +00:00
Darin Adler 2840833e2c Added self-check framework. Added first bits of code for FMDirectory. 2000-01-04 18:09:59 +00:00
John Sullivan fc3d393257 Made location-entering field handle bogus URIs better. 2000-01-04 17:43:23 +00:00
Maciej Stachowiak 78860f9f50 Added stop_location_change method to NautilusView interface. New signal,
* idl/nautilus.idl: Added stop_location_change method to NautilusView interface.
	* ntl-view-client.c, ntl-view-client.h (stop_location_change): New
	signal, triggered on receipt of stop_location_change request via
	CORBA.

	* ntl-view.c, ntl-view.h, ntl-view-private.h, ntl-view-nautilus.c,
	ntl-view-bonobo-control.c, ntl-view-bonobo-subdoc.c
	(nautilus_view_stop_location_change): Added this function; also
	added implementation to nautilus view type function table and
	NULL'd out for now for Bonobo control and subdoc view types (need
	to find out if loading is synchronous or asynchronous for those,
	and if there is a way to abort).

	* ntl-window.c: Stop loading for all views when Stop button is
	pressed.

	* ntl-window-msgs.c: Enable stop button when we start loading;
	enable Stop button when

	* src/file-manager/fm-directory-view.c: Call
	request_progress_change() when loading is done or an error is
	reached; implement handler for stop_location_change signal.
2000-01-04 05:21:45 +00:00
Maciej Stachowiak e992a1c7c8 Fix warnings.
2000-01-03  Maciej Stachowiak  <mjs@eazel.com>

	* src/ntl-prefs.c: Fix warnings.

	* src/ntl-view.c, src/ntl-view.h, src/ntl-view-frame-svr.c
	(nautilus_view_notify_location_change,
	nautilus_view_notify_selection_change, nautilus_view_load_state,
	nautilus_view_save_state, nautilus_view_show_properties): Made
	these functions public and removed the corresponding signals;
	these are operations you do to the NautilusView, not something it
	informs other parts of the program of.
	(request_location_change, request_selection_change,
	request_status_change, request_progress_change): New
	signals. These allow NautilusView to have less dependence on
	NautilusWindow.
	(nautilus_view_signals): Moved signal number table from view to
	this static variable.
	(nautilus_view_request_location_change,
	nautilus_view_request_selection_change,
	nautilus_view_request_status_change,
	nautilus_view_request_progress_change): Move to ntl-view.c and
	make them emit the proper signals in lieu of hardcoded handling.
	* src/ntl-window.c, src/ntl-window.h src/ntl-window-msgs.c,
	src/ntl-window-msgs.h, src/ntl-window-state.c
	(request_location_change, request_selection_change,
	request_status_change, request_progress_change): Removed these
	signals; they are operations you do on a NautilusWindow, not
	something it notifies you of, and any usefulness for inheritance
	purposes is purely speculative right now.
	(nautilus_window_connect_view, nautilus_window_disconnect_view):
	Use these new helper functions to connect callbacks to
	NautilusView's signals instead of expecting them to just get
	called.
	(nautilus_view_request_location_change,
	nautilus_view_request_selection_change,
	nautilus_view_request_status_change,
	nautilus_view_request_progress_change): Execute bodies of real_
	versions instead of emitting singals.
	(nautilus_view_real_request_location_change,
	nautilus_view_real_request_selection_change,
	nautilus_view_real_request_status_change,
	nautilus_view_real_request_progress_change): Removed these.
	Finally, always call nautilus_winodow_set_content_view or
	nautilus_window_add_meta_view before calling
	nautilus_view_load_client to make sure no signals are lost.
2000-01-04 03:06:28 +00:00
Elliot Lee 2e9f835f7e The ten minute version of kwebsearch. Handle forms (POST is untested and
* components/websearch, configure.in: The ten minute version of kwebsearch.
* components/html/ntl-web-browser.c: Handle forms (POST is untested and probably buggy).
* src/ntl-uri-map.c: Check result of file_info retrieval. Load web search by default.
* src/ntl-prefs.[ch]: First (lame) attempt at implementing application preferences.
* src/ntl-app.c: Load prefs at startup
2000-01-04 01:52:23 +00:00
John Sullivan 05729d1861 Added underline-accelerators to Add Bookmark and Edit Bookmarks items. 2000-01-04 01:18:48 +00:00
John Sullivan 6f9b058f29 Fixed a couple of bookmark-related memory leaks. 2000-01-03 23:17:26 +00:00
John Sullivan 7797ae9fb1 Split out a couple of file-related utilities into a new file. 2000-01-03 20:07:20 +00:00
Darin Adler a5ee2d8134 Turned warnings back on. Fixed a warnings. More cvsignoring. 2000-01-03 17:26:34 +00:00
John Sullivan 0d0d327a00 Took out unused variables that my -Wall-free compile didn't notice. 2000-01-03 17:17:06 +00:00
Elliot Lee d2e7371f28 Update copyright notices.
2000-01-03  Elliot Lee  <sopwith@redhat.com>

Update copyright notices.
2000-01-03 16:10:14 +00:00
John Sullivan b4d114b95a Create directory for bookmarks if necessary. 1999-12-31 03:44:03 +00:00
John Sullivan d9326fa453 Implemented save/restore bookmarks across sessions. Also changed implementation
of NautilusBookmark to use gchar * instead of GString.
1999-12-31 01:58:06 +00:00
John Sullivan 8eba94a6a7 Linked in GNOME-XML library, which will be used for bookmarks. 1999-12-30 21:33:51 +00:00
John Sullivan 553e10a47b Fixed bug with activating bookmarks in any but the first window.
Added working but simple Edit Bookmarks window that allows changing
name & uri, reordering, and deleting bookmarks.
1999-12-30 19:14:07 +00:00
John Sullivan 10b8bbe720 Just separated out the .[ch] notation into full file names from my
earlier entries.
1999-12-30 17:38:45 +00:00
John Sullivan 130f9695d4 Added nautilus_bookmark_copy and fixed g_return_if_fail compile problem. 1999-12-29 16:57:31 +00:00
John Sullivan 10cb529fc9 Just improved the quantity and quality of g_return_if_fail calls. 1999-12-29 01:25:41 +00:00
John Sullivan 17a18859c6 Prevented "Add Bookmark" from adding multiple identical bookmarks; fixed
bug about window count; fixed bug where "Add Bookmark" would crash if a
window had been closed previously.
1999-12-29 00:23:32 +00:00
John Sullivan 0650866570 Undid previous change. It turned out to be a build order dependency problem. 1999-12-28 23:05:23 +00:00
John Sullivan a0e01c4673 Casted away a const to fix the build. 1999-12-28 18:49:05 +00:00
Elliot Lee f9feecb6c4 Add initialization function. Implement scheme mapping. (others to follow
* src/ntl-uri-map.[ch]: Add initialization function. Implement scheme mapping.
(others to follow this)
1999-12-23 00:50:02 +00:00
Elliot Lee 5eff8c584d Testbed for UIHandler usage. Better error checking, support UIHandler
* components/history/ntl-history-view.c: Testbed for UIHandler usage.
* src/ntl-*view*.c: Better error checking, support UIHandler usage.
* src/ntl-window-msgs.c: Better error checking.
* src/ntl-window.c: Better error checking, plus move menu creation so that UIHandler
usage is easier.
1999-12-22 20:35:04 +00:00
Elliot Lee 4994722e58 Add request_progress_change notification
1999-12-21  Elliot Lee  <sopwith@redhat.com>

* idl/nautilus.idl, libnautilus/ntl-view-client.[ch], src/ntl-window*.[ch],
src/ntl-view-frame-svr.c: Add request_progress_change notification

* src/ntl-view-*: Fix/finish various mjs changes: Do the component type abstraction
properly, lose ntl-view-frame-svr.h, add ntl-view-private.h, add various component type
implementations.

* src/ntl-view-frame-svr.h: Add 'extern' so everyone doesn't get their own vepv
variable.
1999-12-21 20:01:42 +00:00
Elliot Lee 11a469a473 Add 'extern' so everyone doesn't get their own vepv variable.
* src/ntl-view-frame-svr.h: Add 'extern' so everyone doesn't get their
  own vepv variable.
1999-12-21 16:36:28 +00:00
Maciej Stachowiak d48f0ba962 Er, missed it. 1999-12-21 03:59:29 +00:00
Maciej Stachowiak 1fed79d7ee Remove request_* calls from public API (they are just an implementation
* src/ntl-view.h: Remove request_* calls from public API (they are
	just an implementation detail of the fact that NautilusView
	implements a Nautilus:ViewFrame CORBA server - the nautilus app
	should not need to call these).

	* src/ntl-view.c: Split all the three way conditional stuff out so
	there is a separate function for each branch of the condition. Not
	a big win yet, but will provide opportunities for more
	refactoring.

	* src/ntl-view-frame-svr.c, ntl-view-frame-svr.h: Move
	implementation of Nautilus:ViewFrame CORBA server here as much as
	possible.
	* src/ntl-view.c: Remove it from here.
	* src/nautilus.h: #include ntl-view-frame-svr.h
	* src/Makefile.am: add ntl-view-frame-svr.[ch] to build.

	* src/ntl-window.c: Add myself to About box (pout).
1999-12-21 03:59:11 +00:00
Maciej Stachowiak 9c9fbb1c48 components/html/ntl-web-browser.c: Fix warnings. 1999-12-21 02:41:41 +00:00
Elliot Lee 82c184431b Add HTML component to build. Make process die when all objects have been
* configure.in, components/Makefile.am: Add HTML component to build.
* components/help/hyperbola-main.c, components/history/ntl-history-view.c: Make process die when
  all objects have been destroyed.
* components/history/ntl-history-view.c: Bug fixes.
* components/html/*.[ch]: Copy glibwww over, write new NautilusViewClient for HTML browsing.
* src/ntl-uri-map.c: Cleanup, and use ntl_web_browser as default HTML display engine.
* src/ntl-view.c: Try to handle Bonobo views for data display.
1999-12-20 23:59:08 +00:00
John Sullivan 27cef034fa The bookmarks menu is now limping along. Add Bookmark works, and the items that
are added work properly. But Edit Bookmarks is still insensitive, so there's no
way to remove items (except by quitting, because the items aren't yet saved and
restored across sessions).
1999-12-20 23:33:36 +00:00
Havoc Pennington a82b8a9b18 Add inline RGB data for default icon. (fm_icon_cache_load_icon): only ref
1999-12-20  Havoc Pennington  <hp@redhat.com>

* src/file-manager/fm-icon-cache.c: Add inline RGB data for
default icon.
(fm_icon_cache_load_icon): only
ref the pixbuf if it exists
(fm_icon_cache_new): add a new fallback special icon set
(fm_icon_cache_load_icon): load fallback if the icon name is ""
1999-12-19 07:44:15 +00:00
Havoc Pennington a1832aff91 return if the icon being set is NULL. This may be fixing a symptom rather
1999-12-20  Havoc Pennington  <hp@redhat.com>

* libnautilus/gnome-icon-container.c (set_kbd_current): return if
the icon being set is NULL. This may be fixing a symptom rather
than a problem.
1999-12-19 07:44:15 +00:00
Elliot Lee 964b702302 Support multiple view types (Nautilus/View, GNOME/Control,
* src/ntl-*.[ch]: Support multiple view types (Nautilus/View, GNOME/Control, GNOME/Embeddable)
* src/ntl-window.[ch]: Add nautilus_window_get_uih()
* idl/*.idl: Reindent.
1999-12-19 07:44:15 +00:00
Havoc Pennington 31a15e17b5 Check in today's fooling around. I guess I'll drop this line of development
for now though, waiting on the new icon view.

1999-12-19  Havoc Pennington  <hp@pobox.com>

	* src/file-manager/desktop-window.c (desktop_window_realize): turn
		on window decorations for debugging
			(desktop_window_init): debug comment-out the
no-resize policy

	* src/file-manager/desktop-layout.c (desktop_layout_arrange):
		fool with layout routines

				* src/file-manager/desktop-canvas.c
					(desktop_canvas_size_allocate):
debugging border to detect layout screwups

	* src/file-manager/desktop-item.c (icon_realize): set the canvas
		item, oops.
1999-12-19 07:44:15 +00:00
Havoc Pennington 75207a4109 Hmm, it sort of does something.
1999-12-19  Havoc Pennington  <hp@pobox.com>

	* src/file-manager/desktop-layout.c: don't do an arrangement
		on every change

			* src/file-manager/desktop-canvas.c
				(desktop_canvas_load_desktop_icons): connect
to finished_load and
	arrange the icons when we get it. This is a temporary hack,
		because the DesktopLayout engine isn't progressive yet.

			* src/file-manager/fm-directory-list.c
				(fm_directory_list_class_init): add a
finished_load signal

	* src/file-manager/desktop-window.c (desktop_window_init): for
		now, don't fill the whole screen so we can see gdb.

			* src/file-manager/desktop-item.c: Move user data
accessors into
	the .c file, these are private.
1999-12-19 07:44:15 +00:00
Havoc Pennington a4015a4f9e all compiling again 1999-12-19 06:47:22 +00:00
Havoc Pennington 8e279e3c50 sync with home, may not compile, will fix momentarily
1999-12-17  Havoc Pennington  <hp@redhat.com>

        * src/file-manager/fm-directory-view.c: Change to use
	        get_current_icon_cache() (it wasn't ever freeing the icon
cache anyway)

        * src/file-manager/fm-icon-cache.c (fm_get_current_icon_cache):
	        function to get a global icon cache, we will share this throughout
		        the program.
1999-12-19 06:42:54 +00:00
Havoc Pennington 26f7c8b110 new function, loads icons from a given directory - don't get too excited,
1999-12-19  Havoc Pennington  <hp@pobox.com>

	* src/file-manager/desktop-canvas.c
		(desktop_canvas_load_desktop_icons): new function, loads
icons
	from a given directory - don't get too excited, it doesn't yet
		_display_ any icons!

			* src/file-manager/desktop-canvas.h: Add directory
list field.

	* src/file-manager/Makefile.am (gnome_desktop_SOURCES): Add
		fm-directory-list.[hc]
			(libntl_file_manager_la_SOURCES): add fm_directory_list.[hc]

				* src/file-manager/fm-directory-list.h, fm-directory-list.c:
					New files, the non-GUI portion of a
directory listing. Handles
	loading the dir listing and the icons.
1999-12-19 06:25:35 +00:00
Maciej Stachowiak 48159840ba Added up, reload, home, stop toolbar buttons. Stop is not implemented yet.
* src/ntl-window.c, src/ntl-window-msgs.c: Added up, reload, home,
stop toolbar buttons. Stop is not implemented yet. Up needs more
thought with respect to various protocols.

* src/ntl-window.c, src/ntl-window.h: Added calls to allow/disallow
some of the toolbar operations.
1999-12-18 02:35:48 +00:00
Havoc Pennington b22bfa642b set the mini icon. (nautilus_window_class_init): init parent_class and
1999-12-17  Havoc Pennington  <hp@redhat.com>

* src/ntl-window.c (nautilus_window_realize): set the mini icon.
(nautilus_window_class_init): init parent_class and install
realize method

* src/ntl-miniicon.c: new files, to set mini icon
1999-12-17 18:00:31 +00:00
Elliot Lee edc7a195a4 Fix warnings Try (unsuccessfully) to get proper icon reflow by calling
* libnautilus/{gdk-extensions.c,gnome-icon-container.c}: Fix warnings
* libnautilus/gnome-icon-container.c: Try (unsuccessfully) to get
  proper icon reflow by calling icon_grid_resize() instead of
  icon_grid_set_visible_width(), in size_allocate().
* src/*.*: Add ntl-app.[ch].
* src/file-manager/desktop-*.c: Fix warnings.
* src/file-manager/fm-directory-view.c: Remove incorrect warning,
  allow turning off use of icon_layout altogether.
1999-12-17 03:06:48 +00:00
John Sullivan 4e06f3a887 Fixed evil // comments I added earlier; Added beginnings of Bookmarks menu. 1999-12-17 02:11:21 +00:00
Havoc Pennington 8ebbd3a628 lookup signum before it's first used.
1999-12-16  Havoc Pennington  <hp@redhat.com>

* src/ntl-window-state.c (nautilus_window_save_state): lookup
signum before it's first used.

* src/file-manager/desktop-layout.c: new layout module, not yet
done

* src/file-manager/desktop-canvas.c (desktop_canvas_init): Create
the right-click menu.

* src/file-manager/desktop-menu.c (desktop_menu_new): New module
to stick the right-click menu code in
1999-12-17 01:37:12 +00:00
Maciej Stachowiak 7048ea0af4 Enabled multiple main windows and new window menu entry. In the
process replaced url with uri where appropriate and added
nautilus_window_get_requested_uri accessor.
1999-12-17 01:03:09 +00:00
Maciej Stachowiak b7dd3b28a6 Put meta-views on the right. 1999-12-16 23:10:22 +00:00
Darin Adler 04b3c26530 Added new graphics routines.
Tried to make clicking on a file work better.
1999-12-16 22:45:54 +00:00
Elliot Lee e97c47c231 Now works. Duplicate the URI being requested, since we don't know what the
* components/history/ntl-history-view.c: Now works.
* src/ntl-uri-map.c: Duplicate the URI being requested, since we
don't know what the lifetime of the original value will be.
* src/ntl-window.c: Use the paned instead of hbox, use create_menus_with_data instead.
* src/file-manager: Misc warning fixes.
* src/gtkscrollframe.c: Try to get rid of scrollbar chopping.
1999-12-16 22:11:49 +00:00
John Sullivan 9e591b009a Fixed bug where Back button failed due to lack of data pointer. Also
added a bunch of not-yet-implemented standard menus and menu items.
1999-12-16 21:33:06 +00:00
Maciej Stachowiak 42c3b5d301 Quiet some warnings. 1999-12-16 21:08:40 +00:00
Havoc Pennington 4838d5fa4e warning fixes
1999-12-16  Havoc Pennington  <hp@redhat.com>

* src/file-manager/gnome-desktop.c (main): warning fixes

* src/file-manager/desktop-canvas.c
(desktop_canvas_update_background): start actually honoring
background settings.

* src/file-manager/fm-icon-cache.c: add copyright and Emacs magic.

* src/file-manager/fm-icon-cache.h (fm_icon_cache_get_icon): Run
egtk-format-protos on these prototypes, add copyright and Emacs magic
1999-12-16 21:04:03 +00:00
Havoc Pennington e0138e85e5 Added API for controlling the background, so we can connect that to the
1999-12-16  Havoc Pennington  <hp@redhat.com>

* src/file-manager/desktop-canvas.h: Added API for controlling the
background, so we can connect that to the IDL interface.

* src/file-manager/desktop-canvas.h: New file

* src/file-manager/desktop-window.h: tweaks

* idl/gnome-desktop.idl: Change BackgroundInfo to not be a union.
1999-12-16 20:39:12 +00:00
John Sullivan cdbead7e78 Changed a recently-introduced assertion to a warning, and temporarily
allowed warnings to be non-fatal even when NAUTILUS_DEBUG is defined.
This allows us to continue working on Nautilus until the vfs problem
about directory iterating is fixed.
1999-12-16 18:23:11 +00:00
Elliot Lee c7382d0df3 Translate strings.
1999-12-16  Elliot Lee  <sopwith@redhat.com>

	* components/help/hyperbola-nav-tree.c: Translate strings.

	* components/history/ntl-history-view.c: Bug fixes, use API
 	function for setting meta-view label.

	* libnautilus/ntl-meta-view-client.[ch]:
 	s/meta_view_set_label/meta_view_client_set_label/

	* src/ntl-uri-map.c: Use history view instead of help view as the
 	default meta view for now.

	* src/ntl-window.c: As per the comment that was removed from
 	ntl-window.c, gnome_app_install_menu_hints() needs to be called
 	_after_ statusbar creation

	* src/file-manager/fm-directory-view.c: Add more debugging assertions
	and messages.
1999-12-16 07:49:40 +00:00
John Sullivan faecc8f6b5 Rearranged toolbar & location bar; added rudiments of menu bar. 1999-12-16 00:53:55 +00:00
Elliot Lee 2161e0fee8 Warning fixes throughout. Use $(WERROR) in Makefiles to get -Werror.
* Warning fixes throughout.
* Use $(WERROR) in Makefiles to get -Werror.
1999-12-16 00:43:12 +00:00
Darin Adler 5797b1bf7a Fixed some warnings. 1999-12-16 00:02:40 +00:00
Elliot Lee a4a7dc95ac Turn on compilation of hyperbola component. Compile and run. Create & set
* components/Makefile.am: Turn on compilation of hyperbola component.
* components/help/*: Compile and run.
* libnautilus/ntl-meta-view-client.c: Create & set the property bag if it doesn't exist.
* src/ntl-uri-map.c: Load the hyperbola nav tree component as a test meta view.
* src/ntl-view.c: Fill in NULL fields with empty strings, so that ORBit doesn't segfault.
* src/ntl-window-msgs.c: When creating new meta views, they should
be meta views and not content views (cut & paste error).
* src/file-manager/fm-directory-view.c: Don't redisplay every time a new entry comes in.
1999-12-15 23:47:34 +00:00
Darin Adler 0dee7ad32e Changed warning switches. Fixed bugs found when opening an icon and
using the history buttons. Improved selection info display in status bar.
1999-12-15 21:55:17 +00:00
Andy Hertzfeld 84ae5f6492 made the initial path be the user's home directory.
made the initial path be the user's home directory.
1999-12-15 20:08:25 +00:00
Elliot Lee 8c729d0d10 Add --enable-more-warnings and --enable-fatal-warnings switches. Add
* configure.in: Add --enable-more-warnings and --enable-fatal-warnings switches.
* src/ntl-uri-map.c: Add comment about functionality-in-waiting.
1999-12-15 19:07:14 +00:00
Darin Adler e66ad3393a Rolled out my change. I was confused. Elliot had this fixed
already but I forgot to "make install".
1999-12-15 18:51:32 +00:00
Darin Adler 7d7defac6c Fixed overflow problem caused by gint16 local variable. 1999-12-15 18:39:11 +00:00
Darin Adler e445831a3d Fixed callback that caused bad cast when a URL was typed in. 1999-12-15 17:48:29 +00:00
Darin Adler 92eedb52f7 Changed to compile with the latest gnome-vfs. 1999-12-15 17:37:22 +00:00
Elliot Lee 75c39c67c1 Fix size_allocate.
* libnautilus/gtkscrollframe.c: Fix size_allocate.
1999-12-15 17:12:41 +00:00
Maciej Stachowiak ee886b6331 a const char* can't be passed where a gchar* is expected.
* src/ntl-uri-map.c (nautilus_navinfo_new): a const char* can't be
	passed where a gchar* is expected.
1999-12-15 04:08:36 +00:00
Darin Adler 025cf15b76 Turned on more warnings; fixed all warnings. 1999-12-15 03:09:45 +00:00
Elliot Lee 80bfd80a13 Restructure the whole NautilusWindow code for sanity's sake.
* src/*.c: Restructure the whole NautilusWindow code for sanity's sake.

* src/ntl-uri-map.[ch]: Instead of just passing in various pieces of information about
  the old URL, pass in the Nautilus_NavigationInfo that has to be kept around anyways.

* idl/nautilus.idl: Allow a selection to be multiple URI's.
1999-12-15 00:57:04 +00:00
Darin Adler 7bc3340f5a Ignore more generated files. 1999-12-15 00:04:42 +00:00
John Sullivan 389b49b49e Reordered code to fix bug where "View as blank space" option menu wasn't sizing
itself correctly; also changed its text and grayed it out to make it obvious
that it isn't working.
1999-12-14 23:07:44 +00:00
Elliot Lee 0e11f0e3f5 Add icons
* configure.in, Makefile.am, icons/: Add icons

* src/file-manager/fm-directory-view.c: Everything goes inside the scroll-frame, not the
view itself.
1999-12-14 19:46:16 +00:00
Elliot Lee 65c2e7dd64 Switch from imlib to pixbuf. Import from gnome-fm. Add a 'main_window'
* libnautils/g*.[ch]: Switch from imlib to pixbuf.
* src/file-manager: Import from gnome-fm.
* idl/nautilus.idl: Add a 'main_window' attribute on a ViewFrame, so that views can talk
to the main window.
1999-12-13 22:44:06 +00:00
Elliot Lee d28d40ef89 Add a convenience function for setting the label.
* libnautilus/ntl-meta-view.[ch]: Add a convenience function for
setting the label.

* Throughout: Rename the meta view "description" property to "label",
which more accurately describes its use.

* components/help: Start turning hyperbola into component.
1999-12-10 07:00:00 +00:00
Elliot Lee 13a02a8e9c Start migration from gnome-fm.
Start migration from gnome-fm.
1999-12-10 00:52:54 +00:00
Elliot Lee b91e363766 src/explorer-location-bar.[ch]: Copy over from gnome-fm, change signal to
src/explorer-location-bar.[ch]:
	Copy over from gnome-fm, change signal to include new URI.
src/ntl-window.c:
	Make NautilusWindow use it.
1999-12-09 06:32:28 +00:00
Elliot Lee 24997abbdd Basic framework is there. Now for URL resolution and loading.
Basic framework is there. Now for URL resolution and loading.
1999-12-06 00:49:57 +00:00