src/video/cocoa/SDL_cocoawindow.m
changeset 3508 a12068b6f44f
parent 3507 3712547eac4f
child 3509 8fde6aeb58df
equal deleted inserted replaced
3507:3712547eac4f 3508:a12068b6f44f
   230 {
   230 {
   231     SDL_Window *window = SDL_GetWindowFromID(_data->windowID);
   231     SDL_Window *window = SDL_GetWindowFromID(_data->windowID);
   232     int index;
   232     int index;
   233     SDL_Mouse *mouse;
   233     SDL_Mouse *mouse;
   234     NSPoint point;
   234     NSPoint point;
   235     NSRect rect;
       
   236 
   235 
   237     index = _data->videodata->mouse;
   236     index = _data->videodata->mouse;
   238     mouse = SDL_GetMouse(index);
   237     mouse = SDL_GetMouse(index);
   239 
   238 
   240     point = [NSEvent mouseLocation];
   239     point = [NSEvent mouseLocation];
   241     if ( (window->flags & SDL_WINDOW_FULLSCREEN) ) {
   240     if ( (window->flags & SDL_WINDOW_FULLSCREEN) ) {
   242         rect.size.width = CGDisplayPixelsWide(kCGDirectMainDisplay);
   241         NSRect rect = CGDisplayBounds(_data->display);
   243         rect.size.height = CGDisplayPixelsHigh(kCGDirectMainDisplay);
   242 
   244         point.x = point.x - rect.origin.x;
   243         point.x = point.x - rect.origin.x;
   245         point.y = rect.size.height - point.y;
   244         point.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - point.y - rect.origin.y;
   246     } else {
   245     } else {
   247         point.x -= window->x;
   246         point.x -= window->x;
   248         point.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - point.y - window->y;
   247         point.y = CGDisplayPixelsHigh(kCGDirectMainDisplay) - point.y - window->y;
   249     }
   248     }
   250     if ( point.x < 0 || point.x >= window->w ||
   249     if ( point.x < 0 || point.x >= window->w ||