confirmationui: Change interface to better support multiple displays

Allow the device specific code to return both how many displays are
available and a context for the layout for a specific display.

Bug: 266157648
Test: manual; qemu-generic-arm64-test-debug
Change-Id: Icb3241e519754e4f54ea432d5c3191be6cb48a19
3 files changed
tree: e0ae73132006eb527e44fc1e6aebfeea9a4afbab
  1. examples/
  2. src/
  3. .clang-format
  5. manifest.json
  7. 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.