OSDN Git Service

ColorizeList内で発言の色を変更する前に無効領域の描画を済ませる
authorKimura Youichi <kim.upsilon@bucyou.net>
Thu, 15 Aug 2019 17:44:24 +0000 (02:44 +0900)
committerKimura Youichi <kim.upsilon@bucyou.net>
Thu, 15 Aug 2019 20:29:35 +0000 (05:29 +0900)
選択中の発言が変化したとき DetailsListView 内の ValidateRect によって選択色が描画されなくなる問題の対策
(同じユーザーの発言など、同じ背景色が並んでいる所でカーソル移動すると起きやすい)

OpenTween/Tween.cs

index 52f11ad..5e66ed2 100644 (file)
@@ -1974,6 +1974,10 @@ namespace OpenTween
                 return;
 
             var listView = (DetailsListView)listCache.TargetList;
+
+            // ValidateRectが呼ばれる前に選択色などの描画を済ませておく
+            listView.Update();
+
             foreach (var (listViewItem, cachedPost) in listCache.Cache)
             {
                 var backColor = this.JudgeColor(_post, cachedPost);