操作
バグ #1498
完了機能 #887: gtk3
gtk3: 新しいMiraclePainterの不具合まとめ
プラグイン名:
クラッシュする:
いいえ
説明
気づいたことを書き散らす用のチケットです。
- セルの高さの計算がおかしい
- Entityのクリック判定が見た目の位置と一致しない
- マウスドラッグによるテキスト選択の位置判定が見た目の位置と一致しない
ファイル
関連するチケット
Shibafu Midorino さんが約3年前に更新
体感でしかないですが、MiraclePainter#main_message の set_shape_renderer あたりでよくSEGVする気がします。
バックトレースは添付ファイルの segv_backtrace_main_message_try_convert.txt を参照。
toshi_a 初音 さんが約3年前に更新
- ステータス を 分類待ち から 実装待ち に変更
高さ計算に使っている Pango::Layout
に設定されているattributeの影響で、同じようにレンダリングされず、高さの計算を間違っている。
レンダリングしようとする Cairo::Context
から Pango::Layout
を作成すれば、高さの計算が正しくなる。
toshi_a 初音 さんが約3年前に更新
正しく文字を描画した結果専有する高さを予想するには、同じ条件のPango::Layoutが用意できなければならないが、難航したため一旦昔のMiralcePainterみたいな実装にした。
- 最後に描画した高さ or 予想は適当な定数
- 描画後、予想が外れていた場合resizeシグナルを送る
toshi_a 初音 さんが約3年前に更新
- ステータス を 実装待ち から レビュー待ち に変更
- 担当者 を toshi_a 初音 から Shibafu Midorino に変更
- ブランチ を topic/1498-miracle-painter にセット
done.
Shibafu Midorino さんが約3年前に更新
SubPartsの計算がまだ上手く行っていないケースがありそうです。InReplyToが半端に表示されたり、全く表示されなかったり。あと、Voterも出たり出なかったりしますね。(後者は普通に受信できてない時もあるので判別しにくい…)
toshi_a 初音 さんが約3年前に更新
- ステータス を レビュー待ち から まだダメ に変更
- 担当者 を Shibafu Midorino から toshi_a 初音 に変更
toshi_a 初音 さんが約3年前に更新
- ステータス を まだダメ から レビュー待ち に変更
- 担当者 を toshi_a 初音 から Shibafu Midorino に変更
subpartsも計算に入れる。
各要素の高さが予想と異なる場合に再描画するのではなく、MiraclePainterの描画が全て終わったあとに、高さの合計を描画域と比較する。
Shibafu Midorino さんが約3年前に更新
- ステータス を レビュー待ち から マージ待ち に変更
大丈夫そうです。列挙されている問題は一通り解決されています。
時折ちらつきが発生している気がしますが、これは良くわからない。
操作