Closed Bug 1280523 Opened 9 years ago Closed 3 years ago

"Use hardware acceleration when available" in about:preferences has no effect on Linux

Categories

(Core :: Graphics: Layers, defect, P3)

x86_64
Linux
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: botond, Unassigned)

References

Details

(Whiteboard: [gfx-noted])

In about:preferences, there is a checkbox "Use hardware acceleration when available" under Advanced -> General. On Linux, checking this does not enable hardware acceleration; you have to enable the pref "layers.acceleration.force-enabled" to do so. Here's how this works in the code. All the logic is in gfxPlatform::InitCompositorAccelerationPrefs(). - First, we start with the default value as returned by gfxPlatform::AccelerateLayersByDefault(). For Linux, this is false, which is reasonable (turning it on by default is tracked by bug 594876). - The value of the checkbox in about:preferences is reflected in a pref, "layers.acceleration.disabled". We check if that's true, and if it is override the default to be not accelerated (which on Linux is a no-op as the default is already not accelerated). However, if the pref is false (i.e. the checkbox is checked), we don't override the default to become accelerated. - Finally, if "layers.acceleration.force-enabled" is true, we override the default to become accelerated. I find the resulting effect - that checking the checkbox does nothing - quite counterintuitive. I would suggest doing one of the following: (1) If the checkbox is checked, honour it (i.e. override the default to become accelerated.) (2) Hide the checkbox in about:preferences. If we choose to do (2), we may still want to consider switching to (1) sooner than flipping the default (bug 594876). Thoughts?
Yeah, "when available" covers it - it isn't available. It will be.
Whiteboard: [gfx-noted]
Might there be sense in making it "available", but not on by default just yet? The motivation would be to make it easier for people to turn it on if they wish (about:preferences rather than about:config).
See Also: → 1289134
(In reply to Botond Ballo [:botond] from comment #2) > Might there be sense in making it "available", but not on by default just > yet? > > The motivation would be to make it easier for people to turn it on if they > wish (about:preferences rather than about:config). It would mean getting a list of bugs that absolutely have to be resolved before we would do it, and changing the default preference to false, but at that point, it sounds reasonable.
> It would mean getting a list of bugs that absolutely have to be resolved before we would do it Are there any that you know of? I've tested "layers.acceleration.force-enabled" in the last months on multiple machines and it improved rendering performance on every single one of them (in one case it actually made YouTube video playback usable at all!). Also I haven't run into any issue at all. So in my experience this should *definitely* be available via the preference toggle, if not even enabled by default.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.