summaryrefslogtreecommitdiffstats
path: root/client/windows/red_pixmap_cairo.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove all mentions of "cairo" from the codeAlexander Larsson2010-05-031-111/+0
| | | | | The command line option is renamed from "cairo" to "sw", and similarly all filenames and types from Cairo to Sw (and similar).
* client: Support 16bpp pixmaps on win32Alexander Larsson2010-04-291-2/+15
|
* Client: Support pixmap format conversion in copy_pixelsAlexander Larsson2010-04-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | In order to be able to support 16bit canvases on 32bit screens and 32bit canvases on 16bit screens we need to handle format conversion when drawing RedPixmaps. The way this works now for X11 is that we only have one PIXELS_SOURCE_TYPE for pixmaps, which always has a pixman_image_t for the data, but additionally it has an XImage (shared mem or not) if the screen the pixmap was created for (i.e. an explicit one or the default screen) has the same format as the pixmap. When we draw a pixmap on a drawable we have two variants. If the pixmap has a XImage and it matches the format of the target drawable then we just X(Shm)PutImage it to the drawable. If the formats differ, then we create a temporary XImage and convert into that before drawing it to the screen. Right now this is a bit inefficient, because we always allocate a new temporary image when converting. We want to add some caching here, but at least this lets things work again.
* Move RedPixmap::Format to RedDrawable::FormatAlexander Larsson2010-04-231-3/+3
| | | | | | | | We need to know the format for other drawables too (like for instance the native format of a window), so we're pushing this down. This changes a bunch of references to be RedDrawable::, but not all. The the old RedPixmap:: references still work, but will be phased out.
* Make client canvas and pixmaps handle more formats and simplifyAlexander Larsson2010-04-231-14/+10
| | | | | | | | | | | 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.
* Add emacs modelines to more filesAlexander Larsson2010-04-231-0/+1
|
* Relicense everything from GPL to LGPL 2.1+Alexander Larsson2010-04-131-9/+9
|
* fresh startYaniv Kamay2009-10-141-0/+101