summaryrefslogtreecommitdiffstats
path: root/ui
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote branch 'spice/bugfix.2' into stagingAnthony Liguori2010-11-163-17/+17
|\
| * spice-display: replace private lock with qemu mutex.Gerd Hoffmann2010-11-022-14/+14
| | | | | | | | | | | | | | | | | | | | | | qemu_spice_create_update() must aquire the global qemu mutex to make sure DisplayState doesn't change while we are accessing it. Once this is in place the private lock is pretty pointless as everything it protects is covered by the global qemu mutex now. Drop it. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * spice-core: fix warning when building with spice < 0.6.0Gerd Hoffmann2010-11-021-2/+2
| | | | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * spice-core: fix watching for write eventsHans de Goede2010-11-021-1/+1
| | | | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
* | spice: add audioGerd Hoffmann2010-11-092-0/+2
|/ | | | | | | | | | | | | | | | | | | Add support for the spice audio interface. With this patch applied audio can be forwarded over the network from/to the spice client. Both recording and playback is supported. The driver is first in the driver list, but the can_be_default flag is set only in case spice is active. So if you have the spice protocol enabled the spice audio driver is the default one, otherwise whatever comes first after spice in the list. Overriding the default using QEMU_AUDIO_DRV works in any case. [ v2: audio codestyle: add spaces before open parenthesis ] [ v2: add const to silence array ] Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Cc: malc <av1474@comtv.ru> Signed-off-by: malc <av1474@comtv.ru>
* Merge remote branch 'spice/config.2' into stagingAnthony Liguori2010-11-011-6/+202
|\
| * spice: add misc config optionsGerd Hoffmann2010-10-081-1/+28
| | | | | | | | | | This patch adds a few more options to tweak spice server behavior. The documentation update chunk has the details ;)
| * spice: add config options for the listening addressGerd Hoffmann2010-10-081-2/+11
| | | | | | | | | | Make listening address configurable. Also add options to force using IPv4 or IPv6.
| * spice: add config options for channel security.Gerd Hoffmann2010-10-081-0/+28
| | | | | | | | | | | | | | This allows to enforce tls or plaintext usage for certain spice channels. [ v2: code style fixup ]
| * spice: make compression configurable.Yonit Halperin2010-10-081-2/+75
| | | | | | | | | | | | | | This patch adds options to the -spice command line switch to configure image compression. [ v2: speling fix in the documentation ]
| * spice: tls supportGerd Hoffmann2010-10-081-4/+63
| | | | | | | | Add options to the -spice command line switch to setup tls.
* | Replace remaining gcc format attributes by macro GCC_FMT_ATTR (format checking)Stefan Weil2010-10-221-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Replace the remaining format attribute printf by macro GCC_FMT_ATTR which uses gnu_printf (if supported). v2 * Removal of dyngen specific code is now done in a separate patch. * Handle attribute in new ui/spice-display.c, too. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* | curses: Fix control-{@[\]^_} and ESCSamuel Thibault2010-10-212-3/+7
| | | | | | | | | | | | | | | | control-{@[\]^_} shouldn't get the 'a' - 'A' offset for correct translation. ESC is better simulated as escape key. Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Signed-off-by: Andrew Zaborowski <balrogg@gmail.com>
* | vnc: avoid write only variablesBlue Swirl2010-10-131-0/+8
|/ | | | | | | | | | | | | Compiling with GCC 4.6.0 20100925 produced warnings: /src/qemu/ui/vnc.c: In function 'vnc_client_cache_auth': /src/qemu/ui/vnc.c:217:12: error: variable 'qdict' set but not used [-Werror=unused-but-set-variable] /src/qemu/ui/vnc.c: In function 'vnc_display_open': /src/qemu/ui/vnc.c:2526:9: error: variable 'acl' set but not used [-Werror=unused-but-set-variable] Fix by making the variable declarations and their uses also conditional to debug definition. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Merge remote branch 'spice/submit.6' into stagingAnthony Liguori2010-10-055-0/+928
|\ | | | | | | | | | | | | Conflicts: configure Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * spice: add tablet supportGerd Hoffmann2010-09-212-8/+88
| | | | | | | | | | | | | | Add support for the spice tablet interface. The tablet interface will be registered (and then used by the spice client) as soon as a absolute pointing device is available and used by the guest, i.e. you'll have to configure your guest with '-usbdevice tablet'.
| * spice: simple displayGerd Hoffmann2010-09-213-0/+482
| | | | | | | | | | | | | | | | | | With that patch applied you'll actually see the guests screen in the spice client. This does *not* bring qxl and full spice support though. This is basically the qxl vga mode made more generic, so it plays together with any qemu-emulated gfx card. You can display stdvga or cirrus via spice client. You can have both vnc and spice enabled and clients connected at the same time.
| * spice: add mouseGerd Hoffmann2010-09-211-0/+52
| | | | | | | | | | Open mouse channel. Now you can move the guests mouse pointer. No tablet / absolute positioning (yet) though.
| * spice: add keyboardGerd Hoffmann2010-09-213-0/+88
| | | | | | | | | | | | Open keyboard channel. Now you can type into the spice client and the keyboard events are sent to your guest. You'll need some other display like vnc to actually see the guest responding to them though.
| * spice: core bitsGerd Hoffmann2010-09-212-0/+226
| | | | | | | | | | | | Add -spice command line switch. Has support setting passwd and port for now. With this patch applied the spice client can successfully connect to qemu. You can't do anything useful yet though.
* | Fix spelling in commentsStefan Weil2010-10-051-1/+1
|/ | | | | | | multifuction -> multifunction successfull -> successful. Signed-off-by: Stefan Weil <weil@mail.berlios.de>
* vnc: use bswapNN() rather than bswap_NN()Izumi Tsutsui2010-09-041-4/+4
| | | | | | | | bswap_NN() variants are not always available in CONFIG_MACHINE_BSWAP_H case and bswapNN() are public APIs in "bswap.h". Signed-off-by: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* vnc: tight: remove unused variableSerge Ziryukin2010-09-041-2/+0
| | | | | Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* size_t is unsigned, change to ssize_t to handle errors from ↵Jes Sorensen2010-09-041-4/+4
| | | | | | | tight_compress_data() Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* vnc: check fd before calling qemu_set_fd_handler2() in vnc_client_write()Yoshiaki Tamura2010-08-221-1/+1
| | | | | | | | Setting fd = -1 to qemu_set_fd_handler2() causes bus error at FD_SET in main_loop_wait(). Signed-off-by: Yoshiaki Tamura <tamura.yoshiaki@lab.ntt.co.jp> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* win32: Avoid compiler warning (WIN32_LEAN_AND_MEAN redefined)Stefan Weil2010-08-151-0/+4
| | | | | | | | | | | | | | | | configure adds the macro WIN32_LEAN_AND_MEAN to QEMU_CFLAGS, and SDL_syswm.h defines it, too. This results in a compiler warning (redefinition of WIN32_LEAN_AND_MEAN in SDL_syswm.h. That warning prevents compilations for win32 with warning = error). Fix this by removing the definition of WIN32_LEAN_AND_MEAN before including SDL_syswm.h. [blauwirbel@gmail.com: rebased] Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Initialize a variable in all casesBlue Swirl2010-07-311-0/+2
| | | | | | | Commit d167f9bc06a577d6c85b8ed6991c1efe175aae7d missed this one: /src/qemu/ui/vnc-enc-tight.c:1483: warning: 'ret' may be used uninitialized in this function Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Fix uint8_t comparison with negative valueBlue Swirl2010-07-311-1/+1
| | | | | | | | Commit 7bccf57383cca60a778d5c543ac80c9f62d89ef2 missed this one: /src/qemu/ui/vnc-enc-tight.c: In function 'send_sub_rect': /src/qemu/ui/vnc-enc-tight.c:1527: warning: comparison is always true due to limited range of data type Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Fix mingw32 buildBlue Swirl2010-07-271-9/+9
| | | | | | | | | | Fix mingw32 build errors like /src/qemu/ui/vnc-enc-tight.c: In function 'tight_detect_smooth_image24': /src/qemu/ui/vnc-enc-tight.c:119: error: 'uint' undeclared (first use in this function) Replace 'uint' with proper 'unsigned int'. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Initialize a variable in all casesBlue Swirl2010-07-271-0/+2
| | | | | | | | Fix a warning with some GCCs: /src/qemu/ui/vnc-enc-tight.c: In function `send_sub_rect_nojpeg': /src/qemu/ui/vnc-enc-tight.c:1458: warning: `ret' might be used uninitialized in this function Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Fix uint8_t comparisons with negative valuesBlue Swirl2010-07-271-3/+3
| | | | | | | | | | | | | | | | Fix the following warnings: /src/qemu/hw/ide/core.c: In function `ide_drive_pio_post_load': /src/qemu/hw/ide/core.c:2767: warning: comparison is always false due to limited range of data type /src/qemu/ui/vnc-enc-tight.c: In function `tight_detect_smooth_image': /src/qemu/ui/vnc-enc-tight.c:284: warning: comparison is always true due to limited range of data type /src/qemu/ui/vnc-enc-tight.c:297: warning: comparison is always true due to limited range of data type /src/qemu/ui/vnc-enc-tight.c: In function `tight_encode_indexed_rect16': /src/qemu/ui/vnc-enc-tight.c:456: warning: comparison is always false due to limited range of data type /src/qemu/ui/vnc-enc-tight.c: In function `tight_encode_indexed_rect32': /src/qemu/ui/vnc-enc-tight.c:457: warning: comparison is always false due to limited range of data type Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* vnc: tight: split send_sub_rectCorentin Chary2010-07-261-25/+55
| | | | | | | | Split send_sub_rect in send_sub_rect_jpeg and send_sub_rect_nojpeg to remove all these #ifdef CONFIG_JPEG. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight: fix rgb_prepare_rowCorentin Chary2010-07-261-5/+10
| | | | | | | | rgb_prepare_row bpp depends on the server display surface, not the client. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: add missing lock for vnc_cursor_define()Corentin Chary2010-07-261-0/+2
| | | | | | | | All vnc_write() calls must be locked (except the ones present before the protocol initialization). Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: threaded VNC serverCorentin Chary2010-07-265-25/+663
| | | | | | | | | | | | | | | | | Implement a threaded VNC server using the producer-consumer model. The main thread will push encoding jobs (a list a rectangles to update) in a queue, and the VNC worker thread will consume that queue and send framebuffer updates to the output buffer. The threaded VNC server can be enabled with ./configure --enable-vnc-thread. If you don't want it, just use ./configure --disable-vnc-thread and a syncrhonous queue of job will be used (which as exactly the same behavior as the old queue). If you disable the VNC thread, all thread related code will not be built and there will be no overhead. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: fix tight png memory leakCorentin Chary2010-07-261-0/+3
| | | | | | | The tight.png buffer was never released. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: encapsulate encoding membersCorentin Chary2010-07-265-156/+163
| | | | | | | | This will allow to implement the threaded VNC server in a more cleaner way. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight: stop using qdict for palette stuffCorentin Chary2010-07-263-128/+234
| | | | | | | | | | | | | Profiling with callgrind seems to show that a lot of time is spent in the palette code (mostly due to memory allocation and qdict to int conversion). This patch adds a VncPalette implementation. The palette is stored in a hash table, like qdict, but which does way less memory allocations, and doesn't suffer from the QObject overhead. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight: specific zlib level and filters for each compression levelCorentin Chary2010-07-261-1/+18
| | | | | | | | | | | | | | Disable png filters for lower compression levels. This should lower the CPU consumption and reduce encoding time. This isn't in tight_conf because: * tight_conf structure must not change, because it's shared with other tight implementations (libvncserver, etc..). * it'd exceed the 80 col limit. * PNG_ macros are only defined if CONFIG_VNC_PNG is defined Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight add PNG encodingCorentin Chary2010-07-264-54/+304
| | | | | | | | | | | | | | | | | Introduce a new encoding: VNC_ENCODING_TIGHT_PNG [1] (-269) with a new tight filter VNC_TIGHT_PNG (0x0A). When the client tells it supports the Tight PNG encoding, the server will use tight, but will always send encoding pixels using PNG instead of zlib. If the client also told it support JPEG, then the server can send JPEG, because PNG will only be used in the cases zlib was used in normal tight. This encoding was introduced to speed up HTML5 based VNC clients like noVNC [2], but can also be used on devices like iPhone where PNG can be rendered in hardware. [1] http://wiki.qemu.org/VNC_Tight_PNG [2] http://github.com/kanaka/noVNC/ Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight: remove a memleak in send_jpeg_rect()Corentin Chary2010-07-261-2/+3
| | | | | | | buf was never freed. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: tight: don't forget do at the last colorCorentin Chary2010-07-261-1/+1
| | | | | | | | While using indexed colors, the last color was never added to the palette. Triggered with ubuntu livecd. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* vnc: rename vnc-encoding-* vnc-enc-*Corentin Chary2010-07-265-7/+7
| | | | | | | | For the same reason that we don't use vnc-authentication-sasl.c but vnc-auth-sals.c. Because it's tooooo long. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* ui: move all ui components in ui/Corentin Chary2010-07-2628-0/+11355
Move sdl, vnc, curses and cocoa UI into ui/ to cleanup the root directory. Also remove some unnecessary explicit targets from Makefile. aliguori: fix build when srcdir != objdir Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
OpenPOWER on IntegriCloud