summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPierre-Louis <plg@google.com>2021-04-29 19:58:04 +0200
committerPierre-Louis Guidez <plg@google.com>2021-05-06 11:02:09 +0000
commit1b33e3e43d1827057b1515cb46d9c02b7bb710ba (patch)
tree940fe9c23c6c223f09c4266b0cdaca49a3716f9c /src
parent3aaed1278c039f79749f059e4f68f29bfe03dedc (diff)
downloadThemePicker-1b33e3e43d1827057b1515cb46d9c02b7bb710ba.tar.gz
Draw 4x5 graph for grid options
Simplified the draw method Screenshot: https://screenshot.googleplex.com/8hsf2bUJXM3osH3.png Screenshot (high density): https://screenshot.googleplex.com/6A7fpV3ow5FWHdW.png Screenshot (low density): https://screenshot.googleplex.com/AJDAgo5jWfDBgSe.png Bug: 186606404 Test: manual, at different screen densities Change-Id: Ibe4080be00d492028b1cb74ed1700498ad812196
Diffstat (limited to 'src')
-rw-r--r--src/com/android/customization/model/grid/LauncherGridOptionsProvider.java2
-rw-r--r--src/com/android/customization/widget/GridTileDrawable.java9
2 files changed, 7 insertions, 4 deletions
diff --git a/src/com/android/customization/model/grid/LauncherGridOptionsProvider.java b/src/com/android/customization/model/grid/LauncherGridOptionsProvider.java
index cdab1a6b..06c4761f 100644
--- a/src/com/android/customization/model/grid/LauncherGridOptionsProvider.java
+++ b/src/com/android/customization/model/grid/LauncherGridOptionsProvider.java
@@ -92,7 +92,7 @@ public class LauncherGridOptionsProvider {
int rows = c.getInt(c.getColumnIndex(COL_ROWS));
int cols = c.getInt(c.getColumnIndex(COL_COLS));
int previewCount = c.getInt(c.getColumnIndex(COL_PREVIEW_COUNT));
- boolean isSet = Boolean.valueOf(c.getString(c.getColumnIndex(COL_IS_DEFAULT)));
+ boolean isSet = Boolean.parseBoolean(c.getString(c.getColumnIndex(COL_IS_DEFAULT)));
String title = GRID_NAME_NORMAL.equals(name)
? mContext.getString(R.string.default_theme_title)
: mContext.getString(R.string.grid_title_pattern, cols, rows);
diff --git a/src/com/android/customization/widget/GridTileDrawable.java b/src/com/android/customization/widget/GridTileDrawable.java
index 5039cf64..83cd0b57 100644
--- a/src/com/android/customization/widget/GridTileDrawable.java
+++ b/src/com/android/customization/widget/GridTileDrawable.java
@@ -40,7 +40,8 @@ public class GridTileDrawable extends Drawable {
@Override
protected void onBoundsChange(Rect bounds) {
super.onBoundsChange(bounds);
- mCellSize = (float) bounds.height() / mRows;
+ int longestSide = Math.max(mRows, mCols);
+ mCellSize = (float) bounds.width() / longestSide;
float scaleFactor = (mCellSize - 2 * SPACE_BETWEEN_ICONS) / PATH_SIZE;
mScaleMatrix.setScale(scaleFactor, scaleFactor);
@@ -49,11 +50,13 @@ public class GridTileDrawable extends Drawable {
@Override
public void draw(Canvas canvas) {
+ double size = getBounds().width();
+
for (int r = 0; r < mRows; r++) {
for (int c = 0; c < mCols; c++) {
int saveCount = canvas.save();
- float x = (c * mCellSize) + SPACE_BETWEEN_ICONS;
- float y = (r * mCellSize) + SPACE_BETWEEN_ICONS;
+ float x = (float) ((r * size / mRows) + SPACE_BETWEEN_ICONS);
+ float y = (float) ((c * size / mCols) + SPACE_BETWEEN_ICONS);
canvas.translate(x, y);
canvas.drawPath(mTransformedPath, mPaint);
canvas.restoreToCount(saveCount);