diff --git a/Source/Engine/Core/Math/Color.cs b/Source/Engine/Core/Math/Color.cs
index dbfd70c7e..be97a7994 100644
--- a/Source/Engine/Core/Math/Color.cs
+++ b/Source/Engine/Core/Math/Color.cs
@@ -112,6 +112,16 @@ namespace FlaxEngine
///
public float ValuesSum => R + G + B + A;
+ ///
+ /// Returns true if color is fully transparent (all components are equal zero).
+ ///
+ public bool IsTransparent => Mathf.IsZero(R + G + B + A);
+
+ ///
+ /// Returns true if color has opacity channel in use (different from 1).
+ ///
+ public bool HasOpacity => !Mathf.IsOne(A);
+
///
/// Constructs a new Color with given r,g,b,a component.
///
diff --git a/Source/Engine/UI/GUI/Common/Dropdown.cs b/Source/Engine/UI/GUI/Common/Dropdown.cs
index b91d70dc9..325a5c34d 100644
--- a/Source/Engine/UI/GUI/Common/Dropdown.cs
+++ b/Source/Engine/UI/GUI/Common/Dropdown.cs
@@ -595,7 +595,7 @@ namespace FlaxEngine.GUI
Size = new Float2(size.X - margin, size.Y),
Font = Font,
TextColor = TextColor * 0.9f,
- TextColorHighlighted = BackgroundColorSelected.Brightness < 0.05f ? Color.Lerp(TextColorHighlighted, Color.White, 0.3f) : TextColorHighlighted,
+ TextColorHighlighted = (Mathf.IsZero(BackgroundColorSelected.Brightness) || BackgroundColorSelected.IsTransparent) ? Color.Lerp(TextColorHighlighted, Color.White, 0.3f) : TextColorHighlighted,
HorizontalAlignment = HorizontalAlignment,
VerticalAlignment = VerticalAlignment,
Text = _items[i],