vlc_opengl: move device out of the union
The device needs to be released in the offscreen implementation case but it's not possible to differentiate with the on-screen implementation that gets the window provided. Having the device available everywhere is easier than providing callbacks to allocate the device for now.
Fix NULL dereference with window for on-screen implementation.
Regression from f483bdc9.