diff --git a/services/core/java/com/android/server/SensorPrivacyService.java b/services/core/java/com/android/server/SensorPrivacyService.java index c07d6690e5a0f..a85ea72809136 100644 --- a/services/core/java/com/android/server/SensorPrivacyService.java +++ b/services/core/java/com/android/server/SensorPrivacyService.java @@ -58,6 +58,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.pm.PackageManager; +import android.content.res.Configuration; import android.graphics.drawable.Icon; import android.hardware.ISensorPrivacyListener; import android.hardware.ISensorPrivacyManager; @@ -602,9 +603,19 @@ public final class SensorPrivacyService extends SystemService { new Intent(Settings.ACTION_PRIVACY_SETTINGS), PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT)) + .extend(new Notification.TvExtender()) + .setTimeoutAfter(isTelevision(mContext) + ? /* dismiss immediately */ 1 + : /* no timeout */ 0) .build()); } + private boolean isTelevision(Context context) { + int uiMode = context.getResources().getConfiguration().uiMode; + return (uiMode & Configuration.UI_MODE_TYPE_MASK) + == Configuration.UI_MODE_TYPE_TELEVISION; + } + /** * Sets the sensor privacy to the provided state and notifies all listeners of the new * state.