From 9daafb46365b369b9a656c52127f89d1e15a0baa Mon Sep 17 00:00:00 2001
From: Andrei Zavatski <megaman9919@gmail.com>
Date: Fri, 18 Oct 2019 03:06:01 +0300
Subject: [PATCH] Simplify hover/unhover logic

---
 osu.Game/Overlays/Comments/VotePill.cs | 24 ++++++++++--------------
 1 file changed, 10 insertions(+), 14 deletions(-)

diff --git a/osu.Game/Overlays/Comments/VotePill.cs b/osu.Game/Overlays/Comments/VotePill.cs
index d1a78cb368..5eade6fc46 100644
--- a/osu.Game/Overlays/Comments/VotePill.cs
+++ b/osu.Game/Overlays/Comments/VotePill.cs
@@ -128,7 +128,7 @@ namespace osu.Game.Overlays.Comments
             AlwaysPresent = true,
         };
 
-        protected override void OnLoadingStart() => onHoverLostAction();
+        protected override void OnLoadingStart() => updateDisplay();
 
         protected override void OnLoadingFinished()
         {
@@ -144,31 +144,27 @@ namespace osu.Game.Overlays.Comments
 
         protected override void OnHoverLost(HoverLostEvent e)
         {
-            onHoverLostAction();
+            updateDisplay();
             base.OnHoverLost(e);
         }
 
-        private void onHoverLostAction()
+        private void updateDisplay()
         {
             if (isVoted.Value)
-                hoverLayer.Hide();
-            else
+            {
+                hoverLayer.FadeTo(IsHovered ? 1 : 0);
                 sideNumber.Hide();
+            }
+            else
+                sideNumber.FadeTo(IsHovered ? 1 : 0);
 
-            borderContainer.BorderThickness = 0;
+            borderContainer.BorderThickness = IsHovered ? 3 : 0;
         }
 
         private void onHoverAction()
         {
             if (!IsLoading)
-            {
-                borderContainer.BorderThickness = 3;
-
-                if (!isVoted.Value)
-                    sideNumber.Show();
-                else
-                    hoverLayer.Show();
-            }
+                updateDisplay();
         }
 
         protected override void Dispose(bool isDisposing)