[vlc-devel] commit: XCB/window: hackish implementation of video wallpaper ( Rémi Denis-Courmont )
git version control
git at videolan.org
Sat Dec 26 21:08:14 CET 2009
vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sat Dec 26 22:07:52 2009 +0200| [103cd865cc6aa2b19f1fd1adbed8d13c1d8c5543] | committer: Rémi Denis-Courmont
XCB/window: hackish implementation of video wallpaper
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=103cd865cc6aa2b19f1fd1adbed8d13c1d8c5543
---
modules/video_output/xcb/window.c | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/modules/video_output/xcb/window.c b/modules/video_output/xcb/window.c
index 52c447a..05591ea 100644
--- a/modules/video_output/xcb/window.c
+++ b/modules/video_output/xcb/window.c
@@ -330,6 +330,12 @@ static int Open (vlc_object_t *obj)
/* Make the window visible */
xcb_map_window (conn, window);
+ if (var_CreateGetBool (obj, "video-wallpaper"))
+ {
+ vout_window_SetState (wnd, VOUT_WINDOW_STATE_BELOW);
+ vout_window_SetFullScreen (wnd, true);
+ }
+
/* Create the event thread. It will dequeue all events, so any checked
* request from this thread must be completed at this point. */
if ((p_sys->keys != NULL)
@@ -494,8 +500,13 @@ static int Control (vout_window_t *wnd, int cmd, va_list ap)
}
case VOUT_WINDOW_SET_FULLSCREEN:
- set_wm_state (wnd, va_arg (ap, int), p_sys->wm_state_fullscreen);
+ {
+ bool fs = va_arg (ap, int);
+ if (!fs && var_GetBool (wnd, "video-wallpaper"))
+ return VLC_EGENERIC;
+ set_wm_state (wnd, fs, p_sys->wm_state_fullscreen);
break;
+ }
default:
msg_Err (wnd, "request %d not implemented", cmd);
More information about the vlc-devel
mailing list