* Add Option to Select Downloads Grouping Mode * hide Drag and Edit Button when Mode is Artist * Revert "hide Drag and Edit Button when Mode is Artist" some changes are not filtered when pushed This reverts commit 319812e156f61c32250d908ed5ed22720ea0c6b7. * hide Drag and Edit Button when Mode is Artist * declared is typo * use ComicInfo.penciller * remove BaseGalleryInfo.artist * Correct invalidate key * reImport kotlin.math.roundToInt, it was incorrectly deleted * use movableContentOf * optimize imports * use remember not rememberInVM * Get DownloadInfo.artists from Database or `ComicInfo.xml` * refactor * unknown artist group * redundant parameter * reformat code * SearchBar title and hint * Translation * Fix when initially loaded, the count of DownloadLabel is zero. * lazy invalid * use remember not rememberInVM * refactor * Fix LazyColumn not updated * refactor * Hide some Button in Artist Mode * Revert * Fix update labelList not updated UI * Revert reFormat * use trailing lambda * Revert rememberUpdatedState * Translate * use buildMap * Move ARTIST to DOWNLOAD_ARTIST * Revert multi-line for chained Modifier * Generate DownloadInfo.artistInfoList after writeComicInfo and restoreDownload * Fixed crash after download gallery * Use a composite key for DOWNLOAD_ARTISTS * Make artists non-null * Refactor * Only update artist info when writing comic info * Separate list for pending artist info * Remove unused * Put download artist when import database * Use a composite key of GID and ARTIST * Refactor * Cache labelList * named lambda parameters * Refactor to avoid `mutex` * follow up on `Make artists non-null` * ArtistList order by ARTIST * Lift EhTagDatabase check * Translate artist in download title * Refactor * Refactor readMetadataFromLocal Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com> * Do not update the DB when the `artists` is empty * Remove unused --------- Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com> Co-authored-by: GG Bond <whatever@tagkong.com>