1999-12-30 John Sullivan * src/nautilus_bookmarklist.c: (nautilus_bookmarklist_get_file_path): Create directory that contains bookmarks file if it's not already there. Saving bookmarks would have failed (silently) for anyone who didn't already have a ~/.gnomad directory without this change. 1999-12-30 John Sullivan Made NautilusBookmark use gchar * instead of GString since it wasn't using any special GString features. * src/nautilus-bookmark.h: changed definition in struct * str/nautilus-bookmark.c: (nautilus_bookmark_destroy): changed g_string_free to g_free (init): eliminated g_string_new (nautilus_bookmark_get_name): replaced bookmark->uri->name with bookmark->name (nautilus_bookmark_get-uri): replaced bookmark->uri->str with bookmark->uri (nautilus_bookmark_new): changed initializers from GString style to gchar * style Save/restore bookmarks across sessions with XML file. * src/nautilus_bookmarklist.c: (append_bookmark_node): new foreach static function (destroy_bookmark): new foreach static function (nautilus_bookmarklist_get_file_path): new static function (nautilus_bookmarklist_load_file): new static function (nautilus_bookmarklist_save_file): new static function (init): renamed to nautilus_bookmark_init (class_init): renamed to nautilus_bookmark_class_init (nautilus_bookmarklist_contents_changed): now calls nautilus_bookmarklist_save_file (nautilus_bookmarklist_init): now calls nautilus_bookmarklist_load_file 1999-12-30 John Sullivan Linked in GNOME-XML library, since I'll need it for bookmarks. * configure.in: defined XML-related macros (copied from gconf) * src/Makefile.am: included $(XML_CFLAGS) and $(XML_LIBS) 1999-12-30 John Sullivan The bookmark-editing window is now functional, though simple. It allows editing names & uris, reordering bookmarks via dragging in the list, and removing bookmarks. Coming next: bookmarks persisting across sessions. * src/nautilus-bookmarks-window.h: New file. * src/nautilus-bookmarks-window.c: New file. * src/Makefile.am: added nautilus-bookmarks-window.[ch] * src/nautilus-bookmarklist.h, nautilus-bookmarklist.c: (nautilus_bookmarklist_delete_item_at): New function (nautilus_bookmarklist_insert_item): New function * src/nautilus-bookmarks-menu.c: (init): Removed insensitization of Edit Bookmarks item. Added parameter names to prototypes where they were missing * src/nautilus-bookmark.h * src/nautilus-bookmarklist.h * src/nautilus-bookmarks-menu.h Fixed bug where activating bookmarks failed in any but the first window * src/nautilus-bookmarks-menu.c (bookmark_activated_cb): (nautilus_bookmarks_menu_repopulate): Changed bookmark menu items to keep a pointer to their menu, rather than the menu's window, because sometimes the menu's window isn't set when the menu item is created. 1999-12-29 John Sullivan * src/nautilus-bookmarklist.c: (nautilus_bookmarklist_contains): changed two g_return_if_fail to g_return_val_if_fail. Eek! I accidentally checked this in yesterday without compiling. I should be tarred and feathered. (nautilus_bookmarklist_append): Now calls new nautilus_bookmark_copy * src/nautilus-bookmark.c: (nautilus_bookmark_copy): New method * src/nautilus-bookmark.h: (nautilus_bookmark_copy): New method 1999-12-28 John Sullivan * src/nautilus-bookmark.c: * src/nautilus-bookmarklist.c: * src/nautilus-bookmarks-menu.c: Removed unnecessary g_return_if_fail (obj != NULL) calls since the g_return_if_fail (NAUTILUS_IS_WHATEVER (obj)) call also handles the NULL case. Also added some more calls of the latter type. 1999-12-28 John Sullivan * src/nautilus-bookmark.c, src/nautilus-bookmark.h: (nautilus_bookmark_compare_with): new function, compares two bookmarks for equivalence, used by: * src/nautilus-bookmarklist.c, src/nautilus-bookmarklist.h: (nautilus_bookmarklist_contains): new function, checks whether a given bookmark is already in the list, used by: * src/nautilus-bookmarks-menu.c, src/nautilus-bookmarks-menu.h: (add_bookmark_cb): now silently refuses to add another bookmark for the current location if there's one already in the list. (init): now uses connect_signal_while_alive to avoid nastiness when trying to add a bookmark after one or more windows were closed. * src/ntl-window.c: (file_menu_new_window_cb): Now calls nautilus_app_create_window() instead of creating the new window in line, so that the window count gets properly updated and closing windows works correctly. 1999-12-28 John Sullivan * src/ntl-view.c: (nautilus_view_load_client): Undid the previous change. It turned out I needed to rebuild the latest ORBit and then the latest gnome-libs. I had built them in the wrong order before. 1999-12-28 John Sullivan * src/ntl-view.c: (nautilus_view_load_client): cast a const CORBA_char * to a CORBA_char * in call to GNOME_Unknown_query_interface to fix the build. Darin thinks this is a mistake in the API and is investigating fixing the API. 1999-12-22 Elliot Lee * src/ntl-uri-map.[ch]: Add initialization function. Implement scheme mapping. * 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-21 Elliot Lee * 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-20 Maciej Stachowiak * 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). * components/html/ntl-web-browser.c: Fix warnings. 1999-12-20 Elliot Lee * 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 John Sullivan * src/nautilus-bookmark.h,c: new files * src/nautilus-bookmarklist.h,c: new files * src/nautilus-bookmarks-menu.h,c: new files * src/Makefile.am: added these six new files to nautilus_SOURCES * src/ntl-window.c: now #includes nautilus-bookmarks-menu.h (bookmarks_menu_info[]): removed all items except GNOMEUIINFO_END; subtree is added dynamically later. (nautilus-window-constructed): insert bookmarks menu (nautilus-window-constructed): add padding to status bar so text isn't jammed against frame. The bookmark menu is now limping along. The Add Bookmark item works, and the items that get added do the right thing. Edit Bookmarks is still insensitive, so there's no way to remove items. Except by quitting, because they aren't yet being saved/restored across sessions. 1999-12-20 Havoc Pennington * 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-20 Havoc Pennington * 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-20 Elliot Lee * 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 Havoc Pennington * 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 Havoc Pennington * 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-17 Havoc Pennington * src/file-manager/desktop-item.h: New module, for items on the desktop * 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 Havoc Pennington * 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-17 Maciej Stachowiak * 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-17 Havoc Pennington * 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-17 Havoc Pennington * 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-16 Elliot Lee * 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-16 John Sullivan * src/ntl-window.c: * src/ntl-main.c: * src/file-manager/fm-directory-view.c: Changed evil // comments to /* */. Sorry about that! * src/ntl-window.c: added insensitive rudimentary Bookmark menu 1999-12-16 Havoc Pennington * 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-16 Maciej Stachowiak * src/ntl-window.c: Put meta-views on the right. * src/ntl-window.c, src/ntl-main.c, src/ntl-window.h, src/ntl-window-msgs.c, src/ntl-window-state.c: 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-16 Darin Adler * libnautilus/.cvsignore: Ignore all *.lo instead of listing each. * libnautilus/Makefile.am: Added gdk-extensions.c and $(WERROR). * libnautilus/gdk-extensions.[ch]: Added functions for filling with a gradient. Currently they are named gdk_fill_rectangle_with_gradient and gdk_interpolate_color, but perhaps the gdk_ prefix should be replaced with another one. These functions are not yet tested, but they compile and I want to get them in here before I leave for vacation. * src/ntl-uri-map.c: (nautilus_navinfo_new): Some null checks in the "click on an item" hack. This was a halfhearted attempt to get the program to not segfault when you open icons. * src/ntl-window-msgs.c: (nautilus_window_load_content_view): Some g_return_if_fail in here. I'll add a ton more at some point. These were part of the halfhearted attempt to get the program to not segfault when you open icons. * src/file-manager/.cvsignore: Igore all *.lo instead of listing each. 1999-12-16 Elliot Lee * 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 John Sullivan * src/ntl-window.c (file_menu_new_window_cb): New, currently empty callback. * src/ntl-window.c (file_menu_info[]): Added New Window item. * src/ntl-window.c (edit_menu_info[]): Added standard menu items, all unimplemented as of now. * src/ntl-window.c (help_menu_info[]): Added About item, unimplemented as of now. * src/ntl-window.c (main_menu[]): Now includes edit and help menus. * src/ntl-window.c (nautilus_window_constructed): Changed the way the toolbar is created, to fix bug where Back failed because data parameter was NULL. Also desensitized all the new unimplemented menu items. 1999-12-16 Maciej Stachowiak * src/file-manager/gnome-desktop.c (main): Quiet some warnings. >>>>>>> 1.33 1999-12-16 Havoc Pennington * 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 Havoc Pennington * 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 John Sullivan * src/file-manager/fm-directory-view.c (directory_load_cb): changed assert to warning 1999-12-16 Elliot Lee * 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-15 John Sullivan * src/ntl-window.c: (nautilus_window_constructed): Added beginnings of a menu bar, and reorganized toolbar a little. There's a rudimentary File menu now. The View As option menu moved down to the location bar line. This is by no means a complete or final organization, but it's a start. * (file_menu_close_cb): new callback for File/Close menu item * (file_menu_exit_cb): new callback for File/Quit menu item * file_menu_info[]: new GNOMEUIINFO struct for File menu * toolbar_info[]: new GNOMEUIINFO struct for toolbar 1999-12-15 Elliot Lee * Warning fixes throughout. * Use $(WERROR) in Makefiles to get -Werror. 1999-12-15 Darin Adler * components/help/.cvsignore: Ignore more generated files. * components/help/hyperbols-filefmt.c: Fix warnings. * components/help/hyperbols-main.c: Fix warnings. * components/help/hyperbols-nav-tree.c: Fix warnings. 1999-12-15 Elliot Lee * 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 Darin Adler * configure.in: Turned "-Wshadow" and "-Wundef" off for now, since they fire in some existing code. * gnome-icon-container.c: (handle_icon_button_press): Null out the drag variables before sending the activate signal. This makes activating an icon with a double-click work without crashing. * ntl-main.c: (main): Make critical and warning messages fatal if NAUTILUS_DEBUG is set in the environment. Make sure you have a new gnome-vfs that doesn't use g_warning for status messages. * ntl-window-msgs.c: (nautilus_window_change_location_internal): Made the history store away the current position as the new "previous" instead of storing away the new position. This makes the forward and back buttons work better. * ntl-window.c: (nautilus_window_back, nautilus_window_fwd): Had to make a corresponding change here after the change to the history mechanism. * fm-directory-view.c: (display_selection_info): Some fixes to the selection info display: "file"/"files" was backwards, text said "in" before the file size, and the display was not cleared when the selection was made empty. I still see problems where the selection info gets cleared when the window is lowered and then raised. 1999-12-15 Andy Hertzfeld * my first change: changed ntl-window-state.c (nautilus_window_set_initial_state): changed initial path to be the user's home directory, getting rid of confusing "localhost" 1999-12-15 Elliot Lee * 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 Darin Adler * libnautilus/gtkscrollframe.c (gtk_scroll_frame_size_allocate): Rolled out my change. I was confused. Elliot had this fixed already but I forgot to "make install". 1999-12-15 Darin Adler * libnautilus/gtkscrollframe.c (gtk_scroll_frame_size_allocate): Fixed overflow problem caused by gint16 local variable. 1999-12-15 Darin Adler * src/ntl-window.c (nautilus_window_constructed): Fixed signal handler to point to nautilus_window_goto_url_cb instead of nautilus_window_goto_url. This was causing a bad cast when a new URL was typed. 1999-12-15 Darin Adler * src/ntl-uri-map.c (nautilus_navinfo_new): Changed back to const gchar*. To compile, you need to install the latest gnome-vfs. 1999-12-15 Elliot Lee * libnautilus/gtkscrollframe.c: Fix size_allocate. 1999-12-14 Maciej Stachowiak * src/ntl-uri-map.c (nautilus_navinfo_new): a const char* can't be passed where a gchar* is expected. 1999-12-14 Darin Adler * configure.in: Turned on more warnings, including -Werror. I found one or two real bugs, and made some minor changes to quiet the compiler so I could turn on some useful warnings that triggered on the existing code. * src/file-manager/dfos-xfer.c: (handle_xfer_vfs_error): Fixed a place where it was calling the gnome error(), but using the parameters from the old gnome-fm error() function. * libnautilus/ntl-meta-view-client.c: (nautilus_meta_view_set_label): Fixed a place where we were passing in string literals to code that will free them. We need to call g_strdup before passing them to gnome_property_bag_add. * libnautilus/gnome-icon-container.c: Fixed a warning. * libnautilus/gtkscrollframe.c: Fixed a warning. * libnautilus/ntl-content-view-client.c: Fixed a warning. * libnautilus/ntl-view-client.c: Fixed a warning. * libnautilus/ntl-content-view.c: Fixed a warning. * src/ntl-main.c: Fixed a warning. * src/ntl-meta-view.c: Fixed a warning. * src/ntl-types.h: Fixed a warning. * src/ntl-view.c: Fixed a warning. * src/ntl-window.c: Fixed a warning. * src/file-manager/dfos-xfer-progress-dialog.c: Fixed a warning. * src/file-manager/fm-icon-cache.c: Fixed a warning. 1999-12-14 Elliot Lee * 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-14 Darin Adler * src/ntl-window.c: (nautilus-window-constructed): Forward-button signal was connected with NULL parameter instead of window. Fixed that so it has a chance of working. * .cvsignore: Ignore more generated files. * components/.cvsignore: Ignore more generated files. * help/.cvsignore: Ignore more generated files. * history/.cvsignore: Ignore more generated files. * icons/.cvsignore: Ignore more generated files. * idl/.cvsignore: Ignore more generated files. * libnautilus/.cvsignore: Ignore more generated files. * src/.cvsignore: Ignore more generated files. * src/file-manager/.cvsignore: Ignore more generated files. 1999-12-14 John Sullivan * src/ntl-window.c: (nautilus-window-constructed): Reordered option menu creation code to fix bug where it wasn't sizing itself properly. Changed label of placeholder item and desensitized it to make it more obvious that it's a non-working placeholder. 1999-12-14 Elliot Lee * 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-13 Elliot Lee * 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-10 Elliot Lee * 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-09 Elliot Lee * Start migration from gnome-fm. src/explorer-location-bar.[ch]: Copy over from gnome-fm, change signal to include new URI. src/ntl-window.c: Make NautilusWindow use it.