|
|
@@ -32,17 +32,17 @@
|
|
|
|
|
|
class SDLGLContext : public Core::Frontend::GraphicsContext {
|
|
|
public:
|
|
|
- explicit SDLGLContext() {
|
|
|
- // create a hidden window to make the shared context against
|
|
|
- window = SDL_CreateWindow(NULL, SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 0, 0,
|
|
|
- SDL_WINDOW_HIDDEN | SDL_WINDOW_OPENGL);
|
|
|
+ explicit SDLGLContext(SDL_Window* window) : window(window) {
|
|
|
context = SDL_GL_CreateContext(window);
|
|
|
}
|
|
|
|
|
|
~SDLGLContext() {
|
|
|
DoneCurrent();
|
|
|
SDL_GL_DeleteContext(context);
|
|
|
- SDL_DestroyWindow(window);
|
|
|
+ }
|
|
|
+
|
|
|
+ void SwapBuffers() override {
|
|
|
+ SDL_GL_SwapWindow(window);
|
|
|
}
|
|
|
|
|
|
void MakeCurrent() override {
|
|
|
@@ -114,9 +114,6 @@ EmuWindow_SDL2_GL::EmuWindow_SDL2_GL(InputCommon::InputSubsystem* input_subsyste
|
|
|
exit(1);
|
|
|
}
|
|
|
|
|
|
- dummy_window = SDL_CreateWindow(NULL, SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 0, 0,
|
|
|
- SDL_WINDOW_HIDDEN | SDL_WINDOW_OPENGL);
|
|
|
-
|
|
|
SetWindowIcon();
|
|
|
|
|
|
if (fullscreen) {
|
|
|
@@ -159,5 +156,5 @@ EmuWindow_SDL2_GL::~EmuWindow_SDL2_GL() {
|
|
|
}
|
|
|
|
|
|
std::unique_ptr<Core::Frontend::GraphicsContext> EmuWindow_SDL2_GL::CreateSharedContext() const {
|
|
|
- return std::make_unique<SDLGLContext>();
|
|
|
+ return std::make_unique<SDLGLContext>(render_window);
|
|
|
}
|