Hacky way to fix placeholders

Signed-off-by: Mario Danic <mario@lovelyhq.com>
This commit is contained in:
Mario Danic 2017-11-06 21:56:28 +01:00
parent 2199dfc088
commit ae40b213f7
6 changed files with 7 additions and 50 deletions

View File

@ -33,6 +33,7 @@ import com.nextcloud.talk.api.helpers.api.ApiHelper;
import com.nextcloud.talk.api.models.json.rooms.Room; import com.nextcloud.talk.api.models.json.rooms.Room;
import com.nextcloud.talk.application.NextcloudTalkApplication; import com.nextcloud.talk.application.NextcloudTalkApplication;
import com.nextcloud.talk.persistence.entities.UserEntity; import com.nextcloud.talk.persistence.entities.UserEntity;
import com.nextcloud.talk.utils.ColorUtils;
import com.nextcloud.talk.utils.glide.GlideApp; import com.nextcloud.talk.utils.glide.GlideApp;
import java.util.List; import java.util.List;
@ -113,6 +114,9 @@ public class RoomItem extends AbstractFlexibleItem<RoomItem.RoomItemViewHolder>
holder.avatarImageView.setVisibility(View.VISIBLE); holder.avatarImageView.setVisibility(View.VISIBLE);
if (!TextUtils.isEmpty(room.getName())) { if (!TextUtils.isEmpty(room.getName())) {
holder.avatarImageView.setTextAndColorSeed(String.valueOf(room.getName().
toUpperCase().charAt(0)), ColorUtils.colorSeed);
GlideUrl glideUrl = new GlideUrl(ApiHelper.getUrlForAvatarWithName(userEntity.getBaseUrl(), GlideUrl glideUrl = new GlideUrl(ApiHelper.getUrlForAvatarWithName(userEntity.getBaseUrl(),
room.getName()), new LazyHeaders.Builder() room.getName()), new LazyHeaders.Builder()
.setHeader("Accept", "image/*") .setHeader("Accept", "image/*")
@ -124,13 +128,12 @@ public class RoomItem extends AbstractFlexibleItem<RoomItem.RoomItemViewHolder>
.skipMemoryCache(true) .skipMemoryCache(true)
.diskCacheStrategy(DiskCacheStrategy.NONE) .diskCacheStrategy(DiskCacheStrategy.NONE)
.load(glideUrl) .load(glideUrl)
.placeholder(holder.avatarImageViewInvisible.getDrawable())
.circleCrop() .circleCrop()
.centerInside() .centerInside()
.into(holder.avatarImageView); .into(holder.avatarImageView);
} else { } else {
holder.avatarImageView.setDrawable(holder.avatarImageViewInvisible.getDrawable()); holder.avatarImageView.setVisibility(View.GONE);
} }
break; break;
case ROOM_GROUP_CALL: case ROOM_GROUP_CALL:
@ -162,8 +165,6 @@ public class RoomItem extends AbstractFlexibleItem<RoomItem.RoomItemViewHolder>
public TextView roomLastPing; public TextView roomLastPing;
@BindView(R.id.avatar_image) @BindView(R.id.avatar_image)
public AvatarImageView avatarImageView; public AvatarImageView avatarImageView;
@BindView(R.id.avatar_image_invisible)
public AvatarImageView avatarImageViewInvisible;
/** /**
* Default constructor. * Default constructor.

View File

@ -109,7 +109,6 @@ public class UserItem extends AbstractFlexibleItem<UserItem.UserItemViewHolder>
.asBitmap() .asBitmap()
.skipMemoryCache(true) .skipMemoryCache(true)
.diskCacheStrategy(DiskCacheStrategy.NONE) .diskCacheStrategy(DiskCacheStrategy.NONE)
.placeholder(holder.avatarImageViewInvisible.getDrawable())
.load(glideUrl) .load(glideUrl)
.circleCrop() .circleCrop()
.centerInside() .centerInside()
@ -128,8 +127,6 @@ public class UserItem extends AbstractFlexibleItem<UserItem.UserItemViewHolder>
public TextView contactDisplayName; public TextView contactDisplayName;
@BindView(R.id.avatar_image) @BindView(R.id.avatar_image)
public AvatarImageView avatarImageView; public AvatarImageView avatarImageView;
@BindView(R.id.avatar_image_invisible)
public AvatarImageView avatarImageViewInvisible;
/** /**
* Default constructor. * Default constructor.

View File

@ -90,9 +90,6 @@ public class SettingsController extends BaseController {
@BindView(R.id.avatar_image) @BindView(R.id.avatar_image)
AvatarImageView avatarImageView; AvatarImageView avatarImageView;
@BindView(R.id.avatar_image_invisible)
AvatarImageView avatarImageViewInvisible;
@BindView(R.id.display_name_text) @BindView(R.id.display_name_text)
TextView displayName; TextView displayName;
@ -191,7 +188,7 @@ public class SettingsController extends BaseController {
UserEntity userEntity = userUtils.getCurrentUser(); UserEntity userEntity = userUtils.getCurrentUser();
if (userEntity != null) { if (userEntity != null) {
// Awful hack // Awful hack
avatarImageViewInvisible.setTextAndColorSeed(String.valueOf(userEntity.getDisplayName(). avatarImageView.setTextAndColorSeed(String.valueOf(userEntity.getDisplayName().
toUpperCase().charAt(0)), ColorUtils.colorSeed); toUpperCase().charAt(0)), ColorUtils.colorSeed);
GlideUrl glideUrl = new GlideUrl(ApiHelper.getUrlForAvatarWithName(userEntity.getBaseUrl(), GlideUrl glideUrl = new GlideUrl(ApiHelper.getUrlForAvatarWithName(userEntity.getBaseUrl(),
@ -204,8 +201,7 @@ public class SettingsController extends BaseController {
.load(glideUrl) .load(glideUrl)
.circleCrop() .circleCrop()
.centerInside() .centerInside()
.into(avatarImageView) .into(avatarImageView);
.onLoadFailed(avatarImageViewInvisible.getDrawable());
displayName.setText(userEntity.getDisplayName()); displayName.setText(userEntity.getDisplayName());
} }

View File

@ -34,17 +34,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"> android:layout_height="wrap_content">
<cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image_invisible"
android:layout_width="@dimen/avatar_size_big"
android:layout_height="@dimen/avatar_size_big"
android:layout_centerHorizontal="true"
android:scaleType="centerInside"
android:visibility="invisible"
apc:aiv_CornerRadius="@dimen/avatar_corner_radius"
apc:aiv_ShowBoarder="false"
apc:aiv_TextSizeRatio="0.5"/>
<cn.carbs.android.avatarimageview.library.AvatarImageView <cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image" android:id="@+id/avatar_image"
android:layout_width="@dimen/avatar_size_big" android:layout_width="@dimen/avatar_size_big"

View File

@ -27,19 +27,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/item_height"> android:layout_height="@dimen/item_height">
<cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image_invisible"
android:visibility="invisible"
android:layout_width="@dimen/avatar_size"
android:layout_height="@dimen/avatar_size"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_marginStart="@dimen/activity_horizontal_margin"
android:scaleType="centerInside"
app:aiv_CornerRadius="@dimen/avatar_corner_radius"
app:aiv_ShowBoarder="false"
app:aiv_TextSizeRatio="0.5"/>
<cn.carbs.android.avatarimageview.library.AvatarImageView <cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image" android:id="@+id/avatar_image"
android:layout_width="@dimen/avatar_size" android:layout_width="@dimen/avatar_size"

View File

@ -28,19 +28,6 @@
android:layout_height="@dimen/item_height" android:layout_height="@dimen/item_height"
android:orientation="vertical"> android:orientation="vertical">
<cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image_invisible"
android:visibility="invisible"
android:layout_width="@dimen/avatar_size"
android:layout_height="@dimen/avatar_size"
android:layout_centerVertical="true"
android:layout_marginEnd="@dimen/activity_horizontal_margin"
android:layout_marginStart="@dimen/activity_horizontal_margin"
android:scaleType="centerInside"
app:aiv_CornerRadius="@dimen/avatar_corner_radius"
app:aiv_ShowBoarder="false"
app:aiv_TextSizeRatio="0.5"/>
<cn.carbs.android.avatarimageview.library.AvatarImageView <cn.carbs.android.avatarimageview.library.AvatarImageView
android:id="@+id/avatar_image" android:id="@+id/avatar_image"
android:layout_width="@dimen/avatar_size" android:layout_width="@dimen/avatar_size"