Fix for mtsgui running on OSX Mojave (#94)

* Fix for GUI running on OSX Mojave
master
Nicolas Holzschuch 2019-01-02 03:25:26 +01:00 committed by Wenzel Jakob
parent 450a2b8a25
commit 26355676fa
1 changed files with 17 additions and 15 deletions

View File

@ -378,7 +378,7 @@ using namespace mitsuba;
MTS_NAMESPACE_BEGIN
NSGLDevice::NSGLDevice(NSGLSession *session)
: Device(session), m_visible(false), m_cursor(true) {
: Device(session), m_window(nil), m_view(nil), m_fmt(nil), m_currentContext(nil), m_visible(false), m_cursor(true) {
m_title = "Mitsuba [nsgl]";
}
@ -409,11 +409,12 @@ void NSGLDevice::init(Device *other) {
m_mutex = new Mutex();
/* Create the device window */
m_window = [[NSWindow alloc] initWithContentRect: contentRect
dispatch_async(dispatch_get_main_queue(), ^{ m_window = [[NSWindow alloc] initWithContentRect: contentRect
styleMask: NSTitledWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask
backing: NSBackingStoreBuffered defer: NO];
if (m_window == nil)
Log(EError, "Could not create window");
[m_window retain];
if (m_center)
[m_window center];
@ -427,6 +428,7 @@ void NSGLDevice::init(Device *other) {
[[m_window contentView] addSubview: m_view];
[m_window setDelegate: m_view];
[m_window setAcceptsMouseMovedEvents: YES];
});
/* Pixel format setup */
AssertEx(m_redBits == m_blueBits || m_redBits == m_greenBits, "NSGL does not support individual color depths");