This site will have limited functionality while we undergo maintenance to improve your experience. If an article doesn't solve your issue and you want to ask a question, we have our support community waiting to help you at @FirefoxSupport on Twitter and/r/firefox on Reddit.

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

As webdeveloper : how can i ask canvas usage before using it ?

  • 8 svar
  • 1 har dette problemet
  • 50 views
  • Siste svar av Shnoulle

more options

Firefox allow to disable access to canvas for lowering fingerprinting, it's cool !

But as web developer : i like to ask this access before try to using it,

Something like :

1. Do you alllow canvas ? 2. Show the browser part 3. Wait for user answer 4. It's OK : download PDF done with canvass 5. It's not OK : shown an error to user.

To avoid such situation (see screencast)

Firefox allow to disable access to canvas for lowering fingerprinting, it's cool ! But as web developer : i like to ask this access before try to using it, Something like : 1. Do you alllow canvas ? 2. Show the browser part 3. Wait for user answer 4. It's OK : download PDF done with canvass 5. It's not OK : shown an error to user. To avoid such situation (see screencast)
Attached screenshots

Valgt løsning

I think i ask access before using it, when page load. This allow more time for user to click on accept.

Can we close now ? I put the solution when i made it in github

Les dette svaret i sammenhengen 👍 0

All Replies (8)

more options
more options

You appear to be using Firefox 101.0.1 with "Resist Fingerprinting" enabled. This means that by default canvas access is declined.

You can look at this pref on the about:config page.

more options

I understand this , and "Resist Fingerprinting" become more common (hope) tomorrow.

> But as web developer : i like to ask this access before try to using it,


As a web developer : did a good solution exist to open the "requester" and allow user to check "Yes" before using it ?

more options

"Resist Fingerprinting" is more aimed at the browser created by the Tor project as there privacy is more important than website compatibility. On release versions you need to accept that it has a lot of limitations like the timezone and screen dimensions and access to local fonts and also access to canvas. With the pref I mentioned above, Firefox should ask for permission to access canvas instead of automatically declining it. As a web developer you can't affect this behavior, it is up to the visitor to decide whether to accept or decline.

more options

Then : there are no solution to wait for the answer of the user before continue (or not) javascript. Like a confirm method.

You don't have to use long sentence, just tell : no solution …

more options

For the developer of a webpage there is no other way than warn the user that canvas access can possibly be blocked as I assume that you won't be able to detect this. In current releases using RFP still gives you a Firefox ESR user agent (currently 91.0), but that is about to be changed in 102+.

  • resistFingerprinting: report Firefox's real major version instead of the ESR version.
more options

Twelve years old, but does this work:

https://stackoverflow.com/questions/2745432/best-way-to-detect-that-html5-canvas-is-not-supported

Oh wait, the problem is not that canvas access is denied, the problem is that the image data is silently randomized.

I don't know how to efficiently figure that out (I don't work with any image libraries).

more options

Valgt løsning

I think i ask access before using it, when page load. This allow more time for user to click on accept.

Can we close now ? I put the solution when i made it in github