Xvfb GTK3透明度

问题描述 投票:0回答:1

我有一个GTK应用程序,使用以下代码片段创建“透明”窗口

GdkScreen* screen = gtk_window_get_screen(window);
GdkVisual* screen_visual = gdk_screen_get_rgba_visual(screen);
gtk_widget_set_visual(GTK_WIDGET(window), screen_visual);
gtk_widget_set_app_paintable(GTK_WIDGET(window), true);

当在“常规”显示器上运行并且窗口正确地在彼此之上分层时,这可以正常工作,但是当在Xvfb屏幕中运行它时,使用类似这样的Xvfb :0 -nocursor -screen 0 1920x1080x24+32 +extension RANDR +extension XVideo +extension RENDER,GTK完全禁用透明度并且窗口最终成为不透明。 (仅在可见的顶层窗口中进行调整)

有没有办法让GTK在无头屏幕内创造这种透明度?

gtk transparency gtk3 headless xvfb
1个回答
2
投票

对于任何寻找相同问题的人,我都缺少Xvfb的x复合管理器(例如xcompmgr)。当为Xvfb显示器运行它时,它按预期工作。

© www.soinside.com 2019 - 2024. All rights reserved.