He intentado crear una ventana completamente transparente usando C++ & X11. No debería consumir ningún evento y simplemente reenviarlos a las ventanas a continuación. Algún tipo de GlassPane, como se lo conoce por Java-Windows, pero a pantalla completa. Entonces me gustaría dibujar en esta ventana.X11/Xlib: Crear "GlassPane" -Window
¿Esto de alguna manera es posible con X11?
Mi primer intento fue ignorar todos los eventos, simplemente copie la imagen de la ventana raíz usando XGetImage()
... Pero antes que nada, esto es bastante lento ya que la ventana debería estar a pantalla completa. XShmGetImage
lamentablemente no es una opción aquí.
Por supuesto, esta ventana no necesitaría ninguna decoración, pero eso no es un gran problema.
¿Cómo hacer esto solo con X11/Xlib? Si no es posible, ¿qué más necesito?
¡Se agradece cualquier ayuda!
PS: Xinerama
está activado, así como Compiz
, si eso trae problemas podría vivir para desactivarlos.
en cuanto a los eventos, XFixesSetWindowShapeRegion con una región vacía para trabajos de ShapeInput. Buen punto, gracias! – Atmocreations
Otra pregunta al respecto: ¿Puedo interceptar de alguna manera el evento (recibir notificaciones) pero no consumirlo, es decir, la ventana a continuación también recibe el evento? Adivina con XFixesSetWindowShapeRegion() para ShapeInput, esto puede no funcionar, ¿verdad? ¡Gracias! – Atmocreations
no hay manera de "fisgonear" eventos en este momento hasta donde yo sé, por desgracia. –