Fixed invisible avatar in side menu

This commit is contained in:
Sylvain Berfini 2022-04-07 14:16:01 +02:00
parent 898d3d0aa4
commit 5f0de830e4
2 changed files with 28 additions and 6 deletions

View file

@ -310,6 +310,27 @@ fun setImageViewScaleType(imageView: ImageView, scaleType: ImageView.ScaleType)
imageView.scaleType = scaleType
}
@BindingAdapter("glideRoundPath")
fun loadRoundImageWithGlide(imageView: ImageView, path: String?) {
if (path != null && path.isNotEmpty() && FileUtils.isExtensionImage(path)) {
if (corePreferences.vfsEnabled && path.endsWith(FileUtils.VFS_PLAIN_FILE_EXTENSION)) {
GlideApp.with(imageView)
.load(path)
.signature(ObjectKey(coreContext.contactsManager.latestContactFetch))
.apply(RequestOptions.circleCropTransform())
.into(imageView)
} else {
GlideApp
.with(imageView)
.load(path)
.apply(RequestOptions.circleCropTransform())
.into(imageView)
}
} else {
Log.w("[Data Binding] [Glide] Can't load $path")
}
}
@BindingAdapter("glidePath")
fun loadImageWithGlide(imageView: ImageView, path: String?) {
if (path != null && path.isNotEmpty() && FileUtils.isExtensionImage(path)) {

View file

@ -46,19 +46,20 @@
android:background="?attr/lightToolbarBackgroundColor">
<ImageView
android:visibility="@{viewModel.defaultAccountFound ? View.VISIBLE : View.GONE}"
android:onClick="@{selfPictureClickListener}"
android:id="@+id/avatar"
glideRoundPath="@{viewModel.defaultAccountAvatar}"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:layout_margin="10dp"
android:adjustViewBounds="true"
android:background="@drawable/generated_avatar_bg"
android:src="@drawable/icon_single_contact_avatar"
android:contentDescription="@string/content_description_change_own_picture"
glideAvatar="@{viewModel.defaultAccountAvatar}" />
android:onClick="@{selfPictureClickListener}"
android:src="@drawable/icon_single_contact_avatar"
android:visibility="@{viewModel.defaultAccountFound ? View.VISIBLE : View.GONE}" />
<ImageView
android:id="@+id/avatar_border"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_margin="10dp"
@ -70,7 +71,7 @@
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toRightOf="@id/avatar"
android:layout_toRightOf="@id/avatar_border"
android:gravity="center_vertical"
android:orientation="vertical">