プロジェクト

全般

プロフィール

バグ #465

未完了

favとRTが両方されているとfavった人アイコンのマウスオーバーでのID表示がされない

Izumi Tsutsui さんが12年以上前に追加. ほぼ3年前に更新.

ステータス:
実装待ち
優先度:
通常
担当者:
-
対象バージョン:
プラグイン名:
ブランチ:
クラッシュする:
いいえ

説明

ツイート表示下のRTした人アイコンやfavした人アイコンにマウスオーバーすると
favstarと同じくツールチップでその人のTwitter IDが表示されるようになっていますが、
favとRTとが両方されていて両者が2段でアイコンが表示されている場合、
下段のRTアイコンのほうはマウスオーバーでツールチップが表示されますが、
上段のfavアイコンのほうはマウスオーバーしてもツールチップが出ません。
RTだけ、favだけの場合はそれぞれ表示されます。

0.1の時点で起きていたと思いますが、素の0.1.1.783でも確認しました。

あひる 家鴨 さんが7年以上前に更新

ツールチップの条件分岐は問題なく、不思議な力でその表示がされないというところまで確認しました。

マウスオーバー時にツールチップに表示するユーザー名は取れているため、表示の部分(おそらくGTK周り?)が悪さしてるんだと思います。
引き続きツールチップの動作を確認していきます。

あひる 家鴨 さんが約7年前に更新

Gtk::Tooltips のドキュメントを見てみたら、どうやら ToolTips は deprecated らしいです。
Gtk::Tooltips is deprecated since Gtk+ 2.12. Use Gtk::Tooltip and the tooltip_* methods in Gtk::Widget instead.
https://ruby-gnome2.osdn.jp/hiki.cgi?Gtk%3A%3ATooltips

Gtk::ToolTip の方はほとんど情報量がないので Gtk::Widget の tooltip_* を追ったほうがいいかもしれないですね。
もしかしたら、こちらを使うとうまくいくとかあればいいですが。

Izumi Tsutsui さんが6年以上前に更新

あまり参考にならない情報ですが、気づいたことがあったのでメモ

  • RTのみされたツイートがTLの一番上にある状態
  • RTした人のアイコン上にマウスカーソルがあってツールチップでIDが表示されている状態

において、

  • TLの一番上にあった「RTのみされたツイート」がふぁぼられた
  • ふぁぼられたことにより、従来RTした人のアイコンが表示されていたところにふぁぼった人のアイコンが挿入された
  • マウスカーソルは動かしていないので結果としてマウスカーソルがふぁぼった人のアイコンの上に来た

という状態ではふぁぼった人のIDがツールチップで表示されていました。

上記の状態からマウスカーソルを下に動かしてRTした人のIDをツールチップで表示させた後に
再度ふぁぼった人のアイコンにマウスカーソルを動かした後はツールチップが表示されませんでした。

「表示しようとはしているものの、不思議な力で抑制されている」という流れには見えます。

Izumi Tsutsui さんが6年以上前に更新

  • ステータス新規 から 実装待ち に変更

懸賞金対象だったなあ、などと思いだしたのでとりあえず変えてみます。

toshi_a 初音 さんがほぼ5年前に更新

  • 対象バージョン4.0 にセット

今も起こっている

Izumi Tsutsui さんがほぼ3年前に更新

  • 対象バージョン4.0 から 5.0 に変更

今も起こっている

Izumi Tsutsui さんがほぼ3年前に更新

source:core/mui/cairo_sub_parts_voter.rb@a9180163#L37helper.ssc(:motion_notify_event)
notice をいろいろ散りばめてながめてみたのですが、以下のような動きをしているように見えます。

  • motion_notify_event が fav列のsub_parts と RT列のsub_parts と 2回呼ばれる?
  • fav列の高さにポインタがある場合、
    fav列のsub_parts で呼ばれたときは tooltip_text にユーザ名セットされるが
    直後に RT列のsub_parts で呼ばれたときに tooltip_text が空にされる
    • ⇒結果として tooltip 出ない
  • RT列の高さにポインタがある場合、
    fav列のsub_parts で呼ばれたときは tooltip_text が空にされるが
    直後に RT列のsub_parts で呼ばれたときに tooltip_text にユーザ名セットされる
    • ⇒結果として tooltip 出る

「fav列のsub_parts で tooltip_text セットされてたら RT列のsub_parts ではクリアしない」みたいな処理が必要?

last_motion_user というのがこのあたりを対処しようとした形跡にも見えるのですが、
#203 で最初に「voterのアイコンにチップヘルプでscreen_nameが出るようにした」の変更が入った
source:core/mui/cairo_sub_parts_voter.rb@d54e3a75#L39 を見てもイマイチわかりませんでした……。

他の形式にエクスポート: Atom PDF