Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Feb 22, 2023. It is now read-only.

[webview_flutter_wkwebview] Add support for WKUIDelegate #4809

Merged
merged 5 commits into from
Feb 17, 2022

Conversation

bparrishMines
Copy link
Contributor

@bparrishMines bparrishMines commented Feb 11, 2022

Add support for WKUIDelegate.

No version change:
Part of flutter/flutter#93732 and doesn't make any changes to the current implementation.

No CHANGELOG change: Incremental unused code doesn't need to be noted in the CHANGELOG.

Pre-launch Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
  • I read the Tree Hygiene wiki page, which explains my responsibilities.
  • I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/plugins repo does use dart format.)
  • I signed the CLA.
  • The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
  • I listed at least one issue that this PR fixes in the description above.
  • I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
  • I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
  • I updated/added relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or this PR is test-exempt.
  • All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@github-actions github-actions bot added p: webview_flutter Edits files for a webview_flutter plugin platform-ios labels Feb 11, 2022
@bparrishMines bparrishMines changed the title [WIP] ui delegate support Add support for WKUIDelegate Feb 15, 2022
@bparrishMines bparrishMines changed the title Add support for WKUIDelegate [webview_flutter_wkwebview] Add support for WKUIDelegate Feb 15, 2022
if (!navigationAction.targetFrame.isMainFrame) {
webView.loadRequest(navigationAction.request);
}
});
}
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Weird. I'm surprised nobody has ever filed a bug about this behavior, because it's pretty surprising.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

@stuartmorgan-g stuartmorgan-g left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with nits

/// Wraps [WKUIDelegate](https://developer.apple.com/documentation/webkit/wkuidelegate?language=objc).
class WKUIDelegate {
/// Indicates a new [WebView] was requested to be created with [configuration].
void setOnCreateWebView(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this a function named setFoo rather than a set foo? (This may apply to code from previous PRs and I just didn't notice it then.)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's my mistake. It was supposed to have a Future<void>. But, I suppose using set foo IS more Darty. But it also would be an asynchronous function so I'm not sure which is better. I can't think of an instance where it would need to be awaited though.

if (!navigationAction.targetFrame.isMainFrame) {
webView.loadRequest(navigationAction.request);
}
});
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Weird. I'm surprised nobody has ever filed a bug about this behavior, because it's pretty surprising.

@bparrishMines bparrishMines merged commit e3ebc88 into flutter:main Feb 17, 2022
@bparrishMines bparrishMines deleted the ios_webview_3 branch February 17, 2022 22:49
debokarmakar pushed a commit to nurture-farm/plugins that referenced this pull request Feb 18, 2022
* google/master:
  [webview_flutter_wkwebview] Add support for `WKUIDelegate` (flutter#4809)
  [camera] Restore compatibility with older Flutter (flutter#4885)
  [ci.yaml] Migrate to Cocoon scheduler (flutter#4884)
  Roll Flutter from adafd66 to 93c0c04 (6 revisions) (flutter#4880)
  [shared_preferences] upgraded ios to using pigeon (flutter#4732)
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 18, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
p: webview_flutter Edits files for a webview_flutter plugin platform-ios
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants