From patchwork Mon Jan 19 20:41:20 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Glass X-Patchwork-Id: 1657 Return-Path: X-Original-To: u-boot-concept@u-boot.org Delivered-To: u-boot-concept@u-boot.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1768855436; bh=LRc5iIYAmvJjeyj2QYmRzCGbsPcrbGRB7Dd3MvLnWME=; h=From:To:Date:In-Reply-To:References:CC:Subject:List-Id: List-Archive:List-Help:List-Owner:List-Post:List-Subscribe: List-Unsubscribe:From; b=A7c076YXIKpKHz1j4/T+kJByw4T6D13YQGxY2GSxixBLIcFA3tlXsljB1dajqkiv8 XiYSNjKMr8z/kRzgOtpRbs3Dh+tEKrCNqXnPsy/OQtfvTll/N8MGdlKv29VUu4PKJO DJt/Jvy02LGA42KV5SZcMN21+IzY/qOsANdpjtrfkdwUGT6EIbB+IKkp5u7r4tuf/C WxssvmHMFmSDnp452C9HyavDEAD0g8BXySESWu1pKX3MXcTkKk8d6TYLhoCsrU4ypm 1Ep6EW+HyWnLTPv0DT37K8iSqtyVqHzl9M3wREduYhb7ngk7l/8K+2W6tJUYpXIY3b nJg+2meobxU9g== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id C22756951C for ; Mon, 19 Jan 2026 13:43:56 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id OSXBlR2xViQF for ; Mon, 19 Jan 2026 13:43:56 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1768855436; bh=LRc5iIYAmvJjeyj2QYmRzCGbsPcrbGRB7Dd3MvLnWME=; h=From:To:Date:In-Reply-To:References:CC:Subject:List-Id: List-Archive:List-Help:List-Owner:List-Post:List-Subscribe: List-Unsubscribe:From; b=A7c076YXIKpKHz1j4/T+kJByw4T6D13YQGxY2GSxixBLIcFA3tlXsljB1dajqkiv8 XiYSNjKMr8z/kRzgOtpRbs3Dh+tEKrCNqXnPsy/OQtfvTll/N8MGdlKv29VUu4PKJO DJt/Jvy02LGA42KV5SZcMN21+IzY/qOsANdpjtrfkdwUGT6EIbB+IKkp5u7r4tuf/C WxssvmHMFmSDnp452C9HyavDEAD0g8BXySESWu1pKX3MXcTkKk8d6TYLhoCsrU4ypm 1Ep6EW+HyWnLTPv0DT37K8iSqtyVqHzl9M3wREduYhb7ngk7l/8K+2W6tJUYpXIY3b nJg+2meobxU9g== Received: from mail.u-boot.org (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id AC5B2693E3 for ; Mon, 19 Jan 2026 13:43:56 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1768855435; bh=eNoeuJODao8BowWnI02o1A24dQ4pmY27cEuBKJaNBPQ=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=hgO9IJfOyYRECHivmUkVzMhJfswd5KClfiQoqpEIjDNxNS27v+cFmdKK4dw6feRpT xtGsPA2XR0GqGi4PpkmA9CnrCmXvsEghjRjLHz0rp9/nfxYR8LUsE0HjYzCK0ir4aZ pMrOClsPvgzd8nuhiaMI4QpcGUoFEMSn/l3SlxV6ZB4h2izpu0zj8f0BpcjO72KSMf MXLf0B3EMmJQvot6DHF52OmF6cpvqQYv6IyV3RwlFNuKjG+cEGX2mB97rM4NauNWth XPUbAHxSq4CWWx8zOvXBnQfF8ea7fpkkQwkGc+wo5Fj1fOdFeviSp4VtHZNTWjPj9I TQb0WpNCeH6Yw== Received: from localhost (localhost [127.0.0.1]) by mail.u-boot.org (Postfix) with ESMTP id 499EA693BA; Mon, 19 Jan 2026 13:43:55 -0700 (MST) X-Virus-Scanned: Debian amavis at Received: from mail.u-boot.org ([127.0.0.1]) by localhost (mail.u-boot.org [127.0.0.1]) (amavis, port 10026) with ESMTP id ZxycwPanAttb; Mon, 19 Jan 2026 13:43:55 -0700 (MST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=u-boot.org; s=default; t=1768855431; bh=D2Lnl3+3OcvO0rTxi05qTKOTLv02siPBopGdAVs9Ppk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Bl75avbeYejE3TNG2UYVnRRdZY/QWmg1v/TGABBxuLn/Ui7U4gSuNhQlrF7nPgtNf 2X2a1fPK+WuYZNE+o8wjSdWTNmnOGsJPIrVHcrQvYGVNqGc45g5PRk0iV+46nRIUgl OJkAkiXWjxzTGuZtscWZiRej28lc1+Vv9MALjhAjCIhaRqZa8LBw5oFxfa7ankjwS1 6Ol5wBymDTB3gMTmoAEYMaMs3FVIHFX4ZO6K377fO3CgAeob2KVDyD/5jJKzOXfrX+ S40ffFm0xinoi2uBnezWbl7kHGl99gFfKHcWdXL5XaBiYY+8nZOjZW3sdWlh+0BA0R n2okhcziqUFlw== Received: from u-boot.org (unknown [73.34.74.121]) by mail.u-boot.org (Postfix) with ESMTPSA id 00FB9693E3; Mon, 19 Jan 2026 13:43:50 -0700 (MST) From: Simon Glass To: U-Boot Concept Date: Mon, 19 Jan 2026 13:41:20 -0700 Message-ID: <20260119204130.3972647-28-sjg@u-boot.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260119204130.3972647-1-sjg@u-boot.org> References: <20260119204130.3972647-1-sjg@u-boot.org> MIME-Version: 1.0 Message-ID-Hash: 7XVEGQY6OFCBU6S7X3USCCR6XVWLYXFJ X-Message-ID-Hash: 7XVEGQY6OFCBU6S7X3USCCR6XVWLYXFJ X-MailFrom: sjg@u-boot.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Simon Glass , "Claude Opus 4 . 5" X-Mailman-Version: 3.3.10 Precedence: list Subject: [Concept] [PATCH 27/27] expo: Render textedit dependencies correctly List-Id: Discussion and patches related to U-Boot Concept Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Simon Glass Update scene_render_deps() to call scene_txtin_render_deps() for textedit objects by grouping SCENEOBJT_TEXTEDIT with SCENEOBJT_TEXTLINE. This enables proper cursor handling when the textedit is open. Add a test for textedit highlighting. Co-developed-by: Claude Opus 4.5 Signed-off-by: Simon Glass --- boot/scene.c | 2 +- test/boot/expo.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/boot/scene.c b/boot/scene.c index 46bc9b64e64..306625361b4 100644 --- a/boot/scene.c +++ b/boot/scene.c @@ -983,13 +983,13 @@ int scene_render_deps(struct scene *scn, uint id) case SCENEOBJT_IMAGE: case SCENEOBJT_TEXT: case SCENEOBJT_BOX: - case SCENEOBJT_TEXTEDIT: break; case SCENEOBJT_MENU: scene_menu_render_deps(scn, (struct scene_obj_menu *)obj); break; case SCENEOBJT_TEXTLINE: + case SCENEOBJT_TEXTEDIT: scene_txtin_render_deps(scn, obj, scene_obj_txtin(obj)); break; } diff --git a/test/boot/expo.c b/test/boot/expo.c index 79e77b83b0a..d7430dc4284 100644 --- a/test/boot/expo.c +++ b/test/boot/expo.c @@ -1572,6 +1572,12 @@ static int expo_render_textedit(struct unit_test_state *uts) ut_assertok(expo_render(exp)); ut_asserteq(19841, video_compress_fb(uts, dev, false)); + /* highlight the textedit and re-render */ + scene_set_highlight_id(scn, OBJ_TEXTED); + ut_assertok(scene_arrange(scn)); + ut_assertok(expo_render(exp)); + ut_asserteq(21662, video_compress_fb(uts, dev, false)); + abuf_uninit(&buf); abuf_uninit(&logo_copy);