Commit Graph

1564 Commits

Author SHA1 Message Date
Jorge Martin Espinosa
247071b196 Try avoiding trailing punctuation inside linkified URLs. (#4214)
Create `LinkfierHelper` and post-process URLSpans added to make sure they honor the actual URLs in text by removing unnecessarily added trailing punctuation.
2025-02-21 16:58:59 +00:00
Benoit Marty
bf62c51a97 Merge pull request #4274 from element-hq/feature/bma/mediaTimelineImprovment
Update Matrix Room API and allow media swipe on pinned event only.
2025-02-19 09:41:27 +01:00
Benoit Marty
36d5528904 Merge branch 'develop' into feature/valere/support_verification_violation_banner 2025-02-18 15:42:08 +01:00
Benoit Marty
730fcde506 typo 2025-02-18 14:18:24 +01:00
Benoit Marty
b1d57244c2 Move roomMemberIdentityStateChanges from ComposerState to MessagesState. 2025-02-18 14:17:21 +01:00
Benoit Marty
1a6c9b98f7 Move DisabledComposer to MessageView. 2025-02-18 14:12:22 +01:00
Benoit Marty
c7e8582778 Cleanup code. 2025-02-18 14:01:44 +01:00
Benoit Marty
a807141a91 Cleanup code. 2025-02-18 13:42:56 +01:00
Benoit Marty
bc6c022cbf Trailing comma and named param. 2025-02-18 13:36:54 +01:00
Benoit Marty
1b9c3700b8 Move fun and add private modifier. 2025-02-18 13:36:05 +01:00
Benoit Marty
e35eda0c67 Improve MatrixRoom.createTimeline API. 2025-02-18 12:12:36 +01:00
Benoit Marty
c02436d3f0 Update Matrix Room API and allow media swipe on pinned event only. 2025-02-17 16:45:25 +01:00
Benoit Marty
83ede0f774 Sync strings again.
Revert wrong change on Hungarian plurals.
2025-02-17 11:29:49 +01:00
bmarty
3dddd90d97 Sync Strings from Localazy 2025-02-17 00:30:17 +00:00
ganfra
ba07370dfa feature(room preview): Add option to forget room, improve the room preview screen for banned rooms.
Some internal refactoring was done too:
- Remove RoomInfo.isPublic to only use JoinRule.
- Also take into account restricted access rooms for previews.
2025-02-10 19:13:02 +01:00
Valere
f2c0bcaf07 post rebase: Fix test 2025-02-06 17:19:44 +01:00
Benoit Marty
98f793b02e Merge pull request #4226 from element-hq/feature/bma/themeOverride
Theme override
2025-02-06 16:48:16 +01:00
Jorge Martin Espinosa
c040cec108 Create SyncOrchestrator (#4176)
* Create `SyncOrchestrator` to centralise the sync start/stop flow through the whole app: the decision is based on several inputs: sync state, network available, app in foreground, app in call, app needing to sync an event for a notification.

* Make network monitor return network connectivity status, not internet connectivity

* Don't stop the `SyncService` when network connection is lost, let it fail instead. This prevents an issue when using the offline mode of the SDK, which made the wrong UI states to be shown when the `SyncState` is `Idle` (that is, after the service being manually stopped).

* Rename `NetworkStatus.Online/Offline` to `Connected/Disconnected` so they're not easily mistaken with internet connectivity instead
2025-02-06 16:36:57 +01:00
Valere
9b16446d6d fixup: remove dead code (refactored method) 2025-02-06 16:27:22 +01:00
Valere
1d2886dd6e fixup: ktlint 2025-02-06 16:27:22 +01:00
Valere
eae0388794 fix disabled composer padding/margin diff with composer 2025-02-06 16:27:21 +01:00
Valere
fe235de273 code review: renaming, comments, extract common code 2025-02-06 16:27:21 +01:00
Valere
533548196c test: Add new IdentityChangeStateViewTest 2025-02-06 16:27:21 +01:00
Valere
f358255262 Fix konsist warnings 2025-02-06 16:27:20 +01:00
Valere
708ff7bfec Quick test for verification violation event 2025-02-06 16:27:19 +01:00
Valere
1087b151a3 feature(crypto): verification violation handling and block sending 2025-02-06 16:27:19 +01:00
Benoit Marty
39cb6e03f0 Use color from ElementTheme. 2025-02-06 15:10:15 +01:00
Benoit Marty
0d6d74512f Use ElementTheme instead of MaterialTheme 2025-02-06 15:10:15 +01:00
Benoit Marty
79293e1e9d Merge pull request #4198 from cbs228/bugfix/full-browser-for-web-links
Open chat links in regular browser tabs
2025-02-06 09:10:23 +01:00
Benoit Marty
c7a320d148 Create extension SyncService.isOnline() 2025-02-03 20:50:08 +01:00
Benoit Marty
0409ed84ed Enable Offline mode of the SyncService, so that the sync starts automatically when the network is back.
Also rely on the sync state to render the "Offline" banner.
2025-02-03 18:27:32 +01:00
bmarty
5a4cac7d2d Sync Strings from Localazy 2025-02-03 00:29:01 +00:00
ganfra
c689809b55 Merge pull request #4212 from element-hq/feature/fga/room_settings_security_privacy
Feature : room settings - security and privacy
2025-01-29 17:29:56 +01:00
Colin S
251c873672 messages: separate custom tab links from normal links
Some links in the `MessagesView` are part of Element X itself,
such as the help pages in `LearnMoreConfig` [1]. These links
should open in an "in-app" Chrome Custom Tab, because they are
basically part of the app.

Web links from chat messages, on the other hand, should open in
the user's preferred web browser as regular tabs.

Separate "regular" links from "custom tab" links with a new
parameter `onLinkClick(..., customTab)`. If true, the link
opens in a custom tab.

Links within `TimelineView` are always opened in a normal tab.

[1]: appconfig/src/main/kotlin/io/element/android/appconfig/LearnMoreConfig.kt
2025-01-28 20:53:22 -06:00
ganfra
a8b3c7c5a7 feat(security&privacy) : fix tests after some rework landed 2025-01-28 21:08:14 +01:00
Benoit Marty
fdf40120a7 Add ability to swipe between media when opened from the timeline. 2025-01-28 09:58:44 +01:00
Colin S
e37e43bf79 messages: open web links in full web browser
In [1], all hyperlinks within `MessagesNode` switched to using

    activity.openUrlInChromeCustomTab()

instead of with `openUrlInExternalApp()`.

This causes web links in chat messages to open in an "in-app"
Chrome Custom Tab [2] instead of the user's configured "full"
web browser. This is a UX nuisance. Open web links in a full
browser instead.

Closes #3885 [3].

[1]: 57e45aa834 (Identity change: handle click on "learn more")

[2]: https://developer.chrome.com/docs/android/custom-tabs/guide-get-started#opening_a_custom_tab

[3]: https://github.com/element-hq/element-x-android/issues/3885
2025-01-25 21:07:22 -06:00
Benoit Marty
9b0df915a6 Snackbar: SnackbarDispatcher.post does not need to be suspend. 2025-01-24 14:42:07 +01:00
Benoit Marty
03523c9567 Provide duration 2025-01-22 16:22:18 +01:00
Benoit Marty
7397dde87d Add support for files navigation (when coming from the gallery) 2025-01-22 16:22:15 +01:00
Jorge Martin Espinosa
f72fb9650b Close the media preview screen ASAP with sending queue enabled (#4089)
* Close the attachment preview screen ASAP when sending media with the send queue is enabled

* When the send queue FF is not enabled make sure to dismiss the screen after the media has been sent

* Make sure we get a scaled thumbnail from videos too, not only for images

* Unify several state holders into `SendActionState`.

* Fix lint issues, add `Flow.firstInstanceOf` extension fun

* Update screenshots

---------

Co-authored-by: ElementBot <android@element.io>
2025-01-08 15:49:17 +00:00
Benoit Marty
05fc76822a Apply dual licenses: AGPL + Element Commercial to file headers.
2 replace all actions have been performed:
- "SPDX-License-Identifier: AGPL-3.0-only" to "SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial"
- "Please see LICENSE in the repository root for full details." to "Please see LICENSE files in the repository root for full details."
2025-01-07 10:05:04 +01:00
Marco Antonio Alvarez
b07888e807 If there's no mime type in the sticker event we can safely assume it's an image anyway.
Signed-off-by: Marco Antonio Alvarez <surakin@gmail.com>
2025-01-04 19:41:04 +01:00
bmarty
1cadb353dd Sync Strings from Localazy 2024-12-30 10:12:13 +00:00
bmarty
7a57ec1cc1 Sync Strings from Localazy 2024-12-23 00:16:39 +00:00
Benoit Marty
f8b2f24962 Move share and download actions to the bottom sheet 2024-12-19 16:20:50 +01:00
Benoit Marty
c0f8cdbc3a Merge pull request #4056 from element-hq/feature/bma/messageActionList
Update message action list
2024-12-18 16:47:51 +01:00
ganfra
fc8f3af85e deps(sdk) : update rust sdk to 0.2.72 and fix api breaks 2024-12-18 15:24:04 +01:00
Benoit Marty
4e78402ada Add EditPoll action and fix tests. 2024-12-17 14:35:19 +01:00
Benoit Marty
f50faf8c31 Add tests on TimelineItemActionComparator 2024-12-17 14:35:19 +01:00