feat: implement dialog callback

This commit is contained in:
Kingtous
2023-05-08 12:34:19 +08:00
parent 19f81ad317
commit 77fa807b57
55 changed files with 734 additions and 554 deletions

View File

@@ -224,7 +224,7 @@ class _AddressBookState extends State<AddressBook> {
final style = TextStyle(fontSize: 14.0);
String? errorMsg;
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
setState(() {
isInProgress = true;
@@ -334,7 +334,7 @@ class _AddressBookState extends State<AddressBook> {
var msg = "";
var isInProgress = false;
TextEditingController controller = TextEditingController(text: field);
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
setState(() {
msg = "";

View File

@@ -65,7 +65,7 @@ void changeIdDialog() {
RegexValidationRule('allowed characters', RegExp(r'^\w*$'))
];
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
debugPrint("onSubmit");
newId = controller.text.trim();
@@ -175,7 +175,7 @@ void changeWhiteList({Function()? callback}) async {
var controller = TextEditingController(text: newWhiteListField);
var msg = "";
var isInProgress = false;
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
return CustomAlertDialog(
title: Text(translate("IP Whitelisting")),
content: Column(
@@ -255,7 +255,7 @@ void changeWhiteList({Function()? callback}) async {
Future<String> changeDirectAccessPort(
String currentIP, String currentPort) async {
final controller = TextEditingController(text: currentPort);
await gFFI.dialogManager.show((setState, close) {
await gFFI.dialogManager.show((setState, close, context) {
return CustomAlertDialog(
title: Text(translate("Change Local Port")),
content: Column(
@@ -425,7 +425,7 @@ class _PasswordWidgetState extends State<PasswordWidget> {
void wrongPasswordDialog(
String id, OverlayDialogManager dialogManager, type, title, text) {
dialogManager.dismissAll();
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
cancel() {
close();
closeConnection();
@@ -498,7 +498,7 @@ _connectDialog(
rememberAccount = await bind.sessionGetRemember(id: id) ?? false;
}
dialogManager.dismissAll();
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
cancel() {
close();
closeConnection();
@@ -653,7 +653,7 @@ void showWaitUacDialog(
dialogManager.dismissAll();
dialogManager.show(
tag: '$id-wait-uac',
(setState, close) => CustomAlertDialog(
(setState, close, context) => CustomAlertDialog(
title: null,
content: msgboxContent(type, 'Wait', 'wait_accept_uac_tip'),
));
@@ -769,7 +769,7 @@ void showRequestElevationDialog(String id, OverlayDialogManager dialogManager) {
]));
dialogManager.dismissAll();
dialogManager.show(tag: '$id-request-elevation', (setState, close) {
dialogManager.show(tag: '$id-request-elevation', (setState, close, context) {
void submit() {
if (groupValue.value == 'logon') {
if (userController.text.isEmpty) {
@@ -813,7 +813,7 @@ void showOnBlockDialog(
dialogManager.existing('$id-request-elevation')) {
return;
}
dialogManager.show(tag: '$id-$type', (setState, close) {
dialogManager.show(tag: '$id-$type', (setState, close, context) {
void submit() {
close();
showRequestElevationDialog(id, dialogManager);
@@ -835,7 +835,7 @@ void showOnBlockDialog(
void showElevationError(String id, String type, String title, String text,
OverlayDialogManager dialogManager) {
dialogManager.show(tag: '$id-$type', (setState, close) {
dialogManager.show(tag: '$id-$type', (setState, close, context) {
void submit() {
close();
showRequestElevationDialog(id, dialogManager);
@@ -859,7 +859,7 @@ void showElevationError(String id, String type, String title, String text,
void showWaitAcceptDialog(String id, String type, String title, String text,
OverlayDialogManager dialogManager) {
dialogManager.dismissAll();
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
onCancel() {
closeConnection();
}
@@ -878,7 +878,7 @@ void showWaitAcceptDialog(String id, String type, String title, String text,
void showRestartRemoteDevice(
PeerInfo pi, String id, OverlayDialogManager dialogManager) async {
final res =
await dialogManager.show<bool>((setState, close) => CustomAlertDialog(
await dialogManager.show<bool>((setState, close, context) => CustomAlertDialog(
title: Row(children: [
Icon(Icons.warning_rounded, color: Colors.redAccent, size: 28),
Flexible(
@@ -915,7 +915,7 @@ showSetOSPassword(
var password = await bind.sessionGetOption(id: id, arg: 'os-password') ?? '';
var autoLogin = await bind.sessionGetOption(id: id, arg: 'auto-login') != '';
controller.text = password;
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
submit() {
var text = controller.text.trim();
bind.sessionPeerOption(id: id, name: 'os-password', value: text);
@@ -983,7 +983,7 @@ showSetOSAccount(
var password = await bind.sessionGetOption(id: id, arg: 'os-password') ?? '';
usernameController.text = username;
passwdController.text = password;
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
submit() {
final username = usernameController.text.trim();
final password = usernameController.text.trim();
@@ -1115,7 +1115,7 @@ showAuditDialog(String id, dialogManager) async {
void showConfirmSwitchSidesDialog(
String id, OverlayDialogManager dialogManager) async {
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
submit() async {
await bind.sessionSwitchSides(id: id);
closeConnection(id: id);

View File

@@ -391,7 +391,7 @@ Future<bool?> loginDialog() async {
final autoLogin = true.obs;
final RxString curOP = ''.obs;
final res = await gFFI.dialogManager.show<bool>((setState, close) {
final res = await gFFI.dialogManager.show<bool>((setState, close, context) {
username.addListener(() {
if (usernameMsg != null) {
setState(() => usernameMsg = null);
@@ -530,7 +530,7 @@ Future<bool?> verificationCodeDialog(UserPayload? user) async {
final focusNode = FocusNode()..requestFocus();
Timer(Duration(milliseconds: 100), () => focusNode..requestFocus());
final res = await gFFI.dialogManager.show<bool>((setState, close) {
final res = await gFFI.dialogManager.show<bool>((setState, close, context) {
bool validate() {
return code.text.length >= 6;
}

View File

@@ -664,7 +664,7 @@ abstract class BasePeerCard extends StatelessWidget {
RxBool isInProgress = false.obs;
String name = await _getAlias(id);
var controller = TextEditingController(text: name);
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
isInProgress.value = true;
String name = controller.text.trim();
@@ -724,7 +724,7 @@ abstract class BasePeerCard extends StatelessWidget {
void _delete(String id, bool isLan, Function reloadFunc) async {
gFFI.dialogManager.show(
(setState, close) {
(setState, close, context) {
submit() async {
if (isLan) {
bind.mainRemoveDiscovered(id: id);
@@ -1023,7 +1023,7 @@ class AddressBookPeerCard extends BasePeerCard {
final tags = List.of(gFFI.abModel.tags);
var selectedTag = gFFI.abModel.getPeerTags(id).obs;
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
setState(() {
isInProgress = true;
@@ -1115,7 +1115,7 @@ void _rdpDialog(String id) async {
text: await bind.mainGetPeerOption(id: id, key: 'rdp_password'));
RxBool secure = true.obs;
gFFI.dialogManager.show((setState, close) {
gFFI.dialogManager.show((setState, close, context) {
submit() async {
String port = portController.text.trim();
String username = userController.text;