Fix overlay not closing in some situations

pull/1384/head
Kelrap 1 year ago
parent a09e5a0d8a
commit 0c37d88ef2

@ -1080,6 +1080,9 @@ class ChatController extends State<ChatPageWithRoom>
void forwardEventsAction() async { void forwardEventsAction() async {
if (selectedEvents.length == 1) { if (selectedEvents.length == 1) {
// #Pangea
MatrixState.pAnyState.closeOverlay();
// Pangea#
Matrix.of(context).shareContent = Matrix.of(context).shareContent =
selectedEvents.first.getDisplayEvent(timeline!).content; selectedEvents.first.getDisplayEvent(timeline!).content;
} else { } else {
@ -1111,6 +1114,7 @@ class ChatController extends State<ChatPageWithRoom>
replyEvent = replyTo ?? selectedEvents.first; replyEvent = replyTo ?? selectedEvents.first;
selectedEvents.clear(); selectedEvents.clear();
}); });
MatrixState.pAnyState.closeOverlay();
inputFocus.requestFocus(); inputFocus.requestFocus();
} }

@ -1,11 +1,10 @@
import 'package:fluffychat/pages/image_viewer/image_viewer_view.dart';
import 'package:fluffychat/utils/platform_infos.dart';
import 'package:fluffychat/widgets/matrix.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart'; import 'package:go_router/go_router.dart';
import 'package:matrix/matrix.dart'; import 'package:matrix/matrix.dart';
import 'package:fluffychat/pages/image_viewer/image_viewer_view.dart';
import 'package:fluffychat/utils/platform_infos.dart';
import 'package:fluffychat/widgets/matrix.dart';
import '../../utils/matrix_sdk_extensions/event_extension.dart'; import '../../utils/matrix_sdk_extensions/event_extension.dart';
class ImageViewer extends StatefulWidget { class ImageViewer extends StatefulWidget {

@ -126,7 +126,7 @@ class ToolbarDisplayController {
transformTargetId: targetId, transformTargetId: targetId,
targetAnchor: Alignment.center, targetAnchor: Alignment.center,
followerAnchor: Alignment.center, followerAnchor: Alignment.center,
backgroundColor: const Color.fromRGBO(0, 0, 0, 1).withAlpha(100), backgroundColor: const Color.fromRGBO(0, 0, 0, 1).withAlpha(200),
closePrevOverlay: closePrevOverlay:
MatrixState.pangeaController.subscriptionController.isSubscribed, MatrixState.pangeaController.subscriptionController.isSubscribed,
targetScreen: true, targetScreen: true,

@ -47,7 +47,7 @@ class OverlayFooter extends StatelessWidget {
ReplyDisplay(controller), ReplyDisplay(controller),
ChatInputRow(controller), ChatInputRow(controller),
SizedBox( SizedBox(
height: (FluffyThemes.isColumnMode(context) ? 16.0 : 8.0), height: (FluffyThemes.isColumnMode(context) ? 18.0 : 10.0),
), ),
], ],
), ),

@ -20,6 +20,7 @@ class OverlayHeader extends StatelessWidget {
final Event selectedEvent = controller.selectedEvents.single; final Event selectedEvent = controller.selectedEvents.single;
return AppBar( return AppBar(
backgroundColor: Theme.of(context).colorScheme.surfaceContainerHighest,
actionsIconTheme: IconThemeData( actionsIconTheme: IconThemeData(
color: Theme.of(context).colorScheme.primary, color: Theme.of(context).colorScheme.primary,
), ),

Loading…
Cancel
Save