always show learning settings in popup
This commit is contained in:
parent
1fabeba1fb
commit
0fa4202f7d
8 changed files with 40 additions and 60 deletions
|
|
@ -29,7 +29,6 @@ import 'package:fluffychat/pages/settings_style/settings_style.dart';
|
|||
import 'package:fluffychat/pangea/guard/p_vguard.dart';
|
||||
import 'package:fluffychat/pangea/pages/find_partner/find_partner.dart';
|
||||
import 'package:fluffychat/pangea/pages/p_user_age/p_user_age.dart';
|
||||
import 'package:fluffychat/pangea/pages/settings_learning/settings_learning.dart';
|
||||
import 'package:fluffychat/pangea/pages/settings_subscription/settings_subscription.dart';
|
||||
import 'package:fluffychat/pangea/pages/sign_up/signup.dart';
|
||||
import 'package:fluffychat/pangea/widgets/class/join_with_link.dart';
|
||||
|
|
@ -406,15 +405,6 @@ abstract class AppRoutes {
|
|||
],
|
||||
),
|
||||
// #Pangea
|
||||
GoRoute(
|
||||
path: 'learning',
|
||||
pageBuilder: (context, state) => defaultPageBuilder(
|
||||
context,
|
||||
state,
|
||||
const SettingsLearning(),
|
||||
),
|
||||
redirect: loggedOutRedirect,
|
||||
),
|
||||
GoRoute(
|
||||
path: 'subscription',
|
||||
pageBuilder: (context, state) => defaultPageBuilder(
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import 'package:adaptive_dialog/adaptive_dialog.dart';
|
||||
import 'package:fluffychat/pangea/pages/settings_learning/settings_learning.dart';
|
||||
import 'package:fluffychat/pangea/utils/logout.dart';
|
||||
import 'package:fluffychat/pangea/utils/space_code.dart';
|
||||
import 'package:fluffychat/widgets/avatar.dart';
|
||||
|
|
@ -327,7 +328,10 @@ class ClientChooserButton extends StatelessWidget {
|
|||
// controller.setStatus();
|
||||
// break;
|
||||
case SettingsAction.learning:
|
||||
context.go('/rooms/settings/learning');
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (c) => const SettingsLearning(),
|
||||
);
|
||||
break;
|
||||
case SettingsAction.joinWithClassCode:
|
||||
SpaceCodeUtil.joinWithSpaceCodeDialog(
|
||||
|
|
|
|||
|
|
@ -162,11 +162,6 @@ class SettingsView extends StatelessWidget {
|
|||
title: Text(L10n.of(context)!.subscriptionManagement),
|
||||
onTap: () => context.go('/rooms/settings/subscription'),
|
||||
),
|
||||
ListTile(
|
||||
leading: const Icon(Icons.psychology_outlined),
|
||||
title: Text(L10n.of(context)!.learningSettings),
|
||||
onTap: () => context.go('/rooms/settings/learning'),
|
||||
),
|
||||
// Pangea#
|
||||
ListTile(
|
||||
leading: const Icon(Icons.shield_outlined),
|
||||
|
|
|
|||
|
|
@ -3,12 +3,12 @@ import 'dart:developer';
|
|||
import 'package:fluffychat/config/app_config.dart';
|
||||
import 'package:fluffychat/pangea/choreographer/controllers/choreographer.dart';
|
||||
import 'package:fluffychat/pangea/models/space_model.dart';
|
||||
import 'package:fluffychat/pangea/pages/settings_learning/settings_learning.dart';
|
||||
import 'package:fluffychat/pangea/utils/error_handler.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/gestures.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
import 'package:matrix/matrix.dart';
|
||||
|
||||
import '../../../widgets/matrix.dart';
|
||||
|
|
@ -52,7 +52,12 @@ class LanguagePermissionsButtons extends StatelessWidget {
|
|||
text: copy.description,
|
||||
style: const TextStyle(color: AppConfig.primaryColor),
|
||||
recognizer: TapGestureRecognizer()
|
||||
..onTap = () => context.go('/rooms/settings/learning'),
|
||||
..onTap = () {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (c) => const SettingsLearning(),
|
||||
);
|
||||
},
|
||||
),
|
||||
],
|
||||
),
|
||||
|
|
|
|||
|
|
@ -8,11 +8,7 @@ import 'package:fluffychat/widgets/matrix.dart';
|
|||
import 'package:flutter/material.dart';
|
||||
|
||||
class SettingsLearning extends StatefulWidget {
|
||||
final bool isPopup;
|
||||
const SettingsLearning({
|
||||
this.isPopup = false,
|
||||
super.key,
|
||||
});
|
||||
const SettingsLearning({super.key});
|
||||
|
||||
@override
|
||||
SettingsLearningController createState() => SettingsLearningController();
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import 'package:fluffychat/pangea/widgets/user_settings/country_picker_tile.dart
|
|||
import 'package:fluffychat/pangea/widgets/user_settings/language_tile.dart';
|
||||
import 'package:fluffychat/pangea/widgets/user_settings/p_settings_switch_list_tile.dart';
|
||||
import 'package:fluffychat/widgets/layouts/max_width_body.dart';
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||
|
||||
|
|
@ -13,18 +14,16 @@ class SettingsLearningView extends StatelessWidget {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
final dialogContent = Scaffold(
|
||||
appBar: AppBar(
|
||||
centerTitle: true,
|
||||
title: Text(
|
||||
L10n.of(context)!.learningSettings,
|
||||
),
|
||||
leading: controller.widget.isPopup
|
||||
? IconButton(
|
||||
icon: const Icon(Icons.close),
|
||||
onPressed: Navigator.of(context).pop,
|
||||
)
|
||||
: null,
|
||||
leading: IconButton(
|
||||
icon: const Icon(Icons.close),
|
||||
onPressed: Navigator.of(context).pop,
|
||||
),
|
||||
),
|
||||
body: ListTileTheme(
|
||||
iconColor: Theme.of(context).textTheme.bodyLarge!.color,
|
||||
|
|
@ -79,5 +78,25 @@ class SettingsLearningView extends StatelessWidget {
|
|||
),
|
||||
),
|
||||
);
|
||||
|
||||
return kIsWeb
|
||||
? Dialog(
|
||||
child: ConstrainedBox(
|
||||
constraints: const BoxConstraints(
|
||||
maxWidth: 600,
|
||||
maxHeight: 600,
|
||||
),
|
||||
child: ClipRRect(
|
||||
borderRadius: BorderRadius.circular(20.0),
|
||||
child: dialogContent,
|
||||
),
|
||||
),
|
||||
)
|
||||
: Dialog.fullscreen(
|
||||
child: ConstrainedBox(
|
||||
constraints: const BoxConstraints(maxWidth: 600),
|
||||
child: dialogContent,
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:flutter_gen/gen_l10n/l10n.dart';
|
||||
import 'package:go_router/go_router.dart';
|
||||
|
||||
|
|
@ -27,13 +26,6 @@ void findConversationPartnerDialog(
|
|||
onPressed: Navigator.of(context).pop,
|
||||
child: Text(L10n.of(context)!.cancel),
|
||||
),
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
context.go('/rooms/settings/learning');
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
child: Text(L10n.of(context)!.accountSettings),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
|
|
|
|||
|
|
@ -3,7 +3,6 @@ import 'dart:async';
|
|||
import 'package:adaptive_dialog/adaptive_dialog.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';
|
||||
|
|
@ -154,27 +153,7 @@ class ChatSettingsPopupMenuState extends State<ChatSettingsPopupMenu> {
|
|||
case ChatPopupMenuActions.learningSettings:
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (c) {
|
||||
return kIsWeb
|
||||
? Dialog(
|
||||
child: ConstrainedBox(
|
||||
constraints: const BoxConstraints(
|
||||
maxWidth: 600,
|
||||
maxHeight: 600,
|
||||
),
|
||||
child: ClipRRect(
|
||||
borderRadius: BorderRadius.circular(20.0),
|
||||
child: const SettingsLearning(isPopup: true),
|
||||
),
|
||||
),
|
||||
)
|
||||
: Dialog.fullscreen(
|
||||
child: ConstrainedBox(
|
||||
constraints: const BoxConstraints(maxWidth: 600),
|
||||
child: const SettingsLearning(isPopup: true),
|
||||
),
|
||||
);
|
||||
},
|
||||
builder: (c) => const SettingsLearning(),
|
||||
);
|
||||
break;
|
||||
// Pangea#
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue