fixed problem where sounds with special characters in their filename
wouldn't preview properly; also, replace the computer link icon with
a more generic, vector-based one and upgraded the open folder to
one with gradients
* components/services/startup/nautilus-view/nautilus-service-startup-view.c:
(gather_config_button_cb), (register_button_cb):
Fixed callers that were using the escape and unescape calls from
gnome-vfs. My guess is that these callers don't want exactly what
they are getting, but at least this makes it compile.
* src/nautilus-window-manage-views.c:
(nautilus_window_request_location_change):
There was code here to just unescape. This is not a good idea,
since it will turn good URIs into bad URIs. On the other hand, we
may need to do something for basic characters like %20 for better
readability.
* nautilus-widgets/nautilus-user-level-manager.c:
(user_level_manager_new),
(nautilus_user_level_manager_get_user_level):
Added some FIXMEs.
* libnautilus-extensions/nautilus-program-chooser.c:
(nautilus_program_chooser_get_type), (compare_mime_applications),
(compare_component_with_view), (is_component_in_short_list),
(is_component_in_short_list_for_uri),
(is_application_in_short_list),
(is_application_in_short_list_for_uri),
(is_in_short_list_for_file_type), (is_in_short_list_for_file),
(update_selected_item_details),
(run_program_configurator_callback),
(nautilus_program_chooser_new),
(nautilus_program_chooser_get_application),
(nautilus_program_chooser_get_component): Provided real
implementation for checking whether a program is in the
file-specific list, just short list, or just full list,
as used in "View as Other" dialog. These values were
formerly all hardwired. Still need to add code to
react to user's changes. Also renamed "Change" button to
"Modify" when Josh rightly pointed out that "Change" is
a little ambiguous.
available components
* src/nautilus-applicable-views.c (got_file_info_callback):
Changed to use the mime APIs to determine the preferred list and
default for view components.
(view_identifier_has_iid, view_identifier_iids_compare): Some
utility functions.
Also removed many of the other functions in here that are no
longer necessary and have effectively moved to
nautilus-mime-actions.c
dialog from "View as" menu wouldn't update the menu
title.
* src/nautilus-window.c: (nautilus_window_synch_content_view_menu),
(view_menu_choose_view_callback),
(nautilus_window_load_content_view_menu): Renamed
"synch_view_as_menu" to "nautilus_window_synch_content_view_menu".
* src/nautilus-window-private.h: Put this function here so it
can be used in -manage-views.c.
* src/nautilus-window-manage-views.c:
(nautilus_window_has_really_changed): Call this function to
fix "View as" menu title when the view but not the location changes.
* src/file-manager/fm-directory-view.c:
(add_component_to_gtk_menu),
(add_component_to_bonobo_menu): Call viewers "xxx Viewer"
in "Open With" submenu.
(add_open_with_bonobo_menu_item): Use the double-underscore
trick to avoid getting underlined characters in program names.
* src/nautilus-window.c: (chose_component_callback):
Don't destroy identifier here; caller handles that. Now the
View as Other choice in the option menu works, with one bug:
the option menu label isn't updated properly.
* libnautilus-extensions/nautilus-directory-metafile.c:
(nautilus_directory_set_metadata_list): Added this function.
The guts was already there.
* test/.cvsignore: Ignore some newly generated files.
* libnautilus-extensions/nautilus-directory.h,
libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_wait_until_ready): Non-asynchronous equivalent
of `nautilus_directory_call_when_ready'. However, it doesn't block
the UI while waiting.
(nautilus_directory_wait_until_ready_callback): Helper function
for implementing the above.
* libnautilus-extensions/nautilus-mime-actions.c:
(nautilus_mime_get_default_action_type_for_uri,
nautilus_mime_get_default_action_for_uri,
nautilus_mime_get_default_application_for_uri,
nautilus_mime_get_default_component_for_uri): Implemented with
fully with proper metadata checking and interface querying, etc.
(nautilus_mime_get_short_list_applications_for_uri,
nautilus_mime_get_short_list_components_for_uri,
nautilus_mime_get_all_applications_for_uri,
nautilus_mime_get_all_components_for_uri): Adjusted to deal with
the mime type checking function changing names.
(OAF_ServerInfo__copy, extract_prefix_add_suffix,
mime_type_get_supertype, uri_string_get_scheme),
get_explicit_content_view_iids_from_metafile,
make_oaf_query_for_explicit_content_view_iids,
make_oaf_query_with_known_mime_type,
make_oaf_query_with_uri_scheme_only,
file_list_to_mime_type_hash_table, free_key,
mime_type_hash_table_destroy, server_matches_content_requirements,
nautilus_do_component_query): Oodles of helper functions, many cut
& pasted from elswhere and only slightly modified.
get_mime_type_from_uri: Removed `_hack' from the name.
* libnautilus-extensions/nautilus-mime-actions.h: Added prototype
for nautilus_mime_get_default_action_type_for_uri.
* test/test-nautilus-mime-actions.c (main): Call gnome_init.
* src/nautilus-applicable-views.c: Removed a stray comment that no
longer applies.
* libnautilus-extensions/nautilus-program-choosing.h,
libnautilus-extensions/nautilus-program-choosing.c:
(nautilus_launch_application): Take a GnomeVFSMimeApplication *
instead of a command string; add gnome-terminal -x
(nautilus_launch_application_from_command): Old version that takes
a command string renamed. Also, uses `system' instead of `execlp',
so command-line arguments in the command string work.
* libnautilus-extensions/nautilus-program-chooser.c
(launch_mime_capplet): Adjusted to conform.
* src/file-manager/fm-directory-view.c
(fm_directory_view_launch_application): Likewise.
* src/nautilus-sidebar.c: (command_button_callback,
nautilus_sidebar_chose_application_callback, add_command_buttons):
Likewise.
* test/test-nautilus-mime-actions.c (print_application): Show the
requires_terminal field for applications.
* libnautilus-extensions/nautilus-directory.h,
libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_wait_until_ready): Non-asynchronous equivalent
of `nautilus_directory_call_when_ready'. However, it doesn't block
the UI while waiting.
(nautilus_directory_wait_until_ready_callback): Helper function
for implementing the above.
* libnautilus-extensions/nautilus-mime-actions.c:
(nautilus_mime_get_default_action_type_for_uri,
nautilus_mime_get_default_action_for_uri,
nautilus_mime_get_default_application_for_uri,
nautilus_mime_get_default_component_for_uri): Implemented with
fully with proper metadata checking and interface querying, etc.
(nautilus_mime_get_short_list_applications_for_uri,
nautilus_mime_get_short_list_components_for_uri,
nautilus_mime_get_all_applications_for_uri,
nautilus_mime_get_all_components_for_uri): Adjusted to deal with
the mime type checking function changing names.
(OAF_ServerInfo__copy, extract_prefix_add_suffix,
mime_type_get_supertype, uri_string_get_scheme),
get_explicit_content_view_iids_from_metafile,
make_oaf_query_for_explicit_content_view_iids,
make_oaf_query_with_known_mime_type,
make_oaf_query_with_uri_scheme_only,
file_list_to_mime_type_hash_table, free_key,
mime_type_hash_table_destroy, server_matches_content_requirements,
nautilus_do_component_query): Oodles of helper functions, many cut
& pasted from elswhere and only slightly modified.
get_mime_type_from_uri: Removed `_hack' from the name.
* libnautilus-extensions/nautilus-mime-actions.h: Added prototype
for nautilus_mime_get_default_action_type_for_uri.
* test/test-nautilus-mime-actions.c (main): Call gnome_init.
* src/nautilus-applicable-views.c: Removed a stray comment that no
longer applies.
* test/test-nautilus-mime-actions.c: Simple test program to check
_for_uri nautilus metadata calls in nautilus.
* test/Makefile.am: Build test-nautilus-mime-actions
* Makefile.am, configure.in: add test directory to the build.
* libnautilus-extensions/nautilus-mime-actions.c
(nautilus_mime_get_default_action_for_uri,
nautilus_mime_get_default_application_for_uri,
nautilus_mime_get_default_component_for_uri): Implemented in the
same temporary stub way as the other calls.
* libnautilus-extensions/nautilus-mime-actions.c
(nautilus_mime_get_default_action_for_uri,
nautilus_mime_get_default_application_for_uri,
nautilus_mime_get_default_component_for_uri): Implemented in the
same temporary stub way as the other calls.
fixed bug 991, image files that are less than 16K are displayed
full-size, even if they're huge. Fixed by using a reasonable
max size based on the scale factor.
* src/file-manager/fm-directory-view.c:
(add_open_with_bonobo_menu_item): Now takes callback
and callback data and uses them for menu item construction.
(bonobo_launch_application_callback),
(add_application_to_bonobo_menu),
(bonobo_open_location_with_viewer_callback),
(add_component_to_bonobo_menu): Pass along structs containing
info necessary to launch app or switch viewers. Tragically
these are leaked due to the lack of DestroyNotify mechanism
in Bonobo (bug written).
(reset_bonobo_open_with_menu): Uncomment out list-freeing
lines now that API is in place.
(fm_directory_view_chose_component_callback),
(choose_component): Pass NautilusFile instead of view so we
can get at the uri in the future when we have API for
switching locations with specified viewer.
first checkin for link sets, which are incomplete and not hooked
up yet. Also, added a title to the property browser and improved
the default color choices to one's specified by Susan.
2000-05-31 Seth Nickell <snickell@stanford.edu>
* libnautilus-extensions/nautilus-directory.c:
(construct_alternate_metafile_uri), (nautilus_directory_new):
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_matches_uri), (nautilus_file_get_uri):
Changed calls to gnome_vfs_append_path to use the similar
but more specific gnome_vfs_append_file_name instead.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_denies_access_permission): Fixed a bug where I
accidentally treated root as "unable to access anything" instead
of "able to access everything".
* src/nautilus-sidebar-tabs.h: Fixed file name in include guard.
I'll probably need to write a script to find the broken ones.
* src/nautilus-window-manage-views.c: (handle_unreadable_location):
Fixed a bug where we unref's a file object before using it.
* src/nautilus-window-private.h: Got rid of a straggler prototype
for a nonexistent function.
* RENAMING: Some are done.
* src/nautilus-sidebar-tabs.c:
(nautilus_index_tabs_initialize_class), (draw_one_tab),
(draw_or_hit_test_all_tabs):
Honor the gtkstyle font instead of hacking in our own. Part of
bug 667.
* src/nautilus-application.c: (nautilus_app_startup):
Make a new window even when you say --manage-desktop for now,
because closing the last window or Quit is the only way to get
rid of the desktop until we do some more work on it.
* src/nautilus-window-manage-views.c:
(nautilus_window_request_location_change):
Always open in a new window when starting with the desktop.
* src/nautilus-window.c: (nautilus_window_goto_uri_callback),
(nautilus_window_constructed): Tiny formatting tweak.
* libnautilus-extensions/nautilus-mime-type.c,
* libnautilus-extensions/nautilus-mime-type.h:
Removed these files, which had contained the old stopgap
mime-type-to-application table.
* libnautilus-extensions/Makefile.am: Take removed files out
of build.
* src/nautilus-property-browser.c,
* src/nautilus-sidebar.c: Remove #includes for removed files.
* libnautilus-extensions/nautilus-program-chooser.c:
(populate_program_list): Change the way data from program lists
is freed; this clarifies the code and fixes a double-destroy.
* src/nautilus-sidebar.c: (nautilus_sidebar_update_buttons):
Don't display "Open With..." button if there are no available
choices. This fixes part of bug 1044 (need to do the same
kind of thing for menus).
* src/file-manager/fm-directory-view.c:
(compute_menu_item_info): Initialize *return_sensitivity to
TRUE; it was uninitialized in some cases.
(add_application_to_gtk_menu), (create_open_with_gtk_menu):
Cleaned up list-handling using new gnome-vfs API.
* src/nautilus-sidebar.c: Removed placeholder local implementation
of gnome_vfs_mime_application_list_free now that there's a real
one in gnome-vfs.
* libnautilus-extensions/Makefile.am:
* libnautilus-extensions/nautilus-generous-bin.h:
* libnautilus-extensions/nautilus-generous-bin.c:
Added a new class NautilusGenerousBin. This is a GtkBin
subclass that gives its entire allocation to its child.
Used both in the widgetry for desktop windows and as a
base class for NautilusViewFrame for now.
* libnautilus-extensions/nautilus-gnome-extensions.c:
(turn_on_line_wrap_flag), (turn_on_line_wrap_flag_callback):
Changed to use gtk_container_foreach instead of the old
gtk_container_children, since I now understand that the
latter is just a convenience cover for the former.
* src/Makefile.am:
* src/nautilus-window-state.c: [removed]
* src/nautilus-window-state.h: [removed]
The only function in here was a wonky one that did goto_uri
of go_home depending on the parameter. Changed the callers
and things got clearer anyway.
* src/nautilus-application.h:
* src/nautilus-application.c: (display_caveat),
(nautilus_app_startup):
* src/nautilus-main.c: (main):
Changed rules about which windows are created on startup. This
puts us into a slightly bad state because it's now easy to
create a desktop window with no way to get rid of it.
* src/nautilus-desktop-window.h:
* src/nautilus-desktop-window.c:
(nautilus_desktop_window_initialize_class),
(nautilus_desktop_window_initialize), (destroy), (realize):
A better cut at the desktop window creation that now mostly works.
* src/nautilus-main.c: (main):
Changed the "--desktop" option's name to "--manage-desktop".
* src/nautilus-view-frame.h:
* src/nautilus-view-frame.c:
(nautilus_view_frame_initialize_class),
(nautilus_view_frame_initialize),
(nautilus_view_frame_destroy_client),
(nautilus_view_frame_destroy),
(nautilus_view_frame_construct_arg_set):
Changed to use NautilusGenerousBin as base class. Also use the
Nautilus boilerplate macros.
* src/nautilus-window-manage-views.c:
(nautilus_window_request_location_change):
Use goto_uri instead of set_initial_state.
* src/nautilus-window-private.h:
* src/nautilus-window.h:
* src/nautilus-window.c: (nautilus_window_go_home):
Make go_home public and move the actual code needed to go to the
home package into the function.
* src/nautilus-window.c: (nautilus_window_constructed):
Reduced the amount of hackery on behalf of the desktop window and
used the NautilusGenerousBin class.
* components/mozilla/nautilus-mozilla-content-view.c:
(nautilus_mozilla_content_view_load_uri),
(mozilla_content_view_request_location_change):
Exorcist the moz:// hack.
* components/mozilla/nautilus-mozilla-content-view.oafinfo:
Change the protocol from moz to http.
* src/nautilus-applicable-views.c:
Prefer the mozilla component over the ntl-web-browser.
* components/rpmview/nautilus-rpm-view.oafinfo:
"fix" bug 725 by changing the supported uri types of the rpm view
component to be only "file" since it doesnt grok remote uris.
Having the rpm view grok remote uris would be a cool, feature. I
have resummarized bug 725 to reflect this.
* RENAMING: Small updates.
* components/help/converters/gnome-info2html2/main.c: (main):
* components/html/glibwww-init.c: (glibwww_parse_proxy_env):
* components/html/ntl-web-browser.c: (main):
* components/loser/content/nautilus-content-loser.c:
(ensure_fail_env):
* components/loser/sidebar/nautilus-sidebar-loser.c:
(ensure_fail_env):
* components/notes/nautilus-notes.c: (main):
* libnautilus-extensions/nautilus-view-identifier.c:
(get_lang_list):
* src/nautilus-application.c: (nautilus_app_startup):
* src/nautilus-main.c: (main):
Changed from getenv to g_getenv, even though it makes no
difference right now, because it's "the right thing to do (tm)".
* components/services/time/nautilus-view/trilobite-eazel-time-view.h:
Fixed include (the build was broken for me or anyone who doesn't
have old .h files sitting around in their install directory).
* libnautilus-extensions/nautilus-directory.c:
(construct_alternate_metafile_uri):
Use nautilus_get_user_directory instead of hard-coding the name
of the user directory.
* libnautilus-extensions/nautilus-file-utilities.h:
* libnautilus-extensions/nautilus-file-utilities.c:
(nautilus_get_user_directory), (nautilus_get_user_main_directory):
Use #defines instead of global constants since these are things
that do not change and this is not C++ :-) Added "get_" to the
names of these functions so they would be verbs instead of nouns.
(nautilus_get_desktop_directory): Added this new function for use
by the desktop code.
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_create_dialog),
(nautilus_global_preferences_get_enabled_sidebar_panel_view_identifiers),
(nautilus_global_preferences_get_disabled_sidebar_panel_view_identifiers),
(global_preferences_register_sidebar_panels_preferences_for_ui):
* libnautilus-extensions/nautilus-view-identifier.h:
* libnautilus-extensions/nautilus-view-identifier.c:
(nautilus_view_identifier_list_free):
* src/nautilus-applicable-views.c: (nautilus_navigation_info_free):
Changed nautilus_view_identifier_free_list to *_list_free to match
other calls with similar names.
* libnautilus-extensions/nautilus-global-preferences.c:
(user_level_changed_callback):
* libnautilus-extensions/nautilus-icon-factory.c:
(get_themed_icon_file_path):
* src/file-manager/fm-properties-window.c: (get_property_names):
* src/nautilus-bookmark-list.c:
(nautilus_bookmark_list_get_file_path):
* src/nautilus-property-browser.c:
(nautilus_property_browser_drag_data_get), (make_drag_image),
(remove_color), (remove_background), (remove_emblem),
(get_xml_path), (add_background_to_browser), (add_color_to_file),
(emblem_dialog_clicked), (make_properties_from_directory):
Change to use directory calls by new "get_" names.
* src/Makefile.am: Removed nautilus.h since it is long gone,
and fixed spelling of nautlus-window-state.h.
* src/file-manager/.cvsignore: Stop ignoring things that we
no longer generated.
* src/file-manager/desktop-item.c: [removed]
* src/file-manager/desktop-item.h: [removed]
* src/file-manager/desktop-layout.c: [removed]
* src/file-manager/desktop-layout.h: [removed]
* src/file-manager/desktop-window.c: [removed]
* src/file-manager/desktop-window.h: [removed]
The rest of the code has been harvested from the desktop
implementation. As I said before we can always recover it if we
decide we want to reuse it.
* src/file-manager/fm-main.c: [removed]
This was no longer used and was getting out of date. The file manager
is now compiled in rather than being a separate process.
* src/nautilus-desktop-window.c:
(nautilus_desktop_window_initialize_class),
(nautilus_desktop_window_initialize),
(nautilus_desktop_window_new), (realize):
Another cut at the desktop code. Still not working too well,
but way further along.
* src/nautilus-sidebar.h:
* src/nautilus-sidebar.c:
* src/nautilus-view-frame.c:
(nautilus_view_frame_handle_client_destroy_2):
* src/nautilus-window-manage-views.c:
* src/nautilus-window.h:
* src/nautilus-window.c:
* src/nautilus-window-private.h:
Changed the names to use Sidebar instead of IndexPanel.
Also changed to say sidebar panel instead of meta view in many
places.
* nautilus-widgets/nautilus-user-level-manager.c:
(nautilus_user_level_manager_make_gconf_key),
(nautilus_user_level_manager_make_current_gconf_key):
* nautilus-widgets/nautilus-user-level-manager.h:
New functions to generate keys for the current user level as well
as any other user level.
* nautilus-widgets/nautilus-preferences-pane.c:
(nautilus_preferences_pane_destroy), (prefs_pane_construct):
Fix bug 993. Some frames in the preferences dialog were too big
cause the parent vbox was erroneously marked homogenous.
user level choices directly in the settings menu.
Also uncouple user level from preferences. User level is no
longer a preference itself.
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_create_dialog),
(global_preferences_register_for_ui),
(user_level_changed_callback),
(nautilus_global_preferences_shutdown),
(nautilus_global_preferences_startup):
Remove all of the user level ui stuff.
* nautilus-widgets/nautilus-user-level-manager.c:
(user_level_manager_new), (nautilus_user_level_manager_initialize),
(nautilus_user_level_manager_initialize_class),
(user_level_manager_destroy), (gconf_get_user_level_string),
(user_level_set_default_if_needed),
(gconf_user_level_changed_callback),
(nautilus_user_level_manager_get),
(nautilus_user_level_manager_set_user_level),
(nautilus_user_level_manager_get_user_level):
Emit the the "user_level_changed" signal from a gconf callback
instead of "by hand". Otherwise we are out of whack because of
gconf asyncness.
* src/nautilus-window-menus.c:
(settings_menu_user_level_radio_group_callback),
(settings_menu_user_level_customize_callback),
(settings_menu_customize_callback),
(nautilus_window_initialize_menus),
(user_level_menu_path_to_user_level),
(user_level_user_level_to_menu_path):
* src/nautilus-window.h:
Remove the "General Settings" menu item. Replace it with a
user level chooser as well as current user level customizer.
2000-05-31 Kenneth Christiansen <kenneth@gnu.org>
* README.tools: Added readme file, which explains the
use of the newly checked in po tools.
Please go read.
2000-05-31 Pavel Cisler <pavel@eazel.com>
* src/file-manager/dfos-xfer.c: (fs_move_to_trash):
* src/file-manager/fm-directory-view.c: (fm_directory_is_trash),
(fm_directory_view_confirm_deletion),
(fm_directory_view_trash_or_delete_selection),
(duplicate_callback):
More work on fallback deletion when move to Trash is not available.
Display a warning dialog.
Get rid of commented out code that I'll no longer need.
Removed FIXMEs that are no longer true.