From e00907ba334777fea84a569a47990c5c30b7050c Mon Sep 17 00:00:00 2001 From: gedoor Date: Sat, 22 Jan 2022 22:03:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/io/legado/app/data/entities/BookSource.kt | 6 ++++-- .../app/ui/book/source/manage/BookSourceViewModel.kt | 7 ++----- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/io/legado/app/data/entities/BookSource.kt b/app/src/main/java/io/legado/app/data/entities/BookSource.kt index db4fedb1f..782eec76b 100644 --- a/app/src/main/java/io/legado/app/data/entities/BookSource.kt +++ b/app/src/main/java/io/legado/app/data/entities/BookSource.kt @@ -118,18 +118,20 @@ data class BookSource( fun getContentRule() = ruleContent ?: ContentRule() - fun addGroup(group: String) { + fun addGroup(group: String): BookSource { bookSourceGroup?.splitNotBlank(AppPattern.splitGroupRegex)?.toHashSet()?.let { it.add(group) bookSourceGroup = TextUtils.join(",", it) } + return this } - fun removeGroup(group: String) { + fun removeGroup(group: String): BookSource { bookSourceGroup?.splitNotBlank(AppPattern.splitGroupRegex)?.toHashSet()?.let { it.remove(group) bookSourceGroup = TextUtils.join(",", it) } + return this } fun equal(source: BookSource) = diff --git a/app/src/main/java/io/legado/app/ui/book/source/manage/BookSourceViewModel.kt b/app/src/main/java/io/legado/app/ui/book/source/manage/BookSourceViewModel.kt index ea3c1c4dc..cf1c8535c 100644 --- a/app/src/main/java/io/legado/app/ui/book/source/manage/BookSourceViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/source/manage/BookSourceViewModel.kt @@ -3,7 +3,6 @@ package io.legado.app.ui.book.source.manage import android.app.Application import android.text.TextUtils import io.legado.app.base.BaseViewModel -import io.legado.app.constant.AppPattern import io.legado.app.data.appDb import io.legado.app.data.entities.BookSource import io.legado.app.utils.* @@ -94,8 +93,7 @@ class BookSourceViewModel(application: Application) : BaseViewModel(application) execute { val list = arrayListOf() sources.forEach { source -> - source.addGroup(groups) - list.add(source) + list.add(source.copy().addGroup(groups)) } appDb.bookSourceDao.update(*list.toTypedArray()) } @@ -105,8 +103,7 @@ class BookSourceViewModel(application: Application) : BaseViewModel(application) execute { val list = arrayListOf() sources.forEach { source -> - source.removeGroup(groups) - list.add(source) + list.add(source.copy().removeGroup(groups)) } appDb.bookSourceDao.update(*list.toTypedArray()) }