15c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk/*
25c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * Copyright (C) 2015 The Android Open Source Project
35c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk *
45c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * Licensed under the Apache License, Version 2.0 (the "License");
55c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * you may not use this file except in compliance with the License.
65c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * You may obtain a copy of the License at
75c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk *
85c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk *      http://www.apache.org/licenses/LICENSE-2.0
95c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk *
105c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * Unless required by applicable law or agreed to in writing, software
115c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * distributed under the License is distributed on an "AS IS" BASIS,
125c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * See the License for the specific language governing permissions and
145c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk * limitations under the License.
155c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk */
16ef861375eebd9ac6cce7c0bb163380ab1c951063Svetoslav
175c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkpackage com.android.packageinstaller.permission.ui;
185c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
195c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.app.Activity;
205c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.app.AlertDialog;
215c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.content.ActivityNotFoundException;
225c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.content.DialogInterface;
235c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.content.DialogInterface.OnClickListener;
245c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.content.DialogInterface.OnDismissListener;
255c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.content.Intent;
265c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.os.Bundle;
275c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.provider.Settings;
285c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport android.util.Log;
295c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
305c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkimport com.android.packageinstaller.R;
315c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
325c07dcb0698725e7949b030665d21f96c916f3b8Jason Monkpublic class OverlayWarningDialog extends Activity implements OnClickListener, OnDismissListener {
335c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
345c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    private static final String TAG = "OverlayWarningDialog";
355c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
365c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    @Override
375c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    protected void onCreate(Bundle savedInstanceState) {
385c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        super.onCreate(savedInstanceState);
395c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
405c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        new AlertDialog.Builder(this)
415c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk                .setTitle(R.string.screen_overlay_title)
425c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk                .setMessage(R.string.screen_overlay_message)
435c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk                .setPositiveButton(R.string.screen_overlay_button, this)
445c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk                .setOnDismissListener(this)
455c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk                .show();
465c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    }
475c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
485c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    @Override
495c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    public void onDismiss(DialogInterface dialog) {
505c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        finish();
515c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    }
525c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
535c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    @Override
545c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    public void onClick(DialogInterface dialog, int which) {
555c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        finish();
565c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        try {
575c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk            startActivity(new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION));
585c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        } catch (ActivityNotFoundException e) {
595c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk            Log.w(TAG, "No manage overlay settings", e);
605c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk        }
615c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk    }
625c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk
635c07dcb0698725e7949b030665d21f96c916f3b8Jason Monk}
64