diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2006-06-03 14:46:36 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2006-06-03 14:46:36 +0200 |
commit | 0d4cf40b79951b8301ee2b9a3bc359c9f9c85c82 (patch) | |
tree | 4cf021d807ea68a461757018ea393a7c7afd4ec9 /vdr.c | |
parent | 56744b1f4e4da2bdcf64a44be11cc05c0e0c5c00 (diff) | |
download | vdr-0d4cf40b79951b8301ee2b9a3bc359c9f9c85c82.tar.gz vdr-0d4cf40b79951b8301ee2b9a3bc359c9f9c85c82.tar.bz2 |
When the 'skincurses' plugin is loaded, it automatically sets the 'curses' skin as the current one
Diffstat (limited to 'vdr.c')
-rw-r--r-- | vdr.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -22,7 +22,7 @@ * * The project's page is at http://www.cadsoft.de/vdr * - * $Id: vdr.c 1.272 2006/05/14 09:23:46 kls Exp $ + * $Id: vdr.c 1.273 2006/06/03 14:46:36 kls Exp $ */ #include <getopt.h> @@ -504,6 +504,7 @@ int main(int argc, char *argv[]) bool UserShutdown = false; bool TimerInVpsMargin = false; bool IsInfoMenu = false; + cSkin *CurrentSkin = NULL; // Load plugins: @@ -605,6 +606,7 @@ int main(int argc, char *argv[]) new cSkinSTTNG; Skins.SetCurrent(Setup.OSDSkin); cThemes::Load(Skins.Current()->Name(), Setup.OSDTheme, Skins.Current()->Theme()); + CurrentSkin = Skins.Current(); // Start plugins: @@ -613,8 +615,10 @@ int main(int argc, char *argv[]) // Set skin and theme in case they're implemented by a plugin: - Skins.SetCurrent(Setup.OSDSkin); - cThemes::Load(Skins.Current()->Name(), Setup.OSDTheme, Skins.Current()->Theme()); + if (!CurrentSkin || CurrentSkin == Skins.Current() && strcmp(Skins.Current()->Name(), Setup.OSDSkin) != 0) { + Skins.SetCurrent(Setup.OSDSkin); + cThemes::Load(Skins.Current()->Name(), Setup.OSDTheme, Skins.Current()->Theme()); + } // Remote Controls: if (RcuDevice) |