OSDN Git Service

Quote,Retweet(Unofficial)で本文入力欄にテキストが既に入力されていた場合は削除せずに末尾にURLを追加する
authorKimura Youichi <kim.upsilon@bucyou.net>
Sat, 18 Mar 2017 09:25:45 +0000 (18:25 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Sat, 18 Mar 2017 13:52:37 +0000 (22:52 +0900)
OpenTween/Resources/ChangeLog.txt
OpenTween/Tween.cs

index c6d4bf3..3f9a49d 100644 (file)
@@ -13,6 +13,7 @@
  * CHG; OpenTweenを管理者権限で起動しようとすると警告が表示されるようになります
   - OpenTweenは管理者権限を必要とするソフトウェアではありません
   - 管理者権限でOpenTweenを起動する事でD&Dでの画像投稿が制限されたり、設定ファイルが管理者以外から編集できなくなる場合があります
+ * CHG: QuoteおよびRetweet(Unofficial)を実行した際に、ツイート入力欄に既にテキストが入力されていた場合は削除せず残すように変更しました
  * FIX: OSの設定で小数点にピリオド以外の記号を用いている環境で、Foursquareのサムネイル表示時にエラーが発生する不具合を修正 (thx @Xiatian!)
  * FIX: 「前データを取得」の後に通常の更新が行われると、次に「前データを取得」した際に1件も取得されない不具合を修正
  * FIX: 発言一覧の更新時にエラーが発生する不具合を回避
index 81a3951..245444f 100644 (file)
@@ -10544,11 +10544,13 @@ namespace OpenTween
                     return;
                 }
 
-                StatusText.Text = " " + MyCommon.GetStatusUrl(_curPost);
+                var selection = (this.StatusText.SelectionStart, this.StatusText.SelectionLength);
+
+                StatusText.Text += " " + MyCommon.GetStatusUrl(_curPost);
 
                 this.inReplyTo = null;
 
-                StatusText.SelectionStart = 0;
+                (this.StatusText.SelectionStart, this.StatusText.SelectionLength) = selection;
                 StatusText.Focus();
             }
         }
@@ -10569,14 +10571,16 @@ namespace OpenTween
                 string rtdata = _curPost.Text;
                 rtdata = CreateRetweetUnofficial(rtdata, this.StatusText.Multiline);
 
-                StatusText.Text = " RT @" + _curPost.ScreenName + ": " + rtdata;
+                var selection = (this.StatusText.SelectionStart, this.StatusText.SelectionLength);
+
+                StatusText.Text += " RT @" + _curPost.ScreenName + ": " + rtdata;
 
                 // 投稿時に in_reply_to_status_id を付加する
                 var inReplyToStatusId = this._curPost.RetweetedId ?? this._curPost.StatusId;
                 var inReplyToScreenName = this._curPost.ScreenName;
                 this.inReplyTo = Tuple.Create(inReplyToStatusId, inReplyToScreenName);
 
-                StatusText.SelectionStart = 0;
+                (this.StatusText.SelectionStart, this.StatusText.SelectionLength) = selection;
                 StatusText.Focus();
             }
         }