Thanks again! I can understand the logic of your advises, but not sure how to implement them in BP. Sadly, but i have to dig deeper into basics of the nodes and how to use them properly.
BUT! After a long break I found a very simple solution and it works fine for me (at least for now).
All is needed is to keep widget(main UI) with dispatchers “alive”. So, as it loaded first time - dispatcher started and works, than button push runs another widget on top of main UI and simply disables it’s visibility, but not remove from parent. When new widget is closed - main UI is set visible again and that’s it!