2000-12-08 Gene Z. Ragan <gzr@eazel.com>
reviewed by: Pavel Cisler <pavel@eazel.com>
Fixed bug 4660, Descrption lost when adding mime types
Bug was caused by a failure to write out a mime type
with caps in the string. I now convert all caps to lower
case and inform the user what has happened.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(find_message_label_callback), (find_message_label),
(show_message_box), (display_upper_case_dialog):
New routines to display a nice dialog taken from Nautilus.
(nautilus_mime_type_capplet_show_new_mime_window):
Convert mime string to lower case if caps are present.
2000-11-20 Mathieu Lacage <mathieu@eazel.com>
reviewed by: <mjs@eazel.com>
Fix bug 4812. Also, make the capplet work by fixing
random bugs here and there. It was the first time I could test
it for true so, of course, got a bunch of small-border-effect bugs.
* libgnomevfs/gnome-vfs-mime-info.c:
(hack_getc): the most evil function I ever wrote.
It recursively gets rid of the comment lines before
the parsers ever get them. (iunstead of fixing thew parsers....)
(load_mime_type_info_from): make it use nerw hack_gets function
instead of getc_unlocked.
(load_mime_list_info_from): idem.
(gnome_vfs_mime_get_extensions_list): avoid returning the extensions
of the system settings if the user has set the user extensions.
(get_key_name): make it remove duplicates for true.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(nautilus_mime_type_capplet_show_new_mime_window): fix bug 4812
by replacing "char *text[3]" by "char *text[4]".
(nautilus_mime_type_capplet_show_change_extension_window):
spaces.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(update_extensions_list): fix border-effect bugs. (ie: when you
have no extension for a mime type for example...)
(add_mime_clicked): idem.
2000-11-19 Mathieu Lacage <mathieu@eazel.com>
Fix bug 4811
* libgnomevfs/gnome-vfs-mime-info.c:
(gnome_vfs_mime_set_extensions_list): add new function.
Ultimately, I wished we could get rid of the direct access
to the internal hastables but this is at least a first step.
* libgnomevfs/gnome-vfs-mime-info.h: add prototype.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(add_extension_clicked): implement
(remove_extension_clicked): implement
(extension_list_selected): grey/ungrey delete button when selecting/unselecting
(extension_list_deselected): idem
(get_extensions_from_gtk_list): helper function.
(nautilus_mime_type_capplet_show_change_extension_window): implement.
(nautilus_mime_type_capplet_show_new_extension_window): fix a number of segfaults.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.h: change prototypes.
* mime-type-capplet/nautilus-mime-type-capplet.c:
(get_selected_row_number),helper function.
(get_selected_mime_type), helper function (refactoring :)
(really_change_icon): fix segfault.
(update_extensions_list): update extensions when you change them.
(change_file_extensions_clicked): create dialog.
(init_mime_capplet): spaces.
(nautilus_mime_type_capplet_update_info): make it use get_selected_mime_type.
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.
2000-11-02 Gene Z. Ragan <gzr@eazel.com>
Some more capplet cleanup.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c:
(check_button_status), (initialize_edit_applications_dialog),
(initialize_edit_components_dialog):
Have the Add, Edit and Delete buttons in the Edit Applications
dialog be enabled/disabled properly based on the contents
of the application list.
Remove Cancel button from the Edit Component and Edit Application
dialog, as we currently do not have a way to roll back the changed
made.
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-08 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 2789, Need to cancel non-file drags in icon
entry field.
* mime-type-capplet/nautilus-mime-type-icon-entry.c:
(drag_data_get):
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.
2000-08-31 Martin Baulig <baulig@suse.de>
* configure.in: Only check for GNOME if we're on the GNOME 1.2
platform.
* configure.in: Don't modify CFLAGS but set VFS_CLFAGS instead.
Otherwise CFLAGS gets longer every time config.status is run.
* */Makefile.am (INCLUDES): Add $(VFS_CFLAGS).
2000-08-31 Martin Baulig <baulig@suse.de>
* configure.in: Don't put -Werror into CFLAGS but into WERROR
and AC_SUBST it. Some configure checks don't work with -Werror.
* */Makefile.am (INCLUDES): Add $(WERROR).
Tue Aug 08 23:18:49 2000 George Lebl <jirka@5z.com>
* libgnomevfs/Makefile.am,
libgnomevfs/gnome-vfs-application-registry.[ch]:
A new application registry. The parsing is based upon
mime-info. The interface completely hides any structures
and is based entierly on querying string keys. Handles
user settings as a delta against the system settings. Also
adds mime_types list support to the registry instead of this
being read from the keys file.
* libgnomevfs/gnome-vfs-mime-handlers.[ch]
(gnome_vfs_mime_get_default_application)
(gnome_vfs_mime_get_short_list_applications)
(gnome_vfs_mime_get_all_applications)
(gnome_vfs_mime_extend_all_applications)
(gnome_vfs_mime_remove_from_all_applications)
(gnome_vfs_mime_application_new_from_id)
(application_known_to_be_nonexistent):
Use the application registry API internally. Remove the
gnome_vfs_mime_define_application call as it doesn't
make any sesnse any more and is replaced by an application
registry call. The all_applications calls now use the
registry api for all their work.
* libgnomevfs/gnome-vfs-mime-info.c (load_mime_type_info_from):
Fix a bug where comments would only be ignored on the first
line which would add nonsense mime types if comments were
elsewhere in the file.
* mime-type-capplet/nautilus-mime-type-capplet-dialogs.c
(add_new_application)
test/test-mime-handlers-set.c (main):
Use the application registry for adding new applications
* data/mime/Makefile.am, data/mime/gnome-vfs.keys,
data/mime/gnome-vfs.applications,
data/mime/application-registry-hack.keys:
Remove the registry hack stuff, remove all_applications
stuff from gnome-vfs.keys and add the applications from
the registry hack to gnome-vfs.applications including
the mime types they read.
* 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.