[optimize] Architecture is shifting towards Hilt comprehensively
This commit is contained in:
@@ -29,6 +29,7 @@ import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||
import androidx.navigation.NavHostController
|
||||
import coil3.compose.AsyncImage
|
||||
@@ -109,13 +110,13 @@ fun ComicGridView(comicId: String, navController: NavHostController, comicGridVi
|
||||
{
|
||||
if(record != null) {
|
||||
val k = comic!!.getPageChapterIndex(record!!.position)
|
||||
val route = "comic_page_route/${"${comic!!.id}".toHex()}/${
|
||||
val route = "comic_page_route/${comic!!.id.toHex()}/${
|
||||
record!!.position
|
||||
}"
|
||||
navController.navigate(route)
|
||||
}else
|
||||
{
|
||||
val route = "comic_page_route/${"${comic!!.id}".toHex()}/${0}"
|
||||
val route = "comic_page_route/${comic!!.id.toHex()}/${0}"
|
||||
navController.navigate(route)
|
||||
}
|
||||
}
|
||||
@@ -150,7 +151,7 @@ fun ComicGridView(comicId: String, navController: NavHostController, comicGridVi
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ChapterCard(comic: Comic, navController: NavHostController, chapter: BookMark, comicGridViewModel: ComicGridViewModel = viewModel())
|
||||
fun ChapterCard(comic: Comic, navController: NavHostController, chapter: BookMark, comicGridViewModel: ComicGridViewModel = hiltViewModel<ComicGridViewModel>())
|
||||
{
|
||||
val c = chapter
|
||||
val iv = comic.getPageIndex(c.page)
|
||||
@@ -162,7 +163,7 @@ fun ChapterCard(comic: Comic, navController: NavHostController, chapter: BookMar
|
||||
.wrapContentHeight()
|
||||
.padding(horizontal = 16.dp).padding(vertical = 6.dp),
|
||||
onClick = {
|
||||
val route = "comic_page_route/${"${comic.id}".toHex()}/${comic.getPageIndex(chapter.page)}"
|
||||
val route = "comic_page_route/${comic.id.toHex()}/${comic.getPageIndex(chapter.page)}"
|
||||
navController.navigate(route)
|
||||
}
|
||||
) {
|
||||
|
||||
@@ -49,6 +49,7 @@ import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.max
|
||||
import androidx.compose.ui.unit.sp
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||
import androidx.navigation.NavHostController
|
||||
import coil3.compose.AsyncImage
|
||||
@@ -61,7 +62,7 @@ import com.acitelight.aether.viewModel.ComicPageViewModel
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@Composable
|
||||
fun ComicPageView(comicId: String, page: String, navController: NavHostController, comicPageViewModel: ComicPageViewModel = viewModel())
|
||||
fun ComicPageView(comicId: String, page: String, navController: NavHostController, comicPageViewModel: ComicPageViewModel = hiltViewModel<ComicPageViewModel>())
|
||||
{
|
||||
comicPageViewModel.SetupClient()
|
||||
comicPageViewModel.Resolve(comicId.hexToString(), page.toInt())
|
||||
@@ -291,8 +292,8 @@ fun ComicPageView(comicId: String, page: String, navController: NavHostControll
|
||||
s ->
|
||||
showBookMarkPop = false
|
||||
comicPageViewModel.coroutineScope?.launch {
|
||||
MediaManager.postBookmark(comicId.hexToString(), BookMark(name = s, page = comicPageViewModel.pageList[pagerState.currentPage]))
|
||||
comicPageViewModel.comic.value = MediaManager.queryComicInfoSingle(comicId.hexToString())
|
||||
comicPageViewModel.mediaManager.postBookmark(comicId.hexToString(), BookMark(name = s, page = comicPageViewModel.pageList[pagerState.currentPage]))
|
||||
comicPageViewModel.comic.value = comicPageViewModel.mediaManager.queryComicInfoSingle(comicId.hexToString())
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -53,6 +53,7 @@ import androidx.compose.ui.layout.Placeable
|
||||
import androidx.compose.ui.modifier.modifierLocalOf
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import androidx.navigation.NavHostController
|
||||
import coil3.request.ImageRequest
|
||||
import com.acitelight.aether.Global
|
||||
@@ -135,7 +136,7 @@ fun VariableGrid(
|
||||
@Composable
|
||||
fun ComicScreen(
|
||||
navController: NavHostController,
|
||||
comicScreenViewModel: ComicScreenViewModel = viewModel()
|
||||
comicScreenViewModel: ComicScreenViewModel = hiltViewModel<ComicScreenViewModel>()
|
||||
) {
|
||||
comicScreenViewModel.SetupClient()
|
||||
val included = comicScreenViewModel.included
|
||||
|
||||
@@ -32,7 +32,9 @@ import com.acitelight.aether.service.RecentManager
|
||||
import com.acitelight.aether.viewModel.HomeScreenViewModel
|
||||
|
||||
@Composable
|
||||
fun HomeScreen(homeScreenViewModel: HomeScreenViewModel = androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel<HomeScreenViewModel>(), navController: NavController)
|
||||
fun HomeScreen(
|
||||
homeScreenViewModel: HomeScreenViewModel = androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel<HomeScreenViewModel>(),
|
||||
navController: NavController)
|
||||
{
|
||||
if(Global.loggedIn)
|
||||
homeScreenViewModel.Init()
|
||||
@@ -50,14 +52,14 @@ fun HomeScreen(homeScreenViewModel: HomeScreenViewModel = androidx.hilt.lifecycl
|
||||
|
||||
HorizontalDivider(Modifier.padding(8.dp), 2.dp, DividerDefaults.color)
|
||||
|
||||
for(i in RecentManager.recent)
|
||||
for(i in homeScreenViewModel.recentManager.recent)
|
||||
{
|
||||
MiniVideoCard(
|
||||
modifier = Modifier
|
||||
.padding(horizontal = 12.dp),
|
||||
i,
|
||||
{
|
||||
updateRelate(RecentManager.recent, i)
|
||||
updateRelate(homeScreenViewModel.recentManager.recent, i)
|
||||
val route = "video_player_route/${ "${i.klass}/${i.id}".toHex() }"
|
||||
navController.navigate(route)
|
||||
}, homeScreenViewModel.imageLoader!!)
|
||||
|
||||
@@ -200,7 +200,7 @@ fun MeScreen(meScreenViewModel: MeScreenViewModel = androidx.hilt.lifecycle.view
|
||||
onClick = {
|
||||
meScreenViewModel.updateServer(url, cert, context)
|
||||
},
|
||||
modifier = Modifier.weight(0.5f)
|
||||
modifier = Modifier.weight(0.5f).padding(8.dp)
|
||||
) {
|
||||
Text("Save")
|
||||
}
|
||||
@@ -213,7 +213,7 @@ fun MeScreen(meScreenViewModel: MeScreenViewModel = androidx.hilt.lifecycle.view
|
||||
Log.i("Delay Analyze", "Abyss Hello: ${h.string()}")
|
||||
}
|
||||
},
|
||||
modifier = Modifier.weight(0.5f)
|
||||
modifier = Modifier.weight(0.5f).padding(8.dp)
|
||||
) {
|
||||
Text("Ping")
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.acitelight.aether.view
|
||||
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Row
|
||||
@@ -30,6 +31,7 @@ import androidx.compose.runtime.mutableStateListOf
|
||||
import androidx.compose.runtime.snapshots.SnapshotStateList
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import com.acitelight.aether.model.DownloadItemState
|
||||
@@ -72,7 +74,7 @@ private fun DownloadCard(
|
||||
elevation = CardDefaults.cardElevation(4.dp),
|
||||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(8.dp)
|
||||
.padding(8.dp).background(Color.Transparent)
|
||||
) {
|
||||
Column(modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
|
||||
@@ -95,6 +95,7 @@ import androidx.compose.ui.platform.LocalConfiguration
|
||||
import androidx.compose.ui.platform.LocalDensity
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.sp
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import coil3.ImageLoader
|
||||
import coil3.compose.AsyncImage
|
||||
import coil3.request.ImageRequest
|
||||
@@ -208,7 +209,7 @@ fun BiliMiniSlider(
|
||||
|
||||
@Composable
|
||||
fun VideoPlayer(
|
||||
videoPlayerViewModel: VideoPlayerViewModel = viewModel(),
|
||||
videoPlayerViewModel: VideoPlayerViewModel = hiltViewModel<VideoPlayerViewModel>(),
|
||||
videoId: String,
|
||||
navController: NavHostController
|
||||
) {
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.acitelight.aether.view
|
||||
|
||||
import android.widget.Toast
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.combinedClickable
|
||||
@@ -127,6 +128,7 @@ fun VideoCard(video: Video, navController: NavHostController, videoScreenViewMod
|
||||
},
|
||||
onLongClick = {
|
||||
videoScreenViewModel.download(video)
|
||||
Toast.makeText(videoScreenViewModel.context, "Start downloading ${video.video.name}", Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
),
|
||||
shape = RoundedCornerShape(6.dp),
|
||||
|
||||
Reference in New Issue
Block a user