chiark / gitweb /
Solve issue when objc fails for the 10.000 time on stupid MacOS.
authorDaid <Daid303@gmail.com>
Thu, 29 Aug 2013 12:07:00 +0000 (14:07 +0200)
committerDaid <Daid303@gmail.com>
Thu, 29 Aug 2013 12:07:00 +0000 (14:07 +0200)
Cura/gui/app.py

index f3c8b90e08480a4668b7d0191da2ab0db5b09d3e..5ab0e28d7a2de944cb731596c4f1c9012733af9b 100644 (file)
@@ -91,20 +91,24 @@ class CuraApp(wx.App):
                setFullScreenCapable(self.mainWindow)
 
 if platform.system() == "Darwin":
-       import ctypes, objc
-       _objc = ctypes.PyDLL(objc._objc.__file__)
-
-       # PyObject *PyObjCObject_New(id objc_object, int flags, int retain)
-       _objc.PyObjCObject_New.restype = ctypes.py_object
-       _objc.PyObjCObject_New.argtypes = [ctypes.c_void_p, ctypes.c_int, ctypes.c_int]
-
-       def setFullScreenCapable(frame):
-               frameobj = _objc.PyObjCObject_New(frame.GetHandle(), 0, 1)
-
-               NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7
-               window = frameobj.window()
-               newBehavior = window.collectionBehavior() | NSWindowCollectionBehaviorFullScreenPrimary
-               window.setCollectionBehavior_(newBehavior)
+       try:
+               import ctypes, objc
+               _objc = ctypes.PyDLL(objc._objc.__file__)
+
+               # PyObject *PyObjCObject_New(id objc_object, int flags, int retain)
+               _objc.PyObjCObject_New.restype = ctypes.py_object
+               _objc.PyObjCObject_New.argtypes = [ctypes.c_void_p, ctypes.c_int, ctypes.c_int]
+
+               def setFullScreenCapable(frame):
+                       frameobj = _objc.PyObjCObject_New(frame.GetHandle(), 0, 1)
+
+                       NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7
+                       window = frameobj.window()
+                       newBehavior = window.collectionBehavior() | NSWindowCollectionBehaviorFullScreenPrimary
+                       window.setCollectionBehavior_(newBehavior)
+       except:
+               def setFullScreenCapable(frame):
+                       pass
 
 else:
        def setFullScreenCapable(frame):