diff --git a/commet/lib/ui/organisms/call_view/call_view.dart b/commet/lib/ui/organisms/call_view/call_view.dart index bd708cf6f..9cbdfc772 100644 --- a/commet/lib/ui/organisms/call_view/call_view.dart +++ b/commet/lib/ui/organisms/call_view/call_view.dart @@ -3,7 +3,6 @@ import 'package:commet/client/components/voip/voip_session.dart'; import 'package:commet/client/components/voip/voip_stream.dart'; import 'package:commet/client/room.dart'; import 'package:commet/config/layout_config.dart'; -import 'package:commet/ui/atoms/lightbox.dart'; import 'package:commet/ui/layout/bento.dart'; import 'package:commet/ui/organisms/call_view/voip_fullscreen_stream_view.dart'; import 'package:commet/ui/organisms/call_view/voip_stream_view.dart'; @@ -225,12 +224,27 @@ class _CallViewState extends State { widget.currentSession, borderColor: Colors.white, onFullscreen: () { - Lightbox.show(context, - aspectRatio: mainStream!.aspectRatio, - customWidget: VoipFullscreenStreamView( - session: widget.currentSession, - stream: mainStream!, - )); + Navigator.push( + context, + PageRouteBuilder( + pageBuilder: (context, animation, secondaryAnimation) => + Scaffold( + backgroundColor: Colors.black, + body: VoipFullscreenStreamView( + session: widget.currentSession, + stream: mainStream!, + ), + ), + transitionsBuilder: + (context, animation, secondaryAnimation, child) { + return FadeTransition( + opacity: animation, + child: child, + ); + }, + fullscreenDialog: true, + ), + ); }, fit: BoxFit.contain, key: ValueKey( @@ -260,12 +274,27 @@ class _CallViewState extends State { : BoxFit.cover, widget.currentSession, onFullscreen: () { - Lightbox.show(context, - aspectRatio: e.aspectRatio, - customWidget: VoipFullscreenStreamView( - session: widget.currentSession, - stream: e, - )); + Navigator.push( + context, + PageRouteBuilder( + pageBuilder: (context, animation, secondaryAnimation) => + Scaffold( + backgroundColor: Colors.black, + body: VoipFullscreenStreamView( + session: widget.currentSession, + stream: e, + ), + ), + transitionsBuilder: + (context, animation, secondaryAnimation, child) { + return FadeTransition( + opacity: animation, + child: child, + ); + }, + fullscreenDialog: true, + ), + ); }, ))) .toList()), diff --git a/commet/lib/ui/organisms/call_view/voip_fullscreen_stream_view.dart b/commet/lib/ui/organisms/call_view/voip_fullscreen_stream_view.dart index b0b95d8fd..70427cd2f 100644 --- a/commet/lib/ui/organisms/call_view/voip_fullscreen_stream_view.dart +++ b/commet/lib/ui/organisms/call_view/voip_fullscreen_stream_view.dart @@ -32,7 +32,6 @@ class _VoipFullscreenStreamViewState extends State { @override Widget build(BuildContext context) { return Stack( - alignment: Alignment.bottomCenter, children: [ LayoutBuilder( builder: (context, constraints) { @@ -41,6 +40,7 @@ class _VoipFullscreenStreamViewState extends State { widget.stream, widget.session, canFullscreen: false, + onFullscreen: () {Navigator.of(context).pop();}, ), onHover: (event) { final width = constraints.maxWidth; diff --git a/commet/lib/ui/organisms/call_view/voip_stream_view.dart b/commet/lib/ui/organisms/call_view/voip_stream_view.dart index bb0e1a90f..ba1d78cc5 100644 --- a/commet/lib/ui/organisms/call_view/voip_stream_view.dart +++ b/commet/lib/ui/organisms/call_view/voip_stream_view.dart @@ -90,8 +90,7 @@ class _VoipStreamViewState extends State BoxDecoration(borderRadius: BorderRadius.circular(8)), child: buildDefault()), ), - if (widget.canFullscreen && - widget.stream.type == VoipStreamType.video || + if (widget.stream.type == VoipStreamType.video || widget.stream.type == VoipStreamType.screenshare) SizedBox( width: 40,