4994 Commits

Author SHA1 Message Date
SpiritCroc
0393dd51c9 Bring back downstream "Update room previews once we have decryption keys"
This reverts commit 130fe7f887fe4851ec35305da23c5ffdbecad591.
Also update to some newer decryption logic, and disable the new upstream
logic, to avoid duplicate decryption attempts.

Change-Id: Ibcea8b825d94284dfcf2d305b5f57423366601e5
2022-05-30 17:39:20 +02:00
SpiritCroc
a2486fccf5 Do not fully discard chunks that start with duplicate events
If we already have some events in a previously linked chunk, that
doesn't mean we have all of them. So we still want to continue
processing later events in that case.

Change-Id: I95e864ad7e786ea71b9facdbbf52c2685b36ee26
2022-05-24 11:54:21 +02:00
SpiritCroc
d3addc24f1 Add some missing log spaces
Change-Id: I36cfbaa49f1e7703d23eacefeeafda380eb99e65
2022-05-24 11:53:38 +02:00
SpiritCroc
a95e41056d Improve room preview generation
- Also look into past chunks for previewable events
- Better timestamp guesses if not enough history loaded yet
- Update missing previews when more chunks loaded

Change-Id: I27a420b9564e091db0e322751c798e205e26fd47
2022-05-22 20:26:25 +02:00
SpiritCroc
8a1da1c02f Avoid mismatch between hasUnread and notificationCount because of unreadCount
With MSC2654 unread counts, it is possible such count is zero while the
notification count isn't. So also respect the notification count when
deciding if a chat has unread messages.

Change-Id: I1b9f6ae907eb468c27fc0bb75b711db04268560a
2022-05-22 13:12:46 +02:00
SpiritCroc
c214e5daf1 Avoid missing timestamps due to missing previewable event
Just use a non-previewable event instead.
Improves sorting of the room list: don't drop rooms to the bottom
because of too much un-previewable activity.

Change-Id: Ib1ad8050caae85a3e7c8a686c2fa63a2924db890
2022-05-22 12:23:11 +02:00
SpiritCroc
088657168f Avoid missing messages when trying to add event to chunk twice
Change-Id: I98ae8e7a5254e6f93fd2a38498b7f8e173ccd565
2022-05-19 22:36:02 +02:00
SpiritCroc
4f60963741 Merge tag 'v1.4.16' into sc
Change-Id: Ibfb03ebf80dc1403fa438a390f609f2201602ba9

Conflicts:
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/sync/model/RoomSync.kt
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/database/RealmSessionStoreMigration.kt
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/DefaultTimeline.kt
	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/room/timeline/LoadTimelineStrategy.kt
	vector/src/main/java/im/vector/app/features/notifications/NotificationUtils.kt
	vector/src/main/java/im/vector/app/features/roomdirectory/createroom/CreateRoomController.kt
	vector/src/main/java/im/vector/app/features/roommemberprofile/RoomMemberProfileController.kt
	vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt
	vector/src/main/java/im/vector/app/features/settings/troubleshoot/TestTokenRegistration.kt
	vector/src/main/res/drawable/ic_settings_root_flair.xml
	vector/src/main/res/layout/fragment_timeline.xml
	vector/src/main/res/xml/vector_settings_labs.xml
