#include <libosso.h>
#endif
+struct vout_window_t;
/*****************************************************************************
* x11_window_t: X11 window descriptor
*****************************************************************************/
typedef struct x11_window_t
{
- Window owner_window; /* owner window (if any) */
+ struct vout_window_t*owner_window; /* owner window (if any) */
Window base_window; /* base window */
Window video_window; /* sub-window for displaying video */
GC gc; /* graphic context instance handler */
Visual * p_visual; /* visual pointer */
int i_screen; /* screen number */
- vlc_mutex_t lock;
-
/* Our current window */
x11_window_t * p_win;
x11_window_t original_window;
x11_window_t fullscreen_window;
+ /* key and mouse event handling */
+ int i_vout_event; /* 1(Fullsupport), 2(FullscreenOnly), 3(none) */
+
/* X11 generic properties */
- vlc_bool_t b_altfullscreen; /* which fullscreen method */
+ bool b_altfullscreen; /* which fullscreen method */
#ifdef HAVE_SYS_SHM_H
int i_shm_opcode; /* shared memory extension opcode */
#endif
#if defined(MODULE_NAME_IS_xvideo) || defined(MODULE_NAME_IS_xvmc)
int i_xvport;
- vlc_bool_t b_paint_colourkey;
+ bool b_paint_colourkey;
int i_colourkey;
#else
Colormap colormap; /* colormap used (8bpp only) */
#endif
/* Mouse pointer properties */
- vlc_bool_t b_mouse_pointer_visible;
+ bool b_mouse_pointer_visible;
mtime_t i_time_mouse_last_moved; /* used to auto-hide pointer*/
+ mtime_t i_mouse_hide_timeout; /* after time hide cursor */
Cursor blank_cursor; /* the hidden cursor */
mtime_t i_time_button_last_pressed; /* to track dbl-clicks */
Pixmap cursor_pixmap;
/* Window manager properties */
Atom net_wm_state;
Atom net_wm_state_fullscreen;
- vlc_bool_t b_net_wm_state_fullscreen;
+ bool b_net_wm_state_fullscreen;
Atom net_wm_state_above;
- vlc_bool_t b_net_wm_state_above;
+ bool b_net_wm_state_above;
Atom net_wm_state_stays_on_top;
- vlc_bool_t b_net_wm_state_stays_on_top;
+ bool b_net_wm_state_stays_on_top;
Atom net_wm_state_below;
- vlc_bool_t b_net_wm_state_below;
+ bool b_net_wm_state_below;
#ifdef MODULE_NAME_IS_glx
/* GLX properties */
* Chroma defines
*****************************************************************************/
#ifdef MODULE_NAME_IS_xvideo
-# define MAX_DIRECTBUFFERS 10
+# define MAX_DIRECTBUFFERS (VOUT_MAX_PICTURES)
#elif defined(MODULE_NAME_IS_xvmc)
-# define MAX_DIRECTBUFFERS 12
+# define MAX_DIRECTBUFFERS (VOUT_MAX_PICTURES+2)
#else
# define MAX_DIRECTBUFFERS 2
#endif
+#ifndef MODULE_NAME_IS_glx
+static IMAGE_TYPE *CreateImage ( vout_thread_t *,
+ Display *, EXTRA_ARGS, int, int );
+#ifdef HAVE_SYS_SHM_H
+IMAGE_TYPE *CreateShmImage ( vout_thread_t *,
+ Display *, EXTRA_ARGS_SHM, int, int );
+#endif
+#endif