diff options
| -rw-r--r-- | android/app/src/main/java/io/coinos/MainActivity.java | 17 | ||||
| -rw-r--r-- | capacitor.config.json | 23 | ||||
| -rw-r--r-- | src/routes/(static)/register/+page.server.ts | 1 | ||||
| -rw-r--r-- | src/routes/+layout.svelte | 11 |
4 files changed, 40 insertions, 12 deletions
diff --git a/android/app/src/main/java/io/coinos/MainActivity.java b/android/app/src/main/java/io/coinos/MainActivity.java index aaf59abe..791c89a9 100644 --- a/android/app/src/main/java/io/coinos/MainActivity.java +++ b/android/app/src/main/java/io/coinos/MainActivity.java @@ -1,5 +1,11 @@ package io.coinos; +import android.os.Build; +import android.view.View; +import android.view.WindowInsets; +import android.view.WindowManager; +import androidx.core.view.ViewCompat; + import com.getcapacitor.BridgeActivity; import com.getcapacitor.Bridge; import android.content.Intent; @@ -21,12 +27,23 @@ public class MainActivity extends BridgeActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + // Ensure the WebView doesn't overlap the system status bar + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT_WATCH) { + getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS); + } + WebView webView = bridge.getWebView(); CookieManager cookieManager = CookieManager.getInstance(); cookieManager.setAcceptCookie(true); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setDomStorageEnabled(true); + // Ensure layout respects system window insets + ViewCompat.setOnApplyWindowInsetsListener(webView, (v, insets) -> { + v.setPadding(0, insets.getSystemWindowInsetTop(), 0, 0); + return insets; + }); + handleIntent(getIntent()); } diff --git a/capacitor.config.json b/capacitor.config.json index 585ff21c..a31c19db 100644 --- a/capacitor.config.json +++ b/capacitor.config.json @@ -1,13 +1,14 @@ { - "appId": "io.coinos", - "appName": "Coinos", - "server": { - "hostname": "coinos.io", - "url": "https://coinos.io/start" - }, - "android": { - "webContentsDebuggingEnabled": true, - "allowMixedContent": true, - "useBrowserHistory": true - } + "appId": "io.coinos", + "appName": "Coinos", + "server": { + "hostname": "coinos.io", + "url": "https://coinos.io/start" + }, + "android": { + "webContentsDebuggingEnabled": true, + "allowMixedContent": true, + "useBrowserHistory": true, + "immersive": false + } } diff --git a/src/routes/(static)/register/+page.server.ts b/src/routes/(static)/register/+page.server.ts index 8c6d6a8d..44aa69d3 100644 --- a/src/routes/(static)/register/+page.server.ts +++ b/src/routes/(static)/register/+page.server.ts @@ -21,6 +21,5 @@ export const actions = { const user = { picture, username, password }; await register(user, ip, cookies, loginRedirect); - redirect(303, loginRedirect || `/${user.username}`); }, }; diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index d25f570a..f2c567fa 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -61,4 +61,15 @@ --toastContainerLeft: calc(50vw - 8rem); --toastBackground: #292929; } + + main { + padding-top: constant(safe-area-inset-top); + padding-top: env(safe-area-inset-top); + } + + @supports not (padding-top: env(safe-area-inset-top)) { + main { + padding-top: 24px; + } + } </style> |
