-
Notifications
You must be signed in to change notification settings - Fork 127
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support multi-window replay on Android #1912
base: dev
Are you sure you want to change the base?
Conversation
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
In |
CI gfxreconstruct build queued with queue ID 323055. |
CI gfxreconstruct build # 5549 running. |
CI gfxreconstruct build # 5549 failed. |
I think this probably also needs changes in |
19fb3c6
to
694ebbb
Compare
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
Hi, I have modified the activity name in android/scripts/gfxrecon.py. |
CI gfxreconstruct build queued with queue ID 323522. |
CI gfxreconstruct build # 5556 running. |
CI gfxreconstruct build # 5556 failed. |
694ebbb
to
c195705
Compare
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
I've tested this on a device with a notch, and I noticed the replay does not extend over the cutout area. To fix that, I had to add a <?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="@android:style/Theme.NoTitleBar.Fullscreen">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:windowTranslucentNavigation">true</item>
</style>
</resources> |
android/tools/replay/src/main/com/lunarg/gfxreconstruct/replay/ReplayActivity.java
Outdated
Show resolved
Hide resolved
android/tools/replay/src/main/com/lunarg/gfxreconstruct/replay/ReplayActivity.java
Outdated
Show resolved
Hide resolved
android/tools/replay/src/main/com/lunarg/gfxreconstruct/replay/ReplayActivity.java
Show resolved
Hide resolved
c195705
to
7cba771
Compare
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
android/tools/replay/src/main/com/lunarg/gfxreconstruct/replay/ReplayActivity.java
Outdated
Show resolved
Hide resolved
7cba771
to
d332a5c
Compare
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the updates! Once my last comment is resolved, LGTM.
Introduce JAVA layer into gfxreconstruct to enable replay multi-window trace files on Android. The command line changes to am start -n "com.lunarg.gfxreconstruct.replay/.ReplayActivity"
d332a5c
to
0d436aa
Compare
Author qiq-2022 not on autobuild list. Waiting for curator authorization before starting CI build. |
@qiq-2022 , I ran this on my Pixel 6 with Android 13 (even with Antonio's change) and I only see half of the screen. I believe @per-mathisen-arm mentioned there were issues pre Android 14, but I thought he mentioned you had fixes for that. Do you have suggestions? Thanks Update It looks like it's because the application is launching in portrait mode on my phone. If I manually rotate it, the image looks correct. |
Yes that's true. This problem comes from the existing way of changing orientation. Simply call "setRequestedOrientation" after the first window created will leads to this issue. If we only set the orientation at the very beginning, it will not have this problem. My proposal is to fix the app orientation to landscape since most traces are captured in landscape mode. And provide an option that can make the app replay in portrait mode. Otherwise, it will have to fix the way of changing orientation during replay. I actually raised an issue for awareness: #1945 |
We actually have a combination of portrait and landscape mode captures. This is because we capture Android GUI as well since it uses SKIA with Vulkan. So we need to be able to dynamically switch based on the capture. |
I'm not sure if this is the fix, but if I add the following in ReplayActivity.java, it seems to work on the few tests I've tried: In ReplayActivity.java, addNewView, right after
I don't know if:
I have to do more testing. But I'll let you know. |
Nope. That worked for landscape captures when the device was locked in portrait mode, but not portrait captures. |
CI gfxreconstruct build queued with queue ID 367637. |
CI gfxreconstruct build # 367637 cancelled. |
Introduce JAVA layer into gfxreconstruct
to enable replay multi-window trace files on Android. The command line changes to
am start -n "com.lunarg.gfxreconstruct.replay/.ReplayActivity"