Working push-Notifications for Android

This commit is contained in:
2023-09-03 19:18:14 +02:00
parent 376472ab53
commit cbf049f6cd
23 changed files with 329 additions and 239 deletions

View File

@ -1,26 +1,38 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../../storage/base/settingsProvider.dart';
import '../centeredLeading.dart';
import 'jsonViewer.dart';
class DebugTile {
Map<String, dynamic> data;
BuildContext context;
bool onlyInDebug;
DebugTile(this.context, {this.onlyInDebug = false});
DebugTile(this.data);
Widget jsonData(Map<String, dynamic> data, {bool ignoreConfig = false}) {
return callback(
title: "JSON daten anzeigen",
onTab: () => JsonViewer.asDialog(context, data)
);
}
Widget asTile(BuildContext context, {bool ignoreConfig = false}) {
return Visibility(
visible: Provider.of<SettingsProvider>(context).val().devToolsEnabled || ignoreConfig,
child: ListTile(
leading: const Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [Icon(Icons.data_object)],
),
title: const Text("JSON daten anzeigen"),
Widget callback({String title = "Debugaktion", required void Function() onTab}) {
return child(
ListTile(
leading: const CenteredLeading(Icon(Icons.developer_mode_outlined)),
title: Text(title),
subtitle: const Text("Entwicklermodus aktiviert"),
onTap: () => JsonViewer.asDialog(context, data),
),
onTap: onTab,
)
);
}
Widget child(Widget child) {
return Visibility(
visible: Provider.of<SettingsProvider>(context).val().devToolsEnabled && (onlyInDebug ? kDebugMode : true),
child: child,
);
}
}