From 2debc0a8493a1b4fa31a1daaa33c60b887689e5f Mon Sep 17 00:00:00 2001 From: Pierre Barbier de Reuille Date: Wed, 19 May 2021 10:05:51 +0100 Subject: [PATCH] Correct AppWidget layout when WP is off When the work profile (WP) is off, the layout of the widget is provided by the system. The layout must have a background with android:id/background as view id and clip its outline, or it will be considered "legacy" and have the wrong outline when moved. Bug: 187907544 Test: Add a widget for the WP and turn the WP off. Change-Id: Ibee31f5f0e510313ae7f8dc78c208c45a4d0e1fd --- core/res/res/layout/work_widget_mask_view.xml | 5 +++-- core/res/res/values/symbols.xml | 1 - .../com/android/server/appwidget/AppWidgetServiceImpl.java | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/res/res/layout/work_widget_mask_view.xml b/core/res/res/layout/work_widget_mask_view.xml index 86c5d13ede40f..a6fb17aa4f6db 100644 --- a/core/res/res/layout/work_widget_mask_view.xml +++ b/core/res/res/layout/work_widget_mask_view.xml @@ -15,12 +15,13 @@ Copyright (C) 2015 The Android Open Source Project limitations under the License. --> + android:clickable="true" + android:clipToOutline="true"> - diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java index 85084f497807c..13340ba06a5b2 100644 --- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java +++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java @@ -554,7 +554,7 @@ class AppWidgetServiceImpl extends IAppWidgetService.Stub implements WidgetBacku } if (onClickIntent != null) { - views.setOnClickPendingIntent(R.id.work_widget_mask_frame, + views.setOnClickPendingIntent(android.R.id.background, PendingIntent.getActivity(mContext, 0, onClickIntent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE)); }