Merge "Makes TYPE_NOTIFICATION_SHADE as trusted overlay" into rvc-dev

This commit is contained in:
Wei Sheng Shih 2020-05-07 01:37:07 +00:00 committed by Android (Google) Code Review
commit 7fb7a6a1a5
2 changed files with 48 additions and 48 deletions

View file

@ -68,46 +68,47 @@ struct InputWindowInfo {
// Window types from WindowManager.LayoutParams
enum {
FIRST_APPLICATION_WINDOW = 1,
TYPE_BASE_APPLICATION = 1,
TYPE_APPLICATION = 2,
TYPE_BASE_APPLICATION = 1,
TYPE_APPLICATION = 2,
TYPE_APPLICATION_STARTING = 3,
LAST_APPLICATION_WINDOW = 99,
FIRST_SUB_WINDOW = 1000,
TYPE_APPLICATION_PANEL = FIRST_SUB_WINDOW,
TYPE_APPLICATION_MEDIA = FIRST_SUB_WINDOW+1,
TYPE_APPLICATION_SUB_PANEL = FIRST_SUB_WINDOW+2,
TYPE_APPLICATION_ATTACHED_DIALOG = FIRST_SUB_WINDOW+3,
TYPE_APPLICATION_MEDIA_OVERLAY = FIRST_SUB_WINDOW+4,
LAST_SUB_WINDOW = 1999,
FIRST_SYSTEM_WINDOW = 2000,
TYPE_STATUS_BAR = FIRST_SYSTEM_WINDOW,
TYPE_SEARCH_BAR = FIRST_SYSTEM_WINDOW+1,
TYPE_PHONE = FIRST_SYSTEM_WINDOW+2,
TYPE_SYSTEM_ALERT = FIRST_SYSTEM_WINDOW+3,
TYPE_KEYGUARD = FIRST_SYSTEM_WINDOW+4,
TYPE_TOAST = FIRST_SYSTEM_WINDOW+5,
TYPE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW+6,
TYPE_PRIORITY_PHONE = FIRST_SYSTEM_WINDOW+7,
TYPE_SYSTEM_DIALOG = FIRST_SYSTEM_WINDOW+8,
TYPE_KEYGUARD_DIALOG = FIRST_SYSTEM_WINDOW+9,
TYPE_SYSTEM_ERROR = FIRST_SYSTEM_WINDOW+10,
TYPE_INPUT_METHOD = FIRST_SYSTEM_WINDOW+11,
TYPE_INPUT_METHOD_DIALOG= FIRST_SYSTEM_WINDOW+12,
TYPE_WALLPAPER = FIRST_SYSTEM_WINDOW+13,
TYPE_STATUS_BAR_PANEL = FIRST_SYSTEM_WINDOW+14,
TYPE_SECURE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW+15,
TYPE_DRAG = FIRST_SYSTEM_WINDOW+16,
TYPE_STATUS_BAR_SUB_PANEL = FIRST_SYSTEM_WINDOW+17,
TYPE_POINTER = FIRST_SYSTEM_WINDOW+18,
TYPE_NAVIGATION_BAR = FIRST_SYSTEM_WINDOW+19,
TYPE_VOLUME_OVERLAY = FIRST_SYSTEM_WINDOW+20,
TYPE_BOOT_PROGRESS = FIRST_SYSTEM_WINDOW+21,
TYPE_INPUT_CONSUMER = FIRST_SYSTEM_WINDOW+22,
TYPE_NAVIGATION_BAR_PANEL = FIRST_SYSTEM_WINDOW+24,
TYPE_MAGNIFICATION_OVERLAY = FIRST_SYSTEM_WINDOW+27,
TYPE_ACCESSIBILITY_OVERLAY = FIRST_SYSTEM_WINDOW+32,
TYPE_DOCK_DIVIDER = FIRST_SYSTEM_WINDOW+34,
LAST_SYSTEM_WINDOW = 2999,
FIRST_SUB_WINDOW = 1000,
TYPE_APPLICATION_PANEL = FIRST_SUB_WINDOW,
TYPE_APPLICATION_MEDIA = FIRST_SUB_WINDOW + 1,
TYPE_APPLICATION_SUB_PANEL = FIRST_SUB_WINDOW + 2,
TYPE_APPLICATION_ATTACHED_DIALOG = FIRST_SUB_WINDOW + 3,
TYPE_APPLICATION_MEDIA_OVERLAY = FIRST_SUB_WINDOW + 4,
LAST_SUB_WINDOW = 1999,
FIRST_SYSTEM_WINDOW = 2000,
TYPE_STATUS_BAR = FIRST_SYSTEM_WINDOW,
TYPE_SEARCH_BAR = FIRST_SYSTEM_WINDOW + 1,
TYPE_PHONE = FIRST_SYSTEM_WINDOW + 2,
TYPE_SYSTEM_ALERT = FIRST_SYSTEM_WINDOW + 3,
TYPE_KEYGUARD = FIRST_SYSTEM_WINDOW + 4,
TYPE_TOAST = FIRST_SYSTEM_WINDOW + 5,
TYPE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW + 6,
TYPE_PRIORITY_PHONE = FIRST_SYSTEM_WINDOW + 7,
TYPE_SYSTEM_DIALOG = FIRST_SYSTEM_WINDOW + 8,
TYPE_KEYGUARD_DIALOG = FIRST_SYSTEM_WINDOW + 9,
TYPE_SYSTEM_ERROR = FIRST_SYSTEM_WINDOW + 10,
TYPE_INPUT_METHOD = FIRST_SYSTEM_WINDOW + 11,
TYPE_INPUT_METHOD_DIALOG = FIRST_SYSTEM_WINDOW + 12,
TYPE_WALLPAPER = FIRST_SYSTEM_WINDOW + 13,
TYPE_STATUS_BAR_PANEL = FIRST_SYSTEM_WINDOW + 14,
TYPE_SECURE_SYSTEM_OVERLAY = FIRST_SYSTEM_WINDOW + 15,
TYPE_DRAG = FIRST_SYSTEM_WINDOW + 16,
TYPE_STATUS_BAR_SUB_PANEL = FIRST_SYSTEM_WINDOW + 17,
TYPE_POINTER = FIRST_SYSTEM_WINDOW + 18,
TYPE_NAVIGATION_BAR = FIRST_SYSTEM_WINDOW + 19,
TYPE_VOLUME_OVERLAY = FIRST_SYSTEM_WINDOW + 20,
TYPE_BOOT_PROGRESS = FIRST_SYSTEM_WINDOW + 21,
TYPE_INPUT_CONSUMER = FIRST_SYSTEM_WINDOW + 22,
TYPE_NAVIGATION_BAR_PANEL = FIRST_SYSTEM_WINDOW + 24,
TYPE_MAGNIFICATION_OVERLAY = FIRST_SYSTEM_WINDOW + 27,
TYPE_ACCESSIBILITY_OVERLAY = FIRST_SYSTEM_WINDOW + 32,
TYPE_DOCK_DIVIDER = FIRST_SYSTEM_WINDOW + 34,
TYPE_NOTIFICATION_SHADE = FIRST_SYSTEM_WINDOW + 40,
LAST_SYSTEM_WINDOW = 2999,
};
enum {

View file

@ -43,16 +43,15 @@ bool InputWindowInfo::frameContainsPoint(int32_t x, int32_t y) const {
}
bool InputWindowInfo::isTrustedOverlay() const {
return layoutParamsType == TYPE_INPUT_METHOD
|| layoutParamsType == TYPE_INPUT_METHOD_DIALOG
|| layoutParamsType == TYPE_MAGNIFICATION_OVERLAY
|| layoutParamsType == TYPE_STATUS_BAR
|| layoutParamsType == TYPE_NAVIGATION_BAR
|| layoutParamsType == TYPE_NAVIGATION_BAR_PANEL
|| layoutParamsType == TYPE_SECURE_SYSTEM_OVERLAY
|| layoutParamsType == TYPE_DOCK_DIVIDER
|| layoutParamsType == TYPE_ACCESSIBILITY_OVERLAY
|| layoutParamsType == TYPE_INPUT_CONSUMER;
return layoutParamsType == TYPE_INPUT_METHOD || layoutParamsType == TYPE_INPUT_METHOD_DIALOG ||
layoutParamsType == TYPE_MAGNIFICATION_OVERLAY || layoutParamsType == TYPE_STATUS_BAR ||
layoutParamsType == TYPE_NOTIFICATION_SHADE ||
layoutParamsType == TYPE_NAVIGATION_BAR ||
layoutParamsType == TYPE_NAVIGATION_BAR_PANEL ||
layoutParamsType == TYPE_SECURE_SYSTEM_OVERLAY ||
layoutParamsType == TYPE_DOCK_DIVIDER ||
layoutParamsType == TYPE_ACCESSIBILITY_OVERLAY ||
layoutParamsType == TYPE_INPUT_CONSUMER;
}
bool InputWindowInfo::supportsSplitTouch() const {