diff options
author | 2020-09-16 02:57:34 +0000 | |
---|---|---|
committer | 2020-09-16 02:57:34 +0000 | |
commit | 3d07b20e8cdf5e5aa96e6516503c23c7f464edf9 (patch) | |
tree | 3ee65f23633e459b767351ba1631ba721e1682e7 | |
parent | 56e7a5f9a8dcea2c8d61725907ce306f469d67cd (diff) | |
parent | d70a09d615e405378bab256f75538bf8a1db589c (diff) |
Merge "Align the metadata for files acoording to mocks" into mainline-prod
-rw-r--r-- | res/layout/item_doc_list.xml | 254 | ||||
-rw-r--r-- | src/com/android/documentsui/dirlist/ListDocumentHolder.java | 24 |
2 files changed, 132 insertions, 146 deletions
diff --git a/res/layout/item_doc_list.xml b/res/layout/item_doc_list.xml index 1189482a2..0e9ddd2d2 100644 --- a/res/layout/item_doc_list.xml +++ b/res/layout/item_doc_list.xml @@ -1,5 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- +<?xml version="1.0" encoding="utf-8"?><!-- Copyright (C) 2013 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); @@ -15,15 +14,18 @@ limitations under the License. --> -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - android:id="@+id/item_root" +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" - android:background="@drawable/list_item_background" - android:focusable="true" - android:orientation="horizontal" > + android:orientation="vertical"> + <LinearLayout + android:id="@+id/item_root" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:background="@drawable/list_item_background" + android:focusable="true" + android:orientation="horizontal"> <LinearLayout android:layout_width="match_parent" @@ -31,136 +33,126 @@ android:baselineAligned="false" android:gravity="center_vertical" android:minHeight="@dimen/list_item_height" - android:orientation="horizontal" > - - <FrameLayout - android:id="@+id/icon" - android:pointerIcon="hand" - android:layout_width="@dimen/list_item_width" - android:layout_height="@dimen/list_item_height" - android:paddingBottom="@dimen/list_item_icon_padding" - android:paddingTop="@dimen/list_item_icon_padding" - android:paddingEnd="16dp" - android:paddingStart="@dimen/list_item_padding" > - - <ImageView - android:id="@+id/icon_mime" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center" - android:contentDescription="@null" - android:scaleType="centerInside" /> - - <ImageView - android:id="@+id/icon_thumb" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:contentDescription="@null" - android:scaleType="centerCrop" /> - - <ImageView - android:id="@+id/icon_check" - android:layout_width="@dimen/check_icon_size" - android:layout_height="@dimen/check_icon_size" - android:layout_gravity="center" - android:alpha="0" - android:contentDescription="@null" - android:scaleType="fitCenter" - android:src="@drawable/ic_check_circle" /> - </FrameLayout> + android:orientation="horizontal"> + + <FrameLayout + android:id="@+id/icon" + android:pointerIcon="hand" + android:layout_width="@dimen/list_item_width" + android:layout_height="@dimen/list_item_height" + android:paddingBottom="@dimen/list_item_icon_padding" + android:paddingTop="@dimen/list_item_icon_padding" + android:paddingEnd="16dp" + android:paddingStart="@dimen/list_item_padding"> + + <ImageView + android:id="@+id/icon_mime" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" + android:contentDescription="@null" + android:scaleType="centerInside" /> + + <ImageView + android:id="@+id/icon_thumb" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:contentDescription="@null" + android:scaleType="centerCrop" /> + + <ImageView + android:id="@+id/icon_check" + android:layout_width="@dimen/check_icon_size" + android:layout_height="@dimen/check_icon_size" + android:layout_gravity="center" + android:alpha="0" + android:contentDescription="@null" + android:scaleType="fitCenter" + android:src="@drawable/ic_check_circle" /> + + </FrameLayout> + + <LinearLayout + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:orientation="vertical" + android:layout_gravity="center_vertical" + android:layout_marginEnd="@dimen/list_item_padding"> + + <LinearLayout + android:layout_width="wrap_content" + android:layout_height="0dp" + android:layout_weight="1"> + + <ImageView + android:id="@+id/icon_briefcase" + android:layout_height="@dimen/briefcase_icon_size" + android:layout_width="@dimen/briefcase_icon_size" + android:layout_marginEnd="@dimen/briefcase_icon_margin" + android:layout_gravity="center_vertical" + android:src="@drawable/ic_briefcase" + android:contentDescription="@string/a11y_work" /> + + <TextView + android:id="@android:id/title" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:ellipsize="end" + android:singleLine="true" + android:textAlignment="viewStart" + android:textAppearance="?android:attr/textAppearanceListItem" /> + + </LinearLayout> <LinearLayout - android:layout_width="0dp" + android:id="@+id/line2" + android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_weight="1" - android:orientation="vertical" - android:layout_gravity="center_vertical" - android:layout_marginEnd="@dimen/list_item_padding" > - - <LinearLayout - android:layout_width="wrap_content" - android:layout_height="0dp" - android:layout_weight="1"> - - <ImageView - android:id="@+id/icon_briefcase" - android:layout_height="@dimen/briefcase_icon_size" - android:layout_width="@dimen/briefcase_icon_size" - android:layout_marginEnd="@dimen/briefcase_icon_margin" - android:layout_gravity="center_vertical" - android:src="@drawable/ic_briefcase" - android:contentDescription="@string/a11y_work"/> - - <TextView - android:id="@android:id/title" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:ellipsize="end" - android:singleLine="true" - android:textAlignment="viewStart" - android:textAppearance="?android:attr/textAppearanceListItem"/> - </LinearLayout> - - <LinearLayout - android:id="@+id/line2" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:baselineAligned="false" - android:gravity="center_vertical" - android:orientation="horizontal" > - - <TextView - android:id="@+id/date" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_weight="0.4" - android:ellipsize="end" - android:singleLine="true" - android:textAlignment="viewStart" - android:textAppearance="@style/ItemDocListCaptionText"/> - - <TextView - android:id="@+id/size" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginStart="8dp" - android:layout_weight="0.3" - android:ellipsize="end" - android:singleLine="true" - android:textAlignment="viewStart" - android:textAppearance="@style/ItemDocListCaptionText"/> - - <TextView - android:id="@+id/file_type" - android:layout_width="0dp" - android:layout_height="wrap_content" - android:layout_marginStart="8dp" - android:layout_weight="0.3" - android:ellipsize="end" - android:singleLine="true" - android:textAlignment="viewStart" - android:textAppearance="@style/ItemDocListCaptionText"/> - </LinearLayout> + android:baselineAligned="false" + android:layout_marginTop="4dp" + android:gravity="center_vertical" + android:orientation="horizontal"> + + <TextView + android:id="@+id/metadata" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:ellipsize="end" + android:singleLine="true" + android:textAppearance="@style/ItemDocListCaptionText" /> + </LinearLayout> - <FrameLayout - android:id="@+id/preview_icon" - android:layout_width="@dimen/list_item_width" - android:layout_height="@dimen/list_item_height" - android:padding="@dimen/list_item_icon_padding" - android:focusable="true" - android:clickable="true"> + </LinearLayout> + + <FrameLayout + android:id="@+id/preview_icon" + android:layout_width="@dimen/list_item_width" + android:layout_height="@dimen/list_item_height" + android:padding="@dimen/list_item_icon_padding" + android:focusable="true" + android:clickable="true"> - <ImageView - android:layout_width="@dimen/check_icon_size" - android:layout_height="@dimen/check_icon_size" - android:layout_gravity="center" - android:scaleType="fitCenter" - android:tint="?android:attr/colorControlNormal" - android:src="@drawable/ic_zoom_out"/> + <ImageView + android:layout_width="@dimen/check_icon_size" + android:layout_height="@dimen/check_icon_size" + android:layout_gravity="center" + android:scaleType="fitCenter" + android:tint="?android:attr/colorControlNormal" + android:src="@drawable/ic_zoom_out" /> - </FrameLayout> + </FrameLayout> </LinearLayout> -</LinearLayout> + </LinearLayout> + + <View + android:layout_width="match_parent" + android:layout_height="1dp" + android:layout_marginStart="72dp" + android:layout_marginEnd="8dp" + android:background="?android:strokeColor" /> + +</LinearLayout>
\ No newline at end of file diff --git a/src/com/android/documentsui/dirlist/ListDocumentHolder.java b/src/com/android/documentsui/dirlist/ListDocumentHolder.java index 1bbeec1dd..e0817e040 100644 --- a/src/com/android/documentsui/dirlist/ListDocumentHolder.java +++ b/src/com/android/documentsui/dirlist/ListDocumentHolder.java @@ -22,6 +22,7 @@ import static com.android.documentsui.base.DocumentInfo.getCursorString; import android.content.Context; import android.database.Cursor; import android.graphics.Rect; +import android.text.TextUtils; import android.text.format.Formatter; import android.view.MotionEvent; import android.view.View; @@ -41,15 +42,14 @@ import com.android.documentsui.base.UserId; import com.android.documentsui.roots.RootCursorWrapper; import com.android.documentsui.ui.Views; +import java.util.ArrayList; import java.util.function.Function; final class ListDocumentHolder extends DocumentHolder { private final TextView mTitle; private final @Nullable LinearLayout mDetails; // Container of date/size/summary - private final TextView mDate; - private final TextView mSize; - private final TextView mType; + private final TextView mMetadataView; private final ImageView mIconMime; private final ImageView mIconThumb; private final ImageView mIconCheck; @@ -72,9 +72,7 @@ final class ListDocumentHolder extends DocumentHolder { mIconCheck = (ImageView) itemView.findViewById(R.id.icon_check); mIconBriefcase = (ImageView) itemView.findViewById(R.id.icon_briefcase); mTitle = (TextView) itemView.findViewById(android.R.id.title); - mSize = (TextView) itemView.findViewById(R.id.size); - mDate = (TextView) itemView.findViewById(R.id.date); - mType = (TextView) itemView.findViewById(R.id.file_type); + mMetadataView = (TextView) itemView.findViewById(R.id.metadata); // Warning: mDetails view doesn't exists in layout-sw720dp-land layout mDetails = (LinearLayout) itemView.findViewById(R.id.line2); mPreviewIcon = itemView.findViewById(R.id.preview_icon); @@ -214,22 +212,18 @@ final class ListDocumentHolder extends DocumentHolder { // Note, we don't show any details for any directory...ever. hasDetails = false; } else { + ArrayList<String> metadataList = new ArrayList<>(); if (mDoc.lastModified > 0) { hasDetails = true; - mDate.setText(Shared.formatTime(mContext, mDoc.lastModified)); - } else { - mDate.setText(null); + metadataList.add(Shared.formatTime(mContext, mDoc.lastModified)); } - if (mDoc.size > -1) { hasDetails = true; - mSize.setVisibility(View.VISIBLE); - mSize.setText(Formatter.formatFileSize(mContext, mDoc.size)); - } else { - mSize.setVisibility(View.INVISIBLE); + metadataList.add(Formatter.formatFileSize(mContext, mDoc.size)); } - mType.setText(mFileTypeLookup.lookup(mDoc.mimeType)); + metadataList.add(mFileTypeLookup.lookup(mDoc.mimeType)); + mMetadataView.setText(TextUtils.join(", ", metadataList)); } // mDetails view doesn't exists in layout-sw720dp-land layout |