Skip to content

Latest commit

 

History

History
46 lines (34 loc) · 2.96 KB

File metadata and controls

46 lines (34 loc) · 2.96 KB

Implementation Plan - PR 1759 Finalization

Finalize the resolution enhancement logic, improve documentation coverage, and synchronize project artifacts to meet quality gates.

User Review Required

Important

All resolution dimensions (including custom ones) will now be forced to the nearest even integer. This ensures compatibility across all mobile GPU drivers and prevents common rendering artifacts.

Proposed Changes

UI & Logic Enhancements

  • Move evenRound, gcd, and calculateAspectRatio from rememberContainerConfigDialogStaticData to the top level of the file as internal functions to allow reuse.
  • Update applyScreenSizeToConfig to apply evenRound to custom resolution inputs.
  • Add full KDoc to these functions to increase coverage.

Tab Documentation (KDoc)

Add comprehensive KDoc to the following Composable functions to bring project documentation coverage to >80%:

Resource Verification

  • Verify that arrays.xml contains the correct 20:9 aspect ratios for 1200x540 and 1600x720.

Artifact Synchronization

Verification Plan

Automated Tests

  • Run ResolutionUtilsTest.kt to verify evenRound (forcing even integers), gcd calculation, and aspect ratio formatting (including mobile-specific ratios like 19.5:9).
  • Command: ./gradlew :app:testDebugUnitTest --tests "app.gamenative.ui.component.dialog.ResolutionUtilsTest"
  • Run a build check to ensure no syntax errors.

Manual Verification

  • Verify KDoc presence and accuracy for all targeted functions.
  • Render Compose previews for ContainerConfigDialog to verify UI stability.
  • Verify that entering an odd number in the custom resolution dialog results in an even number being saved (e.g., 1281 -> 1282 or 1280).