2000-06-27 Michael Engber * libnautilus/nautilus-view-component.idl: * libnautilus/nautilus-zoomable.c: (impl_Nautilus_Zoomable__get_is_continuous), (nautilus_zoomable_initialize_class), (nautilus_zoomable_get_arg), (nautilus_zoomable_ensure_zoomable_frame): * src/file-manager/fm-directory-view.c: (fm_directory_view_initialize), (zoomable_zoom_to_fit_callback), (fm_directory_view_set_zoom_level): * src/file-manager/fm-directory-view.h: * src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading), (fm_icon_view_set_zoom_level), (fm_icon_view_bump_zoom_level), (fm_icon_view_zoom_to_level), (fm_icon_view_restore_default_zoom_level): * src/file-manager/fm-list-view.c: (fm_list_view_bump_zoom_level), (fm_list_view_zoom_to_level), (fm_list_view_restore_default_zoom_level), (fm_list_view_begin_loading), (fm_list_view_set_zoom_level): * src/nautilus-view-frame.c: (nautilus_view_frame_initialize_class), (nautilus_view_frame_zoom_level_changed): * src/nautilus-view-frame.h: * src/nautilus-window.c: (zoom_to_fit_callback), (nautilus_window_constructed), (nautilus_window_zoom_level_changed_callback), (nautilus_window_connect_view): * src/nautilus-zoom-control.c: (nautilus_zoom_control_class_initialize), (nautilus_zoom_control_initialize), (nautilus_zoom_control_button_press_event): * src/nautilus-zoom-control.h: * src/nautilus-zoomable-frame-corba.c: (impl_Nautilus_ZoomableFrame_report_zoom_level_changed): Removed zoom_to_default and zoom_parameters_changed. The nautilus-window now queries the zoomable for max and min before showing the zoom control. 2000-06-27 J Shane Culpepper * components/rpmview/Makefile.am: Added components/services/trilobite to the includes in order for a clean build to find some header files. 2000-06-27 John Sullivan Finished task 461 (bookmarks to "Bad URI" should have an icon). I picked arbitrary existing icons (gnome foot for "generic bookmark", gnome-foot-question-mark for "bookmark with known-bad URI"); Arlo and/or Susan will have to come up with real ones. I'll write a separate bug report about that. * icons/i-bookmark.png: * icons/i-bookmark-20.png: * icons/i-bookmark-missing.png: * icons/i-bookmark-missing-20.png: New icons to use for bookmarks. I supplied the base size and the 20 pixel size because that's the one used in menus, where bookmarks usually appear. These need to be replaced with better images. * icons/Makefile.am: Add new icons to installed set. * libnautilus-extensions/nautilus-bookmark.h, * libnautilus-extensions/nautilus-bookmark.c: (nautilus_bookmark_uri_known_not_to_exist): New public function, moved some code from elsewhere to encapsulate this. (nautilus_bookmark_set_icon_to_default): Choose between the generic and bad-URI icon if there's no better icon. * src/nautilus-window-menus.c: (activate_bookmark_in_menu_item): Now calls nautilus_bookmark_uri_known_not_to_exist instead of doing the work here. 2000-06-27 J Shane Culpepper * components/services/startup/nautilus-view/Makefile.am: Fixing gnome-vfs header bustage. 2000-06-26 Eskil Heyn Olsen * components/services/install/lib/Makefile.am: automake, beautifull and yet so nasty. Orbit-idl fix again. 2000-06-26 Eskil Heyn Olsen * helper-utilities/authenticate/Makefile.am: Seems that libnautilus-extensions dep on libnautilus that dep on bonobo, thus this needed BONOBO_LIBS as well. 2000-06-26 Eskil Heyn Olsen * components/services/time/service/Makefile.am: * components/services/install/command-line/Makefile.am: * components/services/install/server/Makefile.am: * components/services/trilobite/sample/service/Makefile.am: And suddenly the bonobo libs went *poof* 2000-06-26 Eskil Heyn Olsen * components/services/install/lib/libeazelinstall.h: Missed a file. 2000-06-26 Eskil Heyn Olsen * components/Makefile.am: Rearranged so libeazelinstall is built before rpmview * components/help/Makefile.am: Added a missing .h file so make dist works * components/rpmview/Makefile.am: * components/rpmview/nautilus-rpm-view-install.c: (nautilus_rpm_view_download_progress_signal), (nautilus_rpm_view_install_progress_signal), (nautilus_rpm_view_download_failed), (nautilus_rpm_view_install_failed_helper), (nautilus_rpm_view_install_failed), (nautilus_rpm_view_dependency_check), (nautilus_rpm_view_install_done), (nautilus_rpm_view_install_package_callback): * components/rpmview/nautilus-rpm-view-install.h: * components/rpmview/nautilus-rpm-view.c: (nautilus_rpm_view_initialize): Added a callback and some skeleton code to the install button. So it now does rpm installs. * components/services/install/lib/Makefile.am: * components/services/install/command-line/Makefile.am: Changed the libnames. * components/services/install/command-line/eazel-alt-install-corba.c: (done), (main): * components/services/install/lib/eazel-install-corba-callback.c: (eazel_install_callback_destroy), (eazel_install_callback_initialize), (eazel_install_callback_new), (eazel_install_callback_corba_objref), (eazel_install_callback_install_packages), (eazel_install_callback_query): * components/services/install/lib/eazel-install-corba-callback.h: * components/services/install/lib/eazel-install-corba-types.h: * components/services/install/lib/eazel-install-protocols.c: (get_search_url_for_package): * components/services/install/server/Makefile.am: * components/services/install/server/main.c: Changed the object destroction scheme, so eazel_install_callback now unrefs and destroys the bonobo object. * components/services/trilobite/sample/lib/Makefile.am: Fixed to pass make dist * nautilus-installer/src/Makefile: * nautilus-installer/src/Makefile.am: Patching so it works with the new installer libs (and still some stroking because of the static stuff) * nautilus.spec.in: * po/POTFILES.in: * test/Makefile.am: Slice and dice so make dist and rpm -ta works again. 2000-06-26 Andy Hertzfeld * src/nautilus-sidebar.c: (nautilus_sidebar_update_info): fixed sidebar background theming by adding a gtk_signal_block_by_func call (and the corresponding unblock) when we set up the background in update_info, so the new background data isn't written out to the metafile, since no explicit change was made. 2000-06-26 Michael Engber * libnautilus-extensions/nautilus-gtk-extensions.c: (nautilus_gtk_marshal_NONE__DOUBLE_DOUBLE_DOUBLE): * libnautilus-extensions/nautilus-gtk-extensions.h: * libnautilus/nautilus-view-component.idl: * libnautilus/nautilus-zoomable.c: (nautilus_zoomable_set_parameters), (nautilus_zoomable_set_zoom_level): * libnautilus/nautilus-zoomable.h: * src/file-manager/fm-directory-view.c: (fm_directory_view_set_zoom_level), (fm_directory_view_set_zoom_parameters): * src/file-manager/fm-directory-view.h: * src/file-manager/fm-icon-view.c: (fm_icon_view_begin_loading), (fm_icon_view_set_zoom_level), (fm_icon_view_init_zoom_params), (fm_icon_view_bump_zoom_level), (fm_icon_view_zoom_to_level), (fm_icon_view_restore_default_zoom_level): * src/file-manager/fm-list-view.c: (fm_list_view_bump_zoom_level), (fm_list_view_zoom_to_level), (fm_list_view_restore_default_zoom_level), (fm_list_view_begin_loading), (fm_list_view_set_zoom_level), (fm_list_view_init_zoom_params): * src/nautilus-view-frame-private.h: * src/nautilus-view-frame.c: (nautilus_view_frame_initialize_class), (nautilus_view_frame_zoom_parameters_changed): * src/nautilus-view-frame.h: * src/nautilus-window.c: (nautilus_window_zoom_level_changed_callback), (nautilus_window_zoom_parameters_changed_callback), (nautilus_window_connect_view): * src/nautilus-zoom-control.c: (nautilus_zoom_control_initialize), (draw_number_and_disable_arrows), (zoom_menu_callback), (create_zoom_menu_item), (nautilus_zoom_control_button_press_event), (nautilus_zoom_control_set_zoom_level), (nautilus_zoom_control_set_min_zoom_level), (nautilus_zoom_control_set_max_zoom_level), (nautilus_zoom_control_get_zoom_level), (nautilus_zoom_control_get_min_zoom_level), (nautilus_zoom_control_get_max_zoom_level): * src/nautilus-zoom-control.h: * src/nautilus-zoomable-frame-corba.c: (impl_Nautilus_ZoomableFrame_report_zoom_level_changed), (impl_Nautilus_ZoomableFrame_report_zoom_parameters_changed): Added report_zoom_parameters_changed to the zoomable interface. This allows the zoom control to get min/max from the zoomable (as opposed to hard coding in values) Also fixed the zoom control to now use just doubles. Renamed the zoom_level_changed message to be report_zoom_level_changed in accordance with convention. 2000-06-26 John Sullivan Finished task 876 (owner and group should be changeable in Properties window). The only part I didn't get done was using asynch gnome-vfs calls. I made that part of bug 845. * libnautilus-extensions/nautilus-string.h, * libnautilus-extensions/nautilus-string.c: (nautilus_strcasecmp): New NULL-handling form of strcasecmp. * libnautilus-extensions/nautilus-glib-extensions.h, * libnautilus-extensions/nautilus-glib-extensions.c: (nautilus_g_str_list_sort), (nautilus_g_str_list_sort_case_insensitive): New functions to sort a list of strings. (compare_strings), (compare_strings_case_insensitive): New helper routines used by the new _sort calls. * src/nautilus-window-manage-views.c: (nautilus_window_report_selection_change): Use nautilus_g_str_list_sort. * libnautilus-extensions/nautilus-file.h, * libnautilus-extensions/nautilus-file.c: (user_has_real_name): New helper function, returns TRUE if a password-file-entry user has a real name distinguishable from the username. (get_user_name_from_id), (get_user_and_real_name_from_id), (get_group_id_from_group_name), (get_ids_from_user_name), (get_user_id_from_user_name), (get_group_id_from_user_name): New helper functions for converting between user & group names & ids. (get_id_from_digit_string): New helper function for converting between an integer as text and an integer. (nautilus_get_user_names): New public function for getting the list of all user names, with the real name (if distinguishable) thrown in for good measure. (nautilus_get_group_names): New public function for getting the list of all group names. (nautilus_file_can_get_owner), (nautilus_file_get_owner_name), (nautilus_file_can_set_owner), (nautilus_file_set_owner), (nautilus_file_can_get_group), (nautilus_file_get_group_name), (nautilus_file_can_set_group), (nautilus_file_set_group): New public functions for reading and setting the group and owner. The setters define an asynch API though currently they're using non-asynch calls internally. (nautilus_file_get_settable_group_names): New public function returning a list of all group names that the current user can set this file's group to. (group_includes_user), (nautilus_get_group_names_including): New helper functions used by _get_settable_group_names. (nautilus_file_get_owner_as_string): Now optionally includes real name in result. (nautilus_file_get_string_attribute): Changed to call _get_owner_as_string with the real name included. * src/file-manager/fm-error-reporting.h: * src/file-manager/fm-error-reporting.c: (fm_report_error_setting_group), (fm_report_error_setting_owner): Error messages for when our predictions fail for whether a group or owner-setting operation will succeed. * src/file-manager/fm-properties-window.c: (file_name_pair_new), (file_name_pair_free): New helper functions for passing around a file and string together (used in callbacks). (group_change_callback), (activate_group_callback), (create_group_menu_item), (synch_groups_menu), (attach_group_menu), (owner_change_callback), (activate_owner_callback), (create_owner_menu_item), (synch_user_menu), (attach_owner_menu): New functions for setting up widgets for display and control of owner and group. (add_special_execution_flags): Use attach_title_field instead of add_permissions_row_label. (permissions_label_update), (add_permissions_row_label): Removed these no-longer-needed functions. (add_permissions_column_label): Change row number constants to match new layout. (create_permissions_page): Use static text for owner & group if non-editable, option menu if editable. (get_property_names): Now calls nautilus_g_str_list_sort. 2000-06-26 Darin Adler * components/hardware/nautilus-hardware-view.c: (nautilus_hardware_view_destroy): * components/loser/content/nautilus-content-loser.c: (nautilus_content_loser_destroy): * components/loser/sidebar/nautilus-sidebar-loser.c: (nautilus_sidebar_loser_destroy): * components/mozilla/nautilus-mozilla-content-view.c: (nautilus_mozilla_content_view_destroy): * components/music/nautilus-music-view.c: (nautilus_music_view_destroy): * components/rpmview/nautilus-rpm-view.c: (nautilus_rpm_view_destroy): * components/sample/nautilus-sample-content-view.c: (nautilus_sample_content_view_destroy): * components/services/time/nautilus-view/trilobite-eazel-time-view.c: (trilobite_eazel_time_view_destroy): * components/tree/nautilus-tree-view.c: (nautilus_tree_view_destroy): Removed a bunch of incorrect calls to bonobo_object_unref. An error in the sample can be an insidious thing. * components/tree/main.c: (tree_object_destroyed), (tree_make_object), (main): Removed some stray debugging stuff. * libnautilus-extensions/Makefile.am: Got rid of the grid * libnautilus-extensions/nautilus-icon-private.h: Got rid of the grid. * libnautilus-extensions/nautilus-icon-container.c: (keyboard_icon_reveal_timeout_callback): Took out unneeded use of thread locking macros. Maybe someday I'll regret this, but we can add them back then. (get_all_icon_bounds): Added shared function. (update_scroll_region): Renamed set_scroll_region and made it use the shared function. Also got rid of grid code. (resort): Got rid of grid code. (lay_down_icons): Got rid of grid code. (relayout): Made it lay down new icons before doing any layout work. Also made sure it doesn't do the resort while stretching. (reload_icon_positions): Got rid of grid code. (rubberband_select): Got rid of grid code. This was the one place that it might have made things a little faster but probably not due to the complexity of what it was doing. (rubberband_timeout_callback): Took out unneeded use of thread locking macros. Maybe someday I'll regret this, but we can add them back then. (destroy): Got rid of grid code. (world_width_changed): Got rid of grid code. (nautilus_icon_container_initialize): Got rid of grid code and an extra idle cycle that wasn't needed. (nautilus_icon_container_clear): Got rid of grid code and added code to update the scroll region on clear. (icon_destroy): Got rid of grid code. (assign_icon_position), (finish_adding_icon), (finish_adding_new_icons), (finish_adding_new_icons_callback), (nautilus_icon_container_add): Replaced old idle code with something specific to adding new icons. This does the proper layout for manual as well as automatic layout cases. * libnautilus-extensions/nautilus-background.h: * libnautilus-extensions/nautilus-background.c: (nautilus_background_initialize_class): Made two signals instead of one. One for when the background's settings change and another for when the appearance changes. (nautilus_background_set_color): Emit both signals. (load_image_callback): Emit only the appearance change signal. (nautilus_background_set_tile_image_uri): Emit both signals. (nautilus_get_widget_background): Connect to the appearance_changed signal. * libnautilus-extensions/nautilus-directory-background.c: (nautilus_connect_background_to_directory_metadata): Connect to the settings_changed signal. * src/file-manager/fm-directory-view.c: (fm_directory_view_real_merge_menus): Connect to the settings_changed signal. * src/nautilus-sidebar.c: (nautilus_sidebar_update_info): Connect to the appearance_changed signal. * components/music/nautilus-music-view.c: (nautilus_music_view_set_up_background): Connect to the settings_changed signal. * HACKING: Gratuitious reformatting. * RENAMING: Added notes about how we do renaming, at the request of one of the hackers. * nautilus-clean.sh: Added nautilus-tree-view to the things that are killed, and made gratuitous changes to the script. Mon Jun 26 15:50:57 2000 George Lebl * components/hardware/Makefile.am, components/help/Makefile.am, components/history/Makefile.am, components/html/Makefile.am, components/music/Makefile.am, components/notes/Makefile.am, components/rpmview/Makefile.am, src/file-manager/Makefile.am: Add $(VFS_CFLAGS) to the includes as it is necessary for gnome-vfs 2000-06-26 Andy Hertzfeld * icons/eazel/Makefile.am: * icons/eazel/i-regular-12.png * icons/eazel/i-regular-24.png * icons/eazel/i-regular-36.png * icons/eazel/i-regular.png * icons/eazel/i-regular-72.png * icons/eazel/i-regular-96.png * icons/vector/i-directory-accept.svg: * icons/vector/i-directory.svg: newer icons from Susan 2000-06-26 Andy Hertzfeld * components/music/Makefile.am: * components/music/mp3head.c,h: (extractI4), (is_mphead), (is_xhead), (get_bitrate), (get_samprate), (get_mpgver): * components/music/mp3head.h: integrated Erik Gustavsson's patch to support variable bit rate file properly in the music view. * components/music/nautilus-music-view.c: (is_mp3_file), (strip_trailing_blanks), (read_id_tag), (extract_number), (fetch_song_info): fixed bug 1281, music view should use mime types instead of extensions, by using the mime type in is_mp3_file. Also, cleaned up Erik's patch for removing trailing blanks and integrated it. 2000-06-26 Kjartan Maraas * HACKING: Move bonobo after gnome-vfs since it now depends on it for bonobo-storage-vfs.c to build. 2000-06-26 Darin Adler * libnautilus-extensions/nautilus-directory-metafile.c: (set_metadata_eat_value): Fixed use of hash table in here. The old code would destroy the wrong key. (Thanks to Ian for pointing that when you insert a value into GHashTable it keeps the old key instead of overwriting with the new one.) * libnautilus-extensions/nautilus-gtk-extensions.c: (nautilus_gtk_signal_connect_free_data): * src/file-manager/fm-properties-window.c: (attach_value_field), (create_emblems_page), (add_permissions_row_label): * src/nautilus-link-set-window.c: (make_link_set_check_box): * src/nautilus-property-browser.c: (make_properties_from_directory_path), (make_properties_from_xml_node), (make_category_link): * src/nautilus-sidebar.c: (nautilus_sidebar_add_panel_items): Got rid of unnecessary casts to (GtkDestroyNotify). 2000-06-26 Darin Adler * components/services/install/command-line/.cvsignore: * components/services/install/lib/.cvsignore: Ignore some additional generated files. * libnautilus-extensions/nautilus-gnome-extensions.h: * libnautilus-extensions/nautilus-gnome-extensions.c: Moved stock dialog functions to nautilus-stock-dialogs.[ch]. (nautilus_gnome_canvas_item_request_update_deep), (nautilus_gnome_canvas_request_update_all), (nautilus_gnome_canvas_set_scroll_region), (nautilus_gnome_canvas_set_scroll_region_left_justify): Added a bunch of functions that were previously private inside NautilusIconContainer. * libnautilus-extensions/nautilus-gtk-extensions.h: * libnautilus-extensions/nautilus-gtk-extensions.c: (nautilus_gtk_adjustment_set_value), (nautilus_gtk_adjustment_clamp_value): Added functions that treat the value range in a GtkAdjustment the same way scroll bars do, taking the page size into account. * libnautilus-extensions/nautilus-horizontal-splitter.h: * libnautilus-extensions/nautilus-horizontal-splitter.c: (nautilus_horizontal_splitter_initialize), (toggle_splitter_position), (nautilus_horizontal_splitter_button_press), (nautilus_horizontal_splitter_button_release): Fixed logic so that splitter will only open or close if you both click and release within the splitter itself. * libnautilus-extensions/nautilus-icon-private.h: * libnautilus-extensions/nautilus-icon-container.c: (icon_toggle_selected): Move icons to front when they are selected. (set_scroll_region): Moved workaround that sets scroll region to be large enough to fill the widget allocation into a function in nautilus-gnome-extensions.h. In the process, I fixed the problem where it would do the job wrong when the view was zoomed. (lay_down_icons), (relayout), (reload_icon_positions): Started work on sharing code between automatic layout of the entire container and layout of new icons as the arrive. (nautilus_icon_container_clear), (nautilus_icon_container_add): Got started on the mechanism for laying out new icons as they arrive in bunches instead of one at a time. * libnautilus-extensions/nautilus-icon-dnd.c: * libnautilus-extensions/nautilus-program-chooser.c: * libnautilus-extensions/nautilus-program-choosing.c: * src/file-manager/dfos-xfer.c: * src/file-manager/fm-directory-view.c: * src/file-manager/fm-error-reporting.c: * src/nautilus-application.c: * src/nautilus-location-bar.c: * src/nautilus-property-browser.c: * src/nautilus-window-manage-views.c: * src/nautilus-window-menus.c: Added includes to source files that use the stock dialogs. * libnautilus-extensions/nautilus-stock-dialogs.h: * libnautilus-extensions/nautilus-stock-dialogs.c: (nautilus_timed_wait_stop), (convert_varargs_to_name_array), (nautilus_simple_dialog), (turn_on_line_wrap_flag), (turn_on_line_wrap_flag_callback), (show_ok_box), (show_yes_no_box), (nautilus_info_dialog), (nautilus_info_dialog_parented), (nautilus_warning_dialog), (nautilus_warning_dialog_parented), (nautilus_error_dialog), (nautilus_error_dialog_parented), (nautilus_yes_no_dialog), (nautilus_yes_no_dialog_parented): Moved all the stock dialog code in here. * src/nautilus-sidebar-title.c: (update_icon): Only display the icon when it's ready, instead of showing generic document icon before that time. (update_title), (update_more_info), (update_emblems), (update_notes): Added FIXMEs about doing the same with other info. (nautilus_sidebar_title_button_press_event): Added a FIXME to the half-baked code in here. 2000-06-26 Fatih Demir * Makefile.am: Added the previous ChangeLogs to the EXTRA_DIST target. * configure.in: Cosmetics and a configuration summary at the end of the ./configure process. * helper-utilities/authenticate/nautilus-authenticate.h: Include for compiling with -Werror without error. 2000-06-26 Pavel Cisler * acconfig.h: * configure.in: Fix build breakage caused recent changes to make GnomeVFS compile without OAF support. Some GnomeVFS headers now require USING_OAF to be defined and when included from Nautilus, this define was missing. Not sure this is the 100% correct way to do this but this should at least prevent people from being stuck with a broken build. 2000-06-26 Andy Hertzfeld Added XML-based theme mechanism and used it for the sidebar background, which isn't entirely working yet. * icons/Makefile.am: * icons/default.xml: * icons/eazel/Makefile.am: * icons/eazel/eazel.xml: * icons/vector/Makefile.am: * icons/vector/vector.xml: New XML-based theme files. * libnautilus-extensions/nautilus-global-preferences.c,h: (global_preferences_create_dialog), (global_preferences_register_for_ui): Changed "icon_theme" preference to general "theme". * libnautilus-extensions/nautilus-icon-factory.c: (nautilus_get_current_icon_factory), (nautilus_icon_factory_destroy), (icon_theme_changed_callback): Changed from "icon_theme" to "theme". * libnautilus-extensions/nautilus-preferences-item.c,h: (preferences_item_construct), (preferences_item_create_theme): Changed from "icon_theme" to "theme". * libnautilus-extensions/nautilus-xml-extensions.c,h: (nautilus_xml_get_child_by_name): Added a routine to access child nodes. * src/nautilus-sidebar.c: (nautilus_sidebar_initialize), (nautilus_sidebar_destroy), (nautilus_sidebar_read_theme), (nautilus_sidebar_theme_changed), (nautilus_sidebar_background_changed), (nautilus_sidebar_update_info): Made the sidebar get its default values from an XML-based theme file, and reload them when the theme changes. 2000-06-25 Andy Hertzfeld * libnautilus-extensions/nautilus-link.c: (free_icon_notification_info), (icon_read_done_callback), (is_remote_uri), (nautilus_link_get_image_uri): Linksets now use gnome-vfs to load load icons over http instead of ghttp, using Darin's new utility routines. Also, made it load them asynchronously. * libnautilus-extensions/nautilus-icon-factory.c: (nautilus_icon_factory_get_pixbuf_for_icon): Made get_pixbuf_for_icon set the custom boolean when it calls get_icon_from_cache if necessary. 2000-06-25 Fatih Demir * ChangeLog: This is the fresh one. * ChangeLog-20000625: Split up the ChangeLog.