code: func (v *GLContext) GetSurface() (*Window, error) {
  	c := C.gdk_gl_context_get_window(v.native())
  	if c == nil {
  		return nil, nilPtrErr
  	}
  
  	return &Window{glib.Take(unsafe.Pointer(c))}, nil
  }
docs: // GetWindow is a wrapper around gdk_gl_context_get_window().