View Issue Details

IDProjectCategoryView StatusLast Update
0007164Talerwallet (WebExtensions)public2022-03-21 13:41
ReporterFlorian Dold Assigned Tosebasjm  
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Summary0007164: in-wallet pages break back button when payment is requested
DescriptionWhen the wallet handles a "taler://pay" header, the back button doesn't work anymore. Instead of going back to the QR code and/or going back to the article index on shop.demo.taler.net, the back button just stays in the wallet page.
TagsNo tags attached.

Activities

sebasjm

2022-01-31 18:56

developer   ~0018674

fixed in c47311b4..47bd790b

Florian Dold

2022-02-01 11:35

manager   ~0018675

The back button now seems to work for withdrawal.

However, on Firefox I'm still "trapped" in the payment dialog. Reproducible on the blog demo shop.

sebasjm

2022-03-15 16:06

developer   ~0018794

with balance in the wallet
activate "Automatically open wallet"
go to the demo shop
click the first article
should see the payment confirmation page

chrome behaviour (correct):
 * hitting back button go to the shop web page

firefox behavior (incorrect):
 * hitting back button does some work but stays
 * hitting again goes to the shop page

sebasjm

2022-03-21 13:39

developer   ~0018822

the is breaking especially after e84cb95887

since reading the headers for a 402 request is non-blocking we are waiting and then redirecting to the wallet.

using loadReplace parameter on chrome.tabs.update seems to be the right choice and works as expected
it is documented on Mozilla [1] but not for chrome [2]

an alternative could be using browser.tabs.executeScript

[1] https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs/update

loadReplaceOptional
boolean. Whether the new URL should replace the old URL in the tab's navigation history, as accessed via the "Back" button.

For example, suppose the user creates a new tab using Ctrl+T. By default, in Firefox, this would load "about:newtab". If your extension then updates this page using tabs.update, without loadReplace, the "Back" button will be enabled and will take the user back to "about:newtab". If the extension sets loadReplace, then the "Back" button will be disabled and it will be just as if the URL supplied by the extension was the first page visited in that tab.

Note though that the original URL will still appear in the browser's global history.


[2] https://developer.chrome.com/docs/extensions/reference/tabs/#method-update

sebasjm

2022-03-21 13:41

developer   ~0018823

fix at 88bb9436

Issue History

Date Modified Username Field Change
2022-01-27 19:49 Florian Dold New Issue
2022-01-27 19:49 Florian Dold Status new => assigned
2022-01-27 19:49 Florian Dold Assigned To => Florian Dold
2022-01-27 20:21 Florian Dold Assigned To Florian Dold => sebasjm
2022-01-31 18:56 sebasjm Note Added: 0018674
2022-01-31 18:56 sebasjm Status assigned => resolved
2022-01-31 18:56 sebasjm Resolution open => fixed
2022-02-01 11:35 Florian Dold Status resolved => assigned
2022-02-01 11:35 Florian Dold Note Added: 0018675
2022-03-15 16:06 sebasjm Status assigned => acknowledged
2022-03-15 16:06 sebasjm Note Added: 0018794
2022-03-21 13:39 sebasjm Note Added: 0018822
2022-03-21 13:41 sebasjm Status acknowledged => resolved
2022-03-21 13:41 sebasjm Note Added: 0018823