Commit graph

1668 commits

Author SHA1 Message Date
cketti
ef111af4ee Merge branch 'main' into message-view-redesign 2022-12-15 16:02:10 +01:00
mhfarzaneganbb
75e4be161a Remove font size settings for account list and folder list 2022-12-15 12:06:12 +01:00
cketti
dc7c5e8018 Use CoordinatorLayout for better SnackBar behavior
Anchoring the SnackBar to the CoordinatorLayout gives us:
- swipe to dismiss
- drawer being drawn on top of the SnackBar
2022-12-12 16:41:02 +01:00
cketti
462d64b6b8 Ignore WebView's scroll state when swipe gesture started in other view
We only consider a gesture as swipe gesture for moving to the previous or next message when the WebView can't be scrolled further in that direction. This is the correct behavior when the swipe gesture was started inside the WebView. However, the WebView's scroll state should be ignored when the swipe gesture was started e.g. in the message header. In those cases we always want to swipe to the next/previous message.
2022-12-12 15:55:14 +01:00
cketti
e71b4bcb90 Sort list of folders in account settings 2022-12-12 15:02:22 +01:00
Goooler
65e07cba13 Disable buildFeatures by default to speed up builds 2022-12-07 19:21:11 +01:00
Goooler
be9b4ef4aa Configure android extensions in subprojects 2022-12-07 19:04:23 +01:00
cketti
039cc957f4 Add RecipientNamesView to display the recipient names 2022-12-05 21:11:43 +01:00
cketti
a1a1a1d4fb Add DisplayRecipientsExtractor to extract recipient names from a message 2022-12-05 16:41:09 +01:00
cketti
399ff52840
Merge pull request #6497 from thundernest/mdc_theme
Switch to MaterialComponents themes
2022-11-28 19:00:23 +01:00
cketti
77756e56da Add support for search in recipient addresses 2022-11-28 18:16:45 +01:00
cketti
07a23d41b9 Tweak section headers in about screen
Use same style that is used in the settings screens.
2022-11-28 17:37:59 +01:00
cketti
72da6f8005 Tweak section headers in settings list screen
Use same style that is used in general/account settings screen.
2022-11-28 17:37:59 +01:00
cketti
bf5a03089f Version 6.400 2022-11-28 14:29:35 +01:00
cketti
1a34e49e91 Change appearance of "show remote images" button 2022-11-23 21:01:50 +01:00
cketti
5a43ff6607 Fix message header background color 2022-11-23 19:40:21 +01:00
cketti
715728bf47
Merge pull request #6484 from thundernest/mdc_theme
Switch to MaterialComponents themes
2022-11-23 19:26:08 +01:00
cketti
85762d5ec7 Display tooltips when long-pressing the menu actions 2022-11-22 17:30:46 +01:00
cketti
53aeb4224a Add functionality for primary reply action in message view 2022-11-22 17:03:37 +01:00
cketti
d3658804c6 Switch to MaterialComponents themes 2022-11-22 16:05:41 +01:00
cketti
047ef2db50 Add "line of death" 2022-11-21 14:28:32 +01:00
cketti
42d99739b5 Merge branch 'main' into message-view-redesign 2022-11-18 17:13:48 +01:00
cketti
4a7ac29657 Version 6.312 2022-11-15 15:35:05 +01:00
cketti
e2672cb0dd Update translations 2022-11-15 13:33:49 +01:00
cketti
017fc8e59f Respect font size settings in message view
- Remove now unnecessary settings.
- Rearrange items in the settings screen to match the display order in the message view screen.
- Change setting name from "To" to "Recipients".
2022-11-14 17:54:20 +01:00
cketti
be17b94cf4 Don't enable archive swipe action in archive folder 2022-11-14 14:28:52 +01:00
cketti
97ec70a631 Reset swiped view when moving an item 2022-11-14 14:24:05 +01:00
cketti
e17459f210 Reset swiped views when canceling a swipe action in the confirmation dialog 2022-11-14 14:18:21 +01:00
cketti
30a2126fcb Mark view when swipe starts so ItemAnimator doesn't interfere 2022-11-14 13:28:31 +01:00
cketti
789fbe4d43 Deselect message during swipe
When swiping a selected message we remove the selection state at the start and restore it afterwards if the list item isn't removed. Except when the swipe action is "toggle selection". Then we keep the current selection state while the list item is dragged.
2022-11-11 14:00:11 +01:00
cketti
273d0b433d Handle animating a swiped view back to its start position inside ItemTouchHelper 2022-11-10 21:03:38 +01:00
cketti
ecdffa15a4 Avoid crash when one of the swipe actions is "None" 2022-11-09 11:48:42 +01:00
cketti
ebb54c26cd Use width of swipe action text to calculate maximum swipe distance 2022-11-09 11:48:42 +01:00
cketti
f75101dfc1 Add support for swipe actions not animating the view all the way off the screen 2022-11-09 11:48:42 +01:00
cketti
944595f905 Use our own copy of ItemTouchHelper 2022-11-09 11:48:42 +01:00
cketti
04d97b4e2e Don't crash when trying to remove certificates for incomplete accounts 2022-11-07 17:03:49 +01:00
cketti
73d9100087 Make AccountManager.getAccountsFlow() only return fully set up accounts 2022-11-07 16:39:03 +01:00
cketti
647340e1e8 Swipe actions: Display action name next to the icon 2022-11-02 11:57:38 +01:00
cketti
bcf89ed0c3 Version 6.311 2022-11-01 12:19:51 +01:00
cketti
b5b691e611 Respect setting to hide contact picture 2022-10-31 13:25:32 +01:00
cketti
60c29b6e07 Merge branch 'main' into message-view-redesign 2022-10-31 12:48:21 +01:00
cketti
55557e7736 Use Koin to retrieve RelativeDateTimeFormatter 2022-10-30 02:20:35 +02:00
ByteHamster
20f7e3eafe Display date on new MessageView 2022-10-29 19:57:08 +02:00
cketti
d88be8dab7 Move display logic from SwipeResourceProvider to MessageListSwipeCallback 2022-10-28 22:28:44 +02:00
cketti
a0edf47b2b Simplify SwipeResourceProvider code that returns the action background color 2022-10-28 22:28:44 +02:00
cketti
367948ac7a Only hide the "reply to" field if it doesn't contain content 2022-10-28 22:08:48 +02:00
cketti
c25972cccb Don't tie requesting focus to changing visibility of the "reply to" input
The "reply to" input field should not be focused when restoring the instance state, i.e. the visibility of the view.
2022-10-28 22:08:48 +02:00
cketti
d21fb83289 Change ReplyToPresenterTest to not extend K9RobolectricTest 2022-10-28 22:08:48 +02:00
cketti
d7f4ab88ea Use container view when determining visibility of "reply to" input 2022-10-28 22:08:48 +02:00
cketti
880b4d88b1 Remove DiscoveryTarget 2022-10-26 18:48:52 +02:00
cketti
e91e1e49bf Ignore page change events to an item that is no longer in the adapter 2022-10-26 12:09:31 +02:00
cketti
4b528fc8b4 Don't use smooth scrolling when moving to previous/next message
This seems to work around a bug where sometimes the scroll operation isn't completed and the `MessageViewFragment` being scrolled to is never marked as active. See #6346.
2022-10-25 17:36:04 +02:00
cketti
a7fcf9f607 Only let the active message view update the toolbar menu 2022-10-25 13:23:49 +02:00
cketti
aeb20e20c7 Ignore clicks on views for messages that have been removed from the list 2022-10-24 19:09:13 +02:00
cketti
2d9be7a0b6 Version 6.310 2022-10-24 14:14:41 +02:00
cketti
29652d9cbe Update translations 2022-10-24 13:33:28 +02:00
cketti
7274d7790c Add log entry when creating MessageBuilder has failed 2022-10-22 19:35:37 +02:00
cketti
c5361e9329 Only disable clicks on send button if MessageBuilder was successfully created 2022-10-22 19:35:37 +02:00
cketti
2f3ac6ba94 Don't launch a crypto provider activity until MessageViewFragment becomes active 2022-10-22 18:35:26 +02:00
cketti
f0b369711b Remove support for old launcher shortcuts 2022-10-22 18:20:34 +02:00
cketti
957c6dc43a Don't put serialized LocalSearch instance in account shortcut Intent 2022-10-22 18:20:34 +02:00
cketti
5b448e5c69 Improve loading layouts of the message list widget 2022-10-20 13:20:39 +02:00
cketti
86ae99dd6e Fix size of ListView in message list widget 2022-10-20 12:08:36 +02:00
cketti
da283a7c32 Change the way the message list widget listens to changes
Also change the code to only listen for message list changes when the message list widget has been added to the home screen.
2022-10-19 18:38:03 +02:00
cketti
186a1eda16 Load Unified Inbox when opening a message from the message list widget 2022-10-19 10:47:36 +02:00
cketti
b028c86397 Add thread count to message list widget layout 2022-10-19 10:47:36 +02:00
cketti
98b75c01b2 Simplify intent to start MailListWidgetService 2022-10-18 15:20:28 +02:00
cketti
0482b93071 Simplify the code to notify the message list widget of changes 2022-10-18 15:19:02 +02:00
cketti
343ed16ae0 Update the message list widget on app start
Now that we've changed the component name of `MessageListWidgetService` this is necessary so widget hosts learn of the new name. It's also a good idea in general to update all RemoteViews on app startup (since the app might have been updated).
2022-10-18 15:16:36 +02:00
cketti
2640c0e0a7 Retain fully-qualified name of MessageListWidgetProvider in the manifest 2022-10-17 20:31:32 +02:00
cketti
c9d89657b0 Create a separate Gradle module for the message list widget 2022-10-17 19:15:17 +02:00
cketti
f1400a4293 Merge branch 'main' into message-view-redesign 2022-10-13 12:21:54 +02:00
cketti
2641a85443 Version 6.309 2022-10-12 19:49:37 +02:00
cketti
c8ff69ba9a Remove unused code 2022-10-12 17:36:16 +02:00
cketti
1f2e6fb171 Remove inappropriate use of lateinit var from MessageListFragment
- Restructure the code so `MessageListAdapter` is only created once and initialized early.
- Remove view references in `onDestroyView()`
2022-10-12 17:32:37 +02:00
cketti
de27506761 Update translations 2022-10-12 16:09:33 +02:00
cketti
e9bd127e45 Change how LinearLayoutManager decides how to anchor the list
If the list is scrolled to the top and items are inserted before the previously first list item, `RecyclerView` is "scrolled" to to show the new first item at the top.
2022-10-11 18:10:11 +02:00
cketti
fbd7f5c53b Import a copy of RecyclerView.LinearLayoutManager
Based on RecyclerView 1.2.1
2022-10-11 18:10:11 +02:00
cketti
bacf652e3e Update URL for AndroidX Preference eXtended 2022-10-10 21:16:27 +02:00
cketti
738ba9c112 Ignore clicks on the send button once sending the message has been triggered 2022-10-10 16:07:18 +02:00
cketti
32f4b34e93 Merge branch 'main' into message-view-redesign 2022-10-07 16:57:25 +02:00
cketti
f7f0f02aa6 Version 6.308 2022-10-06 19:21:44 +02:00
cketti
a02410247b Change background color when the swipe threshold is crossed
Also change the swipe threshold to align with the 72dp keyline.
2022-10-06 17:49:36 +02:00
cketti
c145fe03ea Add settings to configure swipe actions 2022-10-06 17:49:36 +02:00
cketti
ac99032d3c Add support for swipe actions to the message list screen 2022-10-06 17:49:36 +02:00
cketti
88dc1ac3cc Move message list code to 'messagelist' package 2022-10-06 17:01:03 +02:00
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