[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 13/15] sdl: Add zoom hot keys
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 13/15] sdl: Add zoom hot keys |
Date: |
Sat, 30 Jul 2011 11:39:16 +0200 |
From: Jan Kiszka <address@hidden>
Allow to enlarge or shrink the screen via CTRL-ALT-+/-. In contrast to
scaling the window, these controls always preserve the aspect ratio of
the current console.
CC: Stefano Stabellini <address@hidden>
Signed-off-by: Jan Kiszka <address@hidden>
---
qemu-doc.texi | 8 ++++++++
ui/sdl.c | 13 +++++++++++++
2 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/qemu-doc.texi b/qemu-doc.texi
index 47e1991..31199f6 100644
--- a/qemu-doc.texi
+++ b/qemu-doc.texi
@@ -288,6 +288,14 @@ then the modifier is Ctrl-Alt-Shift (instead of Ctrl-Alt)
and if you use
@kindex Ctrl-Alt-f
Toggle full screen
address@hidden Ctrl-Alt-+
address@hidden Ctrl-Alt-+
+Enlarge the screen
+
address@hidden Ctrl-Alt--
address@hidden Ctrl-Alt--
+Shrink the screen
+
@item Ctrl-Alt-u
@kindex Ctrl-Alt-u
Restore the screen's un-scaled dimensions
diff --git a/ui/sdl.c b/ui/sdl.c
index e8ac3bb..fc63c8e 100644
--- a/ui/sdl.c
+++ b/ui/sdl.c
@@ -651,6 +651,19 @@ static void sdl_refresh(DisplayState *ds)
absolute_mouse_grab();
}
break;
+ case 0x1b: /* '+' */
+ case 0x35: /* '-' */
+ if (!gui_fullscreen) {
+ int width = MAX(real_screen->w +
+ (keycode == 0x1b ? 50 : -50), 160);
+ int height = (ds_get_height(ds) * width) /
+ ds_get_width(ds);
+
+ sdl_scale(ds, width, height);
+ vga_hw_invalidate();
+ vga_hw_update();
+ gui_keysym = 1;
+ }
default:
break;
}
--
1.7.3.4
- [Qemu-devel] [PATCH 00/15] sdl: Usability improvements, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 10/15] sdl: Never release input while in full screen mode, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 04/15] sdl: Properly mark modifier+u as hotkey, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 07/15] sdl: Drop bogus gui_fullscreen_initial_grab, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 06/15] sdl: Restore scaling mode on return from full screen, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 09/15] sdl: Consistently avoid grabbing input for text consoles, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 13/15] sdl: Add zoom hot keys,
Jan Kiszka <=
- [Qemu-devel] [PATCH 15/15] sdl: Refactor sdl_send_mouse_event, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 14/15] sdl: Factor out event handlers from sdl_refresh, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 05/15] sdl: Fix full screen toggling from scaled mode, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 01/15] sdl: Fix termination in -no-shutdown mode, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 08/15] sdl: Initialize gui_fullscreen earlier during setup, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 03/15] sdl: Avoid redundant scaling deactivation, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 11/15] sdl: Fix cursor handling when switching consoles in absolute mouse mode, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 12/15] sdl: Dynamically grab input in absolute mouse mode, Jan Kiszka, 2011/07/30
- [Qemu-devel] [PATCH 02/15] sdl: Do not make full screen mode resizable, Jan Kiszka, 2011/07/30