Commit graph

4180 commits

Author SHA1 Message Date
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
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
105118f831 Merge hotfix 1.3.18 to develop 2022-02-03 15:48:51 +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
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
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
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
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
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
ariskotsomitopoulos
8cc96e27bc - Add threads to lab settings
- Disable thread awareness due to the new fallback mechanism
2022-01-19 12:28:00 +02:00
ariskotsomitopoulos
4cff3938e7 - Hide read receipts from thread timeline
- Enhance FetchThreadTimelineTask
2022-01-18 16:05:41 +02:00
ariskotsomitopoulos
707397cb9d cleanup 2022-01-18 15:28:44 +02:00
Onuray Sahin
7993ff39a5 Add missing fields to location event content. 2022-01-18 15:33:48 +03:00
ariskotsomitopoulos
636474b748 Merge branch 'develop' into feature/aris/threads
# Conflicts:
#	matrix-sdk-android-rx/src/main/java/org/matrix/android/sdk/rx/RxRoom.kt
#	matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/RoomSyncHandler.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/composer/MessageComposerViewModel.kt
2022-01-18 12:41:40 +02:00
ariskotsomitopoulos
5e23947419 Enhance filtering to support threads 2022-01-17 19:22:22 +02:00
Onuray Sahin
5581e0b5ba Code review fixes. 2022-01-17 18:30:04 +03:00
ariskotsomitopoulos
81a1dfd66d PR Remarks 2022-01-17 17:28:40 +02:00
Benoit Marty
eafb76b9b6
Merge pull request #4960 from vector-im/feature/aris/improve_local_echo_stuck_fix
Avoid deleting sent messages on non room events
2022-01-17 15:26:46 +01:00
Benoit Marty
c59bb5740a Add comment after merge of #4952 2022-01-17 15:24:51 +01:00
Benoit Marty
95b116b8a1
Merge pull request #4952 from abaker/disable_http_2
Force HTTP/1.1
2022-01-17 15:20:23 +01:00
ariskotsomitopoulos
f6067977fe Refactor ThreadMessagingTest 2022-01-17 14:27:30 +02:00
ariskotsomitopoulos
b343739a71 Enhance decrypted thread summary to return poll questions 2022-01-17 14:27:17 +02:00
ariskotsomitopoulos
5b786e5749 Remove duplicate RetryTestRule 2022-01-17 14:26:39 +02:00
ariskotsomitopoulos
52348e399e ktlint fixes 2022-01-17 13:30:59 +02:00
ariskotsomitopoulos
879c4ffef6 Improve logic 2022-01-17 13:00:34 +02:00
ariskotsomitopoulos
01ade64f3b fix ktlint format 2022-01-17 12:27:53 +02:00
ariskotsomitopoulos
3656896af9 Avoid deleting sent messages on non room events 2022-01-17 12:13:01 +02:00
ariskotsomitopoulos
53b82dfa3f Fix permalink handling for threads regarding timeline changes 2022-01-14 13:02:08 +02:00
Benoit Marty
31e487b073
Merge pull request #4911 from vector-im/feature/nfe/rename_kick_command
Remove "X kicked X" terminology when removing people from a room
2022-01-14 08:42:18 +01:00
Alex Baker
7e4e8339e6 Force HTTP/1.1
Signed-off-by: Alex Baker <alex@beeper.com>
2022-01-13 17:50:24 -06:00