| Summary: | [Mac] GLCanvas draws on top of fast views | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | Tom Crockett <Thomas.M.Crockett> | ||||||
| Component: | SWT | Assignee: | Silenio Quarti <Silenio_Quarti> | ||||||
| Status: | RESOLVED FIXED | QA Contact: | |||||||
| Severity: | major | ||||||||
| Priority: | P3 | CC: | carolynmacleod4, eclipse.felipe, lshanmug, Mark.Powell, Silenio_Quarti | ||||||
| Version: | 4.1 | Flags: | eclipse.felipe:
review+
|
||||||
| Target Milestone: | 3.7.2 | ||||||||
| Hardware: | Macintosh | ||||||||
| OS: | Mac OS X | ||||||||
| Whiteboard: | |||||||||
| Attachments: |
|
||||||||
|
Description
Tom Crockett
Created attachment 193638 [details]
testcase plugin to reproduce the bug
Created attachment 193639 [details]
LWJGL plugin required by testcase plugin
Is this on carbon or cocoa? Tried carbon and it works. Fails on cocoa. We have code in the carbon implementation to clip areas of the GLCanvas that are obscured. We achieve this by setting AGL_CLIP_REGION and AGL_BUFFER_RECT with a visible region we calculate ourselfs. I am not sure this can be done on cocoa. I could not find any support equivalent to AGL_CLIP_REGION on cocoa. I played with NSOpenGLCPSwapRectangle and glScissor() to at least have a rectangular clipping, but NSOpenGLCPSwapRectangle seems to be a noop and glScissor() does not work either. Do we need to open a radar against cocoa, or maybe cc a Mac guy? Are we making any more headway on this? Have you been able to identify a Mac person to work with you on the issue? After quite a bit of research I found the proper way to have cocoa views drawing over OpenGL views. http://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Classes/NSOpenGLContext_Class/Reference/Reference.html#//apple_ref/doc/c_ref/NSOpenGLCPSurfaceOrder Please try the latest code and let me know if you find any issues. Fixed http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=4222a621d2928b548c2e30cc0978e442beedb1d5 Awesome work, Silenio! We owe you a beer or three next EclipseCon. Reopenning to back port to 3.7.2. |