diff libvo/vo_gl2.c @ 15748:f75ba7f7b7b2

support -wid
author reimar
date Sat, 18 Jun 2005 18:32:29 +0000
parents b4c3f02811dd
children fd51fd1ff231
line wrap: on
line diff
--- a/libvo/vo_gl2.c	Fri Jun 17 16:45:24 2005 +0000
+++ b/libvo/vo_gl2.c	Sat Jun 18 18:32:29 2005 +0000
@@ -577,6 +577,13 @@
 	  glViewport( (vo_screenwidth-*x)/2, (vo_screenheight-*y)/2, *x, *y);
   } else { 
 	  //aspect(x, y, A_NOZOOM);
+#ifndef GL_WIN32
+	if (WinID >= 0) {
+	  int top = 0, left = 0, w = *x, h = *y;
+	  geometry(&top, &left, &w, &h, vo_screenwidth, vo_screenheight);
+	  glViewport(top, left, w, h);
+	} else
+#endif
 	  glViewport( 0, 0, *x, *y );
   }
 
@@ -686,6 +693,10 @@
 }
 
 static int config_glx(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t flags, char *title, uint32_t format) {
+  if (WinID >= 0) {
+    vo_window = WinID ? (Window)WinID : mRootWin;
+    return 0;
+  }
   if ( vo_window == None ) 
   {
 	XSizeHints hint;
@@ -890,7 +901,7 @@
 			draw_alpha_fnc=draw_alpha_32; break;
   }
 
-  if (initGl(d_width, d_height) == -1)
+  if (initGl(vo_dwidth, vo_dheight) == -1)
       return -1;
 #ifndef GL_WIN32
       if (vo_ontop) vo_x11_setlayer(mDisplay,vo_window, vo_ontop);