use material3 topappbar

This commit is contained in:
Satindar Dhillon
2022-09-06 13:10:10 -07:00
parent d069952f5a
commit e4e5afe072
5 changed files with 10 additions and 22 deletions

View File

@ -8,7 +8,6 @@ import android.view.ViewGroup
import android.webkit.*
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.TopAppBar
import androidx.compose.material3.*
import androidx.compose.runtime.Composable
import androidx.compose.runtime.mutableStateOf

View File

@ -1,21 +1,16 @@
package app.omnivore.omnivore.ui.home
import android.annotation.SuppressLint
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.LazyListState
import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.material.TopAppBar
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Menu
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.runtime.livedata.observeAsState
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
import androidx.navigation.NavHostController
import app.omnivore.omnivore.Routes

View File

@ -76,8 +76,6 @@ class HomeViewModel @Inject constructor(
)
}
Log.d("loggo", newItems.toString())
if (searchTextLiveData.value != "") {
val previousItems = if (clearPreviousSearch) listOf() else searchedItems
searchedItems = previousItems.plus(newItems)

View File

@ -9,10 +9,10 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.text.KeyboardActions
import androidx.compose.foundation.text.KeyboardOptions
import androidx.compose.material.LocalContentAlpha
import androidx.compose.material.TopAppBar
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.*
import androidx.compose.material.icons.filled.Close
import androidx.compose.material.icons.filled.Search
import androidx.compose.material.icons.filled.Settings
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.ExperimentalComposeUiApi
@ -20,19 +20,20 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.focus.FocusRequester
import androidx.compose.ui.focus.focusRequester
import androidx.compose.ui.focus.onFocusChanged
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.unit.dp
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun SearchBar(
searchText: String,
onSearchTextChanged: (String) -> Unit,
onSettingsIconClick: () -> Unit
) {
var showSearchField by remember { mutableStateOf(false) }
TopAppBar(
var showSearchField by remember { mutableStateOf(searchText != "") }
SmallTopAppBar(
title = {
if (showSearchField) {
SearchField(searchText, onSearchTextChanged)
@ -40,16 +41,16 @@ fun SearchBar(
Text("Home")
}
},
backgroundColor = MaterialTheme.colorScheme.surfaceVariant,
actions = {
if (showSearchField) {
Text(
text = "Cancel",
modifier = Modifier
.clickable { showSearchField = false }
.padding(horizontal = 6.dp)
)
} else {
IconButton(onClick = { showSearchField = true }) {
FilledIconButton(onClick = { showSearchField = true }) {
Icon(
imageVector = Icons.Filled.Search,
contentDescription = null

View File

@ -1,9 +1,7 @@
import android.annotation.SuppressLint
import androidx.compose.foundation.layout.*
import androidx.compose.material.TopAppBar
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Home
import androidx.compose.material.icons.filled.Menu
import androidx.compose.material3.*
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
@ -13,8 +11,6 @@ import androidx.compose.ui.unit.dp
import androidx.navigation.NavHostController
import app.omnivore.omnivore.Routes
import app.omnivore.omnivore.ui.auth.LoginViewModel
import app.omnivore.omnivore.ui.home.HomeViewContent
import app.omnivore.omnivore.ui.home.HomeViewModel
import com.google.android.gms.auth.api.signin.GoogleSignIn
import com.google.android.gms.auth.api.signin.GoogleSignInOptions
@ -27,9 +23,8 @@ fun SettingsView(
) {
Scaffold(
topBar = {
TopAppBar(
SmallTopAppBar(
title = { Text("Settings") },
backgroundColor = MaterialTheme.colorScheme.surfaceVariant,
actions = {
IconButton(onClick = { navController.navigate(Routes.Home.route) }) {
Icon(