mirror of
				https://github.com/Ryujinx/SDL.git
				synced 2025-11-04 14:24:53 +00:00 
			
		
		
		
	Mac: Reset display if going from fullscreen to a fullscreen Space or vice-versa.
Otherwise, bad things happen.
This commit is contained in:
		
							parent
							
								
									7bc72eaf84
								
							
						
					
					
						commit
						c5e68d68e7
					
				| 
						 | 
				
			
			@ -1136,8 +1136,19 @@ SDL_UpdateFullscreenMode(SDL_Window * window, SDL_bool fullscreen)
 | 
			
		|||
    /* if we are in the process of hiding don't go back to fullscreen */
 | 
			
		||||
    if ( window->is_hiding && fullscreen )
 | 
			
		||||
        return 0;
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
#ifdef __MACOSX__
 | 
			
		||||
    /* If we're switching between a fullscreen Space and "normal" fullscreen, we need to get back to normal first. */
 | 
			
		||||
    if (fullscreen && ((window->last_fullscreen_flags & FULLSCREEN_MASK) == SDL_WINDOW_FULLSCREEN_DESKTOP) && ((window->flags & FULLSCREEN_MASK) == SDL_WINDOW_FULLSCREEN)) {
 | 
			
		||||
        Cocoa_SetWindowFullscreenSpace(window, SDL_FALSE);
 | 
			
		||||
    } else if (fullscreen && ((window->last_fullscreen_flags & FULLSCREEN_MASK) == SDL_WINDOW_FULLSCREEN) && ((window->flags & FULLSCREEN_MASK) == SDL_WINDOW_FULLSCREEN_DESKTOP)) {
 | 
			
		||||
        display = SDL_GetDisplayForWindow(window);
 | 
			
		||||
        SDL_SetDisplayModeForDisplay(display, NULL);
 | 
			
		||||
        if (_this->SetWindowFullscreen) {
 | 
			
		||||
            _this->SetWindowFullscreen(_this, window, display, SDL_FALSE);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (Cocoa_SetWindowFullscreenSpace(window, fullscreen)) {
 | 
			
		||||
        window->last_fullscreen_flags = window->flags;
 | 
			
		||||
        return 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue