Add the max height restriction into the illustration view.

Bug: 191721423
Test: manual test
Change-Id: I3829ead500eaf586f6d543855690ee8f0d0913ff
This commit is contained in:
Peter_Liang
2021-09-11 15:16:35 +08:00
parent d24f289548
commit af5f355b35
2 changed files with 28 additions and 0 deletions

View File

@@ -17,16 +17,22 @@
package com.android.settings.accessibility;
import static android.provider.Settings.Secure.ACCESSIBILITY_BUTTON_MODE_FLOATING_MENU;
import static android.view.WindowInsets.Type.displayCutout;
import static android.view.WindowInsets.Type.systemBars;
import static android.view.WindowManagerPolicyConstants.NAV_BAR_MODE_GESTURAL;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.content.ComponentName;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.Insets;
import android.graphics.Rect;
import android.os.Build;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.TypedValue;
import android.view.WindowManager;
import android.view.WindowMetrics;
import android.view.accessibility.AccessibilityManager;
import androidx.annotation.IntDef;
@@ -390,6 +396,25 @@ final class AccessibilityUtil {
resources.getDisplayMetrics()));
}
/**
* Gets the bounds of the display window excluding the insets of the system bar and display
* cut out.
*
* @param context the current context.
* @return the bounds of the display window.
*/
public static Rect getDisplayBounds(Context context) {
final WindowManager windowManager = context.getSystemService(WindowManager.class);
final WindowMetrics metrics = windowManager.getCurrentWindowMetrics();
final Rect displayBounds = metrics.getBounds();
final Insets displayInsets = metrics.getWindowInsets().getInsetsIgnoringVisibility(
systemBars() | displayCutout());
displayBounds.inset(displayInsets);
return displayBounds;
}
/**
* Indicates if the accessibility service belongs to a system App.
* @param info AccessibilityServiceInfo