PR 3/3: Experimental Native Element Call behind lab flag - #7747
Conversation
|
📱 Scan the QR code below to install the build (arm64 only) for this PR. |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## feature/valere/native_call_stack #7747 +/- ##
====================================================================
- Coverage 81.00% 80.97% -0.04%
====================================================================
Files 2820 2823 +3
Lines 83432 83462 +30
Branches 11482 11488 +6
====================================================================
- Hits 67583 67581 -2
- Misses 11436 11468 +32
Partials 4413 4413 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
86d3389 to
a949ce8
Compare
a949ce8 to
348b7f3
Compare
The in app PIP is different from the system app, it is a custom one. I wanted to experiment on that to see if we could do some interesting interactions. |
Oh, I didn't realise this one was in-app. I think the ideal solution would be to have both PiP windows behaving similarly (same position, use the other user's aspect ratio, etc.) but I'm not sure how feasible that is. |
|
@jmartinesp I bumped the element-call version to a new release. For now the in app floating call respect the video source ratio, but not position. |
f4ad8bc to
a756917
Compare
jmartinesp
left a comment
There was a problem hiding this comment.
Thanks! I think this is good enough for an initial integration behind a feature flag, and the code seems OK.
| onDispose { } | ||
| } | ||
|
|
||
| ElementCallOverlay( |
There was a problem hiding this comment.
Double checking, but what we're doing is, instead of opening a new activity for EC, we're using MainActivity and overlaying EC on top of everything, right?
I'm a bit concerned this could cause issues with other UI elements, like pop ups or snackbars that could be displayed in a window on top of the current activity, but I can't think of anything at the moment that could cause this scenario.
There was a problem hiding this comment.
Yes for the component ships no activity.
It is done like that to have a better and fast transition from minimize (PIP or banner) to maximized, no video/sound gap, etc..
But yes we have to then think about interactions with other components (like the media preview maybe?), but this is the kind of integration that we need according to the design; like when banner is integrated in the header?
That make me think that maybe the back action is not working to minimize the call, I will test and create an issue
A wrapper around the logged-in content rather than an overlay, because a minimized call takes a strip of height above it while a maximized one covers it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
supportsPictureInPicture and smallestScreenSize have to be declared here, because a library cannot change a host Activity's manifest entry. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The overlay now draws with no controller too, so starting a call no longer resets the content's state, such as the composer draft. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26b2ed1 to
83b1890
Compare
|




Content
Motivation and context
Screenshots / GIFs
Tests
Tested devices
Checklist