nautilus/ChangeLog
Ramiro Estrugo fbd277e07a Fix bug that prevented a reasonable default from being fetched. Use the
provided default value if the stored one is null.
2000-04-18 21:02:44 +00:00

1139 lines
43 KiB
Text

2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
* nautilus-widgets/nautilus-preferences.c:
(preference_get): If the stored default_value is NULL, then used
the provided one.
2000-04-19 Andy Hertzfeld <andy@eazel.com>
added better abstraction for the xml-based links introduced yesterday
* libnautilus/nautilus-link.h,c:
new routines to access xml-based link files
* libnautilus/Makefile.am:
added nautilus-link.c,h to build
* libnautilus/nautilus-file.c:
use nautilus_link_get_link_uri in nautilus-link instead of accessing link files directly
* libnautilus/nautilus-icon-factory.c:
use nautilus_link_get_image_uri in nautilus-link instead of accessing directly
* src/file-manager/fm-icon-view.c:
use nautilus_link_get_display_name to suppress display of identifying suffix
* src/file-manager/fm-icon-text-window.c:
fixed bug that caused crash when preference file is deleted by checking for NULL
and using default in fm_get_text_attribute_names_preference_or_default
* icons/computer.png:
new icon for novice home
* icons/hand.svg:
new icon for novice home
* icons/Makefile.am:
added new icons
* data/top/Computer-ntl.xml:
added xml link for novice home
* data/top/Services-ntl.xml:
added link to novice home:
* data/Makefile.am:
added new files
2000-04-19 John Sullivan <sullivan@eazel.com>
Yet more tweakery to the file-monitoring code.
* libnautilus-extensions/nautilus-directory.c:
(stop_monitoring_files): Renamed to stop_monitoring_file_list.
(nautilus_directory_destroy): Only stop monitoring list if we
were monitoring list, but always complain about non-NULL
file_monitors.
(nautilus_directory_file_monitor_remove_internal): Only
stop monitoring list if we had been monitoring it. This fixes
CRITICAL when you launch and immediately quit.
2000-04-18 Shane Culpepper <pepper@eazel.com>
* components/services/install/eazel-install-lib-rpm.c - fixing the
segfault in rpmInstall.
2000-04-19 John Sullivan <sullivan@eazel.com>
* libnautilus-extensions/nautilus-directory.c:
(dequeue_pending_idle_callback),
(nautilus_directory_file_monitor_remove_internal),
(nautilus_directory_notify_files_added): Deployed
new is_file_list_monitored function in three places.
Two of these were bugs, one was code duplication.
2000-04-19 John Sullivan <sullivan@eazel.com>
Fixed bug 494 (initial directory count never appears in sidebar).
This was a missing pieces of the async framework. Darin helped
me finish it up.
* libnautilus-extensions/nautilus-directory-private.h:
Put FileMonitor struct here so NautilusFile can use it.
(nautilus_directory_file_monitor_add_internal),
(nautilus_directory_file_monitor_remove_internal),
(remove_file_monitor_link): New functions, shared between
NautilusDirectory and NautilusFile.
* libnautilus-extensions/nautilus-file.c:
(destroy): Complain about then clean up any remaining FileMonitors.
(nautilus_file_monitor_add), (nautilus_file_monitor_remove): Fill
in the implementation for these formerly-empty routines.
* libnautilus-extensions/nautilus-directory.c:
Moved FileMonitor struct out.
(nautilus_directory_destroy): assert that there's no count_in_progress.
(compare_file_monitor_with_client): changed name to
compare_file_monitor_by_client_and_file and behavior to match.
(find_file_monitor): Now takes a file and uses it in search.
(cancel_unneeded_file_attribute_requests): New function, cleans up
no-longer-needed gnome vfs async calls.
(remove_file_monitor_link): New function, removes a file monitor
and cleans up storage.
(remove_file_monitor): Uses remove_file_monitor_link to fix
storage leak.
(is_file_list_monitored): New function, checks whether anyone is
monitoring all files in this directory.
(nautilus_directory_file_monitor_add_internal),
(nautilus_directory_file_monitor_remove): New functions,
generalized from old non-internal versions to handle the single-file
case too.
(nautilus_directory_file_monitor_add),
(nautilus_directory_file_monitor_remove): Now calls _internal function.
(process_pending_file_attribute_requests): Now handles single-file
case as well as all-files case.
* src/nautilus-index-title.c:
(nautilus_index_title_set_uri): Move the item-count-monitoring
code inside the file != NULL check so it doesn't fail at the
root (where, due to a bug, file is NULL).
2000-04-18 Darin Adler <darin@eazel.com>
Fixed bug where you'd see the name twice under each icon.
Did some work for the new notify hooks that Pavel made.
I'll finish those hooks soon.
* src/file-manager/fm-icon-view.h:
* src/file-manager/fm-icon-text-window.h:
* src/file-manager/fm-icon-text-window.c:
(set_preference_string), (synch_menus_with_preference),
(icon_view_text_attribute_changed_callback),
(fm_get_text_attribute_names_preference_or_default):
* src/file-manager/fm-icon-view.c: (fm_icon_view_initialize),
(fm_icon_view_get_icon_text_attribute_names),
(text_attribute_names_changed_callback):
Moved attribute names default into FMIconTextWindow and made
the callers use a new call that gets either the preference or
the default if the preference is invalid. Also simplified the
code since we don't need to cache the preference in either the
FMIconTextWindow or the FMIconView.
* libnautilus-extensions/nautilus-directory.c:
(is_canonical_uri): Added a function for use in asserts.
(nautilus_directory_get): Assert that we successfully
made the URI canonical.
(parent_directory_if_exists), (file_if_exists): Helper
functions for implementing the notify calls.
(nautilus_directory_notify_files_added),
(nautilus_directory_notify_files_removed),
(nautilus_directory_notify_files_moved):
Fleshed out the bones of these routines a bit more.
They are still not done. Also changed their interfaces
so they are not responsible for freeing their parameters.
* libnautilus-extensions/nautilus-directory.h:
* libnautilus-extensions/nautilus-directory.c:
* libnautilus-extensions/nautilus-file.h:
(nautilus_directory_contains_file):
New call to be used instead of nautilus_file_is_gone
for callers that are monitoring a directory.
* libnautilus-extensions/nautilus-file-changes-queue.c:
(pairs_list_free), (nautilus_file_changes_consume_changes):
Make the caller free the list instead of the called function
Also reordered the changes so deletions come before additions.
* src/file-manager/fm-directory-view.c: (display_pending_files):
* src/file-manager/fm-list-view.c: (fm_list_view_file_changed):
* src/file-manager/fm-icon-view.c: (fm_icon_view_file_changed):
Changed to use nautilus_directory_contains_file instead of
nautilus_file_is_gone.
>>>>>>> 1.38
2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
* components/services/install/.cvsignore: Ignore more generated
files.
2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
Hook up click policy preference. Bug 374.
* libnautilus-extensions/nautilus-global-preferences.h,
libnautilus-extensions/nautilus-global-preferences.c:
Rename CLICK_ACTIVATION_TYPE to CLICK_POLICY.
* libnautilus-extensions/nautilus-icon-container.c:
(click_policy_changed_callback): New preferences callback to keep
track of click policy changes.
(destroy): Unregister click_policy_changed callback on destroy.
(nautilus_icon_container_initialize): Initialize the
single_click_mode from preferences and register callback to keep
track of changes in click policy.
Also anal gtk style formatting of the private prototypes and
sophisticated alphabetization of libnautilus-extensions headers.
* libnautilus-extensions/nautilus-list.c:
(click_policy_changed_callback): New preferences callback to keep
track of click policy changes.
(nautilus_list_initialize): Initialize the single_click_mode from
preferences and register callback to keep track of changes in
click policy.
(nautilus_list_destroy): Unregister click_policy_changed callback
on destroy.
Also anal gtk style formatting of the private prototypes and
sophisticated alphabetization of libnautilus-extensions headers.
2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
* nautilus-widgets/nautilus-preferences.c,
nautilus-widgets/nautilus-preferences.h: Dont expose the
preference/enum info structure. Remove these and use the
NautilusPreference object instead to describe preferences.
Add usage of default values to get_* api. So now callers can
provide a default which will be given back to them if no default
exists. For example, no default will exist for the preference
when it was implicitly pulled out of someone's ass.
The callback function no longer passes along the value. Instead
the caller is expected to use the get_ functions.
Rename nautilus_preferences_{get,set}_string() to
nautilus_preferences_{get,set}. This matches the
NautilusDirectory metadata api which uses strings for metadata by
default.
Also constify the get functions.
(nautilus_preferneces_get_info): Renamed to
nautilus_preferneces_get_preference which returns a referenced
pointer to the preference description object. Perhaps this could
have a better name.
(nautilus_preferences_enum_add_entry): New function to add entries
to enumerated preferences.
* nautilus-widgets/nautilus-preferences-group.c,
nautilus-widgets/nautilus-preferences-group.h:
(nautilus_preferences_group_add): Retire.
(nautilus_preferences_group_add_item): New function that does all
the work of creating an item based on a given item_type.
* nautilus-widgets/nautilus-preferences-item.c,
nautilus-widgets/nautilus-preferences-item.h: Use
NautilusPreferences directly instead of GtkObject.
Ref/unref the preference object properly.
Use more consistent identifiers. Fix some stupid style things.
Update for NautilusPreference usage instead of the info struct
hack).
* nautilus-widgets/nautilus-preferences-pane.c,
nautilus-widgets/nautilus-preferences-pane.h:
(nautilus_preferences_pane_add_item_to_nth_group) : New function
to do all the work of adding and managing an item based on a given
type.
* nautilus-widgets/test-nautilus-widgets.c: Update for all the
api changes.
* nautilus-widgets/Makefile.am: Add building of
nautilus-preference.[ch] and the self test driver.
* libnautilus-extensions/nautilus-global-preferences.c,
libnautilus-extensions/nautilus-global-preferences.h: Add
CLICK_ACTIVATION_TYPE preferences. Add HOME_URI preference. Add
SHOW_HIDDEN_FILES preference.
Make all the user level stuff private. Dont expose either the
user level preference or the user level values at all. Instead,
track user level changes in a callback and set corresponsing
preferences accordingly.
(nautilus_global_preferences_startup): Hook to make the above work
properly.
Cleanup the creation of the preferences dialog.
* libnautilus-extensions/nautilus-icon-factory.c:
(icon_theme_changed_callback): Preference changed callback no
longer passes in the value. Value needs to be manually fetched.
(nautilus_get_current_icon_factory): No need to call
nautilus_preferences_set_info. Instead give
nautilus_preferences_get a default value. This way, we can always
get something reasonable back.
* src/nautilus-window-menus.c:
(use_eazel_theme_icons_cb): Update for pref api changes. Feed the
get function a default value.
* src/ntl-app.c:
(nautilus_app_class_init): Call
nautilus_global_preferences_startup so that user level callbacks
always works. Also, allows preferences exposed in the ui to have
nice defaults.
* src/ntl-main.c:
(main): Add nautilus-widgets self checks.
* src/ntl-uri-map.c:
(add_meta_view_iids_from_preferences): Feed the pref api function
a default value.
* src/ntl-window-state.c:
(nautilus_window_set_initial_state): User level is no longer
publicly exposed over here. Determine the home uri, instead by
fetching the HOME_URI preference.
* src/file-manager/fm-directory-view.c:
(use_new_window_changed_callback): Retired. Instead check
preference when needed. There really is not need to go to the
trouble of installing a callback for this specific preference.
Its just as easy (and not a performance issues) to check it
directly.
Also retired the 'use_new_window' member.
(user_level_changed_callback): Retired. User level no longer
publically exposed.
(show_hidden_files_changed_callback): Check SHOW_HIDDEN_FILES
preference to determine if hidden files should be filtered.
Add a 'show_hidden_files' member that keeps track of changes in
this preference.
(fm_directory_view_initialize): Initialize 'show_hidden_files'.
Update for callback name change.
(nautilus_preferences_remove_callback): Remove uneeded unregister
call for retired use_new_window callback.
(queue_pending_files): Do hidden file filtering based on
'show_hidden_files' instead of using the user level.
(fm_directory_view_activate_file): Check USE_NEW_WINDOW preference
to determine if a new window is requested.
* src/file-manager/fm-icon-text-window.c: #include fm-icon-virw.h
and use DEFAULT_ICON_VIEW_TEXT_ATTRIBUTE_NAMES from it instead of
ATTRIBUTE_NAMES_DEFAULT. This makes sure the default is not out
of whack. This define should probably be placed in a better place.
NOTE: This seems to be one of the drawbacks of passing in defaults
to fetch functions - that is out-of-whackness in 2 or more callers
in difference places.
(synch_menus_with_preference),
(changed_attributes_option_menu_cb): Update for preference api changes.
(preference_changed_callback): Rename to
icon_view_text_attribute_changed_callback for clarity.
(icon_view_text_attribute_changed_callback): Value no longer
passed into callback. Need to check preferences manually.
* src/file-manager/fm-icon-view.h:
Add DEFAULT_ICON_VIEW_TEXT_ATTRIBUTE_NAMES to share with
fm-icon-text-window.
* src/file-manager/fm-icon-view.c:
(fm_icon_view_icon_text_changed_callback): Update for preference
api changes.
Minor anal style formatting of the private prototypes.
(fm_icon_view_initialize_class): Yank
nautilus_preferences_set_info call. No longer needed for there to
be proper defaults.
(text_attribute_names_changed_callback): Value no longer
passed into callback. Need to check preferences manually. Also,
feed the get function a reasonable default.
* components/help/Makefile.am: Needs to link with
libnautilus-extensions.
* components/websearch/Makefile.am: Needs to link with
libnautilus-extensions.
2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
* libnautilus-extensions/nautilus-string-list.c,
libnautilus/nautilus-string-list.h: Dumb underscore fix the struct tags.
2000-04-18 Ramiro Estrugo <ramiro@eazel.com>
Factor out the code that describes a preference from the big messy
preferences into a class.
* nautilus-widgets/nautilus-preference.c,
nautilus-widgets/nautilus-preference.h: New files. A class that
describes a nautilus preference.
nautilus-widgets/nautilus-widgets-self-check-functions.c,
nautilus-widgets/nautilus-widgets-self-check-functions.h: New
files . Self check code driver nautilus-widgets.
2000-04-17 Pavel Cisler <pavel@eazel.com>
This checkin requires new gnome-vfs.
Plumbing for making copied/moved/deleted files show up update
in their respective new locations.
* libnautilus-extensions/nautilus-file-changes-queue.h
* libnautilus-extensions/nautilus-file-changes-queue.c
* libnautilus-extensions/Makefile.am
Shared queue used by the copy engine to send update notification
requests to NautilusDirectory during file copy/move/delete operations.
* libnautilus-extensions/nautilus-directory-private.h:
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_notify_files_added),
(nautilus_directory_notify_files_removed),
(nautilus_directory_notify_files_moved):
Stub calls that will be hooked up to the NautilusDirectory
notification calls to dispatch the notification updates.
* src/file-manager/dfos-xfer.c:
(sync_xfer_callback):
New callback that gets called in the async copy engine context
and produces change entries stuffing them into the file changes
queue.
* src/file-manager/dfos-xfer.c:
(handle_xfer_ok):
Added calls to the new nautilus_file_changes_consume_changes
from the progress update callback. This callback is called in
the user interface context and consumes the change entries
from the file changes queue, sending them in chunks to be
dispatched by to the individual Nautilus directory objects.
* src/file-manager/dfos-xfer.c:
(handle_xfer_ok):
Updated to use new progress enum values.
* src/file-manager/dfos-xfer.c:
(update_xfer_callback):
Renamed from sync_xfer_callback.
* src/file-manager/dfos-xfer.c:
(gnome_vfs_async_xfer):
Pass in new sync_xfer_callback parameters.
2000-04-17 Darin Adler <darin@eazel.com>
* components/services/install/.cvsignore: Generated files.
2000-04-17 Darin Adler <darin@eazel.com>
Added commands for Auto vs. Manual layout, but the guts behind
them is not yet implemented.
Did some cleanup on the new renaming code.
* nautilus-glib-extensions.c:
* nautilus-glib-extensions.h:
Added nautilus_g_list_exactly_one_item and
nautilus_g_list_more_than_one_item. These are more-efficient
versions of g_list_length (x) == 1 and g_list_length (x) > 1.
* nautilus-icon-canvas-item.c:
(draw_or_measure_label_text): Add a line break between the
editable text and the additional text.
(nautilus_icon_canvas_get_text_bounds),
(nautilus_icon_canvas_get_editable_text_bounds),
(nautilus_icon_canvas_get_editable_text),
(nautilus_icon_canvas_set_renaming):
Replaced g_assert with g_return_if_fail calls, and added the
complete set of g_return_if_fail.
(nautilus_icon_canvas_set_renaming): Don't update the item
unless the renaming state has actually changed.
* nautilus-icon-canvas-item.h: Fixed formatting.
* nautilus-icon-container.c:
* nautilus-icon-container.h:
Added nautilus_icon_container_set_auto_layout and
nautilus_icon_container_is_auto_layout. For now they are
placeholders that just modify a boolean.
* nautilus-icon-private.h:
Added the auto_layout boolean.
* nautilus-icon-text-item.c:
* nautilus-icon-text-item.h:
Just some formatting and other minor cleanup.
* nautilus-metadata.h:
Added NAUTILUS_METADATA_KEY_ICON_VIEW_AUTO_LAYOUT.
* nautilus-location-bar.c (drag_data_received_cb): Use the new
nautilus_g_list_more_than_one_item function.
* fm-directory-view.c (bonobo_menu_open_cb), (open_cb): Use the
new nautilus_g_list_exactly_one_item.
* fm-icon-text-window.c (attribute_names_string_is_good),
(set_preference_string), (synch_menus_with_preference),
(preference_changed_callback),
(changed_attributes_option_menu_cb): Got rid of the hard-coded
first item "name" which is no longer needed. Also changed to
handle bad data in the preferences.
* fm-icon-view.c (fm_icon_view_initialize_class): Updated since
there's no "name" item needed any more.
(fm_icon_view_compute_menu_item_info): Merged MENU_PATH_RENAME
with MENU_RENAME_TEXT and simplified the logic.
(fm_icon_view_append_selection_context_menu_items): Merged
MENU_PATH_RENAME with MENU_RENAME_TEXT.
(update_layout_menus), (auto_layout_callback),
(manual_layout_callback), (fm_icon_view_merge_menus): Added menu
items for auto layout and for manual layout.
(fm_icon_view_begin_loading): Load setting for auto layout from
metadata.
(fm_icon_view_get_icon_text_attribute_names): Changed to get rid
of the "name" first item from the list of text attributes.
(get_icon_editable_text_callback): Simplified since the editable text
is always the icon name. Also got rid of copied and pasted code that's
no longer needed for this case.
(get_icon_additional_text_callback): Got rid of special case for name,
since the name is no longer treated as an attribute.
2000-04-19 Andy Hertzfeld <andy@eazel.com>
Added a new, xml-based type of link file that can specify it's own
icon and other behavior. Soon they will be used for the novice
home directory.
* libnautilus-extensions.nautilus-file.c:
Check for the new file type in nautilus_directory_mapped_uri, and
return the link contained in the file if present.
* libnautilus-icon-factory.c:
Check for the new file type in
nautilus_icon_factory_get_icon_for_file and return the specified
image as appropriate.
2000-04-18 Shane Culpepper <pepper@eazel.com>
adding the eazel-installer skelton. very rough prototype right now
but it works with my local configuration data. Will be updated alot
over the next few days.
Location is components/services/install. It is not part of the default
build right now.
2000-04-18 Andy Hertzfeld <andy@eazel.com>
made clicking on gmc-style URL files redirect to the specified URL.
* libnautilus-extensions/nautilus-file.c,h:
added nautilus_file_get_mapped_uri, which checks for gmc-style URL files
and returns the URL they reference in that case; otherwise, just return
the file's URI.
* src/file-manager/fm-directory-view.c:
called nautilus_file_get_mapped_uri in fm_directory_view_activate_file_internal
* data/mime/nautilus.keys:
added icons to a few MIME types that I forgot last time. Also, just
use relative paths to reference the icons.
2000-04-18 Kjartan Maraas <kmaraas@online.no>
* configure.in: Added "no" to ALL_LINGUAS.
2000-04-18 Gene Z. Ragan <gzr@eazel.com>
Added functionality to allow files to be renamed in icon view.
This feature is available by either context click on the icon or
selecting a single file and choosing "Rename" form the File menu.
* libnautilus-extensions/nautilus-icon-text-item.c
* libnautilus-extensions/nautilus-icon-text-item.h: New files.
This is an editable icon text item used in the renaming feature.
It is based on GnomeIconTextItem but modified to fix bugs in the
original code and add extended functionality need by nautilus. If
thse changes were rolled into the current GnomeIconTextItem, it
would break gmc.
* libnautilus-extensions/Makefile.am
Modified file so that the two new files listed above would properly
be included in generated makefiles.
* libnautilus-extensions/nautilus-icon-canvas-item.c
Split text class variable into two variables, editable_text and
additonal_text. editable_text refers to attributes that the user
can change via rename in place. additional_text is any other text
that the user cannot edit via the rename in place feature. Added
a boolean flag, is_renaming, to check against during various
operations that effect the renaming feature. Removed ARG_TEXT
argument ID and replaced with ARG_EDITABLE_TEXT and
ARG_ADDITIONAL_TEXT.
(nautilus_icon_canvas_item_initialize_class): Function now check
for both ARG_EDITABLE_TEXT and ARG_ADDITIONAL_TEXT. Removed check
for ARG_TEXT.
(nautilus_icon_canvas_item_destroy): Both editable_text and
additonal_text are freed.
(nautilus_icon_canvas_item_set_arg): Removed ARG_TEXT and added
handling of ARG_EDITABLE_TEXT and ARG_ADDITIONAL_TEXT.
(nautilus_icon_canvas_item_get_arg): Removed ARG_TEXT and added
handling of ARG_EDITABLE_TEXT and ARG_ADDITIONAL_TEXT.
(draw_or_measure_label_text): Modified function to not draw the
label icon text if we are renaming in place.
(draw_or_measure_label_text): Function now combines editable and
additional text when performing the measuring operation.
(compute_editable_text_rectangle): Added function to compute
bounds of editable text. This is used to determine size and
placement of editable text item when in renaming mode.
(nautilus_icon_canvas_get_text_bounds): Public API to get bounds
of icon label text.
(nautilus_icon_canvas_get_editable_text_bounds): Public API to get
bounds of editable icon label text.
(hit_test_pixbuf): Added check against is_renaming flag.
(nautilus_icon_canvas_get_editable_text): Public API to get
editable text string.
(nautilus_icon_canvas_item_set_renaming): Public API to toggle
is_renaming flag.
* libnautilus-extensions/nautilus-icon-canvas-item.h
Added public API prototypes to functions described above.
* libnautilus-extensions/nautilus-icon-container.c
Added GET_ICON_EDITABLE_TEXT and GET_ICON_ADDITONAL_TEXT signals.
Removed GET_ICON_TEXT signal. Added ICON_TEXT_CHANGED signal.
(icon_toggle_selected): Renaming mode is now exited when a
selection/deselection occurs.
(key_press_event): GDK_Return ends rename mode and attempts to
accept modification. GDK_Escape ends rename mode and reverts
modification to original.
(nautilus_icon_container_initialize_class): icon_text_changed,
get_icon_editable_text and get_icon_additional_text signals are
registered.
(editing_started): New function. Called when an edit begins.
Inits class member variables for edit mode.
(editing_stopped): New function. Called when edit ends. Cleans
up edit mode.
(nautilus_icon_container_initialize): rename_widget and original_text private variables
are set to NULL.
(icon_toggle_selected): Added call to end_renaming_mode.
(nautilus_icon_container_update_icon): Added emitting of
GET_ICON_EDITABLE_TEXT and GET_ICON_ADDITIONAL_TEXT
signals. Updated gnome_canvas_item_set to use new arguments
defined in nautilus-icon-text-item.
(nautilus_icon_container_show_rename_widget): New
function. Creates and displays renaming_widget. Creates cached
copy of original editable text for later compare, connects signals
and enters renaming mode.
(end_renaming_mode): New function. Cleans up and end renaming
mode.
(hide_rename_widget): Called by end_renaming_mode to hide and free
renaming_widget.
* libnautilus-extensions/nautilus-icon-container.h
Added prototypes for public functions described above.
* libnautilus-extensions/nautilus-icon-private.h
Added boolean for renaming. Added a NautilusIconTextItem variable
for the renaiming widget.
* src/file-manager/fm-icon-view.c
Added defines MENU_PATH_RENAME. Added a char * to hold original
editable text for a later compare. Removed get_icon_text_callback
and added get_icon_editable_text_callback and
get_icon_additonal_text_callback. These return the editable and
additonal text of the icon view.
(rename_icon_callback): Added callback that attempts to rename the
NautilusFile the icon view represents. Action in not taken if
there has been no change to the editable text. If the operation
fails, the user is notified.
(fm_icon_view_append_selection_context_menu_items): Added Rename
menu item.
(append_bonobo_menu_item): Added Rename menu item and callback.
(update_bonobo_menu_item): Added sensitivity check for the Rename
item. It is enabled only if a single item is selected.
(fm_icon_view_icon_text_changed_callback): Added function to
attempt to change the filename to the new text. Notify user if
operation fails.
(get_icon_editable_text_callback): This callback returns the text
items that are editable by the user using the "Rename" command. In
the case of FMIconView, this would be the attribute with the name
"name".
(get_icon_additional_text_callback): This callback returns the
text items that are not editable by the user using the "Rename"
command.
2000-04-18 John Sullivan <sullivan@eazel.com>
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_monitor_add), (nautilus_file_monitor_remove):
Added empty implementations for these two routines. Will
fill in with actual code later after talking to Darin.
* src/nautilus-index-title.c:
(nautilus_index_title_set_uri): Monitor file for changes
in directory item count.
(release_file): Remove monitoring of file.
* src/file-manager/fm-properties-window.c:
(name_field_done_editing), (name_field_focus_out),
(name_field_focus_in), (create_properties_window):
Made focusing away from the name field in the Properties
window deselect the text, and focusing in select it.
2000-04-18 John Sullivan <sullivan@eazel.com>
Fixed bugs, mostly related to editable text fields.
* README: Made the contents of this file slightly helpful.
* data/mime/nautilus.keys: Added an obscure MIME type that
someone reported running into.
* libnautilus-extensions/nautilus-entry.h,
* libnautilus-extensions/nautilus-entry.c: New files. Define a
subclass of GtkEntry (one-line text editing field) that fixes
bugs and adds convenience functions.
(nautilus_entry_key_press): Override key_press handler to treat
the keypad Enter key the same as the other Enter key (in GtkEntry
it inserts a "/r" into the text).
(nautilus_entry_select_all): Select all text, and move the text
cursor position to the end.
(nautilus_entry_select_all_at_idle): Same, but do it at the next
idle opportunity. Useful since nautilus_entry_select_all won't
work right if called in a key_press signal handler.
* libnautilus-extensions/Makefile.am: Build these two new files.
* src/file-manager/fm-properties-window.c:
(name_field_activate): New function, updates file name and
selects all text.
(create_properties_window): Make name_field be a NautilusEntry.
This fixes half of bug 433 (Enter keys don't work properly in
properties window). Also attach to "activate" signal and update
name change then. This fixes other half of bug 433. Also start
with name field selected & focused. This fixes bug 432 (properties
window should appear with name text selected).
(name_field_update_to_match_file): Only update the displayed text
if the new name coming in is different. This was needed to make
select-all-on-activate work.
(name_field_done_editing): Don't accept empty string as name;
silently revert back to original name.
* src/nautilus-bookmarks-window.c:
(create_bookmarks_window): Change name & uri text fields to
NautilusEntry; this causes keypad Enter key to behave like other
Enter key. Also connect to focus_in and activate signals.
(update_bookmark_from_text): New function, extracted from
on_text_field_focus_out_event.
(on_text_field_focus_out_event): Deselect all text after updating
bookmark.
(on_text_field_focus_in_event): New function, select all text.
(name_or_uri_field_activate): New function, update bookmark and
select all text.
* src/nautilus-location-bar.c:
(nautilus_location_bar_initialize): Use NautilusEntry instead of
GtkEntry. This makes keypad Enter act like other Enter in uri-entry
field.
* src/ntl-window-msgs.c:
(nautilus_window_end_location_change_callback): Make "Nautilus can't
handle this type of file" message mention (human-readable version of)
file type.
2000-04-17 Andy Hertzfeld <andy@eazel.com>
fixed bug involving making thumbnails for directories where we don't
have write permissions by making them in $HOME/.nautilus/thumbnails.
* libnautilus/nautilus-directory.c:
moved escape_slashes routine to nautilus-strings so it can be shared
* libnautilus/nautilus-string.c,h:
added nautilus_str_escape_slashes, copies from nautilus-directory
* libnautilus/nautilus-icon-factory.c:
added boolean to make_thumbnail_path to make the thumbnails in
$HOME/.nautilus/thumbnails instead of in the local directory, and
then used it when we can't write to the local one.
2000-04-16 Andy Hertzfeld <andy@eazel.com>
* src/ntl-index-panel.c:
fixed problem where the command buttons in the index panel were overlapping
the metaview. They are not supposed to be showing if a metaview is selected.
Fixed by hiding them in nautilus_index_panel_update_buttons if a metaview
is selected.
2000-04-15 Andy Hertzfeld <andy@eazel.com>
installed some icons for common file types, purloined from gmc
* icons/Makefile.am:
added a bunch of icons
* icons/gnome-icon-x-mp3.png: new icon for mp3s
* icons/gnome-compressed.png: new icon for gzips
* icons/gnome-library.png: new icon for shared libraries
* icons/gnome-manpage.png: new icon for man pages
* icons/gnome-objectfile.png: new icon for object code files
* icons/gnome-pack-deb.png: new icon for debian packages
* icons/gnome-pack-rpm.png: new icon for rpm packages
* icons/gnome-package: new icon for tar archives
* data/mime/nautilus.keys:
added icon-filename entries to appropriate mime-types
2000-04-14 Darin Adler <darin@eazel.com>
* libnautilus-extensions/nautilus-string.c:
* libnautilus-extensions/nautilus-string.h:
After a chat with Rebecca, named nautilus_str_underscore_escape to
nautilus_str_double_underscores since the latter name more
accurately describes what it does.
(nautilus_str_double_underscores): Changed the function to allow
NULL and return NULL instead of doing g_return_val_if_fail.
(Also reformatted a bit and made a few gratuitous changes.)
* libnautilus-extensions/nautilus-bookmark.c:
* libnautilus-extensions/nautilus-bookmark.h:
(nautilus_bookmark_get_menu_display_name):
Moved the logic about escaping menu characters up one level so
the bookmark class doesn't have to know about it. This removes
the function from NautilusBookmark completely.
* src/nautilus-window-menus.c:
(append_bookmark_to_menu): Fixed a storage leak and moved the
double-underscore escaping in here.
2000-04-14 Rebecca Schulman <rebecka@eazel.com>
Fixed test cases on nautilus-string.c to be correct
2000-04-14 Rebecca Schulman <rebecka@eazel.com>
Bookmarks with '_' characters display
correctly now on menus
* libnautilus-extensions/nautilus-string.c
New function to escape '_' characters in strings
for menu display
* libnautilus-extensions/nautilus-bookmark.c
New function to take bookmarks and return
'_' escaped names
* src/nautilus-window-menus.c
Calls function to escape bookmark names
2000-04-14 Darin Adler <darin@eazel.com>
Finished task 174 (Use deferred calculation to compute directory
counts).
* libnautilus-extensions/Makefile.am:
* libnautilus-extensions/nautilus-file-attributes.h:
Added a header file for names of file attributes.
* libnautilus-extensions/nautilus-directory-private.h:
* libnautilus-extensions/nautilus-directory.c:
* libnautilus-extensions/nautilus-directory.h:
* libnautilus-extensions/nautilus-file-private.h:
* libnautilus-extensions/nautilus-file.c:
* libnautilus-extensions/nautilus-file.h:
Added background computation of the "directory item count"
attribute. This is serving as a test case for the API for
requesting additional information.
* src/file-manager/fm-directory-view.c:
(display_selection_info): Changed to use the new interface that
can sometimes return "I don't know" for the number of items in
a particular directory.
(stop_load), (done_loading), (display_pending_files),
(fm_directory_view_stop): Fixed a mistake in the old code where
we stopped monitoring once the files were discovered. We need to
keep monitoring.
(finish_loading_uri): Pass in an attribute that we want to monitor:
NAUTILUS_FILE_ATTRIBUTE_DIRECTORY_ITEM_COUNT.
2000-04-14 Rebecca Schulman <rebecka@eazel.com>
Bookmarks with '_' characters display
correctly now on menus
* libnautilus-extensions/nautilus-string.c
New function to escape '_' characters in strings
for menu display
* libnautilus-extensions/nautilus-bookmark.c
New function to take bookmarks and return
'_' escaped names
* src/nautilus-window-menus.c
Calls function to escape bookmark names
Fri Apr 14 16:35:32 2000 Raph Levien <raph@acm.org>
* librsvg/test-rsvg.c: Added a command line tester for rsvg, which
outputs alpha-transparent PNG's from SVG input files. The PNG save
code is lifted from similar code in nautilus-icon-factory, and
should be deleted when this functionality appears in gdk-pixbuf.
* librsvg/Makefile.am: Build test-rsvg.
2000-04-14 Andy Hertzfeld <andy@eazel.com>
* libnautilus-extensions/nautilus-icon-factory.c:
using Raph's new machinery, made icons for .svg files use
a rendering of the file itself.
2000-04-14 Christopher James Lahey <clahey@helixcode.com>
* src/ntl-window.c (nautilus_window_constructed): Change the
packing of the first pane so that it doesn't autoresize.
* libnautilus-extensions/nautilus-file-utilities.c
(nautilus_user_top_directory): Change this routine to use
gnome_datadir_file to get the share directory. Also, change to
using g_strdup_printf.
2000-04-14 Darin Adler <darin@eazel.com>
* libnautilus-extensions/.cvsignore: Fixed to match new directory
contents.
2000-04-14 Ramiro Estrugo <ramiro@eazel.com>
Split libnautilus into two pieces.
libnautilus now only contains the view interfaces needed by nautilus
components.
These are the interfaces defined in nautilus-view-component.idl.
libnautilus-extensions containes the remainder of the stuff.
Also used the cvs repository munging opportunity to do some of the
ntl-* renaming outlined in the RENAIMING file.
* libnautilus/bonobo-stream-vfs.c
libnautilus/bonobo-stream-vfs.h,
libnautilus/gtkscrollframe.c,
libnautilus/gtkscrollframe.h,
libnautilus/nautilus-alloc.h,
libnautilus/nautilus-background-canvas-group.c,
libnautilus/nautilus-background-canvas-group.h,
libnautilus/nautilus-background.c,
libnautilus/nautilus-background.h,
libnautilus/nautilus-bonobo-extensions.c,
libnautilus/nautilus-bonobo-extensions.h,
libnautilus/nautilus-bookmark.c,
libnautilus/nautilus-bookmark.h,
libnautilus/nautilus-debug.c,
libnautilus/nautilus-debug.h,
libnautilus/nautilus-default-file-icon.c,
libnautilus/nautilus-default-file-icon.h,
libnautilus/nautilus-directory-background.c,
libnautilus/nautilus-directory-background.h,
libnautilus/nautilus-directory-private.h,
libnautilus/nautilus-directory.c,
libnautilus/nautilus-directory.h,
libnautilus/nautilus-file-private.h,
libnautilus/nautilus-file-utilities.c,
libnautilus/nautilus-file-utilities.h,
libnautilus/nautilus-file.c,
libnautilus/nautilus-file.h,
libnautilus/nautilus-gdk-extensions.c,
libnautilus/nautilus-gdk-extensions.h,
libnautilus/nautilus-gdk-pixbuf-extensions.c,
libnautilus/nautilus-gdk-pixbuf-extensions.h,
libnautilus/nautilus-glib-extensions.c,
libnautilus/nautilus-glib-extensions.h,
libnautilus/nautilus-global-preferences.c,
libnautilus/nautilus-global-preferences.h,
libnautilus/nautilus-gnome-extensions.c,
libnautilus/nautilus-gnome-extensions.h,
libnautilus/nautilus-graphic-effects.c,
libnautilus/nautilus-graphic-effects.h,
libnautilus/nautilus-gtk-extensions.c,
libnautilus/nautilus-gtk-extensions.h,
libnautilus/nautilus-gtk-macros.h,
libnautilus/nautilus-icon-canvas-item.c,
libnautilus/nautilus-icon-canvas-item.h,
libnautilus/nautilus-icon-container.c,
libnautilus/nautilus-icon-container.h,
libnautilus/nautilus-icon-dnd.c,
libnautilus/nautilus-icon-dnd.h,
libnautilus/nautilus-icon-factory.c,
libnautilus/nautilus-icon-factory.h,
libnautilus/nautilus-icon-grid.c,
libnautilus/nautilus-icon-grid.h,
libnautilus/nautilus-icon-private.h,
libnautilus/nautilus-lib-self-check-functions.c,
libnautilus/nautilus-lib-self-check-functions.h,
libnautilus/nautilus-list-column-title.c,
libnautilus/nautilus-list-column-title.h,
libnautilus/nautilus-list.c,
libnautilus/nautilus-list.h,
libnautilus/nautilus-metadata.h,
libnautilus/nautilus-mime-type.c,
libnautilus/nautilus-mime-type.h,
libnautilus/nautilus-self-checks.c,
libnautilus/nautilus-self-checks.h,
libnautilus/nautilus-string-list.c,
libnautilus/nautilus-string-list.h,
libnautilus/nautilus-string.c,
libnautilus/nautilus-string.h,
libnautilus/nautilus-xml-extensions.c,
libnautilus/nautilus-xml-extensions.h: moved to
libnautilus-extensions.
libnautilus/ntl-content-view-frame.c,
libnautilus/ntl-content-view-frame.h,
libnautilus/ntl-meta-view-frame.c,
libnautilus/ntl-meta-view-frame.h,
libnautilus/ntl-view-frame.c,
libnautilus/ntl-view-frame.h: moved to
libnautilus-extensions and renamed from "ntl-*" to "nautilus-*"
* Makefile.am,
configure.in: added libnautilus-extensions to the build.
* libnautilus/.cvsignore,
libnautilus/Makefile.am,
libnautilus/libnautilus.h,
libnautilus/nautilus-content-view-frame.c,
libnautilus/nautilus-content-view-frame.h,
libnautilus/nautilus-meta-view-frame.c,
libnautilus/nautilus-meta-view-frame.h,
libnautilus/nautilus-view-frame-private.h,
libnautilus/nautilus-view-frame.c,
libnautilus/nautilus-view-frame.h,
libnautilus/nautilus-zoomable.c: Updated for libnautilus ->
libnautilus-extensions changes.
* libnautilus-extensions/Makefile.am,
libnautilus-extensions/nautilus-global-preferences.c,
libnautilus-extensions/nautilus-global-preferences.h,
libnautilus-extensions/nautilus-icon-factory.h: Updated for libnautilus ->
libnautilus-extensions changes.
* nautilus-widgets/nautilus-preferences-box.c,
nautilus-widgets/nautilus-preferences-dialog.c,
nautilus-widgets/nautilus-preferences-group.c,
nautilus-widgets/nautilus-preferences-item.c,
nautilus-widgets/nautilus-preferences-pane.c,
nautilus-widgets/nautilus-preferences.c,
nautilus-widgets/nautilus-radio-button-group.c: Updated for libnautilus ->
libnautilus-extensions changes.
* src/Makefile.am,
src/nautilus-bookmark-list.c,
src/nautilus-bookmark-list.h,
src/nautilus-bookmarks-window.c,
src/nautilus-index-tabs.c,
src/nautilus-index-title.c,
src/nautilus-location-bar.c,
src/nautilus-signaller.c,
src/nautilus-window-menus.c,
src/nautilus-window-toolbars.c,
src/nautilus-zoom-control.c,
src/ntl-app.c,
src/ntl-index-panel.c,
src/ntl-main.c,
src/ntl-meta-view.c,
src/ntl-uri-map.c,
src/ntl-uri-map.h,
src/ntl-view-bonobo-subdoc.c,
src/ntl-view.c,
src/ntl-window-msgs.c,
src/ntl-window-state.c,
src/ntl-window.c,
src/ntl-window.h: Updated for libnautilus ->
libnautilus-extensions changes.
* src/file-manager/fm-directory-view.c,
src/file-manager/fm-directory-view.h,
src/file-manager/fm-icon-text-window.c,
src/file-manager/fm-icon-view.c,
src/file-manager/fm-list-view.c,
src/file-manager/fm-properties-window.c,
src/file-manager/fm-properties-window.h: Updated for libnautilus ->
libnautilus-extensions changes.
* components/history/Makefile.am,
components/history/ntl-history-view.c,
components/html/Makefile.am,
components/html/ntl-web-browser.c,
components/music/Makefile.am,
components/music/nautilus-music-view.c,
components/music/nautilus-music-view.h,
components/notes/Makefile.am,
components/notes/ntl-notes.c,
components/rpmview/Makefile.am,
components/rpmview/nautilus-rpm-view.c,
components/rpmview/nautilus-rpm-view.h,
components/sample/Makefile.am,
components/sample/nautilus-sample-content-view.c,
components/sample/nautilus-sample-content-view.h,
components/services/startup/Makefile.am,
components/services/startup/eazel-register.c,
components/services/startup/nautilus-service-startup-view.c,
components/services/startup/nautilus-service-startup-view.h:
Updated components for libnautilus -> libnautilus-extensions changes.
2000-04-14 Fatih Demir <kabalak@gmx.net>
* configure.in : Added tr to ALL_LINGUAS .
2000-04-14 Ramiro Estrugo <ramiro@eazel.com>
* po/ChangeLog: Added this thing to make 'make dist' happy.
Use that from now on for changes in po/. Seems to be the standard
thing to do.
2000-04-14 Ramiro Estrugo <ramiro@eazel.com>
* libnautilus/libnautilus.h
libnautilus/nautilus-zoomable.h
libnautilus/ntl-view-frame.h:
Include the new <nautilus-view-component.h> instead of
<nautilus.h>
src/ntl-uri-map.h
src/ntl-view.h:
Same.
2000-04-14 Ramiro Estrugo <ramiro@eazel.com>
* components/rpmview/nautilus-rpm-view.c:
Did not build on redhat 5.2 because RPMTAG_FILENAMES has been
obseleted in the version of rpm that ships with 5.2 apparently.
I added a dumb hack to define RPMTAG_FILENAMES to
RPMTAG_OLDFILENAMES which is almost surely the wrong thing to do,
but i really need to have nautilus building while i do the
nautilus view changes. I gave myself a bug to properly address
this soon (472).
2000-04-14 Maciej Stachowiak <mjs@eazel.com>
* ChangeLog-20000414: rolled over from ChangeLog.