Bug 137159 - Harmonize UI in Options-LibreOffice-View when works a Skia black list
Summary: Harmonize UI in Options-LibreOffice-View when works a Skia black list
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
7.1.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.1.0 target:7.0.4
Keywords: needsUXEval
Depends on:
Blocks: Options-Dialog-View Skia
  Show dependency treegraph
 
Reported: 2020-09-30 12:23 UTC by Roman Kuznetsov
Modified: 2020-11-11 14:42 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
Screenshot with problem (201.66 KB, image/png)
2020-09-30 12:27 UTC, Roman Kuznetsov
Details
Skia rendering not selected, but still get Skia Vulkan with override (373.37 KB, image/png)
2020-09-30 18:06 UTC, V Stuart Foote
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Kuznetsov 2020-09-30 12:23:23 UTC
Description:
Garmonize UI in Options-LibreOffice-View when works a Skia black list

Now we have a Skia black list for blocking Skia/Vulcan for problem videocards like some from Nvidia.
And in that case we have automatically activated Skia software rendering. We can see it in Help-About dialog.
And in Options-LibreOffice-View dialog in that case we should see an enabled "Force Skia softaware rendering" option, but it isn't activated


Steps to Reproduce:
1. Make sure you have activated Skia rendering without activated "Force Skia softaware rendering" option
2. Start LibreOffice on system with old Nvidia or Intel HD3000 videocard
3. Look at Help-About dialog -> you should see Skia/Raster there
4. Look at Options-LibreOffice-View dialog -> you should see that "Force Skia softaware rendering" option is still disabled

Actual Results:
"Force Skia softaware rendering" option is disabled when you have a problem hardware and LO forces Skia/Raster rendering itself

Expected Results:
"Force Skia softaware rendering" option is automatically enabled when you have a problem hardware and LO forces Skia/Raster rendering itself


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 7.1.0.0.alpha0+ (x64)
Build ID: 52a49f9e480ca03e231cfda82640a928393131c9
CPU threads: 4; OS: Windows 10.0 Build 18362; UI render: Skia/Raster; VCL: win
Locale: ru-RU (ru_RU); UI: en-US
Calc: threaded
Comment 1 Roman Kuznetsov 2020-09-30 12:27:02 UTC
Created attachment 165975 [details]
Screenshot with problem
Comment 2 V Stuart Foote 2020-09-30 12:42:13 UTC
if feasible +1, with denylist handling blocking Vulkan rendering seems it should also activate the force raster rendering check box as suggested.
Comment 3 Luboš Luňák 2020-09-30 14:30:58 UTC
- The option is called 'force'. The opposite of forcing is not forcing the other way, it's letting things be. So there's no UI problem.

- If LO detects the HW is problematic, then it just should be disabled and an easy checkbox to ignore that is just a recipe for problems. If the user is knowledgeable enough there's the expert configuration or SAL_FORCESKIA, and if the user is not knowledgeable then they shouldn't be messing with things.

- How would that actually work technically? Let's stay LO starts and detects problematic HW, but the option is unchecked. How will LO know whether the option is unchecked because you unchecked it or because it's never been checked? How do options why are they unchecked?
Comment 4 V Stuart Foote 2020-09-30 14:51:01 UTC
(In reply to Luboš Luňák from comment #3)
> - The option is called 'force'. The opposite of forcing is not forcing the
> other way, it's letting things be. So there's no UI problem.
> 
> - If LO detects the HW is problematic, then it just should be disabled and
> an easy checkbox to ignore that is just a recipe for problems. If the user
> is knowledgeable enough there's the expert configuration or SAL_FORCESKIA,
> and if the user is not knowledgeable then they shouldn't be messing with
> things.
> 
> - How would that actually work technically? Let's stay LO starts and detects
> problematic HW, but the option is unchecked. How will LO know whether the
> option is unchecked because you unchecked it or because it's never been
> checked? How do options why are they unchecked?

But with the DENYLIST handling, are we blocking Skia altogether, or just Vulkan GPU rendering?  Meaning, how would the user know--looking at the Help -> About and seeing Default (i.e. GDI) rendering?
Comment 5 V Stuart Foote 2020-09-30 18:06:19 UTC
Created attachment 165986 [details]
Skia rendering not selected, but still get Skia Vulkan with override

Hey Luboš, not sure we are getting exactly what we need with the DENYLIST processing.

In the attached clip of the Options -> View panel, I've unchecked the 'Use Skia for all rendering' but left the 'Ignore Skia denylist' checked which I'd been testing on a Windows 10 box with nVidia GPU.

You can see in the Help -> About dialog that LO is coming up with Skia/Vulkan

Would have expected that with the 'Use Skia for all rendering' that it would come up with 'default' GDI rendeing?
Comment 6 Luboš Luňák 2020-10-02 08:48:50 UTC
(In reply to V Stuart Foote from comment #4)
> But with the DENYLIST handling, are we blocking Skia altogether, or just
> Vulkan GPU rendering?

Just Vulkan.

(In reply to V Stuart Foote from comment #5)
> In the attached clip of the Options -> View panel, I've unchecked the 'Use
> Skia for all rendering' but left the 'Ignore Skia denylist' checked which
> I'd been testing on a Windows 10 box with nVidia GPU.

That is a bug.
Comment 7 Heiko Tietze 2020-10-05 09:33:37 UTC
(In reply to Luboš Luňák from comment #3)
> So there's no UI problem.

How about this (round brackets = radio buttons, tooltips after //)

(o) Windows GDI //Your graphic card is probably not fully supported; use this option for maximum compatibility but least acceleration
( ) Skia/Raster //Skia 2D graphics library with no 3D acceleration
( ) Skia/Vulcan //Skia 2D graphics library with Vulcan 3D acceleration

Using radio buttons it becomes more clear what choice can be made (instead of three checkboxes- with indentation- that might allow complex settings). The terms are clearly tech-talk and no average user has ever heard about Skia. The alternative is something like "Acceleration: None, Medium, Maximum" but we could also hope that our users are smarter and provide tooltips (suggestion in the remarks).
Comment 8 Luboš Luňák 2020-10-16 11:12:31 UTC
I think the actual problem is that some of the options are expert options and so do not belong in the UI. I'll remove the forcing option and keep it only in the expert configuration. https://gerrit.libreoffice.org/c/core/+/104425
Comment 9 Heiko Tietze 2020-10-16 11:19:43 UTC
(In reply to Luboš Luňák from comment #8)
> I'll remove the forcing option and keep it only in the expert configuration.

One small step for... thanks for taking care. What bothers me is the meaningless indentation and the mutual dependency of checkboxes. Is my proposal in c7 missing the mark?
Comment 10 Luboš Luňák 2020-10-16 12:22:26 UTC
The UI (with the followup commit in gerrit) reflects how the settings work internally. Skia can be disabled or enabled, and if enabled, it can be forced to non-GPU mode. And from non-expert user's point of view it also allows troubleshooting in two relatively easy steps, either GPU is problematic, or Skia as a whole is problematic, and so the two checkboxes allow turning those two off.

Your proposal in principle does with 3 radiobuttons the same as two checkboxes do, so it would do as well. The main reason I don't want to do it that way is that I do not want to spend the time redoing the UI and adding code to map the 3 setting to 2 options, but I don't particularly care otherwise. But even then it would need some rewording (IMO normal user shouldn't need to care about things like 'Vulkan 3D', and 'Skia disabled/enabled' is not 'acceleration none/medium' but simply two different code paths using different graphics API).
Comment 11 Commit Notification 2020-10-20 17:20:38 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/fea1d3a487faef85b2b7aa8a87075f81ea22af76

remove ui for 'forceskia' AKA 'ignore skia denylist' (tdf#137159)

It will be available in 7.1.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Commit Notification 2020-10-26 21:11:59 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "libreoffice-7-0":

https://git.libreoffice.org/core/commit/b4e5a0e06d50853f057c1a192f4ee6bd5ee90fe0

remove ui for 'forceskia' AKA 'ignore skia denylist' (tdf#137159)

It will be available in 7.0.4.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.