Add back ability to view full contact picture

Revert "hiding the fake top big image"
This reverts commit a996a40f
This commit is contained in:
Andrii Chubko 2021-08-17 15:42:34 +03:00
parent 36789cf8eb
commit 638f9d61f7
2 changed files with 45 additions and 0 deletions

View File

@ -10,6 +10,10 @@ import android.provider.ContactsContract
import android.view.View
import android.view.WindowManager
import android.widget.RelativeLayout
import com.bumptech.glide.Glide
import com.bumptech.glide.load.resource.bitmap.FitCenter
import com.bumptech.glide.load.resource.bitmap.RoundedCorners
import com.bumptech.glide.request.RequestOptions
import com.simplemobiletools.commons.dialogs.CallConfirmationDialog
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
import com.simplemobiletools.commons.dialogs.SelectAlarmSoundDialog
@ -75,6 +79,14 @@ class ViewContactActivity : ContactActivity() {
}
}
override fun onBackPressed() {
if (contact_photo_big.alpha == 1f) {
hideBigContactPhoto()
} else {
super.onBackPressed()
}
}
private fun setupMenu() {
(contact_appbar.layoutParams as RelativeLayout.LayoutParams).topMargin = statusBarHeight
contact_toolbar.menu.apply {
@ -170,6 +182,23 @@ class ViewContactActivity : ContactActivity() {
contact_photo_bottom_shadow.beGone()
} else {
updateContactPhoto(contact!!.photoUri, contact_photo, contact_photo_bottom_shadow, contact!!.photo)
val options = RequestOptions()
.transform(FitCenter(), RoundedCorners(resources.getDimension(R.dimen.normal_margin).toInt()))
Glide.with(this)
.load(contact!!.photo ?: currentContactPhotoPath)
.apply(options)
.into(contact_photo_big)
contact_photo.setOnClickListener {
contact_photo_big.alpha = 0f
contact_photo_big.beVisible()
contact_photo_big.animate().alpha(1f).start()
}
contact_photo_big.setOnClickListener {
hideBigContactPhoto()
}
}
val textColor = config.textColor
@ -721,6 +750,10 @@ class ViewContactActivity : ContactActivity() {
private fun getStarDrawable(on: Boolean) = resources.getDrawable(if (on) R.drawable.ic_star_on_vector else R.drawable.ic_star_off_vector)
private fun hideBigContactPhoto() {
contact_photo_big.animate().alpha(0f).withEndAction { contact_photo_big.beGone() }.start()
}
private fun View.copyOnLongClick(value: String) {
setOnLongClickListener {
copyToClipboard(value)

View File

@ -388,6 +388,18 @@
</RelativeLayout>
</ScrollView>
<ImageView
android:id="@+id/contact_photo_big"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:alpha="0"
android:background="#88000000"
android:clickable="true"
android:padding="@dimen/activity_margin"
android:scaleType="fitCenter"
android:src="@drawable/img_write_storage"
android:visibility="gone" />
<ImageView
android:id="@+id/contact_photo_top_shadow"
android:layout_width="match_parent"