| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
| |
If USE_OGL is not defined, really don't call or link in the opengl
backend.
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
|
|
|
|
| |
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
|
|
|
|
| |
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
|
| |
|
| |
|
|
|
|
| |
This is not supported currently anyway and was not generated before.
|
| |
|
|
|
|
|
|
|
| |
This is required because we don't want to free messages that just
refer to the unparsed message (like SpiceMsgData).
Also, in the future we might need it for more complex demarshalling.
|
| |
|
|
|
|
|
| |
The RGB channels are compressed using JPEG.
The alpha channel is compressed using LZ.
|
| |
|
| |
|
|
|
|
| |
I don't know why this was disabled but it seems like a bad idea
|
| |
|
|
|
|
| |
bitmaps support related)
|
| |
|
| |
|
|
|
|
|
|
| |
When a surface is sent to the client using red_send_surface_image, operations were already
performed on it. Thus it may combine, especially if it is a primary surface, both "picture-like" areas
and areas that are more "artificial". In order to avoid noticeable artifacts, such surface will be sent lossless.
|
|
|
|
| |
jpeg compression is enabled
|
|
|
|
|
|
|
| |
have been sent lossy.
The code also handles cases in which the server doesn't hold anymore these surfaces parts, i.e., when
it holds a more updated version of them. This scenario is handled by replacing commands that were rendered, with images.
|
| |
|
| |
|
|
|
|
|
|
| |
1) add an option to determine if a bitmap can be sent lossy to the client
2) when required, replacing lossy cache items with their correspending
lossless bitmaps
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
severty -> severity
SpiceResorceID -> SpiceResourceID
SpiceResorceList -> SpiceResourceList
resorces -> resources
ped_size -> pad_size
postition -> position
|
| |
|
| |
|
|
|
|
| |
move over content to spice.h
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add worker->loadvm_commands. qemu will uses this to send a series of
commands needed to restore state after savevm/loadvm and migration.
That will be one create-surface command per surface and one cursor-set
command for the local pointer.
The worker->save/load functions are not needed any more.
Likewise the interface->{get,set}_save_data callbacks.
Surfaces created via loadvm_commands *will* not be cleared. Also
primary surfaces are not cleared any more (unconditionally, although
we could do that conditionally on loadvm using the flags field in
QXLSurfaceCreate).
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch applied the spice server will not release surface create
commands for the whole lifecycle of the surface. When the surface is
destroyed both create and destroy commands are released.
This has the effect that the surface metadata (size, depth, ...) is kept
in qxl device memory. This in turn makes it alot easier for qemu to
handle savevm/loadvm. It just needs to do some minimal command parsing
and maintain pointers to the create commands for the active surfaces.
|
| |
|
|
|
|
|
| |
Cyclic dependencies between surfaces mustn't occur. They can cause invalid rendering -
recent drawables might be rendered before older ones.
|
|
|
|
|
| |
The command line option is renamed from "cairo" to "sw", and
similarly all filenames and types from Cairo to Sw (and similar).
|
|
|
|
|
| |
The framebuffer is not used as a source for alpha blends, so we never
need to scan it for alpha bytes.
|
|
|
|
|
|
|
|
| |
Adds sanity check to iovec setup. In theory this should never ever
trigger. In practice guest driver bugs can make it trigger. This
patch avoids qemu burning cpu in a endless loop, instead we'll print a
message and abort. Not sure whenever there is a more graceful way to
handle the situation ...
|
| |
|
| |
|
|
|
|
|
| |
If we don't then alpha is lost which is problematic if the surface
is later used as with alpha_blend and SRC_SURFACE_HAS_ALPHA.
|
| |
|
|
|
|
|
|
|
|
| |
Surface creation now specifies the exact format, not only the bit depth
of each surface which is used for rendering.
Additionally we now actually store the surfaces in that format, instead
of converting everything to 32bpp when drawing or e.g. handling palettes.
|
|
|
|
|
|
|
|
|
|
|
| |
We now support 16bit format pixmaps as well as the old ones. Including
both 555 and 565 modes.
We drop the palette argument for pixmap construction as it was only
used for black/white anyway.
Canvas creation is simplified so that there is no separate set_mode
state. Canvases are already created in the right mode and never change.
|
|
|
|
|
|
|
|
| |
The new command return dirty area to be used
by users that want spice to render localy or
into some framebuffer (sdl / vnc)
Signed-off-by: Izik Eidus <ieidus@redhat.com>
|
| |
|