Commit Graph

4278 Commits

Author SHA1 Message Date
Benoit Marty 43d6a29ff3
Merge pull request #5208 from vector-im/feature/adm/personalisation-capabilities
MSC3283 - Supporting additional homeserver capabilities
2022-02-14 14:27:26 +01:00
Adam Brown fd2d9287e7 creating separate creator for the matrix instance to avoid ambiguous non singleton/duplicated singleton usages
- also documents the static methods
2022-02-14 12:46:16 +00:00
Adam Brown fed549f647 reusing refresh extension 2022-02-14 12:05:57 +00:00
Adam Brown 4519dec7eb scheduling a refresh of the homeserver capabilities on introduction of new fields 2022-02-14 12:05:44 +00:00
Benoit Marty 36d841b884
Merge pull request #5196 from vector-im/dependabot/gradle/com.googlecode.libphonenumber-libphonenumber-8.12.43
Bump libphonenumber from 8.12.42 to 8.12.43
2022-02-14 11:19:41 +01:00
Adam Brown d19e6d290f
Merge pull request #5209 from vector-im/michaelk/reduce_debug_logging_loop
Reduce verbosity of CleanupSession debug logs.
2022-02-11 16:28:26 +00:00
ganfra f1376eac82
Merge pull request #5204 from vector-im/feature/fga/reactions_ui_improvements
Feature/fga/reactions UI improvements
2022-02-11 15:17:44 +01:00
Adam Brown d8d6358d15 adding support for the homeserver display name and avatar capabilities
- MSC3283 https://github.com/matrix-org/synapse/pull/11933
- includes session database migration
2022-02-11 12:48:42 +00:00
Adam Brown a5f4413f6c using a generic boolean capability model for booleans 2022-02-11 11:52:41 +00:00
Adam Brown 5af56f6b5d
Merge pull request #5134 from vector-im/feature/bma/realmMigrations
Refactor realm migrations
2022-02-11 11:50:50 +00:00
Michael Kaye f44f37629a Reduce verbosity of CleanupSession debug logs.
Currently we wait up to 10s for this operation to complete.

Replacing the two log lines with three, lets us halve the number of logs printed every 10ms,
but always print exactly one log line each iteration of the loop. Rather than:

```
02-10 19:58:48.880  3140  3140 D CleanupSession: Wait for all Realm instance to be closed (29 - 0)
02-10 19:58:48.880  3140  3140 D CleanupSession: Waiting 10ms
02-10 19:58:48.890  3140  3140 D CleanupSession: Wait for all Realm instance to be closed (29 - 0)
02-10 19:58:48.890  3140  3140 D CleanupSession: Waiting 10ms
02-10 19:58:48.900  3140  3140 D CleanupSession: Wait for all Realm instance to be closed (29 - 0)
02-10 19:58:48.900  3140  3140 D CleanupSession: Waiting 10ms
02-10 19:58:48.910  3140  3140 D CleanupSession: Wait for all Realm instance to be closed (29 - 0)
02-10 19:58:48.910  3140  3140 D CleanupSession: Waiting 10ms
02-10 19:58:48.920  3140  3140 D CleanupSession: Wait for all Realm instance to be closed (0 - 0)
```

We'll print:

```
02-10 19:58:48.880  3140  3140 D CleanupSession: Waiting 10ms for all Realm instance to be closed (29 - 0)
02-10 19:58:48.890  3140  3140 D CleanupSession: Waiting 10ms for all Realm instance to be closed (29 - 0)
02-10 19:58:48.900  3140  3140 D CleanupSession: Waiting 10ms for all Realm instance to be closed (29 - 0)
02-10 19:58:48.910  3140  3140 D CleanupSession: Waiting 10ms for all Realm instance to be closed (29 - 0)
02-10 19:58:48.920  3140  3140 D CleanupSession: Finished waiting for all Realm instance to be closed (0 - 0)
```

