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