Commit graph

63 commits

Author SHA1 Message Date
Charles Lindsay
910e1c3d0b Update copyright headers; fix #6195
Also removing the erroneous space that had crept in at the end of the
line in most of our header comments.
2013-04-12 12:32:39 -07:00
Eric Gregory
19cb4c3415 Refs #5076 Temporary fix for no way to load more messages 2013-03-12 15:18:12 -07:00
Jim Nelson
45aca6d22c Geary doesn't build with Granite: Closes #6229, Closes #6206
Removes Granite from Geary.  We need to work with the Elementary
crew to build a Granite-enabled version of Geary.
2013-03-12 14:55:54 -07:00
Charles Lindsay
33453dfa71 Show account inboxes at top of sidebar; fix #6331
There's now a list of inboxes at the top of the sidebar if you have more
than one account.  It gets the default selection if possible, so you
never have to see all the folders of your accounts if you work entirely
out of your inbox.
2013-02-14 16:01:51 -08:00
Eric Gregory
1deef0b2a7 Closes #6139 Refactored conversation viewer 2013-01-08 18:37:38 -08:00
Robert Park
afc745cb3f Remember column widths between sessions: Closes #5998
Uses GSettings bindings rather than getters/setters to save
window and pane sizes as they are updated.
2012-11-07 19:05:38 -08:00
Victor Eduardo
e24aff2d05 Use Granite's Thin Pane for horizontal panes: Closes #5855 2012-09-24 16:31:31 -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
87506c2670 Improve application icon: Closes #3705
This includes Daniel Fore's proposed icon.
2012-09-03 12:48:48 -07:00
Matthew Pirocchi
e553bb291a Optionally allow loading external images: Closes #5418. 2012-08-13 17:24:09 -07:00
Matthew Pirocchi
be2f445b69 Replace references to deprecated Gtk symbols: Closes #5529. 2012-07-12 17:15:36 -07:00
Matthew Pirocchi
6a8e5fdc58 Fix startup segfault on quantal: Closes #5415. 2012-07-11 15:47:34 -07:00
Matthew Pirocchi
883e45577b Warn user before exiting if composer window has unsent text: Closes #5279
YorbaApplication's 'exiting' signal now allows callbacks to cancel the
edit. GearyController now keeps a list of all open ComposerWindows, and
listens for YorbaApplication's 'exiting' signal. When the signal is
received, GearyController warns the user about each open ComposerWindow
with unsent text. If the user cancels the closing of any of these
ComposerWindows, GearyController cancels the edit.
2012-05-24 11:00:03 -07:00
Eric Gregory
026f048672 Closes #5269 Left grip can now resize indepedently of right grip 2012-05-18 13:02:19 -07:00
Eric Gregory
c74af1ece7 Closes #5178 Only save window settings if window was shown 2012-05-01 12:51:40 -07:00
Christian Dywan
5276c734c6 Added style classes for sidebar. Closes #4909 2012-03-26 14:34:48 -07:00
Christian Dywan
408a2c9e8a Overlay on URL hover. Bumps Gtk+ version to 3.2. Closes #4703 2012-03-21 15:58:17 -07:00
Eric Gregory
c295aac976 Geary icon. Closes #3705 2012-02-10 11:33:54 -08:00
eric
f0ea6b3ceb URL tooltips when you hover over links. Closes #4672 2012-02-01 16:37:53 -08:00
Eric Gregory
767997eeb7 Sidebar icons! Closes #3792 2012-02-01 12:32:07 -08:00
Eric Gregory
346c86f53b Vala 0.15.1 support. Closes #4674 and #4673 2012-01-27 15:00:24 -08:00
Adam Dingle
281f29bc77 Updated copyrights to 2012. Closes #4564 2012-01-10 10:40:34 -08:00
Eric Gregory
9ea2b48919 Archive/delete messages. Closes #3806 2011-12-15 16:16:27 -08:00
Eric Gregory
227fd40a12 Added spinner. Closes #3926 2011-11-30 15:37:16 -08:00
Eric Gregory
1f3d3da3ca Refactored main window and geary application to create new controller object. Closes #4308 2011-11-22 18:55:07 -08:00
Eric Gregory
43b0f0a16e Fixes hang on resize. Closes #4397 2011-11-21 16:14:15 -08:00
Jim Nelson
f08b5606c0 Adds support for unsolicited server data: Closes #4406
Unsolicited server data is how the server can notify of changes (adds, removes)
while the client is pulling data for an unrelated command.  This patch catches
that unsolicited information and propagates it via signals.

Also some small fixes dealing with local/remote positional addressing in
EngineFolder and a bug that was introduced by the add/remove notifications in
MainWindow.
2011-11-18 12:28:45 -08:00
Jim Nelson
9dfcb26597 Further optimizations on the database side
Merging in additions to an email's fields in MessageTable could result in many
serialized SQLite operations that were independent of each other.  This change
(a) parallelizes them via NonblockingBatch, and (b) reads the messages existing
fields and strips out writes to fields it already holds.  This is legal because
none of the current fields in MessageTable are mutable on the server, but is not
allowable for ImapMessageProperties because they are.

Also, there were some naming inconsistencies in NonblockingBatch that are
corrected here.
2011-11-16 20:05:50 -08:00
Jim Nelson
18716ae6ce Fetches only a small portion of the message for previews: Closes #4254, Closes #3799
Before we were fetching the entire message body (including attachments) to get the
preview text.  This patch now offers the ability to fetch a small (128 byte) preview
of the email.

