Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[webview_flutter] Implement platform interface for JavaScript dialog #5670

Merged

Conversation

jsharp83
Copy link
Contributor

@jsharp83 jsharp83 commented Dec 13, 2023

Adds the platform interface implementation for JavaScript dailog.

This PR is part of a series of PRs that aim to close flutter/flutter#30358 (comment)
The PR that contains all changes can be found at #4704

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/packages repo does use dart format.)
  • I signed the CLA.
  • The title of the PR starts with the name of the package 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.

Copy link
Contributor

@stuartmorgan stuartmorgan 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 some comment nits I missed in the main PR.

/// Message to be displayed in the window.
final String message;

/// The url of the page requesting the dialog.
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: URL

(In comments it should be capitalized normally, rather than as code.)

/// Message to be displayed in the window.
final String message;

/// The url of the page requesting the dialog.
Copy link
Contributor

Choose a reason for hiding this comment

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

URL

/// Message to be displayed in the window.
final String message;

/// The url of the page requesting the dialog.
Copy link
Contributor

Choose a reason for hiding this comment

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

URL

required this.url,
});

/// Message to be displayed in the window.
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: The message [...]

(To be consistent with the other comments.)

required this.url,
});

/// Message to be displayed in the window.
Copy link
Contributor

Choose a reason for hiding this comment

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

The message [...]

required this.defaultText,
});

/// Message to be displayed in the window.
Copy link
Contributor

Choose a reason for hiding this comment

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

The message [...]

@jsharp83 jsharp83 force-pushed the platform-interface-for-javascript-panel branch from ca18ce9 to b535b22 Compare December 14, 2023 18:41
@jsharp83 jsharp83 force-pushed the platform-interface-for-javascript-panel branch from 88c04ee to 68bed91 Compare December 16, 2023 00:28
@jsharp83
Copy link
Contributor Author

@bparrishMines Can you check this PR? Thanks

Copy link
Contributor

@bparrishMines bparrishMines left a comment

Choose a reason for hiding this comment

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

LGTM

@bparrishMines bparrishMines added the autosubmit Merge PR when tree becomes green via auto submit App label Dec 19, 2023
@auto-submit auto-submit bot merged commit 65e0a81 into flutter:main Dec 19, 2023
80 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 20, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 20, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Dec 20, 2023
flutter/packages@be52ac8...dc5b267

