@@ -257,45 +257,47 @@ void sdl_window::set_maximized(bool maximized)
257
257
258
258
void sdl_window::set_fullscreen (bool fullscreen)
259
259
{
260
- if (fullscreen != m_fullscreen )
260
+ if (m_fullscreen == fullscreen )
261
261
{
262
- if (fullscreen)
263
- {
264
- const SDL_DisplayMode* sdl_display_mode = nullptr ;
265
-
266
- if (const auto sdl_window_display_id = SDL_GetDisplayForWindow (m_internal_window); sdl_window_display_id)
267
- {
268
- sdl_display_mode = SDL_GetDesktopDisplayMode (sdl_window_display_id);
269
- }
262
+ return ;
263
+ }
270
264
271
- SDL_SetWindowFullscreenMode (m_internal_window, sdl_display_mode);
272
- }
265
+ if (fullscreen)
266
+ {
267
+ const SDL_DisplayMode* sdl_display_mode = nullptr ;
273
268
274
- // Hide cursor if visible
275
- const bool is_cursor_visible = SDL_CursorVisible ();
276
- if (is_cursor_visible)
269
+ if (const auto sdl_window_display_id = SDL_GetDisplayForWindow (m_internal_window); sdl_window_display_id)
277
270
{
278
- SDL_HideCursor ( );
271
+ sdl_display_mode = SDL_GetDesktopDisplayMode (sdl_window_display_id );
279
272
}
280
273
281
- // Save global mouse position
282
- math::fvec2 mouse_position = {};
283
- SDL_GetGlobalMouseState (&mouse_position.x (), &mouse_position.y ());
274
+ SDL_SetWindowFullscreenMode (m_internal_window, sdl_display_mode);
275
+ }
276
+
277
+ // Hide cursor if visible
278
+ const bool is_cursor_visible = SDL_CursorVisible ();
279
+ if (is_cursor_visible)
280
+ {
281
+ SDL_HideCursor ();
282
+ }
284
283
285
- // Change fullscreen state
286
- SDL_SetWindowFullscreen (m_internal_window, fullscreen);
284
+ // Save global mouse position
285
+ math::fvec2 mouse_position = {};
286
+ SDL_GetGlobalMouseState (&mouse_position.x (), &mouse_position.y ());
287
287
288
- // Restore global mouse position
289
- SDL_WarpMouseGlobal (mouse_position. x (), mouse_position. y () );
288
+ // Change fullscreen state
289
+ SDL_SetWindowFullscreen (m_internal_window, fullscreen );
290
290
291
- // Restore cursor visibility
292
- if (is_cursor_visible)
293
- {
294
- SDL_ShowCursor ();
295
- }
296
-
297
- m_fullscreen = fullscreen ;
291
+ // Restore global mouse position
292
+ SDL_WarpMouseGlobal (mouse_position. x (), mouse_position. y ());
293
+
294
+ // Restore cursor visibility
295
+ if (is_cursor_visible)
296
+ {
297
+ SDL_ShowCursor () ;
298
298
}
299
+
300
+ m_fullscreen = fullscreen;
299
301
}
300
302
301
303
void sdl_window::set_v_sync (bool v_sync)
0 commit comments