Commit graph

1252 commits

Author SHA1 Message Date
cketti
72a664458e Remove StoreConfig.set*Folder() 2018-11-13 20:38:46 +01:00
cketti
5cd28280ca Update special folders when folders change on server 2018-11-13 20:38:45 +01:00
cketti
5e00abfaac Add support for SpecialFolderSelection to FolderListPreference 2018-11-13 20:38:45 +01:00
cketti
a519c91b64 Add SpecialFolderSelection to Account 2018-11-13 20:38:45 +01:00
cketti
4847c0fa31 Add FolderType support to (K9)BackendStorage 2018-11-13 16:57:32 +01:00
cketti
91ae94d432 Add FolderType support to (Local)Folder 2018-11-13 16:57:32 +01:00
cketti
fa1d6aab18 Remove EXTRA_SHOW_FOLDER_NONE from ChooseFolder 2018-11-11 23:28:41 +01:00
cketti
8a87437e98 Rewrite folder values in Storage database 2018-11-11 23:28:41 +01:00
cketti
a408a21c88 Change import/export settings descriptions for folder values 2018-11-11 23:28:41 +01:00
cketti
a1b48780fd Use null instead of special folder value K9.FOLDER_NONE ("-NONE-") 2018-11-11 23:28:41 +01:00
cketti
fe8d01dc32
Merge pull request #3699 from ojiofong/oji-notification-channel-from-ByteHamster
Add support for notification channels
2018-11-11 17:18:33 +01:00
cketti
272b2e3cc4 Extract migration logic from 'Storage' class 2018-11-10 20:18:15 +01:00
Oji Ofong
dbd1c254a5 Update channels in the background thread 2018-11-10 09:42:24 -05:00
Oji Ofong
a1b3cc8f1f Improve notification channel 2018-11-10 09:40:46 -05:00
cketti
9711b42412 Remove unused Folder.FolderType 2018-11-09 14:19:36 +01:00
ByteHamster
baa653ba3a Re-generate group if name was changed 2018-11-07 22:08:55 -05:00
ByteHamster
06bc5fdd40 Mocking UUID 2018-11-07 22:08:55 -05:00
ByteHamster
222fc0dcf8 Notification channels 2018-11-07 22:08:55 -05:00
cketti
0837cf5dcc Convert 'TextQuoteCreator' to Kotlin 2018-10-25 02:07:43 +02:00
cketti
101573c59f WIP: Renaming file 'TextQuoteCreator' with Kotlin extension 2018-10-25 01:45:56 +02:00
cketti
63b3379e5d Use TextQuoteCreator instances instead of static method 2018-10-25 01:41:00 +02:00
cketti
5aba2d0327 Convert 'QuoteHelper' to Kotlin 2018-10-25 01:32:40 +02:00
cketti
7652a247f0 WIP: Renaming file 'QuoteHelper' with Kotlin extension 2018-10-25 01:25:56 +02:00
cketti
99be379013 Use QuoteHelper instances instead of a static method 2018-10-25 01:25:26 +02:00
cketti
5374173233 Remove line wrapping when prefix-quoting
We're using "quoted-printable" for transport encoding. So manually
wrapping lines shouldn't be necessary.

See #3654
2018-10-25 01:14:13 +02:00
cketti
04111290fc Use Matcher.quoteReplacement() for escaping 2018-10-25 01:03:10 +02:00
cketti
ba7c8a77f9 Add line break after "header" when prefix-quoting text 2018-10-25 00:54:55 +02:00
cketti
b6b71cbf42 Don't strip \r from quoted text 2018-10-25 00:51:06 +02:00
cketti
1222a2730b Add (failing) tests for TextQuoteCreator 2018-10-25 00:50:23 +02:00
cketti
224174273c
Merge pull request #3650 from williamvds/drawer
Add preferences and unified inbox to drawer
2018-10-24 03:27:27 +02:00
williamvds
02b253b0f1
Detect and select unified inbox in drawer 2018-10-21 13:31:58 +01:00
cketti
b1cfa302ba Use different method to convert HTML to plain text
Html.fromHtml() exhibited some serious performance issues with certain
inputs.

