Commit graph

1632 commits

Author SHA1 Message Date
cketti
f91bac01d7 Update translations 2022-10-06 14:44:54 +02:00
cketti
2aee9fb56b Collapse search view and finish action mode when drawer was opened 2022-10-06 13:10:03 +02:00
cketti
f206f7e8b6 Remove help text for keyboard shortcuts
The text in Toasts seems to be limited to two lines on modern Android versions. The "feature" is also not very discoverable. I don't think anyone will miss this.
2022-10-06 13:08:35 +02:00
cketti
6d16698eeb Read account default colors from resources 2022-10-05 15:59:29 +02:00
cketti
620f9e35c0 Make background colors of the contact picture fallback part of the theme 2022-10-05 15:59:29 +02:00
cketti
d82bc5844e Create resource file for material colors 2022-10-05 15:59:29 +02:00
cketti
88c1655157 Debounce clicks to open a message or thread 2022-10-05 15:28:49 +02:00
cketti
25863d2d74 Ignore message click events on an inactive MessageListFragment 2022-10-05 15:28:49 +02:00
cketti
8bc631dbda Mark MessageListFragment as inactive when it moves to the back stack 2022-10-05 15:28:49 +02:00
cketti
6db5f09ddf Set app theme before the first Activity is started 2022-10-05 12:15:53 +02:00
cketti
3d03d0f953 Change message list divider to follow the views opacity 2022-09-30 19:00:44 +02:00
cketti
f0bdda63ff Version 6.307 2022-09-26 18:50:23 +02:00
cketti
ef23c076e4 Update translations 2022-09-26 17:58:24 +02:00
cketti
11c27d7fe9 Use proper theme attribute for the background of regular message list items 2022-09-26 17:39:48 +02:00
cketti
3dc9dd2629 Enable nonTransitiveRClass=true 2022-09-26 16:51:50 +02:00
cketti
ee3094d7fe Version 6.306 2022-09-23 11:11:32 +02:00
cketti
2991b4b83e Remove Iconics and FontAwesome 2022-09-22 16:04:32 +02:00
cketti
46c435ab08 Restore previous logic to select the next message after deleting the current one 2022-09-22 13:29:47 +02:00
cketti
c72236b7f3 Change SearchView initialization 2022-09-22 13:14:42 +02:00
cketti
7dbc5cf6c5 Correctly handle the message list footer being removed 2022-09-22 12:42:40 +02:00
cketti
b3c8e85918 Remove volume key navigation for list views 2022-09-22 12:30:24 +02:00
cketti
4635551e69 Update SearchPreference to version 2.3.0 2022-09-21 12:17:36 +02:00
cketti
66739b4b70 Switch to using 'namespace' property in build.gradle 2022-09-20 14:53:19 +02:00
cketti
2edf42f9f8 Switch message list from ListView to RecyclerView 2022-09-20 14:01:01 +02:00
cketti
2368973784 Only show account chip in message view when showing it in the message list 2022-09-20 12:59:39 +02:00
cketti
c3c6c25d88 Fix layout when account chip is hidden 2022-09-20 12:59:39 +02:00
cketti
9d058e71be Merge branch 'main' into message-view-redesign 2022-09-20 12:59:13 +02:00
Sandelinos
c141c338af Add monochrome icon 2022-09-18 23:46:29 +03:00
cketti
f6d819761a Version 6.305 2022-09-17 12:14:15 +02:00
cketti
165efa598a Fix crashes where `MessageList.searchView´ is accessed before it was initialized 2022-09-17 11:47:20 +02:00
cketti
54052990a8 Version 6.304 2022-09-16 13:33:01 +02:00
cketti
7aa0c77b4a Change message view header layout
Co-authored-by: ByteHamster <info@bytehamster.com>
2022-09-15 20:07:04 +02:00
cketti
a31db513b9 For now always show contact picture in message view 2022-09-15 13:36:00 +02:00
cketti
d585e2b548 Clean up code a bit 2022-09-15 13:35:57 +02:00
cketti
94ddf85ce2 Remove code that we won't need in the future
Co-authored-by: ByteHamster <info@bytehamster.com>
2022-09-15 13:32:27 +02:00
cketti
029a8eb07e Don't allow showing the password without authentication after an orientation change 2022-09-12 14:06:50 +02:00
cketti
a3be470b45 Allow unmasking when the original password was removed/replaced 2022-09-12 14:06:50 +02:00
cketti
ba9d9cd612 Get rid of (deprecation) warnings 2022-09-12 14:06:50 +02:00
cketti
20e70f8f20 Try to avoid using the list position whenever possible 2022-09-12 13:51:47 +02:00
cketti
8a73c93134 Move code to select message list items to MessageListAdapter 2022-09-12 13:51:47 +02:00
cketti
7545ed85b4
Merge branch 'main' into view_pager_margin 2022-09-12 13:08:52 +02:00
cketti
af9c598f31 Change the separator between message view pages 2022-09-11 16:10:43 +02:00
cketti
60e33e529d Save/restore search view state in MessageList 2022-09-09 23:27:54 +02:00
cketti
f3c3b579fe Reuse existing SearchView when recreating the toolbar menu 2022-09-09 23:00:15 +02:00
cketti
6d904b6647 Version 6.303 2022-09-08 12:08:11 +02:00
cketti
48431e2c40 Ignore toolbar actions in message view while message is still loading 2022-09-08 11:39:10 +02:00
PatrickMis
dfec81c877 Make ktlint happy 2022-09-05 16:04:52 +02:00
cketti
0286afa6c8 Version 6.302 2022-09-05 13:33:10 +02:00
cketti
eb2ba52e1a
Merge pull request #6272 from thundernest/update_translations
Update translations
2022-09-05 12:17:18 +02:00
cketti
944547a532 Defer sorting opened messages to their new position in the message list
For the last N displayed messages we remember the original 'read' and 'starred' state of the messages. We pass this information to `MessageListLoader` so messages can be sorted according to these remembered values and not the current state. This way messages, that are marked as read/unread or starred/not starred while being displayed, won't immediately change position in the message list if the list is sorted by these fields.
The main benefit is that the swipe to next/previous message feature will work in a less surprising way.
2022-09-03 16:48:35 +02:00
cketti
83b50c6edb Update translations 2022-09-03 15:24:03 +02:00
cketti
ab9ac67a57 Remove redundant calls to MessageListFragment.setActiveMessage() 2022-09-02 15:28:00 +02:00
cketti
bdef79a6fc Be more selective when setting the "active message" for the message list 2022-09-02 15:17:21 +02:00
cketti
7ea928bba5 Finally get rid of EmailProvider 2022-08-31 17:50:00 +02:00
cketti
6be1eb11dc Use MessageRepository instead of EmailProvider in MessageListLoader 2022-08-31 17:50:00 +02:00
cketti
e9b91f3654 Add MessageListRepository
Remove the "message list changed" notification mechanism provided by `EmailProvider` and use a simple callback mechanism instead.
2022-08-31 17:50:00 +02:00
cketti
18b177e18e Remove MessageListItem.position 2022-08-30 16:32:41 +02:00
cketti
fd396b183d Don't crash when trying to access attachment (meta) data 2022-08-25 16:01:17 +02:00
cketti
03189fae46 Replace usages of the deprecated RuntimeEnvironment.application 2022-08-09 18:33:18 +02:00
cketti
46ca47facd Remove unused parameter 2022-08-09 18:18:31 +02:00
cketti
eb12ad538d Remove unused functionality 2022-08-09 17:45:03 +02:00
cketti
9f0d2ada3c Remove unnecessary else cases in when expressions 2022-08-09 17:42:30 +02:00
cketti
28f7318649 Remove unused parameter 2022-08-09 17:37:36 +02:00
cketti
a807373e99 Make sure overridden methods use same parameter names as super class 2022-08-09 17:28:43 +02:00
cketti
867733c25d Update translations 2022-08-09 17:02:01 +02:00
cketti
62b7051e30 Add position information to format string parameters 2022-08-09 15:59:58 +02:00
cketti
77f9404c47 Version 6.301 2022-08-09 11:59:35 +02:00
cketti
098e89b297 Update translations 2022-08-09 11:42:36 +02:00
cketti
14d5ce7ee3 Revert "Update MaterialDrawer to version 9.0.1"
This reverts commit 8b2fbd0060.
2022-08-07 19:57:31 +02:00
cketti
be649e3ba0 Update Koin to version 3.2.0 2022-08-05 23:51:32 +02:00
cketti
8b2fbd0060 Update MaterialDrawer to version 9.0.1 2022-08-05 22:56:48 +02:00
cketti
5751d4c08b Update SearchPreference to version 2.2.1 2022-08-05 22:43:43 +02:00
cketti
c2aea63223 Update Turbine to version 0.9.0 2022-08-05 21:40:19 +02:00
cketti
d26921e99c Add manifest placeholder to :app:ui:legacy module 2022-08-05 15:59:16 +02:00
cketti
38019dc531
Merge pull request #6222 from thundernest/update_kotlin
Update Kotlin to version 1.7.10
2022-08-05 15:58:19 +02:00
cketti
f2ff826675 Update Kotlin to version 1.7.10 2022-08-05 14:19:17 +02:00
cketti
bf41af8cae Fix crash in MessageViewContainerFragment.onPendingIntentResult()
`onPendingIntentResult()` is called before the fragment is in the RESUMED state. This lead to an exception in the `messageViewFragment` property getter when it was checking the value of `isResumed`.
2022-08-05 13:52:10 +02:00
cketti
ee7dcd07c6 Version 6.300 2022-08-04 17:27:43 +02:00
cketti
8b546cadd6 Scroll message list to active message 2022-08-03 21:44:35 +02:00
cketti
6992cc732f Handle view pager swipe vs. WebView horizontal scrolling 2022-08-03 21:37:05 +02:00
cketti
3e90e92b2e Only mark a message as read when it is the active message
Previously we marked a message as read when loading it for viewing. But with swiping between messages we could now load a message before it is considered the active message.
2022-08-03 21:37:05 +02:00
cketti
de6d4197f2 Add basic support for swiping between messages 2022-08-03 21:37:05 +02:00
cketti
16ae99ac09 Fix initialization problems with MessageListFragment and MessageViewFragment 2022-08-03 17:30:07 +02:00
cketti
d014c2f7f3 Fix nullability of parameter 2022-07-29 15:29:32 +02:00
cketti
bfdc0eb04c Convert MessageContainerView to Kotlin 2022-07-29 11:34:52 +02:00
cketti
87dbcfecc5 Rename .java to .kt 2022-07-28 18:44:34 +02:00
cketti
ec80646b6c Simplify message_container layout 2022-07-28 18:02:22 +02:00
cketti
66ebddbd1a Remove unused code 2022-07-28 17:41:16 +02:00
cketti
b05309f316 Convert MessageWebView to Kotlin 2022-07-28 16:05:32 +02:00
cketti
b35e6ac269 Rename .java to .kt 2022-07-28 16:05:32 +02:00
cketti
f16522cdc4 Remove unused code 2022-07-28 15:46:39 +02:00
cketti
1c1dbfbb1e
Merge pull request #6187 from Croydon/url-updates
Update GitHub URLs to new location
2022-07-27 16:13:08 +02:00
cketti
b1083bef93 Merge branch '6.2-MAINT' into main 2022-07-26 17:15:54 +02:00
cketti
6454d350fb Version Version 6.202 2022-07-26 17:01:41 +02:00
r.zarchi
8fc3e4b1b9 Cc and Bcc text fields checked when handling hide empty field 2022-07-26 16:26:47 +02:00
r.zarchi
f45c5024ca searchEnabled set to false when expanding the search view after the rotate 2022-07-26 16:26:42 +02:00
cketti
fd006bdb2f Add Western Frisian translation 2022-07-26 12:51:17 +02:00
Croydon
c8db3b350a Update GitHub URLs to new location 2022-07-25 20:07:23 +02:00
cketti
351874b9b0
Merge pull request #6185 from arissystem/Issue-6184
Cc and Bcc text fields checked when handling hide empty field
2022-07-25 11:03:56 +02:00
r.zarchi
d27a566a32 Cc and Bcc text fields checked when handling hide empty field 2022-07-25 13:06:03 +04:30
r.zarchi
70f5a589fa searchEnabled set to false when expanding the search view after the rotate 2022-07-25 10:27:40 +04:30
cketti
cc5fc8e2b0 Remove unused code 2022-07-21 13:23:23 +02:00
cketti
3fce00902a Don't invalidate the menu in MessageList 2022-07-21 13:23:23 +02:00
cketti
8214ef3fb7 Move code to disable the delete menu item to MessageViewFragment 2022-07-21 12:21:46 +02:00
cketti
1cb0d15398 Move "search everywhere" menu handling to MessageListFragment 2022-07-21 12:03:53 +02:00
cketti
213cda8881 Rename MessageListFragment.onListVisible() to isActive
Use the same name for the same concept in `MessageListFragment` and `MessageViewFragment`.
2022-07-21 11:50:26 +02:00
cketti
17c51a4900 Remove next/previous entries from message view menu 2022-07-21 11:11:22 +02:00
cketti
995703cc5f Set the "message list visible" flag when the back stack has changed 2022-07-21 11:11:22 +02:00
cketti
d9803c5987 Fix visibility of compose action during transitions 2022-07-21 11:11:22 +02:00
cketti
9c8ac61ed6 Set MessageViewFragment to "active" when its menu should be displayed 2022-07-21 11:11:22 +02:00
cketti
59aac05a8c Initialize MessageViewFragment.messageReference earlier 2022-07-20 20:27:33 +02:00
cketti
0bb4695d4b Move message view menu item handling code to MessageViewFragment 2022-07-20 20:27:33 +02:00
cketti
4d7a40b520 Reformat message_list_option.xml 2022-07-20 20:27:33 +02:00
cketti
03de64e84c Move code to prepare the message view menu to MessageViewFragment 2022-07-20 20:27:33 +02:00
cketti
87dbccdb51 Convert MessageViewFragment to Kotlin 2022-07-20 19:57:05 +02:00
cketti
48847e17ea Rename .java to .kt 2022-07-20 14:19:31 +02:00
cketti
42daa056fd Move message list menu item handling code to MessageListFragment 2022-07-19 15:33:32 +02:00
cketti
9f45fe1d46 Refactor MessageListFragment.onOptionsItemSelected() 2022-07-19 15:13:29 +02:00
cketti
4486782166 Move code to prepare the message list menu to MessageListFragment 2022-07-19 14:58:13 +02:00
cketti
1de5fa8cf2 Mark message list as visible when listing messages in a thread 2022-07-19 14:56:57 +02:00
cketti
185a08de0b Remove custom updateMenu() mechanism 2022-07-19 13:00:23 +02:00
cketti
52b22ba2ca Call invalidateMenu() instead of directly updating the current Menu 2022-07-19 12:54:44 +02:00
cketti
74a58345d8 Version 6.201 2022-07-15 18:38:36 +02:00
cketti
5ef1930a59 Update translations 2022-07-14 12:57:50 +02:00
cketti
15b360127e
Merge pull request #6162 from thundernest/fix_ghost_message_list_reloaded
Another attempt at fixing the ghost message list
2022-07-14 12:41:51 +02:00
cketti
f0e81c6d4b Use extension function for fragment transaction 2022-07-13 20:56:16 +02:00
cketti
f78045c01f Change method to clear the fragment back stack in MessageList 2022-07-13 20:54:13 +02:00
cketti
15c2402260 Remove unnecessary parameter 2022-07-13 20:39:37 +02:00
cketti
d396e66c57 Set the "message list visible" flag when opening a folder from the drawer 2022-07-13 11:54:44 +02:00
cketti
1ff327eda8 Display an error notification when creating a notification fails
When importing settings from another device, we could end up with a notification channel that references a non-existing notification sound. In that case creating a notification for a new message will lead to a `SecurityException`. We catch this case and display an error notification instead. This is fine because we create the "Miscellaneous" notification channel without a notification sound.
2022-07-11 18:06:22 +02:00
cketti
465be90a5a Version 6.200 2022-07-08 11:01:13 +02:00
cketti
f8573017c4 Version 6.101 2022-07-06 14:28:30 +02:00
cketti
a9ff485ad2 Update translations 2022-07-05 21:08:21 +02:00
cketti
a101609987 Add link to user manual to settings screen 2022-07-05 16:26:36 +02:00
cketti
020b29a277 Change "User forum" in settings to "Get help" 2022-07-05 16:24:05 +02:00
cketti
225c579d77 Add "AppAuth for Android" to About screen 2022-07-05 15:26:09 +02:00
cketti
38a9f579be
Merge pull request #6144 from thundernest/GH-6141_fix_action_mode
Fix action mode when switching from split view to message view
2022-07-05 13:53:39 +02:00
r.zarchi
8cb62434b9 computing Select all visibility each time we rotate the device 2022-07-05 14:42:40 +04:30
cketti
836c467282 Fix action mode when switching from split view to message view 2022-07-04 17:20:27 +02:00
cketti
d7b928bd5d Update link to point to k9mail.app 2022-07-04 15:53:17 +02:00
cketti
06a537b16d Version 6.100 2022-06-15 15:39:13 +02:00
cketti
9f1d3d0a73 Update translations 2022-06-15 13:45:23 +02:00
cketti
971596a485 Display spinning progress indicator while the OAuth flow is running 2022-06-10 14:44:18 +02:00
Olivier Blin
4c937ad7a6 Move redirectUri in OAuthConfiguration
Not all providers accept the redirect URI Google requires Android apps to use.
2022-06-08 20:28:08 +02:00
cketti
9ae7d27e79 Add support for OAuth flow after settings import 2022-06-07 15:53:37 +02:00
cketti
d08aa55853 Add proper way to retrieve OAuth credentials 2022-06-05 16:35:39 +02:00
cketti
d4883d1921 Add "Sign in with Google" button
This flow is not a great user experience. But it's the fastest way I could think of to add the button that was requested by Google.
2022-06-03 23:25:58 +02:00
cketti
5065afef88
Merge pull request #6082 from k9mail/oauth_setup_flow
Add support for OAuth 2.0 (Gmail)
2022-05-28 15:44:22 +02:00
cketti
7e5c6b05c4
Merge pull request #6051 from TheLastProject/feature/2943
Add support for List-Unsubscribe
2022-05-28 14:28:35 +02:00
cketti
a193643591 Update AttachmentPresenterTest 2022-05-28 14:09:38 +02:00
Sylvia van Os
6081b58212 Add Unsubscribe toolbar option 2022-05-28 14:07:08 +02:00
Mihail Mitrofanov
f0535c6217 The back button now appears in AccountSetupIncoming and AccountSetupOutgoing only in edit mode
* Condition Intent.ACTION_EDIT.equals(getIntent().getAction());
2022-05-24 15:35:57 +02:00
cketti
14a7f1b0d3 Add support for OAuth 2.0 (Gmail) 2022-05-23 22:26:49 +02:00
Mihail Mitrofanov
8fa9b7fbe6 Fix #5983. Missing back button
Add back button in below activities:

* AccountSetupComposition (item "Composition defaults")
* AccountSetupOutgoing (item "Outgoing server")
* AccountSetupIncoming (item "Incoming server")
2022-05-23 16:22:20 +02:00
cketti
f71615f6aa Convert AccountSetupCheckSettings to Kotlin 2022-05-21 19:59:17 +02:00
cketti
af2d031385 Rename .java to .kt 2022-05-21 19:40:54 +02:00
cketti
fa803526d2 Convert AccountSetupBasics to Kotlin 2022-05-20 23:18:08 +02:00
cketti
bf5924d288 Rename .java to .kt 2022-05-18 17:46:21 +02:00
cketti
ad337c0395 Move mime type utility functions to :k9mail:app:core 2022-05-02 14:41:55 +02:00
cketti
53ea4fcc2d Silently ignore the APG crypto provider if found 2022-04-25 23:35:48 +02:00
cketti
9dc86ba522
Merge pull request #6019 from k9mail/simplify_imap_compression_setting
Simplify IMAP compression setting
2022-04-20 17:06:46 +02:00
cketti
eb305db65d
Merge pull request #6008 from arissystem/Issue-6007
Disable messageview_show_next item when messageview_return_to_list is checked
2022-04-20 14:11:10 +02:00
cketti
a042e66367 Merge branch '6.0-MAINT' into main 2022-04-20 14:06:35 +02:00
cketti
0a8f9b45f2 Version 6.000 2022-04-17 20:21:06 +02:00
cketti
903d0f43c4 Change Account to use a single setting for IMAP compression 2022-04-12 21:58:15 +02:00
cketti
0a60b7ce21 Simplify UI to configure IMAP compression 2022-04-12 21:58:15 +02:00
cketti
391d45d52b Merge branch '6.0-MAINT' into main 2022-04-12 00:23:08 +02:00
cketti
58b4cb02a9 Version 5.916 2022-04-12 00:05:37 +02:00
cketti
31860a209e Fix usage of ContentResolver.openOutputStream() 2022-04-11 17:40:36 +02:00
cketti
dc9e667d53
Merge pull request #6006 from arissystem/issue-6004
Save and restore activeMessages in savedInstanceState to avoid NullPointerException
2022-04-11 16:29:09 +02:00
Alexandre
0dbca2dddf Append a space to » and › in messages list. 2022-04-11 15:13:54 +02:00
r.zarchi
37bf6965d6 Disable messageview_show_next item when messageview_return_to_list is checked 2022-04-11 11:09:29 +04:30
r.zarchi
85a19ccb2b Save and restore activeMessages in savedInstanceState to avoid NullPointerException when rotating 2022-04-10 11:48:41 +04:30
cketti
d9153f4c20 Version 5.915 2022-04-06 17:39:51 +02:00
cketti
7f57fa286c Update translations 2022-04-06 16:50:45 +02:00
cketti
0c381c2bcd
Merge pull request #6002 from k9mail/Issue-5961
Fix issues when switching between LTR and RTL languages
2022-04-06 16:05:14 +02:00
cketti
d6f218b3ec
Merge pull request #6000 from k9mail/fix_update_notification_preferences
Fix reading notification settings from `NotificationChannel`
2022-04-06 15:59:45 +02:00
cketti
bf8ab4e6cf
Merge pull request #5998 from arissystem/Issue-5961
Activity recreate method changed because it didn't work properly on some Android versions
2022-04-05 16:48:20 +02:00
cketti
685374dad8 Explicitly set the layout direction on Android 12+ 2022-04-05 16:37:57 +02:00
cketti
49160cb1a9 Always use ActivityCompat.recreate() 2022-04-05 15:15:38 +02:00
r.zarchi
c3d5928c1f Activity recreate method changed because it didn't work properly on Android older than 9 2022-04-05 10:42:18 +04:30
cketti
f30a8ca3bb Use NotificationSettingsUpdater in AccountSettingsFragment 2022-04-04 18:53:10 +02:00
cketti
0e78b8aae6 Version 5.914 2022-03-24 18:41:05 +01:00
cketti
2483b975b9 Update translations 2022-03-24 18:04:44 +01:00
cketti
d53dc73e07
Merge pull request #5979 from k9mail/GH-5978_fix_folder_not_found_crash
Avoid crash when trying to open non-existent folder
2022-03-24 17:19:16 +01:00
cketti
322c8be4ae Avoid crash when trying to open non-existent folder
For now we load the default folder instead.
2022-03-21 18:48:17 +01:00
cketti
0f3df9d2e2 Avoid UninitializedPropertyAccessException 2022-03-21 17:54:45 +01:00
cketti
372252710d Update name/description of notification channels when app locale changes 2022-03-17 18:35:59 +01:00
cketti
40e446c442 Version 5.913 2022-03-11 19:30:13 +01:00
cketti
09ebe08f33 Update translations 2022-03-11 18:58:42 +01:00
cketti
803e388b90 Extract logic to convert system vibration pattern into NotificationVibrationDecoder 2022-03-10 16:06:46 +01:00
cketti
25c0e4af43 Extract vibration settings to separate class NotificationVibration 2022-03-09 22:35:13 +01:00
cketti
f3241622d5 Avoid race condition when selecting a notification sound 2022-03-08 23:51:45 +01:00
cketti
4581bf3f8b Update SearchPreference to version 2.1.0 2022-03-04 00:55:16 +01:00
cketti
eb1ea4f246 Update MaterialDrawer to version 8.4.5 2022-03-04 00:55:16 +01:00
cketti
7814b138d3 Update AndroidX Preference to version 1.2.0 2022-03-04 00:55:16 +01:00
cketti
c34340e14f Update AndroidX Navigation to version 2.4.1 2022-03-04 00:55:16 +01:00
cketti
4c67bbd156 Update kotlinx-coroutines to version 1.6.0 2022-03-03 16:52:44 +01:00
cketti
dea6bf1f01 Don't create notifications when manually refreshing the message list 2022-02-24 00:05:51 +01:00
cketti
b165aeaf81 K-9 Mail 5.912 2022-02-22 21:47:45 +01:00