diff options
Diffstat (limited to 'indra/llwindow/llwindowmacosx-objc.mm')
| -rw-r--r-- | indra/llwindow/llwindowmacosx-objc.mm | 81 | 
1 files changed, 30 insertions, 51 deletions
diff --git a/indra/llwindow/llwindowmacosx-objc.mm b/indra/llwindow/llwindowmacosx-objc.mm index 2e75d309ea..42cd95be5d 100644 --- a/indra/llwindow/llwindowmacosx-objc.mm +++ b/indra/llwindow/llwindowmacosx-objc.mm @@ -162,11 +162,21 @@ void showNSCursor()  	[NSCursor unhide];  } +#if LL_DARWIN +// For CGCursorIsVisible no replacement in modern API +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" +#endif +  bool isCGCursorVisible()  {      return CGCursorIsVisible();  } +#if LL_DARWIN +#pragma clang diagnostic pop +#endif +  void hideNSCursorTillMove(bool hide)  {  	[NSCursor setHiddenUntilMouseMoves:hide]; @@ -213,7 +223,8 @@ OSErr setImageCursor(CursorRef ref)  NSWindowRef createNSWindow(int x, int y, int width, int height)  {  	LLNSWindow *window = [[LLNSWindow alloc]initWithContentRect:NSMakeRect(x, y, width, height) -													  styleMask:NSTitledWindowMask | NSResizableWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSTexturedBackgroundWindowMask backing:NSBackingStoreBuffered defer:NO]; +                                                      styleMask:NSWindowStyleMaskTitled | NSWindowStyleMaskResizable | NSWindowStyleMaskClosable | NSWindowStyleMaskMiniaturizable +                                                        backing:NSBackingStoreBuffered defer:NO];  	[window makeKeyAndOrderFront:nil];  	[window setAcceptsMouseMovedEvents:TRUE];      [window setRestorable:FALSE]; // Viewer manages state from own settings @@ -227,11 +238,6 @@ GLViewRef createOpenGLView(NSWindowRef window, unsigned int samples, bool vsync)  	return glview;  } -void setResizeMode(bool oldresize, void* glview) -{ -    [(LLOpenGLView *)glview setOldResize:oldresize]; -} -  void glSwapBuffers(void* context)  {  	[(NSOpenGLContext*)context flushBuffer]; @@ -258,19 +264,14 @@ float getDeviceUnitSize(GLViewRef view)  	return [(LLOpenGLView*)view convertSizeToBacking:NSMakeSize(1, 1)].width;  } -CGPoint getContentViewBoundsPosition(NSWindowRef window) +CGRect getContentViewRect(NSWindowRef window)  { -	return [[(LLNSWindow*)window contentView] bounds].origin; +    return [[(LLNSWindow*)window contentView] bounds];  } -CGSize getContentViewBoundsSize(NSWindowRef window) +CGRect getBackingViewRect(NSWindowRef window, GLViewRef view)  { -	return [[(LLNSWindow*)window contentView] bounds].size; -} - -CGSize getDeviceContentViewSize(NSWindowRef window, GLViewRef view) -{ -    return [(NSOpenGLView*)view convertRectToBacking:[[(LLNSWindow*)window contentView] bounds]].size; +    return [(NSOpenGLView*)view convertRectToBacking:[[(LLNSWindow*)window contentView] bounds]];  }  void getWindowSize(NSWindowRef window, float* size) @@ -313,9 +314,7 @@ void makeWindowOrderFront(NSWindowRef window)  void convertScreenToWindow(NSWindowRef window, float *coord)  { -	NSRect point; -	point.origin.x = coord[0]; -	point.origin.y = coord[1]; +    NSRect point = NSMakeRect(coord[0], coord[1], 0,0);  	point = [(LLNSWindow*)window convertRectFromScreen:point];  	coord[0] = point.origin.x;  	coord[1] = point.origin.y; @@ -323,28 +322,18 @@ void convertScreenToWindow(NSWindowRef window, float *coord)  void convertRectToScreen(NSWindowRef window, float *coord)  { -	NSRect point; -	point.origin.x = coord[0]; -	point.origin.y = coord[1]; -	point.size.width = coord[2]; -	point.size.height = coord[3]; -	 -	point = [(LLNSWindow*)window convertRectToScreen:point]; -	 -	coord[0] = point.origin.x; -	coord[1] = point.origin.y; -	coord[2] = point.size.width; -	coord[3] = point.size.height; +    NSRect rect = NSMakeRect(coord[0], coord[1], coord[2], coord[3]);; +    rect = [(LLNSWindow*)window convertRectToScreen:rect]; + +	coord[0] = rect.origin.x; +	coord[1] = rect.origin.y; +	coord[2] = rect.size.width; +	coord[3] = rect.size.height;  }  void convertRectFromScreen(NSWindowRef window, float *coord)  { -	NSRect point; -	point.origin.x = coord[0]; -	point.origin.y = coord[1]; -	point.size.width = coord[2]; -	point.size.height = coord[3]; -	 +	NSRect point = NSMakeRect(coord[0], coord[1], coord[2], coord[3]);  	point = [(LLNSWindow*)window convertRectFromScreen:point];  	coord[0] = point.origin.x; @@ -353,23 +342,13 @@ void convertRectFromScreen(NSWindowRef window, float *coord)  	coord[3] = point.size.height;  } -void convertScreenToView(NSWindowRef window, float *coord) -{ -	NSRect point; -	point.origin.x = coord[0]; -	point.origin.y = coord[1]; -	point.origin = [(LLNSWindow*)window convertScreenToBase:point.origin]; -	point.origin = [[(LLNSWindow*)window contentView] convertPoint:point.origin fromView:nil]; -} -  void convertWindowToScreen(NSWindowRef window, float *coord)  { -	NSPoint point; -	point.x = coord[0]; -	point.y = coord[1]; -	point = [(LLNSWindow*)window convertToScreenFromLocalPoint:point relativeToView:[(LLNSWindow*)window contentView]]; -	coord[0] = point.x; -	coord[1] = point.y; +    NSRect rect = NSMakeRect(coord[0], coord[1], 0, 0); +    rect = [(LLNSWindow*)window convertRectToScreen:rect]; + +      coord[0] = rect.origin.x; +    coord[1] = [[NSScreen screens][0] frame].size.height - rect.origin.y;  }  void closeWindow(NSWindowRef window)  | 
