## http://www.hoochvdr.info/yaepg/vdr-1.3.19-core-yaepg.diff ## ## Thomas Günther : ## - replaced OSD_OpenRaw with OSD_Command(OSD_MoveWindow+1) to compile with ## Debian-Package linux-kernel-headers_2.5.999-test7-bk-17 (Sarge) ## - adapted to VDR-1.3.25 ## - adapted to VDR-1.3.42 ## - adapted to VDR-1.5.2 ## - adapted to VDR-1.5.3 (removed special yaepg font) ## - adapted to VDR-1.5.9 ## - Adaptation pour VDR-1.5.10 ## ## All lines beginning with `## DP:' are a description of the patch. ## DP: This patch is needed for the yaepg plugin. diff -Nru vdr-1.5.10/device.h vdr-1.5.10-yaepg/device.h --- vdr-1.5.10/device.h 2007-10-14 15:09:12.000000000 +0200 +++ vdr-1.5.10-yaepg/device.h 2007-10-18 14:48:35.000000000 +0200 @@ -238,12 +238,12 @@ ///< Direction (only the sign of Direction is evaluated, positive values ///< switch to higher channel numbers). private: - eSetChannelResult SetChannel(const cChannel *Channel, bool LiveView); - ///< Sets the device to the given channel (general setup). protected: virtual bool SetChannelDevice(const cChannel *Channel, bool LiveView); ///< Sets the device to the given channel (actual physical setup). public: + eSetChannelResult SetChannel(const cChannel *Channel, bool LiveView); + ///< Sets the device to the given channel (general setup). static int CurrentChannel(void) { return primaryDevice ? currentChannel : 0; } ///< Returns the number of the current channel on the primary device. static void SetCurrentChannel(const cChannel *Channel) { currentChannel = Channel ? Channel->Number() : 0; } diff -Nru vdr-1.5.10/dvbosd.c vdr-1.5.10-yaepg/dvbosd.c --- vdr-1.5.10/dvbosd.c 2007-09-16 10:55:54.000000000 +0200 +++ vdr-1.5.10-yaepg/dvbosd.c 2007-10-18 15:37:48.000000000 +0200 @@ -80,6 +80,10 @@ Cmd(OSD_SetWindow, 0, i + 1); Cmd(OSD_Close); } + if (vidWin.bpp != 0) { + Cmd(OSD_SetWindow, 0, 5); + Cmd(OSD_Close); + } shown = false; } } @@ -198,6 +202,11 @@ Cmd(OSD_SetWindow, 0, i + 1); Cmd(OSD_MoveWindow, 0, Left() + Bitmap->X0(), Top() + Bitmap->Y0()); } + if (vidWin.bpp != 0) { + Cmd(OSD_SetWindow, 0, 5); + Cmd(OSD_Command(OSD_MoveWindow+1), vidWin.bpp, vidWin.x1, vidWin.y1, + vidWin.x2, vidWin.y2, (void *)0); + } shown = true; } } diff -Nru vdr-1.5.10/osd.c vdr-1.5.10-yaepg/osd.c --- vdr-1.5.10/osd.c 2007-10-12 14:38:36.000000000 +0200 +++ vdr-1.5.10-yaepg/osd.c 2007-10-18 14:58:51.000000000 +0200 @@ -737,6 +737,7 @@ } } Osds.Append(this); + vidWin.bpp = 0; } cOsd::~cOsd() diff -Nru vdr-1.5.10/osd.h vdr-1.5.10-yaepg/osd.h --- vdr-1.5.10/osd.h 2007-10-12 16:28:44.000000000 +0200 +++ vdr-1.5.10-yaepg/osd.h 2007-10-18 14:59:30.000000000 +0200 @@ -400,6 +400,7 @@ ///< 7: vertical, falling, upper virtual void Flush(void); ///< Actually commits all data to the OSD hardware. + tArea vidWin; }; class cOsdProvider {