Add surface pointer to shared GL context functions

For proper EGL support with multiple GL threads