From 8f695ee06d9768fa3564f6843f1a69f642bd3cd0 Mon Sep 17 00:00:00 2001 From: Satindar Dhillon Date: Tue, 3 Jan 2023 17:09:36 -0800 Subject: [PATCH] rename home to library --- .../app/omnivore/omnivore/MainActivity.kt | 6 ++-- .../main/java/app/omnivore/omnivore/Routes.kt | 2 +- .../omnivore/ui/{home => library}/HomeView.kt | 30 +++++++++---------- .../LibraryViewModel.kt} | 5 ++-- .../ui/{home => library}/SearchBar.kt | 4 +-- .../ui/linkedItemViews/LinkedItemCard.kt | 2 +- .../linkedItemViews/LinkedItemContextMenu.kt | 2 +- .../omnivore/ui/reader/WebReaderViewModel.kt | 14 ++++----- .../app/omnivore/omnivore/ui/root/RootView.kt | 18 +++++------ .../omnivore/ui/settings/SettingsContent.kt | 5 +--- 10 files changed, 42 insertions(+), 46 deletions(-) rename android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/{home => library}/HomeView.kt (83%) rename android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/{home/HomeViewModel.kt => library/LibraryViewModel.kt} (96%) rename android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/{home => library}/SearchBar.kt (98%) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt index abe2cec31..7cb09dfca 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/MainActivity.kt @@ -14,7 +14,7 @@ import androidx.core.view.ViewCompat import androidx.core.view.WindowCompat import androidx.core.view.WindowInsetsCompat import app.omnivore.omnivore.ui.auth.LoginViewModel -import app.omnivore.omnivore.ui.home.HomeViewModel +import app.omnivore.omnivore.ui.library.LibraryViewModel import app.omnivore.omnivore.ui.reader.WebReaderViewModel import app.omnivore.omnivore.ui.root.RootView import app.omnivore.omnivore.ui.theme.OmnivoreTheme @@ -31,7 +31,7 @@ class MainActivity : ComponentActivity() { super.onCreate(savedInstanceState) val loginViewModel: LoginViewModel by viewModels() - val homeViewModel: HomeViewModel by viewModels() + val libraryViewModel: LibraryViewModel by viewModels() val webReaderViewModel: WebReaderViewModel by viewModels() val context = this @@ -53,7 +53,7 @@ class MainActivity : ComponentActivity() { .fillMaxSize() .background(color = Color.Black) ) { - RootView(loginViewModel, homeViewModel, webReaderViewModel) + RootView(loginViewModel, libraryViewModel, webReaderViewModel) } } } diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/Routes.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/Routes.kt index 65a4fce36..d30d337a6 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/Routes.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/Routes.kt @@ -1,7 +1,7 @@ package app.omnivore.omnivore sealed class Routes(val route: String) { - object Home : Routes("Home") + object Library : Routes("Library") object WebAppReader : Routes("WebAppReader") object Settings: Routes("Settings") } diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/HomeView.kt similarity index 83% rename from android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt rename to android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/HomeView.kt index 00afbf210..4457f3bbf 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeView.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/HomeView.kt @@ -1,4 +1,4 @@ -package app.omnivore.omnivore.ui.home +package app.omnivore.omnivore.ui.library import android.content.Intent import androidx.compose.foundation.background @@ -28,23 +28,23 @@ import kotlinx.coroutines.flow.distinctUntilChanged @OptIn(ExperimentalMaterial3Api::class) @Composable -fun HomeView( - homeViewModel: HomeViewModel, +fun LibraryView( + libraryViewModel: LibraryViewModel, navController: NavHostController ) { - val searchText: String by homeViewModel.searchTextLiveData.observeAsState("") + val searchText: String by libraryViewModel.searchTextLiveData.observeAsState("") Scaffold( topBar = { SearchBar( searchText = searchText, - onSearchTextChanged = { homeViewModel.updateSearchText(it) }, + onSearchTextChanged = { libraryViewModel.updateSearchText(it) }, onSettingsIconClick = { navController.navigate(Routes.Settings.route) } ) } ) { paddingValues -> - HomeViewContent( - homeViewModel, + LibraryViewContent( + libraryViewModel, navController, modifier = Modifier .padding( @@ -57,8 +57,8 @@ fun HomeView( @OptIn(ExperimentalMaterialApi::class) @Composable -fun HomeViewContent( - homeViewModel: HomeViewModel, +fun LibraryViewContent( + libraryViewModel: LibraryViewModel, navController: NavHostController, modifier: Modifier ) { @@ -66,11 +66,11 @@ fun HomeViewContent( val listState = rememberLazyListState() val pullRefreshState = rememberPullRefreshState( - refreshing = homeViewModel.isRefreshing, - onRefresh = { homeViewModel.refresh() } + refreshing = libraryViewModel.isRefreshing, + onRefresh = { libraryViewModel.refresh() } ) - val linkedItems: List by homeViewModel.itemsLiveData.observeAsState(listOf()) + val linkedItems: List by libraryViewModel.itemsLiveData.observeAsState(listOf()) Box( modifier = Modifier @@ -98,17 +98,17 @@ fun HomeViewContent( navController.navigate("WebReader/${item.slug}") } }, - actionHandler = { homeViewModel.handleLinkedItemAction(item.id, it) } + actionHandler = { libraryViewModel.handleLinkedItemAction(item.id, it) } ) } } InfiniteListHandler(listState = listState) { - homeViewModel.load() + libraryViewModel.load() } PullRefreshIndicator( - refreshing = homeViewModel.isRefreshing, + refreshing = libraryViewModel.isRefreshing, state = pullRefreshState, modifier = Modifier.align(Alignment.TopCenter) ) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeViewModel.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/LibraryViewModel.kt similarity index 96% rename from android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeViewModel.kt rename to android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/LibraryViewModel.kt index c795bd73f..8c588b64d 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/HomeViewModel.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/LibraryViewModel.kt @@ -1,4 +1,4 @@ -package app.omnivore.omnivore.ui.home +package app.omnivore.omnivore.ui.library import android.util.Log import androidx.compose.runtime.getValue @@ -10,7 +10,6 @@ import androidx.lifecycle.viewModelScope import app.omnivore.omnivore.DataService import app.omnivore.omnivore.persistence.entities.LinkedItem import app.omnivore.omnivore.networking.* -import app.omnivore.omnivore.persistence.AppDatabase import dagger.hilt.android.lifecycle.HiltViewModel import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers @@ -19,7 +18,7 @@ import kotlinx.coroutines.withContext import javax.inject.Inject @HiltViewModel -class HomeViewModel @Inject constructor( +class LibraryViewModel @Inject constructor( private val networker: Networker, private val dataService: DataService ): ViewModel() { diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/SearchBar.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/SearchBar.kt similarity index 98% rename from android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/SearchBar.kt rename to android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/SearchBar.kt index c4d93badc..63b0b91e9 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/home/SearchBar.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/library/SearchBar.kt @@ -1,4 +1,4 @@ -package app.omnivore.omnivore.ui.home +package app.omnivore.omnivore.ui.library import androidx.compose.animation.AnimatedVisibility import androidx.compose.animation.fadeIn @@ -38,7 +38,7 @@ fun SearchBar( if (showSearchField) { SearchField(searchText, onSearchTextChanged) } else { - Text("Home") + Text("Library") } }, colors = TopAppBarDefaults.smallTopAppBarColors( diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemCard.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemCard.kt index ea106161b..bbb1e01da 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemCard.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemCard.kt @@ -13,7 +13,7 @@ import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import app.omnivore.omnivore.persistence.entities.LinkedItem -import app.omnivore.omnivore.ui.home.LinkedItemAction +import app.omnivore.omnivore.ui.library.LinkedItemAction import coil.compose.rememberAsyncImagePainter @OptIn(ExperimentalFoundationApi::class) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemContextMenu.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemContextMenu.kt index ea11a4038..62b4c4692 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemContextMenu.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/linkedItemViews/LinkedItemContextMenu.kt @@ -8,7 +8,7 @@ import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.runtime.Composable -import app.omnivore.omnivore.ui.home.LinkedItemAction +import app.omnivore.omnivore.ui.library.LinkedItemAction @Composable fun LinkedItemContextMenu( diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt index ffed95f66..37a725343 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt @@ -9,7 +9,7 @@ import app.omnivore.omnivore.DatastoreKeys import app.omnivore.omnivore.DatastoreRepository import app.omnivore.omnivore.persistence.entities.LinkedItem import app.omnivore.omnivore.networking.* -import app.omnivore.omnivore.ui.home.LinkedItemAction +import app.omnivore.omnivore.ui.library.LinkedItemAction import com.google.gson.Gson import dagger.hilt.android.lifecycle.HiltViewModel import kotlinx.coroutines.CoroutineScope @@ -69,28 +69,28 @@ class WebReaderViewModel @Inject constructor( LinkedItemAction.Delete -> { viewModelScope.launch { networker.deleteLinkedItem(itemID) - popToHomeView(itemID) + popToLibraryView(itemID) } } LinkedItemAction.Archive -> { viewModelScope.launch { networker.archiveLinkedItem(itemID) - popToHomeView(itemID) + popToLibraryView(itemID) } } LinkedItemAction.Unarchive -> { viewModelScope.launch { networker.unarchiveLinkedItem(itemID) - popToHomeView(itemID) + popToLibraryView(itemID) } } } } - private fun popToHomeView(itemID: String) { + private fun popToLibraryView(itemID: String) { CoroutineScope(Dispatchers.Main).launch { - // TODO: pop to home - Log.d("maxx", "should pop to home and remove item with ID: $itemID") + // TODO: pop to library + Log.d("maxx", "should pop to library and remove item with ID: $itemID") } } diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt index b0abce8d2..e22d3ac18 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/root/RootView.kt @@ -16,15 +16,15 @@ import androidx.navigation.compose.rememberNavController import app.omnivore.omnivore.Routes import app.omnivore.omnivore.ui.auth.LoginViewModel import app.omnivore.omnivore.ui.auth.WelcomeScreen -import app.omnivore.omnivore.ui.home.HomeView -import app.omnivore.omnivore.ui.home.HomeViewModel +import app.omnivore.omnivore.ui.library.LibraryView +import app.omnivore.omnivore.ui.library.LibraryViewModel import app.omnivore.omnivore.ui.reader.* import com.google.accompanist.systemuicontroller.rememberSystemUiController @Composable fun RootView( loginViewModel: LoginViewModel, - homeViewModel: HomeViewModel, + libraryViewModel: LibraryViewModel, webReaderViewModel: WebReaderViewModel ) { val hasAuthToken: Boolean by loginViewModel.hasAuthTokenLiveData.observeAsState(false) @@ -47,7 +47,7 @@ fun RootView( if (hasAuthToken) { PrimaryNavigator( loginViewModel = loginViewModel, - homeViewModel = homeViewModel, + libraryViewModel = libraryViewModel, webReaderViewModel = webReaderViewModel ) } else { @@ -66,15 +66,15 @@ fun RootView( @Composable fun PrimaryNavigator( loginViewModel: LoginViewModel, - homeViewModel: HomeViewModel, + libraryViewModel: LibraryViewModel, webReaderViewModel: WebReaderViewModel ) { val navController = rememberNavController() - NavHost(navController = navController, startDestination = Routes.Home.route) { - composable(Routes.Home.route) { - HomeView( - homeViewModel = homeViewModel, + NavHost(navController = navController, startDestination = Routes.Library.route) { + composable(Routes.Library.route) { + LibraryView( + libraryViewModel = libraryViewModel, navController = navController ) } diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/settings/SettingsContent.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/settings/SettingsContent.kt index 2c47411f4..fbedadde0 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/settings/SettingsContent.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/settings/SettingsContent.kt @@ -1,14 +1,11 @@ import android.annotation.SuppressLint -import androidx.compose.foundation.background import androidx.compose.foundation.layout.* import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Home import androidx.compose.material3.* -import androidx.compose.material3.TopAppBarDefaults.smallTopAppBarColors import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier -import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.unit.dp import androidx.navigation.NavHostController @@ -34,7 +31,7 @@ fun SettingsView( containerColor = MaterialTheme.colorScheme.surfaceVariant ), actions = { - IconButton(onClick = { navController.navigate(Routes.Home.route) }) { + IconButton(onClick = { navController.navigate(Routes.Library.route) }) { Icon( imageVector = Icons.Default.Home, contentDescription = null