1*4882a593SmuzhiyunFrom 7eb8b7010f63268ef738fe8c33a2c4db712b4f51 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Jeffy Chen <jeffy.chen@rock-chips.com> 3*4882a593SmuzhiyunDate: Thu, 4 May 2023 17:52:33 +0800 4*4882a593SmuzhiyunSubject: [PATCH 19/20] gl: wayland: Honor render-rectangle for toplevel window 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunTested on RK3588 evb with: 7*4882a593Smuzhiyungst-launch-1.0 videotestsrc ! glimagesink render-rectangle='<100,200,300,400>' 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunSigned-off-by: Jeffy Chen <jeffy.chen@rock-chips.com> 10*4882a593Smuzhiyun--- 11*4882a593Smuzhiyun gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c | 5 +++++ 12*4882a593Smuzhiyun 1 file changed, 5 insertions(+) 13*4882a593Smuzhiyun 14*4882a593Smuzhiyundiff --git a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c 15*4882a593Smuzhiyunindex f2d7ceb..55fce34 100644 16*4882a593Smuzhiyun--- a/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c 17*4882a593Smuzhiyun+++ b/gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c 18*4882a593Smuzhiyun@@ -732,6 +732,11 @@ _set_render_rectangle (gpointer data) 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun window_resize (render->window_egl, render->rect.w, render->rect.h); 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun+ /* try to position the xdg surface with hacked wayland server API */ 23*4882a593Smuzhiyun+ if (render->window_egl->window.xdg_surface) 24*4882a593Smuzhiyun+ xdg_surface_set_window_geometry (render->window_egl->window.xdg_surface, 25*4882a593Smuzhiyun+ render->rect.x, render->rect.y, 0, 0); 26*4882a593Smuzhiyun+ 27*4882a593Smuzhiyun render->window_egl->window.render_rect = render->rect; 28*4882a593Smuzhiyun } 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun-- 31*4882a593Smuzhiyun2.20.1 32*4882a593Smuzhiyun 33