Also, since this ticket is about speeding up performance, I've introduced NonblockingBatch,
which allows for multiple async operations to be executed in parallel easily.  I've added
its use in a few places to speed up operations, including one that was causing the lag
in #3799, which is why this commit closes that ticket.
2011-11-16 18:17:35 -08:00
Eric Gregory
02a99d2562 Fixes conversation jumble. Closes #4384 2011-11-15 18:37:59 -08:00
Jim Nelson
f5b7d29a8c Better duplicate detection in local database
This incorporates much better duplicate detection in the local database, using both RFC-822 Message-ID as well as IMAP metadata (internaldate, RFC822 size) to determine if a message is already stored in the database.  Very useful when a message is stored in multiple folders, or an already-downloaded message is returned to a folder it originated in (i.e. INBOX).

Also some minor fixes to listing email by EmailIdentifier which save a roundtrip to the server for certain edge cases.
2011-11-14 12:09:52 -08:00
Eric Gregory
d8fe58bf46 Load more messages when scrolled to bottom. #3857 2011-11-11 13:36:25 -08:00
Jim Nelson
4cea0fb0d2 Removed messages are now removed from conversations: Closes #4347
Conversations now fully monitor the Folder for both additions and removals of messages.
This exposed a couple of bugs in the database code, which are fixed here as well.  I also
used this opportunity to clean up some of the internal Conversations code, simplifying Node
management.  #4333 will be a big boost here when implemented.
2011-11-10 13:20:48 -08:00
Jim Nelson
3f6d8eac5a Moving away from positional addressing. Greater emphasis on EmailIdentifiers for
addressing.

Positional addressing is a nightmare for a lot of reasons, especially keeping positions
up-to-date as the Folder mutates.  Now, positions are returned with the email but for
advisory reasons only, and do not keep up-to-date.  It is expected that a client will use
positional addressing to "bootstrap" the application's data store, then use EmailIdentifier
addressing to traverse the Folder's contents.
2011-11-09 16:40:28 -08:00
Eric Gregory
1e5f5d1c7e Debug header print (ctrl-alt-p) and fixes new message keyboard shortcut. Closes #4353 and Closes #4247 2011-11-08 16:42:37 -08:00
Eric Gregory
43a5b6152b Conversation view. Closes #3808 2011-11-01 15:49:06 -07:00
Jim Nelson
b50b769e77 Really fixes bug where FAST messages had wrong EmailLocations.
Prior commit did not completely fix the problem in the case where a remote folder open took
a long time.  This bulletproofs the solution, but does mean that there will be some
situations where FAST messages return with EmailLocations that radically change in the near
future.  As the contract allows for any changes whatsoever, this is acceptable.
2011-10-18 19:56:54 -07:00
Jim Nelson
41e162a9b7 Fixed bug where FAST messages had wrong EmailLocations.
Eric spotted a bug where messages retrieved via FAST (i.e. straight from the database) were
not assigned their proper EmailLocations, which has a lot of ramifications when more emails
are being requested.
2011-10-14 17:54:58 -07:00
Eric Gregory
2f2b4fff27 Pretty message viewer. Closes #4230 2011-10-13 19:16:22 -07:00
Eric Gregory
03d63ecc1a Toolbar replaces the menu. Closes #3816 2011-10-11 19:12:20 -07:00
Jim Nelson
0021b74281 This patch expands Geary.RFC822.Message to be a more full-blown container for an RFC 822
message (email), suitable for decoding a message off the wire or converting a
human-generated form into something suitable for pushing on the wire via SMTP.
2011-10-07 17:33:34 -07:00
Jim Nelson
77d9962406 Fixes segfault when navigating between folders: Closes #3820
This bug was exacerbated by rapidly switching between folders.  This patch introduces a
Cancellable to most of the requests the client performs so it can cancel old requests when
the user switches folders.  This fixed some issues but exposed others.

Testing this demonstrates another bug: #4233
2011-10-06 19:04:17 -07:00
Eric Gregory
686f4cbfde Folder list scrolling keeps highlighted item in the view. Closes #4227 2011-10-05 17:08:12 -07:00
Jim Nelson
428c0825a9 Fast listing of messages in a folder
This adds a new flag when listing messages, FAST.  This indicates that the caller wants
messages that are immediately available to the Folder, avoiding a round-trip to the server
(or even disk) if possible.  Not all folders will support FAST, but it can be used (as it is
now in the client) to quickly populate the message list and then initiate a connection in
the background to get the straight dope.
2011-10-04 19:02:59 -07:00
Eric Gregory
570a45c822 Makes message list wider. Closes #4217 2011-10-04 18:24:13 -07:00
Eric Gregory
4d3888da7e Keyboard scrolling in message list; Closes #3922 2011-10-04 17:57:54 -07:00
Eric Gregory
e6e1ca8357 Composer window. Closes #3711 2011-10-03 12:05:25 -07:00
Eric Gregory
98f3ef7e00 #4130 remember paned grabber positions 2011-09-27 18:34:26 -07:00
Jim Nelson
0fdc45e4ec Move to GTK+3: Closes #4163 2011-09-22 13:11:35 -07:00
Eric Gregory
4ad276aa9a 3817 fancy 3-column layout 2011-09-21 18:03:41 -07:00