Skip to content
  • Marc-André Lureau's avatar
    cb8962c1
    ui: do not create a surface when resizing a GL scanout · cb8962c1
    Marc-André Lureau authored
    
    
    qemu_console_resize() will create a blank surface and replace the
    current scanout with it if called while the current scanout is
    GL (texture or dmabuf).
    
    This is not only very costly, but also can produce glitches on the
    display/listener side.
    
    Instead, compare the current console size with the fitting console
    functions, which also works when the scanout is GL.
    
    Note: there might be still an unnecessary surface creation on calling
    qemu_console_resize() when the size is actually changing, but display
    backends currently rely on DisplaySurface details during
    dpy_gfx_switch() to handle various resize aspects. We would need more
    refactoring to handle resize without DisplaySurface, this is left for a
    future improvement.
    
    Signed-off-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
    Message-Id: <20220214201337.1814787-4-marcandre.lureau@redhat.com>
    Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
    cb8962c1
    ui: do not create a surface when resizing a GL scanout
    Marc-André Lureau authored
    
    
    qemu_console_resize() will create a blank surface and replace the
    current scanout with it if called while the current scanout is
    GL (texture or dmabuf).
    
    This is not only very costly, but also can produce glitches on the
    display/listener side.
    
    Instead, compare the current console size with the fitting console
    functions, which also works when the scanout is GL.
    
    Note: there might be still an unnecessary surface creation on calling
    qemu_console_resize() when the size is actually changing, but display
    backends currently rely on DisplaySurface details during
    dpy_gfx_switch() to handle various resize aspects. We would need more
    refactoring to handle resize without DisplaySurface, this is left for a
    future improvement.
    
    Signed-off-by: default avatarMarc-André Lureau <marcandre.lureau@redhat.com>
    Message-Id: <20220214201337.1814787-4-marcandre.lureau@redhat.com>
    Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
Loading