summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video/sdl_v.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/video/sdl_v.cpp b/src/video/sdl_v.cpp
index 663de4ebf..bce7340f6 100644
--- a/src/video/sdl_v.cpp
+++ b/src/video/sdl_v.cpp
@@ -258,9 +258,23 @@ static bool CreateMainSurface(uint w, uint h)
_screen.dst_ptr = newscreen->pixels;
_sdl_screen = newscreen;
- BlitterFactoryBase::GetCurrentBlitter()->PostResize();
+ Blitter *blitter = BlitterFactoryBase::GetCurrentBlitter();
+ blitter->PostResize();
+
+ switch (blitter->UsePaletteAnimation()) {
+ case Blitter::PALETTE_ANIMATION_NONE:
+ case Blitter::PALETTE_ANIMATION_VIDEO_BACKEND:
+ InitPalette();
+ UpdatePalette();
+ break;
+
+ case Blitter::PALETTE_ANIMATION_BLITTER:
+ blitter->PaletteAnimate(_local_palette);
+ break;
- InitPalette();
+ default:
+ NOT_REACHED();
+ }
snprintf(caption, sizeof(caption), "OpenTTD %s", _openttd_revision);
SDL_CALL SDL_WM_SetCaption(caption, caption);