diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 26e9b3d2..3874d39e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -23,7 +23,7 @@ android { minSdk = 24 targetSdk = 35 // 版本号为x.y.z则versionCode为x*1000000+y*10000+z*100+debug版本号(开发需要时迭代, 三位数) - versionCode = 1_01_00_003 + versionCode = 1_01_00_005 versionName = "1.1.0" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/MainActivity.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/MainActivity.kt index 00de3166..64e5719b 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/MainActivity.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/MainActivity.kt @@ -8,7 +8,6 @@ import android.os.Bundle import android.view.KeyEvent import androidx.activity.ComponentActivity import androidx.activity.compose.setContent -import androidx.activity.enableEdgeToEdge import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.setValue @@ -24,11 +23,11 @@ import com.microsoft.appcenter.AppCenter import com.microsoft.appcenter.analytics.Analytics import com.microsoft.appcenter.crashes.Crashes import dagger.hilt.android.AndroidEntryPoint -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfSortType import indi.dmzz_yyhyy.lightnovelreader.data.update.UpdateCheckRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.work.CheckUpdateWork import indi.dmzz_yyhyy.lightnovelreader.theme.LightNovelReaderTheme import indi.dmzz_yyhyy.lightnovelreader.ui.LightNovelReaderApp @@ -51,7 +50,6 @@ class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - enableEdgeToEdge() var appLocale by mutableStateOf("${Locale.current.platformLocale.language}-${Locale.current.platformLocale.variant}") var darkMode by mutableStateOf("FollowSystem") var dynamicColor by mutableStateOf(false) diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/BookRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/book/BookRepository.kt similarity index 95% rename from app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/BookRepository.kt rename to app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/book/BookRepository.kt index 852cd5e1..33bc2b2e 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/BookRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/book/BookRepository.kt @@ -1,14 +1,10 @@ -package indi.dmzz_yyhyy.lightnovelreader.data +package indi.dmzz_yyhyy.lightnovelreader.data.book import androidx.work.ExistingWorkPolicy import androidx.work.OneTimeWorkRequest import androidx.work.OneTimeWorkRequestBuilder import androidx.work.WorkManager import androidx.work.workDataOf -import indi.dmzz_yyhyy.lightnovelreader.data.book.BookInformation -import indi.dmzz_yyhyy.lightnovelreader.data.book.BookVolumes -import indi.dmzz_yyhyy.lightnovelreader.data.book.ChapterContent -import indi.dmzz_yyhyy.lightnovelreader.data.book.UserReadingData import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.json.AppUserDataContent import indi.dmzz_yyhyy.lightnovelreader.data.json.BookUserData diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/bookshelf/BookshelfRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/bookshelf/BookshelfRepository.kt index 4fc783ca..a9897fed 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/bookshelf/BookshelfRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/bookshelf/BookshelfRepository.kt @@ -17,6 +17,7 @@ import indi.dmzz_yyhyy.lightnovelreader.data.local.room.entity.BookshelfEntity import indi.dmzz_yyhyy.lightnovelreader.data.web.WebBookDataSource import indi.dmzz_yyhyy.lightnovelreader.data.work.CacheBookWork import indi.dmzz_yyhyy.lightnovelreader.data.work.SaveBookshelfWork +import indi.dmzz_yyhyy.lightnovelreader.utils.debugPrint import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.map import java.time.Instant @@ -32,8 +33,8 @@ class BookshelfRepository @Inject constructor( ) { fun getAllBookshelfIds(): List = bookshelfDao.getAllBookshelfIds() - fun getAllBookshelvesFlow(): Flow> = bookshelfDao.getAllBookshelfFlow().map { - it.map { bookshelfEntity -> + fun getAllBookshelvesFlow(): Flow> = bookshelfDao.getAllBookshelfFlow().map { bookshelfEntities -> + bookshelfEntities.map { bookshelfEntity -> MutableBookshelf().apply { this.id = bookshelfEntity.id this.name = bookshelfEntity.name @@ -277,21 +278,35 @@ class BookshelfRepository @Inject constructor( fun importBookshelf(data: AppUserDataContent): Boolean { val bookshelfDataList = data.bookshelf ?: return false val bookshelfBookMetadataList = data.bookShelfBookMetadata ?: return false - val allBookshelfIds = getAllBookshelfIds() bookshelfDataList.forEach { bookshelf -> - if (allBookshelfIds.contains(bookshelf.id)) return@forEach - bookshelfDao.createBookshelf( - BookshelfEntity( - id = bookshelf.id, - name = bookshelf.name, - sortType = bookshelf.sortType.key, - autoCache = bookshelf.autoCache, - systemUpdateReminder = bookshelf.systemUpdateReminder, - allBookIds = bookshelf.allBookIds, - pinnedBookIds = bookshelf.pinnedBookIds, - updatedBookIds = bookshelf.updatedBookIds, + val oldBookshelf = bookshelfDao.getBookshelf(bookshelf.id).debugPrint() + if (oldBookshelf == null) + bookshelfDao.createBookshelf( + BookshelfEntity( + id = bookshelf.id, + name = bookshelf.name, + sortType = bookshelf.sortType.key, + autoCache = bookshelf.autoCache, + systemUpdateReminder = bookshelf.systemUpdateReminder, + allBookIds = bookshelf.allBookIds, + pinnedBookIds = bookshelf.pinnedBookIds, + updatedBookIds = bookshelf.updatedBookIds, + ) ) - ) + else { + bookshelfDao.updateBookshelfEntity( + BookshelfEntity( + id = bookshelf.id, + name = bookshelf.name, + sortType = bookshelf.sortType.key, + autoCache = bookshelf.autoCache, + systemUpdateReminder = bookshelf.systemUpdateReminder, + allBookIds = (bookshelf.allBookIds.debugPrint() + oldBookshelf.allBookIds.debugPrint()).distinct(), + pinnedBookIds = (bookshelf.pinnedBookIds + oldBookshelf.pinnedBookIds).distinct(), + updatedBookIds = (bookshelf.updatedBookIds + oldBookshelf.updatedBookIds).distinct(), + ) + ) + } } bookshelfBookMetadataList.forEach { bookshelfDao.addBookshelfMetadata(it.id, it.lastUpdate, it.bookShelfIds) diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/ExplorationRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/exploration/ExplorationRepository.kt similarity index 97% rename from app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/ExplorationRepository.kt rename to app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/exploration/ExplorationRepository.kt index 207a53fe..9d74aa52 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/ExplorationRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/exploration/ExplorationRepository.kt @@ -1,4 +1,4 @@ -package indi.dmzz_yyhyy.lightnovelreader.data +package indi.dmzz_yyhyy.lightnovelreader.data.exploration import indi.dmzz_yyhyy.lightnovelreader.data.book.BookInformation import indi.dmzz_yyhyy.lightnovelreader.data.web.WebBookDataSource diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/text/TextProcessingRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/text/TextProcessingRepository.kt index 9a79e55e..9dc718a7 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/text/TextProcessingRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/text/TextProcessingRepository.kt @@ -1,6 +1,6 @@ package indi.dmzz_yyhyy.lightnovelreader.data.text -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.book.ChapterContent import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import kotlinx.coroutines.CoroutineScope diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/GithubParser.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/GithubParser.kt index 0fb618b2..0da7d3b7 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/GithubParser.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/GithubParser.kt @@ -1,7 +1,6 @@ package indi.dmzz_yyhyy.lightnovelreader.data.update import android.util.Log -import indi.dmzz_yyhyy.lightnovelreader.utils.debugPrint import indi.dmzz_yyhyy.lightnovelreader.utils.md.HtmlToMdUtil import kotlinx.coroutines.flow.MutableStateFlow import org.jsoup.Jsoup @@ -111,7 +110,7 @@ object GithubParser { versionName.toString(), releaseNotes, downloadUrl - ).debugPrint() + ) } } @@ -221,7 +220,7 @@ object GithubParser { .also { if (host.startsWith("http://")) it?.header("Host", "github.com") } - ?.get().debugPrint() + ?.get() ?.select("#discussion_bucket > div > div.Layout-main > div > div.js-discussion.ml-0.pl-0.ml-md-6.pl-md-3 > div.TimelineItem.TimelineItem--condensed.pt-0.js-comment-container.js-socket-channel.js-updatable-content.js-command-palette-pull-body > div.timeline-comment-group.js-minimizable-comment-group.js-targetable-element.TimelineItem-body.my-0 > div > div:nth-child(2) > div > task-lists > div") ?.toString() ?.let(HtmlToMdUtil::convertHtml) diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/UpdateCheckRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/UpdateCheckRepository.kt index ec4b8a80..8bd813ac 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/UpdateCheckRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/update/UpdateCheckRepository.kt @@ -8,7 +8,7 @@ import com.ketch.Ketch import com.ketch.Status import dagger.hilt.android.qualifiers.ApplicationContext import indi.dmzz_yyhyy.lightnovelreader.BuildConfig -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import indi.dmzz_yyhyy.lightnovelreader.ui.home.settings.data.MenuOptions import kotlinx.coroutines.CoroutineScope @@ -65,7 +65,6 @@ class UpdateCheckRepository @Inject constructor( .getOptionWithValue(distributionPlatform).value .getOptionWithValue(updateChannelKey).value .parser(_updatePhase) - .also { println(it?.downloadUrl) } } catch (e: Exception) { Log.e("UpdateCheckRepository", "failed to get release") e.printStackTrace() diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/UserDataRepository.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/userdata/UserDataRepository.kt similarity index 68% rename from app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/UserDataRepository.kt rename to app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/userdata/UserDataRepository.kt index fadc41b5..d727b699 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/UserDataRepository.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/userdata/UserDataRepository.kt @@ -1,15 +1,7 @@ -package indi.dmzz_yyhyy.lightnovelreader.data +package indi.dmzz_yyhyy.lightnovelreader.data.userdata import indi.dmzz_yyhyy.lightnovelreader.data.json.AppUserDataContent import indi.dmzz_yyhyy.lightnovelreader.data.local.room.dao.UserDataDao -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.BooleanUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.ColorUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.FloatUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.IntListUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.IntUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.StringListUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.StringUserData -import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UriUserData import javax.inject.Inject import javax.inject.Singleton diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/CacheBookWork.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/CacheBookWork.kt index 49e46584..6df2a2b5 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/CacheBookWork.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/CacheBookWork.kt @@ -6,7 +6,7 @@ import androidx.work.Worker import androidx.work.WorkerParameters import dagger.assisted.Assisted import dagger.assisted.AssistedInject -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.local.LocalBookDataSource import indi.dmzz_yyhyy.lightnovelreader.data.web.WebBookDataSource import kotlinx.coroutines.CoroutineScope diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ExportDataWork.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ExportDataWork.kt index 26008b6c..a7083d5e 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ExportDataWork.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ExportDataWork.kt @@ -8,7 +8,7 @@ import androidx.work.Worker import androidx.work.WorkerParameters import dagger.assisted.Assisted import dagger.assisted.AssistedInject -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.book.UserReadingData import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.Bookshelf import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfBookMetadata diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ImportDataWork.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ImportDataWork.kt index dc58f994..8809dddd 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ImportDataWork.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/data/work/ImportDataWork.kt @@ -9,11 +9,11 @@ import androidx.work.WorkerParameters import com.google.gson.JsonSyntaxException import dagger.assisted.Assisted import dagger.assisted.AssistedInject -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.json.AppUserDataContent import indi.dmzz_yyhyy.lightnovelreader.data.json.AppUserDataJson +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.web.WebBookDataSource import java.io.FileInputStream import java.io.FileNotFoundException diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/di/WebDataSourceModule.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/di/WebDataSourceModule.kt index 7d0e3d7f..3f0a07ae 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/di/WebDataSourceModule.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/di/WebDataSourceModule.kt @@ -4,7 +4,7 @@ import dagger.Module import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import indi.dmzz_yyhyy.lightnovelreader.data.web.WebBookDataSource import indi.dmzz_yyhyy.lightnovelreader.data.web.wenku8.Wenku8Api diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/theme/Themes.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/theme/Themes.kt index 06364322..b43ab7f9 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/theme/Themes.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/theme/Themes.kt @@ -11,6 +11,7 @@ import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.material3.lightColorScheme import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect +import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalInspectionMode @@ -53,8 +54,10 @@ fun LightNovelReaderTheme( val controller = WindowCompat.getInsetsController(window, view) controller.isAppearanceLightStatusBars = !appDarkTheme + window.statusBarColor = Color.Transparent.toArgb() if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1) { + window.navigationBarColor = Color.Transparent.toArgb() controller.isAppearanceLightNavigationBars = !appDarkTheme } } diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ColorPickerDialogViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ColorPickerDialogViewModel.kt index 1e35b9bb..33f6799f 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ColorPickerDialogViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ColorPickerDialogViewModel.kt @@ -4,7 +4,7 @@ import android.util.Log import androidx.compose.ui.graphics.Color import androidx.lifecycle.ViewModel import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.ColorUserData import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ContentViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ContentViewModel.kt index e8bb3e94..30345d68 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ContentViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/ContentViewModel.kt @@ -3,8 +3,8 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.book.content import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.text.TextProcessingRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import indi.dmzz_yyhyy.lightnovelreader.utils.throttleLatest diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/SettingState.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/SettingState.kt index adf13ec8..35e209c5 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/SettingState.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/content/SettingState.kt @@ -3,7 +3,7 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.book.content import android.net.Uri import androidx.compose.runtime.getValue import androidx.compose.ui.graphics.Color -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.setting.AbstractSettingState import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import indi.dmzz_yyhyy.lightnovelreader.ui.home.settings.data.MenuOptions diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/detail/DetailViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/detail/DetailViewModel.kt index cfeff3a2..8c2e003d 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/detail/DetailViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/book/detail/DetailViewModel.kt @@ -5,7 +5,7 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import androidx.work.WorkInfo import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/dialog/AddToBookshelfDialogViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/dialog/AddToBookshelfDialogViewModel.kt index 99e60d75..7fd6a297 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/dialog/AddToBookshelfDialogViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/dialog/AddToBookshelfDialogViewModel.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import androidx.navigation.NavController import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/bookshelf/home/BookshelfHomeViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/bookshelf/home/BookshelfHomeViewModel.kt index a41b8c9b..f5874614 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/bookshelf/home/BookshelfHomeViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/bookshelf/home/BookshelfHomeViewModel.kt @@ -9,7 +9,7 @@ import androidx.work.WorkInfo import androidx.work.WorkManager import androidx.work.workDataOf import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.MutableBookshelf import indi.dmzz_yyhyy.lightnovelreader.data.work.ImportDataWork diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/expanded/ExpandedPageViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/expanded/ExpandedPageViewModel.kt index acecc2ad..787f9799 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/expanded/ExpandedPageViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/expanded/ExpandedPageViewModel.kt @@ -3,7 +3,7 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.home.exploration.expanded import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.ExplorationRepository +import indi.dmzz_yyhyy.lightnovelreader.data.exploration.ExplorationRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.web.exploration.ExplorationExpandedPageDataSource import kotlinx.coroutines.Dispatchers diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/home/ExplorationHomeViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/home/ExplorationHomeViewModel.kt index 0ed3607e..f02d15fd 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/home/ExplorationHomeViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/home/ExplorationHomeViewModel.kt @@ -3,7 +3,7 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.home.exploration.home import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.ExplorationRepository +import indi.dmzz_yyhyy.lightnovelreader.data.exploration.ExplorationRepository import javax.inject.Inject import kotlinx.coroutines.Job import kotlinx.coroutines.launch diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/search/ExplorationSearchViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/search/ExplorationSearchViewModel.kt index 8776318b..d55c691d 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/search/ExplorationSearchViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/exploration/search/ExplorationSearchViewModel.kt @@ -3,8 +3,8 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.home.exploration.search import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.ExplorationRepository -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.exploration.ExplorationRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import javax.inject.Inject diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/reading/ReadingViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/reading/ReadingViewModel.kt index 1adbdd7c..1bc63639 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/reading/ReadingViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/reading/ReadingViewModel.kt @@ -9,8 +9,8 @@ import androidx.compose.runtime.snapshots.SnapshotStateMap import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.BookRepository -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.book.BookRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.book.BookInformation import indi.dmzz_yyhyy.lightnovelreader.data.book.UserReadingData import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingStates.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingStates.kt index 4adb74c4..2dc81bc1 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingStates.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingStates.kt @@ -2,7 +2,7 @@ package indi.dmzz_yyhyy.lightnovelreader.ui.home.settings import androidx.compose.runtime.Stable import androidx.compose.runtime.getValue -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.setting.AbstractSettingState import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath import kotlinx.coroutines.CoroutineScope diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingsViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingsViewModel.kt index 06aac808..71baf049 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingsViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SettingsViewModel.kt @@ -12,7 +12,7 @@ import androidx.work.OneTimeWorkRequestBuilder import androidx.work.WorkManager import androidx.work.workDataOf import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.work.ImportDataWork import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SourceChangeDialogViewModel.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SourceChangeDialogViewModel.kt index db5e3ddd..332b79f4 100644 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SourceChangeDialogViewModel.kt +++ b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/SourceChangeDialogViewModel.kt @@ -10,7 +10,7 @@ import androidx.work.WorkInfo import androidx.work.WorkManager import androidx.work.workDataOf import dagger.hilt.android.lifecycle.HiltViewModel -import indi.dmzz_yyhyy.lightnovelreader.data.UserDataRepository +import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataRepository import indi.dmzz_yyhyy.lightnovelreader.data.bookshelf.BookshelfRepository import indi.dmzz_yyhyy.lightnovelreader.data.local.LocalBookDataSource import indi.dmzz_yyhyy.lightnovelreader.data.userdata.UserDataPath diff --git a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/data/ObjectOption.kt b/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/data/ObjectOption.kt deleted file mode 100644 index cc6790e8..00000000 --- a/app/src/main/kotlin/indi/dmzz_yyhyy/lightnovelreader/ui/home/settings/data/ObjectOption.kt +++ /dev/null @@ -1,24 +0,0 @@ -package indi.dmzz_yyhyy.lightnovelreader.ui.home.settings.data - -import indi.dmzz_yyhyy.lightnovelreader.R - -sealed class ObjectOptions(vararg options: Option) { - val optionsList: List