Alexander Larsson
5cd86fc45d
Update client and protocol to support the new SpiceClipRects
2010-06-30 22:35:16 +02:00
Alexander Larsson
bb85131765
demarshaller: Support @c_ptr attributes for pointers
...
A @c_ptr pointer is stored in memory as a real pointer rather than a
SPICE_ADDRESS. This is a temporary thing that will be removed again
when all SPICE_ADDRESSes have been converted to real pointer.
2010-06-30 22:35:16 +02:00
Alexander Larsson
a93351f367
demarshaller: Don't parse @zero members
...
These just write zeros at the right place in the network protocol
typically for old back-compat things. We don't want to read these
back in.
2010-06-30 22:35:16 +02:00
Gerd Hoffmann
f87f63fdf5
qxl-abi: handle clip rect and path references.
...
red_parse_qxl.c starts to follow QXLPHYSICAL references and build up
data structures. Can zap a bunch of get_virt calls in red_worker.c,
followed by cleanups.
(de-) marshaller needs updates to deal with that. Also I suspect with
the get_virt() calls being gone we can offload more work to generated
marshaller code.
client doesn't build.
2010-06-30 22:34:57 +02:00
Gerd Hoffmann
905c6283d5
add qxl chunk parser
2010-06-30 22:34:47 +02:00
Alexander Larsson
7627fba05d
server: Don't call opengl if not enabled
...
If USE_OGL is not defined, really don't call or link in the opengl
backend.
2010-06-29 18:32:20 +02:00
Yonit Halperin
59152e31f0
client: add --include "common.h" for generated marshallers
2010-06-29 13:59:46 +02:00
Yonit Halperin
270a1e6df3
fixed unhandled destroy screen in Application:restore_screens_size
2010-06-29 13:59:46 +02:00
Yonit Halperin
3ca28ddf28
detaching the screen when the primary surface is destoryed and closing the window if the primary surface is not recreated (the monitor has been detached).
2010-06-29 13:59:46 +02:00
Yonit Halperin
8d21bce435
remove unnecessary send of SPICE_MSG_DISPLAY_RESET
...
when SPICE_MSG_DISPLAY_RESET was sent, SPICE_MSG_DISPLAY_SURFACE_DESTROY had already
been sent for all surfaces.
It also caused a client crash since DisplayChannel::handle_reset assumes that screen
exists.
2010-06-29 13:59:46 +02:00
Gerd Hoffmann
58c23b6686
qxl abi: parse QXLRect.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
4fb61b9aa5
qxl abi: parse QXLPoint & friends.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
e7ec85a08f
qxl abi: parse QXLCursorCmd.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
e03e4f0fc9
qxl abi: parse QXLSurfaceCmd.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
5de492e930
qxl abi: parse QXLMessage.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
fada35a173
qxl abi: parse QXLUpdateCmd.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
b081ec4b04
qxl abi: parse QXLClip.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
948806b583
qxl abi: parse QXLLineAttr.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
49f77eec2e
qxl abi: parse QXLPattern.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
4de61f2dd8
qxl abi: parse QXLBrush.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
45ba74c795
qxl abi: parse QXLQMask.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
387f80422f
qxl abi: parse QXLBlackness+QXLInvers+QXLWhiteness.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
21fffa15e1
qxl abi: parse QXLText.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
b39b130a84
qxl abi: parse QXLStroke.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
c26b574b40
qxl abi: parse QXLRop3.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
dffb0401e7
qxl abi: parse QXLTransparent.
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
e81c6ef7c4
qxl abi: parse QXLCopy + QXLBlend.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:20 +02:00
Gerd Hoffmann
63e07be145
qxl abi: add missing QXLCopyBits
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
08cfd6beaf
qxl abi: parse QXLOpaque.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
ef3e20e29f
qxl abi: parse QXLFill.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
85155b3f44
qxl abi: parse QXLAlphaBlnd (+Compat)
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
856e2ba355
qxl abi: parse QXLCompatDrawable.
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
11034dda42
qxl abi: parse QXLDrawable.
2010-06-29 12:30:19 +02:00
Gerd Hoffmann
c17fdfd053
improve memory slot error logging.
2010-06-29 12:30:19 +02:00
Alexander Larsson
7e26ff3c26
Replace log4cpp with custom log function
...
Also prints a simpler error to stderr for WARN or above so that
we print something on the commandline if something go wrong.
2010-06-28 21:54:53 +02:00
Alexander Larsson
b08b80d13f
Fix build error due to member "SpiceMsgEmpty" same name as type
2010-06-28 12:45:07 +02:00
Alexander Larsson
897e5633c2
spice.proto: surface_create.format is of type surface_fmt
2010-06-24 14:33:06 +02:00
Alexander Larsson
7a9c42704f
Use smaller size for enums and flags on the network
...
This makes the protocol more compact. This was mainly done for the commonly
used types. Some seldom used ones are still 32bit for future compatibility.
2010-06-24 14:31:01 +02:00
Alexander Larsson
9655dc30e9
Remove support for clip by path
...
This is not supported currently anyway and was not generated before.
2010-06-24 14:30:00 +02:00
Alexander Larsson
9c504f23ef
spice.proto: No need for @ptr32 as that is now the default
2010-06-23 16:35:09 +02:00
Alexander Larsson
054c88b125
spice.proto: Don't use @fixedsize for Brush
...
There is no reason to send the maximum size on the network, that is just
a waste of space most of the time.
2010-06-23 16:33:07 +02:00
Alexander Larsson
0c0b4f9e84
Don't send zero data item for clips with no data
2010-06-23 16:33:07 +02:00
Alexander Larsson
dc8625c7e1
Make pointers 32bit in new protocol format
2010-06-23 16:33:07 +02:00
Alexander Larsson
929245bacd
marshaller: Correctly determine if switches are fixed size
...
Switches are fixed size only if all cases have the same size *and*
it has a default case or all the valid cases are listed.
2010-06-23 16:33:07 +02:00
Alexander Larsson
06fe6a91c2
Fix handling of @ptr32 network size
2010-06-23 16:33:07 +02:00
Alexander Larsson
10c16b3c82
Remove minor markup in unstable protocol as we're resetting minor to 0
2010-06-23 16:33:07 +02:00
Gerd Hoffmann
899a9df0e6
fix use-after-free in spice_marshaller_reset
2010-06-23 13:49:21 +02:00
Gerd Hoffmann
b6efc72001
drop bogous get_virt_delta calls
2010-06-23 13:49:21 +02:00
Alexander Larsson
eb3fe11d94
Fix version mismatch error on connect
...
Protocol is 0 (auto), 1 (old), or 2 (new). This is (apart from 0) the
same as the major number for the stable protocol. However, the current major
is ~(-1) to signify it being unstable, so don't use the major number as source
for setting or comparing protocol.
2010-06-23 12:18:41 +02:00
Alexander Larsson
f35ac2049a
Fix screen resolution changes on old servers
...
* Correctly check for existing canvas 0
* Don't try to unlock the screen size if there is no active screen
2010-06-23 11:37:01 +02:00