Commit Graph

259 Commits

Author SHA1 Message Date
cketti 19db6c703b Don't display -1 as attachment size 2015-02-01 04:24:02 +01:00
cketti 474efa1831 Fix NullPointerExceptions introduced by conditionally inflating the crypto layout 2015-02-01 00:21:52 +01:00
Vincent Breitmoser dc8fd39c7e move crypto data into an annotation structure, and fix pgp/inline
note that we currently lack proper confirmation about whether data was
actually decrypted or not, so for now we always assume it wasn't
2015-01-30 16:16:11 +01:00
Vincent Breitmoser 4bec165fdc preliminary support for pgp/inline 2015-01-30 16:11:57 +01:00
cketti de8da4dab4 Write decrypted bodies to temporary files
Use FileProvider to be able to open decrypted attachments
2015-01-30 14:27:33 +01:00
Vincent Breitmoser 0374dc9cb1 display pendingIntent button when there is a pendingIntent only 2015-01-30 11:30:36 +01:00
Vincent Breitmoser a0b4faf688 pass OpenPgpError to display, delete old layout 2015-01-30 10:55:06 +01:00
Vincent Breitmoser d57f6c0ed5 buffer data after decryption before mime parsing 2015-01-30 10:34:46 +01:00
Vincent Breitmoser 3077e6a2d7 close piped streams after use 2015-01-29 20:24:59 +01:00
cketti 0a07250417 Fix class name 2015-01-29 20:07:30 +01:00
Vincent Breitmoser d678ccc160 extract crypto methods from MessageViewFragment into MessageCryptoHelper 2015-01-29 20:00:28 +01:00
Vincent Breitmoser 00b7b74878 pass pendingIntent, and some refactoring 2015-01-29 19:27:48 +01:00
Vincent Breitmoser 712acf4481 early support for detached signatures 2015-01-29 19:01:44 +01:00
cketti 38d3564c57 Merge pull request #537 2015-01-29 17:48:28 +01:00
cketti 41ac5a9fed Fix indentation 2015-01-29 17:47:37 +01:00
cketti 8627e65cab Merge pull request #536 from ligi/ligi/refactor/pgp_utils
Test & refactor OpenPgpUtils
2015-01-29 17:32:59 +01:00
cketti fed15a01e5 Merge branch 'store_decryption_result' into pgp_mime_preparations
Conflicts:
	k9mail/src/main/java/com/fsck/k9/mailstore/LocalMessageExtractor.java
2015-01-29 16:43:50 +01:00
ligi 033c1502db Reduce LOC even more 2015-01-29 16:43:45 +01:00
ligi a51b608e5e Reduce MessageCompos LOC 2015-01-29 16:36:15 +01:00
ligi 828a580eb8 Move this View out ( the hosting class is already too long with ~4000 Lines ..) 2015-01-29 16:30:01 +01:00
ligi 4075b72b72 Cleanup and Optimize ( no need to prepare some layout when it is never used ) 2015-01-29 16:24:44 +01:00
cketti fbfa6d146f Pass OpenPgpSignatureResult to LocalMessageExtractor 2015-01-29 16:16:29 +01:00
Vincent Breitmoser ba79779758 break message into multiple MessageViewContainers 2015-01-29 16:10:03 +01:00
cketti 9e47686277 Code style fixes 2015-01-29 15:24:06 +01:00
cketti 7b67d054a4 Don't save reference to multipart/encrypted "root" in decrypted parts 2015-01-29 15:16:59 +01:00
Vincent Breitmoser 1046308a38 converge threads after decryption, and handle PendingIntents 2015-01-29 12:57:04 +01:00
ligi 4bc9d94831 Test & Refactor OpenPgpUtils 2015-01-29 12:30:19 +01:00
Vincent Breitmoser bcd570f884 always show OpenPgpHeader if crypto-provider is set 2015-01-28 18:11:51 +01:00
cketti 4827b4c437 Merge pull request #535 2015-01-28 17:42:34 +01:00
cketti 7f811fce2c First attempt at decrypting PGP/MIME messages 2015-01-28 17:24:05 +01:00
Dominik Schürmann 6f156498ed Callback to execute signature button click 2015-01-28 15:40:19 +01:00
cketti bb83fdc0e8 Add support for loading parts with DataLocation.ON_DISK 2015-01-28 15:29:49 +01:00
Dominik Schürmann fdc597aadf Display signer name and email 2015-01-28 15:22:38 +01:00
Dominik Schürmann d112344780 Smaller sidebar 2015-01-28 15:09:19 +01:00
Dominik Schürmann 28e9c2a8ec Merge remote-tracking branch 'vincent/pgp_mime_preparations' into pgp_mime_preparations_view 2015-01-28 14:55:51 +01:00
Dominik Schürmann d46d355f69 OpenPGP status texts and sidebar improvements 2015-01-28 14:54:43 +01:00
Vincent Breitmoser cced35b3b8 parse MessageViewContainers from Parts (from dummy mime structure) 2015-01-28 14:35:18 +01:00
Dominik Schürmann e513af9529 Sidebar 2015-01-28 12:26:34 +01:00
Dominik Schürmann b781ace4fa OpenPGP header and sidebar tests 2015-01-28 11:30:29 +01:00
Dominik Schürmann 4c78d12fc6 Merge remote-tracking branch 'vincent/pgp_mime_preparations' into pgp_mime_preparations_view
Conflicts:
	k9mail/src/main/java/com/fsck/k9/ui/messageview/MessageContainerView.java
