refactor input_os_password
This commit is contained in:
parent
799df2d77a
commit
0f029545a4
@ -236,6 +236,9 @@ class _HomePageState extends State<HomePage> {
|
||||
);
|
||||
if (value == 'remove') {
|
||||
setState(() => FFI.setByName('remove', '${p.id}'));
|
||||
() async {
|
||||
removePreference(p.id);
|
||||
}();
|
||||
}
|
||||
}();
|
||||
},
|
||||
|
@ -711,6 +711,12 @@ Future<Map<String, dynamic>> getPreference(String id) async {
|
||||
return m;
|
||||
}
|
||||
|
||||
void removePreference(String id) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
prefs.remove('peer' + id);
|
||||
prefs.remove('peer' + id + '-password');
|
||||
}
|
||||
|
||||
Future<String> getPassword(String id) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
var p = prefs.getString('peer' + id + '-password');
|
||||
@ -721,6 +727,19 @@ Future<String> getPassword(String id) async {
|
||||
void savePassword(String id, String password) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
prefs.setString('peer' + id + '-password', password);
|
||||
prefs.setString('peer' + id + '-autologin', password);
|
||||
}
|
||||
|
||||
Future<bool> getAutoLogin(String id) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
var p = prefs.getString('peer' + id + '-autologin');
|
||||
if (p == null) return false;
|
||||
return p != "";
|
||||
}
|
||||
|
||||
void saveAutoLogin(String id, bool a) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
prefs.setString('peer' + id + '-autologin', a ? 'Y' : '');
|
||||
}
|
||||
|
||||
void initializeCursorAndCanvas() async {
|
||||
|
@ -233,6 +233,7 @@ class _RemotePageState extends State<RemotePage> {
|
||||
setState(() {
|
||||
_mouseTools = !_mouseTools;
|
||||
resetTool();
|
||||
if (_mouseTools) _drag = true;
|
||||
});
|
||||
},
|
||||
)),
|
||||
@ -300,6 +301,7 @@ class _RemotePageState extends State<RemotePage> {
|
||||
_drag = false;
|
||||
_scroll = false;
|
||||
_right = false;
|
||||
_mouseTools = false;
|
||||
});
|
||||
} else if (_scroll) {
|
||||
var dy = (_yOffset - _yOffset0) / 10;
|
||||
@ -837,13 +839,26 @@ void showActions(BuildContext context) {
|
||||
void showSetOSPassword(BuildContext context) async {
|
||||
final controller = TextEditingController();
|
||||
var password = await getPassword(FFI.id);
|
||||
var autoLogin = await getAutoLogin(FFI.id);
|
||||
controller.text = password;
|
||||
showAlertDialog(
|
||||
context,
|
||||
(setState) => Tuple3(
|
||||
Text(translate('Password Required')),
|
||||
Text(translate('OS Password')),
|
||||
Column(mainAxisSize: MainAxisSize.min, children: [
|
||||
PasswordWidget(controller: controller),
|
||||
CheckboxListTile(
|
||||
contentPadding: const EdgeInsets.all(0),
|
||||
dense: true,
|
||||
controlAffinity: ListTileControlAffinity.leading,
|
||||
title: Text(
|
||||
translate('Auto Login'),
|
||||
),
|
||||
value: autoLogin,
|
||||
onChanged: (v) {
|
||||
setState(() => autoLogin = v);
|
||||
},
|
||||
),
|
||||
]),
|
||||
[
|
||||
TextButton(
|
||||
|
Loading…
x
Reference in New Issue
Block a user