See issue #3624
2018-10-03 12:23:50 +02:00
cketti
032c6b3ed9 Simplify NotificationActionCreator interface 2018-09-12 21:40:12 +02:00
cketti
cd08af2894
Merge pull request #3600 from k9mail/fix_reply_to_unencrypted_message
Fix bug where subject field isn't populated when replying to an unencrypted message
2018-09-11 00:54:09 +02:00
Oji
0eceb9bcc7 Expose package static methods in NotificationActionService 2018-09-10 17:12:04 -04:00
cketti
8835b1e485 Extract subject when constructing MessageViewInfo for unencrypted emails 2018-09-07 01:31:31 +02:00
cketti
0351dc8694 Hide 'upload sent messages' setting when Backend doesn't support uploads 2018-09-04 18:05:03 +02:00
cketti
7af007ad2f Add setting to disable uploading of sent messages
Some providers automatically add messages sent via their outgoing
server to the Sent folder.
2018-09-04 18:05:03 +02:00
cketti
de73504be0
Merge pull request #3581 from k9mail/encryption_extractor_interface
Extract database schema creation + EncryptionExtractor interface
2018-09-04 15:44:25 +02:00
cketti
cda778e491 Remove unused method Message.clone() 2018-09-03 01:17:25 +02:00
cketti
a8f41118e3 Add interface for detection of encrypted messages
This includes some capabilities that are not currently used by K-9 Mail,
e.g. the ability to supply additional data to be inserted into the
database.
2018-09-03 00:57:41 +02:00
cketti
18bbd76783 Add a way to inject SchemaDefinition into LocalStore 2018-09-03 00:57:41 +02:00
cketti
83b6ab0620
Merge pull request #3570 from k9mail/mime_parameter_decoder
Add proper header parameter parser/decoder
2018-09-03 00:43:30 +02:00
cketti
24b2fbcc9d
Merge pull request #3592 from k9mail/remove_unnecessary_type_casts
[Cleanup] Remove unnecessary type casts
2018-09-03 00:42:39 +02:00
BO41
96be7af3f6 Remove unnecessary type casts 2018-09-03 00:31:12 +02:00
cketti
56882dc6c3 Fix unresolved references in Javadoc comments 2018-09-03 00:13:58 +02:00
BO41
c043eb0df4 Replace explicit type arguments with <> 2018-09-02 23:35:09 +02:00
cketti
ffd57c4e86
Merge pull request #3589 from k9mail/BO41_code_cleanup
[Cleanup] Improve accessibility, correctness and performance
2018-09-02 23:04:02 +02:00
BO41
f24cb76d9e Improve accessibility, correctness and performance 2018-09-02 22:49:48 +02:00
cketti
ae76f07ada
Merge pull request #3588 from k9mail/simplify_if_statements
[Cleanup] Simplify if statements
2018-09-02 22:48:21 +02:00
BO41
86dde4dabf Remove unused imports 2018-09-02 22:31:34 +02:00
BO41
dbea2cafa6 Simplify if statements 2018-09-02 22:27:28 +02:00
cketti
9c9c9d475f Don't broadcast message details when message was removed
Turns out reading the message from the database after it has been
deleted doesn't work particularly well 🤦
2018-08-27 01:25:07 +02:00
cketti
5d98c15bce Use MimeParameterEncoder and MimeParameterDecoder in MimeMessageHelper 2018-08-26 18:09:29 +02:00
cketti
5f7dac4556 Remove unwarranted usage of MimeUtility.unfoldAndDecode() 2018-08-26 17:18:22 +02:00
cketti
c8de3e6a18 Create ControllerExtension to allow accessing MessagingController internals 2018-08-17 18:22:53 +02:00
cketti
ea07d248df Create MessagingController instance using Koin 2018-08-15 23:01:59 +02:00
M Madison Phillips
262e0840ba Update address validator to conform to RFC 5321 2018-08-09 18:12:20 +02:00
cketti
02db5651aa Add tests for K9BackendFolder.getMessageFlags() 2018-08-05 19:43:08 +02:00
cketti
880f00ac51 Extract code to decode flags column to separate function 2018-08-05 15:28:57 +02:00
morckx
229a0a03c9 Don't crash on empty flags 2018-08-05 14:50:47 +02:00
cketti
de61ec288c Use local_only column in FolderRepository 2018-07-23 14:25:30 +02:00
cketti
ee777e62eb Use local_only column for retrieving folders in K9BackendStorage 2018-07-23 14:25:30 +02:00
cketti
1f0f4285d2 Add support for local_only column to LocalFolder 2018-07-23 14:25:30 +02:00
cketti
f40e7378fb Add 'local_only' column to folders table 2018-07-23 14:25:29 +02:00
cketti
c8da50f945
Merge pull request #3521 from k9mail/folder_list_sync
Move folder list sync logic into Backend implementations
2018-07-23 13:24:29 +02:00
cketti
91164e04ed Make sure account display name is never null 2018-07-23 12:54:09 +02:00
cketti
de49c9d6c2 Move folder list sync logic into Backend implementations 2018-07-22 18:34:16 +02:00
cketti
dc785a8e92 Fix error handling when refreshing the folder list fails 2018-07-22 18:31:41 +02:00
cketti
87132562f8 Remove unused parameter 2018-07-22 18:31:41 +02:00
cketti
b35074315c
Merge pull request #3519 from k9mail/add_folder_extra_values
Allow backend code to store additional per-account and per-folder data
2018-07-22 18:21:51 +02:00
cketti
5104780468 Update BackendStorage to allow getting/setting extra values 2018-07-22 18:06:21 +02:00
cketti
e56b03d7bc Create account_extra_values table 2018-07-22 18:06:21 +02:00
cketti
c91b482d30 Only reuse Backend instances when server settings haven't changed 2018-07-21 16:40:47 +02:00
ByteHamster
4ecb0d14e4 Cache contact names 2018-07-19 16:21:01 +02:00
cketti
0af83029cc Change ServerSettings#type to a String 2018-07-19 12:40:57 +02:00
cketti
f046313d98 Remove knowledge of store URI from :mail:protocols:imap module 2018-07-17 20:39:18 +02:00
cketti
4e22b1c509 Remove ImapStore.createUri/decodeUri 2018-07-17 20:39:18 +02:00
cketti
fe8477cd9b Make k9mail module specify which Backend implementations to include 2018-07-15 20:45:05 +02:00
cketti
ec9ba959f8 Remove TransportUris 2018-07-15 20:08:11 +02:00
cketti
e4b6175c45 Remove RemoteStoreManager 2018-07-15 18:36:49 +02:00
cketti
6bb8805aa9 Update BackendFolder to allow getting/setting extra folder values 2018-07-15 15:29:52 +02:00
cketti
4a0b761867 Create folder_extra_values table 2018-07-15 15:12:25 +02:00
cketti
60bfe335aa Make Autocrypt code use MessagingController instead of TransportProvider
This also allows us to get rid of TransportProvider.
2018-07-11 20:15:00 +02:00
cketti
e2c09e4155 Make account setup code use Backend to check outgoing server settings 2018-07-11 19:57:51 +02:00
cketti
a63fcfd7fc Rename Backend.checkServerSettings() to checkIncomingServerSettings() 2018-07-11 19:45:18 +02:00
cketti
6e18375d19 Add send message functionality to Backend interface 2018-07-11 19:41:13 +02:00
cketti
b6f59f40e1 Move erroneously moved XML resources from ui module back to core module 2018-07-08 18:36:37 +02:00
cketti
f6713ea55a Clean up modules' dependencies 2018-07-08 16:06:19 +02:00
cketti
f63b4097a1 Remove core module's dependency on HoloColorPicker 2018-07-08 16:06:19 +02:00
cketti
228bba0bf1 Move almost all Android resources from core module to ui module 2018-07-08 00:58:59 +02:00
cketti
89c5b6d656 Remove string references from database migrations 2018-07-08 00:41:27 +02:00
cketti
5edccbec0c Remove string references from IdentitySettings 2018-07-08 00:23:30 +02:00
cketti
c73719fa86 Create separate resource files for settings values 2018-07-08 00:15:39 +02:00
cketti
408f725b61 Remove string references from SearchAccount 2018-07-07 19:09:31 +02:00
cketti
c0d0a437c8 Remove string references from TextQuoteCreator 2018-07-07 18:38:00 +02:00
cketti
cfa6e678cb Remove string references from HtmlQuoteCreator 2018-07-07 18:22:28 +02:00
cketti
b2a11c6136 Remove string references from MessageBuilder classes 2018-07-07 18:12:50 +02:00
cketti
c6b804f0f5 Remove string references from MessageViewInfoExtractor 2018-07-07 00:09:03 +02:00
cketti
5393404513 Remove Android resource references from MessageHelper 2018-07-06 23:41:03 +02:00
cketti
c44bdfbb7b Remove Android resource references from StorageManager 2018-07-06 23:27:27 +02:00
cketti
87d0e05a92 Move helper classes to ui module 2018-07-06 17:24:16 +02:00
cketti
63142f222a Remove Android resource references from MessagingController 2018-07-06 17:13:01 +02:00
cketti
a4e8046217 Remove Android resource references from AutocryptTransferMessageCreator 2018-07-06 16:50:47 +02:00
cketti
548f908d7c Remove Android resource references from K9 2018-07-06 16:41:36 +02:00
cketti
de2b99a066 Remove all string references from Account 2018-07-06 02:02:57 +02:00
cketti
ae6c8edf01 Remove string references from Account.SortType 2018-07-05 22:57:45 +02:00
cketti
bfd46acc9f Create NotificationResourceProvider to inject Android resources 2018-07-05 13:49:59 +02:00
cketti
154ffc51f6 Change DeviceNotifications to use dependency injection 2018-07-04 19:37:39 +02:00
cketti
1854191290 Change NewMailNotifications to use dependency injection 2018-07-04 19:26:08 +02:00
cketti
46f7b6e008 Change NotificationController to use dependency injection 2018-07-04 19:26:08 +02:00
cketti
6640b91a96 Move common code from NotificationController to NotificationHelper 2018-07-04 19:26:08 +02:00
cketti
c195e46222 Provide NotificationController via dependency injection 2018-07-04 18:20:58 +02:00
cketti
f2b3f5b7cb Remove unused method parameters 2018-07-04 17:59:35 +02:00
cketti
b46594fed4 Move UI code to ui module 2018-07-02 16:19:21 +02:00
cketti
0403523fab Remove Account's dependency on CheckDirection 2018-07-01 18:49:22 +02:00
cketti
f16b65edd6 Create Attachment interface for MessageBuilder 2018-07-01 18:49:22 +02:00
cketti
4f4918c39b Move MessageCryptoAnnotations to a different package 2018-07-01 18:46:17 +02:00
cketti
a2cf5a08c1 Remove PgpMessageBuilder's dependency on ComposeCryptoStatus 2018-07-01 18:46:02 +02:00
cketti
a02a5d5f03 Remove LocalFolder's dependency on the Search Activity 2018-07-01 01:23:46 +02:00
cketti
ac3cb66ce6 Move ContactPicture to different package 2018-07-01 01:04:09 +02:00
cketti
b30c2f7811 Remove Utility's dependency on ContactBadge 2018-07-01 01:03:38 +02:00
cketti
d5437270a6 Move MessageInfoHolder to k9mail module 2018-07-01 00:25:59 +02:00
cketti
aa32778e55 Remove Core's dependency on MessageCompose 2018-06-30 22:08:02 +02:00
cketti
f284664f01 Remove ColorChip functionality that isn't used 2018-06-30 21:34:20 +02:00
cketti
c5d1d12e94 Extract ColorChip creation code to ColorChipProvider 2018-06-30 21:26:24 +02:00
cketti
bd0449c48a Move K9ChooserTargetService to k9mail module 2018-06-30 20:47:23 +02:00
cketti
0747387948 Remove dependency on AccountSetupCheckSettings.CheckDirection 2018-06-30 20:23:06 +02:00
cketti
d7ab91afa5 Remove unnecessary dependency on ActivityListener 2018-06-30 20:21:09 +02:00
cketti
314ffe5a37 Move MessageReference to a different package 2018-06-30 19:57:13 +02:00
cketti
0dd464d9ad
Merge pull request #3478 from k9mail/decouple_notification_code
Decouple notification code from Activities
2018-06-30 19:37:12 +02:00
cketti
ede38b517d
Merge pull request #3477 from k9mail/move_to_k9mail_module
Move interface for third-party apps to k9mail module
2018-06-30 19:23:43 +02:00
cketti
1ac3c3a5eb Move K9NotificationActionCreator to k9mail module 2018-06-30 13:48:14 +02:00
cketti
dfad1d1662 Make NotificationActionCreator an interface 2018-06-30 13:29:48 +02:00
cketti
98ce08bb79 Make NotificationActionCreator the only class referencing activities 2018-06-30 13:19:55 +02:00
cketti
1f7d3ee307 Move MessageProvider to k9mail module 2018-06-30 12:36:39 +02:00
cketti
9dd3567c64 Move remote control functionality to k9mail module 2018-06-30 12:35:29 +02:00
cketti
f72cc7cc97
Merge pull request #3475 from k9mail/move_to_k9mail_module
Move home screen widgets to k9mail module
2018-06-30 12:19:29 +02:00
cketti
c1a5a60cf1
Merge pull request #3468 from k9mail/fix_quiet_time
Fix "Disable notifications" during Quiet Time
2018-06-29 17:04:07 +02:00
cketti
9bb9e338f3 Move unread widget to :app:k9mail 2018-06-29 16:31:39 +02:00
cketti
71c79595c9 Move UnreadWidgetProvider to widget.unread package 2018-06-24 01:26:00 +02:00
cketti
9319d36d24 Move message list widget code to :app:k9mail 2018-06-24 01:21:57 +02:00
cketti
c757bf1076 Fix quiet time support when checking whether to notify for new messages 2018-06-24 00:08:29 +02:00
cketti
93eb2dbd9b Fix logic bug when saving "disable notifications during quiet time" 2018-06-24 00:06:11 +02:00
Hicham Boushaba
4fc74a907a Add unit tests for EmailAddressValidator 2018-06-23 21:40:23 +02:00
Hicham Boushaba
f994562b47 Validate hostname part of email address according to rfc2396 2018-06-23 21:38:34 +02:00
Hicham Boushaba
fe0e55f49c Convert EmailAddressValidator to kotlin 2018-06-23 21:37:32 +02:00
cketti
644cff6d28 Create Application class in :app:k9mail module
This also moves the code to send broadcast Intents for external apps
to the :app:k9mail module.
2018-06-23 21:13:02 +02:00
cketti
89ae84e693 Move functionality from classes DI and K9 to new Core class 2018-06-23 01:46:18 +02:00
cketti
e0abd9e07f Get rid of K9.app 2018-06-23 01:46:18 +02:00
cketti
d64e4b9a5c Get rid of Globals class 2018-06-23 01:46:18 +02:00
cketti
02c0b605d5 Move all code to :app:core Gradle module
The idea is to later move the UI code back to the :app:k9mail module.
For now there are too many references from the "core" code to UI
components.
2018-06-22 02:09:10 +02:00