Commit 43523e9332e79a8ecbcec8444f975b8a705aa9d3
1 parent
20d8a3ed
-no-frame option for sdl, by Christian Laursen.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2435 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
3 changed files
with
16 additions
and
3 deletions
sdl.c
... | ... | @@ -34,6 +34,7 @@ static int gui_grab; /* if true, all keyboard/mouse events are grabbed */ |
34 | 34 | static int last_vm_running; |
35 | 35 | static int gui_saved_grab; |
36 | 36 | static int gui_fullscreen; |
37 | +static int gui_noframe; | |
37 | 38 | static int gui_key_modifier_pressed; |
38 | 39 | static int gui_keysym; |
39 | 40 | static int gui_fullscreen_initial_grab; |
... | ... | @@ -59,6 +60,8 @@ static void sdl_resize(DisplayState *ds, int w, int h) |
59 | 60 | flags = SDL_HWSURFACE|SDL_ASYNCBLIT|SDL_HWACCEL; |
60 | 61 | if (gui_fullscreen) |
61 | 62 | flags |= SDL_FULLSCREEN; |
63 | + if (gui_noframe) | |
64 | + flags |= SDL_NOFRAME; | |
62 | 65 | |
63 | 66 | width = w; |
64 | 67 | height = h; |
... | ... | @@ -469,7 +472,7 @@ static void sdl_cleanup(void) |
469 | 472 | SDL_Quit(); |
470 | 473 | } |
471 | 474 | |
472 | -void sdl_display_init(DisplayState *ds, int full_screen) | |
475 | +void sdl_display_init(DisplayState *ds, int full_screen, int no_frame) | |
473 | 476 | { |
474 | 477 | int flags; |
475 | 478 | uint8_t data = 0; |
... | ... | @@ -485,6 +488,9 @@ void sdl_display_init(DisplayState *ds, int full_screen) |
485 | 488 | exit(1); |
486 | 489 | } |
487 | 490 | |
491 | + if (no_frame) | |
492 | + gui_noframe = 1; | |
493 | + | |
488 | 494 | flags = SDL_INIT_VIDEO | SDL_INIT_NOPARACHUTE; |
489 | 495 | if (SDL_Init (flags)) { |
490 | 496 | fprintf(stderr, "Could not initialize SDL - exiting\n"); | ... | ... |
vl.c
... | ... | @@ -163,6 +163,7 @@ int graphic_height = 600; |
163 | 163 | #endif |
164 | 164 | int graphic_depth = 15; |
165 | 165 | int full_screen = 0; |
166 | +int no_frame = 0; | |
166 | 167 | int no_quit = 0; |
167 | 168 | CharDriverState *serial_hds[MAX_SERIAL_PORTS]; |
168 | 169 | CharDriverState *parallel_hds[MAX_PARALLEL_PORTS]; |
... | ... | @@ -6345,6 +6346,7 @@ void help(void) |
6345 | 6346 | "-boot [a|c|d|n] boot on floppy (a), hard disk (c), CD-ROM (d), or network (n)\n" |
6346 | 6347 | "-snapshot write to temporary files instead of disk image files\n" |
6347 | 6348 | #ifdef CONFIG_SDL |
6349 | + "-no-frame open SDL window without a frame and window decorations\n" | |
6348 | 6350 | "-no-quit disable SDL window close capability\n" |
6349 | 6351 | #endif |
6350 | 6352 | #ifdef TARGET_I386 |
... | ... | @@ -6514,6 +6516,7 @@ enum { |
6514 | 6516 | QEMU_OPTION_parallel, |
6515 | 6517 | QEMU_OPTION_loadvm, |
6516 | 6518 | QEMU_OPTION_full_screen, |
6519 | + QEMU_OPTION_no_frame, | |
6517 | 6520 | QEMU_OPTION_no_quit, |
6518 | 6521 | QEMU_OPTION_pidfile, |
6519 | 6522 | QEMU_OPTION_no_kqemu, |
... | ... | @@ -6597,6 +6600,7 @@ const QEMUOption qemu_options[] = { |
6597 | 6600 | { "loadvm", HAS_ARG, QEMU_OPTION_loadvm }, |
6598 | 6601 | { "full-screen", 0, QEMU_OPTION_full_screen }, |
6599 | 6602 | #ifdef CONFIG_SDL |
6603 | + { "no-frame", 0, QEMU_OPTION_no_frame }, | |
6600 | 6604 | { "no-quit", 0, QEMU_OPTION_no_quit }, |
6601 | 6605 | #endif |
6602 | 6606 | { "pidfile", HAS_ARG, QEMU_OPTION_pidfile }, |
... | ... | @@ -7224,6 +7228,9 @@ int main(int argc, char **argv) |
7224 | 7228 | full_screen = 1; |
7225 | 7229 | break; |
7226 | 7230 | #ifdef CONFIG_SDL |
7231 | + case QEMU_OPTION_no_frame: | |
7232 | + no_frame = 1; | |
7233 | + break; | |
7227 | 7234 | case QEMU_OPTION_no_quit: |
7228 | 7235 | no_quit = 1; |
7229 | 7236 | break; |
... | ... | @@ -7478,7 +7485,7 @@ int main(int argc, char **argv) |
7478 | 7485 | vnc_display_init(ds, vnc_display); |
7479 | 7486 | } else { |
7480 | 7487 | #if defined(CONFIG_SDL) |
7481 | - sdl_display_init(ds, full_screen); | |
7488 | + sdl_display_init(ds, full_screen, no_frame); | |
7482 | 7489 | #elif defined(CONFIG_COCOA) |
7483 | 7490 | cocoa_display_init(ds, full_screen); |
7484 | 7491 | #else | ... | ... |
vl.h
... | ... | @@ -911,7 +911,7 @@ void isa_cirrus_vga_init(DisplayState *ds, uint8_t *vga_ram_base, |
911 | 911 | unsigned long vga_ram_offset, int vga_ram_size); |
912 | 912 | |
913 | 913 | /* sdl.c */ |
914 | -void sdl_display_init(DisplayState *ds, int full_screen); | |
914 | +void sdl_display_init(DisplayState *ds, int full_screen, int no_frame); | |
915 | 915 | |
916 | 916 | /* cocoa.m */ |
917 | 917 | void cocoa_display_init(DisplayState *ds, int full_screen); | ... | ... |