Resolution of events-missing-in-fullscreen bug in Mac OS X

5 views
Skip to first unread message

Ivan Vučica

unread,
Oct 14, 2009, 6:15:40 AM10/14/09
to python-ogre...@googlegroups.com
You may remember that I reported a bug that manifests in fullscreen when packaging with py2app when launching from Finder. No keyboard input was received, and mouse move was only received if left mouse button was held.

Bug originated in Ogre3d C++ code.


The resolution was a bit tricky since the functions used in C++ code are not wrapped in Python. I have posted details and code in the wiki article. It uses a chunk of pyglet code, which uses ctypes to load the carbon framework dynamically.

See info here: http://wiki.python-ogre.org/index.php/OSXFullscreenBug

--
Regards,

Ivan Vučica

Andy Miller

unread,
Oct 14, 2009, 11:17:22 PM10/14/09
to python-ogre...@googlegroups.com
Thanks for this -- I'm planning a refresh on the Mac build (doing a new Windows binary build again Ogre 1.6.4 with latest libraries first) so will take a look at this..

I wonder if you can't just use the standard pyobjc interface instead of using pyglet library loader...

Regards
Andy



2009/10/14 Ivan Vučica <ivu...@gmail.com>

Ivan Vučica

unread,
Oct 15, 2009, 4:53:25 AM10/15/09
to python-ogre...@googlegroups.com
On Thu, Oct 15, 2009 at 05:17, Andy Miller <nzmi...@gmail.com> wrote:
Thanks for this -- I'm planning a refresh on the Mac build (doing a new Windows binary build again Ogre 1.6.4 with latest libraries first) so will take a look at this..

That'll be great! 

If the bug isn't fixed in newer Ogre, perhaps you could include the hack in the wrapper somehow; I haven't found another non-hackish solution to the problem, so this will probably appear to everyone using PythonOgre, and not everyone will be willing to dig deep enough and will instead just proclaim the problem unsolvable. So if it fixes the problems for everyone... :-)
 
I wonder if you can't just use the standard pyobjc interface instead of using pyglet library loader...

I haven't tried; we have to hurry with the port and sadly, I can't look into "real" solutions to the problem. If there's a cleaner way to do things, I'm of course always for it -- except when under pressure to "just get things working" :-)

--
Regards,

Ivan Vučica

Reply all
Reply to author
Forward
0 new messages