Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Support alpha surface sources and destinations | Alexander Larsson | 2010-04-23 | 3 | -18/+99 |
| | |||||
* | Localize palettes for LZ PLT format | Alexander Larsson | 2010-04-23 | 1 | -3/+45 |
| | | | | This is needed since they always decode to 32bit mode. | ||||
* | Make each surface its own depth/format | Alexander Larsson | 2010-04-23 | 5 | -295/+242 |
| | | | | | | | | 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. | ||||
* | Make client canvas and pixmaps handle more formats and simplify | Alexander Larsson | 2010-04-23 | 8 | -12/+110 |
| | | | | | | | | | | | 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. | ||||
* | common: Add lookaside storage for pixman image format | Alexander Larsson | 2010-04-23 | 2 | -1/+38 |
| | | | | | Ideally we should just read this from the pixman image, but there is no API to do so in stable pixman, so we store it. | ||||
* | Add pixman utilities for bitmap to pixman_image_t conversion | Alexander Larsson | 2010-04-23 | 2 | -58/+775 |
| | |||||
* | Add support for 16bit rop3 | Alexander Larsson | 2010-04-23 | 1 | -32/+75 |
| | |||||
* | Remove unused method canvas_surf_to_invers | Alexander Larsson | 2010-04-23 | 1 | -67/+17 |
| | |||||
* | Fix warnings breaking win32 build | Alexander Larsson | 2010-04-23 | 1 | -3/+3 |
| | |||||
* | spice: server: change update_area command | Izik Eidus | 2010-04-14 | 2 | -0/+26 |
| | | | | | | | | 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> | ||||
* | Relicense everything from GPL to LGPL 2.1+ | Alexander Larsson | 2010-04-13 | 32 | -282/+294 |
| | |||||
* | Fix win32 build with pixman 0.18.0 | Alexander Larsson | 2010-04-12 | 2 | -2/+2 |
| | |||||
* | fix 16bpp support on cairo_canvas | Izik Eidus | 2010-04-12 | 1 | -3/+30 |
| | | | | Signed-off-by: Izik Eidus <ieidus@redhat.com> | ||||
* | Always tread depth 24 (i.e. non alpha) as depth 32 when blitting | Alexander Larsson | 2010-04-12 | 1 | -8/+22 |
| | | | | | When blitting we don't really care about alpha mismatches, we just copy bits anyway. | ||||
* | spice: win32 client: fix gdi locking | Izik Eidus | 2010-04-09 | 2 | -47/+112 |
| | | | | | | | | | | | While the fix could have been more effective, it seems like this patch stream better with the coding logic that was there..., maybe later we will want to change the locking into more effective way. (There is just the primary surface to protect in reiality) Signed-off-by: Izik Eidus <ieidus@redhat.com> | ||||
* | Initialize _kill_mark so we don't get spurious valgrind warnings | Alexander Larsson | 2010-04-08 | 2 | -16/+0 |
| | |||||
* | Remove non-used lookup3.[ch] | Alexander Larsson | 2010-04-07 | 3 | -798/+0 |
| | |||||
* | spice: common: gdi_canvas fix gdi objects leak | Izik Eidus | 2010-04-05 | 1 | -0/+1 |
| | | | | | | | | | | | BitmapMask was used by the draw_text function as well therefore we need to mark from_surface = 0 if we want it to release the boject... (Was evil, took me few hours to understand from where the leak come...) Signed-off-by: Izik Eidus <ieidus@redhat.com> | ||||
* | libspice: add off screens support | Izik Eidus | 2010-04-03 | 8 | -392/+1086 |
| | | | | Signed-off-by: Izik Eidus <ieidus@redhat.com> | ||||
* | Add spice_strndup | Alexander Larsson | 2010-03-24 | 2 | -0/+19 |
| | | | | Also, make str(n)dup handle NULL correctly | ||||
* | Fix uninitilized memory read in stroke_fill_spans() | Alexander Larsson | 2010-03-18 | 1 | -0/+3 |
| | | | | y2 was not initialized | ||||
* | Use nearest scaling for DRAW_ALPHA_BLEND since this is what win32 needs | Alexander Larsson | 2010-03-17 | 1 | -1/+1 |
| | | | | | DrvAlphaBlend is the only current user of DRAW_ALPHA_BLEND, and its defined to do nearest (COLORONCOLOR) scaling, not bilinear. | ||||
* | Fix up empty region checks in canvas operations | Alexander Larsson | 2010-03-17 | 2 | -10/+10 |
| | | | | | | | We rely on not passing on empty rects to the drawing operations by checking for empty regions and exiting early. However the checks were wrongly using pixman_region32_n_rects(region) == 0, whereas we should be using pixman_region32_not_empty(). | ||||
* | Use the spice allocator in common/ | Alexander Larsson | 2010-03-11 | 9 | -116/+62 |
| | |||||
* | New memory allocators that exit on OOM and handle multiplication overflow | Alexander Larsson | 2010-03-11 | 2 | -0/+232 |
| | | | | | | | | | Every place that does a regular malloc/calloc and aborts on failure should use spice_malloc/spice_mallo0 instead, which is leaner and cleaner. Allocations of dynamically sized arrays can use g_malloc_n or g_new etc which correctly handle multiplication overflow if some of the arguments are not trusted. | ||||
* | Define GL_GLEXT_PROTOTYPES in CFLAGS not in random places in the source | Alexander Larsson | 2010-03-10 | 1 | -2/+0 |
| | |||||
* | Update gdi canvas wrt latest changes | Alexander Larsson | 2010-03-09 | 1 | -2/+2 |
| | | | | ALIGN -> SPICE_ALIGN | ||||
* | Use macros from <spice/macros.h> rather than duplicate them | Alexander Larsson | 2010-03-09 | 9 | -75/+19 |
| | |||||
* | Move draw_rop3 to canvas_base | Alexander Larsson | 2010-03-08 | 2 | -96/+94 |
| | |||||
* | Move canvas_draw_stroke to canvas_base | Alexander Larsson | 2010-03-08 | 2 | -455/+450 |
| | |||||
* | Move most of the shared draw_xyz() methods from CairoCanvas to CanvasBase | Alexander Larsson | 2010-03-08 | 3 | -932/+1039 |
| | | | | | | This adds a set of virtual methods for low-level operations. A subclass can choose to implement those and let the default CanvasBase implementations handle the highlevel stuff. | ||||
* | Move canvas_region and group_start/end to canvas_base | Alexander Larsson | 2010-03-08 | 5 | -37/+57 |
| | |||||
* | Move virtualization of canvas drawing into common/canvas_base | Alexander Larsson | 2010-03-08 | 8 | -251/+353 |
| | | | | | | | | | | | Instead of having two virtualizations of the canvas we push the virtualization into the canvas code itself. This not only avoids the duplication of this code, it also makes the exposed API for the canvas much smaller (in terms of exported API). It also lets us use the virtualization to implement basic support for operations in canvas_base which is then overridden by each canvas implementation. | ||||
* | Make virt mapping an interface | Alexander Larsson | 2010-03-08 | 6 | -37/+23 |
| | |||||
* | Make glz_decoder non-optional canvas_base in canvas constructors | Alexander Larsson | 2010-03-08 | 6 | -28/+11 |
| | | | | | It can still be NULL, but we simplify the headers by always including it. There is no practical performance difference here. | ||||
* | Make canvas Glz decoder integration nicer | Alexander Larsson | 2010-03-08 | 8 | -22/+27 |
| | | | | | We use a dynamic interface similar to e.g. SpiceImageCache instead of passing both function and opaque | ||||
* | Fix colorkeying in pixman_utils.c | Alexander Larsson | 2010-03-08 | 1 | -1/+2 |
| | | | | | | We were masking out the alpha bit in the key color not int the source pixel, so colorkeying didn't work when the high byte was != 0. For instance in the shutdown dialog in XP. | ||||
* | Make gdi canvas build in the new pixman world | Larsson@.(none) | 2010-03-01 | 3 | -20/+23 |
| | |||||
* | Always include spice/types.h before pixman so standard int types exist | Larsson@.(none) | 2010-03-01 | 1 | -0/+2 |
| | |||||
* | Fix warnings from visual studio compiler | Larsson@.(none) | 2010-03-01 | 2 | -15/+15 |
| | |||||
* | Have only one copy of ROUND macro and cast to int explicitly | Larsson@.(none) | 2010-03-01 | 2 | -3/+1 |
| | |||||
* | Remove last cairo use from canvas_base | Alexander Larsson | 2010-02-23 | 1 | -3/+0 |
| | |||||
* | Remove cairo_t from cairo canvas | Alexander Larsson | 2010-02-23 | 3 | -59/+8 |
| | |||||
* | Covert cairo canvas put_image() to pixman | Alexander Larsson | 2010-02-23 | 1 | -77/+33 |
| | |||||
* | Replace custom region implementation with pixman_region32_t | Alexander Larsson | 2010-02-23 | 6 | -810/+451 |
| | | | | | | 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. | ||||
* | Convert cairo canvas clear() to pixman | Alexander Larsson | 2010-02-23 | 1 | -8/+5 |
| | |||||
* | Convert cairo canvas group_start/end to pixman | Alexander Larsson | 2010-02-23 | 1 | -14/+18 |
| | |||||
* | Convert cairo canvas read_bits() to pixman | Alexander Larsson | 2010-02-23 | 1 | -6/+5 |
| | |||||
* | Remove unused cairo helper functions | Alexander Larsson | 2010-02-23 | 2 | -494/+0 |
| | |||||
* | Convert cairo canvas to use pixman for draw_stroke | Alexander Larsson | 2010-02-23 | 2 | -213/+465 |
| |