How to properly move UMG widget element by touch?

So, I couldn’t find less crutchy solution (if there is, I would be happy to know, maybe through Slate API, but I’m not so good at UE and c++ yet), so I made this. I wonder if this will help someone.