Moved more responsibilities to SFOpenGLView

These changes will ease the implementation of mouse grab (#394)