summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowmacosx-objc.mm
diff options
context:
space:
mode:
authorAnchor <none@none>2019-04-10 11:47:57 -0700
committerAnchor <none@none>2019-04-10 11:47:57 -0700
commit4b1c786c6e7236d45be33bbf216be142dbfa33c2 (patch)
treee414dd7a512d6d885b3f6e1ac2ea236ec4e82619 /indra/llwindow/llwindowmacosx-objc.mm
parent83fe55c429181a2adb67346db79becf00d501536 (diff)
parent5cf18cb867be567bf921f0b94a78fd822e4112ad (diff)
Merge
Diffstat (limited to 'indra/llwindow/llwindowmacosx-objc.mm')
-rw-r--r--indra/llwindow/llwindowmacosx-objc.mm24
1 files changed, 18 insertions, 6 deletions
diff --git a/indra/llwindow/llwindowmacosx-objc.mm b/indra/llwindow/llwindowmacosx-objc.mm
index 43ce9a2255..c3eb9b8c8a 100644
--- a/indra/llwindow/llwindowmacosx-objc.mm
+++ b/indra/llwindow/llwindowmacosx-objc.mm
@@ -253,12 +253,24 @@ unsigned long getVramSize(GLViewRef view)
return [(LLOpenGLView *)view getVramSize];
}
-void getContentViewBounds(NSWindowRef window, float* bounds)
+float getDeviceUnitSize(GLViewRef view)
{
- bounds[0] = [[(LLNSWindow*)window contentView] bounds].origin.x;
- bounds[1] = [[(LLNSWindow*)window contentView] bounds].origin.y;
- bounds[2] = [[(LLNSWindow*)window contentView] bounds].size.width;
- bounds[3] = [[(LLNSWindow*)window contentView] bounds].size.height;
+ return [(LLOpenGLView*)view convertSizeToBacking:NSMakeSize(1, 1)].width;
+}
+
+const CGPoint & getContentViewBoundsPosition(NSWindowRef window)
+{
+ return [[(LLNSWindow*)window contentView] bounds].origin;
+}
+
+const CGSize & getContentViewBoundsSize(NSWindowRef window)
+{
+ return [[(LLNSWindow*)window contentView] bounds].size;
+}
+
+const CGSize & getDeviceContentViewSize(NSWindowRef window, GLViewRef view)
+{
+ return [(NSOpenGLView*)view convertRectToBacking:[[(LLNSWindow*)window contentView] bounds]].size;
}
void getWindowSize(NSWindowRef window, float* size)
@@ -368,8 +380,8 @@ void closeWindow(NSWindowRef window)
void removeGLView(GLViewRef view)
{
+ [(LLOpenGLView*)view clearGLContext];
[(LLOpenGLView*)view removeFromSuperview];
- [(LLOpenGLView*)view release];
}
void setupInputWindow(NSWindowRef window, GLViewRef glview)