summaryrefslogtreecommitdiff
path: root/xineliboutput.c
diff options
context:
space:
mode:
authorphintuka <phintuka>2009-10-12 18:12:09 +0000
committerphintuka <phintuka>2009-10-12 18:12:09 +0000
commitecfb2464a8d5b541f4fd7507f0162ff422180f55 (patch)
tree754214e1dd36f6c0af0760668778f4213d5edffa /xineliboutput.c
parent88ccc8b67f2bd0934e242e8b37bf28469c83e80e (diff)
downloadxineliboutput-ecfb2464a8d5b541f4fd7507f0162ff422180f55.tar.gz
xineliboutput-ecfb2464a8d5b541f4fd7507f0162ff422180f55.tar.bz2
Added StartFrontend-1.0 service (Thanks to durchflieger)
http://vdrportal.de/board/thread.php?threadid=86804&threadview=0&hilight=&hilightuser=0&page=1
Diffstat (limited to 'xineliboutput.c')
-rw-r--r--xineliboutput.c19
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;
}