You are using events to call API, this is a bit of an 'anit-pattern' IMO. The `PreviewGalleryController` should be listening to `app` events and controlling the preview gallery accordingly. Then emitting `app` events to notify the rest of the app to the changes that have been made.