diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt index 18944282d21..193cf98f997 100644 --- a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/appbar/color/BitwardenTopAppBarColors.kt @@ -1,6 +1,5 @@ package com.bitwarden.ui.platform.components.appbar.color -import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.TopAppBarColors import androidx.compose.runtime.Composable import com.bitwarden.ui.platform.theme.BitwardenTheme @@ -8,7 +7,6 @@ import com.bitwarden.ui.platform.theme.BitwardenTheme /** * Provides a default set of Bitwarden-styled colors for top app bars. */ -@OptIn(ExperimentalMaterial3Api::class) @Composable fun bitwardenTopAppBarColors(): TopAppBarColors = TopAppBarColors( containerColor = BitwardenTheme.colorScheme.background.secondary, @@ -16,4 +14,5 @@ fun bitwardenTopAppBarColors(): TopAppBarColors = TopAppBarColors( navigationIconContentColor = BitwardenTheme.colorScheme.icon.primary, titleContentColor = BitwardenTheme.colorScheme.text.primary, actionIconContentColor = BitwardenTheme.colorScheme.icon.primary, + subtitleContentColor = BitwardenTheme.colorScheme.text.primary, ) diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/coachmark/scope/CoachMarkScopeInstance.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/coachmark/scope/CoachMarkScopeInstance.kt index 5c072cb9db7..e465212b7a5 100644 --- a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/coachmark/scope/CoachMarkScopeInstance.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/coachmark/scope/CoachMarkScopeInstance.kt @@ -7,6 +7,7 @@ import androidx.compose.foundation.layout.padding import androidx.compose.foundation.lazy.LazyListScope import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.TooltipAnchorPosition import androidx.compose.material3.TooltipBox import androidx.compose.material3.TooltipDefaults import androidx.compose.runtime.Composable @@ -199,7 +200,8 @@ internal class CoachMarkScopeInstance>( anchorContent: @Composable () -> Unit, ) { TooltipBox( - positionProvider = TooltipDefaults.rememberPlainTooltipPositionProvider( + positionProvider = TooltipDefaults.rememberTooltipPositionProvider( + positioning = TooltipAnchorPosition.Above, spacingBetweenTooltipAndAnchor = 10.dp, ), tooltip = { diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/BitwardenTextField.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/BitwardenTextField.kt index a32825ed8c3..a7c79f6d492 100644 --- a/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/BitwardenTextField.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/components/field/BitwardenTextField.kt @@ -18,8 +18,8 @@ import androidx.compose.foundation.text.KeyboardActions import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.ExposedDropdownMenuAnchorType import androidx.compose.material3.ExposedDropdownMenuBox -import androidx.compose.material3.MenuAnchorType import androidx.compose.material3.Text import androidx.compose.material3.TextField import androidx.compose.runtime.Composable @@ -375,7 +375,7 @@ fun BitwardenTextField( visualTransformation = visualTransformation, modifier = Modifier .nullableTestTag(tag = textFieldTestTag) - .menuAnchor(type = MenuAnchorType.PrimaryEditable) + .menuAnchor(type = ExposedDropdownMenuAnchorType.PrimaryEditable) .fillMaxWidth() .onFocusChanged { focusState -> focused = focusState.isFocused diff --git a/ui/src/main/kotlin/com/bitwarden/ui/platform/util/WindowAdaptiveInfoExtensions.kt b/ui/src/main/kotlin/com/bitwarden/ui/platform/util/WindowAdaptiveInfoExtensions.kt index 50d140f1a03..0d67743487b 100644 --- a/ui/src/main/kotlin/com/bitwarden/ui/platform/util/WindowAdaptiveInfoExtensions.kt +++ b/ui/src/main/kotlin/com/bitwarden/ui/platform/util/WindowAdaptiveInfoExtensions.kt @@ -4,7 +4,6 @@ import androidx.compose.material3.adaptive.WindowAdaptiveInfo import androidx.compose.material3.adaptive.currentWindowAdaptiveInfo import androidx.compose.runtime.Composable import androidx.compose.runtime.remember -import androidx.window.core.layout.WindowWidthSizeClass import com.bitwarden.ui.platform.model.WindowSize /** @@ -14,7 +13,7 @@ import com.bitwarden.ui.platform.model.WindowSize fun rememberWindowSize( windowAdaptiveInfo: WindowAdaptiveInfo = currentWindowAdaptiveInfo(), ): WindowSize { - return remember(key1 = windowAdaptiveInfo.windowSizeClass.windowWidthSizeClass) { + return remember(key1 = windowAdaptiveInfo.windowSizeClass) { windowAdaptiveInfo.getWindowSize() } } @@ -25,9 +24,9 @@ fun rememberWindowSize( fun WindowAdaptiveInfo.getWindowSize(): WindowSize { // Currently the app only operates with the Compact and Medium sizes in // mind, but we can add support for others in the future here. - return when (this.windowSizeClass.windowWidthSizeClass) { - WindowWidthSizeClass.COMPACT -> WindowSize.Compact - WindowWidthSizeClass.MEDIUM -> WindowSize.Medium - else -> WindowSize.Medium + return if (this.windowSizeClass.isWidthAtLeastBreakpoint(widthDpBreakpoint = 600)) { + WindowSize.Medium + } else { + WindowSize.Compact } }