# \[UE5.1, Bug Report\] Widget's IsVisible is funny.

**URL:** <https://forums.unrealengine.com/t/ue5-1-bug-report-widgets-isvisible-is-funny/777864>\
**Category:** Issues and Bug Reporting\
**Tags:** unreal-engine, bug-report, editor, slate, Blueprint, CPP, question, UMG\
**Created:** [February 24, 2023, 4:02pm UTC](https://forums.unrealengine.com/t/ue5-1-bug-report-widgets-isvisible-is-funny/777864 "2023-02-24T16:02:18Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Roy\_Wierer.Seda145](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/roy_wierer.seda145/32/906551_2.png) [@Roy\_Wierer.Seda145](https://forums.unrealengine.com/u/Roy_Wierer.Seda145)\
**Post date:** [February 24, 2023, 4:02pm UTC](https://forums.unrealengine.com/t/ue5-1-bug-report-widgets-isvisible-is-funny/777864/1 "2023-02-24T16:02:18Z")

</div>

![afbeelding](https://d3kjluh73b9h9o.cloudfront.net/original/4X/4/d/5/4d53709fc40a3db53ffac815c60bbf739814bfcf.png)

![afbeelding](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/9/4/79463046aef13ef613cf064ae56d4841207286bc.png)

![afbeelding](https://d3kjluh73b9h9o.cloudfront.net/original/4X/7/d/3/7d32f7cbeb07b7f732786716382fc9c8d4650610.png)

I don’t think this needs explanation. If it does: inconsistent results in the different methods you can call to check if a widget is visible or not. Some of these are overcomplicated and check for one or two conditions.

If we look at the absolute simplest one, even that is broken:

```auto
// UWidget* ThatWidget ....;
// If SafeWidget is not valid:
bool bIsVisible = ThatWidget->IsVisible(); // == false, does not respect Visibility property.
bool bIsVisible = ThatWidget->GetVisibility == ESlateVisibility::Visible; // == true.

// ? Now what is with the dupe enumerator used in slate?
// SafeWidget->GetVisibility().IsVisible()

// If you do something in the engine, do it right or don't do it!

```
