Commit Graph

11372 Commits

Author SHA1 Message Date
Adam Brown 0d316e69de handling creating the summary when notification events are filtered to empty due to only containing removals 2021-10-26 20:03:10 +01:00
Adam Brown 3d567d0dcd removing no longer needed hasBeenDisplayed state, the eventList is our source of truth
- when events have finished being displayed they should be removed from the eventList via notification delete actions
2021-10-26 20:03:10 +01:00
Adam Brown c85afa96d3 lifting settings change to cancel all notifications out of the renderer
- the renderer's responsibility it handling events
2021-10-26 20:03:10 +01:00
Adam Brown 3023cb4d39 chaining the event process, notification creation and display logic into a NotificationRender
- extract the displaying into its own class to avoid leaking the entire notificationutils
- cancel/display notification actions are completely driven by the event or abscense of event from the eventList
- attempts to avoid redundant render passes by checking if the eventList has changed since the last render
2021-10-26 20:03:10 +01:00
Adam Brown 0f4ec65b7a creating the notifications separate to where they're displayed
- also handles when the event diff means the notifications should be removed
2021-10-26 20:03:10 +01:00
Adam Brown 7b0c483134 creating dedicated class for the processing the serialized events
- updates the logic to track when events are removed as a way for the notifications to remove themselves, null events mean they've been removed
2021-10-26 20:03:10 +01:00
Adam Brown 4459aab558 making the event body non null and immutable to allow less cases to be handled -
also puts in the basis for a separate notification refreshing implementation
2021-10-26 20:03:10 +01:00
Adam Brown 6cc6cc58f0 adding changelog entry 2021-10-26 20:03:10 +01:00
Adam Brown beff5ab821 including the room name in the invitation event if the room sumary is available 2021-10-26 20:03:10 +01:00
Adam Brown 56e2b79774 formatting 2021-10-26 20:03:10 +01:00
Adam Brown 86b500445f updating the push gateway property to reflect that it mean the event can be replaced
- makes the property immutable as only the creation of the event knows if it can be replace eg it came from a push or the /sync event stream
2021-10-26 20:03:10 +01:00
Adam Brown b44a382893 separating the mutable vars from the immutable ones, they'll be removed or made immutable by the notification redesign 2021-10-26 20:03:10 +01:00
Adam Brown db5d4ead38 making the noisy property immutable 2021-10-26 20:03:10 +01:00
Adam Brown c99dd4a615 making the isRedacted event property immutable
- also makes the notifiable events sealed interfaces so that we can copy the data classes with new redacted values when it changes
2021-10-26 20:03:10 +01:00
Adam Brown 89d643a4be removing unused property (written to but never read) 2021-10-26 20:03:10 +01:00
Adam Brown 81da185d8b making non overriden properties immutable by passing the values intro the constructor 2021-10-26 20:03:10 +01:00
Adam Brown 51f7dee952 removing non common properties form the base event 2021-10-26 20:03:10 +01:00
Adam Brown 67211605aa removing unused commented code 2021-10-26 20:03:10 +01:00
Adam Brown 1c0d69674d moving is invitation help to the event file 2021-10-26 20:03:10 +01:00
Adam Brown 37a7d449ae moving invitiation joined event filtering to the existing mapNotNull chain to avoid another list creation 2021-10-26 20:03:10 +01:00
Adam Brown 0c809b5ed1 now that we ignore duplicated invite joined events at the source we can avoid eager notification cancels and rely on the main notification refresh flow 2021-10-26 20:03:10 +01:00
Adam Brown e95d49a3ae avoiding dispatching invitation accepted events
- we only want to notify users when they receive an invititation, not when they've accepted it
2021-10-26 20:03:10 +01:00
Benoit Marty 109a5a6664
Merge pull request #4332 from vector-im/feature/bma/do_not_inject_default
DI: Use interfaces instead of implementation
2021-10-26 20:45:13 +02:00
Benoit Marty a19999a717
Merge pull request #4345 from vector-im/feature/adm/unable-to-join-by-name
Unable to join room by name
2021-10-26 19:35:44 +02:00
Benoit Marty 31abf44d0e
Merge pull request #4346 from vector-im/feature/bma/login_custom
Add API `LoginWizard.loginCustom(data: JsonDict): Session`
2021-10-26 19:28:30 +02:00
Benoit Marty 1d8a4a923a
Merge pull request #4344 from vector-im/feature/bma/device_id_param
Add optional deviceId to the login API
2021-10-26 19:24:09 +02:00
Adam Brown 272baa52ec adding remaining activity missing hilt injection annotations 2021-10-26 17:56:22 +01:00
Benoit Marty e8ccae8cd0 Add API `LoginWizard.loginCustom(data: JsonDict): Session` to be able to login to a homeserver using arbitrary request content 2021-10-26 18:38:15 +02:00
Adam Brown 4361926075 adding changelog entry 2021-10-26 17:22:26 +01:00
Adam Brown 881157a725 applying the room navigation interceptor to only the room activity navigation, not the bottomsheets
- the bottomsheets require the activity to stay around as they host the sheet instance, fixes missing join sheets
2021-10-26 17:15:19 +01:00
Adam Brown 49c969601d adding missing bottomsheet handling for displaying the join room sheet when linking from the public rooms
- the activity is still finished causing the popup to not actually display
2021-10-26 17:14:24 +01:00
ganfra a9d192fa39 Flow migration: add back some test 2021-10-26 18:09:07 +02:00
Benoit Marty 01a29f67d0 Version++ 2021-10-26 17:33:23 +02:00
Benoit Marty 8ac48b903a Merge branch 'hotfix/1.3.6' into develop 2021-10-26 17:31:10 +02:00
Benoit Marty eb66a51891 Merge branch 'hotfix/1.3.6'
Conflicts:
	vector/src/main/java/im/vector/app/features/login/LoginViewModel.kt
