Open the same level but with different functionalities

Sure, you definitely don’t need to duplicate an entire level to change a small thing like a widget on a different level. What you want is something called the Game Instance. It is a type of Blueprint similar to GameMode except that it exists across all levels and GameModes. It pretty much exists until the game quits.

Using this, you can store some kind of information about what button the player pushed, and then call this information from the game instance after the level loads to decide whether or not to show the widget.