Added general settings
This commit is contained in:
@@ -20,8 +20,6 @@ class Customization extends ConsumerWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
final width = MediaQuery.of(context).size.width;
|
||||
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(t.settings.customization.customization),
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
|
||||
import 'package:linkdy/i18n/strings.g.dart';
|
||||
import 'package:linkdy/providers/api_client_provider.dart';
|
||||
|
||||
class DisconnectModal extends ConsumerWidget {
|
||||
const DisconnectModal({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
return AlertDialog(
|
||||
title: Text(t.settings.generalSettings.disconnectModal.title),
|
||||
content: Text(t.settings.generalSettings.disconnectModal.description),
|
||||
actions: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.end,
|
||||
children: [
|
||||
TextButton(
|
||||
onPressed: () => Navigator.pop(context),
|
||||
child: Text(t.generic.cancel),
|
||||
),
|
||||
const SizedBox(width: 8),
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
Navigator.pop(context);
|
||||
ref.read(apiClientProviderProvider.notifier).disconnectApiClient();
|
||||
},
|
||||
child: Text(t.generic.confirm),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||
|
||||
import 'package:linkdy/i18n/strings.g.dart';
|
||||
import 'package:linkdy/screens/settings/ui/general_settings/disconnect_modal.dart';
|
||||
|
||||
class GeneralSettings extends ConsumerWidget {
|
||||
const GeneralSettings({Key? key}) : super(key: key);
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context, WidgetRef ref) {
|
||||
return Scaffold(
|
||||
appBar: AppBar(
|
||||
title: Text(t.settings.generalSettings.generalSettings),
|
||||
),
|
||||
body: ListView(
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
FilledButton.icon(
|
||||
onPressed: () => showDialog(
|
||||
context: context,
|
||||
builder: (context) => const DisconnectModal(),
|
||||
),
|
||||
icon: const Icon(Icons.clear_rounded),
|
||||
label: Text(
|
||||
t.settings.generalSettings.disconnectFromServer,
|
||||
),
|
||||
style: const ButtonStyle(
|
||||
foregroundColor: MaterialStatePropertyAll(Colors.white),
|
||||
backgroundColor: MaterialStatePropertyAll(Colors.red),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -29,20 +29,14 @@ class Settings extends ConsumerWidget {
|
||||
CustomListTile(
|
||||
icon: Icons.palette_rounded,
|
||||
title: t.settings.customization.customization,
|
||||
subtitle: t.settings.customizationDescription,
|
||||
subtitle: t.settings.customization.customizationDescription,
|
||||
onTap: () => ref.read(routerProvider).push(RoutesPaths.customization),
|
||||
),
|
||||
CustomListTile(
|
||||
icon: Icons.settings_rounded,
|
||||
title: t.settings.generalSettings,
|
||||
subtitle: t.settings.generalSettingsDescription,
|
||||
),
|
||||
FilledButton.icon(
|
||||
onPressed: () => ref.read(apiClientProviderProvider.notifier).disconnectApiClient(),
|
||||
icon: const Icon(Icons.clear_rounded),
|
||||
label: Text(
|
||||
t.settings.disconnectFromServer,
|
||||
),
|
||||
title: t.settings.generalSettings.generalSettings,
|
||||
subtitle: t.settings.generalSettings.generalSettingsDescription,
|
||||
onTap: () => ref.read(routerProvider).push(RoutesPaths.generalSettings),
|
||||
),
|
||||
SectionLabel(label: t.settings.aboutApp),
|
||||
CustomListTile(
|
||||
|
||||
Reference in New Issue
Block a user