diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2016-08-24 02:16:48 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-08-24 02:16:48 +0000 |
commit | b68f959992481e38620011e1a5b2e08d7e9477e3 (patch) | |
tree | 19d8dfdb78d9972c5be560b8baccad3f188eac69 | |
parent | 9601b96df64a501447aed63ad9b8352408625ac6 (diff) | |
parent | a1503f47aa2fe140a5e83a4ea5d6478955ba97af (diff) | |
download | android_packages_apps_Trebuchet-b68f959992481e38620011e1a5b2e08d7e9477e3.tar.gz android_packages_apps_Trebuchet-b68f959992481e38620011e1a5b2e08d7e9477e3.tar.bz2 android_packages_apps_Trebuchet-b68f959992481e38620011e1a5b2e08d7e9477e3.zip |
Merge "Comparing widget sizes when sorting if the labels are same" into ub-launcher3-calgary-polish
-rw-r--r-- | src/com/android/launcher3/model/WidgetItem.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/com/android/launcher3/model/WidgetItem.java b/src/com/android/launcher3/model/WidgetItem.java index b3f0c8203..0d7ba1e11 100644 --- a/src/com/android/launcher3/model/WidgetItem.java +++ b/src/com/android/launcher3/model/WidgetItem.java @@ -68,6 +68,17 @@ public class WidgetItem extends ComponentKey implements Comparable<WidgetItem> { return thisWorkProfile ? 1 : -1; } - return sCollator.compare(label, another.label); + int labelCompare = sCollator.compare(label, another.label); + if (labelCompare != 0) { + return labelCompare; + } + + // If the label is same, put the smaller widget before the larger widget. If the area is + // also same, put the widget with smaller height before. + int thisArea = spanX * spanY; + int otherArea = another.spanX * another.spanY; + return thisArea == otherArea + ? Integer.compare(spanY, another.spanY) + : Integer.compare(thisArea, otherArea); } } |