Skip to content

lockscreen: Add extension points + API to support Phosh-based DM / Phrog use-case

Sam Day requested to merge samcday/phosh:phrog into main

As discussed in Matrix yesterday.

These patches plumb in support for an "extra page" on the lockscreen. If an extra page is provided, it will sit between the info and keypad pages.

Some internal rework was performed to properly support this use case:

  • the duplicate PhoshLocksreenPos enum was dropped in favor of the public PhoshLockscreenPage enum
  • some duplicate handling of "current page" logic and page-setting code was collapsed into phosh_lockscreen_set_page

An API method is added that allows setting the default page, rather than this being harcoded to assume that the info page is default. The default page is navigated to when the lockscreen is first made visible, keypad entry times out, and when the Escape key is pressed.

In addition, some new public API methods are made available to get/clear/shake the PIN entry.

Before this is ready to land I still want to:

  • Add some tests for extra page handling

Merge request reports