Mir 2.26.0

L'azienda Canonical ha presentato il rilascio di Mir 2.26.0 — la nuova versione del compositore e del set di librerie per la creazione di shell e ambienti grafici basati su Wayland.

Wayland e nuovi protocolli

  • Aggiunta l'implementazione MVP del protocollo ext-input-triggers (V1).
  • Realizzato un abbozzo del protocollo ext-input-triggers per la gestione dei trigger di input in Wayland. Questa funzionalità è considerata privilegiata e non è inclusa per impostazione predefinita.
  • Aggiornato il file di specifiche ext-input-trigger-action-v1.xml: sono state aggiunte chiarificazioni sulla validità e disponibilità dei token.
  • Aggiunto implementazione parziale di ext_image_copy_capture_v1 per le sessioni del cursore.
  • Implementato trasmissione dell'immagine del cursore tramite ext_image_copy_capture_v1.

Rust e sviluppo dell'architettura

  • Iniziata l'implementazione del frontend di Wayland in Rust.
  • Proseguita la lavorazione sulla piattaforma di input basata su Rust. Non è ancora il percorso principale per la gestione degli input, ma rappresenta già un passo pratico verso l'integrazione graduale di Rust nel progetto.

Sottosistema di input: evdev-rs

  • Implementato il supporto per gli eventi tattili (touch events).
  • Pulito il codice del modulo device.
  • Corretta la gestione degli eventi dei dispositivi puntatori: lo stato dei pulsanti è stato spostato nella memoria a livello di singoli dispositivi.
  • La logica di gestione degli eventi è stata ripensata per migliorare la chiarezza e la manutenibilità del codice.

Cursori, finestre, API e infrastruttura interna

  • Per CursorObservers è stata aggiunta la possibilità di monitorare le modifiche dell'immagine del cursore.
  • Componente CursorObserverMultiplexer ora invia lo stato iniziale ai nuovi osservatori registrati.
  • È stata eseguita una refactoring MinimalWindowManager.
  • È stata aggiunta la possibilità di per impostare il canale alpha delle finestre e ottenerlo tramite WindowInfo.
  • Sono stati aggiunti alla libreria libmiral clauses requires, che migliora la rigorosità delle restrizioni a livello di codice C++ generico.
  • È stata completata la migrazione degli API di logging e dei valori predefiniti in mircore.
  • La chiamata a strerror() è stata sostituita con strerror_r() thread-safe.

Correzioni di bug

  • È stato corretto un errore in cui BasicXCBConnection::destroy_window chiamava xcb_map_window invece di xcb_destroy_window.
  • È stato risolto un problema per cui le risposte XCB non venivano sempre liberate.
  • È stato corretto l'errore: la riproduzione video a schermo intero in Google Chrome potrebbe non funzionare se la finestra non era già in modalità schermo intero.
  • Per X11 è stata aggiunta una corretta impostazione di _NET_CLIENT_LIST_STACKING.
  • È stata corretta l'implementazione non sicura di gestione dei segnali fatali, che nella release è stata definita "wildly unsafe".
  • È stato corretto un errore in cui la verifica di DRM_CLIENT_CAP_ATOMIC eseguito tramite una chiamata ioctl errata.
  • Pulizia e miglioramento della logica eseguiti mgk::find_crtc_with_primary_plane.
  • Comportamento di occlusione corretto: se una superficie ha un'area opaca, ma il suo alpha non è uguale a 1.0, non dovrebbe più essere utilizzata come completamente sovrapposta.

Altro

  • Segnalato un aumento del numero di nuovi partecipanti al progetto: il rilascio di Mir 2.26.0 include il contributo di diversi neofiti, che gli sviluppatori interpretano come un segno di crescita della comunità attorno a Mir.

Fonte: linux.org.ru

Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS 🔥 Acquista un hosting affidabile per siti con protezione DDoS, server VPS VDS | ProHoster