2002-02-24 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook-config.c
(addressbook_source_dialog_set_source): make the right auth page
start up open.
* gui/component/addressbook-storage.c (addressbook_source_free):
free the binddn.
(addressbook_source_copy): copy the binddn;
svn path=/trunk/; revision=15819
* e-storage-set-view.c (impl_destroy): Renamed from `destroy'.
(impl_right_click): Renamed from `right_click'.
(impl_cursor_activated): Renamed from `cursor_activated'.
(impl_tree_start_drag): Renamed from `tree_start_drag'.
(impl_tree_drag_begin): Renamed from `tree_drag_begin'.
(impl_tree_drag_end): Renamed from `tree_drag_end'.
(impl_tree_drag_data_get): Renamed from `tree_drag_data_get'.
(impl_tree_drag_data_delete): Renamed from
`tree_drag_data_delete'.
(impl_tree_drag_motion): Renamed from `tree_drag_motion'.
(impl_tree_drag_leave): Renamed from `tree_drag_leave'.
(impl_tree_drag_drop): Renamed from `tree_drag_drop'.
(impl_tree_drag_data_received): Renamed from
`tree_drag_data_received'.
svn path=/trunk/; revision=15811
2002-02-22 Chris Toshok <toshok@ximian.com>
[ Fixes bugs 20740, 16680, and god knows what else :) ]
* gui/widgets/e-addressbook-model.c (create_card): double the
allocated size every time we need more space instead of using a
fixed size increment. this helps huge queries. Also, remove the
gtk_object_get of "file_as", as it was dead code.
(book_view_loaded): handle errors here (by popping up a dialog).
* backend/pas/pas-backend-ldap.c (view_destroy): search_idle ->
search_timeout.
(build_card_from_entry): comment out some spew, and unref ecard
when we're done to plug a memory leak.
(send_pending_adds): send along to the client all the cards we've
been saving up.
(poll_ldap): use a timeout for ldap_result to keep the backend
from blocking (and it turns out keep the frontend from hanging
waiting on a ref to complete) on large db's with few matches.
Also, add some fairly smart, self-tuning aggregating of cards.
Keep track of the number of cards we've sent the last time through
as well as this time, and estimate the number we want to aggregate
the next time based on them (we average them at the moment),
subject to maximum/minimum number of cards. also, we have a
maximum aggregation time, after which we force a flush if there
are pending cards and recalculate our target pending number.
there's a minimum wait time to possibly keep outselves from
spamming the ui, although it's 0 at the moment.
Lastly, make sure to only notify the GUI of status messages when
we need to. this results in a *huge* savings.
(ldap_search_handler): initialize all the pending card stuff, and
use a timeout instead of an idle function for poll_ldap.
* backend/ebook/e-book-view-listener.c
(e_book_view_listener_queue_response): performance optimization
for large adds. If we're a CardAddedEvent and there's an existing
CardAddedEvent at the end of the queue, just concat the lists of
cards together. This is to keep the gui from falling further and
further behind the ldap backend, which is merrily spewing updates
at the gui.
svn path=/trunk/; revision=15807
* main.c (idle_cb): Use the e_shell_new() API below so that we use
the saved offline settings at the next start-up if neither
--offline nor --online has been specified.
* e-shell.c (save_misc_settings): New function. For now, just
save `/Shell/StartOffline' indicating whether the shell should
start in offline mode or not.
(e_shell_construct): Replace @start_online with
@startup_line_mode.
(e_shell_new): Likewise.
* e-shell.h: New enum EShellStartupLineMode.
svn path=/trunk/; revision=15804
* e-shell-view.c (remove_uri_from_history): New helper function to
remove all the matching URIs from the history.
(history_uri_matching_func): Compare function for using
e_history_remove_matching.
(storage_set_removed_folder_callback): Call
`remove_uri_from_history()'.
* e-history.c (e_history_remove_matching): New.
svn path=/trunk/; revision=15803
2002-02-22 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (on_message_list_built): Removed, this wasn't
working as intended and seemed to break other features.
svn path=/trunk/; revision=15801
2002-02-22 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Remove meeting_widget.png from the build since it
doesn't seem to be in cvs?
svn path=/trunk/; revision=15800
* e-shell-view.c (update_navigation_buttons): New.
(display_uri): Call it before returning so the navigation buttons
always have the right sensitivity.
* e-shell-folder-title-bar.c
(e_shell_folder_title_bar_update_navigation_buttons): New.
(add_navigation_buttons): Remove the "Back" label.
svn path=/trunk/; revision=15799
* e-shell-view.c: New member `history' in `EShellViewPrivate'.
(init): Initialize.
(destroy): Unref.
(e_shell_view_display_uri): Make it a no-op if the URI is the same
as the current one. Also, moved code into `display_uri' and use
it.
(back_clicked_callback): New, callback for the back button on the
folder title bar.
(forward_clicked_callback): Likewise for the forward button.
* e-history.c: New.
* e-history.h: New.
svn path=/trunk/; revision=15798
* e-shell-view.c (e_shell_view_show_folder_bar):
`e_shell_folder_title_bar_set_title_clickable()', not
`e_shell_folder_title_bar_set_clickable()'.
* e-shell-folder-title-bar.c: Rename `button', `button_label' and
`button_arrow' to `title_button', `title_button_label' and
`title_button_arrow'. Renamed `label' to `title_label'. Renamed
`arrow_xpm' to `down_arrow_xpm'. Added `left_arrow.xpm' and
`right_arrow.xpm'.
(class_init): Add the "back_clicked" and "forward_clicked"
signals.
(add_navigation_buttons): New function to add the navigation
buttons to the title bar.
(back_button_clicked_callback): Callback for the back button,
emits "back_clicked".
(forward_button_clicked_callback): Callback for the forward
button, emits "forward_clicked".
(e_shell_folder_title_bar_construct): Call
`add_navigation_buttons()'.
(forward_button_clicked_callback):
(create_arrow_pixmap): Removed.
(create_pixmap_widget_from_xpm): New.
(title_button_box_realize_cb): Removed.
(e_shell_folder_title_bar_construct): Don't connect. Just add the
icon normally using the new `create_pixmap_widget_from_xpm()'.
(e_shell_folder_title_bar_set_title_clickable): Renamed from
`e_shell_folder_title_bar_set_clickable'.
(size_allocate_navigation_buttons): New.
(size_allocate_title_button): Get an @offset.
(size_allocate_label): Get an @offset.
(size_allocate): Allocate the navigation buttons and offset
everything else accordingly.
* e-shell-folder-title-bar.h: New signals "back_clicked",
"forward_clicked".
svn path=/trunk/; revision=15797
* e-shell-user-creatable-items-handler.c
(get_default_action_for_view): Return NULL if there is no
component ID for the current view.
svn path=/trunk/; revision=15792
* gui/component-factory.c (add_creatable_item): New helper
function.
(create_object): Add icons for the various user creatable items.
svn path=/trunk/; revision=15790
* gui/component/Makefile.am: Define $(iconsdir).
* gui/component/addressbook-component.c (add_creatable_item): New
helper function.
(create_component): Add the icons for the user creatable items as
well.
svn path=/trunk/; revision=15789
* evolution.xml: Add NewComboButton and a separator.
* evolution-calendar.xml: remove CalendarNewAppointment and
CalendarNewTask from the toolbar.
* evolution-tasks.xml: Remove TasksNewTask button from the
toolbar.
* evolution-addressbook.xml: Remove ContactNew and ContactNewList
from the toolbar.
* evolution-mail-global.xml: Remove the MessageNew from the
toolbar.
svn path=/trunk/; revision=15787
* e-shell-user-creatable-items-handler.c (ensure_menu_items): Set
the icons for all the "New..." menu items from the specified one
in the type definitions.
* e-activity-handler.c (create_gdk_pixbuf_from_corba_icon):
Removed.
(impl_operationStarted): Just use
`e_new_gdk_pixbuf_from_corba_icon()'.
* e-shell-corba-icon-utils.c (e_new_gdk_pixbuf_from_corba_icon):
New.
svn path=/trunk/; revision=15786
2002-02-21 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (on_message_list_built): Connect to our own
message_list_built signal. Focus the list and select the first
unread message (or frst message depending). Fixes bug #3900.
svn path=/trunk/; revision=15784
2002-02-21 Christopher James Lahey <clahey@ximian.com>
* gal/Makefile.am (libgal_la_LIBADD): Added
e-table-memory-store.lo.
From gal/e-table/ChangeLog:
2002-02-21 Christopher James Lahey <clahey@ximian.com>
* Makefile.am (libetable_la_SOURCES): Added
e-table-memory-store.c.
(libetableinclude_HEADERS): Added e-table-memory-store.h.
* e-table-config-no-group.glade, e-table-config.glade: Updated
these.
* e-table-config.c, e-table-config.h: Updated this to have a
working field list editor.
* e-table-memory-store.c, e-table-memory-store.h: New ETableModel
that is a complete store of all the data in your table. No
callbacks at all.
* e-table-subset-variable.c, e-table-subset-variable.h
(e_table_subset_variable_clear): Added this simple function
* e-table-subset.c (etss_get_save_id): Made this return the row
number g_strdup_printfed if the source model doesn't support save
ids.
2002-02-20 Christopher James Lahey <clahey@ximian.com>
* e-table-sorter.c, e-table-sorter.h: Connect to the
model_rows_inserted, model_rows_deleted, and group_info_changed
here.
svn path=/trunk/; revision=15783
2002-02-20 Chris Toshok <toshok@ximian.com>
* backend/pas/pas-backend-file.c (pas_backend_file_load_uri):
track change to signature, and (for now) just change all the
return FALSE's to _RepositoryOffline (what FALSE used to map to in
pas_book_factory_process_request), and change TRUE to _Success.
* backend/pas/pas-backend-ldap.c (pas_backend_ldap_load_uri):
track change to signature, and differentiate between
pas_backend_ldap_connect failing (RepositoryOffline), and
ldap_url_parse failing (OtherError).
* backend/pas/pas-book-factory.c
(pas_book_factory_process_request): since pas_backend_load_uri
returns status now, use it to nodify the BookListener if there's a
failure.
* backend/pas/pas-backend.c (pas_backend_load_uri): track change
to signature.
* backend/pas/pas-backend.h: change return type of
pas_backend_load_uri to
GNOME_Evolution_Addressbook_BookListener_CallStatus to allow
differentiation between failure types.
* backend/ebook/e-book-listener.c
(e_book_listener_convert_status): handle _AUTHENTICATION_FAILED.
* backend/ebook/e-book-types.h (EBookStatus): add
_AUTHENTICATION_FAILED.
svn path=/trunk/; revision=15779
2002-02-20 Anna Marie Dirks <anna@ximian.com>
* message-tag-editor.c (message_tag_editor_init): Gave the editor
window a title and an icon.
svn path=/trunk/; revision=15777
* e-shell-view-menu.c (command_open_folder_in_new_window): Don't
show the folder bar and the shortcut bar in the new window.
* e-shell-view.c (activate_shortcut_cb): Don't show the folder bar
and the shortcut bar in the new window.
* e-shell-view.c (e_shell_create_view): Don't flush the GTK events
here.
* e-shell.c (e_shell_construct): New arg @start_online. If true,
invoke `e_shell_go_online()' before returning.
(e_shell_new): New arg @start_online. Pass it to
e_shell_construct().
(init): Default ->line_status to E_SHELL_LINE_STATUS_OFFLINE.
* main.c (main): Add "--offline" and "--online" options.
svn path=/trunk/; revision=15776
2002-02-20 Anna Marie Dirks <anna@ximian.com>
* message-tags.glade: Changed the policy for table2 so that it
does not expand/fill. This was necessary to allow the message list
as much growing room as possible. (And besides, there's no reason for
table2 to expand/fill; its child widgets can't change size.
svn path=/trunk/; revision=15771
2002-02-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (confirm_goto_next_folder): Prompt the user to
find out if he/she wants to go to the next folder with unread mail
in it.
(find_current_folder): Find a given CamelFolderInfo node based on
a given uri.
(find_next_folder_r): Recursively look for a CamelFOlderInfo node
which has unread messages.
(find_next_folder): Given a currently selected CamelFolderInfo
node, look for the next node containing unread messages.
(do_evil_kludgy_goto_next_folder_hack): Find the currently
selected folder and then find the very next folder after it that
contains unread messages and then select it via a CORBA call to
the shell.
(next_unread_msg): If we fail to find an unread message in the
message-list, prompt the user to find out if we should jump to the
next fodler containing unread messages. If so, call
do_evil_kludgy_goto_next_folder_hack().
* message-list.c (message_list_select): Return a boolean value
based on whether the call was successfull or not.
* mail-config.c (mail_config_get_confirm_goto_next_folder):
(mail_config_set_confirm_goto_next_folder):
(mail_config_get_goto_next_folder):
(mail_config_set_goto_next_folder): All new functions, yay.
(config_read): Read in the confirm_goto_next_folder and
goto_next_folder config options.
(mail_config_write_on_exit): Same the options here.
svn path=/trunk/; revision=15770
2002-02-19 Christopher James Lahey <clahey@ximian.com>
* e-tree-selection-model.c (e_tree_selection_model_init):
Initialize frozen_count to 0.
svn path=/trunk/; revision=15765
002-02-19 JP Rosevear <jpr@ximian.com>
* gui/e-itip-control.c (send_item): pass extra itip_send_comp
params
(send_freebusy): ditto
(ok_clicked_cb): ditto, including the timezones culled from the
component
* gui/e-week-view.c: pass extra itip_send_comp params
* gui/calendar-commands.c: ditto
* gui/e-day-view.c: ditto
* gui/dialogs/task-editor.c: ditto
* gui/dialogs/event-editor.c: ditto
* gui/dialogs/comp-editor.c: ditto
* gui/itip-utils.h (itip_send_comp): update proto
* gui/itip-utils.c (foreach_tzid_callback): check the passed in
zones, then the builtin time zones then the client
2002-02-19 JP Rosevear <jpr@ximian.com>
* gui/e-itip-control.c (find_my_address): strip the ical value and
do a case insensitive compare
(find_attendee): ditto
(change_status): put the error message here
(ok_clicked_cb): don't update the item or rsvp unless
change_status was successful, trip the ical value and do a case
insensitive compare
* gui/itip-utils.c (get_address): strip the incoming address
(itip_strip_mailto): use g_strncasecmp
(comp_limit_attendees): strip the ical value and do a case
insensitive compare
svn path=/trunk/; revision=15763
2002-02-18 Chris Toshok <toshok@ximian.com>
* backend/pas/pas-book-factory.c
(pas_book_factory_process_request): if the load_uri fails, notify
the listener that the repository is offline. (partial fix for bug
20347)
svn path=/trunk/; revision=15758
2002-02-18 Chris Toshok <toshok@ximian.com>
* backend/pas/pas-backend-ldap.c (create_dn_from_ecard): escape
commas in the dn, since they're used by ldap to specify the node's
placement in the tree. (fixes bug 20089)
(rfc2254_escape): just use sprintf and %02X instead.
svn path=/trunk/; revision=15756
2002-02-15 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (basename_from_uri): Ack, strip off the
leading '/' char and also only translate if it is a local uri,
imap folders and other external folders will be named by the user
so no need to translate those.
svn path=/trunk/; revision=15751
2002-02-15 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (basename_from_uri): Ack, strip off the
leading '/' char and also only translate if it is a file: uri,
imap folders and other external folders will be named by the user
so no need to translate those.
svn path=/trunk/; revision=15750
2002-02-15 Jeffrey Stedfast <fejj@ximian.com>
* mail-display.c (do_attachment_header): Don't display a
down-arrow if the attachment is undisplayable. Fixes bug #6919.
(launch_cb): Some programs are buggy when it comes to parsing
file: uris, so make sure we do file://%s. Fixes bug #20456.
svn path=/trunk/; revision=15747