Bug 672

Summary: NewtCanvasSWT ignore windowing offset on OSX using SashForm
Product: [JogAmp] Newt Reporter: Tomas Karlsson <karlsson>
Component: swtAssignee: Petros Koutsolampros <pjgl>
Status: RESOLVED FIXED    
Severity: blocker CC: gouessej, sgothel
Priority: P4    
Version: 1   
Hardware: All   
OS: macosx   
See Also: https://jogamp.org/bugzilla/show_bug.cgi?id=956
Type: DEFECT SCM Refs:
5db2c65cd030311b5cfcb8174ada6e870db10258 09b5d1ed25f9b5de13d2b0980c95121d0d5d7c0e d5c25aa5584e98416208afef57610c85ac6c254c
Workaround: ---
Bug Depends on:    
Bug Blocks: 969    
Attachments: Screenhot and testcase.

Description Tomas Karlsson 2013-01-22 19:50:53 CET
Created attachment 406 [details]
Screenhot and testcase.

The NewtCanvasSWT ignores the windowing offset when inside a SWT SashForm. See the attaced screenshot and snippet. Window offset seem to work with the JOGAMP SWT GLCanvas. 

The problem only seems to relate to OSX. I've successfully tested the snippet on linux.


Verion used are JOGL RC11, SWT 3.100.1, JDK7u11, OSX 10.8.2, Macbook 15'' Retina.

The topic is discussed in the thread

http://forum.jogamp.org/NewtCanvasSWT-and-SashForm-td4027951.html
Comment 1 Sven Gothel 2013-11-25 04:27:05 CET
commit 5db2c65cd030311b5cfcb8174ada6e870db10258

    Bug 672 (NewtCanvasSWT ignore windowing offset on OSX').
    The NewtCanvasSWT is now brought into place by the parent SWT Composite
    and the super SWT Canvas it extends. Also added two test cases. One with
    a simple SashForm and the NewtCanvasSWT in the second cell, and another
    with the NewtCanvasSWT in a Composite, that Composite now in the second
    cell of the SashForm. The second test is necessary because the
    NewtCanvasSWT does not receive SWT.Resize events in this configuration,
    but only SWT.Paint ones (a behaviour inherited from the super SWT
    Canvas)

commit d5c25aa5584e98416208afef57610c85ac6c254c

    - Reuse SWTAccessor.isOS_TYPE (public now)
    
    - Impl NW.getLocationOnScreen(..) for X11 and Windows reusing existing native code
    
    - Allow unit test to run on all platforms.