expo: Support rendering multiple lines of text

Use the measurement info to write each line of text separately, thus
respecting word-wrapping and newlines.

Fix up the comment for scene_obj_render() while we are here.

Since a lineedit does not support alignment, add a special case to just
display the text if there is no measurement. This happens assuming the
lineedit is initially empty.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2025-05-02 08:46:42 -06:00
parent b62a8cfbb6
commit 03f9ce815c
4 changed files with 41 additions and 5 deletions

View File

@@ -241,6 +241,10 @@ int bootflow_menu_start(struct bootstd_priv *std, bool text_mode,
if (text_mode)
expo_set_text_mode(exp, text_mode);
ret = expo_calc_dims(exp);
if (ret)
return log_msg_ret("bmd", ret);
*expp = exp;
return 0;