diff options
-rw-r--r-- | xineliboutput.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/xineliboutput.c b/xineliboutput.c index 3a54040a..9fc2b504 100644 --- a/xineliboutput.c +++ b/xineliboutput.c @@ -21,7 +21,7 @@ * * xineliboutput.c: VDR Plugin interface * - * $Id: xineliboutput.c,v 1.39 2009-08-19 19:42:02 phintuka Exp $ + * $Id: xineliboutput.c,v 1.40 2009-10-12 18:12:09 phintuka Exp $ * */ @@ -138,6 +138,7 @@ const char cmdLineHelp[] = " -p --primary Force xineliboutput to be primary device when\n" " there are active frontend(s)\n" " -c --exit-on-close Exit vdr when local frontend window is closed\n" +" -C --config=file Use xine-lib config file\n" ; const char *cPluginXinelibOutput::CommandLineHelp(void) @@ -270,6 +271,22 @@ bool cPluginXinelibOutput::Service(const char *Id, void *Data) return true; } + else if(!strcmp(Id, "StartFrontend-1.0")) { + if(CData && *CData) { + LOGMSG("Service(%s, %s)", Id, CData); + int local_frontend = strstra(CData, xc.s_frontends, -1); + if (local_frontend >= 0 && local_frontend < FRONTEND_count && strcmp(CData, xc.local_frontend)) { + strn0cpy(xc.local_frontend, xc.s_frontends[local_frontend], sizeof(xc.local_frontend)); + cXinelibDevice::Instance().ConfigureWindow( + xc.fullscreen, xc.width, xc.height, xc.modeswitch, xc.modeline, + xc.display_aspect, xc.scale_video, xc.field_order); + } + return true; + } + LOGMSG("Service(%s) -> true", Id); + return true; + } + } return false; } |