2022-05-18 09:59:01 +02:00
Benoit Marty
12eb23b198
Merge branch 'develop' into feature/bma/detekt_end_period 2022-05-16 13:14:37 +02:00
Benoit Marty
dcbc85484c Remove ambiguity 2022-05-16 13:05:26 +02:00
Benoit Marty
0ed647d379 Add missing end period. 2022-05-16 12:25:10 +02:00
Benoit Marty
1eb97f6cb8 Disable the undocumented warnings, there are too many :/ 2022-05-16 12:23:10 +02:00
Benoit Marty
dfe75de76e Add links to the doc (I've finally found a way to do it) 2022-05-16 12:23:10 +02:00
Benoit Marty
26e6d56cf1 Improve doc 2022-05-16 12:23:10 +02:00
Benoit Marty
6f29a7ab94 Also update TextMatrix 2022-05-16 12:23:10 +02:00
Benoit Marty
08c67eaf0e Remove unecessary indirection 2022-05-16 12:23:10 +02:00
Benoit Marty
3fc4083aca Make the constructor public 2022-05-16 12:23:10 +02:00
Benoit Marty
11e1fdf332 Remove the deprecated way to create a Matrix object 2022-05-16 12:23:10 +02:00
Benoit Marty
92c0d97110 Rename API 2022-05-16 12:22:18 +02:00
Benoit Marty
7040369529 Add documentation to the class Matrix 2022-05-16 12:22:18 +02:00
Benoit Marty
90035de5f2
Merge pull request #6047 from chagai95/add-presence-indicator-busy-and-away
add presence indicator busy and away
2022-05-16 11:26:11 +02:00
Benoit Marty
4c95aafe10 Detekt: enable and fix EndOfSentenceFormat 2022-05-16 08:54:07 +02:00
Benoit Marty
9234c60155
Merge pull request #6038 from vector-im/feature/bma/detekt
Detekt
2022-05-13 23:40:53 +02:00
SpiritCroc
d1ee0dea6b Rely on MSC2654 unread counts when available for detecting unread status
Previously, we were doing some hybrid approach, in order to take into
account the room preview settings. However, this can mark chats as
unread in cases where isEventRead() does guessing due to insufficient
events loaded. Just using the counts when possible is more reliable.

Change-Id: I22dc242e69f1946c039d0b4f81851c6b0c0556e2
2022-05-13 20:44:55 +02:00
chagai95
9f033ed623
add presence indicator busy and away 2022-05-13 13:55:10 +02:00
SpiritCroc
200370912a Add missed return
Change-Id: I0a01f3eb7ab8ffef965736c6aa0e03909914358c
2022-05-13 12:58:54 +02:00
SpiritCroc
07288c5458 Limit chunk reparation mechanisms to avoid too high delays
Change-Id: I0512a911b8637cd62815e2570e1897a374bbcf5b
2022-05-13 12:22:41 +02:00
SpiritCroc
7c80957e5a Retroactively fix stuck timelines due to empty chunks
Change-Id: I707d3c139e4731db5d5ced5fc113323646d305a3
2022-05-13 12:01:35 +02:00
SpiritCroc
d9e5dfa90a Do not insert empty chunks that loop to themselves
We were getting some stuck timelines because of the insertion of empty
chunks that link to themselves in both directions.

Change-Id: Id3672e6704d82cbcdafa2fa5ded716b624db3680
2022-05-13 11:37:54 +02:00
Valere
7d5570fd6f quick format 2022-05-13 09:36:42 +02:00
Benoit Marty
03ec9946ff Detekt: fix ConstructorParameterNaming
UserProperties fix is also in https://github.com/matrix-org/matrix-analytics-events/pull/62
2022-05-12 22:17:56 +02:00
Valere
8077406cba code review 2022-05-12 18:45:35 +02:00
Valere
5a323db7dc Unignore and improve tests 2022-05-12 18:45:35 +02:00
Valere
b25b30719a Add test to check MSK signature on backup 2022-05-12 18:45:35 +02:00
Valere
22e0506814 Prevent 4S / megolm backup desync + sign with MSK 2022-05-12 18:45:35 +02:00
Benoit Marty
c3b5ba5639 Detekt: fix MatchingDeclarationName 2022-05-12 17:44:44 +02:00
Benoit Marty
3bc84f0d38 Detekt: fix MaxLineLength
@ouchadam your test fun names are too long!
2022-05-12 17:38:49 +02:00
Benoit Marty
aeb6495253 Detekt: fix RethrowCaughtException 2022-05-12 17:32:00 +02:00
Benoit Marty
21904054a5 Detekt: ignore EmptyCatchBlock 2022-05-12 17:29:10 +02:00
Benoit Marty
a09e893a0b Detekt: fix MayBeConst 2022-05-12 17:24:15 +02:00
Benoit Marty
824f029e20 "TODO:" is forbidden by Detekt 2022-05-12 17:06:52 +02:00
Ahmed Radhouane Belkilani
6a523ccc38 Allow using the latest user avatar and display name for all messages in the timeline
Signed-off-by: Jorge Martín Espinosa <jorgem@element.io>
2022-05-12 15:43:20 +02:00
SpiritCroc
85a26ae8be Render image reactions (MSC3746)
Some notes:
- Doesn't re-parse reactions already in the db to add the url field - so
  may need an initial sync for those.
- Since some clients don't really follow MSC3746, as in: they don't use
  the url field, but instead only write and check the key if it is an
  mxc-url, support those as well.
- Accordingly, initial sync is likely not required for those reactions
  I've seen in the wild so far, as it's common to use the mxc url also
  as key.

Change-Id: Ib1c50315425494986fa2e794d165658220a4f342
2022-05-11 21:50:49 +02:00
Benoit Marty
deb0f1ad1b
Merge pull request #6000 from vector-im/dependabot/gradle/androidx.preference-preference-ktx-1.2.0
Bump preference-ktx from 1.1.1 to 1.2.0
2022-05-11 16:17:17 +02:00
Benoit Marty
a963596a59
Merge pull request #6022 from vector-im/feature/bma/gh_pages
Gh pages
2022-05-11 14:28:19 +02:00
Valere
304cb07858
Merge pull request #5559 from vector-im/feature/bca/crypto_better_key_share
Update/Revise SDK to implement reference flowchart for key sharing/forwarding + use backup
2022-05-11 12:05:58 +02:00
Valere
3948f263df fix method visibility 2022-05-11 11:16:00 +02:00
Benoit Marty
27dcb6ef9c Add a note when generated from this project.
A change will have to be done on the SDK project to remove this line before generated the documentation.
2022-05-11 11:14:45 +02:00
Valere
992f477ab1 use clock time instead of system 2022-05-11 10:58:13 +02:00
Valere
546d6fe56d post merge fix 2022-05-11 10:42:02 +02:00