summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Wenbo Jie <wenbojie@google.com> 2025-03-14 03:54:32 +0000
committer Wenbo Jie <wenbojie@google.com> 2025-03-14 03:55:00 +0000
commit6926cb1e1360775f2def5c578c4bad68f2d6d476 (patch)
treea686b462bdc26e4e7694c4184d339425039142ad
parent165058c81c7d402cf6580e57f5efb7dd009e941d (diff)
[DocsUI M3] No literal dimension numbers in the code
Dimension related view setters like setStrokeWidth are only dealing with pixel numbers, not dp numbers, so we shouldn't use any number literal in the code. Instead, we should define the dimension as a number resource and use getDimensionPixelSize() to get its pixel value in the code before calling these setter methods. Bug: 402617801 Test: m DocumentsUIGoogle && manual inspection Flag: com.android.documentsui.flags.use_material3 Change-Id: Ifbbfd2b006985841ff9a581a485e924d1bf1976b
-rw-r--r--res/flag(com.android.documentsui.flags.use_material3)/values/dimens.xml3
-rw-r--r--src/com/android/documentsui/dirlist/DocumentHolder.java2
-rw-r--r--src/com/android/documentsui/dirlist/GridDocumentHolder.java10
-rw-r--r--src/com/android/documentsui/dirlist/ListDocumentHolder.java14
-rw-r--r--src/com/android/documentsui/queries/SearchChipViewManager.java5
5 files changed, 27 insertions, 7 deletions
diff --git a/res/flag(com.android.documentsui.flags.use_material3)/values/dimens.xml b/res/flag(com.android.documentsui.flags.use_material3)/values/dimens.xml
index b912c5d6c..bc296b611 100644
--- a/res/flag(com.android.documentsui.flags.use_material3)/values/dimens.xml
+++ b/res/flag(com.android.documentsui.flags.use_material3)/values/dimens.xml
@@ -36,6 +36,7 @@
<dimen name="check_icon_size">20dp</dimen>
<dimen name="zoom_icon_size">24dp</dimen>
<dimen name="list_item_thumbnail_size">40dp</dimen>
+ <dimen name="list_item_thumbnail_border_width">2dp</dimen>
<dimen name="grid_item_icon_size">30dp</dimen>
<!-- TODO(b/379776735): remove this after use_material3 flag is launched. -->
<dimen name="progress_bar_height">4dp</dimen>
@@ -70,6 +71,7 @@
<dimen name="grid_item_thumbnail_width">80dp</dimen>
<dimen name="grid_item_thumbnail_height">80dp</dimen>
<dimen name="grid_item_thumbnail_radius">12dp</dimen>
+ <dimen name="grid_item_thumbnail_border_width">2dp</dimen>
<dimen name="grid_item_icon_width">64dp</dimen>
<dimen name="grid_item_icon_height">64dp</dimen>
<dimen name="grid_item_layout_margin">@dimen/space_small_1</dimen>
@@ -175,6 +177,7 @@
<dimen name="search_chip_radius">8dp</dimen>
<dimen name="search_chip_group_padding_vertical">@dimen/space_extra_small_4</dimen>
+ <dimen name="search_chip_inactive_stroke_width">1dp</dimen>
<dimen name="main_container_padding_start">@dimen/space_small_4</dimen>
<dimen name="main_container_padding_end">@dimen/space_small_4</dimen>
<dimen name="main_container_padding_top">0dp</dimen>
diff --git a/src/com/android/documentsui/dirlist/DocumentHolder.java b/src/com/android/documentsui/dirlist/DocumentHolder.java
index 8e5f50636..957975c4b 100644
--- a/src/com/android/documentsui/dirlist/DocumentHolder.java
+++ b/src/com/android/documentsui/dirlist/DocumentHolder.java
@@ -58,8 +58,6 @@ public abstract class DocumentHolder
static final float DISABLED_ALPHA = isUseMaterial3FlagEnabled() ? 0.6f : 0.3f;
- static final int THUMBNAIL_STROKE_WIDTH = isUseMaterial3FlagEnabled() ? 2 : 0;
-
protected final Context mContext;
protected @Nullable String mModelId;
diff --git a/src/com/android/documentsui/dirlist/GridDocumentHolder.java b/src/com/android/documentsui/dirlist/GridDocumentHolder.java
index f2802ff66..9523c331c 100644
--- a/src/com/android/documentsui/dirlist/GridDocumentHolder.java
+++ b/src/com/android/documentsui/dirlist/GridDocumentHolder.java
@@ -79,6 +79,8 @@ final class GridDocumentHolder extends DocumentHolder {
// Non-null only when useMaterial3 flag is ON.
private final @Nullable MaterialCardView mIconWrapper;
+ // It will be 0 when use_material flag is OFF.
+ private final int mThumbnailStrokeWidth;
GridDocumentHolder(Context context, ViewGroup parent, IconHelper iconHelper,
ConfigStore configStore) {
@@ -90,12 +92,16 @@ final class GridDocumentHolder extends DocumentHolder {
mIconLayout = null;
mIconMimeSm = null;
mIconCheck = null;
+ mThumbnailStrokeWidth =
+ context.getResources()
+ .getDimensionPixelSize(R.dimen.grid_item_thumbnail_border_width);
} else {
mBullet = null;
mIconWrapper = null;
mIconLayout = itemView.findViewById(R.id.icon);
mIconMimeSm = (ImageView) itemView.findViewById(R.id.icon_mime_sm);
mIconCheck = (ImageView) itemView.findViewById(R.id.icon_check);
+ mThumbnailStrokeWidth = 0;
}
mTitle = (TextView) itemView.findViewById(android.R.id.title);
@@ -157,7 +163,7 @@ final class GridDocumentHolder extends DocumentHolder {
if (selected) {
mIconWrapper.setStrokeWidth(0);
} else if (mIconThumb.getDrawable() != null) {
- mIconWrapper.setStrokeWidth(THUMBNAIL_STROKE_WIDTH);
+ mIconWrapper.setStrokeWidth(mThumbnailStrokeWidth);
}
}
}
@@ -258,7 +264,7 @@ final class GridDocumentHolder extends DocumentHolder {
// Show stroke when thumbnail is loaded.
if (mIconWrapper != null) {
mIconWrapper.setStrokeWidth(
- thumbnailLoaded ? THUMBNAIL_STROKE_WIDTH : 0);
+ thumbnailLoaded ? mThumbnailStrokeWidth : 0);
}
});
} else {
diff --git a/src/com/android/documentsui/dirlist/ListDocumentHolder.java b/src/com/android/documentsui/dirlist/ListDocumentHolder.java
index 0d0f79919..24b7e3ae5 100644
--- a/src/com/android/documentsui/dirlist/ListDocumentHolder.java
+++ b/src/com/android/documentsui/dirlist/ListDocumentHolder.java
@@ -78,6 +78,8 @@ final class ListDocumentHolder extends DocumentHolder {
private final ImageView mIconBadge;
private final View mIconLayout;
final View mPreviewIcon;
+ // It will be 0 when use_material flag is OFF.
+ private final int mThumbnailStrokeWidth;
private final IconHelper mIconHelper;
private final Lookup<String, String> mFileTypeLookup;
@@ -103,6 +105,13 @@ final class ListDocumentHolder extends DocumentHolder {
// 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);
+ if (isUseMaterial3FlagEnabled()) {
+ mThumbnailStrokeWidth =
+ context.getResources()
+ .getDimensionPixelSize(R.dimen.list_item_thumbnail_border_width);
+ } else {
+ mThumbnailStrokeWidth = 0;
+ }
mIconHelper = iconHelper;
mFileTypeLookup = fileTypeLookup;
@@ -152,7 +161,7 @@ final class ListDocumentHolder extends DocumentHolder {
if (selected) {
mIconWrapper.setStrokeWidth(0);
} else if (mIconThumb.getDrawable() != null) {
- mIconWrapper.setStrokeWidth(2);
+ mIconWrapper.setStrokeWidth(mThumbnailStrokeWidth);
}
}
}
@@ -271,7 +280,8 @@ final class ListDocumentHolder extends DocumentHolder {
thumbnailLoaded -> {
// Show stroke when thumbnail is loaded.
if (isUseMaterial3FlagEnabled() && mIconWrapper != null) {
- mIconWrapper.setStrokeWidth(thumbnailLoaded ? THUMBNAIL_STROKE_WIDTH : 0);
+ mIconWrapper.setStrokeWidth(
+ thumbnailLoaded ? mThumbnailStrokeWidth : 0);
}
});
diff --git a/src/com/android/documentsui/queries/SearchChipViewManager.java b/src/com/android/documentsui/queries/SearchChipViewManager.java
index f673b7408..c2403dd03 100644
--- a/src/com/android/documentsui/queries/SearchChipViewManager.java
+++ b/src/com/android/documentsui/queries/SearchChipViewManager.java
@@ -387,7 +387,10 @@ public class SearchChipViewManager {
.getDimensionPixelSize(R.dimen.focus_ring_width);
chip.setChipStrokeWidth(focusRingWidth);
} else {
- chip.setChipStrokeWidth(1f);
+ final int strokeWidth = mChipGroup
+ .getResources()
+ .getDimensionPixelSize(R.dimen.search_chip_inactive_stroke_width);
+ chip.setChipStrokeWidth(strokeWidth);
}
}