Wrong app icon position in seascape mode for RTL layout
Bug: 317072320
Test: manual
Flag: NONE
Change-Id: If998033d6008626941eb766dcc96803c25b8bf02
diff --git a/src/com/android/launcher3/touch/SeascapePagedViewHandler.java b/src/com/android/launcher3/touch/SeascapePagedViewHandler.java
index 06526a8..63e9bfa 100644
--- a/src/com/android/launcher3/touch/SeascapePagedViewHandler.java
+++ b/src/com/android/launcher3/touch/SeascapePagedViewHandler.java
@@ -285,7 +285,7 @@
primaryIconView.setTranslationX(0);
secondaryIconView.setTranslationX(0);
if (enableOverviewIconMenu()) {
- if (primaryIconView.getLayoutDirection() == LAYOUT_DIRECTION_RTL) {
+ if (isRtl) {
primaryIconView.setTranslationY(groupedTaskViewHeight - primarySnapshotHeight);
secondaryIconView.setTranslationY(0);
} else {
@@ -295,14 +295,25 @@
} else if (splitConfig.initiatedFromSeascape) {
// if the split was initiated from seascape,
// the task on the right (secondary) is slightly larger
- primaryIconView.setTranslationY(-bottomToMidpointOffset - insetOffset
- + taskIconHeight);
- secondaryIconView.setTranslationY(-bottomToMidpointOffset - insetOffset);
+ if (isRtl) {
+ primaryIconView.setTranslationY(bottomToMidpointOffset - insetOffset);
+ secondaryIconView.setTranslationY(bottomToMidpointOffset - insetOffset
+ + taskIconHeight);
+ } else {
+ primaryIconView.setTranslationY(-bottomToMidpointOffset - insetOffset
+ + taskIconHeight);
+ secondaryIconView.setTranslationY(-bottomToMidpointOffset - insetOffset);
+ }
} else {
// if not,
// the task on the left (primary) is slightly larger
- primaryIconView.setTranslationY(-bottomToMidpointOffset + taskIconHeight);
- secondaryIconView.setTranslationY(-bottomToMidpointOffset);
+ if (isRtl) {
+ primaryIconView.setTranslationY(bottomToMidpointOffset);
+ secondaryIconView.setTranslationY(bottomToMidpointOffset + taskIconHeight);
+ } else {
+ primaryIconView.setTranslationY(-bottomToMidpointOffset + taskIconHeight);
+ secondaryIconView.setTranslationY(-bottomToMidpointOffset);
+ }
}
primaryIconView.setLayoutParams(primaryIconParams);