Create common method for unlockScreen function

pull/627/head
Nam Nguyen 5 years ago
parent 97cf253c64
commit 8c97f6e2bb

@ -18,6 +18,7 @@ import com.android.datetimepicker.time.TimePickerDialog;
import org.isoron.uhabits.*;
import org.isoron.uhabits.core.models.*;
import org.isoron.uhabits.receivers.*;
import org.isoron.uhabits.utils.*;
import java.util.*;
@ -46,13 +47,6 @@ public class SnoozeDelayPickerActivity extends FragmentActivity
habit = appComponent.getHabitList().getById(parseId(getIntent().getData()));
if (habit == null) finish();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
KeyguardManager km = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
km.requestDismissKeyguard(this, null);
} else {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
}
int theme = R.style.Theme_AppCompat_Light_Dialog_Alert;
dialog = new AlertDialog.Builder(new ContextThemeWrapper(this, theme))
.setTitle(R.string.select_snooze_delay)
@ -62,6 +56,8 @@ public class SnoozeDelayPickerActivity extends FragmentActivity
dialog.getListView().setOnItemClickListener(this);
dialog.setOnDismissListener(d -> finish());
dialog.show();
SystemUtils.unlockScreen(this);
}
private void showTimePicker()

@ -0,0 +1,26 @@
package org.isoron.uhabits.utils;
import android.app.*;
import android.content.*;
import android.os.*;
import android.view.*;
public class SystemUtils
{
public static boolean isAndroidOOrLater()
{
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O;
}
public static void unlockScreen(Activity activity)
{
if (isAndroidOOrLater()) {
KeyguardManager km =
(KeyguardManager) activity.getSystemService(Context.KEYGUARD_SERVICE);
km.requestDismissKeyguard(activity, null);
} else {
activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
}
}
}

@ -30,6 +30,7 @@ import org.isoron.uhabits.activities.common.dialogs.*
import org.isoron.uhabits.core.ui.screens.habits.list.*
import org.isoron.uhabits.core.ui.widgets.*
import org.isoron.uhabits.intents.*
import org.isoron.uhabits.utils.*
import org.isoron.uhabits.widgets.*
class NumericalCheckmarkWidgetActivity : Activity(), ListHabitsBehavior.NumberPickerCallback {
@ -52,12 +53,7 @@ class NumericalCheckmarkWidgetActivity : Activity(), ListHabitsBehavior.NumberPi
widgetUpdater = component.widgetUpdater
showNumberSelector(this)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
val km = getSystemService(KEYGUARD_SERVICE) as KeyguardManager
km.requestDismissKeyguard(this, null)
} else {
window.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD)
}
SystemUtils.unlockScreen(this)
}
override fun onNumberPicked(newValue: Double) {

Loading…
Cancel
Save