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

@@ -197,7 +197,7 @@ class _FileManagerPageState extends State<FileManagerPage> {
} else if (v == "folder") {
final name = TextEditingController();
gFFI.dialogManager
.show((setState, close) => CustomAlertDialog(
.show((setState, close, context) => CustomAlertDialog(
title: Text(translate("Create Folder")),
content: Column(
mainAxisSize: MainAxisSize.min,

View File

@@ -868,7 +868,7 @@ void showOptions(
List<TToggleMenu> displayToggles =
await toolbarDisplayToggle(context, id, gFFI);
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
var viewStyle =
(viewStyleRadios.isNotEmpty ? viewStyleRadios[0].groupValue : '').obs;
var imageQuality =

View File

@@ -318,7 +318,7 @@ class _SettingsState extends State<SettingsPage> with WidgetsBindingObserver {
kRequestIgnoreBatteryOptimizations);
} else {
final res = await gFFI.dialogManager
.show<bool>((setState, close) => CustomAlertDialog(
.show<bool>((setState, close, context) => CustomAlertDialog(
title: Text(translate("Open System Setting")),
content: Text(translate(
"android_open_battery_optimizations_tip")),
@@ -505,7 +505,7 @@ void showLanguageSettings(OverlayDialogManager dialogManager) async {
try {
final langs = json.decode(await bind.mainGetLangs()) as List<dynamic>;
var lang = bind.mainGetLocalOption(key: "lang");
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
setLang(v) {
if (lang != v) {
setState(() {
@@ -539,7 +539,7 @@ void showLanguageSettings(OverlayDialogManager dialogManager) async {
void showThemeSettings(OverlayDialogManager dialogManager) async {
var themeMode = MyTheme.getThemeModePreference();
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
setTheme(v) {
if (themeMode != v) {
setState(() {
@@ -563,7 +563,7 @@ void showThemeSettings(OverlayDialogManager dialogManager) async {
}
void showAbout(OverlayDialogManager dialogManager) {
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
return CustomAlertDialog(
title: Text('${translate('About')} RustDesk'),
content: Wrap(direction: Axis.vertical, spacing: 12, children: [

View File

@@ -20,7 +20,7 @@ void setPermanentPasswordDialog(OverlayDialogManager dialogManager) async {
final p1 = TextEditingController(text: pw);
var validateLength = false;
var validateSame = false;
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
submit() async {
close();
dialogManager.showLoading(translate("Waiting"));
@@ -111,7 +111,7 @@ void setTemporaryPasswordLengthDialog(
var index = lengths.indexOf(length);
if (index < 0) index = 0;
length = lengths[index];
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
setLength(newValue) {
final oldValue = length;
if (oldValue == newValue) return;
@@ -160,7 +160,7 @@ void showServerSettingsWithValue(
String? relayServerMsg;
String? apiServerMsg;
dialogManager.show((setState, close) {
dialogManager.show((setState, close, context) {
Future<bool> validate() async {
if (idCtrl.text != oldCfg.idServer) {
final res = await validateAsync(idCtrl.text);