2000-11-17 Mathieu Lacage <mathieu@eazel.com>
reviewed by: Sullivan
fix Bug 4768. Reported 3 bugs about separate issues: 4796, 4797, 4798.
* data/mime/gnome-vfs.keys: change icon filenames to relative paths.
* libgnomevfs/Makefile.am: add GNOME_VFS_PREFIX
* libgnomevfs/gnome-vfs-mime-info.c: (gnome_vfs_mime_info_reload):
add initialition code if the mime stuff is not initalized when doing
a reload. This avoids a segfault.
* libgnomevfs/gnome-vfs-utils.c: (hack_file_exists): new function
copied from gnome-libs: prviously named g_file_exists.
(gnome_vfs_icon_path_from_filename): new API function. It looks
in GNOME_PATH to find the icons and defaults to the gnome-vfs prefix
one. It accepts only relative paths and returns an absolute path.
* libgnomevfs/gnome-vfs-utils.h: add prototype.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(really_change_icon), changes the icon used by a mime type.
(gil_icon_selected_cb): changes the icon when you double-click.
(change_icon_clicked_cb_real): changes the icon when you click on ok.
(change_icon_clicked): connect to the clicked and select_icon signals
to know when the user has made up his mind about hte new icon.
(nautilus_mime_type_capplet_update_info), spaces.
(add_mime_clicked): spaces.
(nautilus_mime_type_capplet_update_mime_list_icon): spaces.
(capplet_get_icon_pixbuf): spaces.
(populate_mime_list): spaces.
* mime-type-capplet/nautilus-mime-type-icon-entry.c:
(icon_selected_cb): spaces.
(nautilus_mime_type_show_icon_selection): spaces.
(nautilus_mime_type_icon_entry_get_relative_filename): new function.
returns a relative filename instead of an abosulte one.
* mime-type-capplet/nautilus-mime-type-icon-entry.h: add relative
function prototype
2000-11-16 Mathieu Lacage <mathieu@eazel.com>
Fix bugs 2767 and 3228
* mime-type-capplet/nautilus-mime-type-capplet.c:
(nautilus_stop_in_debugger),
(nautilus_stop_after_default_log_handler),
(nautilus_set_stop_after_default_log_handler),
(nautilus_make_warnings_and_criticals_stop_in_debugger),
add debugging functions. They are disabled by default.
(main), add call to debuggin funcitons if they are enabled.
(change_icon_clicked), implement.
(init_mime_capplet), tweaks, cleanups
(nautilus_mime_type_capplet_update_info), update icon.
(revert_mime_clicked), implement correctly.
(delete_mime_clicked), implement correctly.
(add_mime_clicked), cleanups
(capplet_get_icon_pixbuf), new function to get the pixbuf for
a given mime type
(populate_mime_list): use the new function above, refactor.
(update_mime_list_action): idem.
2000-11-15 Mathieu Lacage <mathieu@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c:
(init_mime_capplet), make it look like what Arlo wanted.
(revert_mime_clicked): new callback to reset user settings.
2000-11-13 Gene Z. Ragan <gzr@eazel.com>
Some more capplet work. The mime list now updates
to reflect changes made to the default action button
and menu item list.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(application_button_toggled), (viewer_button_toggled),
(application_menu_activated), (component_menu_activated),
(add_mime_clicked),
(nautilus_mime_type_capplet_update_mime_list_icon),
(update_mime_list_action), (populate_mime_list):
* mime-type-capplet/nautilus-mime-type-icon-entry.c:
(entry_changed):
Fixed a case where a NULL widget would cause an assertion.
2000-11-13 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 3107, Setting na icon for a mime type does not work.
* mime-type-capplet/nautilus-mime-type-capplet.c:
* mime-type-capplet/nautilus-mime-type-capplet.h:
(nautilus_mime_type_capplet_update_mime_list_icon):
New function that sets/updates the icon in the mime list.
* mime-type-capplet/nautilus-mime-type-icon-entry.c:
(icon_selected_cb), (nautilus_mime_type_show_icon_selection):
Add call to new nautilus_mime_type_capplet_update_mime_list_icon
function.
Fixed bug 4319, Edit and Delete actions in Application
List do not function
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(populate_default_applications_list),
(initialize_edit_applications_dialog),
(nautilus_mime_type_capplet_show_new_mime_window),
(add_or_update_application), (add_item_to_application_list),
(show_new_application_window), (show_edit_application_window),
(delete_selected_application):
Bunches of code to handle adding, editing and deletion of
application/mime type mapping.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(nautilus_mime_type_capplet_get_selected_item_mime_type):
2000-10-16 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 3042, Adding new mime type doesn't work.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(nautilus_mime_type_capplet_show_new_mime_window):
* mime-type-capplet/nautilus-mime-type-capplet.c:
(add_mime_clicked):
Write proper description key.
* libgnomevfs/gnome-vfs-mime-handlers.c:
(gnome_vfs_mime_add_extension):
Work in progress on adding user defined extensions
2000-10-16 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 3040, Action column has wrong contents
Corrected an instance where text was not getting freed
and reset. Also fixed a few leaks in the list
population code.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_application_menu), (populate_viewer_menu),
(add_mime_clicked), (populate_mime_list):
2000-09-16 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 3042, Adding new mime type doesn't work
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(nautilus_mime_type_capplet_show_new_mime_window):
Return the new mime type if one was created
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.h:
* mime-type-capplet/nautilus-mime-type-capplet.c:
(nautilus_mime_type_capplet_update_info), (add_mime_clicked):
Add info to main list.
2000-09-08 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_mime_list):
Fixed a couple of leaks and instances where
gdk_pixbuf_new_from_file was being passed a NULL char *.
2000-09-08 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 2766, viewer menu code is not finished.
Enjoy your Content Loser.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_viewer_menu):
Made function work.
2000-09-05 Mathieu Lacage <mathieu@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_viewer_menu): initialize found_match to TRUE
to avoid a segfault in certain non-obvious cases. this
is a temporary hack waiting for bug 2766.
2000-09-01 Mathieu Lacage <mathieu@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c: (main),
(init_mime_capplet), (populate_mime_list),
(create_mime_list_and_scroller):
remove debugging output. fix many run-time warnings.
Now, can go into fixing real bugs.
* mime-type-capplet/nautilus-mime-type-capplet.c: Move include of
sys/types.h above include of regex.h to fix building on
FreeBSD. Fix from Bill Huey <billh@gnuppy.monkey.org>.
2000-08-02 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 1837, The icon in the action list item
should represent the item in the list.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_mime_list):
Load icon and display based on action.
2000-08-02 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 1836, Description list item icon wrong.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_mime_list), (gdk_font_get_bold),
Set up proper and scaled description column icon.
(capplet_gdk_pixbuf_scale_to_fit):
New function that scales an gdk-pixbuf to the requested
width and height. Copied from libnautilus.
2000-07-28 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c:
(init_mime_capplet), (pixmap_file), (gtk_widget_make_bold),
(gtk_widget_set_font), (gtk_style_set_font), (gdk_font_get_bold):
New function to set the font of a widget to bold. These were
borrowed from libnautilus-extensions.
2000-07-14 Gene Z. Ragan <gzr@eazel.com>
* libgnomevfs/gnome-vfs-mime-handlers.c:
* libgnomevfs/gnome-vfs-mime-handlers.h:
(gnome_vfs_mime_get_icon), (gnome_vfs_mime_set_icon):
New API to get and set icon data.
* mime-type-capplet/Makefile.am:
Added new file
mime-type-capplet/nautilus-mime-type-icon-entry.c
* mime-type-capplet/nautilus-mime-type-icon-entry.c:
* mime-type-capplet/nautilus-mime-type-icon-entry.h:
(nautilus_mime_type_icon_entry_get_type),
(nautilus_mime_type_icon_entry_class_init), (entry_changed),
(entry_activated), (setup_preview), (ientry_destroy),
(browse_clicked), (icon_selected_cb), (cancel_pressed),
(gil_icon_selected_cb), (nautilus_mime_type_show_icon_selection),
(drag_data_received), (drag_data_get),
(nautilus_mime_type_icon_entry_init),
(nautilus_mime_type_icon_entry_new),
(nautilus_mime_type_icon_entry_gnome_file_entry),
(nautilus_mime_type_icon_entry_gnome_entry),
(nautilus_mime_type_icon_entry_gtk_entry),
(nautilus_mime_type_icon_entry_set_pixmap_subdir),
(nautilus_mime_type_icon_entry_set_icon),
(nautilus_mime_type_icon_entry_get_filename):
New file. This is a new verison of GnomeIconEntry.
I am customizing it to look and bahve in a way that
is compatible with Arlo's UI reccomendations.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(mime_list_selected_row_callback), (icon_changed),
(change_icon_clicked), (init_mime_capplet),
(nautilus_mime_type_capplet_update_info), (populate_mime_list):
More UI cleanups. Removed GnomeIconEntry and replaced
with new NautilusMimeTypeIconEntry.
2000-07-07 Gene Z. Ragan <gzr@eazel.com>
* libgnomevfs/gnome-vfs-mime-handlers.c:
(gnome_vfs_mime_add_extension), (gnome_vfs_mime_remove_extension):
Changed code to used renamed gnome_vfs_mime_extensions_list_free
* libgnomevfs/gnome-vfs-mime-info.c:
* libgnomevfs/gnome-vfs-mime-info.h:
(gnome_vfs_mime_get_extensions_pretty_string):
Return a list with period prepended, comma seperated items.
(gnome_vfs_mime_extensions_list_free):
Changed name form gnome_vfs_mime_extension_list_free
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_extension_list), (init_mime_capplet),
(nautilus_mime_type_capplet_update_info), (populate_mime_list),
(create_mime_list_and_scroller):
More exciting UI layout work and feature completion.
2000-07-06 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c: (column_clicked),
(create_mime_list_and_scroller):
Added sorting functionality to the column buttons. Enabled
columns to respond to a click. Clicking a column header
toggles between ascending and descending sort for that column.
2000-07-04 Gene Z. Ragan <gzr@eazel.com>
More capplet work in progress. Modifying applet and code
to support UI work done by Arlo.
* libgnomevfs/gnome-vfs-mime-handlers.c:
(gnome_vfs_mime_add_extension), (gnome_vfs_mime_remove_extension):
API changes to support new layout.
* libgnomevfs/gnome-vfs-mime-info.c:
* libgnomevfs/gnome-vfs-mime-info.h:
(gnome_vfs_mime_get_extensions_list),
(gnome_vfs_mime_get_extensions_string):
API changes to support new layout.
* mime-type-capplet/Makefile.am:
Added dependency to GdkPixbuf.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(show_edit_components_dialog), (add_new_application),
(show_new_application_window), (show_edit_application_window):
API changes to support new layout.
* mime-type-capplet/nautilus-mime-type-capplet.c:
* mime-type-capplet/nautilus-mime-type-capplet.h:
(populate_extension_list), (extension_list_deselected),
(application_button_toggled), (viewer_button_toggled),
(icon_changed), (init_mime_capplet),
(nautilus_mime_type_capplet_update_info),
(populate_application_menu), (populate_viewer_menu),
(edit_default_clicked),
(nautilus_mime_type_capplet_update_application_info),
(nautilus_mime_type_capplet_update_viewer_info),
(insert_mime_vals_into_clist), (create_mime_list_and_scroller),
(nautilus_mime_type_capplet_get_selected_item_mime_type),
(make_path), (pixmap_file):
API changes to support new layout.
2000-06-21 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #1434, Fix alignment of widgets in main capplet view.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(init_mime_capplet):
Replaced use of multiple pack boxes with a table. Things
look much better now.
2000-06-21 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #583
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(initialize_edit_applications_dialog),
(show_new_application_window), (show_edit_application_window):
New dialog and items to indicate and allow user to
set application behavior concerning multiple launch and
URI handling.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(init_mime_capplet):
Removed old UI code and migrated to dialog.
2000-06-21 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(initialize_edit_applications_dialog),
(nautilus_mime_type_capplet_show_new_extension_window),
(add_new_application), (show_new_application_window):
More work on adding applications and extension.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(nautilus_mime_type_capplet_add_extension),
(remove_extension_clicked), (none_button_toggled),
(application_button_toggled), (component_button_toggled),
(init_mime_capplet),
(nautilus_mime_type_capplet_get_selected_item_mime_type):
Changed use of GtkFixed to use layout. Layout is now messy
again, but I should be able to get it looking right.
2000-06-20 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet.c:
(mime_list_selected_row_callback), (none_button_toggled),
(application_button_toggled), (component_button_toggled),
(init_mime_capplet), (nautilus_mime_type_capplet_update_info):
Added frame and set of radio buttons to indicate and allow the
user to change the default action that will occur when a file
is clicked/double-clicked in Nautilus. We have three choices that
map to the three types of actions we currently support.
2000-06-20 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #1221
* mime-type-capplet/nautilus-mime-type-capplet.c:
(application_menu_activated), (populate_application_menu),
(component_menu_activated), (populate_component_menu):
Add handling of the case where a default application or
component is not in the default applicaiton or component list.
This involved some UI work and adding the default app to
the default list. Hopefully the gnome-vfs-mime-handler API
will not allow this to happen, but we handle it just in case.
Cleaned up the way the menu items for the default application
and component are set and added a signal handler to set
the user's choice of application or component to be the default.
2000-06-20 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #1055
* libgnomevfs/gnome-vfs-mime-handlers.c:
* libgnomevfs/gnome-vfs-mime-handlers.h:
(gnome_vfs_mime_add_extension):
Renamed function to be more in accordance with other function
in file.
(gnome_vfs_mime_remove_extension):
New function to remove mapped extension from mime type.
* libgnomevfs/gnome-vfs-mime-info.c: (load_mime_list_info_from),
(gnome_vfs_mime_get_extensions), (mime_list_sort), (get_key_name),
(gnome_vfs_mime_commit_registered_types),
(write_mime_data_foreach), (write_registered_mime_data):
A couple of things done here. One was work on the tokenizer
so that it handled a variety of cases when reading in
key data form .mime files. Another was work on saving and
deleting mapped extensions from the .mime file.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(nautilus_mime_type_capplet_show_new_extension_window):
Work on saving and deleting mapped extensions from the .mime file.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(populate_extension_list),
(nautilus_mime_type_capplet_add_extension),
(remove_extension_clicked):
Work on saving and deleting mapped extensions from the .mime file.
2000-06-19 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/mime-data.c:
* mime-type-capplet/mime-data.h:
Removed obsolete files.
* mime-type-capplet/Makefile.am:
Removed above files from Makefile.
* libgnomevfs/gnome-vfs-mime-handlers.c:
* libgnomevfs/gnome-vfs-mime-handlers.h:
(gnome_vfs_mime_add_extension_to_mime_type):
New function. Add extension mapping to named mime type
and save to .mime file.
* libgnomevfs/gnome-vfs-mime-info.c:
* libgnomevfs/gnome-vfs-mime-info.h:
(load_mime_list_info_from),
(load_mime_type_info), (gnome_vfs_mime_get_extensions),
(gnome_vfs_mime_extension_list_free):
New function to deep free the list returned
by gnome_vfs_mime_get_extensions()
(gnome_vfs_mime_registered_mime_type_list_free),
New function to deep free the list returned
by gnome_vfs_mime_get_extensions()
(gnome_vfs_mime_commit_registered_types):
Public function to commit internal hash table
of mime data to disk.
(gnome_vfs_mime_set_registered_type_key):
This functions sets the key data for the registered mime
type's hash table.
(write_mime_data_foreach), (write_mime_data):
New functions to write out mime data from hash table.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(nautilus_mime_type_capplet_show_new_mime_window),
(nautilus_mime_type_capplet_show_new_extension_window):
Clean up work on dialogs.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(ok_callback),
(populate_extension_list),
(nautilus_mime_type_capplet_add_extension),
(remove_extension_clicked), (init_mime_capplet),
(delete_mime_clicked), (create_mime_list_and_scroller),
(get_selected_item_mime_type):
Clean up work on main capplet view.
2000-06-14 Gene Z. Ragan <gzr@eazel.com>
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.h:
New files. Trying to clean up current capplet source and
organize it in a sensible way.
(edit_application_dialog_destroy), (edit_component_dialog_destroy),
(populate_default_applications_list),
(populate_preferred_applications_list), (component_is_in_list),
(component_button_toggled_callback),
(populate_default_components_box),
(populate_preferred_components_list),
(initialize_edit_applications_dialog),
(initialize_edit_components_dialog),
(show_edit_applications_dialog), (show_edit_components_dialog),
Brand new functions.
* mime-type-capplet/Makefile.am:
Added new source file listed above.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(init_mime_capplet), (populate_application_menu),
(populate_component_menu), (edit_applications_clicked),
(edit_components_clicked):
Work on setting up info view.
2000-06-13 Gene Z. Ragan <gzr@eazel.com>
More work in progress and added a new file to the capplet build.
* mime-type-capplet/nautilus-mime-type-capplet.c: (main),
(init_mime_capplet), (edit_applications_clicked),
(edit_components_clicked), (edit_application_dialog_destroy),
(initialize_edit_application_dialog),
(show_edit_applications_dialog), (show_edit_components_dialog):
* mime-type-capplet/nautilus-mime-type-capplet.h:
New file
2000-06-02 Gene Z. Ragan <gzr@eazel.com>
More work in progress. Still incomplete.
* mime-type-capplet/edit-window.c: (initialize_main_win_vals),
(show_edit_window), (populate_application_menu),
(populate_component_menu), (application_menu_activate),
(add_application), (show_file_selector):
Work in progress.
* mime-type-capplet/mime-data.c: (add_to_key):
Work in progress.
2000-05-31 Gene Z. Ragan <gzr@eazel.com>
Work in progress for the modified Files and Programs
capplet that is relacing the old mime types capplet
in the Gnome Control Center.
* mime-type-capplet/Makefile.am:
Added link dependeny to libgnomevfs.
* mime-type-capplet/edit-window.c:
(add_extension), (remove_extension):
Rename functions to be more coherent.
(initialize_main_win), (initialize_main_win_vals):
Modified functions to remove dialog items
that are obsolete in our new designs. Added new
items such as the application and component menus.
(populate_application_menu),
(populate_component_menu), (application_menu_activate):
Application menu functions that list the short
list of applications for a mime type and allow a user
to add applications to the short list.
(add_application), (show_file_selector):
Menu callback and function to display GtkFileSelection to
allow user to locate an application to be associated with
mime type.
* mime-type-capplet/mime-data.c:
(add_new_mime_type):
Modified functions for new mime APIs.
* mime-type-capplet/new-mime-window.c: (launch_new_mime_window):
Modified functions for new mime APIs.
* modules/file-method.c: (file_handle_new):
Modified functions for new mime APIs.