From 7b3eb931e45df588b78db15d3383ce237ca14abf Mon Sep 17 00:00:00 2001 From: Daid Date: Fri, 4 Jan 2013 14:50:29 +0100 Subject: [PATCH] Add full screen option for MacOS. --- Cura/gui/app.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) 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 -- 2.30.2