Bug 151522 - Tools -> Options -> Accessibility 'Automatically detect high contrast mode' maybe needs a rework
Summary: Tools -> Options -> Accessibility 'Automatically detect high contrast mode' m...
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
7.5.0.0 alpha0+
Hardware: All Windows (All)
: medium normal
Assignee: Caolán McNamara
URL:
Whiteboard: target:7.5.0 inReleaseNotes:7.5
Keywords: accessibility
Depends on:
Blocks: High-Contrast
  Show dependency treegraph
 
Reported: 2022-10-14 03:29 UTC by V Stuart Foote
Modified: 2022-12-06 16:39 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description V Stuart Foote 2022-10-14 03:29:16 UTC
The Tools -> Options -> Accessibility 'Automatically detect high contrast mode of operating system' was toggled to disabled by default for bug 67860

With recent work to bring Dark color theme support to Windows builds, and improvements to the High Contrast (HC) handling, we need to ask if we are still doing the right thing for Assistive Technology by disabling the HC detection by default.

As on the Linux os/DE previously, with the checkbox enabled on Windows 10 in Dark color mode the HC toggle triggers.  The icon theme changes to Sifr; UI element colors are "reduced" for HC mode support.

While this is the correct accommodation for HC Assistive Technology, it is not really wanted for the normal user choosing a dark os/DE. On the other hand its presence on the Tools -> Options -> Accessibility panel is not a very "discoverable" location for the user in need of Assistive Technology support.

Disabling the HC detection was probably OK at the time as the Windows pool of users was not really affected.  But with recent improvement, it seems our "detection" of intentional HC mode of an os/DE needs to be made more nuanced and to do a better job. 

And to allow the mode to be set by default, as needed for Assistive Technology, but avoid switching LO into HC mode for those not intending it to be across the os/DE.
Comment 1 Caolán McNamara 2022-10-14 19:11:30 UTC
Windows has an explicit SPI_GETHIGHCONTRAST flag for HighContrast, and both we and firefox take a gtk-theme-name of "HighContrast" to indicate that for the gtk case.

AutoDetectSystemHC does look fairly hazardous, not sure if its better to just simply remove it, or replace it with Automatic/on/off (where automatic would be the default case of just use SPI_GETHIGHCONTRAST/gtk-theme-name/equivalent and no guess based on colors
Comment 2 Commit Notification 2022-10-15 19:10:03 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/75fd3093ea748e35beca1f903e7828ad82f2372f

tdf#151522 drop Accessibility::AutoDetectSystemHC

It will be available in 7.5.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 3 Commit Notification 2022-10-15 20:38:28 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/5bf38da0910f590159e8fa4fe359f98c7bd395a4

tdf#151522 add Accessibility::HighContrast

It will be available in 7.5.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 4 V Stuart Foote 2022-10-16 08:35:53 UTC
Removal of the checkbox toggle and replacement with  'Automatic (default) | Enable | Disable' HC control is working well.  Windows 10 in Dark mode is not triggering shift into the HC mode AT adjustments.

Also, when using any of the 4 default Windows HC mode themes--the colors of the theme are being being picked up, while the document bg / fg colors shift in line with the HC theme.

Note: to fully apply the LO theme change, and match os/DE HC theme, LibreOffice must be restarted.

Much better all around... thanks Caolán!

Version: 7.5.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 5a1f41a0d3aab15c113651f2edc9d4137ae99063
CPU threads: 8; OS: Windows 10.0 Build 19044; UI render: Skia/Vulkan; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: threaded
Comment 5 Xisco Faulí 2022-10-17 09:10:23 UTC
Maybe something to add to the release notes ? -> https://wiki.documentfoundation.org/ReleaseNotes/7.5
Comment 6 V Stuart Foote 2022-10-17 13:07:10 UTC
(In reply to Xisco Faulí from comment #5)
> Maybe something to add to the release notes ? ->
> https://wiki.documentfoundation.org/ReleaseNotes/7.5

Done, but probably needs an edit.
Comment 7 V Stuart Foote 2022-10-21 18:31:50 UTC
Had a chance to test on Win11
Version: 7.5.0.0.alpha0+ (x64) / LibreOffice Community
Build ID: 4d9b83a417bbde8148b67d2ab0abe9f4ae285276
CPU threads: 4; OS: Windows 10.0 Build 22000; UI render: Skia/Raster; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: CL threaded

Microsoft has reworked the AT and the Ease of Access now calls the HighContrast modes "Contrast themes" so find "System" -> "Accessibility" -> "Contrast themes"

Gone are the old "High Contrast #1", "High Contast #2", "High Contrast Black", and "High Contrast White" replaced by a new set of four.

"Aquatic"
"Desert"
"Dusk"
"Night Sky"

Feels like Aquatic, and Dusk are replacements for HC1 * HC2. Dusk feels like a replacement for High Contrast White, while Night Sky feels like a replacement for High Contrast Dark.  The UI allows direct editing of these themes, and save-as to new themes.

LibreOffice's new Tools -> Options -> Accessibility 'Options for High Contrast' control is working as expected.  Automatic is picking up the theme values from Win11 when one of the "Contrast themes" is selected.  And LOs theme usage will ignore the HC if the value is set disabled.

So, doing what is needed in Win11 as well.