(ver ediciones)¿Cómo puedo evitar que Gnome muestre dos ventanas al hacer alt-tab? (C++ qt aplicación)
estoy desarrollando un/C++ de QT en GNOME.
La aplicación tiene una ventana principal y una ventana secundaria QListBox.
Ambas ventanas se muestran como ventanas principales separadas cuando desactivo la aplicación.
¿Cómo puedo hacer para que solo se muestre una ventana cuando yo (o más adelante el usuario) use alt-tab?
Supongo que este comportamiento se produce porque una ventana principal no recorta la ventana secundaria: la ventana secundaria amplía el límite de la ventana principal. Gnome también tiene un mal comportamiento de tabulación alternativa para muchas otras aplicaciones, mostrando cuadros de diálogo modales separados de las ventanas principales. Pero en el caso de mi aplicación, esto es realmente molesto.
Estoy pensando que podría hacer una ventana transparente gigante que incluya ambas ventanas existentes. Pero sería mejor encontrar una solución "limpia".
(. La suposición más lógica es verdad que tiene algo que ver con las banderas de las ventanas que he probado todas las combinaciones razonables de las banderas que podría pensar en los tipos de ventanas se describen here.)
Editar: El la aplicación tiene un QWidget como ventana principal (No QMainWindow), QListView está contenida en el objeto QWidget y se crea al pasar un punto a la ventana principal. está diseñado con Qt :: Tool | Qt :: FramelessWindowHint.
Edit2: El estilo :: X11BypassWindowManagerHint Qt hace trabajo para quitar la ventana de la lista alt-tab. El problema es que también hace que la ventana "no sea administrada" por lo que cubre las otras ventanas. Podría esconderme siempre que pierda el foco, premio ahora por una mejor solución.
Supongo que tiene algo que ver con las banderas de la ventana ... por ejemplo, si la convertiste en una ventana de herramientas, ¿agarraría ambas entonces? Cuando uso Open Office, por ejemplo, gnome no tabula a través de sus ventanas de herramientas flotantes, sino solo las principales. –
Supongo que QListBox tiene su puntero de ventana principal establecido en QMainWindow? ¿Hay alguna posibilidad de que un código de código mínimo requerido genere este problema? – sleepynate