diff --git a/webclient/android/app/src/main/java/com/gnexus/shserv/MainActivity.java b/webclient/android/app/src/main/java/com/gnexus/shserv/MainActivity.java index e1eecce..6d72f17 100644 --- a/webclient/android/app/src/main/java/com/gnexus/shserv/MainActivity.java +++ b/webclient/android/app/src/main/java/com/gnexus/shserv/MainActivity.java @@ -2,8 +2,11 @@ import android.os.Build; import android.os.Bundle; +import android.view.View; +import android.view.ViewGroup; import android.view.Window; import android.view.WindowManager; +import androidx.core.view.ViewCompat; import androidx.core.view.WindowCompat; import com.getcapacitor.BridgeActivity; @@ -12,7 +15,6 @@ @Override protected void onCreate(Bundle savedInstanceState) { // Override Capacitor's hard-coded theme before super.onCreate() - // AppTheme.NoActionBar compiles to R.style.AppTheme_NoActionBar setTheme(R.style.AppTheme_NoActionBar); super.onCreate(savedInstanceState); @@ -24,5 +26,18 @@ window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); } + + // Capacitor SystemBars plugin installs an OnApplyWindowInsetsListener + // that intercepts system bars insets and returns them as 0. This breaks + // fitsSystemWindows. We reset it and force the CoordinatorLayout + // (WebView parent) to handle insets natively. + View webView = findViewById(com.getcapacitor.android.R.id.webview); + if (webView != null) { + ViewGroup parent = (ViewGroup) webView.getParent(); + if (parent != null) { + ViewCompat.setOnApplyWindowInsetsListener(parent, null); + parent.setFitsSystemWindows(true); + } + } } } diff --git a/webclient/android/app/src/main/res/drawable-v31/ic_splash.xml b/webclient/android/app/src/main/res/drawable-v31/ic_splash.xml new file mode 100644 index 0000000..8239fd3 --- /dev/null +++ b/webclient/android/app/src/main/res/drawable-v31/ic_splash.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/webclient/android/app/src/main/res/layout/capacitor_bridge_layout_main.xml b/webclient/android/app/src/main/res/layout/capacitor_bridge_layout_main.xml new file mode 100644 index 0000000..cc4a9bb --- /dev/null +++ b/webclient/android/app/src/main/res/layout/capacitor_bridge_layout_main.xml @@ -0,0 +1,16 @@ + + + + + + diff --git a/webclient/android/app/src/main/res/values-v31/styles.xml b/webclient/android/app/src/main/res/values-v31/styles.xml new file mode 100644 index 0000000..e060509 --- /dev/null +++ b/webclient/android/app/src/main/res/values-v31/styles.xml @@ -0,0 +1,11 @@ + + + + +