Skip to content

Wait for shell and fade it in

Guido Günther requested to merge guidog/phoc:wait-for-shell into master

This adds a new option '-S' that allows to wait for a shell before rendering anything meaningful until the shell attaches.This makes sure the session can start up without flickering. It also makes sure the screen isn't shown in case of shell crashes.

To get there convert the renderer into a GObject and emit signals so we don't clutter the rendering loop even more. This also allows to disconnect easily when not needed.

The front of this series as some cleaunps and dropped support for wlroots < 0.12.0. Superseeds https://source.puri.sm/Librem5/wlroots/-/merge_requests/13 by using a differnt approach (we likely want layer-surface effects anyway at a later point). The nice thing while writing this was that some prior cleanups really start to pay off.

TODO

  • fix crash with xwayland enabled due to moving compsitor arround
  • i'm not totally happy with rendering in the server class, we might want to move that to helpers

Likely later

  • move touch point code out or main render function, it can use the 'render-end' signal too
  • ignore all input without a shell attached
  • don't hardcode shield color
  • rename render.{c,h} to renderer.{c,h} for consistency

Putting this for general feedback. I'm happy to split out cleanups if that helps.

Edited by Guido Günther

Merge request reports