Skip to content
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

Add callback to check what part of home screen is occluded #36

Open
8bitPit opened this issue Sep 2, 2021 · 8 comments
Open

Add callback to check what part of home screen is occluded #36

8bitPit opened this issue Sep 2, 2021 · 8 comments

Comments

@8bitPit
Copy link

8bitPit commented Sep 2, 2021

Hi there, I hope this is the right place to ask a compatibility question about home screen apps. I'm one of the developers of the home screen app Niagara Launcher, and lately, we're trying to optimize our UX for foldable devices, including the Surface Duo.

The Problem

I noticed that when the Duo is unfolded, the home screen is displayed on both displays. If you launch an app, it occupies one of the two screens by default. Now half of our home screen is occluded by that app. I tried to find a callback method that notifies us about what part of the app is currently visible/occluded to the user but unfortunately to no avail. Microsoft Launcher, on the other hand, rearranges its layout after launching an app. I wish there was a public method for third-party launchers to check what parts of the home screen are visible to the user and what parts are occluded by other apps.

What callbacks I tried but did not fire on when the home screen is partially occluded:

  • ScreenInfoListener.onScreenInfoChanged(...) (from com.microsoft.device.dualscreen:screenmanager-windowmanager:1.0.0-beta4)
  • windowInfoRepository.windowLayoutInfo (from androidx.window:window:1.0.0-beta02)
  • OnApplyWindowInsetsListener.onApplyWindowInsets(...) (from the Android framework)

Illustrations

Niagara Launcher on both screens

Screenshot_1630572941

Half of Niagara's home screen is occluded when an app is launched

Screenshot_1630572961
Screenshot_1630572968

Microsoft Launcher can readjust its layout (e.g. the dock at the bottom) when an app is launched

Screenshot_1630573025
Screenshot_1630573028

Additional details

I tested this on the Surface Duo Emulator (SurfaceDuoEmulator_2021.816.1_windows).

@8bitPit 8bitPit changed the title Add callback Add callback to check what part of home screen is occluded Sep 2, 2021
@CristianVerdes
Copy link

Hello, Peter!

At the moment the SDK does not offer this feature.
But I contacted multiple developers from our team and we are working to find a solution for you.

Thank you for creating the issue and detailed explanations!

@8bitPit
Copy link
Author

8bitPit commented Sep 3, 2021

Thank you very much, Christian 😀 Feel free to contact me if you and your team need any more details about the issue.

@CristianVerdes
Copy link

CristianVerdes commented Sep 21, 2021

Hello, Peter!

Just wanted to give you a status.
We identified a possible solution but we are still working on it. It might take a couple of weeks to complete.

Thank you!
Cristian

@wylew
Copy link

wylew commented Nov 5, 2021

Hello, Peter!

Just wanted to give you a status. We identified a possible solution but we are still working on it. It might take a couple of weeks to complete.

Thank you! Cristian

Any update from MSFT on this @CristianVerdes?

@CristianVerdes
Copy link

Hi wylew,

Thank you for the kind reminder and sorry for the late reply. There are many parts involved and we are still working to get the best solution possible.
Sadly there is no ETA for it but I will update you as soon as we have a more meaningful progress.

Thank you,
Cristian

@wylew
Copy link

wylew commented Apr 5, 2022

Any traction on this with MSFT @CristianVerdes ?

@wylew
Copy link

wylew commented Jun 9, 2022

Well this died on the vine...

@CristianVerdes
Copy link

Hey wylew,

Thanks for reaching out! Sadly, priorities shifted for us, and we couldn't handle this work. If anything changes, I will let you know in this thread.

Thank you,
Cristian

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants