Repository navigation
Android: OpenIPC brand launcher icon, Android TV home screen entry, label "Viewer" - #99
Conversation
…abel "Viewer" Replace the 5 identical 266 KB mipmap-*/icon.png with the OpenIPC adaptive icon (sign + "OpenIPC" wordmark, monochrome layer for themed icons) and an Android TV banner, generated as vector drawables by the OpenIPC brand tool. minSdk is 31, so the adaptive icon needs no PNG fallback. Android TV: MainActivity gets a LEANBACK_LAUNCHER intent filter next to the LAUNCHER one from MainLauncher, so the app shows up on the TV home screen with the banner. android.software.leanback and android.hardware.touchscreen are declared not required, so the same APK still targets phones and tablets and installs on TV boxes without a touchscreen. The microphone implied by RECORD_AUDIO (push-to-talk) is declared not required for the same reason. The launcher label becomes "Viewer": the icon already carries "OpenIPC", so the name under it no longer repeats it. MainActivity now takes its label from @string/app_name instead of a hard-coded string. In-app titles (window title, welcome screen, tray tooltip) are unchanged.
PR Summary by QodoBrand the Android launcher and add an Android TV home-screen entry
AI Description
Diagram
High-Level Assessment
Files changed (7)
|
Code Review by Qodo
1.
|
|
Looks good |
The new Android TV entry lets the app run on boxes with only a D-pad remote, but camera rows (Library) and live tiles (Live) opened a camera only from Tapped on non-focusable containers, so a remote could not reach or activate them. Both containers are now Focusable and open the camera on Enter or Space (Avalonia.Android maps the D-pad OK key, DpadCenter, to Key.Space). The D-pad already moves focus between them through Avalonia's XY focus navigation for remotes, and the default focus adorner shows which one is selected. Keys raised by the row's or tile's own buttons are left to those buttons. Touch and mouse behaviour is unchanged. Checked on an Android TV 16 emulator with D-pad input only: focus reaches the library row and the grid tile, and OK opens the camera from both.
mipmap-*/icon.pngwith the OpenIPC adaptive icon (sign + "OpenIPC" wordmark, monochrome layer for themed icons) and an Android TV banner, as vector drawables generated by the OpenIPC brand tool. minSdk is 31, so no PNG fallback is needed.MainActivitygets aLEANBACK_LAUNCHERintent filter next to theLAUNCHERone, so the app appears on the TV home screen with the banner.android.software.leanback,android.hardware.touchscreenandandroid.hardware.microphone(implied byRECORD_AUDIO) are declared not required, so the same APK installs on phones, tablets and TV boxes.MainActivitynow takes its label from@string/app_nameinstead of a hard-coded string. In-app titles (window title, welcome screen, tray tooltip) are unchanged.-warnaserror;aapt2 dump badgingshows launchable and leanback-launchable activity withlabel='Viewer'and no implied required hardware; Android lint TV checks report no issues.