You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
From a website creator perspective it would be nice to detect e-ink devices so that a more appropriate CSS stylesheet can be applied / animations can be disabled / etc.
As far as I can tell, the only semi-reliable way is to measure the screen update interval and if it is more than some threshold assume e-ink. (The pixelDepth and colorDepth properties don't work since browsers lie and claim 24-bit.) The problem here is that this process takes at least as long as the threshold to execute - if you turn on e-ink mode for all devices with a frame rate of one frame per 300ms or longer, that code must wait 300ms before it can confirm the frame rate and switch.
Since EinkBro is, from what I can tell, the browser people use on e-ink devices, detecting it would, I think, correlate with an e-ink device the overwhelming majority of times. But for good reasons it has a generic UA-string, so no luck there. I noticed a ˋX-Requested-Withˋ-header, but this is not accessible in JavaScript from the page itself and so requires server-side support.
I'm not well enough versed in browser compatibility issues, but is there some way that EinkBro could be detected? (Or does anyone have a solution for how to detect an e-ink device?)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
From a website creator perspective it would be nice to detect e-ink devices so that a more appropriate CSS stylesheet can be applied / animations can be disabled / etc.
As far as I can tell, the only semi-reliable way is to measure the screen update interval and if it is more than some threshold assume e-ink. (The pixelDepth and colorDepth properties don't work since browsers lie and claim 24-bit.) The problem here is that this process takes at least as long as the threshold to execute - if you turn on e-ink mode for all devices with a frame rate of one frame per 300ms or longer, that code must wait 300ms before it can confirm the frame rate and switch.
Since EinkBro is, from what I can tell, the browser people use on e-ink devices, detecting it would, I think, correlate with an e-ink device the overwhelming majority of times. But for good reasons it has a generic UA-string, so no luck there. I noticed a ˋX-Requested-Withˋ-header, but this is not accessible in JavaScript from the page itself and so requires server-side support.
I'm not well enough versed in browser compatibility issues, but is there some way that EinkBro could be detected? (Or does anyone have a solution for how to detect an e-ink device?)
Beta Was this translation helpful? Give feedback.
All reactions