Commit graph

564 commits

Author SHA1 Message Date
Joanmarie Diggs
d45e035b1f [a11y] Composer window not accessible to blind users: Closes #5555 2012-07-16 17:17:34 -07:00
Jim Nelson
f88acfc96f Geary doesn't build with Vala 0.17.3: Closes #5561
Unfortunately, the problem is a binding issue that is not easily
worked around.  The temporary solution is to include a copy of the
Gdk.Pixbuf VAPI until this bug is closed and a patched VAPI
distributed: https://bugzilla.gnome.org/show_bug.cgi?id=680060

Note that with this commit, Geary now requires Vala 0.17.3 to build.
2012-07-16 17:01:57 -07:00
Jim Nelson
df42db3b8e Message flags changed on server not stored in local store
This is a regression due to the database schema change in the
SQLHeavy removal.  Because FLAGS are now stored in MessageTable,
the merge logic needs to expect that case.
2012-07-16 12:10:12 -07:00
Jim Nelson
c91cb83342 Removed unnecessary log messages (added important one)
Also fixed an async naming issue in GenericImapFolder.
2012-07-16 11:42:43 -07:00
Jim Nelson
20fa5dd6cc Code and comment clean-up
Minor clean-up while reviewing code investigating #5533.
2012-07-13 16:44:43 -07:00
Michel Alexandre Salim
fead8677af Desktop file does not validate: Closes #5543 2012-07-13 12:51:10 -07:00
Michel Alexandre Salim
6ce3db3492 Vala files have spurious executable permissions: Closes #5544 2012-07-13 12:47:55 -07:00
Jim Nelson
f37c211a05 Removed geary-db-test
Unneeded now.
2012-07-12 19:29:58 -07:00
Jim Nelson
af9a2c7f63 Database connection pooling
Reusing connections is a win with asynchronous transactions.  More
fine-tuning in the future of cache pages and such will help improve
Geary's database performance.

Also fixed a naming and namespace problem with Geary.DatabaseError
and a hole where, if a connection could not be opened (for resource
problems, most likely), the asynchronous transaction would never
complete.
2012-07-12 19:17:12 -07:00
Jim Nelson
a047ceb698 Code reorganization
Primarily a reorganization of the engine/impl directory, which
was starting to grow unwieldy.  The most important code remains in
place, while secondary stuff (abstract classes, service-specific
implementations) are moved into other directories.

Also rename impl to imap-impl to reinforce that it is all
IMAP-specific code.
2012-07-12 18:55:47 -07:00
Jim Nelson
65f0513643 Fix message threading: Closes #5489
This bug was caused by some faulty code that's been in for a while,
but it was exacerbated by the bcc: fix and the outbox.
2012-07-12 18:37:11 -07:00
Jim Nelson
510c68ea6f Moved ImapDB-specific callback and const into ImapDB.Database 2012-07-12 17:58:51 -07:00
Jim Nelson
94ec845841 Moved Geary.BatchOperations to impl/, where it belongs 2012-07-12 17:45:44 -07:00
Jim Nelson
f281c4fb3b Additional logging during folder normalization 2012-07-12 17:33:41 -07:00
Matthew Pirocchi
be2f445b69 Replace references to deprecated Gtk symbols: Closes #5529. 2012-07-12 17:15:36 -07:00
Jim Nelson
c09a10ddaf SQL logging: Closes #5288
It's a firehose of log messages, but at least it's available.
2012-07-12 17:05:48 -07:00
Jim Nelson
7fcc8b75db Selecting new mail notification opens conversation: Closes #5526
Also includes a fix from Timo Kluck for searching the Notification
object's capabilities.
2012-07-12 16:47:06 -07:00
Jim Nelson
3bc2f6f444 Mail not showing up in folder due to error: Closes #5538
Message duplication check was failing because it was asking for
the wrong column.
2012-07-12 12:06:41 -07:00
Jim Nelson
41c693dd17 Minor bug dealing with messages marked for removal 2012-07-12 11:29:40 -07:00
Jim Nelson
106c47ff33 Fix Geary crash when creating new database: Closes #5536
This also solves problem of creating a new folder after upgrading a
pre-schema 4 database.
2012-07-11 18:09:28 -07:00
Eric Gregory
54e3ba7dcf Adding missing comma in control file 2012-07-11 18:00:00 -07:00
Matthew Pirocchi
6a8e5fdc58 Fix startup segfault on quantal: Closes #5415. 2012-07-11 15:47:34 -07:00
Jim Nelson
0e2a533438 Remove SQLHeavy: Closes #5034
It is done.

