From 53d08255157812632a34f59c7b66dbf000782b84 Mon Sep 17 00:00:00 2001
From: Klaus Schmidinger <vdr@tvdr.de>
Date: Tue, 24 Apr 2012 09:19:48 +0200
Subject: OSD and skin are now reinitialized after a plugin setup page has been
 confirmed

---
 HISTORY | 5 ++++-
 menu.c  | 9 +++++++--
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/HISTORY b/HISTORY
index 7bdd0285..37351bed 100644
--- a/HISTORY
+++ b/HISTORY
@@ -7052,7 +7052,7 @@ Video Disk Recorder Revision History
 - Fixed handling IDLEPRIORITY in cDvbDevice::ProvidesChannel() (thanks to Frank
   Schmirler).
 
-2012-04-23: Version 1.7.28
+2012-04-24: Version 1.7.28
 
 - Fixed cPixmapMemory::DrawEllipse() for quadrants -1 and -4.
 - Fixed getting the maximum short channel name length in case there are no short names
@@ -7081,3 +7081,6 @@ Video Disk Recorder Revision History
   display the disk usage in totally different ways.
 - A cOsdMenu can now handle skins that display different numbers of items in the
   various menu categories.
+- OSD and skin are now reinitialized after a plugin setup page has been confirmed,
+  to have them react immediately in case any change to a plugin's setup parameter
+  has an effect on the OSD.
diff --git a/menu.c b/menu.c
index c6208e1d..21c59381 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
  * See the main source file 'vdr.c' for copyright information and
  * how to reach the author.
  *
- * $Id: menu.c 2.50 2012/04/22 15:13:14 kls Exp $
+ * $Id: menu.c 2.51 2012/04/24 09:17:45 kls Exp $
  */
 
 #include "menu.h"
@@ -3186,8 +3186,13 @@ eOSState cMenuSetupPlugins::ProcessKey(eKeys Key)
               }
            }
         }
-     else if (state == osContinue)
+     else if (state == osContinue) {
         Store();
+        // Reinitialize OSD and skin, in case any plugin setup change has an influence on these:
+        cOsdProvider::UpdateOsdSize(true);
+        SetDisplayMenu();
+        Display();
+        }
      }
   return state;
 }
-- 
cgit v1.2.3