2021-10-26 17:30:39 +02:00
Benoit Marty 6c485d5f6e Merge hotfix 1.3.6 2021-10-26 17:23:33 +02:00
Adam Brown 792444d1ac adding missing hilt annotation for injectable activity 2021-10-26 16:23:32 +01:00
Benoit Marty edd29ec4ef fastlane change 2021-10-26 16:51:59 +02:00
Benoit Marty 093b5c76ab towncrier 2021-10-26 16:51:08 +02:00
Benoit Marty f2330903ae Add named parameter for boolean 2021-10-26 16:49:38 +02:00
Benoit Marty 9f1efab18d Correctly handle url of type https://mobile.element.io/?hs_url=…&is_url=
Skip the choose server screen when such URL are open when Element
2021-10-26 16:49:21 +02:00
Benoit Marty dc5739c11d Format 2021-10-26 16:46:20 +02:00
ganfra 8cf5b727e1 Flow: restore read receipts 2021-10-26 15:57:18 +02:00
ganfra 9479342a64 Flow: remove more rx 2021-10-26 15:16:10 +02:00
Benoit Marty 0236396c59 Add optional deviceId to the login API 2021-10-26 15:10:04 +02:00
ganfra c936954119 Flow migration: start replacing Rx by Flow 2021-10-26 14:24:23 +02:00
Adam Brown 10df75bd57 allowing the re-emission of identical search terms, fixes the finish setup/give consent steps from not properly updating the UI
- also captures the fragmet resumed event in order to handle returning from the settings page and applying a identity server
2021-10-26 12:25:17 +01:00
Adam Brown c90dbf2f38 allowing null users in the email search, fixes missing indentity server helpers when inviting by email 2021-10-26 11:55:52 +01:00
Benoit Marty d0f226dcd1 Bind identity service 2021-10-25 15:47:17 +02:00
Benoit Marty 363ae79378 DI: Use interfaces instead of implementation 2021-10-25 15:32:27 +02:00