diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2021-02-09 19:31:49 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2021-02-09 19:31:49 +0000 |
commit | 80f4b2af83058a50a95551a1f60fd3211ba12ef6 (patch) | |
tree | 80b7148b8b952c4aecc43783adc6d42c86518d15 | |
parent | b9d25ece8dbbde2c21d16357bd67a68fe944f3f7 (diff) | |
parent | ced6684093b70d2d4e2c5b195b9e6eb9ad454177 (diff) | |
download | DocumentsUI-android11-mainline-os-statsd-release.tar.gz |
Snap for 7134866 from ced6684093b70d2d4e2c5b195b9e6eb9ad454177 to mainline-os-statsd-releaseandroid-mainline-11.0.0_r44android11-mainline-os-statsd-release
Change-Id: I05bfb1011d3f239afade9da2bc8bbf7e705f8045
-rw-r--r-- | src/com/android/documentsui/dirlist/ListDocumentHolder.java | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/com/android/documentsui/dirlist/ListDocumentHolder.java b/src/com/android/documentsui/dirlist/ListDocumentHolder.java index a224e7a3e..138ce6e50 100644 --- a/src/com/android/documentsui/dirlist/ListDocumentHolder.java +++ b/src/com/android/documentsui/dirlist/ListDocumentHolder.java @@ -24,6 +24,7 @@ import android.database.Cursor; import android.graphics.Rect; import android.text.TextUtils; import android.text.format.Formatter; +import android.util.Log; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; @@ -46,13 +47,16 @@ import java.util.ArrayList; import java.util.function.Function; final class ListDocumentHolder extends DocumentHolder { + private static final String TAG = "ListDocumentHolder"; private final TextView mTitle; - private final @Nullable LinearLayout mDetails; // Container of date/size/summary private final @Nullable TextView mDate; // Non-null for tablets/sw720dp, null for other devices. private final @Nullable TextView mSize; // Non-null for tablets/sw720dp, null for other devices. private final @Nullable TextView mType; // Non-null for tablets/sw720dp, null for other devices. - private final @Nullable TextView mMetadataView; // Null for tablets/sw720dp + // Container for date + size + summary, null only for tablets/sw720dp + private final @Nullable LinearLayout mDetails; + // TextView for date + size + summary, null only for tablets/sw720dp + private final @Nullable TextView mMetadataView; private final ImageView mIconMime; private final ImageView mIconThumb; private final ImageView mIconCheck; @@ -213,25 +217,36 @@ final class ListDocumentHolder extends DocumentHolder { mTitle.setText(mDoc.displayName, TextView.BufferType.SPANNABLE); mTitle.setVisibility(View.VISIBLE); - boolean hasDetails = false; if (mDoc.isDirectory()) { // Note, we don't show any details for any directory...ever. - hasDetails = false; + if (mDetails != null) { + // Non-tablets + mDetails.setVisibility(View.GONE); + } } else { // For tablets metadata is provided in columns mDate, mSize, mType. // For other devices mMetadataView consolidates the metadata info. if (mMetadataView != null) { + // Non-tablets + boolean hasDetails = false; ArrayList<String> metadataList = new ArrayList<>(); if (mDoc.lastModified > 0) { + hasDetails = true; metadataList.add(Shared.formatTime(mContext, mDoc.lastModified)); } if (mDoc.size > -1) { + hasDetails = true; metadataList.add(Formatter.formatFileSize(mContext, mDoc.size)); } metadataList.add(mFileTypeLookup.lookup(mDoc.mimeType)); mMetadataView.setText(TextUtils.join(", ", metadataList)); - mDetails.setVisibility(hasDetails ? View.VISIBLE : View.GONE); - } else { // Tablets + if (mDetails != null) { + mDetails.setVisibility(hasDetails ? View.VISIBLE : View.GONE); + } else { + Log.w(TAG, "mDetails is unexpectedly null for non-tablet devices!"); + } + } else { + // Tablets if (mDoc.lastModified > 0) { mDate.setVisibility(View.VISIBLE); mDate.setText(Shared.formatTime(mContext, mDoc.lastModified)); |