Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
48d4c9d
make deps path based
bparrishMines Mar 24, 2023
4ad0174
interface implementation
bparrishMines Mar 24, 2023
a51decc
support for permissionrequest
bparrishMines Mar 24, 2023
c6880bb
add method to webchromeclient
bparrishMines Mar 24, 2023
896ce9b
android impl without tests
bparrishMines Mar 24, 2023
f2f6f2a
remove imports
bparrishMines Mar 24, 2023
d7a54d0
update platform interface
bparrishMines Mar 24, 2023
38a727d
update interface again
bparrishMines Mar 24, 2023
44a0c2e
finish android implementation
bparrishMines Mar 24, 2023
8588900
change to platformwebviewpermissionrequest
bparrishMines Mar 24, 2023
631cfb8
version bump formatting and app facing implementation
bparrishMines Mar 24, 2023
4505f04
test constants
bparrishMines Mar 24, 2023
df40eca
redundant version checks
bparrishMines Mar 24, 2023
83c428a
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 6, 2023
e58ea0d
undo ios mocks change
bparrishMines Apr 6, 2023
07c3ac1
update webviewpermissionrequest
bparrishMines Apr 7, 2023
c8466f4
update app-facing package
bparrishMines Apr 7, 2023
e0801bc
add wkwebview method dart impl
bparrishMines Apr 7, 2023
da4a45f
finish dart ios code with failing tests
bparrishMines Apr 7, 2023
bfd6f27
formatting
bparrishMines Apr 7, 2023
e63f3e9
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 8, 2023
09eea9a
fix tests
bparrishMines Apr 8, 2023
c7606bb
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 10, 2023
10ef24c
controller test
bparrishMines Apr 10, 2023
d516b34
webview data converters
bparrishMines Apr 10, 2023
85f2b56
implement callback
bparrishMines Apr 10, 2023
5fbca14
update app-facing package
bparrishMines Apr 10, 2023
482b7c1
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 10, 2023
a291c52
fix lint errors
bparrishMines Apr 10, 2023
fb2b779
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 11, 2023
eeff573
try fix test
bparrishMines Apr 11, 2023
7a9a039
fix objc test
bparrishMines Apr 11, 2023
356e8ad
prompt by default
bparrishMines Apr 11, 2023
4800b3a
comment
bparrishMines Apr 11, 2023
fd3af75
test that ios works
bparrishMines Apr 11, 2023
7570c5b
add permissions to debug camera access
bparrishMines Apr 11, 2023
8946b87
reference permissions and version bump
bparrishMines Apr 11, 2023
23121e5
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 11, 2023
7d71719
undo webview_flutter change
bparrishMines Apr 11, 2023
6717cf4
improve docs and fix tests
bparrishMines Apr 11, 2023
d566b5e
naming
bparrishMines Apr 11, 2023
8e39a28
add version check
bparrishMines Apr 11, 2023
922028e
fix integration test
bparrishMines Apr 11, 2023
e592ae1
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 13, 2023
adc7f3c
add baseline back
bparrishMines Apr 13, 2023
9a57b03
fix lint
bparrishMines Apr 13, 2023
96b1515
add call to observe URL back
bparrishMines Apr 13, 2023
bfe3d64
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 15, 2023
44aaf7e
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 18, 2023
4f4c253
some of the review comments
bparrishMines Apr 18, 2023
bef6efa
fix methods, docs and make template naming consistent
bparrishMines Apr 19, 2023
f155afb
update dataconverter class names
bparrishMines Apr 19, 2023
f8b2691
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 19, 2023
68610f1
fix old method names
bparrishMines Apr 19, 2023
07a074b
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 19, 2023
a33ea19
docs and added a test
bparrishMines Apr 19, 2023
0638c30
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 20, 2023
d9c4a6e
add a comment about not recognizing permissions
bparrishMines Apr 20, 2023
a6496b8
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 21, 2023
fd13fce
Merge branch 'main' of github.com:flutter/packages into webview_permi…
bparrishMines Apr 21, 2023
ec80236
version bump
bparrishMines Apr 21, 2023
b065c45
move macro
bparrishMines Apr 21, 2023
535374b
fix files
bparrishMines Apr 21, 2023
b8a409f
last file
bparrishMines Apr 21, 2023
ba07eb1
export main_file.PlatformWebViewPermissionRequest
bparrishMines Apr 21, 2023
8715691
undo the export
bparrishMines Apr 21, 2023
520bf59
add more documention
bparrishMines Apr 22, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
docs and added a test
  • Loading branch information
bparrishMines committed Apr 19, 2023
commit a33ea193f4897d130eff6efbcc0a35157f6b9da7
Original file line number Diff line number Diff line change
Expand Up @@ -613,7 +613,7 @@ void main() {
expect(fileSelectorParams.mode, FileSelectorMode.open);
});

test('setOnPermissionRequest', () async {
test('setOnPlatformPermissionRequest', () async {
late final void Function(
android_webview.WebChromeClient instance,
android_webview.PermissionRequest request,
Expand Down Expand Up @@ -661,6 +661,48 @@ void main() {
verify(mockPermissionRequest.grant(permissionTypes));
});

test(
'setOnPlatformPermissionRequest callback not invoked when type is not recognized',
() async {
late final void Function(
android_webview.WebChromeClient instance,
android_webview.PermissionRequest request,
) onPermissionRequestCallback;

final MockWebChromeClient mockWebChromeClient = MockWebChromeClient();
final AndroidWebViewController controller = createControllerWithMocks(
createWebChromeClient: ({
dynamic onProgressChanged,
dynamic onShowFileChooser,
void Function(
android_webview.WebChromeClient instance,
android_webview.PermissionRequest request,
)? onPermissionRequest,
}) {
onPermissionRequestCallback = onPermissionRequest!;
return mockWebChromeClient;
},
);

bool callbackCalled = false;
await controller.setOnPlatformPermissionRequest(
(PlatformWebViewPermissionRequest request) async {
callbackCalled = true;
},
);

final MockPermissionRequest mockPermissionRequest =
MockPermissionRequest();
when(mockPermissionRequest.resources).thenReturn(<String>['unknownType']);

onPermissionRequestCallback(
android_webview.WebChromeClient.detached(),
mockPermissionRequest,
);

expect(callbackCalled, isFalse);
});

test('runJavaScript', () async {
final MockWebView mockWebView = MockWebView();
final AndroidWebViewController controller = createControllerWithMocks(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
## 2.2.0
## 2.3.0

* Adds support to receive permission requests. See
`PlatformWebViewController.setOnPlatformPermissionRequest`.

## 2.2.0

* Updates minimum Flutter version to 3.3.
* Fixes common typos in tests and documentation.
* Adds support for listening to HTTP errors. See
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ class WebViewPermissionResourceType {

/// Permissions request when web content requests access to protected resources.
///
/// A response MUST be provided by calling a method from [response].
/// A response MUST be provided by calling a provided method.
///
/// Platform specific implementations can add additional methods when extending
/// this class.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -239,6 +239,9 @@ enum WKMediaCaptureType {
microphone,

/// An unknown media device.
///
/// This does not represent an actual value provided by the platform and only
/// indicates a value was provided that we don't currently support.
unknown,
}

Expand Down