Loading include/ui/console.h +1 −0 Original line number Diff line number Diff line Loading @@ -354,6 +354,7 @@ void surface_gl_setup_viewport(ConsoleGLState *gls, #endif /* sdl.c */ void sdl_display_early_init(int opengl); void sdl_display_init(DisplayState *ds, int full_screen, int no_frame); /* cocoa.m */ Loading include/ui/sdl2.h +11 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,10 @@ struct sdl2_console { int last_vm_running; /* per console for caption reasons */ int x, y; int hidden; int opengl; int updates; SDL_GLContext winctx; ConsoleGLState *gls; }; void sdl2_window_create(struct sdl2_console *scon); Loading @@ -37,4 +41,11 @@ void sdl2_2d_redraw(struct sdl2_console *scon); bool sdl2_2d_check_format(DisplayChangeListener *dcl, pixman_format_code_t format); void sdl2_gl_update(DisplayChangeListener *dcl, int x, int y, int w, int h); void sdl2_gl_switch(DisplayChangeListener *dcl, DisplaySurface *new_surface); void sdl2_gl_refresh(DisplayChangeListener *dcl); void sdl2_gl_redraw(struct sdl2_console *scon); #endif /* SDL2_H */ ui/Makefile.objs +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,9 @@ sdl.mo-objs := sdl.o sdl_zoom.o endif ifeq ($(CONFIG_SDLABI),2.0) sdl.mo-objs := sdl2.o sdl2-input.o sdl2-2d.o ifeq ($(CONFIG_OPENGL),y) sdl.mo-objs += sdl2-gl.o endif endif sdl.mo-cflags := $(SDL_CFLAGS) Loading ui/sdl.c +10 −0 Original line number Diff line number Diff line Loading @@ -908,6 +908,16 @@ static const DisplayChangeListenerOps dcl_ops = { .dpy_cursor_define = sdl_mouse_define, }; void sdl_display_early_init(int opengl) { if (opengl == 1 /* on */) { fprintf(stderr, "SDL1 display code has no opengl support.\n" "Please recompile qemu with SDL2, using\n" "./configure --enable-sdl --with-sdlabi=2.0\n"); } } void sdl_display_init(DisplayState *ds, int full_screen, int no_frame) { int flags; Loading ui/sdl2-2d.c +7 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,8 @@ void sdl2_2d_update(DisplayChangeListener *dcl, DisplaySurface *surf = qemu_console_surface(dcl->con); SDL_Rect rect; assert(!scon->opengl); if (!surf) { return; } Loading @@ -61,6 +63,8 @@ void sdl2_2d_switch(DisplayChangeListener *dcl, DisplaySurface *old_surface = scon->surface; int format = 0; assert(!scon->opengl); scon->surface = new_surface; if (scon->texture) { Loading Loading @@ -101,12 +105,15 @@ void sdl2_2d_refresh(DisplayChangeListener *dcl) { struct sdl2_console *scon = container_of(dcl, struct sdl2_console, dcl); assert(!scon->opengl); graphic_hw_update(dcl->con); sdl2_poll_events(scon); } void sdl2_2d_redraw(struct sdl2_console *scon) { assert(!scon->opengl); if (!scon->surface) { return; } Loading Loading
include/ui/console.h +1 −0 Original line number Diff line number Diff line Loading @@ -354,6 +354,7 @@ void surface_gl_setup_viewport(ConsoleGLState *gls, #endif /* sdl.c */ void sdl_display_early_init(int opengl); void sdl_display_init(DisplayState *ds, int full_screen, int no_frame); /* cocoa.m */ Loading
include/ui/sdl2.h +11 −0 Original line number Diff line number Diff line Loading @@ -17,6 +17,10 @@ struct sdl2_console { int last_vm_running; /* per console for caption reasons */ int x, y; int hidden; int opengl; int updates; SDL_GLContext winctx; ConsoleGLState *gls; }; void sdl2_window_create(struct sdl2_console *scon); Loading @@ -37,4 +41,11 @@ void sdl2_2d_redraw(struct sdl2_console *scon); bool sdl2_2d_check_format(DisplayChangeListener *dcl, pixman_format_code_t format); void sdl2_gl_update(DisplayChangeListener *dcl, int x, int y, int w, int h); void sdl2_gl_switch(DisplayChangeListener *dcl, DisplaySurface *new_surface); void sdl2_gl_refresh(DisplayChangeListener *dcl); void sdl2_gl_redraw(struct sdl2_console *scon); #endif /* SDL2_H */
ui/Makefile.objs +3 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,9 @@ sdl.mo-objs := sdl.o sdl_zoom.o endif ifeq ($(CONFIG_SDLABI),2.0) sdl.mo-objs := sdl2.o sdl2-input.o sdl2-2d.o ifeq ($(CONFIG_OPENGL),y) sdl.mo-objs += sdl2-gl.o endif endif sdl.mo-cflags := $(SDL_CFLAGS) Loading
ui/sdl.c +10 −0 Original line number Diff line number Diff line Loading @@ -908,6 +908,16 @@ static const DisplayChangeListenerOps dcl_ops = { .dpy_cursor_define = sdl_mouse_define, }; void sdl_display_early_init(int opengl) { if (opengl == 1 /* on */) { fprintf(stderr, "SDL1 display code has no opengl support.\n" "Please recompile qemu with SDL2, using\n" "./configure --enable-sdl --with-sdlabi=2.0\n"); } } void sdl_display_init(DisplayState *ds, int full_screen, int no_frame) { int flags; Loading
ui/sdl2-2d.c +7 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,8 @@ void sdl2_2d_update(DisplayChangeListener *dcl, DisplaySurface *surf = qemu_console_surface(dcl->con); SDL_Rect rect; assert(!scon->opengl); if (!surf) { return; } Loading @@ -61,6 +63,8 @@ void sdl2_2d_switch(DisplayChangeListener *dcl, DisplaySurface *old_surface = scon->surface; int format = 0; assert(!scon->opengl); scon->surface = new_surface; if (scon->texture) { Loading Loading @@ -101,12 +105,15 @@ void sdl2_2d_refresh(DisplayChangeListener *dcl) { struct sdl2_console *scon = container_of(dcl, struct sdl2_console, dcl); assert(!scon->opengl); graphic_hw_update(dcl->con); sdl2_poll_events(scon); } void sdl2_2d_redraw(struct sdl2_console *scon) { assert(!scon->opengl); if (!scon->surface) { return; } Loading