fix: WebView 手势接管偶发失败
This commit is contained in:
@@ -2,6 +2,8 @@ import 'dart:async';
|
||||
import 'dart:convert';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/gestures.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:permission_handler/permission_handler.dart';
|
||||
@@ -105,6 +107,11 @@ class H5ShellPage extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _H5ShellPageState extends State<H5ShellPage> with WidgetsBindingObserver {
|
||||
static final Set<Factory<OneSequenceGestureRecognizer>>
|
||||
_webViewGestureRecognizers = <Factory<OneSequenceGestureRecognizer>>{
|
||||
Factory<EagerGestureRecognizer>(() => EagerGestureRecognizer()),
|
||||
};
|
||||
|
||||
late H5Line _h5Line;
|
||||
late _H5LineWebViewSlot _lineSlot;
|
||||
|
||||
@@ -905,6 +912,7 @@ class _H5ShellPageState extends State<H5ShellPage> with WidgetsBindingObserver {
|
||||
PlatformWebViewWidgetCreationParams params =
|
||||
PlatformWebViewWidgetCreationParams(
|
||||
controller: _lineSlot.controller.platform,
|
||||
gestureRecognizers: _webViewGestureRecognizers,
|
||||
);
|
||||
|
||||
if (_lineSlot.controller.platform is AndroidWebViewController) {
|
||||
|
||||
Reference in New Issue
Block a user