nvda icon indicating copy to clipboard operation
nvda copied to clipboard

A color reported as "default" gives no information

Open CyrilleB79 opened this issue 1 year ago • 7 comments

Steps to reproduce:

With Wordpad / Log viewer

  • Open Wordpad or NVDA log viewer
  • Write some text
  • Press NVDA+F twice
  • In Ease-of-access options, turn on High contrast mode and choose a theme
  • In Wordpad or log viewer, * Press NVDA+F twice again.

With MS Word (no UIA)

  • Open Word
  • Write some text
  • Press twice NVDA+F

Actual behavior:

Wordpad / log viewer

"default color on default color" is reported each time, whatever the them is. However, visually, the text and background color changes according to the system colors (high contrast thems).

Word (no UIA)

The text color is reported as "default color". Note that with UIA, the color is reported as "Black on white" instead.

Expected behavior:

Something more explicit is reported:

Wordpad / log viwer

  1. "system text color on system background color"
  2. "Black on white" (or whatever corresponding to the visual appearance of the text according to the theme).
  3. A combination of 1 and 2 in any order, e.g. "Black (system text color) on white (system background color)"

Word

  1. "Automatic" which is a terminology used in Word to indicate that a color will be automatically chosen with a high contrast with the background.
  2. "Black"
  3. Both information, in any order, e.g. "Automatic (Black)"

Note that background does not seem to be reported in legacy Word. This is probably out of the scope of this ticket.

NVDA logs, crash dumps and other attachments:

N/A

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

2022.2

Windows version:

10

Name and version of other software in use when reproducing the issue:

Other information about your system:

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

Other recent versions behave the same way

If NVDA add-ons are disabled, is your problem still occurring?

Yes

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

Additional notes

  • I have not found any other place in NVDA where the color is not specified, i.e. specified as default. If there is indeed an other place, please comment there.
  • I had initially opened #13942 to fix the Wordpad issue. But I have realized that Word is impacted by the same type of issue and that it would be better to discuss first a solution in a separate issue.
  • I have not yet investigated if it is easy to know the real color of Word's automatic color (without using UIA). Maybe it's not so easy and it's not worth it since we are migrating towards UIA.

CyrilleB79 avatar Jul 27 '22 21:07 CyrilleB79

If there are situations where we can report more information that would be great. It may still be helpful to specify that the color reported is the default. However I think there are situations where we can't, the display model code (GDI+) is probably an example.

feerrenrut avatar Jul 28 '22 06:07 feerrenrut

I'd say that reporting "default" or "automatic" makes sense only when we cannot determine the real color. Given that @feerrenrut seems to agree with this it might make sense to continue with #13942 which fixes Wordpad and other richedit controls, and perhaps create a separate issue for legacy MS Word.

lukaszgo1 avatar Jul 28 '22 14:07 lukaszgo1

@lukaszgo1 you write:

I'd say that reporting "default" or "automatic" makes sense only when we cannot determine the real color. Given that @feerrenrut seems to agree with this it might make sense to continue with #13942 which fixes Wordpad and other richedit controls, and perhaps create a separate issue for legacy MS Word.

But @feerrenrut writes:

If there are situations where we can report more information that would be great. It may still be helpful to specify that the color reported is the default.

So @feerrenrut indicates to report the color but also the extra information.

Thinking again to it, it makes sense to report both information, color being the most important one. The extra info is needed to indicate that:

  • For Wordpad, "System text/background color" indicates that this color may change according to system parameters even if you do not change the properties of the document. Also, on a system with text white on black, Wordpad document is written in white on black, but I expect it to be printed in black on white.
  • For MS Word legacy, "Automatic" indicates that the color of the text will change automatically if you change its background color (good to know...). I do not know how it would behave if stamped with a dark background...

Thus for Wordpad, I suggest the following information: "Black (system text) on white (sytem background)" Would you agree with this?

For MS Word, I will investigate and fix it separately if I do not find immediately a solution.

CyrilleB79 avatar Jul 28 '22 15:07 CyrilleB79

