Erweiterungen
This commit is contained in:
1 parent
44333f06a7
commit
7b580b37db
1 file changed
+59
-2
@@ -84,6 +84,9 @@ class _MessagesPageState extends State<MessagesPage> {
|
|||||||
showUserAvatars: false,
|
showUserAvatars: false,
|
||||||
showUserNames: false,
|
showUserNames: false,
|
||||||
user: _user,
|
user: _user,
|
||||||
|
onMessageTap: (context, message) => {
|
||||||
|
_showDeleteMessageDialog(context, message)
|
||||||
|
},
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
@@ -129,8 +132,10 @@ class _MessagesPageState extends State<MessagesPage> {
|
|||||||
|
|
||||||
_messages.insert(0, types.TextMessage(
|
_messages.insert(0, types.TextMessage(
|
||||||
author: message.from == _sid ? _user : _central,
|
author: message.from == _sid ? _user : _central,
|
||||||
createdAt: DateTime.parse(message.time).millisecondsSinceEpoch,
|
createdAt: DateTime
|
||||||
id: const Uuid().v4().toString(),
|
.parse(message.time)
|
||||||
|
.millisecondsSinceEpoch,
|
||||||
|
id: message.id.toString(),
|
||||||
text: text,
|
text: text,
|
||||||
));
|
));
|
||||||
|
|
||||||
@@ -142,4 +147,56 @@ class _MessagesPageState extends State<MessagesPage> {
|
|||||||
|
|
||||||
setState(() {});
|
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()
|
||||||
|
}),
|
||||||
|
)
|
||||||
|
])
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
);
|
||||||
|
})
|
||||||
|
);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user