Initial implementation of the new database subsystem

These pieces represent the foundation for ticket #5034

Expanded transactions, added VersionedDatabase

Further expansions of the async code.

Moved async pool logic into Database, where it realistically
belongs.

Further improvements.  Introduced geary-db-test.

Added SQL create and update files for Geary.Db

version-001 to version-003 are exact copies of the SQLHeavy scripts
to ensure no slight changes when migrating.  version-004 upgrades
the database to remove the ImapFolderPropertiesTable and
ImapMessagePropertiesTable, now that the database code is pure
IMAP.

When we support other messaging systems (such as POP3), those
subsystems will need to code their own database layers OR rely on
the IMAP schema and simply ignore the IMAP-specific fields.

ImapDB.Account fleshed out

ImapDB.Folder is commented out, however.  Need to port next.

ImapDB.Folder fleshed out

MessageTable, MessageLocationTable, and AttachementTable are now
handled inside ImapDB.Folder.

chmod -x imap-db-database.vala

OutboxEmailIdentifier/Properties -> SmtpOutboxEmailIdentifier/Properties

Moved SmtpOutboxFolderRoot into its own source file

SmtpOutboxFolder ported to new database code

Move Engine implementations to ImapDB.

Integration and cleanup of new database code with main source

This commit performs the final integration steps to move Geary
completely over to the new database model.  This also cleans out
the old SQLHeavy-based code and fixes a handful of small bugs that
were detected during basic test runs.

Moved Outbox to ImapDB

As the Outbox is tied to the database that ImapDB runs, move the
Outbox code into that folder.

Outbox fixes and better parameter checking

Bumped Database thread pool count and made them exclusive

My reasoning is that there may be a need for a lot of threads at
once (when a big batch of commands comes in, especially at
startup).  If performance looks ok, we might consider relaxing
this later.
2012-07-11 15:40:39 -07:00
Matthew Pirocchi
bbc0da0b39 Don't translate placeholder attachment filename in database: Closes #5470. 2012-07-09 16:51:59 -07:00
Matthew Pirocchi
42f7d8bd41 Use same blockquote style for compose and message-viewer: Closes #5513. 2012-07-09 16:37:44 -07:00
Robert Schroll
8c2af7d9ce Fixed regex for horizontal bar for quoting: #5510 2012-07-09 15:13:13 -07:00
Robert Schroll
f69dd28b5f Missed one line in patch for #5498. 2012-07-09 15:01:07 -07:00
Matthew Pirocchi
5f0ca89544 Add short form -d for --debug option. Closes #5505. 2012-07-05 18:02:03 -07:00
Matthew Pirocchi
78f8b63794 Correctly handle flowed messages longer then 4096 bytes: Closes #5502. 2012-07-05 17:57:29 -07:00
Matthew Pirocchi
491342de45 Don't crash when marking a single message: Closes #5509. 2012-07-05 16:10:45 -07:00
Robert Schroll
863d5edd27 Messages collapsed too aggressively: Closes #5128
This is the final piece of the puzzle to close #5128.
2012-07-05 11:49:44 -07:00
Robert Schroll
ace7494c67 Simplify message view CSS so uncollapsed message same state: Closes #5498 2012-07-05 11:41:28 -07:00
Jim Nelson
9f72d161f9 Fixes two crashes seen during connection reestablishment
Geary dumped core twice this week, both during or immediately after
the server connection had to be reestablished.

In Imap.ClientConnection, the state machine was IDLING when the
Serializer was closed and discarded.  This patch catches that
condition.

