プロジェクト

全般

プロフィール

バグ #813

完了

< > & が含まれるツイート本文に対するマウスドラッグ文字列選択で範囲表示がズレる

Izumi Tsutsui さんが約8年前に追加. 約8年前に更新.

ステータス:
終了
優先度:
通常
担当者:
対象バージョン:
プラグイン名:
ブランチ:
クラッシュする:

説明

現象

mikutter 3.3.5 で
< > & が含まれるツイート
https://twitter.com/tsutsuii/status/697535948351893504
https://twitter.com/tsutsuii/status/697649907390222337
等を mikutter 上で表示してツイート本文のマウスドラッグで文字列選択した場合、
選択範囲表示が < > & のそれぞれ1文字に付き 1文字右にズレるようです。

適当な考察

マウス選択位置までの文字数を、表示されている文字数より1文字多くカウントしている感じです。
#284 で「URLが入ったつぶやきの文字列選択で、選択位置がずれる」というのがあって
#445 で特殊文字のエスケープ書式が変わったという過去もありましたが
似たような原因でしょうか。

蛇足

おさけーさんの show_tweet プラグインを使うと検証がはかどります
https://github.com/osak/show_tweet

Izumi Tsutsui さんが約8年前に更新

source:core/mui/cairo_miracle_painter.rb@ab1cf1b0#L234

result[1] = main_message.text.get_index_from_byte(result[1])

の [1] がエスケープされている文字の場合意図通りに動かない
という気がしますが、どうでしょう。

toshi_a 初音 さんが約8年前に更新

  • ステータス新規 から 実装待ち に変更
  • 担当者toshi_a 初音 にセット

確かにおかしいですね。

toshi_a 初音 さんが約8年前に更新

  • ステータス実装待ち から レビュー待ち に変更
  • 担当者toshi_a 初音 から Izumi Tsutsui に変更

修正しました。闇属性のファイルだったので特定に時間がかかりましたが、単に特定の記号の境界処理が誤っていただけですね。一応確認してください。

Izumi Tsutsui さんが約8年前に更新

いつもお世話になっております。

mikutter 3.3.5 で source:core/mui/cairo_textselector.rb@1a111b7f だけ入れ替えて
当該ツイートでざっとテストしてみて選択範囲は問題ないようです。
これでコードツイートのコピペもはかどります。ありがとうございます。

チケットと関係ないですが、 Redmine のバージョンアップ時のロール設定のせいか
「報告者」だとチケットの「ステータス」が変更できないようになっているような……。

toshi_a 初音 さんが約8年前に更新

  • ステータスレビュー待ち から 終了 に変更

Izumi Tsutsui さんが約8年前に更新

新しいチケット起こすべきかもしれませんが

1a111b7f の修正後、ツイートの本文に改行が含まれるツイートを範囲選択すると
ツイート中の改行がなくなってしまうという現象になるようです。
https://twitter.com/Akkiesoft/status/698502248918200322
https://twitter.com/Akkiesoft/status/698502565881729024

source:core/mui/cairo_textselector.rb@1a111b7f
の修正で改行について考慮が必要ということでしょうか。

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