diff --git a/lib/widgets/youtube_view.dart b/lib/widgets/youtube_view.dart index b90c099f..994fc105 100644 --- a/lib/widgets/youtube_view.dart +++ b/lib/widgets/youtube_view.dart @@ -1,5 +1,7 @@ import 'dart:developer' show log; +import 'package:flutter/foundation.dart' show Factory; +import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter_inappwebview/flutter_inappwebview.dart'; import 'package:icarus/const/youtube_handler.dart'; @@ -49,10 +51,16 @@ class _YoutubeViewState extends State with AutomaticKeepAliveClientMixin { @override bool get wantKeepAlive => true; + static final Set> + _youtubeGestureRecognizers = { + Factory(() => EagerGestureRecognizer()), + }; @override Widget build(BuildContext context) { super.build(context); + final videoId = + YoutubeHandler.extractYoutubeIdWithTimestamp(widget.youtubeLink); if (!isWebViewInitialized) { // showShadDialog( @@ -71,6 +79,7 @@ class _YoutubeViewState extends State ), Positioned.fill( child: InAppWebView( + gestureRecognizers: _youtubeGestureRecognizers, onLoadStart: (controller, url) { log("Youtube view loading"); }, @@ -81,8 +90,7 @@ class _YoutubeViewState extends State initialSettings: InAppWebViewSettings(allowBackgroundAudioPlaying: false), initialUrlRequest: URLRequest( - url: WebUri( - "https://embed.icarus-strats.xyz/?v=${YoutubeHandler.extractYoutubeIdWithTimestamp(widget.youtubeLink)}")), + url: WebUri("https://embed.icarus-strats.xyz/?v=$videoId")), ), ), ],