Skip to content

Commit 886d8da

Browse files
committed
code refactoring
1 parent 773b298 commit 886d8da

5 files changed

Lines changed: 32 additions & 115 deletions

File tree

packages/webview_flutter/webview_flutter_android/example/lib/main.dart

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -637,7 +637,9 @@ class SampleMenu extends StatelessWidget {
637637
return;
638638
}
639639

640-
await androidController.setWebAuthenticationEnabled(true);
640+
await androidController.setWebAuthenticationSupport(
641+
WebAuthenticationSupport.forApp,
642+
);
641643

642644
if (context.mounted) {
643645
ScaffoldMessenger.of(context).showSnackBar(

packages/webview_flutter/webview_flutter_android/lib/src/android_webview_controller.dart

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -929,21 +929,6 @@ class AndroidWebViewController extends PlatformWebViewController {
929929
);
930930
}
931931

932-
/// Enables WebAuthn support for this WebView when available.
933-
///
934-
/// This is a convenience method that maps boolean values to [WebAuthenticationSupport]
935-
/// levels:
936-
/// - `true`[WebAuthenticationSupport.forApp]
937-
/// - `false`[WebAuthenticationSupport.none]
938-
///
939-
/// @deprecated Use [setWebAuthenticationSupport] instead for explicit control
940-
/// over all WebAuthentication support levels (none, forApp, forBrowser).
941-
Future<void> setWebAuthenticationEnabled(bool enabled) {
942-
return setWebAuthenticationSupport(
943-
enabled ? WebAuthenticationSupport.forApp : WebAuthenticationSupport.none,
944-
);
945-
}
946-
947932
static int _webAuthenticationSupportToInt(WebAuthenticationSupport support) {
948933
return switch (support) {
949934
WebAuthenticationSupport.none => WebAuthenticationSupportConstants.none,

packages/webview_flutter/webview_flutter_android/test/android_webview_controller_test.dart

Lines changed: 0 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -2091,84 +2091,6 @@ void main() {
20912091
expect(expectedEnabled, capturedEnabled);
20922092
});
20932093

2094-
test('setWebAuthenticationEnabled', () async {
2095-
android_webview.WebSettings? capturedSettings;
2096-
int? capturedSupport;
2097-
2098-
final mockWebView = MockWebView();
2099-
final mockSettings = MockWebSettings();
2100-
final AndroidWebViewController controller = createControllerWithMocks(
2101-
mockWebView: mockWebView,
2102-
mockSettings: mockSettings,
2103-
isWebViewFeatureSupported: (String feature) async {
2104-
expect(WebViewFeatureConstants.webAuthentication, feature);
2105-
return true;
2106-
},
2107-
setWebAuthenticationSupport:
2108-
(android_webview.WebSettings settings, int support) async {
2109-
capturedSettings = settings;
2110-
capturedSupport = support;
2111-
},
2112-
);
2113-
2114-
await controller.setWebAuthenticationEnabled(true);
2115-
2116-
expect(mockSettings, capturedSettings);
2117-
expect(WebAuthenticationSupportConstants.forApp, capturedSupport);
2118-
});
2119-
2120-
test('setWebAuthenticationEnabled false', () async {
2121-
android_webview.WebSettings? capturedSettings;
2122-
int? capturedSupport;
2123-
2124-
final mockWebView = MockWebView();
2125-
final mockSettings = MockWebSettings();
2126-
final AndroidWebViewController controller = createControllerWithMocks(
2127-
mockWebView: mockWebView,
2128-
mockSettings: mockSettings,
2129-
isWebViewFeatureSupported: (String feature) async {
2130-
expect(WebViewFeatureConstants.webAuthentication, feature);
2131-
return true;
2132-
},
2133-
setWebAuthenticationSupport:
2134-
(android_webview.WebSettings settings, int support) async {
2135-
capturedSettings = settings;
2136-
capturedSupport = support;
2137-
},
2138-
);
2139-
2140-
await controller.setWebAuthenticationEnabled(false);
2141-
2142-
expect(mockSettings, capturedSettings);
2143-
expect(WebAuthenticationSupportConstants.none, capturedSupport);
2144-
});
2145-
2146-
test('setWebAuthenticationEnabled skips when unsupported', () async {
2147-
android_webview.WebSettings? capturedSettings;
2148-
int? capturedSupport;
2149-
2150-
final mockWebView = MockWebView();
2151-
final mockSettings = MockWebSettings();
2152-
final AndroidWebViewController controller = createControllerWithMocks(
2153-
mockWebView: mockWebView,
2154-
mockSettings: mockSettings,
2155-
isWebViewFeatureSupported: (String feature) async {
2156-
expect(WebViewFeatureConstants.webAuthentication, feature);
2157-
return false;
2158-
},
2159-
setWebAuthenticationSupport:
2160-
(android_webview.WebSettings settings, int support) async {
2161-
capturedSettings = settings;
2162-
capturedSupport = support;
2163-
},
2164-
);
2165-
2166-
await controller.setWebAuthenticationEnabled(true);
2167-
2168-
expect(capturedSettings, isNull);
2169-
expect(capturedSupport, isNull);
2170-
});
2171-
21722094
test('setWebAuthenticationSupport with forApp', () async {
21732095
android_webview.WebSettings? capturedSettings;
21742096
int? capturedSupport;

packages/webview_flutter/webview_flutter_android/test/android_webview_controller_test.mocks.dart

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,17 @@
44

55
// ignore_for_file: no_leading_underscores_for_library_prefixes
66
import 'dart:async' as _i8;
7-
import 'dart:typed_data' as _i12;
7+
import 'dart:typed_data' as _i13;
88
import 'dart:ui' as _i4;
99

10-
import 'package:flutter/foundation.dart' as _i9;
11-
import 'package:flutter/gestures.dart' as _i10;
10+
import 'package:flutter/foundation.dart' as _i10;
11+
import 'package:flutter/gestures.dart' as _i11;
1212
import 'package:flutter/services.dart' as _i6;
1313
import 'package:mockito/mockito.dart' as _i1;
14-
import 'package:mockito/src/dummies.dart' as _i11;
14+
import 'package:mockito/src/dummies.dart' as _i12;
1515
import 'package:webview_flutter_android/src/android_webkit.g.dart' as _i2;
16+
import 'package:webview_flutter_android/src/android_webkit_constants.dart'
17+
as _i9;
1618
import 'package:webview_flutter_android/src/android_webview_controller.dart'
1719
as _i7;
1820
import 'package:webview_flutter_android/src/platform_views_service_proxy.dart'
@@ -853,9 +855,11 @@ class MockAndroidWebViewController extends _i1.Mock
853855
as _i8.Future<bool>);
854856

855857
@override
856-
_i8.Future<void> setWebAuthenticationEnabled(bool? enabled) =>
858+
_i8.Future<void> setWebAuthenticationSupport(
859+
_i9.WebAuthenticationSupport? support,
860+
) =>
857861
(super.noSuchMethod(
858-
Invocation.method(#setWebAuthenticationEnabled, [enabled]),
862+
Invocation.method(#setWebAuthenticationSupport, [support]),
859863
returnValue: _i8.Future<void>.value(),
860864
returnValueForMissingStub: _i8.Future<void>.value(),
861865
)
@@ -937,14 +941,14 @@ class MockAndroidWebViewWidgetCreationParams extends _i1.Mock
937941
as _i4.TextDirection);
938942

939943
@override
940-
Set<_i9.Factory<_i10.OneSequenceGestureRecognizer>> get gestureRecognizers =>
944+
Set<_i10.Factory<_i11.OneSequenceGestureRecognizer>> get gestureRecognizers =>
941945
(super.noSuchMethod(
942946
Invocation.getter(#gestureRecognizers),
943-
returnValue: <_i9.Factory<_i10.OneSequenceGestureRecognizer>>{},
947+
returnValue: <_i10.Factory<_i11.OneSequenceGestureRecognizer>>{},
944948
returnValueForMissingStub:
945-
<_i9.Factory<_i10.OneSequenceGestureRecognizer>>{},
949+
<_i10.Factory<_i11.OneSequenceGestureRecognizer>>{},
946950
)
947-
as Set<_i9.Factory<_i10.OneSequenceGestureRecognizer>>);
951+
as Set<_i10.Factory<_i11.OneSequenceGestureRecognizer>>);
948952
}
949953

950954
/// A class which mocks [ExpensiveAndroidViewController].
@@ -1080,7 +1084,7 @@ class MockExpensiveAndroidViewController extends _i1.Mock
10801084
as _i8.Future<void>);
10811085

10821086
@override
1083-
_i8.Future<void> dispatchPointerEvent(_i10.PointerEvent? event) =>
1087+
_i8.Future<void> dispatchPointerEvent(_i11.PointerEvent? event) =>
10841088
(super.noSuchMethod(
10851089
Invocation.method(#dispatchPointerEvent, [event]),
10861090
returnValue: _i8.Future<void>.value(),
@@ -1143,13 +1147,13 @@ class MockFlutterAssetManager extends _i1.Mock
11431147
(super.noSuchMethod(
11441148
Invocation.method(#getAssetFilePathByName, [name]),
11451149
returnValue: _i8.Future<String>.value(
1146-
_i11.dummyValue<String>(
1150+
_i12.dummyValue<String>(
11471151
this,
11481152
Invocation.method(#getAssetFilePathByName, [name]),
11491153
),
11501154
),
11511155
returnValueForMissingStub: _i8.Future<String>.value(
1152-
_i11.dummyValue<String>(
1156+
_i12.dummyValue<String>(
11531157
this,
11541158
Invocation.method(#getAssetFilePathByName, [name]),
11551159
),
@@ -1226,11 +1230,11 @@ class MockJavaScriptChannel extends _i1.Mock implements _i2.JavaScriptChannel {
12261230
String get channelName =>
12271231
(super.noSuchMethod(
12281232
Invocation.getter(#channelName),
1229-
returnValue: _i11.dummyValue<String>(
1233+
returnValue: _i12.dummyValue<String>(
12301234
this,
12311235
Invocation.getter(#channelName),
12321236
),
1233-
returnValueForMissingStub: _i11.dummyValue<String>(
1237+
returnValueForMissingStub: _i12.dummyValue<String>(
12341238
this,
12351239
Invocation.getter(#channelName),
12361240
),
@@ -1567,7 +1571,7 @@ class MockSurfaceAndroidViewController extends _i1.Mock
15671571
as _i8.Future<void>);
15681572

15691573
@override
1570-
_i8.Future<void> dispatchPointerEvent(_i10.PointerEvent? event) =>
1574+
_i8.Future<void> dispatchPointerEvent(_i11.PointerEvent? event) =>
15711575
(super.noSuchMethod(
15721576
Invocation.method(#dispatchPointerEvent, [event]),
15731577
returnValue: _i8.Future<void>.value(),
@@ -1896,13 +1900,13 @@ class MockWebSettings extends _i1.Mock implements _i2.WebSettings {
18961900
(super.noSuchMethod(
18971901
Invocation.method(#getUserAgentString, []),
18981902
returnValue: _i8.Future<String>.value(
1899-
_i11.dummyValue<String>(
1903+
_i12.dummyValue<String>(
19001904
this,
19011905
Invocation.method(#getUserAgentString, []),
19021906
),
19031907
),
19041908
returnValueForMissingStub: _i8.Future<String>.value(
1905-
_i11.dummyValue<String>(
1909+
_i12.dummyValue<String>(
19061910
this,
19071911
Invocation.method(#getUserAgentString, []),
19081912
),
@@ -2024,7 +2028,7 @@ class MockWebView extends _i1.Mock implements _i2.WebView {
20242028
as _i8.Future<void>);
20252029

20262030
@override
2027-
_i8.Future<void> postUrl(String? url, _i12.Uint8List? data) =>
2031+
_i8.Future<void> postUrl(String? url, _i13.Uint8List? data) =>
20282032
(super.noSuchMethod(
20292033
Invocation.method(#postUrl, [url, data]),
20302034
returnValue: _i8.Future<void>.value(),

packages/webview_flutter/webview_flutter_android/test/android_webview_cookie_manager_test.mocks.dart

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import 'dart:ui' as _i4;
88

99
import 'package:mockito/mockito.dart' as _i1;
1010
import 'package:webview_flutter_android/src/android_webkit.g.dart' as _i2;
11+
import 'package:webview_flutter_android/src/android_webkit_constants.dart'
12+
as _i7;
1113
import 'package:webview_flutter_android/src/android_webview_controller.dart'
1214
as _i6;
1315
import 'package:webview_flutter_platform_interface/webview_flutter_platform_interface.dart'
@@ -629,9 +631,11 @@ class MockAndroidWebViewController extends _i1.Mock
629631
as _i5.Future<bool>);
630632

631633
@override
632-
_i5.Future<void> setWebAuthenticationEnabled(bool? enabled) =>
634+
_i5.Future<void> setWebAuthenticationSupport(
635+
_i7.WebAuthenticationSupport? support,
636+
) =>
633637
(super.noSuchMethod(
634-
Invocation.method(#setWebAuthenticationEnabled, [enabled]),
638+
Invocation.method(#setWebAuthenticationSupport, [support]),
635639
returnValue: _i5.Future<void>.value(),
636640
returnValueForMissingStub: _i5.Future<void>.value(),
637641
)

0 commit comments

Comments
 (0)