操作
バグ #1537
完了gtk3: Plugin::GUI::Timelineのdestroyが呼び出されていない (gui_destroyイベントで飛んでこない)
プラグイン名:
クラッシュする:
いいえ
説明
Timelineを含む一時タブを削除した時にPlugin::GUI::Timelineのgui_destroyイベントが飛んできていません。どうも実態が削除された時にimaginaryのdestroyをきちんと呼び出せていないような感じがします。
このイベントが呼ばれないことによって、具体的には user_detail_view プラグインが動作不良を起こすことを確認しています。
再現手順
1. twitter userのプロフィールタブを開く
2. 1で開いたタブを閉じる
3. mikutterを終了する
4. mikutterを再起動すると2で閉じたはずのタブが生き返っている
Shibafu Midorino さんがほぼ3年前に更新
- ステータス を 実装待ち から レビュー待ち に変更
- 再現手順 を更新 (差分)
- ブランチ を topic/1537-timeline-destroy にセット
修正しました。
GTK2版ではInnerTLのdestroyシグナルハンドラでimaginaryのdestroyを呼んでいたのが、GTK3版ではPlugin::Gtk3::Timeline内のListBoxのdestroyシグナルハンドラになっていたのですが、このハンドラは何故か一生実行されないので親であるPlugin::Gtk3::Timeline自体にハンドラをconnectしておきました。
再現手順にはとりあえずこの問題を発見した時の操作手順を書いておきましたが、これだと見れる人が限られるような…
Izumi Tsutsui さんがほぼ3年前に更新
- ステータス を レビュー待ち から マージ待ち に変更
develop相当で git merge topic/1537-timeline-destroy して再現手順を試して
閉じたタブが蘇らないことを確認しました。
操作