Navigation is blocked for custom url scheme after user reloads the page
Reported by
spl...@splatt.ru,
Sep 7
|
|||||
Issue description
Application Version: 69.0.3497.86
Android Build Number: ONEPLUS A6003_22_180422
Device: OnePlus A6003
Steps to reproduce:
1. Open the following page in Custom Chrome Tab:
<!doctype html>
<html><head><title>Test</title></head>
<body>
<script>
setTimeout(function(){
window.location = "foo://bar";
}, 5000);
</script>
</body>
</html>
2. During the 5 second delay, swipe top to bottom to reload the page contents
Observed behavior:
- "Navigation is blocked" error occurs and user is not redirected back to the application
Expected behavior:
- Reloading the page should not break custom url scheme.
Frequency:
10/10
Additional comments:
- This breaks every authentication/SSO flow - if user refreshes the page navigation chain is broken and user is not able to sign-on
- It is unclear what triggers "Navigation is blocked" error and what are best practices when designing an SSO / authentication flow using custom chrome tab.
,
Sep 10
@splatt: Please provide test URL containing code, this would help in further triaging. If possible please also provide screencast on reproducing the issue. Thanks!
,
Sep 10
@chelamcherla Attached is a screencast of my test app recorded with "adb shell screenrecord". URL I am hitting is: https://leonidumanskiy.github.io/custom_tabs_test.html As you can see on the screencast, first time I open a Custom Chrome Tab it redirects me back to the application correctly. During the second part of the screencast, I reloaded the page (by swiping it down) during 5 second delay and it did not redirect me back to the application. The following error was logged: "09-10 15:05:53.465: I/chromium(12335): [INFO:CONSOLE(0)] "Navigation is blocked: foo://bar", source: https://leonidumanskiy.github.io/custom_tabs_test.html (0)"
,
Sep 10
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Sep 20
Hello, Is there update on this?
,
Nov 2
Hello, What is the status on this? Do I need to provide any more details on this bug for you guys to confirm it? @chelamcherla
,
Nov 5
,
Nov 5
Hi, Thanks for the report, and sorry for the delay. +peconn: I suspect this is because isFromIntent (in https://cs.chromium.org/chromium/src/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationHandler.java) is false for reloads, and then I don't really recall the expected behavior. Do you know whether window.location is considered a redirect?
,
Nov 7
Sorry, I'm not sure - I know that there's a distinction in PageTransitionType [1], but that's it. [1] https://cs.chromium.org/chromium/src/ui/base/page_transition_types.h |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by chelamcherla@chromium.org
, Sep 10