Hi, Sergey,

a few minor comments:

1. CPlatformWindow.java: invalidateShadow() in native is ready to be called on any thread, so what's the reason behind invokeLater() here?

2. RepaintManager.java: the new field should better be named "volatileBufferType".

3. LWComponentPeer.applyShape() is a peer method, which accepts user-supplied object (right now it's constructed from Shape in AWT internal code, but nothing prevents users from calling this method directly), so it should be stored as a copy, not as a reference.

Thanks,

Artem

On 6/25/2012 2:42 PM, Sergey Bylokhov wrote:
Hi, Artem, Anthony.
New version of the fix:
http://cr.openjdk.java.net/~serb/7124244/webrev.01

13.06.2012 06:30, Artem Ananiev wrote:
Hi, Sergey,

a few minor comments:

1. There is no need in AWT_ASSERT_[NOT]_APPKIT_THREAD macros in
CPlatformWindow.nativeRevalidateNSWindowShadow(), since there are
corresponding checks just above.
done.

2. invalidateShadow() is not used in sun.lwawt, so it can be just a
method in CPlatformWindow. BTW, do you have any ideas, why CGLayer
holds a reference to LWWindowPeer, not to CPlatformWindow?
done.

3. As we don't expect isSwingBackbufferTranslucencySupported() to
return different values, it would be fine to call it only once to
avoid possible perf regressions.
done.

Thanks,

Artem

On 6/4/2012 7:49 PM, Sergey Bylokhov wrote:
Hi Everyone,
Please review the fix.

Shaped window was implemented as a translucent window with constrained
graphics. Now translucent window doesn't use separate BufferedImage as a
back buffer. Also alpha value for the swing back buffer was
enabled(Shared code changed).
Note that shaped windows are affected by this bugs:
http://monaco.us.oracle.com/detail.jsf?cr=7124236
- Shadows disappear.
- Transparent areas aren't transparent to mouse clicks.
http://monaco.sfbay.sun.com/detail.jsf?cr=7172431
- Opacity does not work for non opaque windows.

Any suggestions are welcome.

Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7124244
Webrev can be found at:
http://cr.openjdk.java.net/~serb/7124244/webrev.00



Reply via email to