From a0a4014a7ff7991b65a83650a91b6842e98f6fc8 Mon Sep 17 00:00:00 2001 From: HamBP Date: Mon, 18 Aug 2025 21:58:29 +0900 Subject: [PATCH 1/4] =?UTF-8?q?fix:=20=EA=B3=B5=EC=97=B0=20=EB=93=B1?= =?UTF-8?q?=EB=A1=9D=20=EC=9B=B9=EB=B7=B0=EC=97=90=EC=84=9C=20=ED=99=94?= =?UTF-8?q?=EB=A9=B4=EC=9D=B4=20=ED=82=A4=EB=B3=B4=EB=93=9C=EB=A5=BC=20?= =?UTF-8?q?=EB=94=B0=EB=9D=BC=20=EC=98=AC=EB=9D=BC=EA=B0=80=EC=A7=80=20?= =?UTF-8?q?=EC=95=8A=EB=8F=84=EB=A1=9D=20=EC=84=A4=EC=A0=95=ED=96=88?= =?UTF-8?q?=EC=96=B4=EC=9A=94.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ShowRegistrationScreen.kt | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt index 33e4b361..80accfdc 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt @@ -1,6 +1,7 @@ package com.nexters.boolti.presentation.screen.showregistration import android.annotation.SuppressLint +import android.app.Activity import android.net.Uri import android.webkit.CookieManager import android.webkit.ValueCallback @@ -18,7 +19,9 @@ import androidx.compose.material3.Scaffold import androidx.compose.material3.SnackbarDuration import androidx.compose.material3.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.SideEffect import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableIntStateOf @@ -28,8 +31,11 @@ import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalView import androidx.compose.ui.res.stringResource import androidx.compose.ui.viewinterop.AndroidView +import androidx.core.view.WindowCompat import androidx.hilt.navigation.compose.hiltViewModel import com.nexters.boolti.presentation.BuildConfig import com.nexters.boolti.presentation.R @@ -37,13 +43,16 @@ import com.nexters.boolti.presentation.component.BTDialog import com.nexters.boolti.presentation.component.BtBackAppBar import com.nexters.boolti.presentation.component.BtCircularProgressIndicator import com.nexters.boolti.presentation.component.BtWebView +import com.nexters.boolti.presentation.extension.requireActivity import com.nexters.boolti.presentation.screen.LocalSnackbarController +import com.nexters.boolti.presentation.theme.Grey95 import com.nexters.boolti.presentation.util.bridge.BridgeCallbackHandler import com.nexters.boolti.presentation.util.bridge.BridgeManager import com.nexters.boolti.presentation.util.bridge.NavigateOption import com.nexters.boolti.presentation.util.bridge.TokenDto import kotlinx.coroutines.launch import timber.log.Timber +import androidx.core.graphics.toColorInt @SuppressLint("SetJavaScriptEnabled") @Composable @@ -72,6 +81,27 @@ fun ShowRegistrationScreen( val snackbarHostState = LocalSnackbarController.current + val view = LocalView.current + val window = (view.context.requireActivity()).window + val controller = remember(window) { + WindowCompat.getInsetsController(window, window.decorView) + } + + DisposableEffect(Unit) { + WindowCompat.setDecorFitsSystemWindows(window, true) + val prevColor = window.statusBarColor + val prevLight = controller.isAppearanceLightStatusBars + + window.statusBarColor = Grey95.toString().toColorInt() + controller.isAppearanceLightStatusBars = false + + onDispose { + WindowCompat.setDecorFitsSystemWindows(window, false) + window.statusBarColor = prevColor + controller.isAppearanceLightStatusBars = prevLight + } + } + LaunchedEffect(webView != null) { webView?.setBridgeManager( BridgeManager( From 14439ac7813ae2f82d49dd733c9ce69cd8952c82 Mon Sep 17 00:00:00 2001 From: HamBP Date: Sun, 24 Aug 2025 14:29:21 +0900 Subject: [PATCH 2/4] =?UTF-8?q?fix:=20unknown=20color=20=EC=97=90=EB=9F=AC?= =?UTF-8?q?=EB=A5=BC=20=ED=95=B4=EA=B2=B0=ED=96=88=EC=96=B4=EC=9A=94.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screen/showregistration/ShowRegistrationScreen.kt | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt index 80accfdc..1edd0779 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt @@ -1,7 +1,6 @@ package com.nexters.boolti.presentation.screen.showregistration import android.annotation.SuppressLint -import android.app.Activity import android.net.Uri import android.webkit.CookieManager import android.webkit.ValueCallback @@ -21,7 +20,6 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect -import androidx.compose.runtime.SideEffect import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableIntStateOf @@ -31,7 +29,7 @@ import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.platform.LocalView import androidx.compose.ui.res.stringResource import androidx.compose.ui.viewinterop.AndroidView @@ -52,7 +50,6 @@ import com.nexters.boolti.presentation.util.bridge.NavigateOption import com.nexters.boolti.presentation.util.bridge.TokenDto import kotlinx.coroutines.launch import timber.log.Timber -import androidx.core.graphics.toColorInt @SuppressLint("SetJavaScriptEnabled") @Composable @@ -92,7 +89,7 @@ fun ShowRegistrationScreen( val prevColor = window.statusBarColor val prevLight = controller.isAppearanceLightStatusBars - window.statusBarColor = Grey95.toString().toColorInt() + window.statusBarColor = Grey95.toArgb() controller.isAppearanceLightStatusBars = false onDispose { From e4382eb79dc1cdd81aaeb4ca347597482a11eda2 Mon Sep 17 00:00:00 2001 From: HamBP Date: Sun, 24 Aug 2025 22:53:45 +0900 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20imePadding=EC=9D=84=20=EC=A0=9C?= =?UTF-8?q?=EA=B1=B0=ED=95=98=EB=8A=94=20=EB=B0=A9=EC=8B=9D=EC=9C=BC?= =?UTF-8?q?=EB=A1=9C=20=EB=B3=80=EA=B2=BD=ED=96=88=EC=96=B4=EC=9A=94.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ShowRegistrationScreen.kt | 28 ++----------------- 1 file changed, 3 insertions(+), 25 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt index 1edd0779..fd464ea8 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt @@ -1,6 +1,7 @@ package com.nexters.boolti.presentation.screen.showregistration import android.annotation.SuppressLint +import android.app.UiModeManager import android.net.Uri import android.webkit.CookieManager import android.webkit.ValueCallback @@ -34,6 +35,7 @@ import androidx.compose.ui.platform.LocalView import androidx.compose.ui.res.stringResource import androidx.compose.ui.viewinterop.AndroidView import androidx.core.view.WindowCompat +import androidx.core.view.WindowInsetsControllerCompat import androidx.hilt.navigation.compose.hiltViewModel import com.nexters.boolti.presentation.BuildConfig import com.nexters.boolti.presentation.R @@ -41,9 +43,7 @@ import com.nexters.boolti.presentation.component.BTDialog import com.nexters.boolti.presentation.component.BtBackAppBar import com.nexters.boolti.presentation.component.BtCircularProgressIndicator import com.nexters.boolti.presentation.component.BtWebView -import com.nexters.boolti.presentation.extension.requireActivity import com.nexters.boolti.presentation.screen.LocalSnackbarController -import com.nexters.boolti.presentation.theme.Grey95 import com.nexters.boolti.presentation.util.bridge.BridgeCallbackHandler import com.nexters.boolti.presentation.util.bridge.BridgeManager import com.nexters.boolti.presentation.util.bridge.NavigateOption @@ -78,27 +78,6 @@ fun ShowRegistrationScreen( val snackbarHostState = LocalSnackbarController.current - val view = LocalView.current - val window = (view.context.requireActivity()).window - val controller = remember(window) { - WindowCompat.getInsetsController(window, window.decorView) - } - - DisposableEffect(Unit) { - WindowCompat.setDecorFitsSystemWindows(window, true) - val prevColor = window.statusBarColor - val prevLight = controller.isAppearanceLightStatusBars - - window.statusBarColor = Grey95.toArgb() - controller.isAppearanceLightStatusBars = false - - onDispose { - WindowCompat.setDecorFitsSystemWindows(window, false) - window.statusBarColor = prevColor - controller.isAppearanceLightStatusBars = prevLight - } - } - LaunchedEffect(webView != null) { webView?.setBridgeManager( BridgeManager( @@ -144,8 +123,7 @@ fun ShowRegistrationScreen( Box( modifier = Modifier .fillMaxSize() - .padding(innerPadding) - .imePadding(), + .padding(innerPadding), ) { AndroidView( modifier = Modifier.fillMaxSize(), From 956d3e3edf126ba37646117ece76a343d6613591 Mon Sep 17 00:00:00 2001 From: HamBP Date: Sun, 24 Aug 2025 22:56:31 +0900 Subject: [PATCH 4/4] =?UTF-8?q?refactor:=20=EC=98=B5=ED=8B=B0=EB=A7=88?= =?UTF-8?q?=EC=9D=B4=EC=A6=88=20=EC=9E=84=ED=8F=AC=ED=8A=B8=20=ED=96=88?= =?UTF-8?q?=EC=96=B4=EC=9A=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screen/showregistration/ShowRegistrationScreen.kt | 7 ------- 1 file changed, 7 deletions(-) diff --git a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt index fd464ea8..226649fc 100644 --- a/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt +++ b/presentation/src/main/java/com/nexters/boolti/presentation/screen/showregistration/ShowRegistrationScreen.kt @@ -1,7 +1,6 @@ package com.nexters.boolti.presentation.screen.showregistration import android.annotation.SuppressLint -import android.app.UiModeManager import android.net.Uri import android.webkit.CookieManager import android.webkit.ValueCallback @@ -12,14 +11,12 @@ import androidx.compose.animation.AnimatedVisibility import androidx.compose.animation.fadeOut import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.imePadding import androidx.compose.foundation.layout.padding import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Scaffold import androidx.compose.material3.SnackbarDuration import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import androidx.compose.runtime.DisposableEffect import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.derivedStateOf import androidx.compose.runtime.getValue @@ -30,12 +27,8 @@ import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.toArgb -import androidx.compose.ui.platform.LocalView import androidx.compose.ui.res.stringResource import androidx.compose.ui.viewinterop.AndroidView -import androidx.core.view.WindowCompat -import androidx.core.view.WindowInsetsControllerCompat import androidx.hilt.navigation.compose.hiltViewModel import com.nexters.boolti.presentation.BuildConfig import com.nexters.boolti.presentation.R