In various SendReplayOperations, the operation was not calling
wait_for_remote_open() under the assumption that the API call
that scheduled the ReplayOperation had done so.  It's true, but
the call also is used to detect when the remote has closed, which
guards against attempting an operation on the server while closing
the Geary.Folder.
2012-07-05 11:37:05 -07:00
Matthew Pirocchi
47808ef3a2 Reply to messages other than the last in a conversation: Closes #5499. 2012-07-03 18:59:59 -07:00
Jim Nelson
c734c54b00 Prevent MessageListView's "conversations-selected" firing multiple times
This is to assist in completing ticket #5128, where because this
signal is fired multiple times although no state has changed (due
to Gtk.TreeSelection's "changed" signal wierdness) it's causing
the entire UI to update state unnecessarily.

This ticket may also assist in fixing #5327, but it does not close
that bug.
2012-07-02 14:53:08 -07:00
Matthew Pirocchi
65e3550e90 Eliminate active_email and active_attachment: Closes #5387. 2012-07-02 12:32:07 -07:00
Robert Schroll
2821930ba9 Correct CSS for cursor in uncollapsed email headers: Closes #5486
Now the mouse cursor will be normal when hovering over uncollapsed
email headers (unless it's over an email address, which launches
the composer if clicked).
2012-07-02 11:47:23 -07:00
Jim Nelson
e05ca9c6bb Revert "Messages collapsed too aggressively: Closes #5128, Closes #5352"
This reverts commit 94d244d23d.
2012-06-29 17:51:08 -07:00
Robert Schroll
94d244d23d Messages collapsed too aggressively: Closes #5128, Closes #5352 2012-06-29 15:51:27 -07:00
Christian Dywan
031adda608 Copy Email Address in context menu: Closes #5445 2012-06-29 15:18:15 -07:00
Robert Schroll
90bbb4965e Escape ampersands in plain text email: Closes #5480 2012-06-29 14:52:19 -07:00
Robert Schroll
54271431bc Allow horizontal scrolling for email: Closes #5481 2012-06-29 14:24:20 -07:00
Matthew Pirocchi
1d0fa76471 Only open link in browser when clicked: Closes #5472.
WebKit supports the following navigation reasons:

    LINK_CLICKED
    FORM_SUBMITTED
    BACK_FORWARD
    RELOAD
    FORM_RESUBMITTED
    OTHER

We only want to open a link in the browser when navigation is requested
for the "LINK_CLICKED" reason. When an iframe is embedded in an email,
it uses the "OTHER" reason.
2012-06-28 18:20:20 -07:00
Timo Kluck
56de6f7ed5 Fix message with format=flowed rendered incorrectly: Closes #5478 2012-06-28 14:45:26 -07:00
Matthew Pirocchi
e5f7c9c7e7 Don't homogenize toolbar buttons: Closes #5477. 2012-06-28 13:06:25 -07:00
Timo Kluck
db6f0534bb Support Nautilus Sent To: Closes #5473 2012-06-28 12:43:58 -07:00
Timo Kluck
64b5079d12 Possible buffer overflow in Gmime.FilterFlowed.vala: Closes #5475
Fixes possible problem with better NUL checking.
2012-06-28 12:00:51 -07:00
Jim Nelson
94c38a406f Fix segfault during connection shutdown
Last night Geary dumped core at some point.  Looking at the stack
trace I could see that it was referencing a null pointer to the
IMAP Folder object from a SendReplayOperation.  I believe this
patch corrects the problem by checking for the remote folder's
availability before the operation's internally batch operation
proceeds rather than once before creating all the batch operations.
2012-06-28 11:53:32 -07:00
Matthew Pirocchi
f253f58249 Use gettext comments: Closes #5464.
Use comments beginning with '///' before potentially difficult
translatable strings. The comments are extracted by xgettext when it is
passed the option '--add-coments="/"'.
2012-06-28 11:06:17 -07:00
Jim Nelson
4cc29c637f Renamed geary-special-folder.vala to geary-special-folder-type.vala
Geary.SpecialFolder no longer exists, only the enum remains.
2012-06-27 18:28:53 -07:00