Merge "Add taskbarIconSize to GridOption/DisplayOptions" into tm-qpr-dev am: 085c53869f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/22228076 Change-Id: I687ea2a249e73036f8d4c4d187d999fd224b9f02 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -28,7 +28,7 @@
|
|||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:forceHasOverlappingRendering="false"
|
android:forceHasOverlappingRendering="false"
|
||||||
android:layout_gravity="bottom"
|
android:layout_gravity="bottom"
|
||||||
android:layout_marginBottom="@dimen/transient_taskbar_margin"
|
android:layout_marginBottom="@dimen/transient_taskbar_bottom_margin"
|
||||||
android:clipChildren="false" />
|
android:clipChildren="false" />
|
||||||
|
|
||||||
<com.android.launcher3.taskbar.TaskbarScrimView
|
<com.android.launcher3.taskbar.TaskbarScrimView
|
||||||
|
|||||||
@@ -38,10 +38,6 @@
|
|||||||
<dimen name="allset_page_allset_text_size">42sp</dimen>
|
<dimen name="allset_page_allset_text_size">42sp</dimen>
|
||||||
<dimen name="allset_page_swipe_up_text_size">16sp</dimen>
|
<dimen name="allset_page_swipe_up_text_size">16sp</dimen>
|
||||||
|
|
||||||
<!-- Transient taskbar -->
|
|
||||||
<dimen name="transient_taskbar_size">76dp</dimen>
|
|
||||||
<dimen name="transient_taskbar_icon_size">52dp</dimen>
|
|
||||||
|
|
||||||
<!-- Taskbar swipe up thresholds -->
|
<!-- Taskbar swipe up thresholds -->
|
||||||
<dimen name="taskbar_from_nav_threshold">30dp</dimen>
|
<dimen name="taskbar_from_nav_threshold">30dp</dimen>
|
||||||
<dimen name="taskbar_app_window_threshold">100dp</dimen>
|
<dimen name="taskbar_app_window_threshold">100dp</dimen>
|
||||||
|
|||||||
@@ -55,4 +55,7 @@
|
|||||||
<!-- Taskbar -->
|
<!-- Taskbar -->
|
||||||
<!-- Align the Taskbar to the start (Left/Right) of the device when 3 button nav is enabled. -->
|
<!-- Align the Taskbar to the start (Left/Right) of the device when 3 button nav is enabled. -->
|
||||||
<bool name="start_align_taskbar">false</bool>
|
<bool name="start_align_taskbar">false</bool>
|
||||||
|
|
||||||
|
<!-- This is a float because it is converted to dp later in DeviceProfile -->
|
||||||
|
<item name="taskbar_icon_size" type="dimen" format="float">44</item>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
@@ -261,7 +261,6 @@
|
|||||||
<!-- Taskbar -->
|
<!-- Taskbar -->
|
||||||
<dimen name="taskbar_size">@*android:dimen/taskbar_frame_height</dimen>
|
<dimen name="taskbar_size">@*android:dimen/taskbar_frame_height</dimen>
|
||||||
<dimen name="taskbar_ime_size">48dp</dimen>
|
<dimen name="taskbar_ime_size">48dp</dimen>
|
||||||
<dimen name="taskbar_icon_size">44dp</dimen>
|
|
||||||
<dimen name="taskbar_icon_min_touch_size">48dp</dimen>
|
<dimen name="taskbar_icon_min_touch_size">48dp</dimen>
|
||||||
<!-- Note that this applies to both sides of all icons, so visible space is double this. -->
|
<!-- Note that this applies to both sides of all icons, so visible space is double this. -->
|
||||||
<dimen name="taskbar_icon_spacing">12dp</dimen>
|
<dimen name="taskbar_icon_spacing">12dp</dimen>
|
||||||
@@ -292,13 +291,12 @@
|
|||||||
|
|
||||||
|
|
||||||
<!-- Transient taskbar -->
|
<!-- Transient taskbar -->
|
||||||
<dimen name="transient_taskbar_size">72dp</dimen>
|
<dimen name="transient_taskbar_padding">12dp</dimen>
|
||||||
<dimen name="transient_taskbar_min_width">150dp</dimen>
|
<dimen name="transient_taskbar_min_width">150dp</dimen>
|
||||||
<dimen name="transient_taskbar_icon_size">48dp</dimen>
|
<dimen name="transient_taskbar_bottom_margin">24dp</dimen>
|
||||||
<dimen name="transient_taskbar_margin">24dp</dimen>
|
|
||||||
<dimen name="transient_taskbar_shadow_blur">40dp</dimen>
|
<dimen name="transient_taskbar_shadow_blur">40dp</dimen>
|
||||||
<dimen name="transient_taskbar_key_shadow_distance">10dp</dimen>
|
<dimen name="transient_taskbar_key_shadow_distance">10dp</dimen>
|
||||||
<dimen name="transient_taskbar_stashed_size">32dp</dimen>
|
<dimen name="transient_taskbar_stashed_height">32dp</dimen>
|
||||||
<dimen name="transient_taskbar_all_apps_button_translation_x_offset">4dp</dimen>
|
<dimen name="transient_taskbar_all_apps_button_translation_x_offset">4dp</dimen>
|
||||||
<dimen name="transient_taskbar_stash_spring_velocity_dp_per_s">400dp</dimen>
|
<dimen name="transient_taskbar_stash_spring_velocity_dp_per_s">400dp</dimen>
|
||||||
|
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ public class DesktopNavbarButtonsViewController extends NavbarButtonsViewControl
|
|||||||
@Override
|
@Override
|
||||||
public void init(TaskbarControllers controllers) {
|
public void init(TaskbarControllers controllers) {
|
||||||
mControllers = controllers;
|
mControllers = controllers;
|
||||||
mNavButtonsView.getLayoutParams().height = mContext.getDeviceProfile().taskbarSize;
|
mNavButtonsView.getLayoutParams().height = mContext.getDeviceProfile().taskbarHeight;
|
||||||
|
|
||||||
// Quick settings and notifications buttons
|
// Quick settings and notifications buttons
|
||||||
addButton(R.drawable.ic_sysbar_quick_settings, BUTTON_QUICK_SETTINGS,
|
addButton(R.drawable.ic_sysbar_quick_settings, BUTTON_QUICK_SETTINGS,
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT
|
|||||||
flags -> (flags & flagsToRemoveTranslation) != 0, AnimatedFloat.VALUE,
|
flags -> (flags & flagsToRemoveTranslation) != 0, AnimatedFloat.VALUE,
|
||||||
1, 0));
|
1, 0));
|
||||||
// Center nav buttons in new height for IME.
|
// Center nav buttons in new height for IME.
|
||||||
float transForIme = (mContext.getDeviceProfile().taskbarSize
|
float transForIme = (mContext.getDeviceProfile().taskbarHeight
|
||||||
- mControllers.taskbarInsetsController.getTaskbarHeightForIme()) / 2f;
|
- mControllers.taskbarInsetsController.getTaskbarHeightForIme()) / 2f;
|
||||||
// For gesture nav, nav buttons only show for IME anyway so keep them translated down.
|
// For gesture nav, nav buttons only show for IME anyway so keep them translated down.
|
||||||
float defaultButtonTransY = alwaysShowButtons ? 0 : transForIme;
|
float defaultButtonTransY = alwaysShowButtons ? 0 : transForIme;
|
||||||
|
|||||||
@@ -111,13 +111,11 @@ public class StashedHandleViewController implements TaskbarControllers.LoggableT
|
|||||||
mStashedHandleWidth =
|
mStashedHandleWidth =
|
||||||
resources.getDimensionPixelSize(R.dimen.taskbar_stashed_small_screen);
|
resources.getDimensionPixelSize(R.dimen.taskbar_stashed_small_screen);
|
||||||
} else {
|
} else {
|
||||||
mTaskbarSize = deviceProfile.taskbarSize;
|
mTaskbarSize = deviceProfile.taskbarHeight;
|
||||||
mStashedHandleWidth = resources
|
mStashedHandleWidth = resources
|
||||||
.getDimensionPixelSize(R.dimen.taskbar_stashed_handle_width);
|
.getDimensionPixelSize(R.dimen.taskbar_stashed_handle_width);
|
||||||
}
|
}
|
||||||
int taskbarBottomMargin = DisplayController.isTransientTaskbar(mActivity)
|
int taskbarBottomMargin = deviceProfile.taskbarBottomMargin;
|
||||||
? resources.getDimensionPixelSize(R.dimen.transient_taskbar_margin)
|
|
||||||
: 0;
|
|
||||||
mStashedHandleView.getLayoutParams().height = mTaskbarSize + taskbarBottomMargin;
|
mStashedHandleView.getLayoutParams().height = mTaskbarSize + taskbarBottomMargin;
|
||||||
|
|
||||||
mTaskbarStashedHandleAlpha.get(ALPHA_INDEX_STASHED).setValue(
|
mTaskbarStashedHandleAlpha.get(ALPHA_INDEX_STASHED).setValue(
|
||||||
|
|||||||
@@ -301,10 +301,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
|
|||||||
deviceProfile.hotseatQsbWidth = originDeviceProfile.hotseatQsbWidth;
|
deviceProfile.hotseatQsbWidth = originDeviceProfile.hotseatQsbWidth;
|
||||||
|
|
||||||
// Update icon size
|
// Update icon size
|
||||||
deviceProfile.iconSizePx = resources.getDimensionPixelSize(
|
deviceProfile.iconSizePx = deviceProfile.taskbarIconSize;
|
||||||
DisplayController.isTransientTaskbar(TaskbarActivityContext.this)
|
|
||||||
? R.dimen.transient_taskbar_icon_size
|
|
||||||
: R.dimen.taskbar_icon_size);
|
|
||||||
deviceProfile.updateIconSize(1f, resources);
|
deviceProfile.updateIconSize(1f, resources);
|
||||||
}).build();
|
}).build();
|
||||||
}
|
}
|
||||||
@@ -714,13 +711,13 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (DisplayController.isTransientTaskbar(this)) {
|
if (DisplayController.isTransientTaskbar(this)) {
|
||||||
int taskbarSize = resources.getDimensionPixelSize(R.dimen.transient_taskbar_size);
|
return mDeviceProfile.taskbarHeight
|
||||||
return taskbarSize
|
+ (2 * mDeviceProfile.taskbarBottomMargin)
|
||||||
+ (2 * resources.getDimensionPixelSize(R.dimen.transient_taskbar_margin))
|
|
||||||
+ resources.getDimensionPixelSize(R.dimen.transient_taskbar_shadow_blur);
|
+ resources.getDimensionPixelSize(R.dimen.transient_taskbar_shadow_blur);
|
||||||
}
|
}
|
||||||
|
|
||||||
return mDeviceProfile.taskbarSize + Math.max(getLeftCornerRadius(), getRightCornerRadius());
|
return mDeviceProfile.taskbarHeight
|
||||||
|
+ Math.max(getLeftCornerRadius(), getRightCornerRadius());
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getSetupWindowHeight() {
|
public int getSetupWindowHeight() {
|
||||||
|
|||||||
@@ -37,11 +37,11 @@ class TaskbarBackgroundRenderer(context: TaskbarActivityContext) {
|
|||||||
|
|
||||||
val paint = Paint()
|
val paint = Paint()
|
||||||
val lastDrawnTransientRect = RectF()
|
val lastDrawnTransientRect = RectF()
|
||||||
var backgroundHeight = context.deviceProfile.taskbarSize.toFloat()
|
var backgroundHeight = context.deviceProfile.taskbarHeight.toFloat()
|
||||||
var translationYForSwipe = 0f
|
var translationYForSwipe = 0f
|
||||||
var translationYForStash = 0f
|
var translationYForStash = 0f
|
||||||
|
|
||||||
private var maxBackgroundHeight = context.deviceProfile.taskbarSize.toFloat()
|
private var maxBackgroundHeight = context.deviceProfile.taskbarHeight.toFloat()
|
||||||
private val transientBackgroundBounds = context.transientTaskbarBounds
|
private val transientBackgroundBounds = context.transientTaskbarBounds
|
||||||
|
|
||||||
private val isTransientTaskbar = DisplayController.isTransientTaskbar(context)
|
private val isTransientTaskbar = DisplayController.isTransientTaskbar(context)
|
||||||
@@ -73,7 +73,7 @@ class TaskbarBackgroundRenderer(context: TaskbarActivityContext) {
|
|||||||
|
|
||||||
if (isTransientTaskbar) {
|
if (isTransientTaskbar) {
|
||||||
val res = context.resources
|
val res = context.resources
|
||||||
bottomMargin = res.getDimensionPixelSize(R.dimen.transient_taskbar_margin)
|
bottomMargin = res.getDimensionPixelSize(R.dimen.transient_taskbar_bottom_margin)
|
||||||
shadowBlur = res.getDimension(R.dimen.transient_taskbar_shadow_blur)
|
shadowBlur = res.getDimension(R.dimen.transient_taskbar_shadow_blur)
|
||||||
keyShadowDistance = res.getDimension(R.dimen.transient_taskbar_key_shadow_distance)
|
keyShadowDistance = res.getDimension(R.dimen.transient_taskbar_key_shadow_distance)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,7 +94,7 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa
|
|||||||
*/
|
*/
|
||||||
public Rect getFolderBoundingBox() {
|
public Rect getFolderBoundingBox() {
|
||||||
Rect boundingBox = new Rect(0, 0, mTaskbarDragLayer.getWidth(),
|
Rect boundingBox = new Rect(0, 0, mTaskbarDragLayer.getWidth(),
|
||||||
mTaskbarDragLayer.getHeight() - mActivity.getDeviceProfile().taskbarSize);
|
mTaskbarDragLayer.getHeight() - mActivity.getDeviceProfile().taskbarHeight);
|
||||||
boundingBox.inset(mFolderMargin, mFolderMargin);
|
boundingBox.inset(mFolderMargin, mFolderMargin);
|
||||||
return boundingBox;
|
return boundingBox;
|
||||||
}
|
}
|
||||||
@@ -233,7 +233,7 @@ public class TaskbarDragLayerController implements TaskbarControllers.LoggableTa
|
|||||||
deviceProfile.getDisplayInfo().currentSize.y :
|
deviceProfile.getDisplayInfo().currentSize.y :
|
||||||
taskbarDimensions.y;
|
taskbarDimensions.y;
|
||||||
} else {
|
} else {
|
||||||
return deviceProfile.taskbarSize;
|
return deviceProfile.taskbarHeight;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -68,9 +68,7 @@ public class TaskbarEduController implements TaskbarControllers.LoggableTaskbarC
|
|||||||
ViewGroup.MarginLayoutParams layoutParams =
|
ViewGroup.MarginLayoutParams layoutParams =
|
||||||
(ViewGroup.MarginLayoutParams) startButton.getLayoutParams();
|
(ViewGroup.MarginLayoutParams) startButton.getLayoutParams();
|
||||||
DeviceProfile dp = overlayContext.getDeviceProfile();
|
DeviceProfile dp = overlayContext.getDeviceProfile();
|
||||||
layoutParams.bottomMargin += DisplayController.isTransientTaskbar(overlayContext)
|
layoutParams.bottomMargin += dp.taskbarHeight + dp.taskbarBottomMargin;
|
||||||
? dp.taskbarSize + dp.transientTaskbarMargin
|
|
||||||
: dp.taskbarSize;
|
|
||||||
|
|
||||||
mTaskbarEduView.init(new TaskbarEduCallbacks());
|
mTaskbarEduView.init(new TaskbarEduCallbacks());
|
||||||
|
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ class TaskbarEduTooltipController(val activityContext: TaskbarActivityContext) :
|
|||||||
findViewById<View>(R.id.done_button)?.setOnClickListener { hide() }
|
findViewById<View>(R.id.done_button)?.setOnClickListener { hide() }
|
||||||
if (DisplayController.isTransientTaskbar(activityContext)) {
|
if (DisplayController.isTransientTaskbar(activityContext)) {
|
||||||
(layoutParams as ViewGroup.MarginLayoutParams).bottomMargin +=
|
(layoutParams as ViewGroup.MarginLayoutParams).bottomMargin +=
|
||||||
activityContext.deviceProfile.taskbarSize
|
activityContext.deviceProfile.taskbarHeight
|
||||||
}
|
}
|
||||||
show()
|
show()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -248,7 +248,7 @@ public class TaskbarPopupController implements TaskbarControllers.LoggableTaskba
|
|||||||
// Move the icon to align with the center-top of the touch point
|
// Move the icon to align with the center-top of the touch point
|
||||||
Point iconShift = new Point();
|
Point iconShift = new Point();
|
||||||
iconShift.x = mIconLastTouchPos.x - sv.getIconCenter().x;
|
iconShift.x = mIconLastTouchPos.x - sv.getIconCenter().x;
|
||||||
iconShift.y = mIconLastTouchPos.y - mContext.getDeviceProfile().iconSizePx;
|
iconShift.y = mIconLastTouchPos.y - mContext.getDeviceProfile().taskbarIconSize;
|
||||||
|
|
||||||
((TaskbarDragController) ActivityContext.lookupContext(
|
((TaskbarDragController) ActivityContext.lookupContext(
|
||||||
v.getContext()).getDragController()).startDragOnLongClick(sv, iconShift);
|
v.getContext()).getDragController()).startDragOnLongClick(sv, iconShift);
|
||||||
|
|||||||
@@ -39,7 +39,6 @@ import android.animation.Animator;
|
|||||||
import android.animation.AnimatorListenerAdapter;
|
import android.animation.AnimatorListenerAdapter;
|
||||||
import android.animation.AnimatorSet;
|
import android.animation.AnimatorSet;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.content.res.Resources;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.InsetsController;
|
import android.view.InsetsController;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@@ -230,21 +229,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
|
|||||||
mPrefs = LauncherPrefs.getPrefs(mActivity);
|
mPrefs = LauncherPrefs.getPrefs(mActivity);
|
||||||
mSystemUiProxy = SystemUiProxy.INSTANCE.get(activity);
|
mSystemUiProxy = SystemUiProxy.INSTANCE.get(activity);
|
||||||
mAccessibilityManager = mActivity.getSystemService(AccessibilityManager.class);
|
mAccessibilityManager = mActivity.getSystemService(AccessibilityManager.class);
|
||||||
if (isPhoneMode()) {
|
|
||||||
// DeviceProfile's taskbar vars aren't initialized w/ the flag off
|
|
||||||
Resources resources = mActivity.getResources();
|
|
||||||
boolean isTransientTaskbar = DisplayController.isTransientTaskbar(mActivity);
|
|
||||||
mUnstashedHeight = resources.getDimensionPixelSize(isTransientTaskbar
|
|
||||||
? R.dimen.transient_taskbar_size
|
|
||||||
: R.dimen.taskbar_size);
|
|
||||||
mStashedHeight = resources.getDimensionPixelSize(isTransientTaskbar
|
|
||||||
? R.dimen.transient_taskbar_stashed_size
|
|
||||||
: R.dimen.taskbar_stashed_size);
|
|
||||||
} else {
|
|
||||||
mUnstashedHeight = mActivity.getDeviceProfile().taskbarSize;
|
|
||||||
mStashedHeight = mActivity.getDeviceProfile().stashedTaskbarSize;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
mUnstashedHeight = mActivity.getDeviceProfile().taskbarHeight;
|
||||||
|
mStashedHeight = mActivity.getDeviceProfile().stashedTaskbarHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(TaskbarControllers controllers, boolean setupUIVisible) {
|
public void init(TaskbarControllers controllers, boolean setupUIVisible) {
|
||||||
@@ -406,12 +393,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba
|
|||||||
* Returns the height that taskbar will be touchable.
|
* Returns the height that taskbar will be touchable.
|
||||||
*/
|
*/
|
||||||
public int getTouchableHeight() {
|
public int getTouchableHeight() {
|
||||||
int bottomMargin = 0;
|
return mIsStashed
|
||||||
if (DisplayController.isTransientTaskbar(mActivity)) {
|
? mStashedHeight
|
||||||
bottomMargin = mActivity.getResources().getDimensionPixelSize(
|
: (mUnstashedHeight + mActivity.getDeviceProfile().taskbarBottomMargin);
|
||||||
R.dimen.transient_taskbar_margin);
|
|
||||||
}
|
|
||||||
return mIsStashed ? mStashedHeight : (mUnstashedHeight + bottomMargin);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -46,9 +46,9 @@ class TaskbarStashViaTouchController(val controllers: TaskbarControllers) : Touc
|
|||||||
private val displacementInterpolator = LINEAR
|
private val displacementInterpolator = LINEAR
|
||||||
/** How far we can translate the TaskbarView before it's offscreen. */
|
/** How far we can translate the TaskbarView before it's offscreen. */
|
||||||
private val maxVisualDisplacement =
|
private val maxVisualDisplacement =
|
||||||
activity.resources.getDimensionPixelSize(R.dimen.transient_taskbar_margin).toFloat()
|
activity.resources.getDimensionPixelSize(R.dimen.transient_taskbar_bottom_margin).toFloat()
|
||||||
/** How far the swipe could go, if user swiped from the very top of TaskbarView. */
|
/** How far the swipe could go, if user swiped from the very top of TaskbarView. */
|
||||||
private val maxTouchDisplacement = maxVisualDisplacement + activity.deviceProfile.taskbarSize
|
private val maxTouchDisplacement = maxVisualDisplacement + activity.deviceProfile.taskbarHeight
|
||||||
private val touchDisplacementToStash =
|
private val touchDisplacementToStash =
|
||||||
activity.resources.getDimensionPixelSize(R.dimen.taskbar_to_nav_threshold).toFloat()
|
activity.resources.getDimensionPixelSize(R.dimen.taskbar_to_nav_threshold).toFloat()
|
||||||
|
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ public class TaskbarView extends FrameLayout implements FolderIcon.FolderIconPar
|
|||||||
&& resources.getBoolean(R.bool.start_align_taskbar);
|
&& resources.getBoolean(R.bool.start_align_taskbar);
|
||||||
|
|
||||||
int actualMargin = resources.getDimensionPixelSize(R.dimen.taskbar_icon_spacing);
|
int actualMargin = resources.getDimensionPixelSize(R.dimen.taskbar_icon_spacing);
|
||||||
int actualIconSize = mActivityContext.getDeviceProfile().iconSizePx;
|
int actualIconSize = mActivityContext.getDeviceProfile().taskbarIconSize;
|
||||||
|
|
||||||
mIconTouchSize = Math.max(actualIconSize,
|
mIconTouchSize = Math.max(actualIconSize,
|
||||||
resources.getDimensionPixelSize(R.dimen.taskbar_icon_min_touch_size));
|
resources.getDimensionPixelSize(R.dimen.taskbar_icon_min_touch_size));
|
||||||
|
|||||||
@@ -59,7 +59,6 @@ import com.android.launcher3.anim.RoundedRectRevealOutlineProvider;
|
|||||||
import com.android.launcher3.config.FeatureFlags;
|
import com.android.launcher3.config.FeatureFlags;
|
||||||
import com.android.launcher3.icons.ThemedIconDrawable;
|
import com.android.launcher3.icons.ThemedIconDrawable;
|
||||||
import com.android.launcher3.model.data.ItemInfo;
|
import com.android.launcher3.model.data.ItemInfo;
|
||||||
import com.android.launcher3.util.DisplayController;
|
|
||||||
import com.android.launcher3.util.ItemInfoMatcher;
|
import com.android.launcher3.util.ItemInfoMatcher;
|
||||||
import com.android.launcher3.util.LauncherBindableItemsContainer;
|
import com.android.launcher3.util.LauncherBindableItemsContainer;
|
||||||
import com.android.launcher3.util.MultiPropertyFactory;
|
import com.android.launcher3.util.MultiPropertyFactory;
|
||||||
@@ -134,9 +133,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
mTaskbarIconAlpha = new MultiValueAlpha(mTaskbarView, NUM_ALPHA_CHANNELS);
|
mTaskbarIconAlpha = new MultiValueAlpha(mTaskbarView, NUM_ALPHA_CHANNELS);
|
||||||
mTaskbarIconAlpha.setUpdateVisibility(true);
|
mTaskbarIconAlpha.setUpdateVisibility(true);
|
||||||
mModelCallbacks = new TaskbarModelCallbacks(activity, mTaskbarView);
|
mModelCallbacks = new TaskbarModelCallbacks(activity, mTaskbarView);
|
||||||
mTaskbarBottomMargin = DisplayController.isTransientTaskbar(activity)
|
mTaskbarBottomMargin = activity.getDeviceProfile().taskbarBottomMargin;
|
||||||
? activity.getResources().getDimensionPixelSize(R.dimen.transient_taskbar_margin)
|
|
||||||
: 0;
|
|
||||||
mStashedHandleHeight = activity.getResources()
|
mStashedHandleHeight = activity.getResources()
|
||||||
.getDimensionPixelSize(R.dimen.taskbar_stashed_handle_height);
|
.getDimensionPixelSize(R.dimen.taskbar_stashed_handle_height);
|
||||||
mLauncherThemedIconsBackgroundColor = ThemedIconDrawable.getColors(mActivity)[0];
|
mLauncherThemedIconsBackgroundColor = ThemedIconDrawable.getColors(mActivity)[0];
|
||||||
@@ -157,7 +154,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
mTaskbarView.init(new TaskbarViewCallbacks());
|
mTaskbarView.init(new TaskbarViewCallbacks());
|
||||||
mTaskbarView.getLayoutParams().height = isPhoneMode(mActivity.getDeviceProfile())
|
mTaskbarView.getLayoutParams().height = isPhoneMode(mActivity.getDeviceProfile())
|
||||||
? mActivity.getResources().getDimensionPixelSize(R.dimen.taskbar_size)
|
? mActivity.getResources().getDimensionPixelSize(R.dimen.taskbar_size)
|
||||||
: mActivity.getDeviceProfile().taskbarSize;
|
: mActivity.getDeviceProfile().taskbarHeight;
|
||||||
|
|
||||||
mTaskbarIconScaleForStash.updateValue(1f);
|
mTaskbarIconScaleForStash.updateValue(1f);
|
||||||
|
|
||||||
@@ -429,7 +426,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
PendingAnimation setter = new PendingAnimation(100);
|
PendingAnimation setter = new PendingAnimation(100);
|
||||||
DeviceProfile taskbarDp = mActivity.getDeviceProfile();
|
DeviceProfile taskbarDp = mActivity.getDeviceProfile();
|
||||||
Rect hotseatPadding = launcherDp.getHotseatLayoutPadding(mActivity);
|
Rect hotseatPadding = launcherDp.getHotseatLayoutPadding(mActivity);
|
||||||
float scaleUp = ((float) launcherDp.iconSizePx) / taskbarDp.iconSizePx;
|
float scaleUp = ((float) launcherDp.iconSizePx) / taskbarDp.taskbarIconSize;
|
||||||
int borderSpacing = launcherDp.hotseatBorderSpace;
|
int borderSpacing = launcherDp.hotseatBorderSpace;
|
||||||
int hotseatCellSize = DeviceProfile.calculateCellWidth(
|
int hotseatCellSize = DeviceProfile.calculateCellWidth(
|
||||||
launcherDp.availableWidthPx - hotseatPadding.left - hotseatPadding.right,
|
launcherDp.availableWidthPx - hotseatPadding.left - hotseatPadding.right,
|
||||||
@@ -451,7 +448,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
}
|
}
|
||||||
|
|
||||||
int collapsedHeight = mActivity.getDefaultTaskbarWindowHeight();
|
int collapsedHeight = mActivity.getDefaultTaskbarWindowHeight();
|
||||||
int expandedHeight = Math.max(collapsedHeight, taskbarDp.taskbarSize + offsetY);
|
int expandedHeight = Math.max(collapsedHeight, taskbarDp.taskbarHeight + offsetY);
|
||||||
setter.addOnFrameListener(anim -> mActivity.setTaskbarWindowHeight(
|
setter.addOnFrameListener(anim -> mActivity.setTaskbarWindowHeight(
|
||||||
anim.getAnimatedFraction() > 0 ? expandedHeight : collapsedHeight));
|
anim.getAnimatedFraction() > 0 ? expandedHeight : collapsedHeight));
|
||||||
|
|
||||||
@@ -485,8 +482,9 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
: hotseatPadding.left - borderSpacing - launcherDp.hotseatQsbWidth / 2f;
|
: hotseatPadding.left - borderSpacing - launcherDp.hotseatQsbWidth / 2f;
|
||||||
float childCenter = (child.getLeft() + child.getRight()) / 2f;
|
float childCenter = (child.getLeft() + child.getRight()) / 2f;
|
||||||
float halfQsbIconWidthDiff =
|
float halfQsbIconWidthDiff =
|
||||||
(launcherDp.hotseatQsbWidth - taskbarDp.iconSizePx) / 2f;
|
(launcherDp.hotseatQsbWidth - taskbarDp.taskbarIconSize) / 2f;
|
||||||
float scale = ((float) taskbarDp.iconSizePx) / launcherDp.hotseatQsbVisualHeight;
|
float scale = ((float) taskbarDp.taskbarIconSize)
|
||||||
|
/ launcherDp.hotseatQsbVisualHeight;
|
||||||
setter.addFloat(child, SCALE_PROPERTY, scale, 1f, interpolator);
|
setter.addFloat(child, SCALE_PROPERTY, scale, 1f, interpolator);
|
||||||
|
|
||||||
float fromX = isRtl ? -halfQsbIconWidthDiff : halfQsbIconWidthDiff;
|
float fromX = isRtl ? -halfQsbIconWidthDiff : halfQsbIconWidthDiff;
|
||||||
@@ -559,7 +557,7 @@ public class TaskbarViewController implements TaskbarControllers.LoggableTaskbar
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mActivity.setTaskbarWindowHeight(
|
mActivity.setTaskbarWindowHeight(
|
||||||
deviceProfile.taskbarSize + deviceProfile.getTaskbarOffsetY());
|
deviceProfile.taskbarHeight + deviceProfile.getTaskbarOffsetY());
|
||||||
mTaskbarNavButtonTranslationY.updateValue(-deviceProfile.getTaskbarOffsetY());
|
mTaskbarNavButtonTranslationY.updateValue(-deviceProfile.getTaskbarOffsetY());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -306,7 +306,7 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T
|
|||||||
out.x = dp.widthPx;
|
out.x = dp.widthPx;
|
||||||
out.y = dp.heightPx;
|
out.y = dp.heightPx;
|
||||||
if (dp.isTablet && !DisplayController.isTransientTaskbar(context)) {
|
if (dp.isTablet && !DisplayController.isTransientTaskbar(context)) {
|
||||||
out.y -= dp.taskbarSize;
|
out.y -= dp.taskbarHeight;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -365,7 +365,7 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T
|
|||||||
calculateTaskSize(context, dp, outRect, orientedState);
|
calculateTaskSize(context, dp, outRect, orientedState);
|
||||||
boolean isGridOnlyOverview = dp.isTablet && FeatureFlags.ENABLE_GRID_ONLY_OVERVIEW.get();
|
boolean isGridOnlyOverview = dp.isTablet && FeatureFlags.ENABLE_GRID_ONLY_OVERVIEW.get();
|
||||||
int claimedSpaceBelow = isGridOnlyOverview
|
int claimedSpaceBelow = isGridOnlyOverview
|
||||||
? dp.overviewActionsTopMarginPx + dp.overviewActionsHeight + dp.stashedTaskbarSize
|
? dp.overviewActionsTopMarginPx + dp.overviewActionsHeight + dp.stashedTaskbarHeight
|
||||||
: (dp.heightPx - outRect.bottom - dp.getInsets().bottom);
|
: (dp.heightPx - outRect.bottom - dp.getInsets().bottom);
|
||||||
int minimumHorizontalPadding = 0;
|
int minimumHorizontalPadding = 0;
|
||||||
if (!isGridOnlyOverview) {
|
if (!isGridOnlyOverview) {
|
||||||
|
|||||||
@@ -336,7 +336,7 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy {
|
|||||||
boolean isRtlEnabled = !mIsRecentsRtl;
|
boolean isRtlEnabled = !mIsRecentsRtl;
|
||||||
mPositionHelper.updateThumbnailMatrix(
|
mPositionHelper.updateThumbnailMatrix(
|
||||||
mThumbnailPosition, mThumbnailData, mTaskRect.width(), mTaskRect.height(),
|
mThumbnailPosition, mThumbnailData, mTaskRect.width(), mTaskRect.height(),
|
||||||
mDp.widthPx, mDp.heightPx, mDp.taskbarSize, mDp.isTablet,
|
mDp.widthPx, mDp.heightPx, mDp.taskbarHeight, mDp.isTablet,
|
||||||
mOrientationState.getRecentsActivityRotation(), isRtlEnabled);
|
mOrientationState.getRecentsActivityRotation(), isRtlEnabled);
|
||||||
mPositionHelper.getMatrix().invert(mInversePositionMatrix);
|
mPositionHelper.getMatrix().invert(mInversePositionMatrix);
|
||||||
if (DEBUG) {
|
if (DEBUG) {
|
||||||
|
|||||||
@@ -283,7 +283,7 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (mDp.isTablet && FeatureFlags.ENABLE_GRID_ONLY_OVERVIEW.get()) {
|
if (mDp.isTablet && FeatureFlags.ENABLE_GRID_ONLY_OVERVIEW.get()) {
|
||||||
return mDp.stashedTaskbarSize;
|
return mDp.stashedTaskbarHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Align to bottom of task Rect.
|
// Align to bottom of task Rect.
|
||||||
|
|||||||
@@ -559,7 +559,7 @@ public class TaskThumbnailView extends View {
|
|||||||
boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL;
|
boolean isRtl = getLayoutDirection() == LAYOUT_DIRECTION_RTL;
|
||||||
mPreviewPositionHelper.updateThumbnailMatrix(mPreviewRect, mThumbnailData,
|
mPreviewPositionHelper.updateThumbnailMatrix(mPreviewRect, mThumbnailData,
|
||||||
getMeasuredWidth(), getMeasuredHeight(), dp.widthPx, dp.heightPx,
|
getMeasuredWidth(), getMeasuredHeight(), dp.widthPx, dp.heightPx,
|
||||||
dp.taskbarSize, dp.isTablet, currentRotation, isRtl);
|
dp.taskbarHeight, dp.isTablet, currentRotation, isRtl);
|
||||||
|
|
||||||
mBitmapShader.setLocalMatrix(mPreviewPositionHelper.getMatrix());
|
mBitmapShader.setLocalMatrix(mPreviewPositionHelper.getMatrix());
|
||||||
mPaint.setShader(mBitmapShader);
|
mPaint.setShader(mBitmapShader);
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ class FullscreenDrawParamsTest : FakeInvariantDeviceProfileTest() {
|
|||||||
canvasHeight,
|
canvasHeight,
|
||||||
dp.widthPx,
|
dp.widthPx,
|
||||||
dp.heightPx,
|
dp.heightPx,
|
||||||
dp.taskbarSize,
|
dp.taskbarHeight,
|
||||||
dp.isTablet,
|
dp.isTablet,
|
||||||
currentRotation,
|
currentRotation,
|
||||||
isRtl
|
isRtl
|
||||||
@@ -99,7 +99,7 @@ class FullscreenDrawParamsTest : FakeInvariantDeviceProfileTest() {
|
|||||||
canvasHeight,
|
canvasHeight,
|
||||||
dp.widthPx,
|
dp.widthPx,
|
||||||
dp.heightPx,
|
dp.heightPx,
|
||||||
dp.taskbarSize,
|
dp.taskbarHeight,
|
||||||
dp.isTablet,
|
dp.isTablet,
|
||||||
currentRotation,
|
currentRotation,
|
||||||
isRtl
|
isRtl
|
||||||
@@ -134,7 +134,7 @@ class FullscreenDrawParamsTest : FakeInvariantDeviceProfileTest() {
|
|||||||
canvasHeight,
|
canvasHeight,
|
||||||
dp.widthPx,
|
dp.widthPx,
|
||||||
dp.heightPx,
|
dp.heightPx,
|
||||||
dp.taskbarSize,
|
dp.taskbarHeight,
|
||||||
dp.isTablet,
|
dp.isTablet,
|
||||||
currentRotation,
|
currentRotation,
|
||||||
isRtl
|
isRtl
|
||||||
@@ -169,7 +169,7 @@ class FullscreenDrawParamsTest : FakeInvariantDeviceProfileTest() {
|
|||||||
canvasHeight,
|
canvasHeight,
|
||||||
dp.widthPx,
|
dp.widthPx,
|
||||||
dp.heightPx,
|
dp.heightPx,
|
||||||
dp.taskbarSize,
|
dp.taskbarHeight,
|
||||||
dp.isTablet,
|
dp.isTablet,
|
||||||
currentRotation,
|
currentRotation,
|
||||||
isRtl
|
isRtl
|
||||||
|
|||||||
@@ -380,6 +380,15 @@
|
|||||||
<!-- defaults to hotseatQsbSpace, if not specified -->
|
<!-- defaults to hotseatQsbSpace, if not specified -->
|
||||||
<attr name="hotseatQsbSpaceTwoPanelPortrait" format="float" />
|
<attr name="hotseatQsbSpaceTwoPanelPortrait" format="float" />
|
||||||
|
|
||||||
|
<!-- defaults to res.taskbar_icon_size, if not specified -->
|
||||||
|
<attr name="transientTaskbarIconSize" format="float" />
|
||||||
|
<!-- defaults to transientTaskbarIconSize, if not specified -->
|
||||||
|
<attr name="transientTaskbarIconSizeLandscape" format="float" />
|
||||||
|
<!-- defaults to transientTaskbarIconSize, if not specified -->
|
||||||
|
<attr name="transientTaskbarIconSizeTwoPanelLandscape" format="float" />
|
||||||
|
<!-- defaults to transientTaskbarIconSize, if not specified -->
|
||||||
|
<attr name="transientTaskbarIconSizeTwoPanelPortrait" format="float" />
|
||||||
|
|
||||||
<attr name="iconImageSize" format="float" />
|
<attr name="iconImageSize" format="float" />
|
||||||
<!-- defaults to iconImageSize, if not specified -->
|
<!-- defaults to iconImageSize, if not specified -->
|
||||||
<attr name="iconSizeLandscape" format="float" />
|
<attr name="iconSizeLandscape" format="float" />
|
||||||
|
|||||||
@@ -164,6 +164,10 @@
|
|||||||
<item name="swipe_up_rect_xy_damping_ratio" type="dimen" format="float">0.8</item>
|
<item name="swipe_up_rect_xy_damping_ratio" type="dimen" format="float">0.8</item>
|
||||||
<item name="swipe_up_rect_xy_stiffness" type="dimen" format="float">200</item>
|
<item name="swipe_up_rect_xy_stiffness" type="dimen" format="float">200</item>
|
||||||
|
|
||||||
|
<!-- Taskbar -->
|
||||||
|
<!-- This is a float because it is converted to dp later in DeviceProfile -->
|
||||||
|
<item name="taskbar_icon_size" type="dimen" format="float">0</item>
|
||||||
|
|
||||||
<!-- These params are only used for hotseat items on devices that have a taskbar. -->
|
<!-- These params are only used for hotseat items on devices that have a taskbar. -->
|
||||||
<item name="taskbar_swipe_up_rect_x_stiffness" type="dimen" format="float">350</item>
|
<item name="taskbar_swipe_up_rect_x_stiffness" type="dimen" format="float">350</item>
|
||||||
<item name="taskbar_swipe_up_rect_x_damping" type="dimen" format="float">0.9</item>
|
<item name="taskbar_swipe_up_rect_x_damping" type="dimen" format="float">0.9</item>
|
||||||
|
|||||||
@@ -371,14 +371,13 @@
|
|||||||
<dimen name="min_hotseat_icon_space">18dp</dimen>
|
<dimen name="min_hotseat_icon_space">18dp</dimen>
|
||||||
<dimen name="max_hotseat_icon_space">50dp</dimen>
|
<dimen name="max_hotseat_icon_space">50dp</dimen>
|
||||||
<dimen name="min_hotseat_qsb_width">0dp</dimen>
|
<dimen name="min_hotseat_qsb_width">0dp</dimen>
|
||||||
<dimen name="taskbar_icon_size">0dp</dimen>
|
|
||||||
<dimen name="transient_taskbar_icon_size">0dp</dimen>
|
|
||||||
<!-- Transient taskbar (placeholders to compile in Launcher3 without Quickstep) -->
|
<!-- Transient taskbar (placeholders to compile in Launcher3 without Quickstep) -->
|
||||||
<dimen name="transient_taskbar_size">0dp</dimen>
|
<dimen name="transient_taskbar_padding">0dp</dimen>
|
||||||
<dimen name="transient_taskbar_margin">0dp</dimen>
|
<dimen name="transient_taskbar_bottom_margin">0dp</dimen>
|
||||||
<dimen name="transient_taskbar_shadow_blur">0dp</dimen>
|
<dimen name="transient_taskbar_shadow_blur">0dp</dimen>
|
||||||
<dimen name="transient_taskbar_key_shadow_distance">0dp</dimen>
|
<dimen name="transient_taskbar_key_shadow_distance">0dp</dimen>
|
||||||
<dimen name="transient_taskbar_stashed_size">0dp</dimen>
|
<dimen name="transient_taskbar_stashed_height">0dp</dimen>
|
||||||
<dimen name="transient_taskbar_clamped_offset_bound">0dp</dimen>
|
<dimen name="transient_taskbar_clamped_offset_bound">0dp</dimen>
|
||||||
<dimen name="taskbar_icon_spacing">0dp</dimen>
|
<dimen name="taskbar_icon_spacing">0dp</dimen>
|
||||||
<dimen name="taskbar_nav_buttons_size">0dp</dimen>
|
<dimen name="taskbar_nav_buttons_size">0dp</dimen>
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ import android.view.Surface;
|
|||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
import androidx.core.content.res.ResourcesCompat;
|
||||||
|
|
||||||
import com.android.launcher3.CellLayout.ContainerType;
|
import com.android.launcher3.CellLayout.ContainerType;
|
||||||
import com.android.launcher3.DevicePaddings.DevicePadding;
|
import com.android.launcher3.DevicePaddings.DevicePadding;
|
||||||
@@ -262,10 +263,10 @@ public class DeviceProfile {
|
|||||||
public boolean isTaskbarPresent;
|
public boolean isTaskbarPresent;
|
||||||
// Whether Taskbar will inset the bottom of apps by taskbarSize.
|
// Whether Taskbar will inset the bottom of apps by taskbarSize.
|
||||||
public boolean isTaskbarPresentInApps;
|
public boolean isTaskbarPresentInApps;
|
||||||
public int taskbarSize;
|
public final int taskbarHeight;
|
||||||
public int transientTaskbarSize;
|
public final int stashedTaskbarHeight;
|
||||||
public int stashedTaskbarSize;
|
public final int taskbarBottomMargin;
|
||||||
public int transientTaskbarMargin;
|
public final int taskbarIconSize;
|
||||||
|
|
||||||
// DragController
|
// DragController
|
||||||
public int flingToDeleteThresholdVelocity;
|
public int flingToDeleteThresholdVelocity;
|
||||||
@@ -328,17 +329,21 @@ public class DeviceProfile {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isTaskbarPresent) {
|
if (DisplayController.isTransientTaskbar(context)) {
|
||||||
transientTaskbarSize = res.getDimensionPixelSize(R.dimen.transient_taskbar_size);
|
float invTransientIconSizeDp = inv.transientTaskbarIconSize[mTypeIndex];
|
||||||
transientTaskbarMargin = res.getDimensionPixelSize(R.dimen.transient_taskbar_margin);
|
taskbarIconSize = pxFromDp(invTransientIconSizeDp, mMetrics);
|
||||||
if (DisplayController.isTransientTaskbar(context)) {
|
taskbarHeight = taskbarIconSize
|
||||||
taskbarSize = transientTaskbarSize;
|
+ (2 * res.getDimensionPixelSize(R.dimen.transient_taskbar_padding));
|
||||||
stashedTaskbarSize =
|
stashedTaskbarHeight =
|
||||||
res.getDimensionPixelSize(R.dimen.transient_taskbar_stashed_size);
|
res.getDimensionPixelSize(R.dimen.transient_taskbar_stashed_height);
|
||||||
} else {
|
taskbarBottomMargin =
|
||||||
taskbarSize = res.getDimensionPixelSize(R.dimen.taskbar_size);
|
res.getDimensionPixelSize(R.dimen.transient_taskbar_bottom_margin);
|
||||||
stashedTaskbarSize = res.getDimensionPixelSize(R.dimen.taskbar_stashed_size);
|
} else {
|
||||||
}
|
taskbarIconSize = pxFromDp(ResourcesCompat.getFloat(res, R.dimen.taskbar_icon_size),
|
||||||
|
mMetrics);
|
||||||
|
taskbarHeight = res.getDimensionPixelSize(R.dimen.taskbar_size);
|
||||||
|
stashedTaskbarHeight = res.getDimensionPixelSize(R.dimen.taskbar_stashed_size);
|
||||||
|
taskbarBottomMargin = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
edgeMarginPx = res.getDimensionPixelSize(R.dimen.dynamic_grid_edge_margin);
|
edgeMarginPx = res.getDimensionPixelSize(R.dimen.dynamic_grid_edge_margin);
|
||||||
@@ -1421,7 +1426,7 @@ public class DeviceProfile {
|
|||||||
* Returns the number of pixels the taskbar is translated from the bottom of the screen.
|
* Returns the number of pixels the taskbar is translated from the bottom of the screen.
|
||||||
*/
|
*/
|
||||||
public int getTaskbarOffsetY() {
|
public int getTaskbarOffsetY() {
|
||||||
int taskbarIconBottomSpace = (taskbarSize - iconSizePx) / 2;
|
int taskbarIconBottomSpace = (taskbarHeight - iconSizePx) / 2;
|
||||||
int launcherIconBottomSpace =
|
int launcherIconBottomSpace =
|
||||||
Math.min((hotseatCellHeightPx - iconSizePx) / 2, gridVisualizationPaddingY);
|
Math.min((hotseatCellHeightPx - iconSizePx) / 2, gridVisualizationPaddingY);
|
||||||
return getHotseatBarBottomPadding() + launcherIconBottomSpace - taskbarIconBottomSpace;
|
return getHotseatBarBottomPadding() + launcherIconBottomSpace - taskbarIconBottomSpace;
|
||||||
@@ -1432,7 +1437,7 @@ public class DeviceProfile {
|
|||||||
*/
|
*/
|
||||||
public int getOverviewActionsClaimedSpaceBelow() {
|
public int getOverviewActionsClaimedSpaceBelow() {
|
||||||
if (isTaskbarPresent) {
|
if (isTaskbarPresent) {
|
||||||
return transientTaskbarSize + transientTaskbarMargin * 2;
|
return taskbarHeight + taskbarBottomMargin * 2;
|
||||||
}
|
}
|
||||||
return mInsets.bottom;
|
return mInsets.bottom;
|
||||||
}
|
}
|
||||||
@@ -1470,7 +1475,7 @@ public class DeviceProfile {
|
|||||||
mInsets.top + availableHeightPx);
|
mInsets.top + availableHeightPx);
|
||||||
} else {
|
} else {
|
||||||
// Folders should only appear below the drop target bar and above the hotseat
|
// Folders should only appear below the drop target bar and above the hotseat
|
||||||
int hotseatTop = isTaskbarPresent ? taskbarSize : hotseatBarSizePx;
|
int hotseatTop = isTaskbarPresent ? taskbarHeight : hotseatBarSizePx;
|
||||||
return new Rect(mInsets.left + edgeMarginPx,
|
return new Rect(mInsets.left + edgeMarginPx,
|
||||||
mInsets.top + dropTargetBarSizePx + edgeMarginPx,
|
mInsets.top + dropTargetBarSizePx + edgeMarginPx,
|
||||||
mInsets.left + availableWidthPx - edgeMarginPx,
|
mInsets.left + availableWidthPx - edgeMarginPx,
|
||||||
@@ -1671,7 +1676,10 @@ public class DeviceProfile {
|
|||||||
|
|
||||||
writer.println(prefix + "\tisTaskbarPresent:" + isTaskbarPresent);
|
writer.println(prefix + "\tisTaskbarPresent:" + isTaskbarPresent);
|
||||||
writer.println(prefix + "\tisTaskbarPresentInApps:" + isTaskbarPresentInApps);
|
writer.println(prefix + "\tisTaskbarPresentInApps:" + isTaskbarPresentInApps);
|
||||||
writer.println(prefix + pxToDpStr("taskbarSize", taskbarSize));
|
writer.println(prefix + pxToDpStr("taskbarHeight", taskbarHeight));
|
||||||
|
writer.println(prefix + pxToDpStr("stashedTaskbarHeight", stashedTaskbarHeight));
|
||||||
|
writer.println(prefix + pxToDpStr("taskbarBottomMargin", taskbarBottomMargin));
|
||||||
|
writer.println(prefix + pxToDpStr("taskbarIconSize", taskbarIconSize));
|
||||||
|
|
||||||
writer.println(prefix + pxToDpStr("desiredWorkspaceHorizontalMarginPx",
|
writer.println(prefix + pxToDpStr("desiredWorkspaceHorizontalMarginPx",
|
||||||
desiredWorkspaceHorizontalMarginPx));
|
desiredWorkspaceHorizontalMarginPx));
|
||||||
|
|||||||
@@ -149,6 +149,8 @@ public class InvariantDeviceProfile {
|
|||||||
public float[] allAppsIconTextSize;
|
public float[] allAppsIconTextSize;
|
||||||
public PointF[] allAppsBorderSpaces;
|
public PointF[] allAppsBorderSpaces;
|
||||||
|
|
||||||
|
public float[] transientTaskbarIconSize;
|
||||||
|
|
||||||
private SparseArray<TypedValue> mExtraAttrs;
|
private SparseArray<TypedValue> mExtraAttrs;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -396,6 +398,8 @@ public class InvariantDeviceProfile {
|
|||||||
|
|
||||||
inlineQsb = closestProfile.inlineQsb;
|
inlineQsb = closestProfile.inlineQsb;
|
||||||
|
|
||||||
|
transientTaskbarIconSize = displayOption.transientTaskbarIconSize;
|
||||||
|
|
||||||
// If the partner customization apk contains any grid overrides, apply them
|
// If the partner customization apk contains any grid overrides, apply them
|
||||||
// Supported overrides: numRows, numColumns, iconSize
|
// Supported overrides: numRows, numColumns, iconSize
|
||||||
applyPartnerDeviceProfileOverrides(context, metrics);
|
applyPartnerDeviceProfileOverrides(context, metrics);
|
||||||
@@ -908,9 +912,13 @@ public class InvariantDeviceProfile {
|
|||||||
private final float[] allAppsIconTextSizes = new float[COUNT_SIZES];
|
private final float[] allAppsIconTextSizes = new float[COUNT_SIZES];
|
||||||
private final PointF[] allAppsBorderSpaces = new PointF[COUNT_SIZES];
|
private final PointF[] allAppsBorderSpaces = new PointF[COUNT_SIZES];
|
||||||
|
|
||||||
|
private final float[] transientTaskbarIconSize = new float[COUNT_SIZES];
|
||||||
|
|
||||||
DisplayOption(GridOption grid, Context context, AttributeSet attrs) {
|
DisplayOption(GridOption grid, Context context, AttributeSet attrs) {
|
||||||
this.grid = grid;
|
this.grid = grid;
|
||||||
|
|
||||||
|
Resources res = context.getResources();
|
||||||
|
|
||||||
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.ProfileDisplayOption);
|
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.ProfileDisplayOption);
|
||||||
|
|
||||||
minWidthDps = a.getFloat(R.styleable.ProfileDisplayOption_minWidthDps, 0);
|
minWidthDps = a.getFloat(R.styleable.ProfileDisplayOption_minWidthDps, 0);
|
||||||
@@ -1101,8 +1109,7 @@ public class InvariantDeviceProfile {
|
|||||||
|
|
||||||
hotseatBarBottomSpace[INDEX_DEFAULT] = a.getFloat(
|
hotseatBarBottomSpace[INDEX_DEFAULT] = a.getFloat(
|
||||||
R.styleable.ProfileDisplayOption_hotseatBarBottomSpace,
|
R.styleable.ProfileDisplayOption_hotseatBarBottomSpace,
|
||||||
ResourcesCompat.getFloat(context.getResources(),
|
ResourcesCompat.getFloat(res, R.dimen.hotseat_bar_bottom_space_default));
|
||||||
R.dimen.hotseat_bar_bottom_space_default));
|
|
||||||
hotseatBarBottomSpace[INDEX_LANDSCAPE] = a.getFloat(
|
hotseatBarBottomSpace[INDEX_LANDSCAPE] = a.getFloat(
|
||||||
R.styleable.ProfileDisplayOption_hotseatBarBottomSpaceLandscape,
|
R.styleable.ProfileDisplayOption_hotseatBarBottomSpaceLandscape,
|
||||||
hotseatBarBottomSpace[INDEX_DEFAULT]);
|
hotseatBarBottomSpace[INDEX_DEFAULT]);
|
||||||
@@ -1115,8 +1122,7 @@ public class InvariantDeviceProfile {
|
|||||||
|
|
||||||
hotseatQsbSpace[INDEX_DEFAULT] = a.getFloat(
|
hotseatQsbSpace[INDEX_DEFAULT] = a.getFloat(
|
||||||
R.styleable.ProfileDisplayOption_hotseatQsbSpace,
|
R.styleable.ProfileDisplayOption_hotseatQsbSpace,
|
||||||
ResourcesCompat.getFloat(context.getResources(),
|
ResourcesCompat.getFloat(res, R.dimen.hotseat_qsb_space_default));
|
||||||
R.dimen.hotseat_qsb_space_default));
|
|
||||||
hotseatQsbSpace[INDEX_LANDSCAPE] = a.getFloat(
|
hotseatQsbSpace[INDEX_LANDSCAPE] = a.getFloat(
|
||||||
R.styleable.ProfileDisplayOption_hotseatQsbSpaceLandscape,
|
R.styleable.ProfileDisplayOption_hotseatQsbSpaceLandscape,
|
||||||
hotseatQsbSpace[INDEX_DEFAULT]);
|
hotseatQsbSpace[INDEX_DEFAULT]);
|
||||||
@@ -1127,6 +1133,19 @@ public class InvariantDeviceProfile {
|
|||||||
R.styleable.ProfileDisplayOption_hotseatQsbSpaceTwoPanelPortrait,
|
R.styleable.ProfileDisplayOption_hotseatQsbSpaceTwoPanelPortrait,
|
||||||
hotseatQsbSpace[INDEX_DEFAULT]);
|
hotseatQsbSpace[INDEX_DEFAULT]);
|
||||||
|
|
||||||
|
transientTaskbarIconSize[INDEX_DEFAULT] = a.getFloat(
|
||||||
|
R.styleable.ProfileDisplayOption_transientTaskbarIconSize,
|
||||||
|
ResourcesCompat.getFloat(res, R.dimen.taskbar_icon_size));
|
||||||
|
transientTaskbarIconSize[INDEX_LANDSCAPE] = a.getFloat(
|
||||||
|
R.styleable.ProfileDisplayOption_transientTaskbarIconSizeLandscape,
|
||||||
|
transientTaskbarIconSize[INDEX_DEFAULT]);
|
||||||
|
transientTaskbarIconSize[INDEX_TWO_PANEL_LANDSCAPE] = a.getFloat(
|
||||||
|
R.styleable.ProfileDisplayOption_transientTaskbarIconSizeTwoPanelLandscape,
|
||||||
|
transientTaskbarIconSize[INDEX_DEFAULT]);
|
||||||
|
transientTaskbarIconSize[INDEX_TWO_PANEL_PORTRAIT] = a.getFloat(
|
||||||
|
R.styleable.ProfileDisplayOption_transientTaskbarIconSizeTwoPanelPortrait,
|
||||||
|
hotseatQsbSpace[INDEX_DEFAULT]);
|
||||||
|
|
||||||
a.recycle();
|
a.recycle();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1148,6 +1167,7 @@ public class InvariantDeviceProfile {
|
|||||||
allAppsIconSizes[i] = 0;
|
allAppsIconSizes[i] = 0;
|
||||||
allAppsIconTextSizes[i] = 0;
|
allAppsIconTextSizes[i] = 0;
|
||||||
allAppsBorderSpaces[i] = new PointF();
|
allAppsBorderSpaces[i] = new PointF();
|
||||||
|
transientTaskbarIconSize[i] = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1168,6 +1188,7 @@ public class InvariantDeviceProfile {
|
|||||||
allAppsIconTextSizes[i] *= w;
|
allAppsIconTextSizes[i] *= w;
|
||||||
allAppsBorderSpaces[i].x *= w;
|
allAppsBorderSpaces[i].x *= w;
|
||||||
allAppsBorderSpaces[i].y *= w;
|
allAppsBorderSpaces[i].y *= w;
|
||||||
|
transientTaskbarIconSize[i] *= w;
|
||||||
}
|
}
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
@@ -1190,6 +1211,7 @@ public class InvariantDeviceProfile {
|
|||||||
allAppsIconTextSizes[i] += p.allAppsIconTextSizes[i];
|
allAppsIconTextSizes[i] += p.allAppsIconTextSizes[i];
|
||||||
allAppsBorderSpaces[i].x += p.allAppsBorderSpaces[i].x;
|
allAppsBorderSpaces[i].x += p.allAppsBorderSpaces[i].x;
|
||||||
allAppsBorderSpaces[i].y += p.allAppsBorderSpaces[i].y;
|
allAppsBorderSpaces[i].y += p.allAppsBorderSpaces[i].y;
|
||||||
|
transientTaskbarIconSize[i] += p.transientTaskbarIconSize[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
|
|||||||
@@ -15,8 +15,6 @@
|
|||||||
*/
|
*/
|
||||||
package com.android.launcher3.allapps;
|
package com.android.launcher3.allapps;
|
||||||
|
|
||||||
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WORK_FAB_BUTTON_COLLAPSE;
|
|
||||||
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WORK_FAB_BUTTON_EXTEND;
|
|
||||||
import static com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip.getTabWidth;
|
import static com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip.getTabWidth;
|
||||||
|
|
||||||
import android.animation.LayoutTransition;
|
import android.animation.LayoutTransition;
|
||||||
@@ -116,7 +114,7 @@ public class WorkModeSwitch extends LinearLayout implements Insettable,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!dp.isGestureMode && dp.isTaskbarPresent) {
|
if (!dp.isGestureMode && dp.isTaskbarPresent) {
|
||||||
bottomMargin += dp.taskbarSize;
|
bottomMargin += dp.taskbarHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
lp.bottomMargin = bottomMargin;
|
lp.bottomMargin = bottomMargin;
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ object DimensionUtils {
|
|||||||
// Taskbar for large screen
|
// Taskbar for large screen
|
||||||
if (!isPhoneMode) {
|
if (!isPhoneMode) {
|
||||||
p.x = ViewGroup.LayoutParams.MATCH_PARENT
|
p.x = ViewGroup.LayoutParams.MATCH_PARENT
|
||||||
p.y = deviceProfile.taskbarSize
|
p.y = deviceProfile.taskbarHeight
|
||||||
return p
|
return p
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -559,7 +559,7 @@ public abstract class BaseDragLayer<T extends Context & ActivityContext>
|
|||||||
DeviceProfile dp = mActivity.getDeviceProfile();
|
DeviceProfile dp = mActivity.getDeviceProfile();
|
||||||
if (dp.isTaskbarPresent) {
|
if (dp.isTaskbarPresent) {
|
||||||
// Ignore taskbar gesture insets to avoid interfering with TouchControllers.
|
// Ignore taskbar gesture insets to avoid interfering with TouchControllers.
|
||||||
gestureInsetBottom = Math.max(0, gestureInsetBottom - dp.taskbarSize);
|
gestureInsetBottom = Math.max(0, gestureInsetBottom - dp.taskbarHeight);
|
||||||
}
|
}
|
||||||
mSystemGestureRegion.set(
|
mSystemGestureRegion.set(
|
||||||
Math.max(gestureInsets.left, imeInset.left),
|
Math.max(gestureInsets.left, imeInset.left),
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ public class Snackbar extends AbstractFloatingView {
|
|||||||
DeviceProfile deviceProfile = activity.getDeviceProfile();
|
DeviceProfile deviceProfile = activity.getDeviceProfile();
|
||||||
params.setMargins(0, 0, 0, marginBottom
|
params.setMargins(0, 0, 0, marginBottom
|
||||||
+ (deviceProfile.isTaskbarPresent
|
+ (deviceProfile.isTaskbarPresent
|
||||||
? deviceProfile.taskbarSize + deviceProfile.getTaskbarOffsetY()
|
? deviceProfile.taskbarHeight + deviceProfile.getTaskbarOffsetY()
|
||||||
: insets.bottom));
|
: insets.bottom));
|
||||||
|
|
||||||
TextView labelView = snackbar.findViewById(R.id.label);
|
TextView labelView = snackbar.findViewById(R.id.label);
|
||||||
|
|||||||
@@ -126,7 +126,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:false\n" +
|
"\tisTaskbarPresentInApps:false\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.left: 0.0px (0.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -258,7 +261,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:false\n" +
|
"\tisTaskbarPresentInApps:false\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.left: 0.0px (0.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -390,7 +396,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:false\n" +
|
"\tisTaskbarPresentInApps:false\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 0.0px (0.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 0.0px (0.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 10.0px (3.8095238dp)\n" +
|
"\tworkspacePadding.left: 10.0px (3.8095238dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -522,7 +531,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:false\n" +
|
"\tisTaskbarPresentInApps:false\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 0.0px (0.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 0.0px (0.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 10.0px (3.8095238dp)\n" +
|
"\tworkspacePadding.left: 10.0px (3.8095238dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -655,7 +667,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 1224.0px (612.0dp)\n" +
|
"\thotseatQsbWidth: 1224.0px (612.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 240.0px (120.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 240.0px (120.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 181.0px (90.5dp)\n" +
|
"\tworkspacePadding.left: 181.0px (90.5dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -788,7 +803,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 1224.0px (612.0dp)\n" +
|
"\thotseatQsbWidth: 1224.0px (612.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 240.0px (120.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 240.0px (120.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 181.0px (90.5dp)\n" +
|
"\tworkspacePadding.left: 181.0px (90.5dp)\n" +
|
||||||
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
"\tworkspacePadding.top: 0.0px (0.0dp)\n" +
|
||||||
@@ -921,7 +939,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 1300.0px (650.0dp)\n" +
|
"\thotseatQsbWidth: 1300.0px (650.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 108.0px (54.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 108.0px (54.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 36.0px (18.0dp)\n" +
|
"\tworkspacePadding.left: 36.0px (18.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 132.0px (66.0dp)\n" +
|
"\tworkspacePadding.top: 132.0px (66.0dp)\n" +
|
||||||
@@ -1054,7 +1075,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 1300.0px (650.0dp)\n" +
|
"\thotseatQsbWidth: 1300.0px (650.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 108.0px (54.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 108.0px (54.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 36.0px (18.0dp)\n" +
|
"\tworkspacePadding.left: 36.0px (18.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 132.0px (66.0dp)\n" +
|
"\tworkspacePadding.top: 132.0px (66.0dp)\n" +
|
||||||
@@ -1192,7 +1216,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 30.0px (11.428572dp)\n" +
|
"\tworkspacePadding.top: 30.0px (11.428572dp)\n" +
|
||||||
@@ -1329,7 +1356,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 30.0px (11.428572dp)\n" +
|
"\tworkspacePadding.top: 30.0px (11.428572dp)\n" +
|
||||||
@@ -1466,7 +1496,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 24.0px (9.142858dp)\n" +
|
"\tworkspacePadding.top: 24.0px (9.142858dp)\n" +
|
||||||
@@ -1599,7 +1632,10 @@ class DeviceProfileDumpTest : AbstractDeviceProfileTest() {
|
|||||||
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
"\thotseatQsbWidth: 0.0px (0.0dp)\n" +
|
||||||
"\tisTaskbarPresent:false\n" +
|
"\tisTaskbarPresent:false\n" +
|
||||||
"\tisTaskbarPresentInApps:true\n" +
|
"\tisTaskbarPresentInApps:true\n" +
|
||||||
"\ttaskbarSize: 0.0px (0.0dp)\n" +
|
"\ttaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\tstashedTaskbarHeight: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarBottomMargin: 0.0px (0.0dp)\n" +
|
||||||
|
"\ttaskbarIconSize: 0.0px (0.0dp)\n" +
|
||||||
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
"\tdesiredWorkspaceHorizontalMarginPx: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
"\tworkspacePadding.left: 21.0px (8.0dp)\n" +
|
||||||
"\tworkspacePadding.top: 24.0px (9.142858dp)\n" +
|
"\tworkspacePadding.top: 24.0px (9.142858dp)\n" +
|
||||||
|
|||||||
Reference in New Issue
Block a user