お知らせ

BlinkGTK の更新と、関連する取り組みのお知らせです。 Atom

v1.2.5-build2 を公開しました (頁の配色が GTK のテーマに合うように、起動を短く)

2026-10-27 · リリース

頁の配色 (light / dark)・フォームの部品・スクロールバーが GTK のテーマの明暗に合い、アプリの実行中にテーマを切り替えると頁も切り替わります。以前の動き (頁は常に light) には BLINKGTK_FOLLOW_GTK_THEME=0 で戻せます。あわせて起動を短くしました。

BlinkGTK for Windows v1.2.5-build1 を公開しました

2026-10-23 · リリース

BlinkGTK for Windows を Chromium 156.0.8078.47 に更新し、Linux 版 v1.2.5-build1 と同じ版になりました。ぶら下げと、1 行に収まる割注が Windows 版でも使えるようになり、blink_gtk_has_typesetting_feature() は "hanging-punctuation:allow-end" と "warichu:single-line" の両方で TRUE を返します。Linux 版 1.2.5 の API の変更 (load-failed のエラー番号が整数になる、is-loading が読み込みの終わりで False に戻るなど) も入りましたが、これらの Windows での動作はまだ確かめていません。組み込んだアプリは、新しい devel ZIP で再ビルドしてください。

v1.2.5-build1 を公開しました (Chromium 156、Python から使えるように)

2026-10-22 · リリース

レンダリングエンジンを Chromium 156 に更新しました。Python (PyGObject) から BlinkGTK を使えるようになり、起動用のコマンド blinkgtk-run を同梱しました。set_user_agent() が load_uri() で開いた頁にも反映されるなど、API の動きも修正しました。

BlinkGTK for Windows v1.2.4-build4 を公開しました

2026-10-18 · リリース

BlinkGTK for Windows に Vulkan 付きの GTK を同梱し、試験段階の GPU の経路を足しました。この経路は、環境変数 BLINKGTK_WIN_GPU_PATH=vulkan を指定したときだけ使います。既定は無効で、Intel Iris Xe の 1 機種でのみ確認しています。1.2.4-build2 では、ぶら下げが動作しないのに blink_gtk_has_typesetting_feature() が TRUE を返していました。この版で修正しました。Chromium は 155.0.8059.39 のままで、Linux 版に入ったぶら下げと割注のエンジン側の変更は含みません。

v1.2.4-build4 を公開しました (頁を移った後の異常終了と応答停止の修正)

2026-10-14 · リリース

頁を移った後に本文をクリックするとアプリが異常終了する問題と、支援技術を有効にして頁を移るとアプリが応答しなくなる問題を修正しました。同梱の INSTALL・README の DEB のファイル名の誤りも修正しました。

v1.2.4-build3 を公開しました (割注・撮影の修正)

2026-10-14 · リリース

1 行に収まる割注を組めるようになりました (CSS の -blinkgtk-warichu: auto、書き方は試験段階)。software の非同期の撮影で静止した頁が 2 秒で時間切れになるのにファイルが残る問題、EGL の撮影で色が入れ替わる問題、白い背景の頁で描画経路の切替が必ず元に戻る問題を解消しました。非同期の撮影は、software では、ほとんどの場合、要求した時点の画面を返すようになります。

BlinkGTK for Windows v1.2.4-build2 を公開しました

2026-10-11 · リリース

BlinkGTK for Windows を Chromium 155.0.8059.39 に更新しました (Linux 版 v1.2.4-build2 と同じ版の本体のソース)。新しい版の案内 (BLINKGTK_UPDATE_CHECK=1、既定はオフ) が入りました。Windows 版では --enable-logging を付けたときだけ見えます。DCHECK を無効にしてビルドし、portable ZIP は 376 MiB になりました。

v1.2.4-build2 を公開しました (新しい版の案内の修正)

2026-10-11 · リリース

新しい版をログで知らせる機能 (BLINKGTK_UPDATE_CHECK=1、既定はオフ) が、配布のリポジトリの版の一覧が大きく、必ず失敗していました。受け取りの上限を上げて修正しました。この機能を有効にしていない場合は、build1 と動作は変わりません。

v1.2.4-build1 を公開しました (Chromium 155、Fedora 44 のサポート終了)

2026-10-07 · リリース

エンジンを Chromium 155 に更新しました。ルビの後の行が上にずれる不具合の上流の修正が入り、縦書きの行末のぶら下げが既定で有効です。拡大率 1 の画面では、ソフトウェアの描画で撮影の要求と読み出しを省き、CPU の使用率が下がります。RPM は Fedora 45 以降向けだけになりました。Fedora 45 で dnf をお使いの方は、リリースノートの案内に従って blinkgtk-release を 1 回だけインストールしてください。Fedora 44 の方は v1.2.3 に留まります。

BlinkGTK for Windows v1.2.3-build4 を公開しました

2026-09-29 · リリース

BlinkGTK for Windows を Linux 版 v1.2.3-build4 と同じ版の本体のソースに更新しました。縦組みの版面の改変が Windows 版にも入り、フラグ CJKVerticalColumnFragmentation を有効にすると、横組の段組みの中の縦書きの本文が段に分かれます。blink_web_view_load_html() の base_uri などの修正も入りました。

v1.2.3-build4 を公開しました

2026-09-28 · リリース

software の描画で、画面へ渡すたびの画素のコピーを省きました。拡大率 2 でアニメーションが約 24% 多く回り、拡大率 1 で画面に届く枚数が約 9% 増えます。load_html の base_uri が文書に反映されない問題、支援技術のバスが応答しないと最初の描画が約 25 秒遅れる問題、許可の保存を UI スレッドで読む問題、ibus でビューを閉じるときの警告も修正しています。公開 API は変わりません。

BlinkGTK for Windows v1.2.3-build3 を公開しました

2026-09-28 · リリース

BlinkGTK for Windows を Chromium 154 に更新し、版数が Linux 版と同じ v1.2.3-build3 になりました。Linux 版の 1.2.2 と 1.2.3 で加わった公開 API も Windows 版の DLL から公開されるようになりましたが、新しく入った API の Windows での動作はまだ確かめていません。日本語の Windows で MSVC を使う場合は、コンパイルに /utf-8 を付けてください。

v1.2.3-build3 を公開しました

2026-09-26 · リリース

独自スキーム (ebook:// など) で配った 5 MB 以上の音声を <audio> で開くと、アプリのウィンドウごと応答しなくなる問題を直しました。長い朗読音声もそのまま再生・シークできます。公開 API は変わりません。

v1.2.3-build2 を公開しました

2026-09-25 · リリース

ページを PDF ファイルに書き出せるようになりました (blink_web_view_print_to_pdf_with_options)。ダウンロードの保存、リンク先と新しいウィンドウの開き方の判断、カメラとマイク、HTTP 認証への応答、許可の決定を覚える口、既定のフォントと最小文字サイズの指定も加わりました。swiftshader モードで画面に何も出なかった問題も直しています。1.2.3-build1 のお知らせで「既定の文字コードはまだ反映されない」としましたが、1.2.3-build1 の時点でも反映されていました (ASCII だけのページで測っていたため)。実行時に CUPS のライブラリ (libcups.so.2) が要ります。

BlinkGTK for Windows v1.2.1-build3 を公開しました

2026-09-24 · リリース

BlinkGTK を Windows で使える配布物を、はじめて公開しました。BlinkGTK-Windows が作成しています。展開して bin\blinkgtk_browser.exe を実行すれば動く ZIP と、アプリに組み込む人向けの devel ZIP があります。Windows 10 (64bit) 以降の x64 が対象で、確認したのは Windows 11 Pro です。Chromium は 152 で、Linux 版 (v1.2.3、Chromium 154) とは版数が違います。描画経路は software のみで、コード署名はまだありません。

v1.2.3-build1 を公開しました

2026-09-24 · リリース

レンダリングエンジンを Chromium 154.0.8037.57 に更新しました。blink_web_view_set_javascript_enabled(FALSE) などの設定が、ページに反映されるようになりました。1.2.2 までは値を覚えるだけで、FALSE にしてもページのスクリプトは実行されていました。画像と localStorage の無効化、既定の文字サイズも効きます。既定の文字コードはまだ効きません。入力メソッドは GTK の選択に従うようになりました。1.2.2 と同じ動作にするには BLINKGTK_IM_MODULE=ibus を指定します。独自スキームのハンドラが out_mime に charset を付けても HTML として表示され、BLINKGTK_EXTRA_SCHEMES のスキームで fetch() が使えます。パッケージ版では、リソースの場所を指定しなくても起動します。外部利用者からのご報告を受けて直したものです。今回から Fedora 45 向けの RPM (.fc45) も用意しました。中身は Fedora 44 向けと同じバイナリで、Fedora 45 の機械で詰め直したものです。dnf リポジトリは Fedora の版ごとに分けました。これまでの設定のままでも Fedora 44 向けを受け取れます。Fedora 45 向けを dnf で受け取るには、blinkgtk.repo を取り直してください (sudo curl -o /etc/yum.repos.d/blinkgtk.repo https://blinkgtk.org/repo/fedora/blinkgtk.repo)。

v1.2.4 以降は Fedora 45 以上が対象になります

2026-09-20 · お知らせ

v1.2.4 (Chromium 155、上流の stable 予定は 2026-10-06) から、配布するパッケージの対象を Fedora 45 以上にします。Fedora 44 向けの提供は v1.2.3 (Chromium 154) までです。理由はビルド環境を Fedora 45 へ移すためです。BlinkGTK のパッケージは、ビルドした機械の C ライブラリ (glibc) を直接参照します。glibc の互換は一方通行で、新しい版で作ったものは古い版では読み込めません。Fedora 45 の glibc は 2.44、Fedora 44 は 2.43 なので、Fedora 45 でビルドしたパッケージは Fedora 44 に入りません。Fedora 44 をお使いの場合、v1.2.3 は引き続き取得できます。取り下げません。Fedora 45 へ上げると、v1.2.4 以降を dnf でそのまま受け取れます。リポジトリの設定を変える必要はありません。v1.2.3 までのパッケージは Fedora 45 でも動きます。Fedora 45 (glibc 2.44 / GTK4 4.23.4) に実際に入れて読み込めることを確かめています。Fedora 44 自体の提供終了は 2027-06-02 で、当プロジェクトの対応はそれより早く終わります。

v1.2.2-build6 を公開しました

2026-09-19 · リリース

view ごとに profile と cache を分けられるようになりました。これまでは 1 プロセスの全 WebView が profile と cache を共有していたため、同じ URL を複数の view で開くと 2 つ目以降はキャッシュに当たり、実際の読み込みは 1 回しか起きませんでした。blink_web_view_new_with_profile("tab1") のように名前を渡すと、その view は HTTP キャッシュ・cookie・localStorage・IndexedDB を専有します。名前に使えるのは英数字と - _ のみで、同じ名前なら同じ profile です。名前付き profile はキャッシュを profiles/名前/Cache に置くため終了後も残ります。既定の blink_web_view_new() の動きは変わりません。あわせて permission-request シグナルの種別名が 13 種から 40 種になり、これまで unknown で届いていた 27 種 (screen-wake-lock、local-fonts、persistent-storage、automatic-fullscreen、pointer-lock など) を見分けられます。

v1.2.2-build5 を公開しました

2026-09-14 · リリース

描画経路を API から選べるようになりました。blink_gtk_set_gpu_mode() を blink_gtk_init() の前に呼ぶと、その経路で起動します。これまで blink_web_view_new_with_gpu_mode() で EGL を指定しても、経路は切り替わりませんでした。描画経路はエンジンの初期化中に確定し、GPU プロセスへ渡す起動フラグもそこで決まるため、WebView を作る時点ではもう変えられません。起動ログはどちらの場合も EGL と表示するので、指定が効いているかを外から確かめる手段もありませんでした。環境変数 BLINKGTK_GPU_MODE を併用していない場合、EGL を指定したつもりで CPU ピクセル経路で動いていました。ゼロコピーの経路とは性能特性が異なります。blink_web_view_get_gpu_mode() は初期化の後、実際に動いている経路を返します。起動完了のログにも描画経路が出ます。外部利用者からのご報告です。レンダリングエンジンは Chromium 153.0.8010.36 のままで、組版の結果は build4 と変わりません。

v1.2.2-build4 を公開しました

2026-09-13 · リリース

Virtio GPU を使う環境 (仮想機械など) で、GPU 描画 (BLINKGTK_GPU_MODE=egl) の画面が最初から最後まで白いままになる問題を解消しました。エンジンは「この画面は空だ」と判定するために描かれた画像を CPU 側から読んでいますが、この種の GPU では描画が機械の外側で行われるため、読み取り側には何も見えません。中身はあるのに空と判定し、表示を見送っていました。動きのないページほど当たりやすく、開いたまま白が続きます。全部がゼロに見える状態は「空」ではなく「こちらからは確かめられない」として扱い、表示を止めるのは本当に真っ白なときだけにしました。あわせて、スクリーンリーダなどの支援技術を後から起動しても読み上げが効くようになりました。これまではアプリを起動した時点で支援技術が動いている必要があり、読み上げを使い始めたときには手遅れでした。レンダリングエンジンは Chromium 153.0.8010.36 のままです。

v1.2.2-build3 を公開しました

2026-09-11 · リリース

ページの読み込みが終わる前に窓を閉じると落ちる問題を解消しました。本を開いた直後に閉じる、といった普通の操作で当たっていました。読み終わってから閉じる場合は起きないため、気付きにくい形でした。原因は当方の作りで、ページの入れ物を壊す途中で配られる通知の受け口が、既に手放したものを見ていました。受ける前に受け口を外すようにしています。利用者側の回避 (閉じる前に読み込みの完了を待つ) は、もう要りません。外部利用者からのご報告です。あわせて、画面に出たかどうかを compositor に問い合わせる診断を追加しました。これまでは buffer を送ったところまでしか分からず、中身が空だったのか、中身はあったが画面に出なかったのかを区別できませんでした。BLINKGTK_GX_LOG=1 を指定したときだけ記録し、既定では描画も表示判定も変わりません。レンダリングエンジンは Chromium 153.0.8010.36 のままで、組版の結果は build2 と変わりません。

v1.2.2-build1 を公開しました

2026-09-10 · リリース

縦組みで閉じ括弧が行末に来ると行が途中で切れる現象が直りました。35 文字入る行に 17 文字しか入らず、text-align: justify が残りを引き伸ばすため字間が倍に開いていました。13 通りの設定のうち 8 通りで起きていたものがすべて解消します。横組みでは起きません。当方から上流へ報告し (crbug 542686223) Chromium 側で修正されたものです。レンダリングエンジンは Chromium 153.0.8010.36 になりました。同梱のデモが --version に応じるようになり、不具合を報告するときに版を一意に示せます。測ったのは 1 行に入る文字数で、段組みの列末に残る余地は測っていません。

v1.2.2-build2 を公開しました

2026-09-10 · リリース

同梱していたリリースノートの誤りを訂正しました。build1 の記述で「前版の回避を取り除いた」としていましたが、取り除いておらず、この版でも入ったままです。記述を実物に合わせました。あわせて、API リファレンスの見出しが 1 版前の「対象バージョン BlinkGTK 1.2.1 (Chromium 152.0.7977.64)」のままだったのを、実際の版数に直しました。プログラムの中身は build1 と同じで、組版の結果は変わりません (同梱書類の版数表記と、版数を名乗る文字列が 1.2.2-build2 になります)。誤りは、BlinkGTK を組み込んでいる EPUB リーダーの開発チームからの問い合わせで分かりました。

v1.2.1-build3 を公開しました

2026-09-08 · リリース

不具合を報告するときに、どの版で起きたかが実行時に分かるようになりました。これまで実行時に版を問い合わせると 1.2.1 としか返らず、build 番号が取れませんでした。同じ版でも build が違えば挙動が違うことがあり、外部の利用者はパッケージのファイル名から版を読むしかありませんでした。blink_gtk_get_version_full() が 1.2.1-build3 を返します。既存の blink_gtk_get_version() の戻り値は変わりません。あわせて、画面が出ないときの配送ログが実際に呼んだ操作と Wayland の buffer 識別子を記すようになり、測定を打ち切る枚数も伸ばせます。描画経路のライブ切替に EGL 経路が加わりました(BLINKGTK_GPU_MODE=egl で起動した場合のみ)。

v1.2.1-build2 を公開しました

2026-08-30 · リリース

GPU が使用できない環境でも、フォールバックによりソフトウェア描画で表示されるようになりました。ドライバが無い、仮想環境で GPU が見えないといった場合に、描画データが 5 秒間届かなければソフトウェア描画へ切り替え、その理由を標準エラー出力に記します。GPU が使える環境では切り替わりません。あわせて、画面を撮影した画像で赤と青が入れ替わることがある問題を修正しました。

v1.2.1-build1 を公開しました

2026-08-27 · リリース

レンダリングエンジンを Chromium 152 に更新しました。縦組みで、閉じ括弧が行末に来ると行が途中までしか埋まらない現象 (34 文字入る行に 17 文字) が直り、段組みでも列が最後の 1 行を次の列へ送らなくなります。direction: rtl と併用したときの行格子も保たれます。組版の結果が変わります。

v1.2.0-build9 を公開しました

2026-08-16 · リリース

描画経路を、アプリを再起動せずに切り替えられるようになりました (BlinkShift 公開 API)。切替はテスト環境の実測で数百ミリ秒、切替後の描画が確認できなければ自動で元の経路に戻ります。GtkApplication と正しく併用できる blink_gtk_application_run() と、画面に出さない場面を宣言する提示ポリシー API も加わりました。大きなユーザースクリプトが描画プロセスに届かない問題も解消しています。

v1.2.0-build8 を公開しました

2026-08-12 · リリース

自主的なセキュリティ点検の結果を反映しました。サイトごとのプロセス分離を既定で有効にしました — あるサイトのページが乗っ取られたときに、別のサイトのデータを読ませないための境界です。複数のサイトを開くと描画プロセスが増えるため、メモリ使用量が増えることがあります。あわせて sandbox の可否判定を実測に変え、状態を問い合わせる API を追加しました。環境変数の一覧も新設しています。

v1.2.0-build7 を公開しました

2026-08-12 · リリース

開発用パッケージ(devel)に同梱しているヘッダが、1 版前の版数を名乗っていました(v1.2.0 の build1 から build6 まで、すべて該当します)。実行時 API は当初から正しく、影響を受けるのはコンパイル時のマクロだけです。ヘッダを include しなくてもビルドは通るため、長く気付けませんでした。実行部分は build6 と同一で、Chromium の再ビルドは行っていません。

v1.2.0-build6 を公開しました

2026-08-11 · リリース

レンダリングエンジンを Chromium 151.0.7922.108 に更新しました。ウィンドウを閉じる・隠す・入力を扱う経路の不具合が 10 件直っています。あわせて、登録したユーザースクリプトがページ本文より先に走るようになり、JavaScript の実行結果が JSON で返るようになりました。

欧文の分綴が効くようになりました

2026-08-10 · リリース

hyphens: auto を指定すると欧文が語の途中で適切に分割されます。52 言語の辞書を同梱しています。分綴は欧文の両端揃えとセットで成立するため、これまでは行が短いほど語間が開いていました。

dnf でインストールと更新ができるようになりました

2026-08-09 · リリース

リポジトリを一度登録すれば、以降は dnf upgrade で新しい版に追随できます。パッケージは署名済みで、リポジトリは gpgcheck=1 です。

v1.2.0-build4 を公開しました

2026-08-08 · リリース

software モードで、動き続けるページ (Canvas・CSS アニメーション・動画) が静止しなくなりました。

GPU 描画が環境変数の指定だけで使えるようになりました

2026-08-08 · リリース

BLINKGTK_GPU_MODE=egl だけで GPU 経路に切り替えられます。アプリ側のコード変更は要りません。

縦書きの行分割について Chromium へ報告しました

2026-08-05 · 上流への貢献

縦書きで閉じ括弧が行末に来ると、行が半分しか埋まらないことがあります。再現条件と計測を添えて上流に報告しました。

Chromium 151 へ更新しました

2026-08-01 · リリース

圏点を付けても行送りが太らなくなり、ルビのはみ出しが指定どおりに効きます。