From 3a1c3b6cf97fb00424b90a2f61fdf4c8b4615ebd Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 1 Jul 2018 20:38:59 +0200 Subject: [PATCH] make sure in MediaActivity the gotMedia is called on a background thread --- .../gallery/activities/MediaActivity.kt | 21 +++++++++---------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/MediaActivity.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/MediaActivity.kt index 6d928ecde..f7816899d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/activities/MediaActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/activities/MediaActivity.kt @@ -551,7 +551,9 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener { mLoadedInitialPhotos = true mCurrAsyncTask?.stopFetching() mCurrAsyncTask = GetMediaAsynctask(applicationContext, mPath, mIsGetImageIntent, mIsGetVideoIntent, mShowAll) { - gotMedia(it) + Thread { + gotMedia(it) + }.start() } mCurrAsyncTask!!.execute() @@ -779,15 +781,6 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener { } private fun gotMedia(media: ArrayList, isFromCache: Boolean = false) { - Thread { - mLatestMediaId = getLatestMediaId() - mLatestMediaDateId = getLatestMediaByDateId() - if (!isFromCache) { - val mediaToInsert = (mMedia.clone() as ArrayList).filter { it is Medium && it.deletedTS == 0L }.map { it as Medium } - galleryDB.MediumDao().insertAll(mediaToInsert) - } - }.start() - mIsGettingMedia = false checkLastMediaChanged() mMedia = media @@ -801,9 +794,15 @@ class MediaActivity : SimpleActivity(), MediaAdapter.MediaOperationsListener { val allowHorizontalScroll = config.scrollHorizontally && config.viewTypeFiles == VIEW_TYPE_GRID media_vertical_fastscroller.beVisibleIf(media_grid.isVisible() && !allowHorizontalScroll) media_horizontal_fastscroller.beVisibleIf(media_grid.isVisible() && allowHorizontalScroll) - setupAdapter() } + + mLatestMediaId = getLatestMediaId() + mLatestMediaDateId = getLatestMediaByDateId() + if (!isFromCache) { + val mediaToInsert = (mMedia.clone() as ArrayList).filter { it is Medium && it.deletedTS == 0L }.map { it as Medium } + galleryDB.MediumDao().insertAll(mediaToInsert) + } } override fun tryDeleteFiles(fileDirItems: ArrayList) {