mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-05 18:36:49 +00:00
Merge "Fix positioning of split instruction and share targets with taskbar in overview" into tm-qpr-dev am: e2791f0cf6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20132885 Change-Id: I563d31986ece6169cfe6cfca8f815b611277ba6b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -31,6 +31,7 @@ import androidx.annotation.Nullable;
|
||||
import com.android.launcher3.DeviceProfile;
|
||||
import com.android.launcher3.Insettable;
|
||||
import com.android.launcher3.R;
|
||||
import com.android.launcher3.config.FeatureFlags;
|
||||
import com.android.launcher3.util.DisplayController;
|
||||
import com.android.launcher3.util.MultiValueAlpha;
|
||||
import com.android.launcher3.util.MultiValueAlpha.AlphaProperty;
|
||||
@@ -258,7 +259,9 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
||||
// If in 3-button mode, shift action buttons to accommodate 3-button layout.
|
||||
// (Special exception for landscape tablets, where there is enough room and we don't need to
|
||||
// shift the action buttons.)
|
||||
if (mDp.areNavButtonsInline && !largeScreenLandscape) {
|
||||
if (mDp.areNavButtonsInline && !largeScreenLandscape
|
||||
// If taskbar is in overview, overview action has dedicated space above nav buttons
|
||||
&& !FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()) {
|
||||
// Add extra horizontal spacing
|
||||
int additionalPadding = mDp.hotseatBarEndOffset;
|
||||
if (isLayoutRtl()) {
|
||||
@@ -288,7 +291,8 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!mDp.isGestureMode && mDp.isTaskbarPresent) {
|
||||
if (!mDp.isGestureMode && mDp.isTaskbarPresent
|
||||
&& !FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()) {
|
||||
return mDp.getOverviewActionsClaimedSpaceBelow();
|
||||
}
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@ import androidx.appcompat.widget.AppCompatTextView;
|
||||
|
||||
import com.android.launcher3.DeviceProfile;
|
||||
import com.android.launcher3.R;
|
||||
import com.android.launcher3.config.FeatureFlags;
|
||||
import com.android.launcher3.statemanager.StatefulActivity;
|
||||
import com.android.launcher3.util.DisplayController;
|
||||
|
||||
@@ -114,7 +115,9 @@ public class SplitInstructionsView extends FrameLayout {
|
||||
int getThreeButtonNavShift() {
|
||||
DeviceProfile dp = mLauncher.getDeviceProfile();
|
||||
if ((DisplayController.getNavigationMode(getContext()) == THREE_BUTTONS)
|
||||
&& ((dp.isTwoPanels) || (dp.isTablet && !dp.isLandscape))) {
|
||||
&& ((dp.isTwoPanels) || (dp.isTablet && !dp.isLandscape))
|
||||
// If taskbar is in overview, overview action has dedicated space above nav buttons
|
||||
&& !FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()) {
|
||||
int navButtonWidth = getResources().getDimensionPixelSize(
|
||||
R.dimen.taskbar_nav_buttons_size);
|
||||
int extraMargin = getResources().getDimensionPixelSize(
|
||||
|
||||
@@ -1272,7 +1272,9 @@ public class DeviceProfile {
|
||||
* Returns the number of pixels required below OverviewActions excluding insets.
|
||||
*/
|
||||
public int getOverviewActionsClaimedSpaceBelow() {
|
||||
if (isTaskbarPresent && !isGestureMode) {
|
||||
if (isTaskbarPresent && !isGestureMode
|
||||
// If taskbar is in overview, overview action has dedicated space above nav buttons
|
||||
&& !FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()) {
|
||||
// Align vertically to where nav buttons are.
|
||||
return ((taskbarSize - overviewActionsHeight) / 2) + getTaskbarOffsetY();
|
||||
}
|
||||
|
||||
@@ -50,6 +50,7 @@ import android.widget.LinearLayout;
|
||||
import com.android.launcher3.DeviceProfile;
|
||||
import com.android.launcher3.R;
|
||||
import com.android.launcher3.Utilities;
|
||||
import com.android.launcher3.config.FeatureFlags;
|
||||
import com.android.launcher3.util.DisplayController;
|
||||
import com.android.launcher3.util.SplitConfigurationOptions;
|
||||
import com.android.launcher3.util.SplitConfigurationOptions.SplitBounds;
|
||||
@@ -524,7 +525,9 @@ public class PortraitPagedViewHandler implements PagedOrientationHandler {
|
||||
out.setRotation(getDegreesRotated());
|
||||
int distanceToEdge;
|
||||
if ((DisplayController.getNavigationMode(out.getContext()) == THREE_BUTTONS)
|
||||
&& (dp.isTwoPanels || dp.isTablet)) {
|
||||
&& (dp.isTwoPanels || dp.isTablet)
|
||||
// If taskbar is in overview, overview action has dedicated space above nav buttons
|
||||
&& !FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()) {
|
||||
// If 3-button nav is active, align the splitInstructionsView with it.
|
||||
distanceToEdge = dp.getTaskbarOffsetY()
|
||||
+ ((dp.taskbarSize - splitInstructionsHeight) / 2);
|
||||
@@ -561,8 +564,12 @@ public class PortraitPagedViewHandler implements PagedOrientationHandler {
|
||||
int insetCorrectionX = (dp.getInsets().right - dp.getInsets().left) / 2;
|
||||
// Adjust for any insets on the bottom edge
|
||||
int insetCorrectionY = dp.getInsets().bottom;
|
||||
// Adjust for taskbar in overview
|
||||
int taskbarCorrectionY =
|
||||
dp.isTaskbarPresent && FeatureFlags.ENABLE_TASKBAR_IN_OVERVIEW.get()
|
||||
? dp.taskbarSize : 0;
|
||||
out.setTranslationX(insetCorrectionX + threeButtonNavShift);
|
||||
out.setTranslationY(-distanceToEdge + insetCorrectionY);
|
||||
out.setTranslationY(-distanceToEdge + insetCorrectionY - taskbarCorrectionY);
|
||||
FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) out.getLayoutParams();
|
||||
lp.gravity = CENTER_HORIZONTAL | BOTTOM;
|
||||
out.setLayoutParams(lp);
|
||||
|
||||
Reference in New Issue
Block a user