Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -28,6 +28,6 @@ object EventBus {
|
||||
const val TIP_COLOR = "tipColor"
|
||||
const val SOURCE_CHANGED = "sourceChanged"
|
||||
const val SEARCH_RESULT = "searchResult"
|
||||
const val BOOK_URL_CHANGED = "bookUrlChanged"
|
||||
const val FILE_SOURCE_DOWNLOAD_DONE = "fileSourceDownloadDone"
|
||||
const val updateReadActionBar = "updateReadActionBar"
|
||||
}
|
||||
@@ -66,7 +66,7 @@ class ImportOnLineBookFileViewModel(app: Application) : BaseViewModel(app) {
|
||||
fun importOnLineBookFile(url: String, fileName: String, success: () -> Unit) {
|
||||
execute {
|
||||
LocalBook.importFileOnLine(url, fileName, bookSource).let {
|
||||
postEvent(EventBus.BOOK_URL_CHANGED, it.bookUrl)
|
||||
postEvent(EventBus.FILE_SOURCE_DOWNLOAD_DONE, it.bookUrl)
|
||||
}
|
||||
}.onSuccess {
|
||||
success.invoke()
|
||||
|
||||
@@ -535,7 +535,7 @@ class BookInfoActivity :
|
||||
}
|
||||
|
||||
override fun observeLiveBus() {
|
||||
observeEvent<String>(EventBus.BOOK_URL_CHANGED) {
|
||||
observeEvent<String>(EventBus.FILE_SOURCE_DOWNLOAD_DONE) {
|
||||
viewModel.changeToLocalBook(it)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,7 +32,8 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) {
|
||||
var inBookshelf = false
|
||||
var bookSource: BookSource? = null
|
||||
private var changeSourceCoroutine: Coroutine<*>? = null
|
||||
var isImportBookOnLine = false
|
||||
val isImportBookOnLine: Boolean
|
||||
get() = (bookSource?.bookSourceType ?: BookType.local) == BookType.file
|
||||
|
||||
fun initData(intent: Intent) {
|
||||
execute {
|
||||
@@ -76,7 +77,6 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) {
|
||||
upCoverByRule(book)
|
||||
bookSource = if (book.isLocalBook()) null else
|
||||
appDb.bookSourceDao.getBookSource(book.origin)
|
||||
isImportBookOnLine = (bookSource?.bookSourceType ?: BookType.local) == BookType.file
|
||||
if (book.tocUrl.isEmpty()) {
|
||||
loadBookInfo(book)
|
||||
} else if (isImportBookOnLine) {
|
||||
@@ -306,7 +306,6 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) {
|
||||
|
||||
fun changeToLocalBook(bookUrl: String) {
|
||||
appDb.bookDao.getBook(bookUrl)?.let { localBook ->
|
||||
isImportBookOnLine = false
|
||||
inBookshelf = true
|
||||
LocalBook.mergeBook(localBook, bookData.value).let {
|
||||
bookData.postValue(it)
|
||||
|
||||
Reference in New Issue
Block a user