This is the mail archive of the
cygwin-xfree@cygwin.com
mailing list for the Cygwin XFree86 project.
Re: Internal-wm/rootless observations
- From: Alexander Gottwald <alexander dot gottwald at s1999 dot tu-chemnitz dot de>
- To: cygwin-xfree at cygwin dot com
- Date: Wed, 1 Dec 2004 15:53:09 +0100 (MET)
- Subject: Re: Internal-wm/rootless observations
- References: <Pine.LNX.4.58.0411301626490.25207@odoaker.hrz.tu-chemnitz.de><u4qj63yq4.wl%zakki@peppermint.jp>
- Reply-to: cygwin-xfree at cygwin dot com
On Wed, 1 Dec 2004, Kensuke Matsuzaki wrote:
> Could you give me diff? I want to try that.
Actually not. Most changes where done in gdb with "set var ...." ;)
let's do it from memory:
in winMWExtWMStartDrawing:
hdcNew = CreateCompatibleDC (pRLWinPriv->hdcScreen);
/* Describe shadow bitmap to be created */
pRLWinPriv->pbmihShadow->biWidth = pRLWinPriv->pFrame->width;//pRLWinPriv->dwWidth;
pRLWinPriv->pbmihShadow->biHeight = -pRLWinPriv->pFrame->height;//pRLWinPriv->dwHeight;
+ pRLWinPriv->pbmihShadow->biBitCount = 32;
/* Create a DI shadow bitmap with a bit pointer */
in winAdjust
- /* Query GDI for current display depth */
- dwBPP = GetDeviceCaps (hdc, BITSPIXEL);
+ /* Set the colordepth to 32 to please rootless code */
+ dwBPP = 32;
/* GDI cannot change the screen depth */
This is in no way safe and should be wrapped with a check for -internalwm but
safe for testing
> I think we have no reason to use winshadgdi.c in mwextwm mode and some
> code in winshadgdi.c don't match mwextwm. I have to write winshadrootless?
I don't think so. We have way too much code anyway i think. 5 different engines, to code
for handling windowed, pseudorootless and rootless code. If we find a safe way to blit
from 32bit planes to 16bit planes then this will be quite useful in shadow GDI mode
too. Sebastian Haby told me the 8bit pseudocolor patch he made has similar code
(blitting from a 8bit plane to 32/24/16 bit). I'll have to check the mail archives
at home for this code
bye
ago
--
Alexander.Gottwald@s1999.tu-chemnitz.de
http://www.gotti.org ICQ: 126018723