Commit graph

1448 commits

Author SHA1 Message Date
Charles Lindsay
93ae747f3c Keep 2 indexes by UID to determine flag changes; fix #7338
Previously, the EmailIdentifier key's hash value was sometimes changing
during the execution of the function, so when someone later went to look
up the flags, the hash map was returning NULL.  This way we delay
hashing the EmailIdentifier till right before it's used, so its hash
value can't change.
2013-08-20 15:55:54 -07:00
Jim Nelson
4794702ead "(null)" & no previews in search folder: Closes #7151, Closes #7368
Both these problems stemmed from conversations holding messages from
in-folder and out-of-folder, and that all messages in the search
folder are considered out-of-folder.
2013-08-20 15:13:34 -07:00
Jim Nelson
4444ab36bf Removed some leftover debug()
If it remained, would fill log with extraneous cruft.
2013-08-20 12:50:05 -07:00
Jim Nelson
b3506715e7 Drafts occassionally don't save or cause crash: Closes #7344, Closes #7353
The problem was due a timing issue in ClientConnection FSM; it was possible
for the machine to still be in the IDLE or IDLING state when ready to
SYNCHRONIZE.  This is due to a timing hole where the server's response to
close IDLE (requested when the APPEND command was sent) didn't return in
time.  This closes that timing hole and deals with SYNCHRONIZE occurring
while in IDLING/IDLE.
2013-08-20 12:48:18 -07:00
Eric Gregory
1f859dea4d Closes #7357 Draft geometry problem. 2013-08-20 12:25:04 -07:00
Charles Lindsay
5594abd96c Allow operations on email in any folder; fix #6496
This is squashed commit (sorry -- we'll get better about maintaining a
clean history in collaborative branches in the future!) of a massive
amount of work from Jim and myself.

* EmailIdentifiers for normal (i.e. not outbox, etc.) emails are the
  same regardless of which folder they came from
* New EmailStore interface to manipulate messages that reside in any
  folder, without having to care what folders are open
* Relevant places that manipulate emails (e.g. the toolbar) have been
  updated to use the new EmailStore interface
* Conversation and ImplConversation have been smooshed together
* Many, many more items and bugfixes related to the above points
2013-08-19 16:39:53 -07:00
Jim Nelson
48b7296855 ConversationSet error when searching or archiving: Closes #7275
We discovered a situation where, depending on the order email is
processed, it's possible for logically associated emails to form
two or more conversations.  When an email is processed that belongs
in more than one conversation, its removal triggers this error (as
a Message-ID can be associated with one and only one conversation).

Bogus email headers, especially email that does not list a complete
References: list, aggravate this problem.
2013-08-16 17:35:56 -07:00
Jim Nelson
a803810db8 Display oldest unread message as preview: Closes #5921 2013-08-13 19:21:30 -07:00
Jim Nelson
1b7e652211 Sort conversations by date received, not sender's date: Closes #6856
Also displays date received in conversation list.
2013-08-13 18:35:19 -07:00
Robert Schroll
54dc99cf63 Don't consider out-of-folder emails when sorting conversation list: Closes #6873 2013-08-13 18:21:19 -07:00
Eric Gregory
f78ddf6bbd Autosave drafts. Closes #6124 2013-08-13 18:02:42 -07:00
Eric Gregory
8059f0f31e Merge branch 'master' into feature/drafts 2013-08-13 14:53:12 -07:00
Eric Gregory
7146ca475e Merge branch 'master' into feature/drafts 2013-08-13 14:39:07 -07:00
Jim Nelson
a029b1fa3b Merging in some bux fixes from conversation-mop-up branch
Charles discovered that some of the operations in ImapEngine.GenericFolder
were exiting before waiting for the command to complete, meaning the
async call returned while the operation was still running.  This
has a broader problem if the command is executed (with a yield) and
then the folder is closed.
2013-08-13 13:22:40 -07:00
Jim Nelson
6197c11fa3 Reply not included due to bogus References: field: Closes #7333 2013-08-12 18:59:27 -07:00
Jim Nelson
ec10e06213 Background sync'ing should stop when vector is complete: Closes #7325
Account synchronizer now stops when it recognizes that all the mail in
the folder is present (but perhaps not completely downloaded) from
the server.  The email prefetcher takes care of ther rest.