The above example took 40ms to finish and saved 4 log lines; you can see how it adds up if you take 10000ms to finish.
2022-02-11 09:06:47 +00:00
ganfra f08b10b2c5
Merge pull request #5199 from vector-im/feature/dla/fix_timeline_from_virtual_rooms
Rooms with virtual rooms do not render the merged timeline with call events.
2022-02-10 19:20:01 +01:00
ganfra 9f44ec1d70 Reactions: fix ui echo ordering 2022-02-10 18:56:39 +01:00
David Langley eb90268cf5 Updates getAccountDataEvents function to match it's description. 2022-02-10 10:30:47 +00:00
fedrunov 06b5563ff6
join and leave methods moved from MembershipService to RoomService an… (#5183) 2022-02-10 10:05:03 +01:00
dependabot[bot] 002332496a
Bump libphonenumber from 8.12.42 to 8.12.43
Bumps [libphonenumber](https://github.com/google/libphonenumber) from 8.12.42 to 8.12.43.
- [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.42...v8.12.43)

---
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>
2022-02-09 23:11:56 +00:00
ganfra c28a20dce3 Bump versions to 1.4.2 2022-02-09 12:55:33 +01:00
Adam Brown 2d80c6bc4e avoiding using the matrix getInstance internally within the sdk to allow us to inject a consistent instance 2022-02-08 14:02:39 +00:00
Aris Kotsomitopoulos 077c0eea98
Revert "AGP 7.1.0" 2022-02-04 12:20:20 +02:00
Benoit Marty eed4bf175f Realm migrations are not objects anymore
SchemaVersion is now a val
2022-02-03 21:05:54 +01:00
Benoit Marty 8a4ecf616a Split the classes RealmMigration into smaller classes 2022-02-03 21:05:54 +01:00
ganfra 2e2da16a6b Bubbles: merge develop 2022-02-03 17:10:13 +01:00
Benoit Marty dba9a47c63
Merge pull request #5127 from vector-im/feature/ons/generic_location_pin
Support generic location pin
2022-02-03 16:02:38 +01:00
Benoit Marty aa12a73a05 Version++ 2022-02-03 15:51:04 +01:00
Benoit Marty 105118f831 Merge hotfix 1.3.18 to develop 2022-02-03 15:48:51 +01:00
Benoit Marty 5b3d999aaa Version 1.3.18 2022-02-03 15:43:13 +01:00
Benoit Marty 09cbd146e8 Improve missing state event detection to missing state events only one joined rooms (ignore LEFT room)
Should reduce the number of initial sync
Co-authors: ganfra and billcarsonfr
2022-02-03 14:53:17 +01:00
Benoit Marty 664bccf8a5 ktlint 2022-02-03 00:27:10 +01:00
Benoit Marty c66849834a
Merge pull request #5051 from vector-im/feature/bma/cleanup
Remove some usage of MatrixCallback
2022-02-03 00:25:54 +01:00
ganfra 85af3767b7 Sync: avoid deleting root event of CurrentState on gappy sync 2022-02-02 18:07:39 +01:00
Onuray Sahin c2daab4211 Code review fixes. 2022-02-02 19:33:34 +03:00
Adam Brown e2d8c73761 fixing push notifications being skipped
- reworking the isEventRead logic to always check if the new event exists locally, there's a race condition between eventFastLane and syncs where we end up mark unseen events as read if our last local message in a room is from ourselves
- this may also fix some  events being instantly marked as read when being received
2022-02-02 12:32:42 +00:00
ganfra 1bf2523437 Merge branch 'develop' into feature/fga/message_bubbles 2022-02-02 13:01:43 +01:00
Onuray Sahin a131d28b3e Merge branch 'develop' into feature/ons/generic_location_pin
* develop: (146 commits)
  exhaustive not needed anymore
  Invert if condition and split long line
  Use kotlin string builder
  Same issue but in the test
  Format
  Fix a crash: java.util.IllegalFormatPrecisionException https://github.com/matrix-org/element-android-rageshakes/issues/33398
  add changelog file for threads feature
  add changelog file for threads feature
  Formatting
  Improve hidden events for threads
  Add TODO for the next Weblate sync
  ktlint format
  PR remarks
  Fix a lint false positive? Anyway this was not used. Restricted API ../../../matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/job/SyncWorker.kt:61: ListenableWorker.getTaskExecutor can only be called from within the same library group (referenced groupId=androidx.work from groupId=element-android)
  It seems that now lint rule `MissingQuantity` is an error and not a warning by default.
  Whitelist group 'org.webjars' on MavenCentral to fix lint execution
  Fix conflicts
  Formating & remove unused comments
  Fix error in unit test
  ktlint format
  ...

# Conflicts:
#	vector/src/main/java/im/vector/app/features/navigation/Navigator.kt
2022-02-02 14:35:30 +03:00
Onuray Sahin 37d35c9a7f Support generic location pin. 2022-02-02 14:25:54 +03:00
Benoit Marty 7a44f16372 More cleanup 2022-02-02 11:38:09 +01:00
Benoit Marty 4893429d73 Remove usage of MatrixCallback 2022-02-02 11:38:09 +01:00
Benoit Marty 2bf36c74e3 Use kotlin string builder 2022-02-02 10:46:31 +01:00
Benoit Marty 581dbda2c1 Format 2022-02-02 10:34:08 +01:00
Benoit Marty cd1171eb9d Fix a crash: java.util.IllegalFormatPrecisionException
https://github.com/matrix-org/element-android-rageshakes/issues/33398
2022-02-02 10:33:19 +01:00
Aris Kotsomitopoulos 3d5f8ed7e7
Merge pull request #4746 from vector-im/feature/aris/threads
Threads P0 Release
2022-02-01 15:58:32 +02:00
Benoit Marty 79b4c76a09
Merge pull request #5082 from vector-im/feature/bma/agp_7_1_0
AGP 7.1.0
2022-02-01 13:57:15 +01:00
ariskotsomitopoulos fcc095a239 PR remarks 2022-02-01 12:13:10 +02:00
ganfra 825c2ca989 Merge branch 'develop' into feature/fga/message_bubbles 2022-02-01 10:05:51 +01:00
Benoit Marty c8ddb2e85e Fix a lint false positive? Anyway this was not used.
Restricted API
../../../matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/job/SyncWorker.kt:61: ListenableWorker.getTaskExecutor can only be called from within the same library group (referenced groupId=androidx.work from groupId=element-android)
2022-02-01 00:30:30 +01:00
ariskotsomitopoulos d509b3324c Merge branch 'develop' into feature/aris/threads 2022-01-31 15:58:12 +02:00
Benoit Marty 7dad08654b Revert "Downgrade the version to 1.3.17 to prepare a corrective release."
This reverts commit 2efa67e587.
2022-01-31 14:53:43 +01:00
Benoit Marty 2efa67e587 Downgrade the version to 1.3.17 to prepare a corrective release. 2022-01-31 14:48:54 +01:00
Benoit Marty 91e444ca73
Merge pull request #5084 from vector-im/feature/bma/location_crash
Fix location crash
2022-01-31 14:42:53 +01:00
Adam Brown 9119cf059f adding extra logging around the push rules to help determine if we're incorrectly filter out valid notifications 2022-01-31 12:06:21 +00:00
ariskotsomitopoulos 26eaa843b3 ktlint format 2022-01-31 13:56:17 +02:00
Benoit Marty 8ee23c1e6a Merge branch 'develop' into feature/bma/location_crash 2022-01-31 12:49:17 +01:00
ariskotsomitopoulos 3253a252fb Introduce ThreadsService by splitting TimelineService 2022-01-31 12:58:19 +02:00
Benoit Marty 83ed80e6d8 Rename fun for clarity 2022-01-29 07:40:41 +01:00
ariskotsomitopoulos b1067e9a58 - ktlint format
- Update a text resource
2022-01-28 16:37:59 +02:00
ariskotsomitopoulos 1d6d8102b3 Further improve thread summary after forward scrolling 2022-01-28 14:11:03 +02:00
dependabot[bot] c07b09c727
Bump libphonenumber from 8.12.41 to 8.12.42
Bumps [libphonenumber](https://github.com/google/libphonenumber) from 8.12.41 to 8.12.42.
- [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.41...v8.12.42)

---
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>
2022-01-27 23:11:05 +00:00
ganfra c14eb050b1 Merge branch 'develop' into feature/fga/message_bubbles 2022-01-27 18:59:10 +01:00
ariskotsomitopoulos 78dfac52a7 ktlint format 2022-01-27 18:39:43 +02:00
ariskotsomitopoulos b2a2fe2710 Merge branch 'develop' into feature/aris/threads
# Conflicts:
#	matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/session/room/model/relation/RelationService.kt
#	tools/check/forbidden_strings_in_code.txt
#	vector/build.gradle
#	vector/src/main/java/im/vector/app/core/di/FragmentModule.kt
#	vector/src/main/java/im/vector/app/core/resources/UserPreferencesProvider.kt
#	vector/src/main/java/im/vector/app/features/command/Command.kt
#	vector/src/main/java/im/vector/app/features/command/CommandParser.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/RoomDetailViewState.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/TimelineFragment.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/TimelineViewModel.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/composer/MessageComposerViewModel.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/search/SearchResultItem.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/timeline/TimelineEventController.kt
#	vector/src/main/java/im/vector/app/features/home/room/detail/timeline/factory/MessageItemFactory.kt
#	vector/src/main/java/im/vector/app/features/navigation/Navigator.kt
#	vector/src/main/java/im/vector/app/features/notifications/NotificationUtils.kt
#	vector/src/main/java/im/vector/app/features/settings/VectorPreferences.kt
#	vector/src/main/res/layout/fragment_timeline.xml
#	vector/src/main/res/xml/vector_settings_labs.xml
2022-01-27 17:11:26 +02:00
Benoit Marty 4aff1ab017 AGP 7.1.0 2022-01-27 16:08:47 +01:00
ariskotsomitopoulos 554ece724e - Remove counter from thread notifications
- Fix red dot on user mentioning
2022-01-27 14:55:34 +02:00
ariskotsomitopoulos f53b711e0d When thread disabled add thread replies within threads ( to the users with threads enabled ) 2022-01-27 13:49:03 +02:00
ariskotsomitopoulos 358a7d0ec4 Handle latest thread message & root thread edition to update thread summary and thread list appropriately 2022-01-27 13:22:04 +02:00
Onuray Sahin 2ad7a020cf Current user is not a king to end polls, check event sender id instead. 2022-01-27 00:00:29 +03:00
Onuray Sahin db1152cb72 Allow ending polls if user created it. 2022-01-26 17:50:31 +03:00
ariskotsomitopoulos 92d082c26a Improve thread message deletion
Fix thread summary after isLimited events
2022-01-26 14:07:07 +02:00
Benoit Marty 38a6c3ea61 Merge branch 'develop' of github.com:vector-im/element-android into develop 2022-01-25 21:50:12 +01:00
Benoit Marty fe5109fead Version++ 2022-01-25 21:48:18 +01:00
Adam Brown 0fda2a125a fixing line length 2022-01-25 17:58:51 +00:00
ariskotsomitopoulos c19b52cded Enhance thread summary
Fix deleted root thread messages when show deleted messages are enabled/disabled
2022-01-25 18:21:42 +02:00
Benoit Marty 1ee29555c6 Merge branch 'develop' into feature/ons/static_location 2022-01-25 16:01:16 +01:00
Benoit Marty 589cfeb0cc ktlint 2022-01-25 16:00:52 +01:00
Benoit Marty 9f4deabe08
Merge pull request #5043 from vector-im/feature/bma/track_performance
Track performance
2022-01-25 15:54:57 +01:00
Benoit Marty d9386cd61f ktlint 2022-01-25 15:54:15 +01:00
Benoit Marty 63b3def667
Merge pull request #5008 from SpiritCroc/globstar
Speed up event match regex evaluation for big messages
2022-01-25 15:52:55 +01:00
Benoit Marty b619f70904 Merge branch 'develop' into feature/ons/static_location 2022-01-25 14:29:13 +01:00
ariskotsomitopoulos b1b27bdd0e Enhance edit to support new threads fallback 2022-01-25 14:12:13 +02:00
Benoit Marty 80d9b64e5a Cover also the error case. 2022-01-24 22:49:34 +01:00
Benoit Marty cf86fe34d5 Improve SDK API (self review) 2022-01-24 22:37:07 +01:00
Onuray Sahin d65899ef88 Fix sharing location action in timeline. 2022-01-24 21:55:32 +03:00
ariskotsomitopoulos fe88e81d4a - Refactor thread awareness (handle decrypted rooms, images, stickers etc)
- Enable/disable threads functionality
- New fallback thread implementation
2022-01-24 16:55:15 +02:00
Onuray Sahin b0b92c062e Undisclosed poll implementation. 2022-01-24 14:31:50 +03:00
Onuray Sahin 7f97e78ba3 Merge branch 'develop' into feature/ons/edit_polls
* develop: (66 commits)
  toolbar management  (#4887)
  adding changelog entry
  adding back periodic flag when scheduling automatic background workers
  Fix enum class warning
  Split long lines Done by https://github.com/matrix-org/matrix-analytics-events/pull/16
  Add new class in analytics plan
  Fix conditional for Delight issue automation
  Add missing import in kdoc
  Update kdoc
  Enable Delight issue automation
  Fix an error in string resource (#4997)
  Changelog
  Add some unit test for the command parser. Not all commands are covered, could add more tests later.
  data class.
  use sealed interface
  Small cleanup
  Command parser is not a static object anymore
  Add changelog
  Use Throwable.isLimitExceededError extension
  Do not automatically retry 429 with a too long delay
  ...
2022-01-23 22:15:36 +03:00
Onuray Sahin 9dd48045f6 Invalidate previous votes for edited polls. 2022-01-23 19:32:13 +03:00
Benoit Marty f6d856d828 Analytics: report performance event about sync request - send number of joined rooms 2022-01-21 17:42:40 +01:00
Benoit Marty cab06c4b52 Analytics: report performance event about sync request 2022-01-21 16:44:19 +01:00
Onuray Sahin a871ce26c2 Fix event id of poll replace events. 2022-01-21 18:07:39 +03:00
ganfra 8c4dff4db9 Bubbles: change again url preview 2022-01-21 16:00:58 +01:00
Onuray Sahin ea9e5183dc Fix rendering edited polls in timeline. 2022-01-21 16:20:08 +03:00
Adam Brown e8f412b8a1 adding back periodic flag when scheduling automatic background workers 2022-01-20 17:07:14 +00:00
Onuray Sahin c3d7a253e4 Allow editing polls. 2022-01-20 17:41:03 +03:00
SpiritCroc af34399135 Speed up event match regex evaluation for big messages
`regex.containsMatchIn()` for `.*@room.*` can take significantly longer
than checking for `@room` (some real-world events I was getting took
around 15 seconds with this, significantly slowing down the sync
parsing).

Checking `containsMatchIn()` does not lead to different results when
having leading and trailing stars however, it will match in the same
cases as when these are omitted.

For testing purposes, I sent myself some Lorem Ipsum with 5000 words
(not containing any @room).
Without this change, the regex evaluation takes about 16 seconds.
With this change, the regex evaluation now takes significantly less then
a second.
2022-01-20 12:16:34 +01:00
ariskotsomitopoulos e0630ceac0 Fix mentions UI within threads 2022-01-20 13:02:35 +02:00
Florian Renaud b8fa6f9ec8 Add missing import in kdoc 2022-01-20 10:50:07 +01:00
Florian Renaud 879d5eb5f6 Update kdoc 2022-01-20 10:49:02 +01:00
ariskotsomitopoulos 38f193fbd5 Add LightweightSettingsStorage in sdk
Enable thread awareness when threads are disabled
Enhance enable/disable thread messages to app & sdk
Add Shared PReferences to sdk
2022-01-19 18:52:02 +02:00
Florian Renaud 83c961e255 Use Throwable.isLimitExceededError extension 2022-01-19 16:56:00 +01:00
Florian Renaud fd61f07373 Do not automatically retry 429 with a too long delay 2022-01-19 16:56:00 +01:00
Benoit Marty b71ac4d8fa
Revert "Bump realm-gradle-plugin from 10.9.0 to 10.10.0" 2022-01-19 15:51:51 +01:00