From 7db515bb164e9b37a524dfd155fa13c3fba7e0b3 Mon Sep 17 00:00:00 2001 From: Hemanth S Date: Thu, 21 May 2020 04:53:40 +0530 Subject: [PATCH] Improved image saving --- .../retromusic/activities/UserInfoActivity.kt | 32 ++++--------------- app/src/main/res/values/arrays.xml | 7 ++-- app/src/main/res/values/strings.xml | 2 ++ 3 files changed, 13 insertions(+), 28 deletions(-) diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/UserInfoActivity.kt b/app/src/main/java/code/name/monkey/retromusic/activities/UserInfoActivity.kt index 245d96e0..652e0e93 100644 --- a/app/src/main/java/code/name/monkey/retromusic/activities/UserInfoActivity.kt +++ b/app/src/main/java/code/name/monkey/retromusic/activities/UserInfoActivity.kt @@ -153,29 +153,29 @@ class UserInfoActivity : AbsBaseActivity() { isFromMemoryCache: Boolean, isFirstResource: Boolean ): Boolean { - resource?.let { saveBannerImage(it) } + resource?.let { saveImage(it, USER_BANNER) } return false } }) .into(bannerImage) } - private fun saveBannerImage(bitmap: Bitmap) { + private fun saveImage(bitmap: Bitmap, fileName: String) { CoroutineScope(Dispatchers.IO).launch() { val appDir = applicationContext.filesDir - val file = File(appDir, USER_BANNER) + val file = File(appDir, fileName) var successful = false try { val os = BufferedOutputStream(FileOutputStream(file)) successful = ImageUtil.resizeBitmap(bitmap, 2048) .compress(Bitmap.CompressFormat.WEBP, 100, os) - os.close() + withContext(Dispatchers.IO) { os.close() } } catch (e: IOException) { e.printStackTrace() } if (successful) { withContext(Dispatchers.Main) { - Toast.makeText(this@UserInfoActivity, "Done", Toast.LENGTH_SHORT).show() + Toast.makeText(this@UserInfoActivity, "Updated", Toast.LENGTH_SHORT).show() } } } @@ -203,33 +203,13 @@ class UserInfoActivity : AbsBaseActivity() { isFromMemoryCache: Boolean, isFirstResource: Boolean ): Boolean { - resource?.let { saveImage(it) } + resource?.let { saveImage(it, USER_PROFILE) } return false } }) .into(userImage) } - private fun saveImage(bitmap: Bitmap) { - CoroutineScope(Dispatchers.IO).launch() { - val appDir = applicationContext.filesDir - val file = File(appDir, USER_PROFILE) - var successful = false - try { - val os = BufferedOutputStream(FileOutputStream(file)) - successful = ImageUtil.resizeBitmap(bitmap, 2048) - .compress(Bitmap.CompressFormat.WEBP, 100, os) - os.close() - } catch (e: IOException) { - e.printStackTrace() - } - if (successful) { - withContext(Dispatchers.Main) { - Toast.makeText(this@UserInfoActivity, "Done", Toast.LENGTH_SHORT).show() - } - } - } - } companion object { private const val PICK_IMAGE_REQUEST = 9002 diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 1d2e6a10..4f82f6e5 100755 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -45,11 +45,13 @@ @string/dark_theme_name @string/follow_system + light dark auto + @string/normal_style @string/card_style @@ -82,6 +84,7 @@ @string/card_color_style @string/card_style @string/tiny_card_style + @string/card_square @@ -89,6 +92,7 @@ 1 2 3 + 4 @@ -96,16 +100,15 @@ @layout/item_artist_square @layout/item_album_card @layout/item_artist_card + @layout/item_image - always only_wifi never - @string/today @string/this_week diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 21c38703..78c92051 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -164,6 +164,8 @@ Card + Square Card + Carousel Carousel effect on the now playing screen