On Fri, Jun 26, 2009 at 5:25 PM, xristos <xris...@suspicious.org> wrote:
> I fixed the main loop issue with destroy-current-window. > If something else does not work as it should, someone should > post about how freeglut works for these bits. I don't have > linux or x11 here and can't test what freeglut does when > windows are destroyed. > > I can't do anything about CCL as the issue is not that simple. > The code that is commented out in interface.lisp simply interrupts > the initial thread and starts the glut event loop there. > > This does not work (window comes up but event loop is blocked > and i can't do anything) because, in CCL, the initial thread > does certain housekeeping tasks and one can not simply hijack it. > Someone familiar with how CCL does things might want to look into > this, specifically into what CCL does with their cocoa event loop > and duplicate the functionality. I did solve that issue by "cloning" code taken from examples/opengl-ffi.lisp in CCL source distribution. I still didn't had the time to get on my laptop (where the code is), but I'll be able to send it soon. > > > The same strategy of interrupting the initial thread and starting > the glut event loop there works fine in SBCL but i haven't included > the code as for most scenarios the default behavior of SBCL where > the REPL is on the initial thread (this is not true when slime is > involved of course, one has to do the interrupt trick then) > should suffice. > > New patch: > > > > > On 26 Jun 2009, at 15:55, Luís Oliveira wrote: > > On Wed, Jun 24, 2009 at 7:43 PM, xristos<xris...@suspicious.org> wrote: >> >>> Here is a cleaner version against current cl-opengl >>> without the extra wm-close methods. >>> >> >> Looking good, though it still doesn't seem to exit the main loop. >> Here's how I reproduce that bug: >> >> * (require :cl-glut-examples) >> ... >> * (cl-glut-examples:rb-cube) ; for instance >> <press Esc to close the window and the function won't return> >> >> Also, this patch doesn't work on at least CCL because of that >> threading issue I mentioned earlier. >> >> -- >> Luís Oliveira >> http://student.dei.uc.pt/~lmoliv/ <http://student.dei.uc.pt/%7Elmoliv/> >> > > > _______________________________________________ > cl-opengl-devel mailing list > cl-opengl-devel@common-lisp.net > http://common-lisp.net/cgi-bin/mailman/listinfo/cl-opengl-devel > >
_______________________________________________ cl-opengl-devel mailing list cl-opengl-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/cl-opengl-devel