Waylandはオープンソースのソフトウェア製品であり、Xウィンドウシステムのドロップイン代替品として使用されるように設計されています。これは現在、すべてのLinuxベースのオペレーティングシステムの99.9%で使用されています。 p>
このプロジェクトは、Waylandと呼ばれるメインディスプレイサーバーと、Westonと呼ばれるコンポーザーで構成されています。 Wayland自体は実際にはX11サーバーではありませんが、Xクライアントとして動作するWestonのようなクライアントと話すために、作曲者のプロトコルとして設計されています。
Waylandは、KMS(カーネルモード設定)とevdev入力デバイス、Waylandクライアント、またはX Window System向けの従来のアプリケーションの上にスタンドアロンのディスプレイサーバーとして実行できます。さらに、WestonはKMSまたはX11クライアントとして動作し、モバイルデバイスまたは組み込みデバイスに適しています。
画期的な次世代ディスプレイサーバーの他の可能なクライアントは、別のディスプレイサーバー、X11サーバー(フルスクリーンまたはルートレス)、またはその他の標準アプリケーションになります。 WaylandのCライブラリ実装も利用可能です。
Waylandはディスプレイサーバーが正常に動作するために必要なすべてのコンポーネントを提供していますが、Westonコンポーザーには様々なデモクライアントが付属しています。これらは複雑なクライアントを構築するための例として開発者が使用できます。
よく知られ、広く使われているGNOMEやKDEプラズマのデスクトップ環境は、おそらく次世代のWaylandディスプレイサーバーに移植される最初のものです。しかし、すべてのLinuxアプリケーション開発者がアプリケーションをWaylandに移行(読み込み:ポート)するには、おそらく数年かかるでしょう。
Linuxディストリビューションとアプリケーション開発者は、プロジェクトのホームページ(上を参照)のWaylandに自分のアプリケーションとオペレーティングシステムを移植する方法に関する詳細なドキュメントを見つけることができます。エンドユーザーは、RebeccaBlackOS Linuxベースのオペレーティングシステムを使用してWaylandを今日テストすることができます。
このリリースの新機能:
コアプロトコルのドキュメントは、明確さと一貫性を高めるために数多くの細分化を受けています。これに伴い、プロトコル文書の多くの空白部分が解消されています。
新しいwl_display_add_protocolロガーAPIは、リクエストをデバッグするための新しいインタラクティブな方法を提供します。これに加えて、クライアントとそのリソースを調べるための新しいAPIがあります。これはWAYLAND_DEBUG = 1の使用に似ていますが、UIビューなどのログデータの実行時レビューを可能にするのでより強力です。
プロトコルXMLスキャナがプロトコルヘッダーでバージョン識別をどのように処理するかが改善されています。これにより、コンポーザーとクライアントが異なるバージョンのプロトコルをサポートしている場合の検出とフォールバックの処理が向上します。
これらのユーザーが目にする変更に加えて、Wayland 1.12ではさまざまなコードのリファクタリングと改良が行われています。
ウェストンの内部コードは新しいソフトウェアライブラリlibwestonに再構成されました。これは、Westonの内部機能をより簡単に利用したい他のコンポーザーの努力による使用を意図しています。 Weston自身のコンポーザーがこのライブラリのユーザーになりました。
libwestonとlibweston-desktopの両方は、不安定なライブラリとして扱われるべきです(つまり、APIは変更される可能性があります)。 ABIプロビジョニングでは、ブレークのコンパイル時検出を有効にするためのバージョニングスキームが採用されています。つまり、実際にソフトウェアを使用しようとするのではなく、パッケージシステムのインストール時に非互換性を検出することができます。このシステムは、リリースされたWestonコンポーネントだけでなく、ライブラリの開発スナップショットを使用する際に矛盾を発見するのに役立ち、開発者が矛盾による問題も回避できるように設計されています。
xdg_shellプロトコルの新しいバージョン6のサポートは、Westonコンポジタで実装されており、すべてのクライアントがそれに移植されています。含まれている変更の詳細については、wayland-protocols 1.7リリースノートを参照してください。
Wp_pointer_constraintsプロトコルを使用して、クライアントがウィンドウ領域を定義してポインタを閉じ込めるようにするために、ポインタのロックと閉じ込めAPIがWestonに実装されています。これらの領域は不規則である可能性があります。クライアントは、例えば、H型領域への閉じ込めを示すために含まれる。 wl_relative_pointerを使用した相対ポインタプロトコルも導入されています。これにより、ポインタの絶対位置がモニタの端などにクリップされても、クライアントはポインタ移動のデルタを引き続き受信できます。
Raspberry Piバックエンド(rpi-backend)とレンダラーが削除されました。このコードは独自のドライバスタックに依存しており、ウェストン内では維持できないことが証明されています。
ビルドの改善、バグフィックス、コードリファクタリング、破壊プロセスの洗練など、いくつかの機能が含まれています。
バージョンの新機能:
コアプロトコルのドキュメントは、その明確さと一貫性を向上させるために数多くの細分化を受けています。これに伴い、プロトコル文書の多くの空白部分が解消されています。新しいwl_display_add_protocolロガーAPIは、リクエストをデバッグするための新しいインタラクティブな方法を提供します。これに加えて、クライアントとそのリソースを調べるための新しいAPIがあります。これはWAYLAND_DEBUG = 1の使用に似ていますが、UIビューなどのログデータの実行時レビューを可能にするのでより強力です。
プロトコルXMLスキャナがプロトコルヘッダーでバージョン識別をどのように処理するかが改善されています。これにより、コンポーザーとクライアントが異なるバージョンのプロトコルをサポートしている場合の検出とフォールバックの処理が向上します。
これらのユーザーが目にする変更に加えて、Wayland 1.12ではさまざまなコードのリファクタリングと改良が行われています。
ウェストンの内部コードは新しいソフトウェアライブラリlibwestonに再構成されました。これは、Westonの内部機能をより簡単に利用したい他のコンポーザーの努力による使用を意図しています。ウェストンの作曲家は現在、この図書館のユーザーです。同様に、libweston-desktopという別の新しいライブラリは、グラフィック・インタフェースのデスクトップ・メタファー・スタイルを実装するコンポーザーとの関連性の追加レベルの機能を提供します。このライブラリAPIはxdg_shellの機能を中心に設計されており、ポップアップの処理、ウィンドウの状態、Xwaylandとのインタフェースを提供します。
libwestonとlibweston-desktopの両方は、不安定なライブラリとして扱われるべきです(つまり、APIは変更される可能性があります)。 ABIプロビジョニングでは、ブレークのコンパイル時検出を有効にするためのバージョニングスキームが採用されています。つまり、実際にソフトウェアを使用しようとするのではなく、パッケージシステムのインストール時に非互換性を検出することができます。このシステムは、リリースされたWestonコンポーネントだけでなく、ライブラリの開発スナップショットを使用する際に矛盾を発見するのに役立ち、開発者が矛盾による問題も回避できるように設計されています。
xdg_shellプロトコルの新しいバージョン6のサポートは、Westonコンポジタで実装されており、すべてのクライアントがそれに移植されています。含まれている変更の詳細については、wayland-protocols 1.7リリースノートを参照してください。
Wp_pointer_constraintsプロトコルを使用して、クライアントがウィンドウ領域を定義してポインタを閉じ込めるようにするために、ポインタのロックと閉じ込めAPIがWestonに実装されています。これらの領域は不規則である可能性があります。クライアントは、例えば、H型領域への閉じ込めを示すために含まれる。 wl_relative_pointerを使用した相対ポインタプロトコルも導入されています。これにより、ポインタの絶対位置がモニタの端などにクリップされても、クライアントはポインタ移動のデルタを引き続き受信できます。
Raspberry Piバックエンド(rpi-backend)とレンダラーが削除されました。このコードは独自のドライバスタックに依存しており、ウェストン内では維持できないことが証明されています。
ビルドの改善、バグフィックス、コードリファクタリング、破壊プロセスの洗練など、いくつかの機能が含まれています。
バージョン1.9.0の新機能:
ブライス・ハリントン(20):configure.ac:1.8.90にバンプバージョン
コピー:MIT Xライセンスではなく、MIT Expatライセンスへの更新
貢献:新しいコードファイルにMIT Expatの使用を指定する
テスト:MIT X11ライセンスからMIT Expatライセンスまでの定型文を更新
socket-test:複数行コメントのスタイルを修正する
テストランナー:.cのものと同じ.hの著作権の定型文を追加する
src:MIT X11ライセンスからMIT Expatライセンスまでの定型文を更新する
wayland-server:複数行コメントのスタイルを修正
プロトコル:MIT X11ライセンスからMIT Expatライセンスまでの定型文を更新
カーソル:MIT X11ライセンスからMIT Expatライセンスへのボイラープレートの更新
cursor-data.h:SuSEのライセンスコードをX11からExpatに変更する
xcursor:keithpライセンスコードをX11からExpatライセンスに変更する
publican:MIT "X11"からMIT "Expat"スタイルにドキュメントライセンスを更新する
カーソル:MIT "X11"からMIT "Expat"に印刷されたライセンスを更新します。
テスト:assert()内で変数をインクリメントしない
gitignore:いくつかのdist生成ファイルを無視する
configure.ac:アルファ版のバージョン1.8.91にバンプする
configure.ac:ベータ版のバージョン1.8.92にバンプするconfigure.ac:RC1リリースのバージョン1.8.93にバンプする
configure.ac:公式リリースのバージョン1.9.0にバンプする
デレク・フォアマン(9):
docs:doc / doxygen_sqlite3.dbを削除して無視する
build:AM_CFLAGSとAM_CPPFLAGSをMakefile.amの先頭に移動する
ビルド:FFI_CFLAGSをAM_CFLAGSに入れない
ビルド:Waylandライブラリの構築を無効にする
build:ライブラリをビルドしていないときにlibwayland_utilのサブセットをビルドする
ビルド:ライブラリをビルドしない限り、libffiに依存しないでください
ビルド:どこでもGCC_CFLAGSの代わりにAM_CFLAGSを使用する
cosmetic:event-loop.cの無意味な空白の変更
ビルド:libwayland-privateをビルドする
ディマ・リャザノフ(1):
クライアント:WAYLAND_DISPLAYを設定する必要があります
Elvis Lee(1):
wayland-client:queue_releaseがproxy_destroyを呼び出さないように修正しました。
マレック・チャルパ(5):
fixed-benchmark:mainで未使用の引数を削除する
スキャナ:オブジェクトを作成するリファクタ
スキャナ:漏れを取り除く
スキャナ:zxallocを使用する
スキャナ:バージョンの健全性をチェックする
Pekka Paalanen(1):
Revert "クライアント:WAYLAND_DISPLAYを設定する必要があります"
Peter Hutterer(2):
doc:プロジェクト固有のdoxygen設定をdoxygenファイルの最後に移動する
doc:デフォルトのdoxygenタグを削除する
ロス・バートン(1):
build:常にwayland-scannerをビルドする
バージョン1.8.1の新機能:
ブライス・ハリントン(2):publish-doc:ウェブサイトにドキュメントを公開するためのスクリプトを追加する
configure.ac:公式リリースのバージョン1.8.0にバンプする
Giulio Camuffo(1):
スキャナ:外部型のextern宣言を発行しない
ビル・スピッツァク(Bill Spitzak)(1):
config:より単純なregexp構文を使用してドットバージョンを取得する
ブライス・ハリントン(11):
configure.ac:バンプバージョンを1.7.90に変更
クライアント:タイプミスを修正
スペル修正(化粧品)
テスト:コメントの入力ミス
configure.ac:アルファ版のバージョン1.7.91にバンプする
configure.ac:RC1リリースのバージョン1.7.92にバンプする
gitignore:最近追加されたヘッダーテストを無視する
gitignore:すべての*テストファイルを一括消去する
configure.ac:RC2リリースのバージョン1.7.93にバンプする
publish-doc:ウェブサイトにドキュメントを公開するためのスクリプトを追加する
configure.ac:公式リリースのバージョン1.8.0にバンプする
デレク・フォアマン(1):
カーソル:wl_cursor_frame_and_durationを追加する
Emmanuel Gil Peyrot(1):
カーソル:画像がリンクされている配列を解放する
Giulio Camuffo(5):
新しいヘッダーwayland-client-core.hとwayland-server-core.hを導入する
wayland-egl:コアヘッダーを追加する
scanner:新しい--include-core-onlyオプションを追加する
テスト:ヘッダテストを追加する
スキャナ:外部型のextern宣言を発行しない
硬化(1):
wayland.xml:タイプミスを修正しました
ジョナス・アダール(2):
プロトコル:地下配置スケジューリングの言い回しを変える
スキャナ:空の列挙に失敗する
Jussi Pakkanen(1):
wayland-scannerで直接ファイルの読み書きをサポートします。
マレック・チャルパ(2):
server:より正確なエラーメッセージを表示する
プロトコル:wl_pointer.releaseのより良い説明を追加する
Michael Vetter(1):
末尾の空白を削除する
Pekka Paalanen(1):
スキャナ:getoptロジックを単純化する
バージョン1.7.0 / 1.8.0 RC2の新機能:
ウェイランド:gitignore:最近追加されたヘッダーテストを無視する
gitignore:すべての*テストファイルを一括消去する
configure.ac:RC2リリースのバージョン1.7.93にバンプする
テスト:ヘッダテストを追加する
ウェストン:
解放する:いくつかのlibパスをリストしてローカルlibinputを設定する
解放する:untabify
configure:cairo-glとcairo-glesv2が危険であることを警告する
compositor-drm:マイナーsp。修正する
エディタ:書き込みが失敗したときに警告する
テスト:システムコールのエラー処理を追加する
テスト:クライアントヘルパールーチンを出力ファイル名と参照ファイル名に追加する
tests:xmallocヘルパー関数を追加する
テスト:サーフェスチェックを追加する
テスト:configをデフォルトに上書きするテストを有効にする--configをサポート
プロトコル:テストスクリーンショット機能を追加する
テスト:スクリーンショット記録機能をweston-testに追加する
テスト:weston-testでscreenshot出来事を処理する
テスト:westonテストのスクリーンショット機能の内部テストを追加する
テスト:write_surface_as_png()ヘルパーを追加
テスト:create_screenshot_surface()を追加
テスト:add load_surface_from_png()
テスト:追加check_surfaces_geometry()テスト:追加capture_screenshot_of_output()
テスト:パス/ファイル名ルーチンのコードスタイルを修正
テスト:PNGファイルのストライドが私たちの内部の仮定と一致することを確認する
テスト:空白のクリーンアップ
gitignore:生成されたヘッダテストファイルを無視する
テスト:冗長デバッグ出力を削除する
リリース:リリース名と番号のvarsを追加する
configure.ac:RC2リリースのバージョン1.7.93にバンプする
compositor-drm:末尾の空白を消去する
RDPコンポジター:証明書と鍵を強制する
gl-renderer:作成関数で受け入れ可能なフォーマットのリストを取得する
compositor-drm:ARGBフォールバックをglに渡すと、XRGB形式の関数が作成されます。
gl-renderer:エラーログを少し良くする
テスト:参照画像環境変数を設定する
tests / internal-screenshot:シェルサーフェスを期待しないようにテストを修正する
exposay:ポインタがない場合はクラッシュしない
desktop-shell:フェードアウト後アイドルハンドラ内のサーフェスを破壊する
internal-screenshot-test:distcheckをパスする
compositor-wayland:ウィンドウの閉じるイベントをもっとうまく処理する
compositor-wayland:コードクリーンアップ
xdg-shell:アプリケーションIDの意味を明確にして、例を示します
xdg-shell:ポップアップとサーフェスゲッターのドキュメントエラー条件
xdg-shell:pingイベントに関する責任を文書化する
xdg-shell:set_maximizedリクエストとunsetmaximizedリクエストを記録する
compositor-drm:ハードウェアカーソルを無効にする
デスクトップシェル:起動時にブラックアウトしないでください "none"
バージョン1.7.0の新機能:
Waylandプロトコルは「完了」と見なされるかもしれませんが、それは実行すべき作業がないことを意味するものではありません。このリリースでは、Waylandのドキュメントの大幅な改良、テストスイートのマイナーな改良、およびコード自体にバグが散在している点に焦点を当てました。Waylandの開発者向けドキュメントは、3つの部分から構成されています。第一に手作業で書かれた散文で、ダイアグラムとすべての高水準の説明が含まれています。次に、プロトコルの定義から機械的に生成され、リファレンスマニュアルのように機能するプロトコルのマニュアルです。三つ目は、機械的に生成されるがライブラリのソースコード自体から生成されるコードのドキュメントです。
私たちは、書かれた散文がpublicanによって生成されるのをxmltoに移しました。 xmltoは同じ機能を提供し、より広く利用できます。 Publicanの優位性はより良いスタイルシートでしたが、私たちはxmlto上で動かすためにこれらを移植し、その間にそれらを洗練しました。開発者用ドキュメントのアーキテクチャー図は、graphvizで機械的に生成されました。これは外観を少し改善し、今後の維持を容易にします。プロトコルのドキュメントについては、最近追加されたwl_surfaceロールの概念が定義され、いくつかの例が示されています。 wl_display_destroyとwl_display_add_socketが文書化され、スレッドのいくつかの側面が明らかになりました。廃止された関数が削除され、すべての検証エラーが修正され、再編成されました。
自動生成されたコードのドキュメントは、xsltファイルに対する多くの研磨作業とコードコメントに対するマークアップの改善のおかげで、よりきれいです。
プロトコルのドキュメントの内容は厳しくなっています。長い非難された関数、wl_mapのような秘密の機能を隠したり、変更したオブジェクトでより正確に関数を再分類したりしました。
テストおよびクライアントでの潜在的なメモリおよびイベントリークの数がクリーンアップされ、リークチェックがテストスイートインフラストラクチャによって実施されるようになりました。リークチェックもサンプルクライアントに追加されます。
テストスイートには、テスト完了のタイムアウトを設定する方法が追加されました。タイムアウトは、環境変数WAYLAND_TEST_NO_TIMEOUTSを設定することでオフにすることができます。一貫性のために、NO_ASSERT_LEAK_CHECKはWAYLAND_TEST_NO_LEAK_CHECKと呼ばれるようになりました。デバッガが接続されると、タイムアウトとリークチェックの両方が無効になります。
新しいC ++コンパイルテストがあります。 WaylandとWestonはCになっていますが、基本的なコンパイルの失敗を起こすことなく、WaylandをC ++で書かれたコンポーザーとリンクできるようにしたいと考えています。
テストやドキュメントとは別に、コードベース自体にいくつかの変更がありました。特に、クライアントリッスンキューは128に増加し、多数のクライアントが接続拒否エラーなしで同時に接続できるようにします。 sendmsg()の使用に関するFreeBSDのバグなど、いくつかのクロスプラットフォームの修正が修正されました。残りの修正により、さまざまな場所でのエラーチェックと処理が改善されます。
バージョン1.7.0 RC2の新機能:
ウェイランド:
configure.ac:pkg-configがexpatを見つけられない場合、古い検出コードにフォールバックする
doc:サーフェスの高水準の説明を入力してください
テスト:Yama LSMが有効になっているときにサニティテスト(*タイムアウト*)でFAILを修正
テストランナー:具体的なpidを待つ
ウェストン:
リリース:ドキュメントを調整して実際のワークフローに合わせる
スクリーンショット:不要なキャストを取り除く
desktop-shell:不要な型キャストを削除する
compositor-x11:x11ウィンドウをアイドルハンドラの近くに移動する
xwm:weston_wm_destroyのサーフェイスリスナーを削除する
X11コンポジターの "Back"、 "Forward"などの特殊なマウスボタンを修正しました。
xwm:xwaylandウィンドウの最大化をサポート
libinput:ボタンの最初と最後のプレスとリリースのみを転送する
libinput:キーの最初と最後のプレスとリリースのみを転送する
desktop-shell:xdg_surface上でget_xdg_surfaceが呼び出されると失敗します。
ivi-shell:SEGVは、マルチタッチが遷移するときに発生します
バージョン1.6.1の新機能:
doc:入力ミスを修正しました
役に立たないセミコロンを削除する
README:小さな化粧品の変更
doc:固定文法とタイプミス
scanner、client:strtol関数が使用されているときにエラーチェックを追加
scanner:XML解析エラー報告の改善
scanner:迷惑行改行を削除する
クライアント:read_eventsはエラーの後に-1を返します。
テスト:メモリリークを修正
接続:FreeBSDでのsendmsg()の修正
event-loop.c:dupfd()に正しいOS抽象化関数を使用する
wayland-server:クライアントからの読み込みが0の場合は中止
接続:リスナー関数がNULLの場合は中断します。
doc:wl_display_destroyおよびwl_display_add_socket関数のAPIドキュメントが追加されました。
バージョン1.7.0の新機能Alpha 1:
doc:いくつかのコード例をマークアップするdoc:主にvalue-of-overのapply-templatesを使用する
doc:doxygenタグをスペースに変換する
接続:wl_connection_destroyにfdを開いたままにする
doc:makeはコード変更時にdoxygen出力を再構築する
doc:スペースを保持する
doc:Doxygenによって生成されたリンクを保存する
doc:doxygenの簡単な説明がない場合、ダッシュを表示しない
doc:doxygen出力から不要なネストされたリストを削除しました。
doc:doxygenコメントのサンプルコードの周りにコードタグを追加しました
v4 doc:存在しない関数への固定参照
doc:入力ミスを修正しました
doc:テキストが添付されている件名を参照するときにrefを削除しました
doc:wl_listコードサンプルから余分な字下げを削除しました。
doc:削除された冗長依存関係
doc:waylandオブジェクトの重複した説明を削除する
doc:fix doxygen-> manコマンドライン
doc:libwayland-clientと-serverを別々のページに分割する
doc:パラレルmakeの修正
doc:新しいdoxygenページを簡単に追加できるようにする
fixup doc:新しいdoxygenページを簡単に追加できるようにする
doc:docbook入力の検証エラーを減らすdoc:リンク名から "interface"という単語を削除しました
doc:doxygen出力の各クラスはセクションです
doc:クラスに加えてドキュメント構造と共用体
doc:doxygenの仕事から項目リストを作る
不在のパラメータを記録しないでください。
configure.ac:alpha版のバージョンを1.6.91にバンプする
役に立たないセミコロンを削除してください。
README:小さな化粧品の変更
cosmetic:intからboolにいくつかの関数の戻り値を変換する
doc:固定文法とタイプミス
scanner、client:strtol関数が使用されているときにエラーチェックを追加
サーバー:リスニングキューを128に増加
doc:冗長なxslt出力要素を削除しました。
doc:定義されたmake変数を使ってdoxygenを呼び出します。
doc:doxygen 1.6.0+の設定チェックを追加します。
doc:一般的なmakefileのクリーンアップ。
doc:マイナーメイクファイルのクリーンアップ。
scanner:XML解析エラー報告の改善
scanner:迷惑行改行を削除する
テスト:テスト用に独自のXDG_RUNTIME_DIRを使用する
テスト:タイムアウトを追加する
テスト:test_usleepとtest_sleep関数を追加する
テスト:タイムアウトテストを追加する
テスト:display-testでtest_set_timeoutを使用する
queue-test:タイムアウトを戻すテスト: ' '文字を印刷しない
クライアント:read_eventsはエラーの後に-1を返します。
テスト:テスト用にenv varsの名前を変更する
テストランナー:各テストケースの後にセパレータ行を印刷する
テスト:端末に印刷するときに色を使用する
テスト:デバッガが接続されているかどうかを検出する
テスト:スプリットキューテストのテストケース
テスト:メモリリークを修正
クライアント:古いコメントを更新する
クライアント:スレッディングに関するドキュメントを更新する
gitignore:スキャナとプロトコルのパスを変更する
configure.ac:バンプバージョン1.6.90
プロトコル:wl_surfaceロールの概念を定義する
プロトコル:wl_pointer.set_cursorが役割を与えます
プロトコル:wl_data_device.start_dragが役割を与える可能性があります
プロトコル:wl_subcompositor.get_subsurfaceが役割を与えます
プロトコル:wl_shell.get_shell_surfaceは役割を与えます
プロトコル:役割の再割り当てのためのエラーコードを定義する
doc:xmltoにpublicanを置き換えてください
接続:FreeBSDでのsendmsg()の修正
event-loop.c:dupfd()に正しいOS抽象化関数を使用する
wayland-server:クライアントからの読み込みが0の場合は中止
キューテスト:別のアサーションを追加する
connection:リスナー関数がNULLの場合は中断します。
scanner.c:__attributeの代わりにWL_PRINTFを使用する__((format(printf)))
doc:wl_display_destroy関数とwl_display_add_socket関数のAPIドキュメントが追加されました。
プロトコル:wl_data_deviceインターフェースへのデストラクタの追加
バージョン1.6.0の新機能:
ウェイランド:エラー列挙をwl_surfaceに追加します。
wl_keyboardプロトコルにキーボードリピート情報を追加します。
libwayland-clientの追加処理エラー:プロトコルエラーが発生した場合、プログラムはエラーに関する詳細情報を照会できます。これは主に、正しいエラーを確実にするためのテストに役立ちます。
libwayland-serverの新しいwl_display_add_socket_auto():フリーのソケット名を自動的に探します。
サーバーとクライアントの相互作用をより簡単にテストするためのフレームワークを含む、多くのテストを「make check」スイートに追加しました。
スレッド関連のバグ修正
wl_display_roundtrip_queue()を追加:カスタムキューのラウンドトリップをブロックします。
wl_displayグローバルの公開を停止します。グローバルへのバインディングがバグを引き起こし、それを適切に使用することはできませんでした。
ウェストン:
Xdg-shellプロトコルの変更。はい、私たちは1.5.0から再びそれを壊しました。
weston_layerマスキングメカニズムを追加してください。
DRM-backend:カーネルからカーソルサイズを取得する
コンポーザーからクライアントに送信されるキーボードリピートレートのサポート。
wl_display_add_socket_auto()を使用する:ウェストンの下でウェストンを実行するときにソケットを指定する必要はなく、現在は動作しています。
デフォルトではlibinputを使用します。非libinput入力バックエンドはまだ存在しますが、1.7では削除されます。
いくつかのデスクトップシェル構成ビット。
'make distcheck'はカスタム調整なしで実際に動作します(今はdistwayckのxwaylandテストを無効にする)。
weston-desktop-shellが早過ぎると、Westonを終了します。 1つのクラスの「ちょうど黒い画面」の問題に役立ちます。
DRMとfbdevバックエンドでnumlockをオンにするオプション。
もちろん、多くのバグ修正。
バージョン1.6.0 RC2の新機能:
タッチパッド:セミmtパッドでnfingersが変更されたときの動作履歴をリセットするlitest-alps-semi-mt:コンパイラの警告を修正しました。
ビルド:シンボルck_assert_ptr_neはcheck-0.9.10が必要
テスト:いくつかのudevテストとパステストには、1つのテストデバイスのみを使用します。
テスト:削除時にテストデバイスをコンテキストから削除する
テスト:イベントが複数回有効になっても失敗しない
evdev:ディスパッチインスタンスが独自の機能を設定できるようにする
evdev:ヘルパーを使用してボタンからキーを分離する
evdev:キーが押されなかった場合、キー/ボタンリリースイベントを無視する
evdev:デバイスごとのボタン/キーの押下数を記録する
evdev:デバイスを取り外すときに押したままのキー/ボタンを放す
タッチパッド:クリックパッドのボタン押下のためにタップFSMから抜け出す
configure.ac:libinput 0.6
テスト:litest_touch_関数を使用している場合のBTN_TOOL_ *の自動更新
ポインタイベントからのデルタが加速されることを文書化する
evdev:解像度を偽装した場合は幅/高さを返さない
テスト:セミmtアルプステストデバイスを追加する
タッチパッド:トップソフトウェアボタン領域を15%
ローカルのnoinstリンクに-staticの代わりに-no-installを使用する静的ライブラリを無効にする
evdev:libevdev_new_from_fdの失敗時にメモリリークが発生する
libinput_add_fd()が失敗した場合、fdを閉じないでください。
タッチパッド:意図的なスイッチケースの転倒をそのようにマークする
ARRAY_FOR_EACH()のスワップ条件
タッチパッド:初期化されていない使用に関するCoverity警告の無音
doxygenリファレンスの修正
テスト:特定のイベントを待つヘルパーを追加する
テスト:一般的なシングルタッチデバイスを追加する
udev:行列を手作業で書く代わりにevdev_device_calibrate()を使う
evdev:const evdev_device_calibrate
evdev:マルチタッチ値にもキャリブレーションを適用する
util:3x3行列ヘルパー関数を2つ追加する
evdev:正規化された変換行列に切り替える
udev:WL_CALIBRATIONを削除し、LIBINPUT_CALIBRATION_MATRIXに置き換えます。
テスト:タッチキャリブレーションのテストを追加する
校正を設定オプションに変更する
evdev:デフォルトマトリックスとしてLIBINPUT_CALIBRATION_MATRIXをロードする
テスト:litest_wait_for_event_of_type()の無限ループを修正する
テスト:チェックの冗長性のためにevironment変数を使用する
LIBINPUT_CALIBRATION_MATRIXを適切に文書化するサポートしている静的なudev設定オプションを文書化する
コメントが見つかりません