Hi Sean,
Hi Pavel,

Thanks for your suggestion, I didn't know DesktopProperty could be used this way. I modified it a little, it's http://cr.openjdk.java.net/~zhouyx/7089914/webrev.05/ <http://cr.openjdk.java.net/%7Ezhouyx/7089914/webrev.05/> .

The reason for checking high contrast is windows allow "win.3d.backgroundColor" to
be set black in non-high contrast mode.

The testcase is also cleared. Please review again.
I modified your fix a little bit and rewrote the test (because it contained concurrency problems, e.g. the passed field must be volatile etc). Here is the commit:
http://hg.openjdk.java.net/jdk8/awt/jdk/rev/362867d5caa4

Thanks, Pavel

On Fri, Feb 10, 2012 at 10:36 PM, Pavel Porvatov <[email protected] <mailto:[email protected]>> wrote:

    Hi Sean,
    Hi Pavel,

       I modified the patch again. It's now at
    http://cr.openjdk.java.net/~zhouyx/7089914/webrev.03/
    <http://cr.openjdk.java.net/%7Ezhouyx/7089914/webrev.03/> .
    3/4 comments are covered. And there are a little comment bellow,
    please have a look. Thanks.


    On Mon, Jan 16, 2012 at 6:46 PM, Pavel Porvatov
    <[email protected] <mailto:[email protected]>> wrote:

        Hi Sean,

        There are several comments for your patch:

        1. I found one bug. In Win 7 there are several differnet High
        Contrast themes. Under one of them ("High Contrast White")
        focus is not visible...

          This is fixed.
    Is there any reason to check high contrast mode in the
    WDesktopProperties class? I think in non-high contrast mode
    backgroundColor checking will be useful as well


        2. I also don't like synthetic property. Any desktop property
        has listener (see
        com.sun.java.swing.plaf.windows.DesktopProperty#pcl) and
        updated when correspondent value is changed. But your
        win.button.focusColor property is updated only while full
        property reloading.

          I tried to not use DesktopProperty, but it is found that
    the modification becomes much more complex and not working well.
    On the other hand, I think
          use DesktopProperty is reasonable: it is so much like a
    desktop property that the only difference is it can not be
    changed separately.
    What do you think about the following solution:

        static class FocusColorProperty extends DesktopProperty {
            FocusColorProperty(Object fallback) {
                super("win.3d.backgroundColor", fallback);
            }

            @Override
            protected Object configureValue(Object value) {
                return Color.BLACK.equals(value) ? Color.WHITE :
    Color.BLACK;
            }
        }

    This class solves update problems. Actually I didn't check that
    but it seems it should work...



        3. Please don't add references to bugs in the code. Everybody
        can trace history of the code by VCS.

         Reference removed.


        4. The changes in the class WindowsRadioButtonUI looks good.
        Is it possible to make your TestButton test an automatic one
        and add it to the fix?

         Test case added.
    Could you please clean the test from TODO and dead code (like
    commented code)

    Regards, Pavel


        Regards, Pavel


        Hi all,

           This is for bug 7089914,
        http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7089914 .
        OpenJDK uses black as focus color in windows LAF. However,
        in high contrast mode, windows
        uses white as focus color.
           In additional, the patch also
        modified WindowsRadioButtonUI.java so it will reload its style
        when system setting is changed.

           The webrev link is :
        http://cr.openjdk.java.net/~zhouyx/7089914/webrev.02/
        <http://cr.openjdk.java.net/%7Ezhouyx/7089914/webrev.02/>

        The previous discussions are:
        
http://mail.openjdk.java.net/pipermail/swing-dev/2011-September/001703.html
        
http://mail.openjdk.java.net/pipermail/swing-dev/2011-October/001794.html
        
http://mail.openjdk.java.net/pipermail/swing-dev/2011-December/001871.html

        Any comments on the this version? thanks.




-- Best Regards,
    Sean Chou





--
Best Regards,
Sean Chou


Reply via email to