[Evolution-hackers] Help test Evolution's new composer
- From: Matthew Barnes <mbarnes redhat com>
- To: evolution-list gnome org
- Cc: evolution-hackers gnome org
- Subject: [Evolution-hackers] Help test Evolution's new composer
- Date: Wed, 02 Apr 2008 15:54:48 -0400
One of the goals for Evolution 2.24 [1] was to remove GtkHTML's
dependency on Bonobo. This effort has been underway for several months
now and involved extensive changes to Evolution's message composer.
Today we finally committed these changes to Evolution and GtkHTML, which
will be released later this month as Evolution 2.23.1 and GtkHTML
3.19.1.
If you're inclined to run our unstable releases, or even build the
latest Evolution code yourself from Subversion, we could really use some
help from the community in regression testing all things related to
sending or composing email in Evolution. I want to make sure the new
message composer is rock solid in time for Evolution 2.24.
If you do spot any regressions, please file a bug report in Bugzilla or
catch me on the #evolution IRC channel on GimpNet (my nick is mbarnes)
or even email me directly (mbarnes redhat com).
KNOWN PROBLEMS
--------------
There is one regression we're aware of already. Many composer-related
plugins are temporarily broken. Known broken plugins include Face, and
parts of Exchange Operations and Groupwise Features.
The problem is basically that our plugin framework has not yet learned
the more modern way to extend menus and toolbars (via GtkUIManager).
Most of Evolution still relies on libbonoboui for this. We plan to have
this fixed before Evolution 2.23.2.
TECHNICAL DETAILS
-----------------
To help clarify what exactly has and has not changed, let me briefly
touch on the architecture of Evolution's message composer.
The composer consists of three layers, two of which reside in the
GtkHTML package.
- Core rendering engine
This innermost layer is the widget that renders your email messages
in Evolution and is also the area where you type the body of your
message in Evolution's composer window. It lives in GtkHTML.
This layer has not changed at all.
- HTML editor
This layer wraps the rendering engine in a window and adds the menus
and toolbars to form a general-purpose HTML editor. It also handles
spell checking, pop-up menus, and all of the "properties" dialogs.
It too lives in GtkHTML.
This layer has been rewritten from scratch. Whereas the previous
editor was written as a Bonobo component (requiring a Bonobo
activation server to communicate with Evolution), the new editor is
just a straight-forward widget that can be subclassed and extended
by other applications.
- Email composer
This layer does just that: subclasses and extends the HTML editor
with features specific to composing and sending email. This layer
adds fields like "To", "From", and "Subject" to the editor, deals
with character encodings, and manages attachments and security
settings. Obviously, this piece lives in Evolution.
While not rewritten from scratch, this layer has been modified
extensively to adapt to the new HTML editor widget.
Other places around Evolution that deal with composing or sending
messages, such as meeting invitations and the "Send Message to Contact"
feature, have been adapted accordingly.
Matthew Barnes
[1] http://www.go-evolution.org/Evo2.24
[Date Prev][
Date Next] [Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]