when navigating to learning settings from chat popup menu, show page in popup instead of redirecting to settings

pull/1423/head
ggurdin 1 year ago
parent d9125b7871
commit 7d3f6fb51b
No known key found for this signature in database
GPG Key ID: A01CB41737CBB478

@ -8,7 +8,11 @@ import 'package:fluffychat/widgets/matrix.dart';
import 'package:flutter/material.dart';
class SettingsLearning extends StatefulWidget {
const SettingsLearning({super.key});
final bool isPopup;
const SettingsLearning({
this.isPopup = false,
super.key,
});
@override
SettingsLearningController createState() => SettingsLearningController();

@ -19,6 +19,12 @@ class SettingsLearningView extends StatelessWidget {
title: Text(
L10n.of(context)!.learningSettings,
),
leading: controller.widget.isPopup
? IconButton(
icon: const Icon(Icons.close),
onPressed: Navigator.of(context).pop,
)
: null,
),
body: ListTileTheme(
iconColor: Theme.of(context).textTheme.bodyLarge!.color,

@ -2,7 +2,9 @@ import 'dart:async';
import 'package:adaptive_dialog/adaptive_dialog.dart';
import 'package:fluffychat/pangea/extensions/pangea_room_extension/pangea_room_extension.dart';
import 'package:fluffychat/pangea/pages/settings_learning/settings_learning.dart';
import 'package:fluffychat/pangea/utils/download_chat.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:future_loading_dialog/future_loading_dialog.dart';
@ -171,7 +173,24 @@ class ChatSettingsPopupMenuState extends State<ChatSettingsPopupMenu> {
);
break;
case ChatPopupMenuActions.learningSettings:
context.go('/rooms/settings/learning');
showDialog(
context: context,
builder: (c) {
return kIsWeb
? Dialog(
child: ConstrainedBox(
constraints: const BoxConstraints(maxWidth: 600),
child: ClipRRect(
borderRadius: BorderRadius.circular(20.0),
child: const SettingsLearning(isPopup: true),
),
),
)
: const Dialog.fullscreen(
child: SettingsLearning(isPopup: true),
);
},
);
break;
// Pangea#
}

Loading…
Cancel
Save