Some progress to handle notches / cutouts of phones better in : I have a small lib that gets panel cutout / notch information as paths and can calculate a bounding box . can use it to render cutouts for debugging and can use it for layout (so far only to shift the panel down). (see follow up posts for more pictures).
1️⃣ /4️⃣

phoc rendering cutouts in nexted mode to simulate cutouts and rounded edges:

2️⃣ /4️⃣

Show thread

phosh using that information to push the top panel down because there's a (simulated) notch:
3️⃣ /4️⃣

Show thread

Finally got to look at this again and instead of just pushing down 's top panel we now place the clock to the left or right based on the available space. The logic is still pretty simple but it covers the cases where we have data for in . Will try to land this in 0.29.0.

Show thread
Follow

And this is how it looks on a device with notch. Also enabled PHOC_DEBUG=cutouts so phoc renders the bounding box of these.

@agx

@agx what happens if battery percentage and VPN, and location services are enabled? Is there enough space on the right side? Is there enough space so that nothing is hiden?

Also what happens if you are typing in landscape mode and the text reached the cutouts?

@joao optional features (battery percentage, date, ...) are ignored for the calculation - there's not enough space (there isn't even enough space without a notch). There's also the language indicatore for example and the two kill switches.

Landscape: we don't clamp the space on purpose yet. That's a job for the compositor and we want some wayland protocol for that so it's a different topic.

@joao @agx on android 13, it just overflows extra icons into the notch void. I've seen it even cut some icons in half if there's not enough room to display the whole icon. Not saying phosh should do that, but mighty google hasn't figured it out either :P

@joao @agx this is what I see on an android phone (OP6) with a notch, the VPN icon runs into the notch area and is clipped.

@craftyguy @joao Interesting. That's basically what happens with this MR atm.

@craftyguy @agx

So no one will be able to say: look at how google does it ;)

@joao @craftyguy @agx

heh, I have looked at Android source code a few times to see how they solved a problem I have been having. In general, the answer is they implimented the first thing I thought of but figured that wasnt a great idea.

*shrug*

Sign in to participate in the conversation
Librem Social

Librem Social is an opt-in public network. Messages are shared under Creative Commons BY-SA 4.0 license terms. Policy.

Stay safe. Please abide by our code of conduct.

(Source code)

image/svg+xml Librem Chat image/svg+xml