Solved hanging when calling controller.RemoveListener()
  - problem was onFrame() function accessed showWindow(SlideShowWindow) field after show is closed.
  - so, added try-catch phase