Skip to content

fix(ui5-tokenizer): fix render loop - #14115

Open
aleksandar-terziev wants to merge 8 commits into
release-1.24from
tokenizer-nmore-render-loop
Open

aleksandar-terziev wants to merge 8 commits into
release-1.24from
tokenizer-nmore-render-loop

Conversation

@aleksandar-terziev

Copy link
Copy Markdown
Contributor

Fix render loop with Korean locale tokens

  • Tokenizer.overflownTokens measured parentRect inside the token loop after each token.overflows write.

  • DOM mutations from hiding/showing tokens caused layout recalculations mid-loop

  • With CJK locales (Korean, Japanese, Chinese), the two n-more label variants ("N개 항목 더 보기" vs "N개 항목") have a large enough width to flip a token between overflow/not-overflow on every render cycle until RenderQueue throws: Web component processed too many times this task, max allowed is: 10

  • Changes:

  • parentRect measured once before the loop, not per token

  • _lastNMoreWidth — saves n-more width to the historical maximum so a narrower label variant on the next render does not release a token back

  • Test: MultiComboBox.spec.js — loads the page with ?sap-ui-language=ko and asserts the n-more popover opens without crash.

@aleksandar-terziev
aleksandar-terziev force-pushed the tokenizer-nmore-render-loop branch 4 times, most recently from 4395ab3 to 890fdc4 Compare October 2, 2026 14:57
@aleksandar-terziev
aleksandar-terziev force-pushed the tokenizer-nmore-render-loop branch from c7c3cd7 to f4aa68e Compare October 6, 2026 10:56

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants