Commit graph

856 commits

Author SHA1 Message Date
Jim Nelson
a752aee5c1 Further bug fixes due to recent changes
In ImapDB.Folder, typo meant problems with duplicate detection.
In ConversationMonitor, removing Message-IDs from reverse lookup
map continued to be an issue.
2012-09-21 17:05:06 -07:00
Jim Nelson
2a3356710d Large attachment causes connection timeout: Closes #5578
This patch introduces a simpler timeout scheme in ClientConnection,
as the need for ClientConnection to report which Commands (by Tags)
had timed out never materialized.  (It's better handed upstairs in
higher layers of the IMAP stack.)  This scheme accounts for data
being received, even if the command does not complete in the
timeout interval.

Additionally, ClientSession now uses a better timeout scheme of its
own for issuing NOOP keepalives.  Now, they will only be issued
if no traffic (not just send traffic) has not happened in the
allotted time.

Note that this does not solve the problem of large attachments
stopping other IMAP traffic (fixed with #4462) or the server
dropping a Command (which needs to be taken care of in #5869).
2012-09-21 12:55:20 -07:00
Adam Dingle
15a8398492 Fixed #4947 (Add debug build option to Geary). 2012-09-21 11:18:41 -07:00
Jim Nelson
ebf8ce9f49 Some small bugs discovered while testing out recent changes.
The folder normalization check_open()'s are needed if it takes a
long time to download folder normalization data from the server.
In ImapDB.Folder, these changes are important for duplicate
detection.
2012-09-20 22:17:39 -07:00
Jim Nelson
a6d6a7001d Deal with saving attachment to location already exists: Closes #5627 2012-09-20 21:23:23 -07:00
Jim Nelson
02e3701182 UI freezes when loading All Mail folder: Closes #5081
Numerous optimizations throughout the stack to improve loading
large numbers of messages at once.  This can still be improved,
but this is a start for loading ~2000 messages at once.
2012-09-20 20:49:57 -07:00
Jim Nelson
592fe9ff93 Integrate with libmessaging-menu: Closes #5607
Because Messaging Menu isn't available on Precise, a special
debian/control.quantal file is introduced here.  We should move to
using it solely when we phase out Precise support.
2012-09-20 15:54:50 -07:00
Adam Dingle
f9092fddfc Fixed #4804 (message area fails to repaint after window resize). 2012-09-20 14:57:09 -07:00
Jim Nelson
e04c8b4787 Removed unused icon
Now using Gtk.Arrow in toolbar, menu-down is no longer needed.
2012-09-19 19:49:55 -07:00
Jim Nelson
403ae6dc69 Fix toolbar problems with Adwaita: Closes #5567
Complete refactoring of dropdown menu toolbar buttons.  This uses
a better approach toward using customized widgets for the toggle
buttons and a more centralized approach toward maintaining the
dropdown menu.

In additional, Geary.FolderPath is now a Comparable, and should be
used as such in the future.

It's believed this patch will also fix ticket #5831.
2012-09-19 17:23:02 -07:00
Jim Nelson
a969b44ad2 Respect system toolbar style setting: Closes #5793 2012-09-18 15:50:30 -07:00
Jim Nelson
d4af386096 Add text to Archive and Reply buttons: Closes #5201
New Message, Reply/Reply All/Forward, and Archive buttons now
marked as important and display their label when GTK is
configured to do so.
2012-09-18 15:38:56 -07:00
Jim Nelson
1b5651baf7 Break out command-line parsing from GearyApplication
Parsing was getting unruly and making GearyApplication even more
complicated than it needs to be.
2012-09-18 15:31:59 -07:00
Jim Nelson
13fe5d07f0 Toolbar no longer editable w/ Glade: Closes #5203
toolbar.glade should now be editable with Glade without it
autocorrecting the XML or otherwise changing the appearance of the
toolbar.
2012-09-18 14:58:51 -07:00
Jim Nelson
9d455cc2ac Change icon for "Mark" menu: Closes #5788
Replaces red flag icon with a checkmark icon.
2012-09-17 17:49:52 -07:00
Jim Nelson
621b9bdd8c Better "Remove formatting" icon: Closes #5795
Better icon courtesy Daniel Fore.  Also increased the size of the
toolbar and reduced the child spacing in the composer to better
utilize space.  This might also handle #5054, but need to confirm
separately.
2012-09-17 16:59:04 -07:00
Jim Nelson
3723a5cdd4 Problems with replay queue when folder closes: Closes #5825, Closes #5824
Commit 327d183b (closing #5571) introduced regressions when a folder
is closing or closed.  This patch addresses two problems, one a crasher
and the other a case where the replay queue simply never closed when
requested.
2012-09-17 14:49:54 -07:00
Jim Nelson
9867509f91 Only boldface senders whose messages are unread: Closes #5821 2012-09-14 17:21:41 -07:00
Adam Dingle
18d254d81d Fixed #5819 (Use "content-view" class for composer bottom toolbar). 2012-09-14 11:43:44 -07:00
Adam Dingle
05c6e8fd98 Fixed #5755 (update icon cache after uninstall). 2012-09-14 09:54:52 -07:00
Sergey Shnatsel Davidoff
88f0b2c6ae Support Apport in PPA: Closes #5697 2012-09-13 16:48:57 -07:00
Sergey Shnatsel Davidoff
befbba267c Create geary-dbg package in PPA: Closes #5696 2012-09-13 16:41:28 -07:00
Jim Nelson
327d183b8f Message marked read while connecting go unread later: Closes #5571
Bug was due to current flag on server being updated in local database
after the local operation had made a different change and was waiting
for normalization to complete to make the change on the server.
ReplayQueue now has a notion of a writebehind operation, which means
an immediate local change that a ReplayOperation waiting to make on
the remote must now account for.
2012-09-13 16:17:58 -07:00
Adam Dingle
dceefa3003 Fixed #5820 ("Attach a file" should be title case). 2012-09-13 14:43:26 -07:00
Adam Dingle
827747c7a9 Fixed #5809 (new compose window cancel button does nothing).
Fixed #5811 (console warnings when opening the composer).
2012-09-13 09:48:25 -07:00
Adam Dingle
dfbf5cd955 Added a Cancel button to the composer window. Closes #5794. 2012-09-12 14:29:32 -07:00
Adam Dingle
e4a88d124a Partially implemented #5794 (move send button and attachments to bottom of the compose window).
There's still no cancel button.
2012-09-12 13:37:45 -07:00
Jim Nelson
e5399fb2df Segfault when fetching previews: Closes #5804
Some servers send NIL rather than an empty literal when there's
no MIME sections in the body (or, more likely, they don't support
MIME fetching).  This handles that problem.
2012-09-12 13:03:12 -07:00
Adam Dingle
43e57e38b8 Fixed #5791 (move gravatar to left). 2012-09-12 10:11:52 -07:00
Jim Nelson
037977bbc4 Wrong message selected after archive: Closes #5488
Fundamental problem is that ConversationMonitor was reporting
each message as it was removed and then the entire conversation
being removed.  This caused the row in the conversation list to
be re-sorted as its latest date changed, moving the selection
along with it.

ConversationMonitor now does not report the removal of messages
if the conversation is about to be removed wholesale.
2012-09-11 20:48:10 -07:00
Jim Nelson
45fc6d16e3 nullable value being referenced in ListResults
Associated with #5703, the delimiter reported by IMAP LIST may be
NIL, which is treated as a null in the decoder.  However, it was
being dereferenced without checking for null later in the method.
2012-09-11 17:58:39 -07:00
Jim Nelson
2da7362136 Convert reasonably-sized LiteralParameters into StringParameters
Related to report in #5703, it appears some Dovecot servers send back
ENVELOPE data (and perhaps more) as literals where atoms/quoted
strings are expected.  This change will convert all reasonably-sized
literals into StringParameters.  If a decoder demands a StringParameter,
it can use the new get_only_as_string() variants.
2012-09-11 17:56:28 -07:00
Jim Nelson
f12151b546 Added IMAP ID command for geary-console 2012-09-11 15:19:18 -07:00
Adam Dingle
bece122884 Fixed #5613 (use --target-glib in build). 2012-09-11 15:10:21 -07:00
Adam Dingle
d5fdb73546 Fixed #5725 (Use "go-down" instead of stock_down). 2012-09-11 14:58:59 -07:00
Adam Dingle
95e557aef7 Use ColorChooserDialog instead of deprecated ColorSelectionDialog. Fixes #5603. 2012-09-11 11:29:27 -07:00
Adam Dingle
2a66f8ab2b Rearranged toolbar buttons. Fixes #4495.
Moved the archive button to the right as per #4495 .  Also moved the mark menu
leftward and the move menu rightward.  The general idea here is that buttons
that operate on the message itself appear toward the left, and that buttons
that move it elsewhere appear toward the right.
2012-09-11 11:28:11 -07:00
Jim Nelson
66f8533806 Improved application icon: Closes #3705 2012-09-11 11:14:57 -07:00
Adam Dingle
a70a2556ca Fixed #5790 (remove View Source item in message context menu). 2012-09-11 10:56:16 -07:00
Jim Nelson
a5871e3351 Widen account creation dialog: Closes #5728 2012-09-10 19:42:00 -07:00
Jim Nelson
0709ec7083 Further updates to icons/CMakeLists.txt 2012-09-10 19:25:18 -07:00
Jim Nelson
e012e8a599 Added edit-flag.svg to CMakeLists.txt 2012-09-10 19:04:51 -07:00
Jim Nelson
c40f16bede Use icon for Mark menu: Closes #5788 2012-09-10 19:04:00 -07:00
Jim Nelson
335de99f9c "mail-archive" icon: Closes #5787 2012-09-10 18:57:36 -07:00
Jim Nelson
76b32bd928 Added new icon to CMakeLists.txt 2012-09-10 18:50:13 -07:00
Jim Nelson
0818b9ad4b Improved icons: Further closes #5722
Fixes some icon issues associated with this ticket.  Custom
toolbar icons now shown at full size.
2012-09-10 18:46:39 -07:00
Jim Nelson
760a82859b Fetch mail when non-Inbox folder selected: Closes #5784
When another folder is selected, the Inbox folder is still open
for monitoring and notifications.  However, its ConversationMonitor
is destroyed when the folder selection changes, which is the
mechanism that performs connection re-establishment if the connection
dies.  Thus, if the Inbox connection dies while another folder is
selected, new Inbox messages are not received.

This fixes that problem by maintaining an Inbox ConversationMonitor
at all times.
2012-09-10 16:20:15 -07:00
Jim Nelson
6bd2d7d9b9 Archive should not be available in All or Sent mail: Closes #4652
While investigating I noticed that archive is available in Trash.
I fixed it so delete is available in Trash.
2012-09-07 20:29:35 -07:00
Jim Nelson
093b5be917 Rename classes and files to reflect Conversation-centricism
Geary originally only dealt in email messages, and so the original
classes' names reflected that.  When we switched to
conversation-based views, those names were not changed, making the
code slightly difficult to understand.  This converts those client
classes into Conversation* names.
2012-09-07 20:01:12 -07:00
Jim Nelson
96fa5c6066 Copy Email Address in context menu: Closes #5445
Simple regression.
2012-09-07 19:13:06 -07:00