Also discovered a regression from last week's commit that prevented
vector expansion when using find_earliest_email_async(); fixed here
as well.
2013-08-12 17:51:10 -07:00
Brendan Long
cf33c69930 Build with --enable-ref-tracking: Closes #7262 2013-08-12 16:45:11 -07:00
Brendan Long
624a7171be Content menu missing labels in composer: Closes #7322 2013-08-12 16:30:17 -07:00
Jim Nelson
0df2c1fa7c Fixes crash when removing unfulfilled during writebehind operation
Encountered this morning -- list operation had unfulfilled emails
waiting for network operations but folder normalization determined
they were missing and used a writebehind to remove them from the
operation, but the loop to remove them explodes (can't do a remove
within a foreach).  This loop solves that problem.
2013-08-12 12:52:45 -07:00
Robert Schroll
2aa63900b4 Ignore case in domain names when warning about link destinations: Closes #7327 2013-08-12 12:52:07 -07:00
Jim Nelson
ec4b4876e2 Show total message counts in folders: Closes #6982
Total and unread message count displayed in tooltip.
2013-08-09 17:30:03 -07:00
Jim Nelson
aa355f5438 Merge branch 'master' into feature/attachments 2013-08-09 16:10:44 -07:00
Jim Nelson
d472b9e4c9 Folders to load on new accounts: Closes #7238
Numerous changes to make account synchronization and email prefetcher
more efficient and not hold the database lock for so long.
2013-08-09 15:17:06 -07:00
Eric Gregory
3a6995846f Closes #7307 Overwrite existing drafts 2013-08-08 19:03:47 -07:00
Eric Gregory
1a0bef4a2e Closes #7237 Delete corresponding draft when sending mail 2013-08-08 18:55:54 -07:00
Eric Gregory
594d711150 Closes #7253 Ask to save draft 2013-08-08 18:47:23 -07:00
Jim Nelson
547114f186 Conversation list loads too much mail when scrolling down: Closes #7279
Two problems: (a) determination for vector expansion was not accounting
for INCLUDING_ID flag properly, and (b) messages added to the interior of
the vector during normalization (can happen when the database has a
gap in the middle of the vector) were being treated as appended (i.e. new)
messages, causing the ConversationMonitor to load all of them.
2013-08-08 18:41:15 -07:00
Eric Gregory
c8cbebc39c Merge branch 'master' into feature/drafts 2013-08-08 13:07:51 -07:00
Jim Nelson
c1a9d31222 Don't crash when message on remote not in local is removed
Forgot to deal with situation where a message in the remote folder
is removed that isn't stored in the local database.  In that case,
the local position will be <= 0 and should be treated as a NOP
(although still signal that the total remote_count has changed).
2013-08-07 17:08:32 -07:00
Jim Nelson
3598a08d31 Reindex search table to include inline/forwarded attachments and full body text: Closes #7283
Rather than attempt to be selective, there's enough changed here that we might as well
blow away the search index and let the indexer start afresh.  Future tweaks to the
search index might need to be more selective.
2013-08-06 18:16:34 -07:00
Jim Nelson
d531c7eef7 Merge branch 'master' into feature/attachments 2013-08-06 17:39:14 -07:00
Robert Schroll
09dd558787 Process all attachments from past forwarded email attachments: Closes #7282 2013-08-06 17:31:20 -07:00
Robert Schroll
262c25c360 Inline images style improvements: Closes #7305 2013-08-06 17:19:16 -07:00
Eric Gregory
851f8f03e9 Merge branch 'master' of ssh://yorba.org/git/geary 2013-08-06 15:43:22 -07:00
Eric Gregory
e5dc9c8bfc Closes #7201 Unread count styling 2013-08-06 15:42:42 -07:00
Jim Nelson
502bb0d24e Opening New Message window is slow: Closes #6973
Fixes a couple of performance problems (slow sorting of Contacts
being added one at a time, and multiple GtkEntryCompletions being
created when New Message is used) as well as broke out
ContactListStore so one could be created and used for the three
GtkEntryCompletions needed in the window.
2013-08-06 15:38:16 -07:00
Robert Schroll
67c4fa2cf7 Text parts shown as attachments: Closes #7300 2013-08-06 12:36:27 -07:00
Jim Nelson
54fa83d69c Merge branch 'master' into feature/attachments 2013-08-06 12:34:33 -07:00
Jim Nelson
4c607b242f Update Daily Build PPA to use Vala 0.21.1 2013-08-05 16:12:35 -07:00
Avi Levy
a5c0d75fdf Reverts change to background color for sent mail: Refs #6371 2013-08-02 17:51:43 -07:00
Eric Gregory
0e185be7be Closes #7236 Replace previous draft 2013-08-02 17:49:33 -07:00
Jim Nelson
403dd8508e Drop Gtk.Stock: Closes #7203, Closes #7294
These changes also invalidates #7218, as we're no longer using
buttons with icons with these changes.
2013-08-02 15:28:33 -07:00
Eric Gregory
d33771787a Closes #7145 Fix for unread count issue 2013-07-31 12:10:11 -07:00
Timo Kluck
aa8f7c129c Fix display of special folders in the localized case: Closes #7239 2013-07-26 17:58:46 -07:00
Avi Levy
06bb87b737 Inline images not displayed when surrounded by text/plain sections: Closes #6942
Better document structure handling.  Now dealing with all portions of a
MIME document, not just the first, and properly inserting inline images
into the final HTML view.
2013-07-26 16:33:26 -07:00
Eric Gregory
9c658027fa Closes #7276 Search folder now loads correct messages when scrolling down 2013-07-25 18:31:19 -07:00
Eric Gregory
a2546b5231 Fixes #4644 Spinner fix, part deux 2013-07-23 15:43:56 -07:00
Robert Schroll
a1e7604a50 Don't use friendly dates for 7 days ago: Closes #7270
Display calendar date for mail sent 7 days ago rather than day of week
(i.e. today's day of week, which can be confusing).
2013-07-23 14:39:59 -07:00
Jim Nelson
902a658330 Fetch should use local-expansion, not locally-appended
I think this was lost in a merge from a while back.  This is the
correct semantics.
2013-07-23 14:30:32 -07:00
Robert Schroll
08aaeed431 Allow forwarded message attachments to be downloaded: Closes #6858
Attached forwarded messages are displayed inline (for viewing) and,
with this patch, as an attachment that can be saved by the user.
2013-07-23 14:27:31 -07:00