JDK-4419975 : metal l&f should respect high-contrast setting on windows
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: javax.swing
  • Affected Version: 1.4.0
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: windows_nt
  • CPU: x86
  • Submitted: 2001-02-28
  • Updated: 2002-08-12
  • Resolved: 2002-03-09
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
Other
1.4.1 hopperFixed
Related Reports
Relates :  
Description
-----------------------------------------------------------------------------
jeff.dunn@eng 28Feb2001

- On a windows machine, go to the control panel and open the "accessibility options" control panel.
- Go to the "Display" tabbed pane
- Check the option "Use High Contrast" in the control panel
- Press the "Apply" button
- The applications on the desktop will appear in black and white (no colors)
- Start a java application
- The Java application appears in standard low-contrast mode

This make java/metal applications virtually unusable by persons with visual impairments. It is not easy for users to change the look and feel, so the metal look and feel should shift to its own high-contrast mode (e.g., a theme) when the user has selected the high contrast setting on the desktop.

----------------------------------------------------------------------------- 

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: hopper FIXED IN: hopper INTEGRATED IN: hopper VERIFIED IN: hopper-beta
14-06-2004

WORK AROUND
11-06-2004

SUGGESTED FIX ------------------------------------------------------------------------------ jeff.dunn@eng 28Feb2001 The metal look and feel should query the desktop properties at startup, and adjust its appearance if a high-contrast mode has been selected by the user. The propery names can be found by invoking Toolkit.getDefaultToolkit().getDesktopProperty("win.propNames"). High contrast mode can easily be detected by the preponderance of (0,0,0) and (255,255,255) color values. ------------------------------------------------------------------------------
11-06-2004

PUBLIC COMMENTS
10-06-2004

EVALUATION Windows uses the system parameter SPI_GETHIGHCONTRAST to indicate a high contrast mode. We need to get AWT to add support for looking up this property, and then metal can choose a suitable Theme if this property is set. scott.violet@eng 2001-02-28 --------------------------------------------------- ###@###.### 2001-12-03 It's fairly easy to look at the windows colors and infer whether a high contrast color set has been selected. If the color names containing "background" and "forground" are all black or white, it's high contrast. I'll send code, if requested. Of course, it would be best to pick up the SPI_GETHIGHCONTRAST parameter, but this really should not hold up the implementation of high contrast colors in metal. ---------------------------------------------------- A variant of the high contrast theme in SwingSet2 and Metalworks has been pulled into core. We determine high contrast from the desktop setting that was added as part of 4516551. ###@###.### 2001-12-12 For reasons described in 4668963 this will only be picked up if swing.useSystemFontSettings is true and the user has switched this on in the desktop. ###@###.### 2002-04-18
18-04-2002