- Add clipboard support for copying/pasting bitmaps or Pixmaps between Wine
and native Linux applications. - Respond to the MULTIPLE selection request target when Wine is the selection owner. - Relax type checking for TARGETS selection.
This commit is contained in:
parent
f52e109dea
commit
d05b7beb5a
|
@ -2,6 +2,7 @@
|
|||
* X11DRV bitmap objects
|
||||
*
|
||||
* Copyright 1993 Alexandre Julliard
|
||||
* 1999 Noel Borthwick
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
@ -532,6 +533,132 @@ BOOL X11DRV_BITMAP_DeleteObject( HBITMAP hbitmap, BITMAPOBJ * bmp )
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* X11DRV_BITMAP_CreateBitmapHeaderFromPixmap
|
||||
*
|
||||
* Allocates an HBITMAP which references the Pixmap passed in.
|
||||
* Note: This function makes the bitmap an owner of the Pixmap so subsequently
|
||||
* calling DeleteObject on this will free the Pixmap as well.
|
||||
*/
|
||||
HBITMAP X11DRV_BITMAP_CreateBitmapHeaderFromPixmap(Pixmap pixmap)
|
||||
{
|
||||
HBITMAP hBmp = 0;
|
||||
BITMAPOBJ *pBmp = NULL;
|
||||
X11DRV_PHYSBITMAP *pPhysBmp = NULL;
|
||||
Window root;
|
||||
int x,y; /* Unused */
|
||||
unsigned border_width; /* Unused */
|
||||
unsigned int depth, width, height;
|
||||
|
||||
/* Get the Pixmap dimensions and bit depth */
|
||||
if ( 0 == TSXGetGeometry(display, pixmap, &root, &x, &y, &width, &height,
|
||||
&border_width, &depth) )
|
||||
goto END;
|
||||
|
||||
TRACE("\tPixmap properties: width=%d, height=%d, depth=%d\n",
|
||||
width, height, depth);
|
||||
|
||||
/*
|
||||
* Create an HBITMAP with the same dimensions and BPP as the pixmap,
|
||||
* and make it a container for the pixmap passed.
|
||||
*/
|
||||
hBmp = CreateBitmap( width, height, 1, depth, NULL );
|
||||
|
||||
/* |