* components/services/install/idl/trilobite-eazel-install.idl:
* components/services/install/lib/eazel-install-corba-callback.c:
(impl_download_progress), (impl_download_failed):
* components/services/install/lib/eazel-install-corba-types.c:
(corba_packagedatastruct_from_packagedata):
* components/services/install/lib/eazel-install-object.c:
(eazel_install_fetch_remote_package_list),
(eazel_install_emit_download_progress),
(eazel_install_emit_download_progress_default),
(eazel_install_emit_download_failed),
(eazel_install_emit_download_failed_default):
* components/services/install/lib/eazel-install-protocols.c:
(http_fetch_remote_file), (ftp_fetch_remote_file),
(gnome_vfs_xfer_callback), (gnome_vfs_fetch_remote_file),
(local_fetch_remote_file), (eazel_install_fetch_file),
(eazel_install_fetch_package):
* components/services/install/lib/eazel-install-protocols.h:
* components/services/install/lib/eazel-install-public.h:
Change the download_progress and download_failed signals to pass a
PackageData struct (and not a char*) just like every other signal,
now that we can do that. Fix a missing bytesize fill-in in one of
the corba conversion functions. Also, make the non-slim build use
the file-rename trick from the bootstrap installer, to ensure that
uncompleted downloads are never treated like valid package files.
* components/rpmview/nautilus-rpm-view-install.c:
(nautilus_rpm_view_download_progress_signal),
(nautilus_rpm_view_download_failed):
* components/services/install/command-line/eazel-alt-install-corba.
c: (eazel_download_progress_signal), (download_failed),
(something_failed):
Fix rpm view and command-line install to use the new download
signal signatures.
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (nautilus_service_install_downloading),
(nautilus_service_install_preflight_check),
(nautilus_service_install_download_failed),
(nautilus_service_install_installing),
(nautilus_service_install_done),
(nautilus_service_install_view_update_from_uri):
Use the new download signal signatures to draw a nifty progress
bar for the overall download (where 90% of most users' time will
be spent in this view). Scale the progress bar to match the
package files' expected sizes (softcat bug to be fixed in 1.0).
Leave the throbber on during the downloads so they can be
aborted. Don't offer to erase rpms if the package was already
installed (and therefore not downloaded).
2001-01-22 Rebecca Schulman <rebecka@eazel.com>
reviewed by: Pavel Cisler <pavel@eazel.com>
* libnautilus-extensions/nautilus-drag.c:
(nautilus_drag_default_drop_action_for_icons):
Switch the order of the arguments to
gnome_vfs_check_same_fs_uris so that
the source uri is first and the target uri
of the drag second. This is rest of the fix
for bugzilla.eazel.com 5498, which necessitated
making the uri arguments to this function have
a required ordering.
Fix bug 5809 - Nautilus is slow to startup because of prefernces
setup code. The reason for the slowdown was the constant
suggestion to gconf to sync. Now, we sync only after setters that
ara result of an operation in Nautilus. All internal setters, such
as defaults and visibilities happen with no sync in between each
one, making things a lot faster.
* libnautilus-extensions/nautilus-gconf-extensions.c:
(nautilus_gconf_set_boolean), (nautilus_gconf_set_integer),
(nautilus_gconf_set_string), (nautilus_gconf_set_string_list),
(nautilus_gconf_monitor_directory), (nautilus_gconf_suggest_sync):
* libnautilus-extensions/nautilus-gconf-extensions.h:
Dont suggest a sync after each set. Instead make a new function
to let callers decide when to suggest a sync. For example, after
a batch of many operations.
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_install_descriptions),
(global_preferences_install_defaults),
(global_preferences_get_dialog),
(global_preferences_install_sidebar_panel_defaults),
(global_preferences_install_sidebar_panel_descriptions),
(global_preferences_install_home_location_defaults),
(nautilus_global_preferences_initialize):
Don't install the descriptions until needed when the dialog is
about to be created. Split the sidebar defaults installer into a
defaults and a descriptions installer. Remove the proxy defaults
installer which was superfluous. My last change simplified the
usage of proxy settings and a whole separate function for that is
no longer needed.
* libnautilus-extensions/nautilus-preferences.c:
(nautilus_preferences_set_boolean),
(nautilus_preferences_set_integer), (nautilus_preferences_set),
(nautilus_preferences_set_string_list),
(nautilus_preferences_set_user_level):
Suggest a gconf sync right after all the setters.
(preferences_something_changed_notice): Add a fixme. Also remove
unused variables and tweak a tiny bit.
* components/services/install/command-line/Makefile.am:
Generate eazel-test-install-types instead of eazel-test-types.
* components/services/install/lib/eazel-install-logic2.c:
(prune_failed_packages), (check_feature_consistency)
(do_file_conflict_check), (install_packages):
Fixed 4589.
Ensure nulling and freeing of packages list in pruner if 0
elements left after prune.
* components/services/install/server/main.c: (main):
Some commented out debug code to enable dropping to gdb
on glib warnings.
removed the "vector" theme at Arlo's request, and many of the
least popular patterns
* configure.in:
removed vector from the build
* data/browser.xml:
* data/patterns/Makefile.am:
removed lots of specific patterns
* icons/Makefile.am:
removed vector theme
* icons/ardmore/ardmore.xml:
* icons/gnome/gnome.xml:
fixed bug 5868, GNOME theme has white text on light background, by
setting the text color in the theme
* icons/vector/.cvsignore:
* icons/vector/Makefile.am:
* icons/vector/i-directory-accept.svg:
* icons/vector/i-directory.svg:
* icons/vector/i-regular.svg:
* icons/vector/i-regular.xml:
* icons/vector/vector.xml:
the vector theme is no more
* nautilus.spec.in:
removed the vector theme from the rpm spec file
* po/POTFILES.in:
removed the vector theme from the localized files
* src/nautilus-property-browser.c: (make_property_tile),
(nautilus_property_browser_get_category_width):
tweaked the layout
* src/nautilus-sidebar-title.c:
(nautilus_sidebar_title_theme_changed):
changed default shadow to 1 pixel
* src/nautilus-theme-selector.c: (done_button_callback),
(nautilus_theme_selector_initialize):
added a done button like the property browser
2001-01-20 Kenneth Christiansen <kenneth@gnu.org>
reviewed by: Pavel Cisler <pavel@eazel.com>
* .cvsignore:
* Makefile.am:
Get rid of nautilus.desktop, use the new nautilus.desktop.in.
* src/nautilus-property-browser.c:
(nautilus_property_browser_initialize), (make_property_tile),
(nautilus_property_browser_update_contents):
fixed bug 3165, Customization Dialog needs layout tweaking, by
working with Arlo to improve it. We also made it more GTK-theme
compliant
* src/nautilus-theme-selector.c:
(nautilus_theme_selector_initialize):
Arlo and I also improved the theme selector in a similar fashion,
including making it GTK-theme complaint.
* icons/Makefile.am:
* icons/i-symlink.png:
* icons/i-symlink-aa.png:
fixed bug 5107, we need a non-broken symlink icon, by adding
new icons from Susan
* icons/ardmore/ardmore.xml:
changed name for Susan
* icons/gnome/gnome.xml:
used the blue arlo tabs in the GNOME theme
* icons/villanova/Makefile.am:
* icons/villanova/Sierra_desktop.png:
* icons/villanova/villanova.xml:
added tweaks from Susan
* components/services/install/nautilus-view/main.c: (main):
Set log handler so debug messages don't spam everywhere.
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (install_message_new),
(nautilus_service_install_downloading),
(nautilus_service_install_preflight_check),
(nautilus_service_install_done):
* components/services/install/nautilus-view/nautilus-service-instal
l-view.h:
Track and report the total kB (or MB) to be downloaded during an
install. This is slightly off (the bytesize provided by softcat
is very rough) but will do for now. Better in 1.0. Also, don't
ask to delete RPMs when none were downloaded.
* components/services/trilobite/libtrilobite/trilobite-core-messagi
ng.c: (trilobite_add_log), (trilobite_set_log_handler):
Allow null filehandle (no logging).
2001-01-19 Eskil Heyn Olsen <eskil@eazel.com>
* components/services/install/lib/eazel-install-logic2.c:
(dump_tree_helper), (check_md5_on_files),
(eazel_install_check_existing_packages), (get_softcat_info),
(is_satisfied), (is_satisfied_features), (do_file_conflict_check),
(install_packages_helper):
Removed old FIXME's
Trying to fix the memory corruption wrt ->minor.
Added more ifdefs around debug output.
* components/services/install/lib/eazel-install-object.c:
(eazel_install_emit_preflight_check),
(eazel_install_emit_dependency_check):
Do the proper thing with total_packages and total_bytes.
Use gtk_object_unref to delete packagedata object in dep_check
signal.
* components/services/install/lib/eazel-install-xml-package-list.c:
(osd_parse_provides):
Parse <FEATURE> in <PROVIDES> and blurp on unknown tags.
* components/services/install/lib/eazel-package-system-rpm3.c:
(eazel_package_system_rpm3_packagedata_fill_from_header),
(check_if_all_packages_seen):
No more start and end signals around failed signals.
Fix for bug 5475 (assertion and crash trying to return using Up
from web link):
* libnautilus-extensions/nautilus-file.c: (get_description): Instead
of asserting that the MIME type is not NULL or empty string, just
change the code to return an empty description for those cases.
* autogen.sh: Fix one silly "ignore non-fatal errors" message.
* components/services/install/lib/eazel-install-metadata.c:
(eazel_install_configure_check_jump_after_install):
* components/services/install/lib/eazel-install-metadata.h:
* components/services/install/lib/eazel-softcat.c:
(eazel_softcat_get_info):
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (nautilus_service_install_downloading),
(nautilus_service_install_dependency_check),
(nautilus_service_install_preflight_check),
(nautilus_service_install_done):
* components/services/trilobite/doc/gconf.txt:
Make the install view jump to the softcat page after an install
completes. Fix NULL-dereference crash caused by installing a
package by id.
* libnautilus-extensions/nautilus-directory-async.c:
(top_left_read_callback): Change code so it doesn't send a file
changed message and then assume nothing changed.
* libnautilus-extensions/nautilus-link.c:
(nautilus_link_local_get_image_uri): Handle the case where it
can't create the directory without seg faulting.
wrong user level)
* libnautilus-extensions/nautilus-global-preferences.c:
(global_preferences_install_visibility): Made it visible
starting at intermediate level.
Fixed bug 5807 (view switches to manual layout only after
hitting Refresh), and other metadata-related problems.
This was a long-standing race condition exposed by recent
timing changes. The directory view was waiting for its
metadata-as-file, but not for its metadata-as-directory, and
it needed both before trying to lay out the contained icons.
* src/file-manager/fm-directory-view.c:
added metadata_for_directory_as_file_pending and
metadata_for_files_in_directory_pending to details struct.
(load_directory): set both pending flags to TRUE before
using call_when_ready to get metadata; use call_when_ready
for getting contained-files metadata as well as
directory-as-file metadata.
(finish_loading_if_all_metadata_loaded): New function,
finishes loading (which lays out the icons) only if neither
metadata is still pending.
(metadata_for_directory_as_file_ready_callback):
clear metadata_for_directory_as_file_pending flag before calling
finish_loading_if...
(metadata_for_files_in_directory_ready_callback):
clear metadata_for_files_in_directory_pending flag before calling
finish_loading_if...
(disconnect_model_handlers): cancel both metadata callbacks.
Now the fonts are right, but the line wrapping is busted
* components/services/nautilus-dependent-shared/eazel-services-exte
nsions.c: (eazel_services_label_new):
* components/services/nautilus-dependent-shared/eazel-services-exte
nsions.h:
* components/services/nautilus-dependent-shared/eazel-services-foot
er.c: (footer_item_new), (eazel_services_footer_update):
* components/services/nautilus-dependent-shared/eazel-services-head
er.c: (eazel_services_header_title_new):
* components/services/summary/nautilus-view/nautilus-summary-view.c
: (generate_summary_form), (generate_service_entry_row),
(generate_eazel_news_entry_row), (generate_update_news_entry_row):
* components/services/install/lib/eazel-install-logic2.c:
(check_conflicts_against_already_installed_packages):
Add comment about how a hack also fixes bug 5799.
* components/services/install/lib/eazel-install-xml-package-list.c:
(osd_parse_softpkg):
Parse REVISION tag in softcat XML for the install lib.
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (generate_install_form), (show_overall_feedback),
(nautilus_install_parse_uri), (current_progress_bar_complete),
(nautilus_service_install_downloading),
(nautilus_service_install_dependency_check),
(flatten_package_tree_foreach), (flatten_package_tree),
(nautilus_service_install_preflight_check),
(nautilus_service_install_view_update_from_uri):
Re-layout a little bit of the top of the install view, to make the
overall feedback label not flicker. Remove some redundant redraws
that had been stuck in to work around the NautilusLabel redraw
sizing bug. Sneak in support for multiple packages in the eazel-
install URI scheme. Remove repeating package names from the final
list during preflight. Give some overall feedback during package
dependency checking so the user doesn't think we're lost in space.
2001-01-19 Rebecca Schulman <rebecka@eazel.com>
reviewed by: John Sullivan <sullivan@eazel.com>
* src/file-manager/fm-search-list-view.c: (load_location_callback),
(display_indexed_search_problems_dialog):
Added dialogs to explain problems that may occur when running a search.
There are separate dialogs to explain each of the following errors:
1. No index files available
2. Index still being created
3. Index files are available, but the search daemon isn't running
4. No index files, and no reindexing service avaialble
We may be able to actually do something about some of these
problems in the future (ie launch the search or indexing daemons
if they're not already running) but for PR3 explaining what is
going on in each of these cases should be a big step forward
* src/file-manager/nautilus-indexing-info.c:
(nautilus_indexing_info_show_dialog):
Show the index files status dialog if there are index files,
or indexing is going on, rather than if the search service
is available, so that a user can follow indexing progress,
even if an index isn't ready yet.
* components/services/install/command-line/eazel-test-packsys.c:
(test_package_load):
Wrote test for the fix to 5262
* components/services/install/lib/eazel-install-logic.c:
Moved get_total_size to logic2.c
* components/services/install/lib/eazel-install-logic2.h:
* components/services/install/lib/eazel-install-logic2.c:
(dump_tree_helper), (eazel_install_check_existing_packages),
(eazel_install_get_total_size_of_packages), (execute):
Setup infoblock so the callback signals make sense, removed a
g_assert_not_reached.
* components/services/install/lib/eazel-install-protocols.c:
(eazel_install_fetch_package):
Don't load dependencies when loading the package after download.
* components/services/install/lib/eazel-package-system-rpm3.c:
(rpm_sense_to_softcat_sense),
(eazel_package_system_rpm3_packagedata_fill_from_header):
Fixed 5262
* components/services/install/lib/eazel-package-system-types.c:
(packagedependency_new), (packagedependency_destroy),
(packagedata_fill_in_missing), (packagedata_dump_int):
Allow fill_in_missing into a packagedata object with depends set.
Moved output of features and provides upwards in dump_int.
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (nautilus_service_install_view_update_from_uri):
Deallocate the EazelInstall object in update_from_uri if already
set. The ensures a reload of the install-view doesn't leak
EazelInstall objects.
* src/nautilus-view-frame-corba.c: (view_widget_gone),
(impl_Nautilus_ViewFrame__destroy),
(impl_Nautilus_ViewFrame__create),
(impl_Nautilus_ViewFrame_open_location_in_this_window),
(impl_Nautilus_ViewFrame_open_location_prefer_existing_window),
(impl_Nautilus_ViewFrame_open_location_force_new_window),
(impl_Nautilus_ViewFrame_report_selection_change),
(impl_Nautilus_ViewFrame_report_status),
(impl_Nautilus_ViewFrame_report_load_underway),
(impl_Nautilus_ViewFrame_report_load_progress),
(impl_Nautilus_ViewFrame_report_load_complete),
(impl_Nautilus_ViewFrame_report_load_failed),
(impl_Nautilus_ViewFrame_set_title):
Since the NautilusViewFrame object is a widget, we don't
control its lifetime completely. So we disconnect from it
when it is destroyed and stop trying to make calls on it.
Finished bug 2146 (Properties window for desktop Trash
should show Trash properties). The last two changes were
to remove the "accessed" field for all directories, since
it seems useless, and to fill in the "where" field with
"on the desktop".
* libnautilus-extensions/nautilus-file.c:
(nautilus_file_get_where_string): New function, calls
virtual function so trash and normal files can report
different strings.
(nautilus_file_get_string_attribute): Changed "parent_uri"
string attribute to "where", since it is not the parent_uri
in the Trash case.
* libnautilus-extensions/nautilus-file.h: Virtual function
pointer for get_where_string.
* libnautilus-extensions/nautilus-trash-file.c:
(trash_file_get_where_string),
(nautilus_trash_file_initialize_class): Supply get_where_string
function that returns "on the desktop".
* libnautilus-extensions/nautilus-vfs-file.c:
(vfs_file_get_where_string), (nautilus_vfs_file_initialize_class):
Supply get_where_string function that returns parent_uri string.
* src/file-manager/fm-properties-window.c:
(should_show_accessed_date): New function, returns FALSE for
directories and TRUE for other files.
(create_basic_page): Honor should_show_accessed_date, and use
"where" instead of "parent_uri" string attribute.
* src/file-manager/fm-search-list-view.c:
(real_get_column_specification): Use "where" instead of "parent_uri"
string attribute.
* components/services/install/nautilus-view/nautilus-service-instal
l-view.c: (install_message_new):
Add a tiny bit of padding to this label to prevent the bottom from
being cut off. Im not sure exactly why the bottom is getting cut
off. I suspect that the part container is constraining the widget
somehow, perhaps to match the geometry of the label on the right.
* libnautilus-extensions/nautilus-label.c:
(label_composite_pixbuf_callback), (nautilus_label_expose_event):
Fix for bugs 5607, 5608 and 5611. Remove previous workaround for
bug 5608. Do the clipping of the area that we need to copy into
the temporary buffer more carefully. The temporary buffer itself
is a workaround for a related bug (2784).
* libnautilus-extensions/bug-5712-pr3-workaround--gdkimage.c:
(NAUTILUS_BUG_5712_PR3_WORKAROUND__gdk_image_get):
Remove a debug printf that I stupidly left in.
of the high integrity Nautilus hackers would approve it.
* libnautilus-extensions/Makefile.am:
* libnautilus-extensions/bug-5712-pr3-workaround--gdk-pixbuf-drawable.c:
* libnautilus-extensions/bug-5712-pr3-workaround--gdk-pixbuf-private.h:
* libnautilus-extensions/bug-5712-pr3-workaround--gdkimage.c:
* libnautilus-extensions/nautilus-gdk-pixbuf-extensions.c:
(nautilus_gdk_pixbuf_get_from_window_safe):
Workaround for bug 5712. This is a temporary evil until GTK+
1.2.9 is released.
Fix for bug 5792 (Sidebar panel choices visible at beginner
user level, but shouldn't be)
* libnautilus-extensions/nautilus-global-preferences.c:
add visible_user_level field to known_sidebar_panels struct.
Set this field appropriately for each of the 4 known sidebar
panels. Remove the 5th known sidebar panel since it was an
accidental duplication of the 2nd one.
(global_preferences_install_sidebar_panel_defaults): Set the
visible user level when installing default values.
2001-01-19 Pavel Cisler <pavel@eazel.com>
reviewed by: Ramiro Estrugo <ramiro@eazel.com>
Fixed 4348: trying to trash a file already deleted outside Nautilus crashes.
* libnautilus-extensions/nautilus-file-operations.c:
(nautilus_file_operations_copy_move):
The problem was that the "find trash near" operation was failing because
the trahsed file was non-existent.
Added code that deals with a NULL target_directory_uri handle.
more clean-up and fixes for the default theme change
* icons/ardmore/ardmore.xml:
* icons/arlo/arlo.xml:
* icons/default.xml:
* icons/eazel/eazel.xml:
* icons/gnome/gnome.xml:
* icons/vector/vector.xml:
* icons/villanova/villanova.xml:
at Arlo's request, capitalized the theme names and also made
them localizable, and tweaks to some of the theme files to fix
problems caused by the new default
* src/nautilus-sidebar-tabs.c:
(nautilus_sidebar_tabs_load_theme_data):
added a way to specify the non-pixmap tabs, since it uses
pixmap ones in the default now
* src/nautilus-theme-selector.c:
(get_theme_description_and_display_name), (add_theme):
made it use a localizable name in the xml file instead of the
actual folder name.
* src/nautilus-window-toolbars.c: (get_file_name_from_icon_name):
added a way to get the stock gnome toolbar icons, now that we have
our own in the default theme
* nautilus.spec.in:
added the throbber component to our package
2001-01-19 Pavel Cisler <pavel@eazel.com>
Fix 3558: Nautilus crashes with specific sequence of icon dragging
and mouse movement
* libnautilus-extensions/nautilus-list.c:
(nautilus_list_button_release), (nautilus_list_motion):
The drag start code was assuming an actual item was clicked,
added a check that checked the clicked row index first.
* libnautilus-extensions/nautilus-self-checks.c:
(nautilus_report_check_failure):
Missed one printf -> fprintf (stderr...