Wayland 1.22 已經發布,這些是它的新聞

韋蘭

Wayland 是一個圖形服務器協議和庫,它為窗口組合管理器提供了一種直接與應用程序和硬件通信的方法。

經過九個月的開發, 發射 協議穩定版本的新版本、進程間通信機制和庫 韋蘭 1.22。

1.22 分支向後兼容 API 和 ABI 版本 1.x 主要包含錯誤修復和次要協議更新。 Weston Composite Server 提供在桌面環境和嵌入式解決方案中使用 Wayland 的代碼和實際示例,正在作為單獨開發週期的一部分進行開發。

對於那些不了解 Wayland 的人,您應該知道 這是一個複合服務器和應用程序交互的協議 誰和他一起工作。 客戶端在單獨的緩衝區中自己渲染窗口,將有關更新的信息傳遞給複合服務器,複合服務器結合各個應用程序緩衝區的內容形成最終結果,同時考慮可能的細微差別,例如窗口重疊和透明度.

換句話說, 複合服務器不提供 API 來渲染元素 個人, 但只在已經形成的窗口上運行, 這允許您在使用 GTK 和 Qt 等高級庫時擺脫雙重緩衝,它們接管了對窗口內容進行排序的工作。

Wayland 解決了許多 X11 安全問題 因為,與後者不同,它隔離了每個窗口的輸入和輸出,不允許客戶端訪問其他客戶端窗口的內容,也不允許攔截與其他窗口關聯的輸入事件。

Wayland 1.22主要新聞

在展示的這個新版本的 Wayland 1.22 中,突出的是 支持 wl_surface::preferred_buffer_scale 和 wl_surface::preferred_buffer_transform 事件 到 wl_surface API,複合服務器通過該 API 傳輸有關表面比例級別和變換參數變化的信息。

另一個引人注目的變化是 添加了 wl_pointer::axis 事件 到 wl_pointer API 到 指示指針的物理地址 確定小部件中正確的滾動方向。

除此之外,Wayland-server 還添加了獲取全局名稱的方法並實現了 wl_client_add_destroy_late_listener 函數。

在部分 Wayland 對應用程序、桌面環境和發行版的更改,突出顯示以下內容:

  • Wine 最初支持在沒有 XWayland 和 X11 組件的基於 Wayland 協議的環境中使用。 現階段已添加winewayland.drv驅動和unixlib組件,為構建系統處理Wayland協議定義文件做準備。 在下一個版本中,他們計劃包含更改以在 Wayland 環境中啟用輸出。
  • 在 KDE Plasma 5.26 和 5.27 版本中繼續改進對 Wayland 的支持。 實現了使用鼠標中鍵禁用從剪貼板粘貼的功能。 改進了使用 XWayland 啟動的應用程序的窗口縮放質量。
  • 提供屏幕縮放級別的自動選擇。
  • 已經為 Xfce 準備了 xfce4-panel 和 xfdesktop 桌面的實驗版本,為在基於 Wayland 協議的環境中工作提供初步支持。
  • Tails 發行版的用戶環境已從 X 服務器轉移到使用 Wayland 協議。
  • Blender 3 3.4D 建模系統實現了對 Wayland 協議的支持,允許您直接在基於 Wayland 的環境中運行 Blender,而無需使用 XWayland 層。
  • 帶有 Wayland 的 Sway 自定義環境版本 1.8 已經發布。
  • 使用 Qt 和 Wayland 的自定義 PaperDE 0.2 環境可用。
  • Firefox 通過修復內容平滑滾動、單擊滾動條時觸發單擊事件以及在基於 Wayland 的環境中滾出內容等問題,改進了 Wayland 環境中的屏幕共享。
  • Valve 繼續開發 Gamescope Composite Server(以前稱為 steamcompmgr),它使用 Wayland 協議並用於 SteamOS 3 操作系統。
  • 開發 lxqt-sway,Wayland 支持的 LXQt 用戶空間端口。 此外,另一個 LWQt 項目正在開發基於 Wayland 的自定義 LXQt 包裝器。繼續將 MATE 桌面移植到 Wayland。
  • System76 正在使用 Wayland 開發新版本的 COSMIC 用戶環境。
  • Wayland 在移動平台 Plasma Mobile、Sailfish、webOS Open Source Edition、Tizen 和 AsteroidOS 上默認啟用。
    基於Wayland,正在開發Ubuntu Framework和任性的shell。

最後, 對於那些有興趣能夠嘗試這個新版本的人 您可以從以下位置下載構建的源代碼 以下鏈接。