diff options
author | Jack Yu <jackyu@google.com> | 2020-02-13 16:04:41 -0800 |
---|---|---|
committer | Jack Yu <jackyu@google.com> | 2020-06-04 11:45:05 -0700 |
commit | a4e668dac5426f09b0fec7d5b27734a446f7c2bd (patch) | |
tree | fd98bf686f8e071c9c5c0108d8f863506bad26e6 | |
parent | c076e216eb208a08cc08b02b867c46b29867ae05 (diff) | |
download | CellBroadcastReceiver-a4e668dac5426f09b0fec7d5b27734a446f7c2bd.tar.gz |
Disallow overlay on top of all emergency alert UX
Applied SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS to
all emergency alert related activities.
Test: Manual test
Bug: 144507081
Bug: 156196966
Change-Id: Ib31615a12b3aa0d37f05701b19a715b02b40534a
5 files changed, 26 insertions, 0 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml index dd4d7ca2f..a7ec9dc5a 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -36,6 +36,7 @@ <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND" /> <uses-permission android:name="android.permission.READ_CELL_BROADCASTS" /> <uses-permission android:name="android.permission.READ_SMS" /> + <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/> <uses-permission android:name="com.android.cellbroadcastservice.FULL_ACCESS_CELL_BROADCAST_HISTORY" /> <uses-sdk android:minSdkVersion="21"/> diff --git a/AndroidManifest_Platform.xml b/AndroidManifest_Platform.xml index 7d17b055b..69d443f57 100644 --- a/AndroidManifest_Platform.xml +++ b/AndroidManifest_Platform.xml @@ -33,6 +33,7 @@ <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND" /> <uses-permission android:name="android.permission.READ_CELL_BROADCASTS" /> <uses-permission android:name="android.permission.READ_SMS" /> + <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/> <uses-permission android:name="com.android.cellbroadcastservice.FULL_ACCESS_CELL_BROADCAST_HISTORY" /> <uses-sdk android:minSdkVersion="21"/> diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertDialog.java b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertDialog.java index 160d54cf0..fd24887c7 100644 --- a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertDialog.java +++ b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertDialog.java @@ -352,6 +352,14 @@ public class CellBroadcastAlertDialog extends Activity { } } + @Override + public void onStart() { + super.onStart(); + getWindow().addSystemFlags( + android.view.WindowManager.LayoutParams + .SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); + } + /** * Start animating warning icon. */ diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastListActivity.java b/src/com/android/cellbroadcastreceiver/CellBroadcastListActivity.java index 2f68db6b9..39192a0dd 100644 --- a/src/com/android/cellbroadcastreceiver/CellBroadcastListActivity.java +++ b/src/com/android/cellbroadcastreceiver/CellBroadcastListActivity.java @@ -16,6 +16,8 @@ package com.android.cellbroadcastreceiver; +import static android.view.WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS; + import android.annotation.Nullable; import android.app.ActionBar; import android.app.Activity; @@ -86,6 +88,12 @@ public class CellBroadcastListActivity extends Activity { } @Override + public void onStart() { + super.onStart(); + getWindow().addSystemFlags(SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); + } + + @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java b/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java index 7fd57ecda..679e75437 100644 --- a/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java +++ b/src/com/android/cellbroadcastreceiver/CellBroadcastSettings.java @@ -161,6 +161,14 @@ public class CellBroadcastSettings extends Activity { } @Override + public void onStart() { + super.onStart(); + getWindow().addSystemFlags( + android.view.WindowManager.LayoutParams + .SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS); + } + + @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button |