]> git.ipfire.org Git - thirdparty/strongswan.git/commit
android: Apply UI changes for edge-to-edge views in Android 15+
authorTobias Brunner <tobias@strongswan.org>
Mon, 4 Aug 2025 12:35:11 +0000 (14:35 +0200)
committerTobias Brunner <tobias@strongswan.org>
Tue, 30 Sep 2025 09:26:40 +0000 (11:26 +0200)
commit2404b2bee632d852a03f710bf4e32ee4bddd9339
tree969e4d13cc00736e9c328b3e26661cc61237f732
parent216a9dbb8dabcd5add6134949462f2d7e6196fb0
android: Apply UI changes for edge-to-edge views in Android 15+

When targeting Android 15, edge-to-edge is the default and when targeting
Android 16, apps can't opt-out from this anymore.  So we update our views
and enable edge-to-edge also for older versions (avoids the black bar
behind the system UI at the bottom).  For most views we just use automatic
margins via android:fitsSystemWindows (or programmatically via
setDecorFitsSystemWindows).  However, for the profile lists and log views,
we take some extra measures that allow the lists to go behind the bottom
system UI.  Appropriate padding is applied at the bottom of the lists so
the last item(s) can be scrolled into full view.
25 files changed:
src/frontends/android/app/build.gradle
src/frontends/android/app/src/main/AndroidManifest.xml
src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/LogFragment.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/MainActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/RemediationInstructionsActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/SelectedApplicationsActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/SettingsActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificateImportActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/TrustedCertificatesActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileDetailActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileImportActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileListFragment.java
src/frontends/android/app/src/main/java/org/strongswan/android/ui/VpnProfileSelectActivity.java
src/frontends/android/app/src/main/java/org/strongswan/android/utils/Utils.java
src/frontends/android/app/src/main/res/layout-large/remediation_instructions.xml
src/frontends/android/app/src/main/res/layout/log_activity.xml
src/frontends/android/app/src/main/res/layout/log_fragment.xml
src/frontends/android/app/src/main/res/layout/main.xml
src/frontends/android/app/src/main/res/layout/profile_detail_view.xml
src/frontends/android/app/src/main/res/layout/profile_import_view.xml
src/frontends/android/app/src/main/res/layout/profile_list_fragment.xml
src/frontends/android/app/src/main/res/layout/remediation_instructions.xml
src/frontends/android/app/src/main/res/layout/trusted_certificates_activity.xml
src/frontends/android/app/src/main/res/layout/vpn_profile_select.xml