バグ #1519
closedgtk3: mastodon カスタム投稿起動時に postbox 入力済みテキストがカスタム投稿本文に反映されない
Description
従来の mikutter mastodon postbox の「カスタム投稿」は、
すでに postbox に入力済みのテキストがカスタム投稿側の「本文」にコピーされる仕様と思います。
一方、 gtk3版では postbox 入力済みのテキストがカスタム投稿側に反映されません。
gtk3版ではカスタム投稿のコードが source:plugin/mastodon/spell.rb@62fa5341#L35 から
source:plugin/mastodon_custom_post/mastodon_custom_post.rb@a1c13c70#L19
に移動しているものの、 postbox テキストから本文へのコピーの処理はほぼ同じ記述のようです。
i_postbox = opt.widget
postbox, = Plugin.filtering(:gui_get_gtk_widget, i_postbox)
body = postbox.widget_post.buffer.text
reply_to = postbox.mastodon_get_reply_to
dialog _('カスタム投稿') do
# オプションを並べる
multitext _('CW警告文'), :spoiler_text
self[:body] = body
multitext _('本文'), :body
debug用 notice
で見ると body
にも本文テキストは入っているようですが、
なぜかカスタム投稿ウインドウの表示としては反映されていないようです。
Files
Updated by Izumi Tsutsui over 3 years ago
- File 0001-multitext-refs-1519.patch 0001-multitext-refs-1519.patch added
- Status changed from 分類待ち to パッチ適用待ち
5933f4fb4 での main/core/mui/gtk_form_dsl.rb の multitext
の修正漏れのようです。
添付(以下にも貼り付け)の差分で従来と同じく buffer.text
を設定すると
従来と同じくカスタム投稿本文に入力済み postbox 文字列が入るようになりました。
diff --git a/core/mui/gtk_form_dsl.rb b/core/mui/gtk_form_dsl.rb
index 1f4f6cb3..62a1c008 100644
--- a/core/mui/gtk_form_dsl.rb
+++ b/core/mui/gtk_form_dsl.rb
@@ -58,6 +58,7 @@ module Gtk::FormDSL
text_view.border_width = 6
text_view.accepts_tab = false
text_view.editable = true
+ text_view.buffer.text = self[key] || ''
self[key] and text_view.buffer.text
text_view.buffer.ssc :changed do
self[key] = text_view.buffer.text
Updated by Izumi Tsutsui over 3 years ago
書き忘れましたが source:core/mui/gtk_form_dsl.rb@5933f4fb4#L52 の
self[key] and text_view.buffer.text
というのが何を意図しているのか理解していません。この行を書き換えるべき?
Updated by Izumi Tsutsui over 3 years ago
Izumi Tsutsui さんは #note-2 で書きました:
書き忘れましたが source:core/mui/gtk_form_dsl.rb@5933f4fb4#L52 の
self[key] and text_view.buffer.text
というのが何を意図しているのか理解していません。この行を書き換えるべき?
source:core/mui/gtk_form_dsl.rb@5933f4fb4#L180 の
self[key] and entry.text = self[key]
からすると以下が意図していたコードですかね……
diff --git a/core/mui/gtk_form_dsl.rb b/core/mui/gtk_form_dsl.rb
index 1f4f6cb3..7685efd1 100644
--- a/core/mui/gtk_form_dsl.rb
+++ b/core/mui/gtk_form_dsl.rb
@@ -58,7 +58,7 @@ module Gtk::FormDSL
text_view.border_width = 6
text_view.accepts_tab = false
text_view.editable = true
- self[key] and text_view.buffer.text
+ self[key] and text_view.buffer.text = self[key]
text_view.buffer.ssc :changed do
self[key] = text_view.buffer.text
false
gtk3 対応と直接関係ない差分でトラブるとちょっとしんどいですね。
Updated by toshi_a 初音 over 3 years ago
- Status changed from パッチ適用待ち to レビュー待ち
- Assignee set to Izumi Tsutsui
- ブランチ set to topic/1519-custom-post
対応しました。developの実装に近い1つ目のパッチにします。
Updated by Izumi Tsutsui over 3 years ago
- File 0001-custom-post-cleanup.patch 0001-custom-post-cleanup.patch added
- Status changed from レビュー待ち to まだダメ
- Assignee changed from Izumi Tsutsui to toshi_a 初音
Updated by toshi_a 初音 over 3 years ago
- Status changed from まだダメ to レビュー待ち
- Assignee changed from toshi_a 初音 to Izumi Tsutsui
普通に見落としてました