2002-03-26 Jeffrey Stedfast <fejj@ximian.com>
Sync with yet-another-mail-config branch.
* mail-composer-prefs.c: Updated to get the right widgets and
whatnot. Also updated to tell the evolution-config-control that
stuff has changed.
* mail-preferences.c: Updated to get the right widgets and
whatnot. Also updated to tell the evolution-config-control that
stuff has changed.
* mail-accounts.etspec: New file needed by mail-accounts.c
svn path=/trunk/; revision=16257
2002-03-26 Not Zed <NotZed@Ximian.com>
* mail-callbacks.c (addrbook_sender): Changed to get the address
from the messageinfo of the current selected message rather than
from the current_message.
(requeue_mail_reply): Only re-queue if we got a message, could
potentially cause an infinite loop trying to get a message it
can't.
(reply_to_sender, reply_to_list, reply_to_all): Always pass NULL
as the msg to mail_replay, this forces mail_reply to always load
the message anew. Fixes FIXME's and popup behaviour. Basically
this and stuff below fixes#8542. Its probably not the nicest
way, but it works.
(mark_as_important): Use the flags properly, we can set all flags
to any combination of on or off as we want, so we just need to
call set_flags once, thats why its set flags and not set_option.
(toggle_flags): Fixed the logic here also, so we dont have to call
set_message_flags more than once, and also implement a true toggle
for any number of simultaneous flags (whilst simplifying code).
* mail-vfolder.c (vfolder_gui_add_from_mlist): Removed the 'msg'
parameter, its not used, fixed callers.
* folder-browser.c (on_right_click): Lookup the mlist from
messageinfo, and change the 'no selected' logic slightly, fixes
most of #8542.
(filter_data_free): Free filter data struct.
(vfolder_type_got_message): Actually create vfolder once we have
the message we need to use for it. Code could probably be changed
to use messageinfo instead.
(vfolder_type_uid): Lookup a message based on uid, and use that to
create a vfolder based on type.
(vfolder_subject_uid, vfolder_sender_uid, vfolder_receipient_uid,
vfolder_mlist_uid): Callbacks for the popup menu, used to create
rules based on the uid rather than the message, which it loads as
required.
(filter_type_got_message, filter_*_uid): Similar to vfolder
stuff above.
(filter_menu[]): Changed callbacks to popup specific ones, not
folderbrowser specific ones used by bonobo.
(on_right_click): Initialise callback data for the filter submenu
so it can look up messages for callback implementation.
svn path=/trunk/; revision=16253
2002-03-25 Kevin Breit <mrproper@ximian.com>
* C/usage-mail.sgml: Added mention that 2048 maybe recommended by some people. Fixed a typo.
svn path=/trunk/; revision=16251
2002-03-26 Not Zed <NotZed@Ximian.com>
* camel-text-index.c (text_index_normalise): Changed to use just
g_utf8_strdown instead of utf8_normalise, to match the indexing
code. utf8_normalise is just far too expensive (saves approx 25%
total processing).
svn path=/trunk/; revision=16250
2002-03-25 Christopher James Lahey <clahey@ximian.com>
* gal/Makefile.am (libgal_la_LIBADD): Added
widgets/e-option-menu.lo.
* gal/util/e-util.c, gal/util/e-util.h (e_strdupv): Copied this
function from glib2.
(GET_STRING_ARRAY_FROM_ELLIPSIS,
GET_DUPLICATED_STRING_ARRAY_FROM_ELLIPSIS): Added these macros to
automate getting a NULL terminated array off of the stack.
* gal/widgets/Makefile.am (libwidgets_la_SOURCES): Added
e-option-menu.c.
(libwidgetsinclude_HEADERS): Added e-option-menu.h.
* gal/widgets/e-canvas.c (e_canvas_class_init): Reformatted this
function.
* gal/widgets/e-gui-utils.c, gal/widgets/e-gui-utils.h
(e_glade_xml_connect_widget, e_glade_xml_set_sensitive): Two new
functions to automate pulling a widget from a GladeXML and either
connecting a signal or setting the sensitivity.
* gal/widgets/e-option-menu.c, gal/widgets/e-option-menu.h: New
class to simplify the interface to GtkOptionMenu.
svn path=/trunk/; revision=16246
2002-03-25 Christopher James Lahey <clahey@ximian.com>
* e-table-memory-store.c (e_table_memory_store_insert,
e_table_memory_store_insert_adopt, e_table_memory_store_remove):
Call the parent function after doing all the internal work so that
when the changed signal goes out, our work is already done.
svn path=/trunk/; revision=16245
* e-shell.c (e_shell_construct): Register a "working" folder type
with the hourglass icon. (Would eventually like an animated gif,
when ETable supports that.)
* e-storage.c (e_storage_has_subfolders): Use "working" rather
than "noselect" as the folder type.
* e-shell-view.c (get_view_for_uri): Simplify a bit.
svn path=/trunk/; revision=16244
2002-03-25 Not Zed <NotZed@Ximian.com>
* camel-text-index.c (text_index_add_name): When we add a new
name, up all of the cache limits, because we're probably going to
be adding more.
(text_index_sync): Drop the cache limits back down again, we dont
need them when looking words up.
** MERGE camel_index branch.
* camel-text-index.[ch]: Added files i forgot to add (eep nearly
lost all this work!)
* camel-block-file.c (sync_nolock): Fix an infinite loop in syncing.
svn path=/trunk/; revision=16242
2002-03-24 Peter Williams <peterw@ximian.com>
* tools/killev: Change the OAFIID for the GtkHTML editor to
have :1.1 at the end.
svn path=/trunk/; revision=16241
2002-03-23 Kevin Breit <mrproper@ximian.com>
* C/usage-print.sgml: I fixed a typo which caused the documentation to not build.
svn path=/trunk/; revision=16239
* evolution-storage.c (evolution_storage_update_folder): Fix a
"how can this ever have worked" bug to make unread message counts
start working again. (#22293 etc)
svn path=/trunk/; revision=16228
* e-shell-folder-commands.c (e_shell_command_rename_folder): Use
e_folder_get_name. Don't assume it's the same as the last path
element.
svn path=/trunk/; revision=16227
* e-request.c (e_request_string): Document the fact that this
takes two locale charset strings and one UTF8 string and returns a
UTF8 string. (Huh.)
svn path=/trunk/; revision=16226
2002-03-21 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder-summary.c (camel_message_info_new_from_header): Use
the date in the received header for the received_date.
svn path=/trunk/; revision=16225
* e-splash.c (e_splash_construct): Set the wmclass to
"evolution-splash" so sawfish knows it's not the same kind of
window as the main window.
svn path=/trunk/; revision=16222
* e-search-bar.c (update_bonobo_menus): Remove all the SearchBar
items before setting them up again.
(free_menu_items): New.
(impl_destroy): Call it.
(set_menu): Call it here too before adding the new items.
svn path=/trunk/; revision=16218
2002-03-19 Jeffrey Stedfast <fejj@ximian.com>
* camel-mime-utils.c (header_encode_param): Fix this to work
right. We need to convert the input buffer to the charset we claim
in the encoded param (duh).
svn path=/trunk/; revision=16214
2002-03-19 Larry Ewing <lewing@ximian.com>
* mail-display.c: add missing NULL closure data to popup menu
initialization.
svn path=/trunk/; revision=16212
2002-03-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/smtp/camel-smtp-transport.c
(connect_to_server_wrapper): Updated to use the same logic as the
POP code.
svn path=/trunk/; revision=16203
2002-03-18 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-store.c (connect_to_server): No longer
takes a stls_supported argument since we no longer need it with
the new logic.
(connect_to_server_wrapper): New logic: First try connecting to
the SSL port (995 by default), if that fails with
SERVICE_UNAVAILABLE, then we attempt to connect (to port 110 by
default) and try to use STARTTLS.
svn path=/trunk/; revision=16202
* e-search-bar.c (update_bonobo_menus): No accelerator for
"FindNow".
(add_button): Add a one-pixel padding to the button.
svn path=/trunk/; revision=16201
* e-search-bar.c (update_sensitivity): New halper function to
update the sensitivity of the commands.
(entry_changed_cb): New callback to make the activate_button and
the "Find Now" verb sensitive only if the entry has some contents.
(activate_by_subitems): Connect the callback here.
(setup_standard_verbs): Call update_sensitivity() here.
svn path=/trunk/; revision=16199
* e-search-bar.c (init): Init clear_button to NULL.
(add_button): New helper function to add a button to the search
bar with the right spacing etc.
(clear_search): New helper function.
(add_activate_button): Removed.
(clear_button_clicked_cb): New.
(e_search_bar_construct): Just add the button here using
`add_button'. Also add a clear_button.
(clear_verb_cb): Rewritten by means of `clear_search()'.
* e-search-bar.h (ESearchBar): Add clear_button.
svn path=/trunk/; revision=16198
2002-03-18 Jeffrey Stedfast <fejj@ximian.com>
* filter-source.c (filter_source_get_sources): Free account_name
so we don't leak. Also after getting the source uri, use camel-url
to hide unwanted stuff.
(xml_decode): Use xmlFree on the buffer returned from
xmlNodeGetContent rather than g_free, as I think they are
incompatable. Also use camel-url here to hide any params in the
decoded url (to make things compatable with what older versions
may have saved).
svn path=/trunk/; revision=16196
* e-search-bar.c (clear_verb_cb): New.
(setup_standard_verbs): New.
(e_search_bar_set_ui_component): Call it if a new
BonoboUIComponent is set.
(append_xml_menu_item): New helper function.
(update_bonobo_menus): Use it. Also add a "Clear" menu item.
(e_search_bar_construct): @menu_items can be NULL now.
(e_search_bar_new): Same here.
(set_menu): Work with NULL items.
* e-filter-bar.c (menubar_activated): Don't handle
E_FILTERBAR_RESET_ID anymore.
* e-filter-bar.h: Remove `E_FILTERBAR_RESET_ID' and `E_FILTERBAR_RESET'.
* folder-browser.c: Remove E_FILTERBAR_RESET menu entry.
* gui/cal-search-bar.c: Removed `search_menu_items'.
(cal_search_bar_menu_activated): Removed.
(cal_search_bar_class_init): Don't install.
(cal_search_bar_construct): No menu items here.
* gui/component/addressbook.c (addressbook_menu_activated):
Removed.
(addressbook_factory_new_control): Don't connect anymore, as this
signal has been removed from the ESearchBar.
(addressbook_factory_new_control): No more custom menu items here.
svn path=/trunk/; revision=16194
* Evolution-Composer.idl, evolution-composer.c
(impl_Composer_show): "Forward as iCalendar" uses set_body, so we
can't make the composer un-showable after doing that. So get rid
of the "cannot show" exception.
* e-msg-composer.c (e_msg_composer_set_body): Prepare the composer
to be shown in its weird state: Put an explanatory message in the
body, then call disable_editor.
(disable_editor): Common editor-disabling code - makes the editor
and attachment bar insensitive and disables any menu items that
could be used to modify them.
(e_msg_composer_new_redirect): Use disable_editor here now.
svn path=/trunk/; revision=16191
2002-03-15 Jeffrey Stedfast <fejj@ximian.com>
* folder-browser.c (on_right_click): Draw colour rectangles for
each of the colour items and set a closure on each.
(colourise_msg): colourise the message, yo.
svn path=/trunk/; revision=16187
2002-03-15 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (colour_msg): New callback to set a colour on a
message.
* folder-browser.c (on_right_click): Setup our popup icons and
stuff. Also add a submenu for Labels.
* mail-display.c (pixmap_press): Sync up with the new EPopupMenu
API. Note: This code can probably now be fixed to use per-item
closures - yay!
* mail-accounts.c (construct): Connect to the label GtkEntry's and
GnomeColorPickers and also to the Restore Defaults button.
* mail-config.c (mail_config_get_label_name): New function to get
a label's name.
(mail_config_set_label_name): New function to set the label name.
(mail_config_get_label_color): New function to get the label
color.
(mail_config_set_label_color): New function to set the label
color.
(config_read): Read in the config options for the labels and their
colors.
(mail_config_write_on_exit): Save the label options.
svn path=/trunk/; revision=16186