Thus for Wordpad, I suggest the following information: "Black (system text) on white (sytem background)" Would you agree with this?

Makes sense.

lukaszgo1 avatar Jul 28 '22 17:07 lukaszgo1

Thus for Wordpad, I suggest the following information: "Black (system text) on white (system background)"

As a general (non developer) sighted user, I don't think I would interpret wordpad / notepad / MS word in this way. I think it would be unusual to recognize the colors as "system".

I was trying to suggest it may be helpful for a user to know that a color/background/font is the "default" and thus "normal" in the current app.

For Wordpad, "System text/background color" indicates that this color may change according to system parameters even if you do not change the properties of the document. Also, on a system with text white on black, Wordpad document is written in white on black, but I expect it to be printed in black on white. For MS Word legacy, "Automatic" indicates that the color of the text will change automatically if you change its background color (good to know...). I do not know how it would behave if stamped with a dark background...

I wasn't aware of this, does this come from docs somewhere, do you have a link?

feerrenrut avatar Jul 29 '22 01:07 feerrenrut

Thus for Wordpad, I suggest the following information: "Black (system text) on white (system background)"

As a general (non developer) sighted user, I don't think I would interpret wordpad / notepad / MS word in this way. I think it would be unusual to recognize the colors as "system".

I was trying to suggest it may be helpful for a user to know that a color/background/font is the "default" and thus "normal" in the current app.

But this issue has actually been opened because I consider that "Default" is not a useful color indication. "Default" is a parameter of the application, not a color definition. For example, you would not report for font size in Word "11 pt (Default)", would you?

On the contrary "Automatic" is a special color that you can choose in the color chooser for font in Word. The interest to report "Automatic (black)" is to indicate that the color choosen is automatic; it is black but can turn white even if I do not change the font color, e.g. just because I change the background color.

For Wordpad, "System text/background color" indicates that this color may change according to system parameters even if you do not change the properties of the document. Also, on a system with text white on black, Wordpad document is written in white on black, but I expect it to be printed in black on white.

Note also that in Wordpad, this color is called "Automatic" as in Word, but it does not have the same effect: system colors in Wordpad vs. contrasting color in Word.

For MS Word legacy, "Automatic" indicates that the color of the text will change automatically if you change its background color (good to know...). I do not know how it would behave if stamped with a dark background...

I wasn't aware of this, does this come from docs somewhere, do you have a link?

No documentation but I have seen the following answer on this page and checked the visual result by myself:

In both Windows and OS X, an Automatic font will change from dark to light if the background changes sufficiently. For instance, in a table, if you fill the cells with black, the text will show in white all by itself.  In addition, in Windows it changes similarly when you change the Windows Text color in the Display > Appearance control panel.

Also "Automatic" seems to change according to Office versions (see this thread).

So for Word, it seems better to report "Automatic" instead of "Default"; I have not found any mean to give more information, i.e. to check if the displayed color is black, white or something else.

For Wordpad and other edit fields such as log viewer:

  • "Automatic (black) on Automatic (white)" would be nice for Wordpad but not adapted for log viewer which does not define this automatic color.
  • If the "system" term is considered too technical, we may remain to "Default (black) on Default (white)", which is:
    • less satisfactory for Wordpad where "Default" has a more precise name ("Automatic")
    • less satisfactory in general because "Default" gives no indication (default of the application such as Wordpad, default of system?)

CyrilleB79 avatar Jul 31 '22 21:07 CyrilleB79

Also "Automatic" seems to change according to Office versions

I can confirm this in Word.

The use of "automatic" in apps that have this functionality makes the most sense to me. IE in Wordpad but not log viewer. Matching the name shown in the GUI is an advantage.

My point was about the additional information that "default" can give to a user, which is different from automatic or the current color (eg black). If NVDA is able to identify what the application uses the default color / font / size that is useful to remind the user. This might mean that a color is reported as "Automatic (black) default on Automatic (white) default". However, I accept this level of information might be more suitable for a higher verbosity command.

feerrenrut avatar Aug 01 '22 10:08 feerrenrut