From c18a2c360e3100bbd71162cf922dcd8c429a8b71 Mon Sep 17 00:00:00 2001 From: Stefano Stabellini Date: Wed, 24 Jun 2009 11:58:25 +0100 Subject: sdl zooming Hi all, this patch implements zooming capabilities for the sdl interface. A new sdl_zoom_blit function is added that is able to scale and blit a portion of a surface into another. This way we can enable SDL_RESIZABLE and have a real_screen surface with a different size than the guest surface and let sdl_zoom_blit take care of the problem. Signed-off-by: Stefano Stabellini Signed-off-by: Anthony Liguori --- console.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'console.h') diff --git a/console.h b/console.h index 417217582..35183399f 100644 --- a/console.h +++ b/console.h @@ -75,6 +75,7 @@ void kbd_put_keysym(int keysym); #define QEMU_BIG_ENDIAN_FLAG 0x01 #define QEMU_ALLOCATED_FLAG 0x02 +#define QEMU_REALPIXELS_FLAG 0x04 struct PixelFormat { uint8_t bits_per_pixel; @@ -172,7 +173,8 @@ static inline int is_surface_bgr(DisplaySurface *surface) static inline int is_buffer_shared(DisplaySurface *surface) { - return (!(surface->flags & QEMU_ALLOCATED_FLAG)); + return (!(surface->flags & QEMU_ALLOCATED_FLAG) && + !(surface->flags & QEMU_REALPIXELS_FLAG)); } static inline void register_displaychangelistener(DisplayState *ds, DisplayChangeListener *dcl) -- cgit v1.2.3