From 7ddd0ce33bc03da1f0dc06a9103a2293bc17d7a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Sat, 24 Oct 2026 12:49:44 +0200 Subject: [PATCH] UI: Skip hidden views in AnchorLayout Co-Authored-By: Claude Opus 5.5 (1M context) --- Common/UI/ViewGroup.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Common/UI/ViewGroup.cpp b/Common/UI/ViewGroup.cpp index e40c5270ba..111a7f54fc 100644 --- a/Common/UI/ViewGroup.cpp +++ b/Common/UI/ViewGroup.cpp @@ -908,6 +908,8 @@ void AnchorLayout::Measure(const UIContext &dc, MeasureSpec horiz, MeasureSpec v void AnchorLayout::MeasureViews(const UIContext &dc, MeasureSpec horiz, MeasureSpec vert) { for (size_t i = 0; i < views_.size(); i++) { + if (views_[i]->GetVisibility() == V_GONE) + continue; Size width = WRAP_CONTENT; Size height = WRAP_CONTENT; @@ -1003,6 +1005,8 @@ static void ApplyAnchorLayoutParams(float measuredWidth, float measuredHeight, c void AnchorLayout::Layout() { for (size_t i = 0; i < views_.size(); i++) { + if (views_[i]->GetVisibility() == V_GONE) + continue; const AnchorLayoutParams *params = views_[i]->GetLayoutParams()->As(); Bounds vBounds; ApplyAnchorLayoutParams(views_[i]->GetMeasuredWidth(), views_[i]->GetMeasuredHeight(), bounds_, params, &vBounds);