feat: add setting for auto-lock fix: fix sideswipe
This commit is contained in:
@@ -27,6 +27,8 @@ class _KoolTabAppState extends State<KoolTabApp> {
|
||||
|
||||
_lifecycleLockObserver = AppLifecycleLockObserver(
|
||||
onLock: () => context.read<PinLockViewModel>().lock(),
|
||||
shouldLock: () =>
|
||||
context.read<SettingsViewModel>().settings.autoLockEnabled,
|
||||
);
|
||||
WidgetsBinding.instance.addObserver(_lifecycleLockObserver);
|
||||
|
||||
|
||||
@@ -2,8 +2,9 @@ import 'package:flutter/material.dart';
|
||||
|
||||
class AppLifecycleLockObserver extends WidgetsBindingObserver {
|
||||
final VoidCallback onLock;
|
||||
final bool Function()? shouldLock;
|
||||
|
||||
AppLifecycleLockObserver({required this.onLock});
|
||||
AppLifecycleLockObserver({required this.onLock, this.shouldLock});
|
||||
|
||||
@override
|
||||
void didChangeAppLifecycleState(AppLifecycleState state) {
|
||||
@@ -12,7 +13,7 @@ class AppLifecycleLockObserver extends WidgetsBindingObserver {
|
||||
case AppLifecycleState.hidden:
|
||||
case AppLifecycleState.paused:
|
||||
case AppLifecycleState.detached:
|
||||
onLock();
|
||||
if (shouldLock?.call() ?? true) onLock();
|
||||
case AppLifecycleState.resumed:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user