* e-shell-view-menu.c (command_open_folder_in_new_window): Pass
the parent @shell_view as the @template_view arg to
`e_shell_create_view()'
* e-shell-view.c (activate_shortcut_cb): Pass the _view as the
@template_view arg to `e_shell_create_view()'.
* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): Pass the parent
@shell_view as the @template_view arg to `e_shell_create_view()'.
* e-shell.c (e_shell_create_view): New arg @template_view.
(impl_Shell_createNewView): Pass %NULL as @template_view when
calling it.
(e_shell_restore_from_settings): Likewise.
svn path=/trunk/; revision=13618
* main.c (quit_box_new): Also flush GDK after flushing GTK.
Otherwise GTK might queue draw requests to X that don't get
executed.
svn path=/trunk/; revision=13617
* main.c (no_views_left_cb): Invoke `e_shell_disconnect_db()'
before unreffing the shell.
* e-shell.c (e_shell_disconnect_db): New.
(destroy): Call it instead of unreffing the db manually here.
svn path=/trunk/; revision=13616
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Don't free the
folder_command_data here. It is supposed to be freed in the async
callback. The leak that Dan supposedly fixed was probably only
due to the fact that the component that was supposed to perform
the xfer didn't report a result. Now that xfer actually works, it
was triggering the crash instead. [Fixes #9769.]
svn path=/trunk/; revision=13615
* e-shell-offline-handler.c (prepare_for_offline): Only invoke
`progress_listener_servant_free()', no need to also do `__fini()'
on it as `__fini()' is also called by the former. [Fixes #12329.]
Also, print out the CORBA exception that gets raised so we have
some more clues about what is wrong.
svn path=/trunk/; revision=13614
* e-shell-view.c
(reparent_storage_set_view_box_and_destroy_popup): Don't die if
the folder_bar_popup is %NULL. Fixes#10922.
svn path=/trunk/; revision=13613
* main.c (idle_cb): Display the default view only if we are
starting our own shell, or if the command-line has no arguments
and we are talking to an already existing shell.
* e-uri-schema-registry.c
(e_uri_schema_registry_set_handler_for_schema): Do not return a
value.
svn path=/trunk/; revision=13611
* Evolution-Storage.idl: Remove "display_name" arg from update
methods. It was only there to do the "Inbox (5)" hack, which is
supported directly now.
* evolution-storage.c (impl_Storage_updateFolder): no longer takes
display_name.
(evolution_storage_update_folder,
evolution_storage_update_folder_by_uri): Likewise.
(class_init): Update signal signature.
* evolution-storage-listener.c
(impl_GNOME_Evolution_StorageListener_notifyFolderUpdated): No
longer takes display_name, but make it pass the unread_count along
in the signal it emits.
(class_init): Update signal signature.
* e-local-storage.c (bonobo_interface_update_folder_cb):
* e-corba-storage.c (impl_StorageListener_notifyFolderUpdated): No
longer take display_name.
svn path=/trunk/; revision=13587
* e-storage.c (e_storage_async_xfer_folder): Make this a no-op if
the source and the destination path are the same.
* e-local-storage.c (impl_async_xfer_folder): return after
returning `E_STORAGE_CANTCHANGESTOCKFOLDER' to the callback.
* e-storage-set-view.c (handle_evolution_path_drag_motion): Make
the check for dragging a folder over itself a little bit more
accurate.
svn path=/trunk/; revision=13550
2001-10-05 Jon Trowbridge <trow@ximian.com>
* e-shell-view-menu.c (command_work_offline): This is a message,
not a warning!
(command_work_online): This is also a message, not a warning!
(I'm feeling very anal today.)
svn path=/trunk/; revision=13467
* e-shell-view.c (e_shell_view_save_settings): Get the right
hpaned positions for when the shortcut bar and/or the folder bar
are visible.
svn path=/trunk/; revision=13461
* e-shell.c (impl_Shell_handleURI): Handle the return value from
`evolution_shell_component_client_handle_external_uri()' as an
EvolutionShellComponentClientResult instead of treating it as a
boolean. This prevents the incorrect NotFound exceptions we were
getting for `mailto:' invocations.
svn path=/trunk/; revision=13460
* main.c (quit_box_new): Also `gdk_flush()'.
(idle_cb): If the user doesn't specify at least one `evolution:'
URI, restore from the settings. [Fixes #6093.]
svn path=/trunk/; revision=13459
* evolution-shell-component.c: New member `ping_timeout_id' in
`EvolutionShellComponentPrivate'.
(setup_owner_pinging): New helper function.
(impl_owner_died): Unref the owner and set ->owner_client to
%NULL.
(impl_setOwner): Don't unref here.
(destroy): Remove the source for ->ping_timeout_id if not -1.
svn path=/trunk/; revision=13451
* main.c: #include "e-util/e-gtk-utils.h".
(quit_box_new): Queue a draw on the window; otherwise it seems to
fail to redraw in some cases for some reason [see #11412].
svn path=/trunk/; revision=13450
* evolution-shell-component.c (impl_setOwner): If the owner is
dead, emit "owner_died" instead of "owner_unset".
(impl_owner_died): New, default implementation for "owner_died".
(class_init): Install it.
* evolution-shell-component.h: New signal "owner_died".
svn path=/trunk/; revision=13449
* e-shell.c (set_owner_on_components): If setting the owner fails,
print the a warning message out. Then restart the component.
* e-component-registry.c (component_free): Return a boolean value.
%FALSE if ::unsetOwner raises an exception.
(register_type): New arg @override_duplicate, to avoid complaining
if a component gets re-registered.
(register_component): Likewise.
(e_component_registry_restart_component): New.
* e-uri-schema-registry.c
(e_uri_schema_registry_set_handler_for_schema): Changed return
type to `void'. Just remove the old handler and set up the new
one.
* evolution-shell-component-client.c (corba_exception_to_result):
Translate ::OldOwnerHasDied into
EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED.
* evolution-shell-component.h: New enum value
`EVOLUTION_SHELL_COMPONENT_OLDOWNERHASDIED'.
* evolution-shell-component.c (impl_setOwner): If the old owner is
not alive anymore [use CORBA_Object_non_existent() to figure this
out], emit OWNER_UNSET and raise `OldOwnerHasDied'.
(evolution_shell_component_result_to_string): New.
* Evolution-ShellComponent.idl: New exception `OldOwnerHasDied'.
(ShellComponent::setOwner): Can raise it.
* e-folder-type-registry.c
(e_folder_type_register_type_registered): New.
(e_folder_type_register_unregister_type): New.
svn path=/trunk/; revision=13446
2001-10-04 Rodrigo Moya <rodrigo@ximian.com>
* importer/Makefile.am: added BONOBO_GNOME_CFLAGS to make it compile
with latest Bonobo
svn path=/trunk/; revision=13408
onto itself, when the operation is GDK_DRAG_MOVE. This fixes bugs
like #8737.]
* e-storage-set-view.c (handle_evolution_path_drag_motion): Don't
highlight if the user is attempting to move a folder to one of its
descendants.
svn path=/trunk/; revision=13307
* e-shell-view.c (e_shell_view_construct): Use
`bonobo_ui_component_new_default()', not
`bonobo_ui_component_new()'.
* mail-account-gui.c (launch_signature_editor): Use
`bonobo_ui_component_new_default()', not
`bonobo_ui_component_new()'.
* e-msg-composer.c (setup_ui): Use
`bonobo_ui_component_new_default()', not
`bonobo_ui_component_new()'.
* gui/dialogs/comp-editor.c (setup_widgets): Use
`bonobo_ui_component_new_default()', not
`bonobo_ui_component_new()'.
svn path=/trunk/; revision=13306
* e-shell-view.c (storage_set_removed_folder_callback): New,
callback for the ::removed_folder signal on the shell's
EStorageSet.
(e_shell_view_construct): Connect.
(e_shell_view_remove_control_for_uri): Removed.
* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Don't call
`e_shell_view_remove_control_for_uri()'.
(e_shell_command_delete_folder): Not here either. And don't
display the default URI either.
svn path=/trunk/; revision=13305
* e-shell-view.c (e_shell_view_show_shortcut_bar): Set the
hpaned_position from the EPaned *before* hiding it -- otherwise,
the position will of course always be zero.
(e_shell_view_save_settings): Save from ->hpaned_position and
->view_hpaned_position.
svn path=/trunk/; revision=13234
* e-shell-view.c (setup_verb_sensitivity_for_folder): New helper
function.
(folder_selected_cb): Call it.
(folder_context_menu_popping_up_cb): New callback for the
"folder_context_menu_popping_up" signal on the folder bar's
EStorageSetView; set the sensitivities of the verbs according to
the right-clicked folder.
(folder_context_menu_popped_down_cb): New, callback for the
"folder_context_menu_popped_down" signal on the folder bar's
EStorageSetView; set the sensitivities of the verbs according to
the currently displayed folder.
(e_shell_view_get_folder_bar_right_click_path): Add a cast to
placate a warning.
* e-storage-set-view.c (class_init): Set up the
"folder_context_menu_popping_up" and
"folder_context_menu_popped_down" signals.
(right_click): Emit "folder_context_menu_popping_up" before
popping up the menu, "folder_context_menu_popped_down" after the
menu is gone.
* e-storage-set-view.h: New signals
"folder_context_menu_popping_up" and
"folder_context_menu_popped_down".
svn path=/trunk/; revision=13171
yet, as there seems to be something wrong still.]
* e-storage.c (e_storage_async_xfer_folder): Ooops. Make the
check for CANTMOVETODESCENDANT really work.
* e-storage-set-view.c (tree_drag_data_received): Pass the
EStorageSetView as the data for the async_xfer function.
(folder_xfer_callback): Display an error dialog if something goes
wrong.
* e-shell-view-menu.c (command_rename_folder): Enable again.
* e-shell-folder-commands.c (e_shell_command_rename_folder):
Re-implemented.
(delete_dialog): Use double quotes instead of single quotes around
the folder name, for consistency with the other dialogs.
svn path=/trunk/; revision=13131
* e-shell-view-menu.c (get_path_for_folder_op): New helper
function.
(command_move_folder): Pass the @folder_path argument to
`e_shell_command_move_folder' by using it.
(command_copy_folder): Pass the @folder_path argument to
`e_shell_command_copy_folder' by using it.
(command_delete_folder): Pass the @folder_path argument to
`e_shell_command_delete_folder()' by using it.
(command_add_folder_to_shortcut_bar): Pass the @folder_path
argument to `e_shell_command_add_to_shortcut_bar()' by using it.
(command_create_folder): Pass the @parent_folder_path argument to
`e_shell_command_create_new_folder()' by using it.
(command_new_folder): Use `get_path_for_folder_op()'.
* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
New arg @folder_path.
(e_shell_command_copy_folder): New arg @folder_path.
(e_shell_command_move_folder): New arg @folder_path.
(e_shell_command_open_folder_in_other_window): New arg @folder_path.
(e_shell_command_create_new_folder): New arg @parent_folder_path.
(e_shell_command_delete_folder): New arg @folder_path.
* e-shell-view.c (e_shell_view_get_folder_bar_right_click_path): New.
* e-storage-set-view.c: New member `right_click_row_path'.
(init): Init to NULL.
(destroy): Free.
(right_click): Set.
(popup_folder_menu): Use `gnome_popup_menu_do_popup_modal()' so we
are stuck in here until the menu disappears. After that, destroy
the menu and call `e_tree_right_click_up()'.
(e_storage_set_view_get_right_click_path): New.
svn path=/trunk/; revision=13124
* e-storage-set-view.c (tree_drag_motion): Check for a component
for the given row *after* trying to handle
EVOLUTION_PATH_TARGET_TYPE. Otherwise, we always fail in the case
of dnd between a folder and the toplevel node of its storage.
(find_matching_target_for_drag_context): If not on a folder,
always return EVOLUTION_PATH_TARGET_TYPE.
svn path=/trunk/; revision=13050
* e-task-widget.c: New member `tooltips' in `ETaskWidgetPrivate'.
(init): Init to NULL.
(e_task_widget_construct): Create a GtkTooltips and make
`tooltips' point to it.
(e_task_widget_update): Set the tooltip for the label too.
svn path=/trunk/; revision=12989
* evolution-test-component.c: Removed globals `activity_client',
`progress'.
(timeout_callback_3): Get the activity client from @data.
(timeout_callback_2): Likewise here. Pass the activity client as
the user data pointer for `gtk_timeout_add()'. Put the progress
count in a "my_progress" GtkObject data key.
(timeout_callback_1): Pass the newly created EActivityClient as
the user data pointer for `gtk_timeout_add()'. Also, dispatch
itself again with a random timeout delay, for a maximum of
NUM_ACTIVITES times. Initialize the "my_progress" GtkObject data
to be -1.
* e-activity-handler.c: New member `component_id' in
`ActivityInfo'.
(activity_info_new): New arg @component_id. Init the
`component_id' member accordingly.
(activity_info_free): Free the `component_id' member.
(impl_operationStarted): Pass the component_id to
`activity_info_new()'.
(task_widget_new_from_activity_info): Pass the component_id to the
activity_info.
* e-task-widget.c: New member `component_id' in
`ETaskWidgetPrivate'.
(impl_destroy): Free it.
(init): Init to NULL. Also init all the other members to NULL as
well.
(e_task_widget_construct): New arg @component_id. Assign
->component_id to match it.
(e_task_widget_new): New arg @component_id here as well. Pass it
over to `e_task_widget_construct()'.
(e_task_widget_get_component_id): New.
svn path=/trunk/; revision=12988
* main.c (quit_box_new): Call `e_make_widget_backing_stored()' on
the widget so it refreshes properly even when we are busy waiting
on CORBA calls.
svn path=/trunk/; revision=12920
* main.c (quit_box_new): New.
(quit_box_destroyed_callback): New.
(no_views_left_cb): Use these two functions to display a warning
message when Evolution is quitting.
svn path=/trunk/; revision=12917
* e-shell.c (impl_Shell_getLocalStorage): Only raise NotReady if
the local storage pointer is actually NULL. This way it is
possible for the components to access the local storage during
initialization even if the shell is not quite finished
initializing yet.
svn path=/trunk/; revision=12914