Commit Graph

11409 Commits

Author SHA1 Message Date
Ihor Hordiichuk 5c4ac897c1 Translated using Weblate (Ukrainian)
Currently translated at 91.6% (2448 of 2672 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/uk/
2021-10-26 23:25:49 +00:00
libexus abd83f3d7c Translated using Weblate (German)
Currently translated at 100.0% (35 of 35 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/de/
2021-10-26 23:25:48 +00:00
Danial Behzadi 86d651be60 Translated using Weblate (Persian)
Currently translated at 100.0% (35 of 35 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/fa/
2021-10-26 23:25:47 +00:00
Jeff Huang d969549ce6 Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (35 of 35 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/zh_Hant/
2021-10-26 23:25:46 +00:00
random 188e0dbec7 Translated using Weblate (Italian)
Currently translated at 99.8% (2669 of 2672 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/it/
2021-10-26 23:25:45 +00:00
random f6f4cec947 Translated using Weblate (Italian)
Currently translated at 100.0% (35 of 35 strings)

Translation: Element Android/Element Android Store
Translate-URL: https://translate.element.io/projects/element-android/element-store/it/
2021-10-26 23:25:45 +00:00
libexus 93ed2dcbbf Translated using Weblate (German)
Currently translated at 97.8% (2615 of 2672 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/de/
2021-10-26 23:25:44 +00:00
DUCKCHI 66198805ca Translated using Weblate (Korean)
Currently translated at 49.6% (1326 of 2672 strings)

Translation: Element Android/Element Android App
Translate-URL: https://translate.element.io/projects/element-android/element-app/ko/
2021-10-26 23:25:43 +00: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 fe9dde5a14
Merge pull request #4274 from vector-im/feature/adm/notification-redesign
Notifications redesign
2021-10-26 20:42:00 +01:00
Adam Brown 124061e1db adding changelog entry 2021-10-26 20:03:10 +01: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 e8bd27e785 adding changelog entries 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 d3234b33d3 increase enum class allowance by 1 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 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