Merge pull request #3152 from pangeachat/3147-reselect-message-causes-white-background-bug
chore: deselect events in message overlay dispose function
This commit is contained in:
commit
fd1dd688ab
3 changed files with 23 additions and 4 deletions
|
|
@ -1651,6 +1651,13 @@ class ChatController extends State<ChatPageWithRoom>
|
|||
showEmojiPicker = false;
|
||||
});
|
||||
}
|
||||
|
||||
void setSelectedEvent(Event event) {
|
||||
setState(() {
|
||||
selectedEvents.clear();
|
||||
selectedEvents.add(event);
|
||||
});
|
||||
}
|
||||
// Pangea#
|
||||
|
||||
void clearSingleSelectedEvent() {
|
||||
|
|
|
|||
|
|
@ -109,8 +109,19 @@ class MessageOverlayController extends State<MessageSelectionOverlay>
|
|||
|
||||
@override
|
||||
void initState() {
|
||||
initializeTokensAndMode();
|
||||
super.initState();
|
||||
initializeTokensAndMode();
|
||||
WidgetsBinding.instance.addPostFrameCallback(
|
||||
(_) => widget.chatController.setSelectedEvent(event),
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
WidgetsBinding.instance.addPostFrameCallback(
|
||||
(_) => widget.chatController.clearSelectedEvents(),
|
||||
);
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
Future<void> initializeTokensAndMode() async {
|
||||
|
|
|
|||
|
|
@ -36,9 +36,10 @@ class OverlayHeaderState extends State<OverlayHeader> {
|
|||
Widget build(BuildContext context) {
|
||||
final l10n = L10n.of(context);
|
||||
final theme = Theme.of(context);
|
||||
final pinned = controller.room.pinnedEventIds.contains(
|
||||
controller.selectedEvents.first.eventId,
|
||||
);
|
||||
final pinned = controller.selectedEvents.length == 1 &&
|
||||
controller.room.pinnedEventIds.contains(
|
||||
controller.selectedEvents.first.eventId,
|
||||
);
|
||||
return Container(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 10),
|
||||
decoration: BoxDecoration(
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue