mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-27 04:43:54 +01:00
parent
25156d0e94
commit
6811f139f2
3 changed files with 24 additions and 0 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
package fr.free.nrw.commons.customselector.listeners
|
package fr.free.nrw.commons.customselector.listeners
|
||||||
|
|
||||||
|
import android.net.Uri
|
||||||
import fr.free.nrw.commons.customselector.model.Image
|
import fr.free.nrw.commons.customselector.model.Image
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -12,4 +13,10 @@ interface ImageSelectListener {
|
||||||
* @param selectedImages : new selected images.
|
* @param selectedImages : new selected images.
|
||||||
*/
|
*/
|
||||||
fun onSelectedImagesChanged(selectedImages: ArrayList<Image>)
|
fun onSelectedImagesChanged(selectedImages: ArrayList<Image>)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onLongPress
|
||||||
|
* @param imageUri : uri of image
|
||||||
|
*/
|
||||||
|
fun onLongPress(imageUri: Uri)
|
||||||
}
|
}
|
||||||
|
|
@ -93,6 +93,12 @@ class ImageAdapter(
|
||||||
holder.itemView.setOnClickListener {
|
holder.itemView.setOnClickListener {
|
||||||
selectOrRemoveImage(holder, position)
|
selectOrRemoveImage(holder, position)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// launch media preview on long click.
|
||||||
|
holder.itemView.setOnLongClickListener {
|
||||||
|
imageSelectListener.onLongPress(image.uri)
|
||||||
|
true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import android.app.Activity
|
||||||
import android.app.Dialog
|
import android.app.Dialog
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.Window
|
import android.view.Window
|
||||||
|
|
@ -15,6 +16,7 @@ import fr.free.nrw.commons.R
|
||||||
import fr.free.nrw.commons.customselector.listeners.FolderClickListener
|
import fr.free.nrw.commons.customselector.listeners.FolderClickListener
|
||||||
import fr.free.nrw.commons.customselector.listeners.ImageSelectListener
|
import fr.free.nrw.commons.customselector.listeners.ImageSelectListener
|
||||||
import fr.free.nrw.commons.customselector.model.Image
|
import fr.free.nrw.commons.customselector.model.Image
|
||||||
|
import fr.free.nrw.commons.media.ZoomableActivity
|
||||||
import fr.free.nrw.commons.theme.BaseActivity
|
import fr.free.nrw.commons.theme.BaseActivity
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
|
|
@ -156,6 +158,15 @@ class CustomSelectorActivity: BaseActivity(), FolderClickListener, ImageSelectLi
|
||||||
done.visibility = if (selectedImages.isEmpty()) View.INVISIBLE else View.VISIBLE
|
done.visibility = if (selectedImages.isEmpty()) View.INVISIBLE else View.VISIBLE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onLongPress
|
||||||
|
* @param imageUri : uri of image
|
||||||
|
*/
|
||||||
|
override fun onLongPress(imageUri: Uri) {
|
||||||
|
val intent = Intent(this, ZoomableActivity::class.java).setData(imageUri);
|
||||||
|
startActivity(intent)
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* OnDone clicked.
|
* OnDone clicked.
|
||||||
* Get the selected images. Remove any non existent file, forward the data to finish selector.
|
* Get the selected images. Remove any non existent file, forward the data to finish selector.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue