AWT Dev [7u6] Review request for 7142091: [macosx] RFE: Refactoring of peer initialization/disposing

2012-06-26 Thread Sergey Bylokhov

Hi Everyone,
Please review the fix.

Notes from the bug and comments:
1. setVisible() should be called at the end of the peers initialization. 
We can move super.initialize() to the end of the peers initializations.
Initialize() was split to initialize() and initializeImpl(). In the 
initialize() we call initializeImpl and then we call to setVisible(). 
initializeImpl overridden in subclasses.


2. Invokelater in the initialization/disposing is a tricky.
Removed.

3. replaceSurfacedata() should be moved outside of 
LWWindowPeer.setVisible()
Done. Also duplicate code was extracted to setVisible() method which 
call setVisibleImpl().


4. Backbuffer in replaceSurfacedata() should be initialized by clearRect 
instead of fillrect(composite is important).

Done. related to composite.

5. During lwwindowpeer initialization we call two similar methods 
nativeSetNSWindowAlpha() and setAlphaValue().

nativeSetNSWindowAlpha() removed from CPlatformWindow.java.


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

Also note that CR 7177173 depends from this one.

--
Best regards, Sergey.



Re: AWT Dev [7u6] Review request for 7142091: [macosx] RFE: Refactoring of peer initialization/disposing

2012-06-26 Thread Anthony Petrov

Looks good to me.

--
best regards,
Anthony

On 6/26/2012 3:49 PM, Sergey Bylokhov wrote:


Hi Everyone,
Please review the fix.

Notes from the bug and comments:
1. setVisible() should be called at the end of the peers initialization. 
We can move super.initialize() to the end of the peers initializations.
Initialize() was split to initialize() and initializeImpl(). In the 
initialize() we call initializeImpl and then we call to setVisible(). 
initializeImpl overridden in subclasses.


2. Invokelater in the initialization/disposing is a tricky.
Removed.

3. replaceSurfacedata() should be moved outside of 
LWWindowPeer.setVisible()
Done. Also duplicate code was extracted to setVisible() method which 
call setVisibleImpl().


4. Backbuffer in replaceSurfacedata() should be initialized by clearRect 
instead of fillrect(composite is important).

Done. related to composite.

5. During lwwindowpeer initialization we call two similar methods 
nativeSetNSWindowAlpha() and setAlphaValue().

nativeSetNSWindowAlpha() removed from CPlatformWindow.java.


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

Also note that CR 7177173 depends from this one.

--
Best regards, Sergey.



Re: AWT Dev [7u6] Review request for 7142091: [macosx] RFE: Refactoring of peer initialization/disposing

2012-06-26 Thread Artem Ananiev


Still looks fine.

Thanks,

Artem

On 6/26/2012 3:49 PM, Sergey Bylokhov wrote:

Hi Everyone,
Please review the fix.

Notes from the bug and comments:
1. setVisible() should be called at the end of the peers initialization.
We can move super.initialize() to the end of the peers initializations.
Initialize() was split to initialize() and initializeImpl(). In the
initialize() we call initializeImpl and then we call to setVisible().
initializeImpl overridden in subclasses.

2. Invokelater in the initialization/disposing is a tricky.
Removed.

3. replaceSurfacedata() should be moved outside of
LWWindowPeer.setVisible()
Done. Also duplicate code was extracted to setVisible() method which
call setVisibleImpl().

4. Backbuffer in replaceSurfacedata() should be initialized by clearRect
instead of fillrect(composite is important).
Done. related to composite.

5. During lwwindowpeer initialization we call two similar methods
nativeSetNSWindowAlpha() and setAlphaValue().
nativeSetNSWindowAlpha() removed from CPlatformWindow.java.


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

Also note that CR 7177173 depends from this one.

--
Best regards, Sergey.