mirror of
https://github.com/nextcloud/talk-android
synced 2025-07-18 18:25:03 +01:00
Merge pull request #4791 from nextcloud/bugfix/4779/colorStatusBar
Bugfix/4779/color status bar
This commit is contained in:
commit
5650a14781
@ -10,27 +10,26 @@ package com.nextcloud.talk.components
|
||||
|
||||
import android.app.Activity
|
||||
import androidx.compose.foundation.isSystemInDarkTheme
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.DisposableEffect
|
||||
import androidx.compose.ui.graphics.toArgb
|
||||
|
||||
import androidx.compose.ui.platform.LocalView
|
||||
import androidx.compose.ui.res.colorResource
|
||||
import androidx.core.view.WindowCompat
|
||||
import com.nextcloud.talk.R
|
||||
|
||||
@Composable
|
||||
fun SetStatusBarColor() {
|
||||
fun SetupSystemBars() {
|
||||
val view = LocalView.current
|
||||
val isDarkMod = isSystemInDarkTheme()
|
||||
val statusBarColor = colorResource(R.color.bg_default).toArgb()
|
||||
val isDarkMode = isSystemInDarkTheme()
|
||||
val statusBarColor = MaterialTheme.colorScheme.surface.toArgb()
|
||||
|
||||
DisposableEffect(isDarkMod) {
|
||||
DisposableEffect(isDarkMode) {
|
||||
val activity = view.context as Activity
|
||||
activity.window.statusBarColor = statusBarColor
|
||||
|
||||
WindowCompat.getInsetsController(activity.window, activity.window.decorView).apply {
|
||||
isAppearanceLightStatusBars = !isDarkMod
|
||||
isAppearanceLightStatusBars = !isDarkMode
|
||||
isAppearanceLightNavigationBars = !isDarkMode
|
||||
}
|
||||
onDispose { }
|
||||
}
|
@ -19,7 +19,7 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import autodagger.AutoInjector
|
||||
import com.nextcloud.talk.activities.BaseActivity
|
||||
import com.nextcloud.talk.application.NextcloudTalkApplication
|
||||
import com.nextcloud.talk.components.SetStatusBarColor
|
||||
import com.nextcloud.talk.components.SetupSystemBars
|
||||
import com.nextcloud.talk.models.json.autocomplete.AutocompleteUser
|
||||
import javax.inject.Inject
|
||||
|
||||
@ -68,9 +68,8 @@ class ContactsActivityCompose : BaseActivity() {
|
||||
contactsViewModel = contactsViewModel,
|
||||
uiState = uiState.value
|
||||
)
|
||||
SetupSystemBars()
|
||||
}
|
||||
|
||||
SetStatusBarColor()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2,6 +2,7 @@
|
||||
* Nextcloud Talk - Android Client
|
||||
*
|
||||
* SPDX-FileCopyrightText: 2024 Sowjanya Kota <sowjanya.kch@gmail.com>
|
||||
* SPDX-FileCopyrightText: 2025 Marcel Hibbe <dev@mhibbe.de>
|
||||
* SPDX-License-Identifier: GPL-3.0-or-later
|
||||
*/
|
||||
|
||||
@ -22,7 +23,6 @@ import androidx.activity.result.ActivityResult
|
||||
import androidx.activity.result.contract.ActivityResultContracts
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.isSystemInDarkTheme
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@ -58,7 +58,6 @@ import androidx.compose.material3.TextButton
|
||||
import androidx.compose.material3.TextField
|
||||
import androidx.compose.material3.TopAppBar
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.DisposableEffect
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
@ -70,7 +69,6 @@ import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.layout.ContentScale
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.platform.LocalView
|
||||
import androidx.compose.ui.res.colorResource
|
||||
import androidx.compose.ui.res.painterResource
|
||||
import androidx.compose.ui.res.stringResource
|
||||
@ -79,7 +77,6 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import androidx.compose.ui.window.Dialog
|
||||
import androidx.core.view.WindowCompat
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import autodagger.AutoInjector
|
||||
import coil.compose.AsyncImage
|
||||
@ -87,6 +84,7 @@ import com.nextcloud.talk.R
|
||||
import com.nextcloud.talk.activities.BaseActivity
|
||||
import com.nextcloud.talk.application.NextcloudTalkApplication
|
||||
import com.nextcloud.talk.chat.ChatActivity
|
||||
import com.nextcloud.talk.components.SetupSystemBars
|
||||
import com.nextcloud.talk.contacts.ContactsActivityCompose
|
||||
import com.nextcloud.talk.contacts.loadImage
|
||||
import com.nextcloud.talk.models.json.autocomplete.AutocompleteUser
|
||||
@ -118,29 +116,12 @@ class ConversationCreationActivity : BaseActivity() {
|
||||
colorScheme = colorScheme
|
||||
) {
|
||||
ConversationCreationScreen(conversationCreationViewModel, context, pickImage)
|
||||
SetupSystemBars()
|
||||
}
|
||||
SetStatusBarColor()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
private fun SetStatusBarColor() {
|
||||
val view = LocalView.current
|
||||
val isDarkMod = isSystemInDarkTheme()
|
||||
|
||||
DisposableEffect(isDarkMod) {
|
||||
val activity = view.context as Activity
|
||||
activity.window.statusBarColor = activity.getColor(R.color.bg_default)
|
||||
|
||||
WindowCompat.getInsetsController(activity.window, activity.window.decorView).apply {
|
||||
isAppearanceLightStatusBars = !isDarkMod
|
||||
}
|
||||
|
||||
onDispose { }
|
||||
}
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
fun ConversationCreationScreen(
|
||||
|
@ -36,7 +36,7 @@ import com.nextcloud.talk.api.NcApi
|
||||
import com.nextcloud.talk.application.NextcloudTalkApplication
|
||||
import com.nextcloud.talk.arbitrarystorage.ArbitraryStorageManager
|
||||
import com.nextcloud.talk.components.StandardAppBar
|
||||
import com.nextcloud.talk.components.SetStatusBarColor
|
||||
import com.nextcloud.talk.components.SetupSystemBars
|
||||
import com.nextcloud.talk.users.UserManager
|
||||
import com.nextcloud.talk.utils.BrandingUtils
|
||||
import com.nextcloud.talk.utils.ClosedInterfaceImpl
|
||||
@ -117,9 +117,8 @@ class DiagnoseActivity : BaseActivity() {
|
||||
}
|
||||
}
|
||||
)
|
||||
SetupSystemBars()
|
||||
}
|
||||
|
||||
SetStatusBarColor()
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user