summaryrefslogtreecommitdiffstats
path: root/client/application.cpp
Commit message (Collapse)AuthorAgeFilesLines
* client: skip spaces in --host-subjectChristophe Fergeau2011-04-181-1/+8
| | | | | | | | | | | | | | | | | | This fixes fdo bug #32896: "Subject in certificates is stored in following format (values separated by comma and space): grep Subject: server-cert.pem | awk -F": " '{print $2}' O=REDHAT, CN=10.34.58.2 While spicec expects that values in host subject are separated only by comma: spicec --host-subject "O=REDHAT,CN=10.34.58.2" " In this case, ignoring spaces make it much easier to directly copy and paste the subject line from certificates.
* client: add --version cmdline option to spicecChristophe Fergeau2011-04-181-1/+9
| | | | This fixes freedesktop bug #33907
* client: s/AVAILIBLE/AVAILABLE in CmdLineParserChristophe Fergeau2011-04-181-1/+1
| | | | It was mispelt in a CmdLineParser enum.
* client: Don't handle hotkeys while sticky alt is activeHans de Goede2011-03-111-4/+6
| | | | | | | | | | | | | | | | | In some cases rhev-m changes the hotkey for releasing the mouse grab to ctrl + alt. This makes it impossible to send ctrl + alt + other-key to the guest, even when using sticky alt. What happens is: -press alt until sticky alt activates -release alt (but recorded state stays pressed due to sticky alt) -press ctrl -hotkey code sees ctrl+alt pressed, releases mouse grab -mouse grab release code does an unpress all -> end of sticky state. This patch makes it possible to atleast send ctrl + alt + del (or other key) using sticky alt. Note: even with this patch it is still a bad idea to use ctrl + alt as hotkey combi.
* client/smartcard: handle the --smartcard-db optionAlon Levy2011-03-081-1/+4
|
* client: fix broken vs2008 buildAlon Levy2011-01-271-2/+0
|
* client: --help should not need platform initializationAlon Levy2011-01-271-32/+58
| | | | | | separate initialization into before command line parsing and after, call later only if command line parsing succeeds (in particular, it "fails" if --help is given).
* client/server: add missing USE_TUNNELAlon Levy2011-01-251-0/+4
| | | | | disable some code that only makes sense when USE_TUNNEL is defined in client and server channel security level setting.
* client/server: add missing smartchannel channel security handlingAlon Levy2011-01-251-0/+6
| | | | | The name to channel id mapping for the smartcard channel is missing, add it in client and server.
* spicec: Remove spice-client watermark (rhbz#662450)Hans de Goede2010-12-161-19/+2
| | | | | | | | This patch stops us from drawing the spice client watermark at the top of the virtual machine view. We have had requests through several channels to remove this as it has little added value, and is seen as annoying by some. Given that we now also have a bugzilla for this I think it is time we really remove it.
* spicec: Add a --title cmdline option (rhbz#662452)Hans de Goede2010-12-161-0/+6
|
* mingw32 build: use PRIu64 instead of llAlon Levy2010-12-081-2/+6
|
* mingw32 build: fix signed/unsigned warnings as errorsAlon Levy2010-12-081-2/+2
|
* smartcard: client: add keyboard shortcuts for remove/insert virtual cardAlon Levy2010-12-071-0/+20
|
* smartcard: client side (not enabled yet)Alon Levy2010-12-071-0/+45
|
* spicec: Don't show a white screen if guest resolution does not fit fullscreenHans de Goede2010-11-251-0/+30
| | | | | | | | | | | Currently when going / starting fullscreen if the guest resolution for one of the monitors is higher then that monitor on the client can handle, we show a white screen. Leaving the user stuck (unless they know the fullscreen key switch combi) with a white screen when starting the client fullscreen from the XPI. This patch changes the client to fall back to windowed mode in this case instead.
* spicec: Don't show gui when connection info is specified on the cmdlineHans de Goede2010-11-091-6/+4
| | | | | | | | Currently when compiled with the gui enabled if you specify a host to connect to on the cmdline the gui flashes by (show_gui gets called, then the connect handler calls hide_gui as soon as the connection is made). This patch removes this ugly flashing by of the gui.
* spicec: Remove empty show / hide gui functionsHans de Goede2010-11-091-0/+4
| | | | | | When compiling without gui support just don't call show / hide gui, rather then making them stubs, this makes it easier to follow what is going on.
* spicec: Fix info layer sometimes not showingHans de Goede2010-11-091-0/+1
| | | | | | | | | | | | | | | | | Currently we are calling show_info_layer from hide_gui in application.cpp, but there are 2 cases where this does not happen: 1) When compiled without gui support hide_gui is a complete nop, so we never show the info layer when compiled without gui support 2) When run with --controller we never show the gui, and hide_gui checks if there is a gui to hide as the first thing and if not returns resulting in show_info_layer not being called, and thus the info layer not showing when launched from the xpi This patch fixes both by adding a call to show_info_layer from on_visibility_start note that on_visibility_start also calls hide_gui, so in some cases show_info_layer may be called twice, this is not a problem as show_info_layer is protected against this.
* client: Interpret the title control message as utf8 instead of unicode16Hans de Goede2010-10-211-2/+2
| | | | | | | The activex browser plugin is sending unicode16 text, where as the xpi one is sending utf8 text. After discussing this on irc we've decided that utf8 is what we want to use. So the client (this patch), and the activex will be changed to expect resp. send utf8 text as the title.
* Make the gui use Application::hide_gui rather then hide_meHans de Goede2010-10-181-2/+0
| | | | | | | | Now that Application::hide_me actually does what the name suggests (hide the entire client, ie all client windows), the gui using it to not show the gui layer leads to the entire client disappearing when one presses close in the GUI or dismisses a GUI dialog. This patch makes the GUI code call hide_gui instead of hide_me, fixing this.
* client: change monitor mode setting <-> fullscreen window mode setting orderHans de Goede2010-10-181-2/+2
| | | | | | | | | | | 1) Make the order when starting up in fullscreen mode the same as when switching from window -> fullscreen: First set the mode, then make the window fullscreen 2) Change the order when leaving fullscreen mode, first restore the original monitor mode, then make the window non fullscreen. Changing the monitor mode in X11 causes the window manager to re-arrange windows, and if this happens while compiz is busy mapping the window it gets confused and maps the window with a maxmimized size.
* spicec: add controllerArnon Gilboa2010-10-181-30/+115
| | | | | | | | | | | Spice client controller enables external control (e.g., by XPI or ActiveX) of the client functionality. The controller protocol enables setting parameters (host, port, sport, pwd, secure channels, disabled channels, title, menus, hotkeys etc.), connecting the server, showing and hiding the client etc. The controller is based on the cross-platform named pipe.
* spicec: add foreign menuArnon Gilboa2010-10-181-3/+71
| | | | | | | | | Spice foreign menu enables external control of the client menu. The foreignmenu protocol enables an external application to: add a submenu, set its title, clear it, add/modify/remove an item etc. Foreign menu is based on the cross-platform named pipe.
* client: support clipboard/selection-owner model (v2)Arnon Gilboa2010-10-011-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | -includes most of Hans' review fixes (up to the SelectionRequest comment [4]) & X11 wips sent by Hans (10x!) -use the VD_AGENT_CLIPBOARD_* types in the platform code -add ifs for VD_AGENT_CAP_CLIPBOARD_BY_DEMAND in both sides -support the GRAB/REQUEST/DATA/RELEASE verbs in both ways -pasting clipboard data is now "only-by-demand" from both sides (client and agent), whose behavior is symmetric -client and agent don't read or send the contents of the clipboard unnecessarily (e.g. copy, internal paste, repeating paste, focus change) -set client as clipboard listener instead of application -add atexit(cleanup) in win platform linux: -instead of clipboard atom selection instead of XA_PRIMARY -enable USE_XRANDR_1_2 and support clipboard in MultyMonScreen -send utf8 with no null termination, remove ++size -add xfixes in configure.ac & Makefile.am windows: -bonus: support image cut & paste, currently only on windows not done yet: -clipboards formats are still uint32_t, not mime types stores as strings -platform_win is still used, not the root window -not replaced the ugly windows CF_DIB in agent/winclient
* client: Include config.h from common.hAlexander Larsson2010-09-291-4/+0
| | | | | config.h should be availible everywhere, so move its inclusion to the top of common.h.
* Fix warning from OSX compilerAlexander Larsson2010-09-291-4/+1
| | | | | The OSX compiler warns about uninitialized variable, so we change a bit how size is initialized.
* client: fix - exit on bad display-effect argumentYonit Halperin2010-08-231-0/+2
|
* client: Application::get_screen: fix double SpicePoint size, second hiding ↵Alon Levy2010-07-291-1/+1
| | | | the first
* client: add clipboard supportArnon Gilboa2010-07-191-0/+6
| | | | | | | | * windows - untested * linux - small strings both ways, large implemented differently: * client to guest - support INCR * guest to client - we supply a single possibly very large property * requires server changes in next patch to work with spice-vmc
* client: command line arguments for setting windows guest monitors'Yonit Halperin2010-07-191-0/+57
| | | | color depth and disabling some display options (helpful on WAN)
* Make tunnel support optional in client tooAlexander Larsson2010-07-081-0/+4
|
* Make CEGUI optionalAlon Levy2010-07-011-38/+84
| | | | | This makes the CEGUI dependency optional and off by default. Restoring previous behaviour of exiting on disconnect if disabled.
* client: Use ASSERT, not assertAlexander Larsson2010-07-011-1/+1
|
* fixed unhandled destroy screen in Application:restore_screens_sizeYonit Halperin2010-06-291-1/+1
|
* Replace log4cpp with custom log functionAlexander Larsson2010-06-281-19/+72
| | | | | Also prints a simpler error to stderr for WARN or above so that we print something on the commandline if something go wrong.
* Fix spelling errors in comments and stringsAlexander Larsson2010-05-211-3/+3
|
* Revert "[debug] migration troubleshooting"Gerd Hoffmann2010-05-191-1/+1
| | | | This reverts commit 08927fabe57c17086fe3bce3a9ca166e2309349e.
* [debug] migration troubleshootingGerd Hoffmann2010-05-191-1/+1
|
* Remove all mentions of "cairo" from the codeAlexander Larsson2010-05-031-4/+4
| | | | | The command line option is renamed from "cairo" to "sw", and similarly all filenames and types from Cairo to Sw (and similar).
* Relicense everything from GPL to LGPL 2.1+Alexander Larsson2010-04-131-9/+9
|
* client: handling SPICE_MSG_MAIN_MIGRATE_SWITCH_HOSTYonit Halperin2010-04-061-1/+41
| | | | disconnecting from the current host and connecting to the target host.
* client: add command line support for ciphers, ca file, and host certificate ↵Yonit Halperin2010-03-181-5/+91
| | | | subject
* Remove no longer needed CAIRO_CANVAS_CACH_IS_SHARED define and codeAlexander Larsson2010-02-231-8/+0
|
* Replace custom region implementation with pixman_region32_tAlexander Larsson2010-02-231-5/+15
| | | | | | pixman_region32_t is an efficient well tested region implementation (its the one used in X) that we already depend on via pixman and use in some places. No need to have a custom region implementation.
* Rename symbols that were changed in spice-protocolAlexander Larsson2010-02-041-35/+35
| | | | | | This is an automatic change using: $ find -name "*.[ch]" | xargs ../spice-protocol/rename-identifiers.sh ../spice-protocol/renames $ find -name "*.cpp" | xargs ../spice-protocol/rename-identifiers.sh ../spice-protocol/renames
* client: add Platform::term_printfYaniv Kamay2010-01-111-28/+38
| | | | | | Platform::term_printf is a variant of printf that on windows dynamically opens console in order to have visible output during command line processing.
* client: fix logger init mix-upYaniv Kamay2010-01-111-3/+3
|
* client: move log file to spicec appdata dirYaniv Kamay2010-01-111-5/+9
|
* server,client: server authentication for secured channels.Yonit Halperin2010-01-111-2/+8
| | | | | | | | | 3 available mechanisms: by public key, by host name, and by certificate subject name. In the former method, chain of trust verification is not performed. The CA certificate files are looked for under <spice-config-dir>/spice_truststore.pem windows <spice-config-dir>=%APPDATA%\spicec\ linux <spice-config-dir>=$HOME/.spicec/