Onuray Sahin
40aa0175d0
Code review fixes.
2021-10-29 16:54:54 +03:00
Onuray Sahin
a5a3a817e1
Merge branch 'develop' into feature/ons/poll
...
* develop: (129 commits)
Improve Rx sequence regarding listener
adding changelog entry
using correct license for matrix-sdk test
extending the room name resolved to create a dedicated room name data class which contains a normalized version of the room name
Remove shortcut as soon as a PIN code is set
ensuring the store migration class is always equal to other store migration instances - is needed as realm will throw if multiple migration instances are created and they don't match
removing extra query definition by chaining the query creation with modifiers
removing noisy log which duplicates a type clause and fixing when casing formatting to have a case per line
documenting the different query cases
making the isNormalized function an extension and internal to the sdk
Cache immutable value
Do not show shortcuts if a PIN code is set
Remove (disable) shortcut if a room is left
Ensure ShortcutsHandler get all the joined rooms #4168
Add `sortOrder: RoomSortOrder` parameter, with no API break
Clean code
adding normalised room display name field and making use of it when filtering rooms by name - fixes non latin-1 character set room names from being ignored when searching with inexact casing
adding normalisation to the query string cases
making value processing an injectable class, it will need to have its own dependencies to support normalisation
porting QueryStringValue to sealed interface with a sub category for the content based values - allows for handling those cases separately for normalisation
...
# Conflicts:
# vector/src/main/java/im/vector/app/core/di/ScreenComponent.kt
2021-10-28 18:05:10 +03:00
Onuray Sahin
db820efc3a
Fix UI issues.
2021-10-28 15:43:51 +03:00
Onuray Sahin
ac299d8c06
Remove poll command.
2021-10-28 14:48:20 +03:00
Benoit Marty
868548d0ab
Merge pull request #4352 from vector-im/feature/adm/room-filtering
...
Fixing case sensitive non latin room name filtering
2021-10-28 12:27:13 +02:00
Onuray Sahin
dd58dd800c
Create poll event content.
2021-10-28 10:50:29 +03:00
Benoit Marty
34e8cf84dc
Improve Rx sequence regarding listener
2021-10-28 09:41:27 +02:00
Benoit Marty
6691edb59d
Remove shortcut as soon as a PIN code is set
2021-10-27 16:17:53 +02:00
Benoit Marty
3a48e33c81
Cache immutable value
2021-10-27 15:26:31 +02:00
Benoit Marty
6f577d8232
Do not show shortcuts if a PIN code is set
2021-10-27 15:24:24 +02:00
Benoit Marty
3a81c10062
Remove (disable) shortcut if a room is left
2021-10-27 15:13:07 +02:00
Benoit Marty
f166348a68
Ensure ShortcutsHandler get all the joined rooms #4168
2021-10-27 15:00:14 +02:00
Benoit Marty
9b75da5d4d
Clean code
2021-10-27 15:00:14 +02:00
Adam Brown
4ae04fc297
adding normalised room display name field and making use of it when filtering rooms by name
...
- fixes non latin-1 character set room names from being ignored when searching with inexact casing
2021-10-27 13:09:53 +01:00
Onuray Sahin
6cee266a95
Create poll UI implementation.
2021-10-27 13:10:01 +03:00
dependabot[bot]
82b3d17db6
Bump libphonenumber from 8.12.35 to 8.12.36
...
Bumps [libphonenumber](https://github.com/google/libphonenumber ) from 8.12.35 to 8.12.36.
- [Release notes](https://github.com/google/libphonenumber/releases )
- [Changelog](https://github.com/google/libphonenumber/blob/master/making-metadata-changes.md )
- [Commits](https://github.com/google/libphonenumber/compare/v8.12.35...v8.12.36 )
---
updated-dependencies:
- dependency-name: com.googlecode.libphonenumber:libphonenumber
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-10-26 23:08:52 +00:00
Adam Brown
6d9877d79c
filtering out redacted simple message events, we handle them by updating the notifications
2021-10-26 20:03:10 +01:00
Adam Brown
a5fe6f7212
removing redacted events from the room notification message list
2021-10-26 20:03:10 +01:00
Adam Brown
b146501f29
avoiding multiple list iterations via mapNotNull
2021-10-26 20:03:10 +01:00
Benoit Marty
be67836a3e
Tiny formatting
2021-10-26 20:03:10 +01:00
Benoit Marty
2bd2cbf84e
Compact code
2021-10-26 20:03:10 +01:00
Benoit Marty
c56101d227
Do not use the room member avatar as a room avatar
2021-10-26 20:03:10 +01:00
Adam Brown
743a71c78d
renaming event lists to give more context and remove the list suffix/inconsistencies
2021-10-26 20:03:10 +01:00
Adam Brown
d1f6db4236
using dedicated ProcessedEvent data class instead of type alias for passing around the process notificatiable events
...
- also includes @JvmName on all conflicting extensions for consistency
2021-10-26 20:03:10 +01:00
Adam Brown
63090ef681
updating tests with shortcut placement changes
2021-10-26 20:03:10 +01:00
Adam Brown
6fb7faa360
removing unused imports
2021-10-26 20:03:10 +01:00
Adam Brown
a6e47d8b85
replacing notification utils usage with the displayer and removing unused method
2021-10-26 20:03:10 +01:00
Adam Brown
c16e3e09e6
adding missing parameter from rebase and removing no longer needed singleton annotation
2021-10-26 20:03:10 +01:00
Adam Brown
4748a385ea
inlining single use extension functions
2021-10-26 20:03:10 +01:00
Adam Brown
86ce6a404e
adding missing fixture parameter from rebase
2021-10-26 20:03:10 +01:00
Adam Brown
9fa09def96
fixing line lengths
2021-10-26 20:03:10 +01:00
Adam Brown
4bbb637ace
adding documentation around the two notifiable event lists which act as our notification source of truth
2021-10-26 20:03:10 +01:00
Adam Brown
c67b9ee81e
ensuring that we remove read messages when they come through by respecting the processed type when creating the notifications
2021-10-26 20:03:10 +01:00
Adam Brown
0bdc65b47f
diffing the notification events against the currently rendered events allow us to dismiss notifications from removed events
2021-10-26 20:03:10 +01:00
Adam Brown
b27fb264fc
using a process state of keep/removed rather than mapping to an ignored event id
...
- this state will be used to diff the currently rendered events against the new ones
2021-10-26 20:03:10 +01:00
Adam Brown
b7b4c01bde
splitting the event processing from the rendering
...
- this allows us to only synchronise of the event list modifications rather than the entire notification creation/rendering which should in turn reduce some of our ANRs https://github.com/vector-im/element-android/issues/4214
2021-10-26 20:03:10 +01:00
Adam Brown
587466e009
relying on the notification refreshing to cancel/update the notifications
2021-10-26 20:03:10 +01:00
Adam Brown
03fe45da60
ensuring that we removing the summary group before removing individual notifications
...
- adds some comments to explain the positioning
2021-10-26 20:03:10 +01:00
Adam Brown
a94a1a0523
formatting
2021-10-26 20:03:10 +01:00
Adam Brown
8fb6bef503
removing this usages for project convention
2021-10-26 20:03:10 +01:00
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
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