summaryrefslogtreecommitdiffstats
path: root/src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java')
-rw-r--r--src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java b/src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java
index 3d71fe6..2006f57 100644
--- a/src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java
+++ b/src/com/android/messaging/ui/mediapicker/GalleryGridItemView.java
@@ -51,6 +51,7 @@ public class GalleryGridItemView extends FrameLayout {
@VisibleForTesting
GalleryGridItemData mData;
+ private View mVideoButtonOverlayView;
private AsyncImageView mImageView;
private CheckBox mCheckBox;
private HostInterface mHostInterface;
@@ -69,6 +70,7 @@ public class GalleryGridItemView extends FrameLayout {
@Override
protected void onFinishInflate() {
super.onFinishInflate();
+ mVideoButtonOverlayView = findViewById(R.id.video_button);
mImageView = (AsyncImageView) findViewById(R.id.image);
mCheckBox = (CheckBox) findViewById(R.id.checkbox);
mCheckBox.setOnClickListener(mOnClickListener);
@@ -136,13 +138,28 @@ public class GalleryGridItemView extends FrameLayout {
private void updateImageView() {
if (mData.isDocumentPickerItem()) {
+ hideVideoPlayButtonOverlay();
mImageView.setScaleType(ScaleType.CENTER);
setBackgroundColor(ConversationDrawables.get().getConversationThemeColor());
mImageView.setImageResourceId(null);
mImageView.setImageResource(R.drawable.ic_photo_library_light);
mImageView.setContentDescription(getResources().getString(
R.string.pick_image_from_document_library_content_description));
+ } else if (mData.isVideoItem()) {
+ showVideoPlayButtonOverlay();
+ mImageView.setScaleType(ScaleType.CENTER_CROP);
+ setBackgroundColor(getResources().getColor(R.color.gallery_image_default_background));
+ mImageView.setImageResourceId(mData.getImageRequestDescriptor());
+ final long dateSeconds = mData.getDateSeconds();
+ final boolean isValidDate = (dateSeconds > 0);
+ final int templateId = isValidDate ?
+ R.string.mediapicker_gallery_image_item_description :
+ R.string.mediapicker_gallery_image_item_description_no_date;
+ String contentDescription = String.format(getResources().getString(templateId),
+ dateSeconds * TimeUnit.SECONDS.toMillis(1));
+ mImageView.setContentDescription(contentDescription);
} else {
+ hideVideoPlayButtonOverlay();
mImageView.setScaleType(ScaleType.CENTER_CROP);
setBackgroundColor(getResources().getColor(R.color.gallery_image_default_background));
mImageView.setImageResourceId(mData.getImageRequestDescriptor());
@@ -156,4 +173,17 @@ public class GalleryGridItemView extends FrameLayout {
mImageView.setContentDescription(contentDescription);
}
}
+
+ private void showVideoPlayButtonOverlay() {
+ if (mVideoButtonOverlayView != null) {
+ mVideoButtonOverlayView.setVisibility(View.VISIBLE);
+ }
+ }
+
+ private void hideVideoPlayButtonOverlay() {
+ if (mVideoButtonOverlayView != null) {
+ mVideoButtonOverlayView.setVisibility(View.INVISIBLE);
+ }
+ }
+
}