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
3668e861f7
Merge pull request #4161 from element-hq/feature/bma/mediaNavigation
...
Media navigation with swipe gesture
2025-01-23 18:33:52 +01:00
Benoit Marty
da22758ce3
Fix pagination restart issue and cover by unit test.
2025-01-23 17:49:42 +01:00
ElementBot
ba0502cb7f
Update screenshots
2025-01-23 14:56:31 +00:00
Benoit Marty
4d2edfaccd
Improve code clarity
2025-01-23 15:43:33 +01:00
Benoit Marty
05660fbc18
Cleanup
2025-01-23 15:42:00 +01:00
Benoit Marty
beb835c97d
Fix color for media viewer according to Figma.
2025-01-23 15:37:09 +01:00
Benoit Marty
7dd797b595
Use Black for code clarity.
2025-01-23 15:08:40 +01:00
Benoit Marty
a5515b01c1
Add name to argument for clarity.
2025-01-23 15:06:10 +01:00
Benoit Marty
afd8161d1a
Add documentation on buildMediaViewerPageList.
2025-01-23 15:03:40 +01:00
Benoit Marty
2fde015fe8
Simplify
2025-01-23 14:57:59 +01:00
Benoit Marty
54182b0d8e
Simplify with code coerceAtLeast(0)`
2025-01-23 14:57:05 +01:00
Benoit Marty
dff9005a70
Remove useless parameter
2025-01-23 14:49:18 +01:00
Benoit Marty
0b04e40e1e
Merge pull request #4187 from element-hq/feature/bma/calver
...
Migrate to CalVer like versioning
2025-01-23 14:46:52 +01:00
Benoit Marty
1d30e28f0f
Merge pull request #4186 from element-hq/renovate/wysiwyg
...
Update wysiwyg to v2.38.2
2025-01-23 12:48:28 +01:00
Benoit Marty
90af825621
Migrate to CalVer-like versioning - update release script.
2025-01-23 11:30:27 +01:00
renovate[bot]
6e457cf9ba
Update wysiwyg to v2.38.2
2025-01-23 10:29:27 +00:00
Benoit Marty
536832dcac
Migrate to CalVer-like versioning
2025-01-23 11:10:53 +01:00
Benoit Marty
77887f90b6
Fix formatting.
2025-01-23 09:56:51 +01:00
Benoit Marty
1580c732db
Ensure gallery is paginating to get new items.
2025-01-23 09:29:37 +01:00
ElementBot
74be5a59a4
Update screenshots
2025-01-22 16:24:36 +01:00
Benoit Marty
b72f4bb3f1
Fix tests.
2025-01-22 16:24:35 +01:00
Benoit Marty
bac69c4a35
Add timestamp to trigger back pagination.
2025-01-22 16:24:34 +01:00
Benoit Marty
dfda13ac20
Restore overlay when user cancel the dragging
2025-01-22 16:24:34 +01:00
Benoit Marty
e496bc38ad
Introduce MediaViewerFlickToDismiss and extract to its own file
2025-01-22 16:24:32 +01:00
Benoit Marty
621558a134
MediaViewer: add error case in the UI.
2025-01-22 16:24:32 +01:00
Benoit Marty
18c3b5b43b
Add test on MediaViewerDataSource
2025-01-22 16:24:31 +01:00
Benoit Marty
428b81ccab
Add test on SingleMediaGalleryDataSource
2025-01-22 16:24:30 +01:00
Benoit Marty
f286f6d464
Small cleanup
2025-01-22 16:24:30 +01:00
Benoit Marty
a4cf1d7e08
Restore caption rendering
2025-01-22 16:24:29 +01:00
Benoit Marty
aa68a35581
sync strings
2025-01-22 16:24:29 +01:00
Benoit Marty
6c904a403c
Add exception for Konsist
2025-01-22 16:24:28 +01:00
Benoit Marty
d6ebec8d9a
Improve loading state and add preview.
2025-01-22 16:24:27 +01:00
Benoit Marty
c0542c8702
Fix and write tests
2025-01-22 16:23:46 +01:00
ganfra
3248041d90
media viewer : use collectAsState in the DataSource
2025-01-22 16:22:19 +01:00
Benoit Marty
bad45663d1
Remove unused import
2025-01-22 16:22:18 +01:00
Benoit Marty
d26414f1d3
Provide duration
2025-01-22 16:22:18 +01:00
ganfra
98a786bfa3
media viewer : create MediaViewerDataSource
2025-01-22 16:22:17 +01:00
Benoit Marty
8d6550bfdf
If not displayed, make sure to pause the audio / video
2025-01-22 16:22:17 +01:00
Benoit Marty
ca5c06f20b
Open in SingleMedia mode when coming from the timeline
2025-01-22 16:22:16 +01:00
Benoit Marty
7df65b0350
Add support for files navigation (when coming from the gallery)
2025-01-22 16:22:15 +01:00
Benoit Marty
32db42aebb
Suppress Detekt false positive (?)
2025-01-22 16:22:15 +01:00
Benoit Marty
a06607f530
Remove RetryLoading (use LoadMedia)
2025-01-22 16:22:14 +01:00
Benoit Marty
cbf7bf0fd4
Let MediaGalleryDataSource be an interface
2025-01-22 16:22:11 +01:00
Benoit Marty
35cc5df2b5
Create MediaGalleryDataSource and extract logic from MediaGalleryPresenter.
2025-01-22 16:21:37 +01:00
Benoit Marty
e4768a8850
Merge pull request #4183 from element-hq/renovate/org.matrix.rustcomponents-sdk-android-0.x
...
Update dependency org.matrix.rustcomponents:sdk-android to v0.2.76
2025-01-22 16:16:07 +01:00
Benoit Marty
7d73758cda
Merge pull request #4184 from element-hq/feature/bma/removeFirstIfSingle
...
Replace our firstIfSingle extension with singleOrNull from the Kotlin library
2025-01-22 16:14:11 +01:00
Benoit Marty
2e5323853c
Replace our firstIfSingle extension with singleOrNull from the Kotlin library.
2025-01-22 15:49:41 +01:00
Benoit Marty
2bebb5ed0a
Fix API break
2025-01-22 15:42:08 +01:00