Certificate errors in the browser are confusing

Bug #1504853 reported by Chris Coulson on 2015-10-10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Chris Coulson
webbrowser-app (Ubuntu)
Olivier Tilloy

Bug Description

When the browser displays a certificate error, it indicates the request URL that the error originated from. This is fine. However, if the navigation is content initiated then the addressbar will indicate the URL of the currently committed page (which will be different to the URL of the page causing the error, which is displayed in the error UI provided by the browser).

I have an idea to fix this by navigating the webview to a placeholder interstitial page whilst waiting for a response from the browser. This will update the addressbar, keep the navigation history consistent and also make the back button behave the same as Chrome.

Related branches

Changed in oxide:
importance: Undecided → Medium
status: New → In Progress
assignee: nobody → Chris Coulson (chrisccoulson)
milestone: none → branch-1.11
description: updated
Chris Coulson (chrisccoulson) wrote :

For non-overridable errors, this change will require webbrowser-app to explicitly destroy CertificateError once the error sheet is dismissed, in order to work correctly.

Olivier, that shouldn't be a problem, should it?

Olivier Tilloy (osomon) wrote :

No, that shouldn’t be a problem.

Changed in webbrowser-app (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
assignee: nobody → Olivier Tilloy (osomon)
Chris Coulson (chrisccoulson) wrote :

Actually, a browser change might not be needed. For non-overridable errors, the browser doesn't present any buttons in the error UI which means that the only way to dismiss the error is hit the back button. This still works correctly with my proposed changes, because CertificateError.cancelled fires.

If the browser presented a dismiss button in the error UI (which I thought it did when I suggested we might need a browser change), then the browser would need to ensure the CertificateError is deleted so that Oxide removes the placeholder transient page that gets inserted. That doesn't appear to be the case though.

So far the browser is working fine with my changes

Chris Coulson (chrisccoulson) wrote :

Having the back button behave the same whether the error is overridable or non-overridable makes the experience much better as well :)

Olivier Tilloy (osomon) wrote :

That’s great, looking forward to this change!

Chris Coulson (chrisccoulson) wrote :

I might shelve this for 1.11. There's a few issues with the way WebView and our RenderWidgetHostView implementation interact when InterstitialPage is used which requires some extra work to make this shippable. I've pushed the changes I have so far in my branch

Changed in oxide:
milestone: branch-1.11 → branch-1.12
Changed in oxide:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers