summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Gui/mplayer/gtk/fs.c2
-rw-r--r--cfg-mplayer.h3
-rw-r--r--libvo/video_out.c1
-rw-r--r--libvo/video_out.h1
-rw-r--r--libvo/vo_dga.c2
-rw-r--r--libvo/vo_x11.c1
-rw-r--r--libvo/vo_xv.c1
7 files changed, 10 insertions, 1 deletions
diff --git a/Gui/mplayer/gtk/fs.c b/Gui/mplayer/gtk/fs.c
index d0e55a2eaa..c5fb4483a9 100644
--- a/Gui/mplayer/gtk/fs.c
+++ b/Gui/mplayer/gtk/fs.c
@@ -33,7 +33,7 @@
gchar * fsSelectedFile = NULL;
gchar * fsSelectedDirectory = NULL;
unsigned char * fsThatDir = ".";
-gchar fsFilter[64] = "*";
+gchar fsFilter[256] = "*";
int fsPressed = 0;
int fsType = 0;
diff --git a/cfg-mplayer.h b/cfg-mplayer.h
index 7141d4d1ba..1224c7b15e 100644
--- a/cfg-mplayer.h
+++ b/cfg-mplayer.h
@@ -253,6 +253,9 @@ static config_t mplayer_opts[]={
{"novsync", &vo_vsync, CONF_TYPE_FLAG, 0, 1, 0, NULL},
{"panscan", &vo_panscan, CONF_TYPE_FLOAT, CONF_RANGE, 0.0, 1.0, NULL},
+ {"grabpointer", &vo_grabpointer, CONF_TYPE_FLAG, 0, 0, 1, NULL},
+ {"nograbpointer", &vo_grabpointer, CONF_TYPE_FLAG, 0, 1, 0, NULL},
+
#ifdef HAVE_X11
// x11,xv,xmga,xvidix
{"wid", &WinID, CONF_TYPE_INT, 0, 0, 0, NULL},
diff --git a/libvo/video_out.c b/libvo/video_out.c
index 10e584f4e0..5aec99bb0d 100644
--- a/libvo/video_out.c
+++ b/libvo/video_out.c
@@ -30,6 +30,7 @@ int vo_dwidth=0;
int vo_dheight=0;
int vo_dbpp=0;
+int vo_grabpointer = 1;
int vo_doublebuffering = 0;
int vo_vsync = 0;
int vo_fs = 0;
diff --git a/libvo/video_out.h b/libvo/video_out.h
index 29dc2fd496..04e0c219ea 100644
--- a/libvo/video_out.h
+++ b/libvo/video_out.h
@@ -170,6 +170,7 @@ extern int vo_dwidth;
extern int vo_dheight;
extern int vo_dbpp;
+extern int vo_grabpointer;
extern int vo_doublebuffering;
extern int vo_directrendering;
extern int vo_vsync;
diff --git a/libvo/vo_dga.c b/libvo/vo_dga.c
index 57da50b8a7..46d0f3bb00 100644
--- a/libvo/vo_dga.c
+++ b/libvo/vo_dga.c
@@ -579,6 +579,7 @@ uninit(void)
if(vo_dga_is_running){
vo_dga_is_running = 0;
mp_msg(MSGT_VO, MSGL_V, "vo_dga: in uninit\n");
+ if(vo_grabpointer)
XUngrabPointer (vo_dga_dpy, CurrentTime);
XUngrabKeyboard (vo_dga_dpy, CurrentTime);
#ifdef HAVE_DGA2
@@ -1037,6 +1038,7 @@ static uint32_t config( uint32_t width, uint32_t height,
XGrabKeyboard (vo_dga_dpy, DefaultRootWindow(vo_dga_dpy), True,
GrabModeAsync,GrabModeAsync, CurrentTime);
+ if(vo_grabpointer)
XGrabPointer (vo_dga_dpy, DefaultRootWindow(vo_dga_dpy), True,
ButtonPressMask,GrabModeAsync, GrabModeAsync,
None, None, CurrentTime);
diff --git a/libvo/vo_x11.c b/libvo/vo_x11.c
index 92f92c9abc..df1a47b46c 100644
--- a/libvo/vo_x11.c
+++ b/libvo/vo_x11.c
@@ -372,6 +372,7 @@ static uint32_t config( uint32_t width,uint32_t height,uint32_t d_width,uint32_t
if ( vm )
{
/* Grab the mouse pointer in our window */
+ if(vo_grabpointer)
XGrabPointer(mDisplay, vo_window, True, 0,
GrabModeAsync, GrabModeAsync,
vo_window, None, CurrentTime);
diff --git a/libvo/vo_xv.c b/libvo/vo_xv.c
index 09b3d7ea09..1cd8d51011 100644
--- a/libvo/vo_xv.c
+++ b/libvo/vo_xv.c
@@ -404,6 +404,7 @@ static uint32_t config(uint32_t width, uint32_t height, uint32_t d_width, uint32
if ( vm )
{
/* Grab the mouse pointer in our window */
+ if(vo_grabpointer)
XGrabPointer(mDisplay, vo_window, True, 0,
GrabModeAsync, GrabModeAsync,
vo_window, None, CurrentTime);