from my debugging here the call stack of a resize: ... NSWindow _processResizeEvent CairoContext GSSetDevice XGCairoModernSurface initWithDevice XGetWindowAttributes* <-- HERE IS WHERE THE WINDOW BECOME WHITE (OR BLACK) *XGCairoModernSurface.m:48 CairoContext handleExposeRect XGCairoModernSurface handleExposeRect ... and on the next XFlush the window get displayed
this mean that XGetWindowAttributes cause an error? On 20 December 2013 17:20, Fred Kiefer <fredkie...@gmx.de> wrote: > On 20.12.2013 11:03, Riccardo Canalicchio wrote: > > tell me If I'm right: > > - when using a buffered window there should be two cairo surfaces (back > and > > front) > > - a window resize, trigger the re initialisation of all the two surfaces > > - actually the fresh new surfaces get drawn immediatly (in my case they > are > > white) > > The first two are true according to my understanding. For the third I am > not really sure. We should add some log statements in the class > CairoContext and monitor in which order the following methods get called > during resize and whether the correct surface object gets used: > > + (void) handleExposeRect: (NSRect)rect forDriver: (void *)driver > - (void) GSSetDevice: (void *)device : (int)x : (int)y > > Hope this helps, > Fred > >
_______________________________________________ Discuss-gnustep mailing list Discuss-gnustep@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnustep