Add some handling

* Add button support
* Added state handling support
* Added fullscreen support