2015-01-28 09:31:11 +01:00
Dominik Schürmann e3fef1af98 Work on new pgp header 2015-01-27 17:50:40 +01:00
Vincent Breitmoser 581d32acd6 show attachments inline 2015-01-27 17:33:50 +01:00
Vincent Breitmoser 445c978f31 extract header view for multiple MessageContainerViews (intermediate state) 2015-01-27 16:48:33 +01:00
Vincent Breitmoser 29ad0f0f99 rename SingleMessageView to MessageContainerView 2015-01-27 16:42:31 +01:00
Vincent Breitmoser 40b6228756 new MessageViewInfo structure (with transitional methods) 2015-01-27 12:55:47 +01:00
cketti d92be22ce3 Merge branch 'master' into pgp_mime_decrypt 2015-01-27 12:44:08 +01:00
cketti 74fdbb7859 Update openpgp-api-library to latest version 2015-01-27 12:15:47 +01:00
cketti 8f7f656355 Add method to find multipart/encrypted parts 2015-01-26 20:37:27 +01:00
cketti 0e03f262b3 Make sure to close underlying InputStream after decoding attachments 2015-01-25 20:06:29 +01:00
cketti 378acbd313 Write large message parts to file system
Actually, we just move the temporary file to avoid having to copy the
data to a new file.
2015-01-25 19:25:00 +01:00
cketti 977d15c190 Refactor to improve readability 2015-01-23 15:08:56 +01:00
cketti 6825eafb87 Make column 'message_parts.data' a BLOB 2015-01-23 14:41:29 +01:00
cketti 564e2432e1 Get size of decoded body content when saving
Before downloading we show the encoded size of attachments. After download we
strip the transport encoding to find out the size of the decoded content.
2015-01-23 03:58:06 +01:00
cketti d2d85393d3 Save attachment count 2015-01-22 06:12:26 +01:00
cketti 5e4743bf66 Extract preview of message text 2015-01-22 05:18:50 +01:00
cketti 64e92ab1c1 Remove unused LocalAttachment* classes 2015-01-22 04:18:20 +01:00
cketti c9b2ec533c Add MessagePreviewExtractor 2015-01-21 01:21:02 +01:00
cketti 23c9398c03 Merge branch 'master' into pgp_mime_preparations
Conflicts:
	k9mail/src/androidTest/java/com/fsck/k9/mailstore/LocalMessageTest.java
2015-01-20 18:35:07 +01:00
cketti 395b70fa22 Remove unused code 2015-01-20 16:37:30 +01:00
cketti da51bdf1b3 Save attachments in background thread 2015-01-19 23:35:14 +01:00
cketti a7b16c1210 Refresh thumbnail after downloading attachment 2015-01-19 23:08:41 +01:00
cketti 9363c5b276 Download missing parts before viewing or saving 2015-01-19 22:37:15 +01:00
cketti 585d9cbe7f Fix "Download complete message" 2015-01-18 01:33:50 +01:00
cketti 1e628e7177 Reduce exposure of SingleMessageView internals 2015-01-16 23:37:37 +01:00
cketti 658657447e Fix viewing attachment with alternative MIME type 2015-01-16 23:37:37 +01:00
cketti de2eb25446 Use Glide for thumbnail generation + image loading 2015-01-16 23:37:37 +01:00
cketti cb94b5b192 Store attachment information in LocalBodyPart 2015-01-16 05:05:11 +01:00
cketti ac365567ee Replace dummy URI in AttachmentViewInfo instances
This is a first step towards fixing viewing of attachments.
2015-01-16 00:12:47 +01:00
cketti 41bd420213 Include database ID in message parts reconstructed from the database 2015-01-15 23:48:11 +01:00
cketti 8fce9e3654 Move functionality from AttachmentView to AttachmentController 2015-01-15 11:37:23 +01:00
cketti 087238f507 Move AttachmentView to 'messageview' package 2015-01-15 08:25:43 +01:00
cketti 2e05127c97 Use a Loader to extract text of a message in a background thread 2015-01-14 09:58:31 +01:00
Jan Berkel 4808406739 Make deleteCertificate null-safe 2015-01-14 03:45:09 +01:00
Jan Berkel f7da704007 WS 2015-01-13 09:34:13 +01:00
cketti 78ed2a23b1 Use a Loader to load the message to view from the database 2015-01-13 04:17:25 +01:00
Jan Berkel 7958467503 Convert from thread to AsyncTask for espresso tests 2015-01-13 01:11:09 +01:00
cketti 787c014265 Create new package for UI code related to message viewing 2015-01-12 22:46:56 +01:00
cketti 1bf159a300 Get rid of unused LocalTextBody 2015-01-12 22:09:55 +01:00
cketti bcd64017e3 Extract text to display before viewing the message 2015-01-12 21:52:44 +01:00
cketti 63abf05776 Sanitize HTML to remove meta refresh
Using
  <meta http-equiv="Refresh" content="1; URL=http://example.com/">
