Skip to content

feat(text): Enable complex single-line UI text - #3293

Draft
OmarAglan wants to merge 4 commits into
TheSuperHackers:mainfrom
OmarAglan:feature/single-line-ui-integration
Draft

feat(text): Enable complex single-line UI text#3293
OmarAglan wants to merge 4 commits into
TheSuperHackers:mainfrom
OmarAglan:feature/single-line-ui-integration

Conversation

@OmarAglan

@OmarAglan OmarAglan commented Sep 14, 2026

Copy link
Copy Markdown

Enables shaped complex text for eligible single-line UI strings in Generals and Zero Hour. Accepted rasters are copied into the existing sentence textures, with texture allocation using the shaped dimensions.

Display strings reconcile their measured dimensions when rendering falls back, refresh hotkey data before measuring changed labels, and track resources created by size queries. Text and font changes share one rebuild flag.

Plain Latin-only strings, multiline text, lines rejected by size limits, monospaced text, and labels with active hotkey markers retain legacy rendering. Editable, password, and IME construction strings also retain that path because shaped caret and selection behavior is outside this change.

Validation

  • Clean VC6 Release builds of Generals and Zero Hour.
  • Local x86 checks: 24 direction cases and 20 native layout/pixel comparisons, with zero failures.
  • 704,400 shaped texture-allocation cases passed; legacy allocation results were unchanged.
  • Combined split verified against the original feature while preserving current upstream changes.
  • git diff --check.

Implementation developed with AI assistance.

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.

1 participant