qemu-e2k/ui
Peter Maydell d3345a0484 ui/cocoa: Redraw at correct size when switching surface
If the surface switch involved a resize, we were doing the redraw
at the old size rather than the new, because the update of
screen.width and screen.height was being done after the setFrame
method calls which triggered a redraw. Normally this isn't very
noticeable because typically after the guest triggers the window
resize it also draws something to it, which will in turn cause
us to redraw. However, the combination of a guest which never
draws to the display and a command line setting of a screen size
larger than the default can reveal odd effects.

Move most of the handling of resizes to the top of the method,
and guard it with a check that the surface size actually changed,
to avoid unnecessary operations (including some user visible ones
like "recenter the window on the screen") if the surface is the
same size as the old one.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1387853507-26298-2-git-send-email-peter.maydell@linaro.org
2014-01-12 22:27:10 +00:00
..
cocoa.m ui/cocoa: Redraw at correct size when switching surface 2014-01-12 22:27:10 +00:00
console.c misc: Replace 'struct QEMUTimer' by 'QEMUTimer' 2013-12-02 21:03:39 +04:00
curses_keys.h
curses.c curses: fixup SIGWINCH handler mess 2013-11-25 20:36:27 -08:00
cursor_hidden.xpm
cursor_left_ptr.xpm
cursor.c
d3des.c
d3des.h
gtk.c gtk: Replace conditional debug messages by trace methods 2013-12-02 21:02:00 +04:00
input.c Don't crash on keyboard input with no handler 2013-12-02 21:09:04 +04:00
keymaps.c qemu-char: add support for U-prefixed symbols 2013-11-13 15:48:38 +04:00
keymaps.h
Makefile.objs ui/Makefile.objs: delete unnecessary cocoa.o dependency 2013-10-16 18:21:01 +02:00
qemu-pixman.c pixman: render vgafont glyphs into pixman images 2013-04-16 09:03:47 +02:00
qemu-x509.h
sdl_keysym.h
sdl_zoom_template.h
sdl_zoom.c
sdl_zoom.h
sdl.c sdl: Reverse support for video mode setting 2013-11-06 21:47:13 -08:00
spice-core.c spice: move spice_server_vm_{start,stop} calls into qemu_spice_display_*() 2013-12-16 10:12:20 +01:00
spice-display.c spice: move qemu_spice_display_*() from spice-graphics to spice-core 2013-12-16 10:12:20 +01:00
spice-input.c
vgafont.h
vnc_keysym.h qemu-char: add missing characters used in keymaps 2013-11-13 15:48:38 +04:00
vnc-auth-sasl.c
vnc-auth-sasl.h aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-auth-vencrypt.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-auth-vencrypt.h
vnc-enc-hextile-template.h
vnc-enc-hextile.c
vnc-enc-tight.c
vnc-enc-tight.h
vnc-enc-zlib.c
vnc-enc-zrle-template.c
vnc-enc-zrle.c
vnc-enc-zrle.h
vnc-enc-zywrle-template.c
vnc-enc-zywrle.h misc: Spelling and grammar fixes in comments 2013-10-26 13:06:45 +04:00
vnc-jobs.c
vnc-jobs.h
vnc-palette.c
vnc-palette.h
vnc-tls.c TLS support for VNC Websockets 2013-05-03 12:04:57 -05:00
vnc-tls.h
vnc-ws.c aio / timers: Untangle include files 2013-08-22 19:10:27 +02:00
vnc-ws.h TLS support for VNC Websockets 2013-05-03 12:04:57 -05:00
vnc.c vnc: use booleans for vnc_connect, vnc_listen_read and vnc_display_add_client 2013-06-21 22:52:50 +04:00
vnc.h TLS support for VNC Websockets 2013-05-03 12:04:57 -05:00
x_keymap.c
x_keymap.h