int new_window_width = event->data1;
int new_window_height = event->data2;
- printf("::: RESIZED from %d, %d to %d, %d\n",
- video.window_width, video.window_height,
- new_window_width, new_window_height);
-
// if window size has changed after resizing, calculate new scaling factor
if (new_window_width != video.window_width ||
new_window_height != video.window_height)
int new_xpercent = (100 * new_window_width / video.width);
int new_ypercent = (100 * new_window_height / video.height);
+ printf("::: RESIZED from %d, %d to %d, %d\n",
+ video.window_width, video.window_height,
+ new_window_width, new_window_height);
+
setup.window_scaling_percent = video.window_scaling_percent =
MIN(MAX(MIN_WINDOW_SCALING_PERCENT, MIN(new_xpercent, new_ypercent)),
MAX_WINDOW_SCALING_PERCENT);
printf("::: %d\n", setup.window_scaling_percent);
#endif
- ToggleFullscreenIfNeeded();
+ ToggleFullscreenOrChangeWindowScalingIfNeeded();
if (game_status == GAME_MODE_SETUP)
RedrawSetupScreenAfterFullscreenToggle();
}
if ((key == KSYM_minus || key == KSYM_plus || key == KSYM_0) &&
- (GetKeyModState() & KMOD_Control) && video.window_scaling_available &&
+ (GetKeyModState() & KMOD_Alt) && video.window_scaling_available &&
!video.fullscreen_enabled)
{
if (key == KSYM_0)
else if (setup.window_scaling_percent > MAX_WINDOW_SCALING_PERCENT)
setup.window_scaling_percent = MAX_WINDOW_SCALING_PERCENT;
- ToggleFullscreenIfNeeded();
+ ToggleFullscreenOrChangeWindowScalingIfNeeded();
if (game_status == GAME_MODE_SETUP)
RedrawSetupScreenAfterFullscreenToggle();
}
/* needed if last screen was the setup screen and fullscreen state changed */
- ToggleFullscreenIfNeeded();
+ // (moved to "execSetupGraphics()" to change fullscreen state directly)
+ // ToggleFullscreenOrChangeWindowScalingIfNeeded();
/* leveldir_current may be invalid (level group, parent link) */
if (!validLevelSeries(leveldir_current))
setup_mode = SETUP_MODE_GRAPHICS;
DrawSetupScreen();
+
+ // window scaling may have changed at this point
+ ToggleFullscreenOrChangeWindowScalingIfNeeded();
}
#if !defined(PLATFORM_ANDROID)
}
drawSetupValue(pos);
+
+ // fullscreen state may have changed at this point
+ if (setup_info[pos].value == &setup.fullscreen)
+ ToggleFullscreenOrChangeWindowScalingIfNeeded();
}
static void DrawCursorAndText_Setup(int pos, boolean active)