Skip to content

ADFA-4886: Material 3 nav bar for the WebView chrome (icons, theme, a11y, i18n) - #270

Merged
luisguzman-adfa merged 4 commits into
mainfrom
feat/ADFA-4886-webview-navbar
Jul 28, 2026
Merged

luisguzman-adfa merged 4 commits into
mainfrom
feat/ADFA-4886-webview-navbar

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

Themes the PortalActivity WebView chrome to Material 3.

The nav bar's emoji/glyph buttons become tinted Material 3 vector ImageButtons (back, fullscreen, reload/stop, exit, forward, plus the show/hide handles), and PortalActivity moves onto Theme.K2Go (Material3 DayNight + app typography), so the chrome follows the system light/dark. Surfaces and tints come from theme attributes; Exit keeps its universal red. Adds contentDescription to the icon-only buttons (updated on the reload↔stop toggle) and moves the WebView error-page strings ("Connection Failed", "Unable to reach the secure environment") into resources.

New strings are translatable="false" pending the l10n pass. App-side only; nav behavior (auto-hide / Home→Fullscreen) stays as merged in #268. Verify on-device.

…11y, i18n)

Replace the PortalActivity nav bar's emoji/glyph buttons with tinted Material 3
vector ImageButtons (back, fullscreen, reload/stop, exit, forward, plus the
show/hide handles) and move PortalActivity onto Theme.K2Go (Material3 DayNight +
app typography) so the chrome follows the system light/dark. Surfaces and tints come
from theme attributes; Exit keeps its universal red. Add contentDescription to the
icon-only buttons and move the WebView error-page strings into resources. Strings are
translatable=false pending the l10n pass.
Make the recovery handle read as the nav bar's own surface peeking from the bottom
edge instead of a separate button: a colorSurfaceContainer tab with rounded top
corners and 8dp elevation (matching the bar), carrying a drag grabber tinted
colorOnSurfaceVariant. Drops the now-unused ic_expand_less.
24dp was below the 48dp minimum touch target. Draw the visible tab only in the
bottom strip (layer-list top inset) so the handle can be a full 48dp-tall,
accessible touch target while keeping the slim peeking-tab look; the grabber stays
centered in the visible portion via top padding.
androidx.appcompat's UseAppTint lint (a blocking error here) requires app:tint over
android:tint on AppCompat image views. Switch all seven nav-bar ImageButton tints.
@luisguzman-adfa
luisguzman-adfa merged commit 47d438b into main Jul 28, 2026
3 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the feat/ADFA-4886-webview-navbar branch July 28, 2026 05:16
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