È stata pubblicata la versione 1.26 del pacchetto wayland-protocols, contenente un insieme di protocolli ed estensioni che ampliano le capacità del protocollo di base Wayland, fornendo le funzionalità necessarie per la costruzione di server compositi e ambienti utente.
Tutti i protocolli passano attraverso tre fasi: sviluppo, test e stabilizzazione. Al termine della fase di sviluppo (categoria «unstable»), il protocollo viene spostato nel ramo «staging» e ufficialmente incluso nel pacchetto wayland-protocols; dopo il completamento dei test, viene spostato nella categoria stabile. I protocolli nella categoria «staging» possono già essere utilizzati in server compositi e client dove è necessaria la funzionalità correlata. A differenza della categoria «unstable», in «staging» non sono permesse modifiche che violano la compatibilità, ma nel caso vengano rilevati problemi o carenze durante i test, non è esclusa la sostituzione con una nuova versione significativa del protocollo o con un altro supplemento Wayland.
Nella nuova versione:
- Il protocollo single-pixel-buffer è stato aggiunto alla categoria «staging», consentendo la creazione di buffer a pixel singolo che includono quattro valori RGBA a 32 bit. Grazie al protocollo viewporter, i server compositi possono scalare i buffer a pixel singolo per creare superfici colorate uniformi di dimensioni arbitrarie.
- Nel protocollo xdg_shell, che fornisce un'interfaccia per interagire con le superfici come se fossero finestre, consentendo di spostare, minimizzare, ripristinare, ridimensionare, ecc., è stato aggiunto il supporto per i compositi server, che implementano solo una parte delle operazioni di gestione delle finestre offerte da xdg_shell. Per trasmettere informazioni sulle possibilità disponibili nei compositi server è stato proposto l'evento wm_capabilities.
- Nel protocollo text-input, le formulazioni che portavano a interpretazioni ambigue sono state riscritte e sono state aggiunte chiarificazioni sul comportamento previsto.
- È prescritta l'uso della terminologia definita nella RFC 2119.
Attualmente, il pacchetto wayland-protocols include i seguenti protocolli stabili, che garantiscono la compatibilità retroattiva:
- «viewporter» — consente al client di effettuare operazioni di zoom e ritaglio dei bordi della superficie dal lato del server.
- «presentation-time» — permette la visualizzazione dei video.
- «xdg-shell» — interfaccia per la creazione e interazione con le superfici come finestre, consentendo di spostarle sullo schermo, minimizzarle, ingrandirle, ridimensionarle, ecc.
Protocolli in fase di testing nel ramo «staging»:
- drm-lease — fornisce le risorse necessarie per formare immagini stereoscopiche con buffer diversi per l'occhio sinistro e destro durante la visualizzazione su caschi di realtà virtuale.
- «ext-session-lock» — definisce i mezzi per il blocco della sessione, ad esempio, durante il funzionamento del salvaschermo o la visualizzazione di una finestra di autenticazione.
- «single-pixel-buffer» — consente la creazione di buffer a singolo pixel che includono quattro valori RGBA a 32 bit.
- «xdg-activation» — consente di trasferire il focus tra diverse superfici di primo livello (ad esempio, tramite xdg-activation un'app può spostare il focus su un'altra).
Protocolli sviluppati nella branch «unstable»:
- «fullscreen-shell» — gestione del funzionamento in modalità schermo intero.
- «input-method» — gestione dei metodi di input.
- «idle-inhibit» — blocco dell'attivazione del salvaschermo.
- «input-timestamps» — marcature temporali per eventi di input.
- «keyboard-shortcuts-inhibit» — gestione della fissazione delle combinazioni di tasti e delle scorciatoie.
- «linux-dmabuf» consente la condivisione di più schede grafiche tramite la tecnologia DMABuff.
- «linux-explicit-synchronization» — meccanismo di sincronizzazione dei buffer specifico per Linux legato alla superficie.
- «pointer-gestures» — gestione dai touchscreen.
- «pointer constraints» — restrizioni sui puntatori (blocco).
- «primary-selection» — analogamente a X11 gestisce il funzionamento del buffer di appunti primari, il cui inserimento di solito avviene tramite il pulsante centrale del mouse.
- «relative pointer events» — eventi di puntatori relativi.
- «tablet» — supporto per l'input da tablet.
- «text-input» — organizzazione dell'input di testo.
- «xdg-foreign» — interfaccia per interagire con le superfici del cliente «vicino».
- «xdg-decoration» — rendering delle decorazioni delle finestre lato server.
- «xdg-output» — informazioni aggiuntive sull'uscita video (utilizzato per il ridimensionamento frazionale).
- Tutti i protocolli passano attraverso fasi di sviluppo, test e stabilizzazione. Al termine della fase di sviluppo (categoria «unstable»), il protocollo viene inserito nel ramo «staging» e ufficialmente incluso nel set di wayland-protocols; dopo il completamento dei test, viene spostato nella categoria stabile. I protocolli della categoria «staging» possono già essere utilizzati nei server compositi e nei client, dove è richiesta la funzionalità correlata. A differenza della categoria «unstable», nella «staging» non è consentita l'introduzione di modifiche che violano la compatibilità, ma in caso di problemi e difetti riscontrati durante i test, non è esclusa la sostituzione con una nuova versione significativa del protocollo o un'altra estensione Wayland.
Fonte: opennet.ru
