Each subdir (common, client and server) can "make dist".
This commit adds configure.ac.shared and autogen.sh to the tar file.
Above files are copied from .. (spice/ directory)
Also added configure.ac.shared (which is not part of "distribution" tarball)
that only imports ../configure.ac.shared such that ./autogen.sh still
works (on "git directories").
Signed-off-by: Uri Lublin <uril@redhat.com>
The follwing files exist in client directory but not in RED_COMMON_SRCS,
thus they are not part of distribution tarball (make dist).
Adding them fixes building the spice client out of a distribution tarball.
Those files are:
icon.h
process_loop.h
red_gdi_canvas.cpp
red_gdi_canvas.h
red_pixmap_gdi.h
gdi_canvas.cpp
Similarly, the following files were added to spicec_SOURCES in
client/x11/Makefile.am:
event_sources_p.h
We compile with -I$(COMMON_DIR) (which currently is ../common), so there is
no need for that.
Later we would like to be able to have a different COMMON_DIR.
Signed-off-by: Uri Lublin <uril@redhat.com>
Replace all "$(top_srcdir)/common" with "$(SPICE_COMMON_DIR)"
and all "$(top_srcdir)/client" with ".." (relative to x11)
This would (after following patches) enables building the client from
either spice/ (top directory) or spice/client.
Signed-off-by: Uri Lublin <uril@redhat.com>
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
-move _focused & _pointer_in_window from RedWindow to RedWindow_p's
-move shadow focus & cursor handling to sync()
-add reset_cursor_pos() to Platform
-Monitor set_mode()/restore() use virtual do_set_mode()/do_restore()
Beacuse that XShem internal checks wont fail when using the spice client
from remote, we are adding check on the socket family to see if it is
unix domain socket and fail in case it is not.
Signed-off-by: Izik Eidus <ieidus@redhat.com>
Additional changes that were required for the feature:
1) focusing on the pointed window in full screen mode
2) In X11 - handling events that occur during keyboard ungrabbing
3) In X11 - handling Leave/Enter Notify events that occur during keyboard grabbing/ungrabbing
4) In X11 - fix for focus events that are handled in the wrong order (happens when
focus events occur during grabbing the keyboard)
5) In X11 - ignoring key release events during key holding
6) In Windows - synchronizing keyboard release events that occured during a modal loop
The process loop is responsible for: 1) waiting for events 2) timers 3) events queue for
actions that should be performed in the context of the thread and are pushed from other threads.
The benefits:
1) remove duplicity: till now, there was one implementaion of events loop for the channels and
another one for the main thread.
2) timers can be executed on each thread and not only on the main thread.
3) events can be pushed to each thread and not only to the main thread.
In this commit, only the main thread was modified to use the new process loop.