Hi Sergey,

Thanks for addressing the issues. The fix looks good to me.

--
best regards,
Anthony

On 06/25/12 18:22, Sergey Bylokhov wrote:
Hi, Artem, Anthony.
New version of the fix:
http://cr.openjdk.java.net/~serb/7124244/webrev.02/

25.06.2012 06:02, Anthony Petrov wrote:
Hi Sergey,

The fix looks good overall. Just two comments:

1. src/macosx/classes/sun/lwawt/LWWindowPeer.java
987 if (oldBB != null) {
988 backBuffer = (BufferedImage) platformWindow.createBackBuffer();

Since we never create a back buffer in JDK 8 currently, I suggest to
comment this code out, and add a remark mentioning a CR number that
should make use of the code in the future.
done

2. src/share/classes/javax/swing/RepaintManager.java
1501 Graphics2D g2d = (Graphics2D) osg.create();
1502 g2d.setBackground(c.getBackground());
1503 g2d.clearRect(x, y, bw, bh);
1504 g2d.dispose();

Please use the try {} finally {} pattern to dispose the G2D object.
The same comment applies to the lines 1510-1513.
fixed

--
best regards,
Anthony

On 06/25/12 14:42, 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