2000-07-28 Gene Z. Ragan <gzr@eazel.com>
OK. I made a booboo. Went back to using NautilusFile.
I really do understand what is going on now.
NautilusFIle
* libnautilus-extensions/nautilus-directory-async.c:
(activation_uri_gmc_link_read_callback):
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_contains_text), (nautilus_file_activate_custom):
* libnautilus-extensions/nautilus-icon-factory.c:
(nautilus_icon_factory_get_icon_for_file):
* libnautilus-extensions/nautilus-link.c:
(nautilus_link_is_link_file), (nautilus_link_set_icon):
* libnautilus-extensions/nautilus-link.h:
* src/file-manager/fm-icon-view.c: (get_icon_text_callback):
2000-07-28 Gene Z. Ragan <gzr@eazel.com>
Some placeholder trash code written at the request of Pavel.
* libnautilus-extensions/nautilus-link.c: (nautilus_link_set_icon):
Made sure the modified xml link gets flushed back to disk.
* src/file-manager/fm-directory-view.c:
(set_trash_empty):
New function that updates the status of the trash tracking global
and update the trash icon.
(bonobo_menu_empty_trash_callback),
(fm_directory_view_trash_or_delete_selection):
Add calls to set_trash_empty ()
* src/nautilus-desktop-window.c:
(nautilus_desktop_window_new):
Removed some debugging cruft
2000-07-27 Pavel Cisler <pavel@eazel.com>
Bug 1561: Font preferences have no effect on the list view.
* src/file-manager/fm-directory-view.c:
(text_attribute_names_changed_callback),
(directory_view_font_family_changed_callback),
(click_policy_changed_callback),
(anti_aliased_mode_changed_callback),
(fm_directory_view_initialize), (fm_directory_view_destroy):
* src/file-manager/fm-directory-view.h:
* src/file-manager/fm-icon-view.c: (fm_icon_view_destroy),
(fm_icon_view_text_attribute_names_changed),
(fm_icon_view_font_family_changed),
(fm_icon_view_click_policy_changed),
(fm_icon_view_anti_aliased_mode_changed),
(fm_icon_view_initialize_class), (fm_icon_view_initialize),
(fm_icon_view_update_icon_container_fonts):
Moved all the registering of preference change callbacks into
FMDirectoryView.
Added default signal handlers that get called for each preference
item change.
Converted original preference change callbacks into default signal
handler overrides in FMDirectoryView.
* src/file-manager/fm-list-view.c: (fm_list_view_initialize_class),
(fm_list_view_initialize), (fm_list_view_destroy),
(fm_list_view_setup_list), (fm_list_view_update_click_mode),
(fm_list_view_font_family_changed):
Removed extra preference change callback setup calls, they are now
all done in FMDirectoryView for both the icon view and list view.
Added a simple font family changed callback that sets the selected
font.
Called it during list view initialization to make sure the list view
comes up with the right saved font.
2000-07-27 Gene Z. Ragan <gzr@eazel.com>
* libnautilus-extensions/nautilus-link.c:
(nautilus_link_is_link_file):
Escape the path passed in so we can use gnome-fvs
to determine the mime type.
2000-07-27 Gene Z. Ragan <gzr@eazel.com>
* libnautilus-extensions/nautilus-directory-async.c:
(activation_uri_gmc_link_read_callback):
Changed the API to determine if file is link file to use path.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_contains_text), (nautilus_file_activate_custom):
Changed the API to determine if file is link file to use path.
* libnautilus-extensions/nautilus-icon-factory.c:
(nautilus_icon_factory_get_icon_for_file):
Changed the API to determine if file is link file to use path.
* libnautilus-extensions/nautilus-link.c: (nautilus_link_create),
(nautilus_link_is_link_file), (nautilus_link_set_icon):
Changed the API to determine if file is link file to use path.
* src/file-manager/fm-desktop-icon-view.c:
(fm_desktop_icon_view_destroy), (mount_device_mount),
(remove_mount_links), (place_home_directory):
More work on setting links icons.
* src/file-manager/fm-icon-view.c:
(get_icon_text_callback):
Changed the API to determine if file is link file to use path.
* src/nautilus-desktop-window.c:
(nautilus_desktop_window_new):
Work in progress on setting up the Trash icon.
* libnautilus-extensions/nautilus-search-uri.c:
(nautilus_search_uri_to_simple_search_criteria):
This needs to return a g_free'able string, so I changed the
placeholder to return NULL instead of "". (g_strdup ("") would
also have been OK.)
* src/nautilus-complex-search-bar.h:
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_initialize_class),
(nautilus_complex_search_bar_initialize),
(nautilus_complex_search_bar_get_location),
(nautilus_complex_search_bar_set_location):
* src/nautilus-location-bar.c: (drag_data_received_callback),
(drag_data_get_callback), (nautilus_location_bar_initialize_class),
(nautilus_location_bar_initialize),
(nautilus_location_bar_set_location),
(nautilus_location_bar_get_location):
* src/nautilus-navigation-bar.h:
* src/nautilus-navigation-bar.c:
(nautilus_navigation_bar_initialize_class),
(nautilus_navigation_bar_get_location),
(nautilus_navigation_bar_location_changed):
* src/nautilus-search-bar.h:
* src/nautilus-search-bar.c:
(nautilus_search_bar_initialize_class),
(nautilus_search_bar_initialize):
* src/nautilus-simple-search-bar.h:
* src/nautilus-simple-search-bar.c:
(nautilus_simple_search_bar_initialize_class),
(nautilus_simple_search_bar_initialize),
(nautilus_simple_search_bar_set_location),
(nautilus_simple_search_bar_get_location):
* src/nautilus-switchable-navigation-bar.c:
(nautilus_switchable_navigation_bar_initialize),
(nautilus_switchable_navigation_bar_set_mode):
* src/nautilus-switchable-search-bar.h:
* src/nautilus-switchable-search-bar.c:
(nautilus_switchable_search_bar_initialize_class),
(nautilus_switchable_search_bar_set_mode),
(search_activated_callback),
(nautilus_switchable_search_bar_get_location),
(nautilus_switchable_search_bar_set_location):
Got rid of set_search_controls since set_location does exactly the
same thing. Changed to use get_location in the
NautilusNavigationBar base class instead of having lots of
separate get_location. Fixed bug where get_location would return a
non-g_strdup'd string, which callers would then g_free. Also
changed to use simpler version of location_changed since the
navigation bar can now get the location easily for itself so the
subclasses need not do it. Callbacks now can call
nautilus_navigation_bar_location_changed directly. Removed some
empty destroy functions in classes where they are likely to be
empty forever.
* src/nautilus-window.c: (goto_uri_callback): Whitespace.
2000-07-27 Arlo Rose <arlo@eazel.com>
* data/backgrounds/*.png
* icons/eazel/*.png
I fixed all the png files in these directories that
contained the bad white point.
the confusion about the two "Customize" menu items. This matches
(one little bit of) Arlo's menu-layout proposal.
* src/nautilus-window-menus.c:
(get_customize_user_level_settings_menu_string): Corrected the
spelling of this function (had three consecutive t's)
(clear_dynamic_bookmark_items): Renamed this from
"clear_appended_bookmark_items" since I'm about to add support
for appended bookmarks that aren't dynamic.
(refresh_bookmarks_menu), (refresh_go_menu),
(update_user_level_menu_items): updated callers to reflect name changes.
(nautilus_window_initialize_menus), (get_customize_user_level_string):
"Customize" -> "Change"
2000-07-27 Rebecca Schulman <rebecka@eazel.com>
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_get_location):
completely got rid of the committed,
half-written code.
I fixed this last night, but Mathieu's
commit seems to have overwritten mine.
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_get_location): Fixed lack of NULL in
a g_strconcat that was causing an intermittent crash on boot.
2000-07-27 Gene Z. Ragan <gzr@eazel.com>
Fixed bug 1474, special handling for running as root
* src/nautilus-application.c:
(check_for_and_run_as_super_user):
New function to determine if app is being run if root. If so,
warn the user and allow them to cancel execution of
the app. Return users decision.
(nautilus_application_startup):
Call check_for_and_run_as_super_user. If the user is root
and decides to quit, end program execution.
2000-07-27 Pavel Cisler <pavel@eazel.com>
* src/file-manager/fm-desktop-icon-view.c:
(new_terminal_menu_item_callback),
(fm_desktop_icon_view_create_background_context_menu_items):
Bug 1792 - "New Terminal" command in menus.
Added a menu item to the desktop context menu to start a new
terminal.
* libnautilus-extensions/nautilus-gnome-extensions.c:
* libnautilus-extensions/nautilus-gnome-extensions.h:
(max_open_files), (nautilus_gnome_terminal_shell_execute),
(nautilus_gnome_open_terminal):
For the above, added a call to launch a new Terminal, pieced together
from the origina GMC code, getting rid of some cruft we do not
need and using stock glib calls where possible.
* src/file-manager/fm-directory-view.c:
(new_folder_menu_item_callback), (fm_directory_view_add_menu_item),
(fm_directory_view_real_create_background_context_menu_items),
(fm_directory_view_real_create_selection_context_menu_items):
* src/file-manager/fm-directory-view.h:
Did a part of 1063 - "The right click desktop menu needs more commands
to match gmc" that is not covered by a separate bug - added a "New
Folder" menu item.
Fixes 1065 and 1067.
* src/file-manager/dfos-xfer-progress-dialog.c:
(create_titled_label), (dfos_xfer_progress_dialog_initialize):
Complete task 1504 - Copy progress dialog needs a visual redesign.
Made it so that the Copying:, From: and To: lines are packed more
snugly, as per the design. The spacing of the original GtkLabels
was too spacy.
Used a non-zero border to offset the items more from the dialog edges
to make it look more as designed.
2000-07-27 Mathieu Lacage <set EMAIL_ADDRESS environment variable>
Fixes a number of bugs from rebecka latest commit.
The UI for search is almost working. I will finish it
tomorow and will hook it onto medusa quickly.
* libnautilus-extensions/nautilus-search-bar-criterion.c:
(number_from_type),
(nautilus_search_bar_criterion_new_from_values),
(nautilus_search_bar_criterion_next_new),
(nautilus_search_bar_criterion_first_new):
* libnautilus-extensions/nautilus-search-bar-criterion.h:
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_initialize),
(nautilus_complex_search_bar_get_location),
(more_options_callback), (fewer_options_callback):
* components/tree/nautilus-tree-model.c:
* components/tree/nautilus-tree-model.h:
* components/tree/nautilus-tree-node.c:
(nautilus_tree_node_get_parent), (nautilus_tree_node_get_children),
(nautilus_tree_node_get_file), (nautilus_tree_node_get_directory),
(nautilus_tree_node_set_user_data),
(nautilus_tree_node_get_user_data):
* components/tree/nautilus-tree-node.h:
Some work in progress on some model/view separation for the tree
view.
* libnautilus-extensions/nautilus-file-attributes.h,
libnautilus-extensions/nautilus-directory-async.c
(set_up_request_by_file_attributes): Added an "is directory"
attribute which you can use in a file attribute list for a monitor
or call_when_ready request, which insures we get that piece of
info about files.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_get_real_name, nautilus_file_get_real_directory):
Add necessary decoding for the search case.
* src/file-manager/fm-search-list-view.c
(get_attribute_from_column): Get the directory attribute for the
directroy column.
fixed task 1729, icon labels need to adapt their color to the
background. Fixed by adding a label_color field to the icon
container, and maintaining it by attaching to the appearance_changed
signal of its background. The item uses that color for drawing.
2000-07-27 Gene Z. Ragan <gzr@eazel.com>
Fixed bug #1775, add home directory to desktop.
* icons/Makefile.am:
Added temp-home.png. This is a temp icon file.
* src/file-manager/fm-desktop-icon-view.c: (mount_device_mount),
(place_home_directory), (create_desktop_link):
Add users name and default icon to home directory link
on desktop. Change create_mount_link to more generic
create_desktop_link.
2000-07-27 Rebecca Schulman <rebecka@eazel.com>
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_get_location):
disabled a not-ready for checkin function
fixed bug where the increment and decrement images of the zoom
control were not being erased at the extremes; also, added ability
to use custom numbers via a number strip image.
2000-07-26 Rebecca Schulman <rebecka@eazel.com>
Redid the complex search bar to look the way we actually
wanted it. There are still some bugs, but as far as i
can tell, it hasn't introduced horrid instability, and
this way, mathieu, among other can work on the
partial amount of stuff i have done.
* libnautilus-extensions/Makefile.am:
* src/Makefile.am:
* src/nautilus-search-bar-criterion.c:
* src/nautilus-search-bar-criterion.h:
* libnautilus-extensions/nautilus-search-uri.h:
* src/nautilus-search-bar.c:
* src/nautilus-simple-search-bar.c:
(nautilus_simple_search_bar_initialize_class),
(nautilus_simple_search_bar_set_search_controls):
* src/nautilus-switchable-search-bar.c:
Moved nautilus-search-bar-criterion.c from src/ to
libnautilus-extensions.
* libnautilus-extensions/nautilus-search-bar-criterion.c:
* libnautilus-extensions/nautilus-search-bar-criterion.h:
(nautilus_search_bar_criterion_destroy),
(nautilus_search_bar_criterion_new),
(nautilus_search_bar_criterion_new_from_values),
(nautilus_search_bar_criterion_next_new),
(nautilus_search_bar_criterion_first_new),
(nautilus_search_bar_criterion_list_get_last),
(get_next_default_search_criterion_type),
(nautilus_search_bar_criterion_show),
(nautilus_search_bar_criterion_hide):
redid this api, and made it saner. Doesn't seem
like a gtk class is even necessary, or even useful here.
We just want to keep track of the widgets.
* src/nautilus-complex-search-bar.c:
(nautilus_complex_search_bar_initialize_class),
(nautilus_complex_search_bar_initialize),
(nautilus_complex_search_bar_get_location),
(nautilus_complex_search_bar_set_search_controls),
(attach_criterion_to_search_bar),
(unattach_criterion_from_search_bar), (more_options_callback),
(fewer_options_callback):
redid this to use tables, instead of all the boxes, as per
Gene's suggestion. There are still a few bugs here
with criterion removal that need to be worked out,
and there also needs to be some level of translation to
uri, and re-setting up the search criteria to correspond to
a uri.
* libnautilus-extensions/nautilus-search-bar-criterion-private.h:
added to keep some sense of data privacy.
2000-07-26 Gene Z. Ragan <gzr@eazel.com>
* src/file-manager/fm-desktop-icon-view.c: (mount_device_mount),
(make_home_link), (place_home_directory), (create_mount_link):
Additional work on placement of home directory on desktop
and conversion of mount links from gnome-vfs symbolic links
to nautilus links.
2000-07-26 Gene Z. Ragan <gzr@eazel.com>
* libnautilus-extensions/nautilus-link.c:
* libnautilus-extensions/nautilus-link.h:
(nautilus_link_is_link_file):
Renamed function nautilus_link_is_link_file_name to
nautilus_link_is_link_fileand modified it to determine if
it is a link file using mime magic. Function now takes
a NautilusFile * as the argument.
* libnautilus-extensions/nautilus-link-set.c: (link_set_path_name),
(create_new_link), (nautilus_link_set_is_installed),
(nautilus_link_set_remove):
Modified to use the new mime magic within the link file.
* libnautilus-extensions/nautilus-directory-async.c:
(activation_uri_gmc_link_read_callback):
Changed nautilus_link_is_link_file_name to nautilus_link_is_link_file.
* libnautilus-extensions/nautilus-directory.c:
(construct_alternate_metafile_uri):
Changed nautilus_link_is_link_file_name to nautilus_link_is_link_file.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_contains_text), (nautilus_file_activate_custom):
Changed nautilus_link_is_link_file_name to nautilus_link_is_link_file.
* libnautilus-extensions/nautilus-icon-factory.c:
(nautilus_icon_factory_get_icon_for_file):
Removed old way of identifying mount volume links in anticipation
of using mime magic.
* src/file-manager/fm-desktop-icon-view.c:
(fm_desktop_icon_view_initialize), (mount_device_mount),
(mount_device_floppy_add), (add_mount_device), (make_desktop_link),
(get_ext2_volume_name), (place_home_directory):
Removed old way of indentifying mount link files in anticipation
of using mime magic.
Work in progress on placing a home directory on the desktop.
* libnautilus-extensions/nautilus-directory-async.c:
(activation_uri_found): Added a missing call to
nautilus_directory_async_state_changed to keep the state machine
alive.
* libnautilus-extensions/nautilus-directory-async.c:
(metafile_read_failed): First cut at only reading the metafile if the
directory is really a directory. This might be making things worse
for now, because I'm not sure if the file info is available at this
point. I'll check in something better soon.
* libnautilus-extensions/nautilus-directory.c:
(nautilus_directory_is_search_directory): Fixed backwards test that
would return TRUE for many non-search directories. Then I put that
code inside #if 0 and added a version of the function that just
checks the scheme of the URI for now. Also added FIXMEs.
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_get_real_name): Simplfied the code a bit. Also added
a FIXME.
* Makefile.am:
* components/hardware/Makefile.am:
* components/help/Makefile.am:
* components/history/Makefile.am:
* components/html/Makefile.am:
* components/loser/content/Makefile.am:
* components/loser/sidebar/Makefile.am:
* components/music/Makefile.am:
* components/notes/Makefile.am:
* components/rpmview/Makefile.am:
* components/services/install/nautilus-view/Makefile.am:
* components/services/inventory/nautilus-view/Makefile.am:
* components/services/login/nautilus-view/Makefile.am:
* components/services/startup/nautilus-view/Makefile.am:
* components/services/summary/nautilus-view/Makefile.am:
* components/services/time/nautilus-view/Makefile.am:
* components/services/trilobite/sample/nautilus-view/Makefile.am:
* components/services/vault/nautilus-view/Makefile.am:
* components/tree/Makefile.am:
* components/websearch/Makefile.am:
* cut-n-paste-code/widgets/e-paned/Makefile.am:
* cut-n-paste-code/widgets/nautilus-druid/Makefile.am:
* helper-utilities/authenticate/Makefile.am:
* libnautilus-extensions/Makefile.am:
* librsvg/Makefile.am:
* src/Makefile.am:
* test/Makefile.am:
Make the cut-n-paste libraries be only static archives. Link all
the private libraries statically into libnautilus-extensions.
Remove all the references to private libraries in all the
components and other users of libnautilus-extensions so that
dependencies can be managed in just one place.
2000-07-26 Gene Z. Ragan <gzr@eazel.com>
* src/file-manager/fm-cdrom-extensions.h:
New file that has constants defined in <linux/cdrom.h>
I added this to solve many problems that people are
running into with both Mathieu's fix and the old way
of including the kernel header.
* src/file-manager/fm-desktop-icon-view.c:
It makes me sad to do this, because Matheiu worked so hard
to fix this, but I created a new file with the CDROM constants
in them. This solves several problems people have. I wish
there was a beter solution, because now we have to make
sure we are in sync with the kernel header constants.
2000-07-26 Pavel Cisler <pavel@eazel.com>
* src/file-manager/dfos-xfer.c: (handle_xfer_vfs_error):
Show a more meaningful error dialog when copy/move fails
because the destination is not writable. This is a cheap
replacement for the original fix for bug 657, we aren't
going to do the full fix for this release.