Repository navigation
DocSafe v1.0.15 — Android 15/16 compliance
Addresses the three items raised in the Google Play review. No functional or data-format
changes: vaults, the file format and the crypto are untouched, and this updates any
existing 1.0.14 install in place.
Edge-to-edge display (Android 15+)
Android 15 forces edge-to-edge for apps targeting SDK 35+, which means apps have to keep
their own content clear of the system bars.
- The onboarding and unlock screens shared a layout that consumed no window insets at
all — the icon and title rendered under the status bar and the buttons under the
gesture pill. They now applysafeDrawingPadding(). - The OCR hint bar in the image viewer sits in the
ScaffoldbottomBarslot, which the
Scaffold does not inset, so it now pads itself against the navigation bar. - The six
Scaffoldscreens usecontentWindowInsets = WindowInsets.safeDrawing. The
default (systemBars) ignores the display cutout — which now matters in landscape — and
ignores the keyboard.
No more deprecated window APIs
Window.setStatusBarColor, Window.setNavigationBarColor and
LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES are all no-ops on Android 15+. They came from
androidx's enableEdgeToEdge(), so that call is gone, replaced with
WindowCompat.setDecorFitsSystemWindows(window, false). The transparent bars it set up for
Android 14 and below are declared in the theme instead, where they are simply not consulted
on 15+. The release DEX now contains zero references to all three.
Large-screen / orientation freedom (Android 16)
ML Kit's document-scanner delegate activity hardcodes screenOrientation="portrait", which
Android 16 ignores on large screens and which Play attributes to the app. It is overridden
to unspecified, keeping the library's no-recreation guarantee via configChanges.
Also bumps play-services-mlkit-document-scanner 16.0.0-beta1 → 16.0.0.
Verified
On an Android 16 (API 36) emulator: the auth screen viewport is inset 63px top and bottom,
shrinks correctly when the keyboard opens, the top app bar and FAB clear the system bars,
and the app relayouts in landscape without crashing.
Install
Requires Android 8.0 (API 26)+. Download docsafe-1.0.15.apk below.
This build is reproducible — see BUILDING.md
and VERIFYING.md.