Commit graph

1528 commits

Author SHA1 Message Date
Colin S
ebdd9459e7
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
Colin S
31c3b0c881
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]: 5baefd479f (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
d26414f1d3 Provide duration 2025-01-22 16:22:18 +01:00
Benoit Marty
7df65b0350 Add support for files navigation (when coming from the gallery) 2025-01-22 16:22:15 +01:00
Jorge Martin Espinosa
65ce91a8fb
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
97f3be3dc5 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
ec27ea4697 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
2758adb646 Sync Strings from Localazy 2024-12-30 10:12:13 +00:00
bmarty
45db2a97ad Sync Strings from Localazy 2024-12-23 00:16:39 +00:00
Benoit Marty
5c41de60fa Move share and download actions to the bottom sheet 2024-12-19 16:20:50 +01:00
Benoit Marty
0648cf36f9
Merge pull request #4056 from element-hq/feature/bma/messageActionList
Update message action list
2024-12-18 16:47:51 +01:00
ganfra
ae03c4c718 deps(sdk) : update rust sdk to 0.2.72 and fix api breaks 2024-12-18 15:24:04 +01:00
Benoit Marty
a0e0d2569f Add EditPoll action and fix tests. 2024-12-17 14:35:19 +01:00
Benoit Marty
22214204fd Add tests on TimelineItemActionComparator 2024-12-17 14:35:19 +01:00
Benoit Marty
57595d6a57 Make TimelineItemAction an enum class. 2024-12-17 14:35:19 +01:00
Benoit Marty
293da9800e Reorder items in message action list. 2024-12-17 14:35:19 +01:00
Benoit Marty
dddef7936d Change icon of the remove caption action 2024-12-17 14:35:19 +01:00
Benoit Marty
df400a531f Replace ic_developer_options.xml by the icon from Compound. 2024-12-17 14:35:19 +01:00
Valere
abc8a14c61 feat(crypto): Support for new UtdCause for historical messages 2024-12-16 10:58:13 +01:00
Benoit Marty
3643ec30c4
Merge pull request #4036 from element-hq/feature/bma/extractVoiceMessagePlayer
Extract voice message player to its own module
2024-12-13 19:38:02 +01:00
Benoit Marty
f74258d794 Extract voice message player to its own module 2024-12-13 15:44:58 +01:00
Benoit Marty
ce09aac59d Add audio file support in the gallery and in the media viewer.
Make MediaPlayerControllerView compatible to control audio playback
2024-12-13 09:45:45 +01:00
Benoit Marty
da272ddb07 Implement month separator for the Gallery.
Improve day separator rendering in the timeline.
Use Today, Yesterday, and the name of the day if less than 7 days and do not render the year for the current year.
Improve date format for the media viewer.
Rework how date and time are computed.
ActionListView: Time can take more space, so update the layout.
2024-12-11 23:57:57 +01:00
Benoit Marty
3e1b1c29d1 Media Gallery 2024-12-09 16:48:48 +01:00
Benoit Marty
c1c1264e9a
Merge pull request #4007 from element-hq/sync-localazy
Sync Strings
2024-12-09 16:47:34 +01:00
bmarty
e8218b3a7c Sync Strings from Localazy 2024-12-09 00:30:45 +00:00
ganfra
603deb7b76 knock requests : refine and clean banner 2024-12-06 17:52:47 +01:00
ganfra
4b16ec6378 knock requests : branch banner in room 2024-12-06 16:31:24 +01:00
ganfra
a81392d8ac fix(composer) : use HideKeyboardWhenDisposed only in MessagesView 2024-12-04 11:31:33 +01:00
ganfra
01cd76a1de
Merge pull request #3988 from element-hq/feature/fga/update_rust_sdk_0.2.68
dependencies : update rust sdk to 0.2.68
2024-12-03 16:57:06 +01:00
ganfra
3e9fb94b9d fix(ui) : update timeline informative view 2024-12-03 15:55:31 +01:00
ganfra
894c0f296a deps : update rust sdk to 0.2.68 and expose new UtdCause 2024-12-03 14:29:37 +01:00
Benoit Marty
5e927398b1 Fix tests. 2024-12-03 11:37:19 +01:00
Benoit Marty
0574c14421 Simplify code. 2024-12-03 10:21:06 +01:00
Benoit Marty
04edf84783 Fix navigation issue. LocationViewer should not use the Appyx overlay. 2024-12-03 10:17:28 +01:00
Benoit Marty
dbb062f230 Create method buildMediaViewerNavTarget 2024-12-03 10:08:13 +01:00
Benoit Marty
a21bd16af6 Move more fields to TimelineItemEventContentWithAttachment 2024-12-03 09:42:13 +01:00
Benoit Marty
89aee0446a Fix player controls not showing on attachment preview. 2024-12-02 17:39:00 +01:00
Benoit Marty
3b5b443cbb MediaViewer: iterate on design 2024-12-02 17:05:44 +01:00
Benoit Marty
94ebac7e74 Add warning when adding a caption. 2024-12-02 15:53:48 +01:00
Valere
bcac193b12 feat(crypto): Support new expected UTD causes UX + Analytics 2024-12-02 14:52:16 +01:00
Benoit Marty
6592e3e939
Merge pull request #3967 from element-hq/feature/bma/mediaModule
Rework on media module
2024-12-02 14:41:36 +01:00
bmarty
5f8007d6f1 Sync Strings from Localazy 2024-12-02 00:30:02 +00:00
Benoit Marty
74e9dbe577
Merge pull request #3971 from element-hq/feature/bma/cleanup
Fix wrong name of classes and method
2024-11-29 15:37:23 +01:00
Benoit Marty
efabf712a8 Fix wrong name. 2024-11-29 15:19:09 +01:00
Benoit Marty
975457d19e Remove unused import 2024-11-29 12:05:46 +01:00
Benoit Marty
2fdb28d61c Fix navigation issue. 2024-11-29 11:28:35 +01:00
Benoit Marty
96d7fbfadc Move code to the impl module 2024-11-29 09:24:50 +01:00
Benoit Marty
13ae18983c Let the factory for ActionListPresenter be injected in Node. 2024-11-28 11:08:06 +01:00
Benoit Marty
207e4f8b1e Add unit test for PinnedMessagesListTimelineActionPostProcessor 2024-11-28 10:57:10 +01:00