in a HTML message causes WebView to load the URL in the default browser.
Overriding WebViewClient.shouldOverrideUrlLoading() allows us to cancel
loading this URL. Sadly, I found no way to find out whether the method was
called because of a meta refresh or because the user clicked on a link.

So now we're using HtmlCleaner to parse the HTML and remove all "meta" elements
containing an "http-equiv" attribute with a value of "refresh".
2015-01-11 11:29:53 +01:00
cketti 2532362ed5 Add test for updating a message with a missing part 2015-01-10 04:39:02 +01:00
cketti bd97004ebd Fix downloading/saving single message parts 2015-01-10 04:38:57 +01:00
cketti 743e640d8c Remove references to 'text_content' and 'html_content' 2015-01-10 01:22:39 +01:00
cketti ce862c88f8 Change AttachmentProvider to use the new database structure 2015-01-07 02:34:44 +01:00
cketti e5f0bec6bc Get rid of "backward compatibility" in AttachmentProvider 2015-01-07 00:16:37 +01:00
cketti c5ba202a56 Code style fixes 2015-01-07 00:13:28 +01:00
cketti 34b5d56ab1 Get rid of 'attachments' table 2015-01-06 23:59:58 +01:00
cketti 1a5ecfea1d Also delete local messages when using "clear messages" on an account
We have been throwing away all attachments already, so it doesn't make
too much sense to keep local messages. And when we're not keeping local
messages we can remove all entries from the 'threads' table.
2015-01-06 23:48:22 +01:00
cketti 30e37000f9 Remove remnants of the "headers" table 2015-01-06 21:36:31 +01:00
cketti d7edb0ed4f Minimal version that reconstructs original message from the database
This change breaks all kinds of things, e.g.
- deleting messages
- updating messages
- downloading attachments
- deleting attachments
- searching in message bodies
2015-01-06 03:20:38 +01:00
cketti 523ebd0f2a Remove 'dirty' check for LocalMessage 2015-01-05 02:25:17 +01:00
cketti 3eb25a011f Don't automatically create Message-ID when none is found 2015-01-05 02:25:17 +01:00
cketti abbad18283 Code style fixes 2015-01-05 00:45:05 +01:00
notfoss 4bc003e173 Add Zoho Mail (personal) to providers.xml
Added settings for Zoho Mail personal account (@zoho.com).
2015-01-03 16:43:01 +05:30
cketti ad8da49991 Remove unused code 2015-01-03 04:27:27 +01:00
cketti b6315b15b0 Fix equals() method to work with all objects 2015-01-03 04:10:15 +01:00
cketti 6804ee04e3 Fix some MS_SHOULD_BE_FINAL Findbugs warnings 2015-01-03 03:51:47 +01:00
cketti 65d2de0fcc Fix bug caused by edge case of Math.abs() 2015-01-03 03:51:47 +01:00
cketti 928c7f33a3 Add missing hashCode() method to SearchCondition 2015-01-03 03:51:47 +01:00
cketti b69bba01da Fix DM_BOXED_PRIMITIVE_FOR_PARSING findbugs warning 2015-01-03 02:02:54 +01:00
cketti 82736f3a8b Merge pull request #524 from k9mail/merge_pgp_mime_branch
Merge changes from PGP/MIME repository
2015-01-02 22:04:28 +01:00
m0viefreak e8c6a56fd2 Use correct sub-part of a multipart message when getting text.
946565347a passed 'this' to
getTextFromPart() which could be a multipart. This caused
all multipart messages to show 'No text' as the body.

Fix it by passing it the correct 'part' that was found.
2014-12-25 14:48:05 +01:00
cketti c96a11212e Update dependencies 2014-12-22 23:09:05 +01:00
cketti 6c172f94a1 Add missing global settings to settings export 2014-12-22 19:47:15 +01:00
Frank Du c473ddc90a Make sure to keep font meta info on view recycling 2014-12-20 14:50:15 -08:00
cketti 4f8fc5bc5b Merge remote-tracking branch 'k9mail_pgp_mime/master'
Fixed lots of conflicts
2014-12-20 08:07:46 +01:00
cketti 105bca735b Move 'mail' package to library project 2014-12-20 01:31:33 +01:00
Jan Berkel 6a24aca343 Move TracingPowerManager into mail package 2014-12-20 00:50:09 +01:00
cketti 1212f9d0f2 Move main application from root project to subproject 'k9mail' 2014-12-20 00:10:38 +01:00