Erweiterungen

This commit is contained in:
Sven committed 2024-02-08 16:55:14 +01:00
1 parent 44333f06a7
commit 7b580b37db
1 file changed
+59 -2
+59 -2
View File
@@ -84,6 +84,9 @@ class _MessagesPageState extends State<MessagesPage> {
showUserAvatars: false,
showUserNames: false,
user: _user,
onMessageTap: (context, message) => {
_showDeleteMessageDialog(context, message)
},
),
],
);
@@ -129,8 +132,10 @@ class _MessagesPageState extends State<MessagesPage> {
_messages.insert(0, types.TextMessage(
author: message.from == _sid ? _user : _central,
createdAt: DateTime.parse(message.time).millisecondsSinceEpoch,
id: const Uuid().v4().toString(),
createdAt: DateTime
.parse(message.time)
.millisecondsSinceEpoch,
id: message.id.toString(),
text: text,
));
@@ -142,4 +147,56 @@ class _MessagesPageState extends State<MessagesPage> {
setState(() {});
}
_showDeleteMessageDialog(BuildContext context, types.Message message) async {
await showDialog<void>(
context: context,
builder: (BuildContext context) {
return AlertDialog(
contentPadding: EdgeInsets.zero,
shadowColor: Colors.transparent,
backgroundColor: Colors.white,
content: StatefulBuilder(builder: (BuildContext context, StateSetter setState) {
return SizedBox(
key: GlobalKey(),
height: 120,
width: MediaQuery
.of(context)
.size
.width * 1.2,
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
height: 100,
padding: const EdgeInsets.all(5),
child: Column(
children: [
const Text('Soll die Nachricht gelöscht werden?'),
const SizedBox(height: 20),
Row(children: [
Expanded(
child: getDefaultButton('Nein', () => {Navigator.of(context).pop()}),
),
const SizedBox(width: 20),
Expanded(
child: getDefaultButton('Ja', () => {
MyApp.isarInstance.writeTxnSync(() => {MyApp.isarInstance.messages.deleteSync(int.parse(message.id))}),
_fetchMessages(),
setState(() {}),
Navigator.of(context).pop()
}),
)
])
],
),
),
)
);
})
);
});
}
}