Merge "Do not allow draw on top for App notification settings" into oc-dev

This commit is contained in:
TreeHugger Robot
2019-05-30 01:14:19 +00:00
committed by Android (Google) Code Review

View File

@@ -21,6 +21,8 @@ import static android.app.NotificationManager.IMPORTANCE_NONE;
import static android.app.NotificationManager.IMPORTANCE_UNSPECIFIED; import static android.app.NotificationManager.IMPORTANCE_UNSPECIFIED;
import android.app.Activity; import android.app.Activity;
import static android.view.WindowManager.LayoutParams.PRIVATE_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS;
import android.app.NotificationChannel; import android.app.NotificationChannel;
import android.app.NotificationChannelGroup; import android.app.NotificationChannelGroup;
import android.app.NotificationManager; import android.app.NotificationManager;
@@ -36,6 +38,8 @@ import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.widget.Switch; import android.widget.Switch;
import android.view.Window;
import android.view.WindowManager;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.AppHeader; import com.android.settings.AppHeader;
@@ -77,6 +81,9 @@ public class AppNotificationSettings extends NotificationSettingsBase {
public void onResume() { public void onResume() {
super.onResume(); super.onResume();
getActivity().getWindow().addPrivateFlags(PRIVATE_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS);
android.util.EventLog.writeEvent(0x534e4554, "119115683", -1, "");
if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null) { if (mUid < 0 || TextUtils.isEmpty(mPkg) || mPkgInfo == null) {
Log.w(TAG, "Missing package or uid or packageinfo"); Log.w(TAG, "Missing package or uid or packageinfo");
finish(); finish();
@@ -126,6 +133,15 @@ public class AppNotificationSettings extends NotificationSettingsBase {
updateDependents(mAppRow.banned); updateDependents(mAppRow.banned);
} }
@Override
public void onPause() {
super.onPause();
final Window window = getActivity().getWindow();
final WindowManager.LayoutParams attrs = window.getAttributes();
attrs.privateFlags &= ~PRIVATE_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS;
window.setAttributes(attrs);
}
private void addHeaderPref() { private void addHeaderPref() {
ArrayMap<String, AppRow> rows = new ArrayMap<String, AppRow>(); ArrayMap<String, AppRow> rows = new ArrayMap<String, AppRow>();
rows.put(mAppRow.pkg, mAppRow); rows.put(mAppRow.pkg, mAppRow);