tui: Allow multiple layouts to co-exist via ILayout helper class.

Bug: 266295230
Test:; build and run qemu tests
Change-Id: I63179fa8aead49877b21c0da1cfb24c51dda88fa
9 files changed
tree: a4a333e2ec0a5b6ac81e39df50517f0d73b52041
  1. examples/
  2. include/
  3. src/
  4. .clang-format
  6. manifest.json
  8. PREUPLOAD.cfg

ConfirmationUI Trusted App

This is an implementation of the ConfirmationUI trusted application for Trusty. It is meant as a reference implementation for OEMs who want to implement ConfirmationUI or “Android Protected Confirmation” and use Trusty as TEE OS.


  • Android platform/system/teeui
  • libcxx
  • freetype

Additional integration work

You will need a touch controller driver or another trusted input method for the targeted platform.

Included in this package is a sample layout as used by Pixel3(+) phones. For phones that use button on the right side of the phone this layout can be adjusted by configuring the context parameters. E.g.: (see TrustyConfirmationUI.cpp) conv.setParam(1440_px); conv.setParam(2960_px); conv.setParam(34.146_mm); conv.setParam(44.146_mm); conv.setParam(54.146_mm); conv.setParam(64.146_mm);


A default example layout is provided in examples/layouts/. To override the layout with a vendor specific one, define CONFIRMATIONUI_LAYOUTS to point to the layouts library you want to link against.