2006-11-23 Federico Mena Quintero <federico@novell.com>
Use the write-to-a-pipe trick from the signal handler instead of
queueing an idle handler from there.
* src/nautilus-main.c (setup_debug_log_signals): Set up a pair of
pipes for the SIGUSR1 handler; set up a GIOChannel on them.
(sigusr1_handler): Write a byte to our pipe instead of queueing an
idle handler.
(debug_log_io_cb): Replaces dump_debug_log_idle_cb(). Read from
the pipe, and dump the debug log.
Add a configuration file for the logging mechanism. You create
~/nautilus-debug-log.conf as a GKeyFile.
* libnautilus-private/nautilus-debug-log.c
(nautilus_debug_log_load_configuration): New function; loads the
configuration from a key file like this:
[debug log]
enable domains = foo; bar; baz
max lines = 1000
* libnautilus-private/nautilus-debug-log.c (dump_configuration):
New utility function.
(nautilus_debug_log_dump): At the end of the log, dump the
configuration used for the debug log so that the user can
re-create it later.
* libnautilus-private/nautilus-debug-log.h: New prototype for
nautilus_debug_log_load_configuration().
* src/nautilus-main.c (setup_debug_log): Load the debug log's
configuration from ~/nautilus-debug-log.conf
(setup_debug_log_domains): Removed.
* src/nautilus-main.c (log_override_cb): If the log level of the
message is G_LOG_LEVEL_DEBUG, don't log it as a milestone. We'll
use this log level for miscellaneous debugging messages from
gnome-vfs. Also, don't send G_LOG_LEVEL_DEBUG messages to the
default log handler, to avoid a huge ~/.xsession-errors.
(setup_debug_log_domains): Enable logging for
NAUTILUS_DEBUG_LOG_DOMAIN_GLOG.
2006-11-22 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-search-engine.c:
Look for Beagle before looking for Tracker. Since Tracker
autostarts and Beagle doesn't this means you can have both
installed and configured and pick which one to use.
2006-11-20 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-icon-container.c:
* src/file-manager/fm-icon-view.c:
Revert federicos patch from 2006-11-06, as it was causing problems.
2006-11-13 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-directory-async.c:
Ref the NautilusDirectory during call_ready_callbacks_at_idle.
Fixes#372471
2006-11-07 Alexander Larsson <alexl@redhat.com>
* NEWS:
Update for release
* libnautilus-private/nautilus-directory-async.c:
* libnautilus-private/nautilus-directory.c:
Unschedule call_ready callbacks on directory finalize, not
on file finalize.
Keep monitors around until we call the call_when_ready callback
at idle time.
Call async_state_changed and update_metadata_monitors after
call_when_ready callbacks have been called at idle.
(fixes make check)
2006-11-07 Alexander Larsson <alexl@redhat.com>
* src/nautilus-application.c:
* src/nautilus-shell.c:
* src/nautilus-main.[ch]:
Make the session restart work again (from 2006-11-03 change)
Make the session not restart nautilus on --quit
2006-11-06 Federico Mena Quintero <federico@novell.com>
http://bugzilla.gnome.org/show_bug.cgi?id=330298
Fix the use of lazy positioning, and the saving of metadata for
lazily-positioned icons. Fixes
https://bugzilla.novell.com/show_bug.cgi?id=155337 and
https://bugzilla.novell.com/show_bug.cgi?id=174766.
* src/file-manager/fm-icon-view.c (file_has_lazy_position): Only
desktop icon files (not "real" files) have lazy positions. Don't
consider whether the directory is loading; this is not the right
place to check that.
(fm_icon_view_begin_loading): Tell the icon container that we
just started reloading.
(fm_icon_view_end_loading): Tell the icon container that we
finished loading.
* libnautilus-private/nautilus-icon-private.h
(NautilusIconContainerDetails): New flag "is_reloading".
* libnautilus-private/nautilus-icon-container.h: New prototype for
nautilus_icon_container_set_is_reloading().
* libnautilus-private/nautilus-icon-container.c
(nautilus_icon_container_set_is_reloading): New function; sets an
is_reloading flag in the icon container.
(icon_set_position): Clear icon->has_lazy_position, since the icon
will be well-positioned once this function exits.
(finish_adding_new_icons): Do not ignore already-placed lazy
position icons when filling the placement grid! Save the value of
icon->has_lazy_position before calling assign_icon_position().
Since that function may call icon_set_position() (which will clear
the flag), we need to keep the original value of the flag.
(finish_adding_new_icons): Don't clear icon->has_lazy_position
here; let icon_set_position() do it.
(finish_adding_new_icons): Emit the icon_position_changed signal
so that the parent knows that we moved an icon under it. This has
the effect of updating/preserving the position metadata for
has_lazy_position icons.
2006-11-06 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-icon-container.c:
Cancel rubberbanding if we get a grab shadow event.
This happens when a modal dialog (e.g. an error or auth dialog)
appears. (Partially fixes#122688)
2006-11-06 Alexander Larsson <alexl@redhat.com>
* src/file-manager/fm-icon-view.c (play_file):
Don't close handle and free buffer twice on error. (#321175)
2006-11-06 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-file.c (nautilus_file_new_from_relative_uri):
Don't crash on old desktop dir and search dir uris. (#349840)
2006-11-03 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-directory-metafile.c:
Always use the in-process metafile factory. We don't need it
oop, since nautilus is single process these days. This fixes
some strange races with bonobo-activation that caused #351713
* src/nautilus-application.[ch]:
* src/nautilus-shell.h:
Change the way we use bonobo-activation to get the NautilusShell
so that we don't rely on bonobo-activation-server to spawn nautilus,
as this could lead to some strange duplicate processes.
We now directly try to register the app-wide shell object with
bonobo-activation manually and activate it with
Bonobo_ACTIVATION_FLAG_EXISTING_ONLY.
* src/nautilus-shell.c:
Handle all corba calls from the NautilusShell in an idle handler.
This fixes some crashes where we reentered badly into e.g. quit
when calling gconf.
* src/nautilus-main.c:
Since we now handle the initial open_window shell calls via an idle
we need to delay until idle time to know if we can quit or not.
2006-11-02 Alexander Larsson <alexl@redhat.com>
* libnautilus-private/nautilus-directory-private.h:
* libnautilus-private/nautilus-directory-async.c:
Call all call_when_ready callbacks from an idle handler.
This fixes problems with reentrancy, like bug #348161
2006-11-01 Alexander Larsson <alexl@redhat.com>
* src/file-manager/fm-tree-model.c:
Always emit the row-deleted signal before deleting the row
from the model. This is according to the GtkTreeModel::row-changed
docs and feedback from kris.
Hopefully this will fix bug #356672
2006-10-31 Alexander Larsson <alexl@redhat.com>
* src/file-manager/fm-icon-view.c (fm_icon_view_remove_file):
Remove assert that keep randomly failing to fix crash (#352592)
Replace it with some debug output that hopefully lets us
track down the cause.
2006-10-30 Martin Wehner <martin.wehner@gmail.com>
* src/nautilus-property-browser.c: (remove_color),
(nautilus_property_browser_remove_element),
(element_clicked_callback), (make_properties_from_xml_node):
Remove colors by really removing them from browser.xml,
not marking them deleted. That made it impossible to add
another color with the same name later on.
Also delete colors by their (unique) names and not their color
values. That made it possible to delete built-in colors.
Fixes#358893.
Based on a patch from Emil Soleyman-Zomalan
2006-10-30 Martin Wehner <martin.wehner@gmail.com>
* src/file-manager/fm-properties-window.c:
(attach_value_field_internal), (attach_value_field),
(attach_ellipsizing_value_field), (append_title_value_pair),
(append_title_and_ellipsizing_value),
(append_directory_contents_fields), (add_permissions_combo_box),
(create_simple_permissions), (create_advanced_permissions):
Set up proper relationships between labels and widgets in the
properties dialog. Fixes#363116.
Patch from Padraig O'Briain <padraig.obriain@sun.com>