Skip to content

Simplify main screen, improve UI accessibility and localization, and preserve editing state - #30

Merged
andre487 merged 6 commits into
mainfrom
fix/ui-text-overflow
Sep 7, 2026
Merged

andre487 merged 6 commits into
mainfrom
fix/ui-text-overflow

Conversation

@andre487

@andre487 andre487 commented Sep 7, 2026 •

Copy link
Copy Markdown
Owner

The main screen gave secondary actions too much prominence, while narrow layouts and large fonts could obscure text. Some UI strings remained untranslated, and editing or transferring profiles could lose state around navigation and rotation. This PR simplifies connection control, improves readability and localization, and makes those workflows more reliable.

Changes:

  • Put a compact connection status, profile selector and connection controls above statistics. Keep connect/disconnect and reconnect as the main buttons; move testing, settings and feedback into the top app bar overflow menu. Present the transport protocol as supporting text and move the version/commit footer from Settings to the main screen.
  • Adapt constrained layouts with wrapping actions, stacked rows and traffic columns, bounded titles and scrollable dialogs. Keep Add profile clear of list content. Increase proxy-type badges to 12sp with two-line wrapping and rounded corners that leave text clear; preserve the profile-name fade and select foreground colors that meet at least 4.5:1 contrast across the profile palette.
  • Complete English and Russian UI localization, including settings, states, profile names, SSH prompts, feedback, notifications and expected import errors. Format numbers, dates and countries using the Android system locale independently of the app language.
  • Save configuration through an ordered application-owned queue, expose pending and failed saves, support retry, and gate connection actions while saves are unresolved. Invalidate deleted profiles' queued or failed writes so retry cannot recreate them.
  • Preserve profile drafts and import/export state across rotation without placing credentials or export payloads in Android saved-state bundles. Parse imports off the UI thread, show progress and errors, prevent conflicting actions, and reject missing or empty exports before opening the destination stream.
  • Create profiles only after their first edit, preserve custom ports when changing proxy type, add password visibility controls, retain invalid numeric drafts with clear feedback, and keep editor errors and reconnect controls accessible. Preserve connection-test results through rotation without automatically running the test again.

Validation:

  • bundle exec fastlane android android_checks passed: 76 JVM tests, Android lint, debug APK and verified unsigned release APK. Coverage includes localization parity, system formatting, profile contrast, save ordering and retry, deletion, numeric input, port preservation and transfer guards. The final badge-corner adjustment also passed bundle exec fastlane android debug_artifact.
  • Local emulator checks covered 320 dp width, 200% font scale, short landscape windows, overflow-menu navigation, profile editing and quick exits, invalid input through rotation, password controls, export through a rotated system file picker, and connection-test result retention. No emulator requirement was added to CI.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

APK artifacts

Built from commit bd028bbc by CI run #102.
Artifacts expire after 14 days. Neither APK uses the MegaProxy release key.

@andre487 andre487 changed the title Fix UI text collisions on narrow screens and enlarged fonts Improve UI layout resilience and complete localization Sep 7, 2026
@andre487 andre487 changed the title Improve UI layout resilience and complete localization Improve UI layout, localization, and editing reliability Sep 7, 2026
@andre487 andre487 changed the title Improve UI layout, localization, and editing reliability Simplify main screen, improve UI accessibility and localization, and preserve editing state Sep 7, 2026
@andre487
andre487 merged commit b8302c3 into main Sep 7, 2026
2 checks passed
@andre487
andre487 deleted the fix/ui-text-overflow branch September 7, 2026 15:08
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