fixed setting effective window scaling value in window title
[rocksndiamonds.git] / src / screens.c
index 94eb8895e723a87c1731916810607f865d30370e..ec7d7b66cc928ace7caf6f292c6e3b4ffb4ebb7d 100644 (file)
@@ -1663,9 +1663,9 @@ void HandleTitleScreen(int mx, int my, int dx, int dy, int button)
       sound = getTitleSound(tci);
       music = getTitleMusic(tci);
 
-      if (sound == SND_UNDEFINED || sound != last_sound)
-       FadeSounds();
-      if (music == MUS_UNDEFINED || music != last_music)
+      if (last_sound != SND_UNDEFINED && sound != last_sound)
+       FadeSound(last_sound);
+      if (last_music != MUS_UNDEFINED && music != last_music)
        FadeMusic();
 
       fading = getTitleFading(tci);
@@ -4707,16 +4707,14 @@ static void execSetupGraphics_setRenderingModes()
 
 static void execSetupGraphics()
 {
+  // update "setup.window_scaling_percent" from list selection
+  // (in this case, window scaling was changed on setup screen)
   if (setup_mode == SETUP_MODE_CHOOSE_WINDOW_SIZE)
-  {
-    // update "setup.window_scaling_percent" from list selection
     execSetupGraphics_setWindowSizes(FALSE);
-  }
-  else
-  {
-    // update list selection from "setup.window_scaling_percent"
-    execSetupGraphics_setWindowSizes(TRUE);
-  }
+
+  // update list selection from "setup.window_scaling_percent"
+  // (window scaling may have changed by resizing the window)
+  execSetupGraphics_setWindowSizes(TRUE);
 
   execSetupGraphics_setScalingTypes();
   execSetupGraphics_setRenderingModes();