Domanda

Sto sviluppando un'applicazione che gira su Linux di eseguire a schermo intero tutto il tempo (nessun menu o vassoi o qualsiasi cosa saranno visibili).

L'applicazione sta per essere sviluppato in Python, non quello che le questioni per quanto riguarda il window manager, ma quello che sto attraversando un periodo difficile con è la scelta di un window manager.

ho bisogno di qualcosa con il minimo ingombro possibile, che mi permetta di correre una grafica Python app e avere una finestra mplayer, allo stesso tempo, in widescreen risoluzioni (widescreen, 16: 10,16: 9, ecc). Oltre a questo, non ha bisogno di un sacco di funzioni, ma la dimensione finale impronta è la cosa più importante che ho troveremmo di fronte a.

Quali window manager mi consiglia?

EDIT:. Non ci sarà alcuna interazione con l'applicazione necessaria

È stato utile?

Soluzione

in realtà non ha bisogno di alcun window manager o display manager. Tutto quello che dovete fare è aprire la finestra iniziale con la stessa geometria della finestra principale. Immagino che si potrebbe anche disegnare direttamente nella finestra principale se si voleva.

Se si utilizza qualche libreria di visualizzazione probabilmente ha un modo semplice per aprire una finestra a schermo intero. Ad esempio, utilizzando una versione abbastanza recente di SDL attraverso pygame si può fare

pygame.display.init()
surface = pygame.display.set_mode((0,0),pygame.FULLSCREEN,0)

per ottenere una finestra che riempie l'intero schermo. Ciò funziona anche se non v'è alcun window manager in esecuzione.

Per quanto riguarda mplayer, accetta la bandiera -geometry, in modo da poter usare qualcosa come mplayer -geometry 640x480+20+20 per visualizzare la finestra mplayer 20 pixel dalla parte superiore a 20 pixel da sinistra e con una dimensione di 640x480 pixel.

Altri suggerimenti

window manager

Probabilmente dire. Visualizzazione gestisce sono KDM, GDM e simili. manager windoe, a nome, GNOME, Xfce, KDE, ratpoison, fvwm, twm, Blackbox sono pochi. ratpoison dà schermo intero per l'applicazione che è in primo piano, ma richiede l'interazione tastiera pesante (da qui il nome ratpoison) e nessuna interazione del mouse a tutti.

I assumere sarete in esecuzione sia la vostra interfaccia grafica pitone e MPlayer in una sorta di combinazione di geometrie che mostra sia, allo stesso tempo, riempire lo schermo.

Come ha commentato, non si dovrebbe avere bisogno di un window manager per raggiungere questo obiettivo. Si potrebbe avere i parametri app riga di comando python GUI per impostare la sua geometria finestra e chiamare anche mplayer a schermo intero con il parametro -geometry. Questo dovrebbe riempire lo schermo come previsto, senza decorazioni delle finestre.

Ora si potrebbe avere lo script startx chiamato per l'utente che esegue tutto e hanno un costume ~ / .xinitrc script di fare qualcosa di simile:

#!/bin/sh

exec python my_gui_app --whatever-sets-geom &
exec mplayer -fs video.avi

Se yout pyhon applicazione sarà invece il lancio mplayer poi basta lasciare la prima chiamata 'Exex' (togliere il '&') e lo hanno chiamata mplayer, se lo desideri con le dimensioni che ci si attende in modalità '-fs'.

Si prega di notare, potrebbe essere necessario usare qualcosa come il programma 'xset' al monitor di disabilitare tranciatura grazie al risparmio energetico, nascondere il cursore (anche se IIRC di quel qualcosa MPlayer fa per una propria finestra), e cose del genere.

Inoltre, Somethimes corsa, per esempio, GTK applicazioni su un display X nuda può finire con un tema "brutto", quindi potrebbe essere necessario per avere la configurazione stile toolkit curato qualche modo.

sto facendo qualcosa di simile sul mio "set-top box" e io non utilizzare alcun window manager.

stivali Debian e da inittab io auto-login l'utente che esegue il display. .profile tale utente avvia X, che gestisce .xinitrc, che inizia la mia app pitone che viene eseguito come un server di rete di fronte a mplayer (in esecuzione in modalità mplayer -slave).

Il mio pitone app non ha un elemento di interfaccia grafica - solo eseguito mplayer sul display X. Ma nel tuo caso, dovrebbe essere differente. Come ho già detto in un commento ad un'altra risposta, si consiglia di guardare in che modo è possibile Reparent finestra di MPlayer per dare maggiore controllo sulla sua collocazione e / o movimento / dimensioni.

Facendo in questo modo evitato un display manager e un gestore di finestre. Questo semplifica La soluzione, stivali più veloce e utilizza un ingombro ridotto (si corre di una scheda SD, con cumuli di spazio libero).

mi rendo conto che è una vecchia questione, ma io uso Openbox sul mio sistema, ho creato un file di configurazione personalizzata che disabilita tutte le scorciatoie da tastiera del mouse e rimuove i bordi ecc sulle applicazioni. Nella configurazione di Openbox ho anche creato alcune scorciatoie segrete che possono essere eseguiti fx. xterm per il debug in diretta sulla scatola.

La documentazione di Openbox è stato molto disponibile a capire tutto fuori, ho fatto la configurazione in circa 30 minuti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top