From 85442c03a1a20f3080874459e8e80100c3c717a8 Mon Sep 17 00:00:00 2001 From: rishavgupta Date: Mon, 28 Feb 2022 12:15:40 +0530 Subject: [PATCH 1/5] no image found --- .../ui/selector/CustomSelectorActivity.kt | 32 +++++++++++++++++++ .../res/layout/activity_custom_selector.xml | 12 +++++++ 2 files changed, 44 insertions(+) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt index 8dffe73064..91f599e857 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt @@ -4,12 +4,15 @@ import android.app.Activity import android.app.Dialog import android.content.Intent import android.content.SharedPreferences +import android.database.Cursor import android.net.Uri import android.os.Bundle +import android.provider.MediaStore import android.view.View import android.view.Window import android.widget.Button import android.widget.ImageButton +import android.widget.LinearLayout import android.widget.TextView import androidx.lifecycle.ViewModelProvider import fr.free.nrw.commons.R @@ -80,6 +83,35 @@ class CustomSelectorActivity: BaseActivity(), FolderClickListener, ImageSelectLi val lastItemId: Long = prefs.getLong(ITEM_ID, 0) lastOpenFolderName?.let { onFolderClick(lastOpenFolderId, it, lastItemId) } } + + // Checks if the Image gallery is empty. + if(isImageGalleryEmpty()) { + val linearLayout: LinearLayout = findViewById(R.id.linear_layout_noimage) as LinearLayout + val textView = TextView(this) + textView.text = "No Image Found" + textView.textSize = 20f + linearLayout.addView(textView) + } + } + + /** + * Checks for no image in gallery. + */ + private fun isImageGalleryEmpty(): Boolean { + try { + val projection = arrayOf(MediaStore.Images.Media._ID) + val cursor: Cursor? = contentResolver.query( + MediaStore.Images.Media.EXTERNAL_CONTENT_URI, + projection, null, null, null + ) + + val size: Int? = cursor?.count + // If size is 0, there are no images on the SD Card. + return size == 0 + + } catch (e: Exception) { + } + return false } /** diff --git a/app/src/main/res/layout/activity_custom_selector.xml b/app/src/main/res/layout/activity_custom_selector.xml index d96918feee..4672087017 100644 --- a/app/src/main/res/layout/activity_custom_selector.xml +++ b/app/src/main/res/layout/activity_custom_selector.xml @@ -1,5 +1,6 @@ @@ -16,4 +17,15 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintTop_toBottomOf="@+id/toolbar_layout"/> + + + \ No newline at end of file From 49b46ccaa6cdee469e10b6d974e01317534279f2 Mon Sep 17 00:00:00 2001 From: rishavgupta Date: Thu, 3 Mar 2022 18:25:52 +0530 Subject: [PATCH 2/5] old removed --- .../ui/selector/CustomSelectorActivity.kt | 54 +++++++++---------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt index 91f599e857..6bcf0492fc 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt @@ -84,35 +84,35 @@ class CustomSelectorActivity: BaseActivity(), FolderClickListener, ImageSelectLi lastOpenFolderName?.let { onFolderClick(lastOpenFolderId, it, lastItemId) } } - // Checks if the Image gallery is empty. - if(isImageGalleryEmpty()) { - val linearLayout: LinearLayout = findViewById(R.id.linear_layout_noimage) as LinearLayout - val textView = TextView(this) - textView.text = "No Image Found" - textView.textSize = 20f - linearLayout.addView(textView) - } +// // Checks if the Image gallery is empty. +// if(isImageGalleryEmpty()) { +// val linearLayout: LinearLayout = findViewById(R.id.linear_layout_noimage) as LinearLayout +// val textView = TextView(this) +// textView.text = "No images found." +// textView.textSize = 20f +// linearLayout.addView(textView) +// } } - /** - * Checks for no image in gallery. - */ - private fun isImageGalleryEmpty(): Boolean { - try { - val projection = arrayOf(MediaStore.Images.Media._ID) - val cursor: Cursor? = contentResolver.query( - MediaStore.Images.Media.EXTERNAL_CONTENT_URI, - projection, null, null, null - ) - - val size: Int? = cursor?.count - // If size is 0, there are no images on the SD Card. - return size == 0 - - } catch (e: Exception) { - } - return false - } +// /** +// * Checks for no image in gallery. +// */ +// private fun isImageGalleryEmpty(): Boolean { +// try { +// val projection = arrayOf(MediaStore.Images.Media._ID) +// val cursor: Cursor? = contentResolver.query( +// MediaStore.Images.Media.EXTERNAL_CONTENT_URI, +// projection, null, null, null +// ) +// +// val size: Int? = cursor?.count +// // If size is 0, there are no images on the SD Card. +// return size == 0 +// +// } catch (e: Exception) { +// } +// return false +// } /** * Show Custom Selector Welcome Dialog. From 362fb0023d8acedcc424a1053d0cd0b7e5ba5e03 Mon Sep 17 00:00:00 2001 From: rishavgupta Date: Sat, 5 Mar 2022 11:06:56 +0530 Subject: [PATCH 3/5] new way --- .../ui/selector/CustomSelectorActivity.kt | 32 ------------------- .../ui/selector/FolderFragment.kt | 8 +++++ .../ui/selector/ImageFragment.kt | 2 ++ .../res/layout/activity_custom_selector.xml | 11 ------- .../res/layout/fragment_custom_selector.xml | 11 +++---- 5 files changed, 15 insertions(+), 49 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt index 6bcf0492fc..8dffe73064 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/CustomSelectorActivity.kt @@ -4,15 +4,12 @@ import android.app.Activity import android.app.Dialog import android.content.Intent import android.content.SharedPreferences -import android.database.Cursor import android.net.Uri import android.os.Bundle -import android.provider.MediaStore import android.view.View import android.view.Window import android.widget.Button import android.widget.ImageButton -import android.widget.LinearLayout import android.widget.TextView import androidx.lifecycle.ViewModelProvider import fr.free.nrw.commons.R @@ -83,37 +80,8 @@ class CustomSelectorActivity: BaseActivity(), FolderClickListener, ImageSelectLi val lastItemId: Long = prefs.getLong(ITEM_ID, 0) lastOpenFolderName?.let { onFolderClick(lastOpenFolderId, it, lastItemId) } } - -// // Checks if the Image gallery is empty. -// if(isImageGalleryEmpty()) { -// val linearLayout: LinearLayout = findViewById(R.id.linear_layout_noimage) as LinearLayout -// val textView = TextView(this) -// textView.text = "No images found." -// textView.textSize = 20f -// linearLayout.addView(textView) -// } } -// /** -// * Checks for no image in gallery. -// */ -// private fun isImageGalleryEmpty(): Boolean { -// try { -// val projection = arrayOf(MediaStore.Images.Media._ID) -// val cursor: Cursor? = contentResolver.query( -// MediaStore.Images.Media.EXTERNAL_CONTENT_URI, -// projection, null, null, null -// ) -// -// val size: Int? = cursor?.count -// // If size is 0, there are no images on the SD Card. -// return size == 0 -// -// } catch (e: Exception) { -// } -// return false -// } - /** * Show Custom Selector Welcome Dialog. */ diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt index 456c14831a..a74bb4a7b7 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt @@ -4,7 +4,9 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.LinearLayout import android.widget.ProgressBar +import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.GridLayoutManager @@ -19,6 +21,7 @@ import fr.free.nrw.commons.customselector.ui.adapter.FolderAdapter import fr.free.nrw.commons.di.CommonsDaggerSupportFragment import fr.free.nrw.commons.media.MediaClient import fr.free.nrw.commons.upload.FileProcessor +import kotlinx.android.synthetic.main.fragment_custom_selector.* import kotlinx.android.synthetic.main.fragment_custom_selector.view.* import javax.inject.Inject @@ -110,6 +113,11 @@ class FolderFragment : CommonsDaggerSupportFragment() { * Load adapter. */ private fun handleResult(result: Result) { + val images = result.images + if(images.isNotEmpty()) + { + empty_text.visibility = View.GONE + } if(result.status is CallbackStatus.SUCCESS){ folders = ImageHelper.folderListFromImages(result.images) folderAdapter.init(folders) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt index ef9ae1fceb..1ac423f938 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt @@ -20,6 +20,7 @@ import fr.free.nrw.commons.customselector.model.Result import fr.free.nrw.commons.customselector.ui.adapter.ImageAdapter import fr.free.nrw.commons.di.CommonsDaggerSupportFragment import fr.free.nrw.commons.theme.BaseActivity +import kotlinx.android.synthetic.main.fragment_custom_selector.* import kotlinx.android.synthetic.main.fragment_custom_selector.view.* import java.io.File import java.io.FileInputStream @@ -141,6 +142,7 @@ class ImageFragment: CommonsDaggerSupportFragment() { if(result.status is CallbackStatus.SUCCESS){ val images = result.images if(images.isNotEmpty()) { + empty_text.visibility = View.GONE filteredImages = ImageHelper.filterImages(images, bucketId) imageAdapter.init(filteredImages) selectorRV?.let { diff --git a/app/src/main/res/layout/activity_custom_selector.xml b/app/src/main/res/layout/activity_custom_selector.xml index 4672087017..da3d2a0879 100644 --- a/app/src/main/res/layout/activity_custom_selector.xml +++ b/app/src/main/res/layout/activity_custom_selector.xml @@ -17,15 +17,4 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintTop_toBottomOf="@+id/toolbar_layout"/> - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_custom_selector.xml b/app/src/main/res/layout/fragment_custom_selector.xml index 511f7e4079..57e39b046e 100644 --- a/app/src/main/res/layout/fragment_custom_selector.xml +++ b/app/src/main/res/layout/fragment_custom_selector.xml @@ -14,16 +14,15 @@ + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> Date: Sat, 5 Mar 2022 11:11:04 +0530 Subject: [PATCH 4/5] minor changes --- .../nrw/commons/customselector/ui/selector/FolderFragment.kt | 2 -- app/src/main/res/layout/activity_custom_selector.xml | 1 - app/src/main/res/layout/fragment_custom_selector.xml | 4 ++-- 3 files changed, 2 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt index a74bb4a7b7..0f3be8e612 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt @@ -4,9 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.LinearLayout import android.widget.ProgressBar -import android.widget.TextView import androidx.lifecycle.Observer import androidx.lifecycle.ViewModelProvider import androidx.recyclerview.widget.GridLayoutManager diff --git a/app/src/main/res/layout/activity_custom_selector.xml b/app/src/main/res/layout/activity_custom_selector.xml index da3d2a0879..d96918feee 100644 --- a/app/src/main/res/layout/activity_custom_selector.xml +++ b/app/src/main/res/layout/activity_custom_selector.xml @@ -1,6 +1,5 @@ diff --git a/app/src/main/res/layout/fragment_custom_selector.xml b/app/src/main/res/layout/fragment_custom_selector.xml index 57e39b046e..9f55440913 100644 --- a/app/src/main/res/layout/fragment_custom_selector.xml +++ b/app/src/main/res/layout/fragment_custom_selector.xml @@ -14,11 +14,11 @@ Date: Sun, 6 Mar 2022 12:10:24 +0530 Subject: [PATCH 5/5] reqeusted changes done --- .../customselector/ui/selector/FolderFragment.kt | 10 +++++----- .../customselector/ui/selector/ImageFragment.kt | 1 + app/src/main/res/layout/fragment_custom_selector.xml | 1 + 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt index 0f3be8e612..2b408e6bda 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/FolderFragment.kt @@ -111,12 +111,12 @@ class FolderFragment : CommonsDaggerSupportFragment() { * Load adapter. */ private fun handleResult(result: Result) { - val images = result.images - if(images.isNotEmpty()) - { - empty_text.visibility = View.GONE - } if(result.status is CallbackStatus.SUCCESS){ + val images = result.images + if(images.isNullOrEmpty()) + { + empty_text.visibility = View.VISIBLE + } folders = ImageHelper.folderListFromImages(result.images) folderAdapter.init(folders) folderAdapter.notifyDataSetChanged() diff --git a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt index 1ac423f938..1028a46756 100644 --- a/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt @@ -154,6 +154,7 @@ class ImageFragment: CommonsDaggerSupportFragment() { } } else{ + empty_text.visibility = View.VISIBLE selectorRV?.let{ it.visibility = View.GONE } diff --git a/app/src/main/res/layout/fragment_custom_selector.xml b/app/src/main/res/layout/fragment_custom_selector.xml index 9f55440913..b0b4e6c28e 100644 --- a/app/src/main/res/layout/fragment_custom_selector.xml +++ b/app/src/main/res/layout/fragment_custom_selector.xml @@ -19,6 +19,7 @@ android:textSize="20sp" android:padding="@dimen/standard_gap" android:text="@string/no_images_found" + android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent"