電子回路図を編集するためのフリー ソフトウェア ツールであるgschemに取り組んでいます。最近、 GtkTextViewを含むGtkScrolledWindowを使用して問題が発生しました。
環境
Ubuntu の最近のバージョンでは、オーバーレイ スクロールバーが使用されています。つまり、GtkScrolledWindows は、従来のスクロールバーに十分なスペースを提供する最小の高さを設定しなくなりました (実際、最小の高さは 0 です)。同様に、表示するテキストのない GtkTextView は高さ 0 を要求します。これは、gschem のスクロール可能な GtkTextView の 1 つが高さ 1 ピクセルで表示されていることを意味し、これは明らかに使用できません。
上記のスクリーンショットの右側にあるダイアログ ボックスで、「値:」ラベルと「追加」ボタンの間にウィジェットが表示されていないことに注意してください。
これは複数のユーザーから個別に報告されています -バグレポートも参照してください。
質問
明らかに、次のようにしてこれを修正できます。
g_object_set (textview, "height-request", 100, NULL);
ただし、これは非常に洗練されておらず、ピクセル単位で非常に大きなフォント サイズを設定しているユーザー (視覚に問題のあるユーザーや高 DPI 画面を使用しているユーザーなど) には機能しません。
したがって、理想的には、GtkTextView の最小サイズをデフォルトのフォント サイズに相対的に設定する必要があります。たとえば、「少なくとも 3 行のテキストを表示する」ように指示します。
これを行うための賢明でエレガントなアプローチを提案できる人はいますか?