2023-12-20 engine-flutter-autoroll@skia.org Roll Flutter from 0eb7881 to da0cd69 (15 revisions) (flutter/packages#5729)
2023-12-20 49699333+dependabot[bot]@users.noreply.github.com [webview]: Bump androidx.annotation:annotation from 1.7.0 to 1.7.1 in /packages/webview_flutter/webview_flutter_android/android (flutter/packages#5702)
2023-12-19 jsharp83@gmail.com [webview_flutter] Implement platform interface for JavaScript dialog (flutter/packages#5670)
2023-12-19 JeroenWeener@users.noreply.github.com [webview_flutter] Support for handling basic authentication requests (iOS) (flutter/packages#5455)
2023-12-19 engine-flutter-autoroll@skia.org Roll Flutter from cdc83e5 to 0eb7881 (17 revisions) (flutter/packages#5722)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
ChopinDavid pushed a commit to wwt/flutter-packages that referenced this pull request Dec 28, 2023
…lutter#5670)

Adds the platform interface implementation for JavaScript dailog.

This PR is part of a series of PRs that aim to close flutter/flutter#30358 (comment)
The PR that contains all changes can be found at flutter#4704
CoderDake pushed a commit to CoderDake/flutter that referenced this pull request Dec 28, 2023
flutter/packages@be52ac8...dc5b267

2023-12-20 engine-flutter-autoroll@skia.org Roll Flutter from 0eb7881 to da0cd69 (15 revisions) (flutter/packages#5729)
2023-12-20 49699333+dependabot[bot]@users.noreply.github.com [webview]: Bump androidx.annotation:annotation from 1.7.0 to 1.7.1 in /packages/webview_flutter/webview_flutter_android/android (flutter/packages#5702)
2023-12-19 jsharp83@gmail.com [webview_flutter] Implement platform interface for JavaScript dialog (flutter/packages#5670)
2023-12-19 JeroenWeener@users.noreply.github.com [webview_flutter] Support for handling basic authentication requests (iOS) (flutter/packages#5455)
2023-12-19 engine-flutter-autoroll@skia.org Roll Flutter from cdc83e5 to 0eb7881 (17 revisions) (flutter/packages#5722)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
@reidbaker reidbaker mentioned this pull request Jan 12, 2024
auto-submit bot pushed a commit that referenced this pull request Jan 18, 2024
…iew (#5795)

* There are cases where Web calls System Popup with javascript on webview_flutter
* At this time, the message comes in the WKUIDelegate part in iOS.
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1537406-webview
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1536489-webview
* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: #5670
* The PR that contains all changes can be found at #4704
auto-submit bot pushed a commit that referenced this pull request Jan 24, 2024
…5796)

* There are cases where Web calls System Popup with javascript on webview_flutter
* Android has a interface on WebChromeClient
   * https://developer.android.com/reference/android/webkit/WebChromeClient#onJsAlert(android.webkit.WebView,%20java.lang.String,%20java.lang.String,%20android.webkit.JsResult)

* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: #5670
* The PR that contains all changes can be found at #4704
auto-submit bot pushed a commit that referenced this pull request Feb 9, 2024
…#4704)

* there are cases where Web calls System Popup with javascript on webview_flutter
* At this time, the message comes in the WKUIDelegate part in iOS.
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1537406-webview
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1536489-webview
* Android also has a interface on WebChromeClient
   * https://developer.android.com/reference/android/webkit/WebChromeClient#onJsAlert(android.webkit.WebView,%20java.lang.String,%20java.lang.String,%20android.webkit.JsResult)
* It was implemented according to the requirements of the code review of the #4555
* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: #5670
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…lutter#5670)

Adds the platform interface implementation for JavaScript dailog.

This PR is part of a series of PRs that aim to close flutter/flutter#30358 (comment)
The PR that contains all changes can be found at flutter#4704
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…iew (flutter#5795)

* There are cases where Web calls System Popup with javascript on webview_flutter
* At this time, the message comes in the WKUIDelegate part in iOS.
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1537406-webview
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1536489-webview
* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: flutter#5670
* The PR that contains all changes can be found at flutter#4704
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…lutter#5796)

* There are cases where Web calls System Popup with javascript on webview_flutter
* Android has a interface on WebChromeClient
   * https://developer.android.com/reference/android/webkit/WebChromeClient#onJsAlert(android.webkit.WebView,%20java.lang.String,%20java.lang.String,%20android.webkit.JsResult)

* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: flutter#5670
* The PR that contains all changes can be found at flutter#4704
arc-yong pushed a commit to Arctuition/packages-arc that referenced this pull request Jun 14, 2024
…flutter#4704)

* there are cases where Web calls System Popup with javascript on webview_flutter
* At this time, the message comes in the WKUIDelegate part in iOS.
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1537406-webview
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1536489-webview
* Android also has a interface on WebChromeClient
   * https://developer.android.com/reference/android/webkit/WebChromeClient#onJsAlert(android.webkit.WebView,%20java.lang.String,%20java.lang.String,%20android.webkit.JsResult)
* It was implemented according to the requirements of the code review of the flutter#4555
* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: flutter#5670
bill-skdnd pushed a commit to skdnd-metaspace/webview_flutter_wkwebview that referenced this pull request Aug 2, 2024
…iew (#5795)

* There are cases where Web calls System Popup with javascript on webview_flutter
* At this time, the message comes in the WKUIDelegate part in iOS.
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1537406-webview
   * https://developer.apple.com/documentation/webkit/wkuidelegate/1536489-webview
* Related issue: flutter/flutter#30358 (comment)
* Related Interface PR: flutter/packages#5670
* The PR that contains all changes can be found at flutter/packages#4704
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App p: webview_flutter
Projects
None yet
Development

Successfully merging this pull request may close these issues.

alert() method doesn't work in WebView
3 participants