QRect geo = region.boundingRect();
NSRect rect = NSMakeRect(geo.x(), geo.y(), geo.width(), geo.height());
- [m_cocoaWindow->m_windowSurfaceView displayRect:rect];
+ [m_cocoaWindow->m_contentView displayRect:rect];
}
void QCocoaBackingStore::resize(const QSize &size, const QRegion &)
delete m_image;
m_image = new QImage(size,QImage::Format_ARGB32_Premultiplied);
NSSize newSize = NSMakeSize(size.width(),size.height());
- [static_cast<QNSView *>(m_cocoaWindow->m_windowSurfaceView) setImage:m_image];
+ [static_cast<QNSView *>(m_cocoaWindow->m_contentView) setImage:m_image];
}
QT_END_NAMESPACE
bool QCocoaGLContext::makeCurrent(QPlatformSurface *surface)
{
+ QCocoaAutoReleasePool pool;
+
QWindow *window = static_cast<QCocoaWindow *>(surface)->window();
setActiveWindow(window);
QCocoaWindow *cocoaWindow = static_cast<QCocoaWindow *>(window->handle());
cocoaWindow->setCurrentContext(this);
- NSView *view = cocoaWindow->windowSurfaceView();
+ NSView *view = cocoaWindow->contentView();
[m_context setView:view];
}
WId winId() const;
NSView *contentView() const;
- NSView *windowSurfaceView() const;
void windowDidMove();
void windowDidResize();
friend class QCocoaBackingStore;
QNSWindow *m_nsWindow;
QNSView *m_contentView;
- NSView *m_windowSurfaceView;
quint32 m_windowAttributes;
quint32 m_windowClass;
QCocoaGLContext *m_glContext;
m_contentView = [[QNSView alloc] initWithQWindow:tlw];
- if (tlw->surfaceType() == QWindow::OpenGLSurface) {
- NSRect glFrame = globalGeometry(window()->geometry());
- m_windowSurfaceView = [[NSOpenGLView alloc] initWithFrame : glFrame pixelFormat : QCocoaGLContext::createNSOpenGLPixelFormat() ];
- [m_contentView setAutoresizesSubviews : YES];
- [m_windowSurfaceView setAutoresizingMask : (NSViewWidthSizable | NSViewHeightSizable)];
- [m_contentView addSubview : m_windowSurfaceView];
- } else {
- m_windowSurfaceView = m_contentView;
- }
-
setGeometry(tlw->geometry());
[m_nsWindow setContentView:m_contentView];
return [m_nsWindow contentView];
}
-NSView *QCocoaWindow::windowSurfaceView() const
-{
- return m_windowSurfaceView;
-}
-
void QCocoaWindow::windowDidMove()
{
if (m_glContext)