From: Daid Date: Fri, 4 Jan 2013 13:50:29 +0000 (+0100) Subject: Add full screen option for MacOS. X-Git-Tag: 13.03~126^2 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=7b3eb931e45df588b78db15d3383ce237ca14abf;p=cura.git Add full screen option for MacOS. --- diff --git a/Cura/gui/app.py b/Cura/gui/app.py index 6bb9db6f..6372d723 100644 --- a/Cura/gui/app.py +++ b/Cura/gui/app.py @@ -60,3 +60,25 @@ class CuraApp(wx.App): if self.splash is not None: self.splash.Show(False) self.mainWindow = mainWindow.mainWindow() + + 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) + +else: + def setFullScreenCapable(frame): + pass