Commit Graph

345 Commits

Author SHA1 Message Date
Ken Thomases f217415541 winex11: Remove some more leftover X Shm code. 2012-01-26 17:42:25 +01:00
Henri Verbeet 515329d58c winex11: Remove some leftover X Shm code. 2012-01-25 11:27:37 +01:00
Alexandre Julliard 98dd61e2f3 winex11: Don't cache text and background pixel values to support PALETTEINDEX properly. 2012-01-11 20:55:35 +01:00
Kusanagi Kouichi dc02e4d1a7 winex11.drv: Fix IME status handling. 2012-01-11 19:42:48 +01:00
Alexandre Julliard 5112699a6b winex11: Store the XRender format in the bitmap structure. 2012-01-10 21:06:45 +01:00
Alexandre Julliard 5b11c96fa1 winex11: Get rid of the DIB section support. 2012-01-10 20:12:31 +01:00
Alexandre Julliard 49b73d53cf winex11: Move the clipboard DIB creation functions to clipboard.c. 2012-01-10 20:12:16 +01:00
Alexandre Julliard dc1aeeb2f8 gdi32: Get rid of the SetDIBColorTable driver entry point. 2012-01-07 13:27:08 +01:00
Alexandre Julliard bcc65899f8 winex11: Remove DIB locking calls from all graphics functions. 2012-01-06 19:24:26 +01:00
Alexandre Julliard cc9836bda0 gdi32: Pass a brush_pattern structure to the SelectPen entry point for brushed pens. 2011-12-30 11:04:29 +01:00
Alexandre Julliard f85bb35280 gdi32: Pass a brush_pattern structure to the SelectBrush entry point. 2011-12-30 11:04:26 +01:00
Alexandre Julliard 810d215a3c winex11: Get rid of the GetPixel implementation, use the null driver fallback instead. 2011-12-13 14:00:14 +01:00
Alexandre Julliard 8d6354c5b2 winex11: Allow the visible region to be zero when not clipping. 2011-12-06 15:51:00 +01:00
Alexandre Julliard 7534d47b1b gdi32: Pass the total visible region in the SetDeviceClipping driver entry point. 2011-12-06 15:51:00 +01:00
Alexandre Julliard 0446707a56 winex11: Implement rectangular gradients using straight X11 calls. 2011-11-30 13:09:08 +01:00
Alexandre Julliard 9716d1c861 winex11: Still process all MotionNotify events when using XInput2. 2011-11-09 15:45:13 +01:00
Alexandre Julliard d9a45745a7 winex11: Implement the CopyBitmap entry point. 2011-11-08 19:26:13 +01:00
Alexandre Julliard a16dbbe3d8 winex11: Implement a SelectBrush entry point in the XRender driver. 2011-11-07 20:54:01 +01:00
Alexandre Julliard 24ac8c66bb gdi32: Pass the full brush contents in the SelectBrush driver entry point. 2011-11-02 21:41:15 +01:00
Alexandre Julliard 2b1b11d681 gdi32: Rename the EnumDeviceFonts entry point to EnumFonts since it's not limited to device fonts. 2011-10-24 23:34:33 +02:00
Alexandre Julliard ef0fe44327 gdi32: Implement SelectFont as a standard driver entry point. 2011-10-19 18:22:05 +02:00
Alexandre Julliard f5307025fc winex11: Pre-compute the color shifts for the supported XRender formats. 2011-09-26 16:56:55 +02:00
Alexandre Julliard 46f1d2a48a winex11: Remove redundant pixmap prefix in X_PHYSBITMAP field names. 2011-09-26 15:29:28 +02:00
Alexandre Julliard 3be01b185d winex11: Set XRender clipping lazily when retrieving the destination picture. 2011-09-20 16:21:40 +02:00
Alexandre Julliard d905ba5a33 winex11: Implement a PutImage entry point in the XRender driver. 2011-09-19 17:56:07 +02:00
Alexandre Julliard 46cbdd0efc winex11: Implement the CreateBitmap entry point in the XRender driver. 2011-09-15 19:58:25 +02:00
Alexandre Julliard ce63099a14 winex11: Get rid of the xrender_info structure. 2011-09-15 15:42:15 +02:00
Alexandre Julliard 498e3cf2a1 winex11: Remove the XRender support in the X11 driver StretchBlt implementation. 2011-09-15 13:22:31 +02:00
Alexandre Julliard dc9a218a00 winex11: Add a StretchBlt entry point to the XRender driver. 2011-09-15 13:12:18 +02:00
Alexandre Julliard 0f9dfb932e winex11: Use the DIB engine for client-side DIB copy optimizations. 2011-09-14 13:26:29 +02:00
Alexandre Julliard 271530b3dd winex11: Add a SetDeviceClipping entry point to the XRender driver. 2011-09-13 17:17:00 +02:00
Alexandre Julliard c582edbc5a winex11: Return a RGNDATA from add_extra_clipping_region and avoid changing the physdev region. 2011-09-13 17:17:00 +02:00
Alexandre Julliard 84f549b683 winex11: Pass an HDC to the size mapping functions. 2011-09-12 14:03:11 +02:00
Alexandre Julliard b174bde4d2 winex11: Add an AlphaBlend entry point in the XRender driver. 2011-09-12 14:03:11 +02:00
Alexandre Julliard 5a2ab8364a winex11: Add an ExtTextOut entry point in the XRender driver. 2011-09-12 14:03:10 +02:00
Alexandre Julliard cbfcce1a3d winex11: Add a SelectFont entry point in the XRender driver. 2011-09-12 14:03:10 +02:00
Alexandre Julliard 225d8abec9 winex11: Add bitmap entry points to the XRender driver. 2011-09-12 14:03:10 +02:00
Alexandre Julliard b74a33d9b3 winex11: Store the XRender info structure inside the XRender physdev object. 2011-09-12 14:03:10 +02:00
Alexandre Julliard 40957d025d winex11: Create a separate graphics driver for XRender. 2011-09-12 14:03:08 +02:00
Alexandre Julliard 3a260497be winex11: Get rid of the SetDIBitsToDevice implementation. 2011-09-06 14:44:11 +02:00
Alexandre Julliard a0f1b20464 gdi32: Make the BITMAPINFO parameters non-const in driver entry points since we are always passing a copy. 2011-09-02 15:56:01 +02:00
Alexandre Julliard 6d00196aea gdi32: Get rid of the SetBitmapBits driver entry point. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 09eb59d3c6 gdi32: Set the initial bits of a bitmap from the gdi side. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 96c1b3bbc2 winex11: Get rid of the no longer used GetBitmapBits implementation. 2011-07-25 20:32:17 +02:00
Alexandre Julliard 65997a2a2d winex11: Get rid of the no longer used SetDIBits implementation. 2011-07-25 19:46:13 +02:00
Alexandre Julliard 72607b3817 winex11: Add helper functions for changing and restoring the current clipping region. 2011-07-21 19:03:10 +02:00
Alexandre Julliard 0d9dde7953 gdi32: Add an optional clip region to the PutImage entry point. 2011-07-21 18:49:47 +02:00
Alexandre Julliard 73dc9833b7 gdi32: Pass the full bitblt_coords structure to the Get/PutImage entry points. 2011-07-21 15:35:30 +02:00
Alexandre Julliard b01eb19511 gdi32: Remove the GetDIBits entry point from the graphics driver. 2011-07-18 17:07:51 +02:00
Huw Davies 56d7e2add9 winex11: Sync a dib-section before accessing the image bits. 2011-07-15 14:40:10 +02:00
Alexandre Julliard ce9a5c6659 winex11: Add an implementation for the PutImage entry point. 2011-07-14 13:05:16 +02:00
Alexandre Julliard e6fcbc543e winex11: Add an implementation for the GetImage entry point. 2011-07-14 12:53:51 +02:00
Alexandre Julliard c7a8ff26d3 gdi32: Graphics driver functions no longer need to be CDECL. 2011-07-13 14:56:12 +02:00
Alexandre Julliard 605b2e6d52 winex11: Add a DC function structure and export it. 2011-07-13 14:05:07 +02:00
Alexandre Julliard bfc12c0c94 gdi32: Pass the source/dest visible rectangles to the AlphaBlend driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard 1805f123b0 gdi32: Compute StretchBlt rectangles in gdi32. 2011-07-11 17:12:33 +02:00
Alexandre Julliard 00647af50b winex11: Use the HDC from the gdi_physdev structure. 2011-07-08 16:03:59 +02:00
Alexandre Julliard 6c951b7d0d winex11: Pass a generic PHYSDEV to all graphics entry points. 2011-07-08 15:55:11 +02:00
Alexandre Julliard 4e2a28bd03 gdi32: Export the gdi_physdev structure for the external drivers. 2011-07-07 14:46:14 +02:00
Alexandre Julliard 2e4b0b1ef4 winex11: Set the reported screen bpp based on the available pixmap formats. 2011-07-06 12:38:31 +02:00
Marcus Meissner 5a9b623212 winex11.drv: Mark internal symbols with hidden visibility. 2011-05-25 11:49:52 +02:00
Alexandre Julliard 0e2b4f99a9 winex11: Warp the pointer when clipping, but ignore the resulting events. 2011-05-16 16:35:31 +02:00
Alexandre Julliard 8e9b4e0a5c winex11: Allow MotionNotify events through occasionally while XInput is active. 2011-05-13 16:19:45 +02:00
Alexandre Julliard b081ee452d winex11: Only update the fullscreen pointer grab when something has changed. 2011-05-12 16:24:58 +02:00
Alexandre Julliard ae52a8c2cb winex11: Add an option to automatically clip the pointer in desktop and multi-monitor modes. 2011-05-11 14:56:20 +02:00
Alexandre Julliard a59c7cc859 winex11: Automatically clip the pointer when the foreground window is full-screen. 2011-05-11 14:55:57 +02:00
Alexandre Julliard a07b8411fc winex11: Export a couple of helper functions for window rectangles. 2011-05-11 12:09:12 +02:00
Alexandre Julliard a28722f531 winex11: Reset the clipping when the desktop window loses focus. 2011-05-11 12:07:37 +02:00
Alexandre Julliard da9922b40d winex11: Ignore MotionNotify events if we have pending RawMotion events. 2011-04-27 16:00:02 +02:00
Alexandre Julliard f1f223d001 winex11: Release the clip cursor grab when the clipping window loses focus. 2011-04-25 10:49:59 +02:00
Alexandre Julliard 33c491eb84 winex11: Allow changing the clipping rectangle while the mouse is grabbed. 2011-04-22 17:51:29 +02:00
Alexandre Julliard 0eb19126e5 winex11: Store a message window with the desktop when the cursor is clipped.
This ensures that the thread can be notified when the clip rectangle is reset.
2011-04-22 17:51:28 +02:00
Alexandre Julliard 2ed57f9b96 winex11: Make sure the clipping window is initialized in every thread. 2011-04-14 17:13:41 +02:00
Alexandre Julliard bd3ec1a973 winex11: Retrieve raw mouse events through XInput2 while the cursor is clipped. 2011-04-14 12:08:37 +02:00
Alexandre Julliard 338fe8b9ac winex11: Add handlers for the XInput2 raw mouse events. 2011-04-13 18:56:37 +02:00
Alexandre Julliard a8575a8b4d winex11: Add infrastructure for managing the extra data of generic extension events. 2011-04-13 14:13:29 +02:00
Alexandre Julliard f13c65b4f5 winex11: Get rid of the old ddraw HAL support. 2011-04-12 17:42:12 +02:00
Alexandre Julliard 9c8911e342 winex11: Simplify the event handler lookup, and support names in debug traces for extension events. 2011-04-06 13:26:42 +02:00
Alexandre Julliard 06948ebccf winex11: Update the cursor on the clip window when the pointer grab starts. 2011-04-06 13:10:44 +02:00
Alexandre Julliard ecf217bbe4 winex11: Update the cursor on the clipping window while it's mapped. 2011-04-05 13:36:57 +02:00
Alexandre Julliard 886ae4c348 winex11: Always forward SetCursor to the driver, and limit the frequency of updates on the driver side. 2011-04-05 13:36:57 +02:00
Alexandre Julliard 4d358bfee3 winex11: Add an option to disable pointer grabs. 2011-04-05 13:36:57 +02:00
Alexandre Julliard ae2b356361 winex11: Implement cursor clipping using a pointer grab. 2011-04-05 13:36:57 +02:00
Alexandre Julliard 3d34f01f3c gdi32: Add null driver entry points for StretchBlt and AlphaBlend. 2011-03-18 16:05:09 +01:00
Alexandre Julliard 6419edfb6d gdi32: Add a mechanism for stacking gdi drivers. 2011-03-10 12:38:31 +01:00
Alexandre Julliard 5f5c7020f3 gdi32: Add a common header to the physdev structure. 2011-03-08 22:34:57 +01:00
Alexandre Julliard 383bda91cf user32: No longer export HOOK_CallHooks. 2011-03-08 14:50:47 +01:00
Alexandre Julliard f15e91a883 winex11: Pre-register atoms for all the built-in clipboard formats. 2011-03-03 21:27:34 +01:00
Alexandre Julliard f46bd50a80 winex11: Get rid of the ClipCursor and SendInput entry points. 2011-03-03 17:34:53 +01:00
Alexandre Julliard 8f88d4fe78 winex11: Pass a window handle for keyboard hardware messages too. 2011-03-01 13:21:58 +01:00
Alexandre Julliard 39c4e6d1d9 user32: Retrieve the current cursor position from the server. 2011-03-01 13:21:42 +01:00
Alexandre Julliard a7da164949 user32: Retrieve the key state for GetAsyncKeyState from the server. 2011-02-28 22:28:42 +01:00
Alexandre Julliard 94fb0f5935 winex11: Synchronize the mouse cursor in update_mouse_state. 2011-02-24 12:16:54 +01:00
Alexandre Julliard 477c085e4d winex11: Potentially update the system tray notification position when any foreign window is moved. 2010-12-15 17:17:39 +01:00
Alexandre Julliard 5d570706c6 winex11: Create Win32 windows corresponding to all the ancestors of embedded windows.
This is needed to keep track of the embedded window position by
handling ConfigureNotify received by ancestors.
2010-11-08 15:46:49 +01:00
Vladimir Panteleev d7d5fb0abf winex11: Add X11DRV_PALETTE_GetColor function to resolve any COLORREF to an RGB. 2010-11-08 13:30:20 +01:00
Alexandre Julliard cdaff0a918 winex11: Add support for receiving mouse events on non-toplevel windows. 2010-11-05 17:15:12 +01:00
Alexandre Julliard 5a4580730d winex11: Re-dock icons when the system tray owner has changed. 2010-11-02 10:32:40 +01:00
Alexandre Julliard 68f497bdcc winex11: Improve management of the lifetime of embedded windows. 2010-11-02 10:32:40 +01:00
Alexandre Julliard 757845c7c6 winex11: Manage the system tray stand-alone window in x11drv for non-desktop mode. 2010-11-01 19:19:58 +01:00
Alexandre Julliard 45b87f1f94 winex11: Add support for remapping standard Win32 cursors to the X11 system cursors. 2010-10-18 19:08:37 +02:00
Alexandre Julliard 84102e758f winex11: Mirror the DC exposure region for RTL devices. 2010-10-05 11:01:21 +02:00
Alexandre Julliard ebcd07a98b winex11: Properly support BitBlt and LAYOUT_BITMAPORIENTATIONPRESERVED in mirrored contexts. 2010-09-02 10:51:31 +02:00
Dmitry Timoshkov a56df96a0e winex11: Remember last window that had the XIC focus and use it in ToUnicode() to make dead keys work more reliably. 2010-07-26 18:38:31 +02:00
Alexandre Julliard f57c1b77dd gdi32: Get rid of the GetDCOrgEx driver entry point, GDI can implement this itself now. 2010-07-26 18:38:31 +02:00
Alexandre Julliard f2f508856b winex11: Set the user time property on top-level windows.
Helps convince some broken window managers to put new windows on top
of the z-order.
2010-06-29 13:28:39 +02:00
Alexandre Julliard e25049e879 winex11: Create X11 cursors on demand when the cursor is set to a window. 2010-05-21 13:29:47 +02:00
Alexandre Julliard 6551553fe6 winex11: Make the cursor window global instead of per-thread, and send it a message when the cursor changes. 2010-04-29 10:19:29 -05:00
Alexandre Julliard 8ec6359bbb user32: Remove the CURSORICON parameter in the SetCursor entry point. 2010-04-21 11:07:45 +02:00
Alexandre Julliard eed9c63ac7 winex11: Update the cursor from the thread input status instead of caching it per-thread in x11drv. 2010-04-21 11:07:45 +02:00
Alexandre Julliard d676bf246d user32: Add driver entry points for cursor creation and destruction, and pass the cursor handle to SetCursor. 2010-04-20 19:22:38 +02:00
Alexandre Julliard ea1d71c7a4 winex11: Set the NET_WM_ICON hint for 32-bpp icons. 2010-04-16 16:23:33 +02:00
Alexandre Julliard 246e3732c0 winex11: Use the BITBLT_GetVisRectangles helper function for AlphaBlend too. 2010-04-15 14:39:37 +02:00
Alexandre Julliard 39493b0660 winex11: Define a structure to hold coordinates information for BitBlt operations. 2010-04-15 14:39:33 +02:00
Roderick Colenbrander c29cf05919 winex11: Add support for 32-bit DDBs. 2010-04-13 13:06:32 +02:00
Henri Verbeet f331fe4c27 winex11.drv: Store if a bitmap is top-down in X_PHYSBITMAP.
GetObject() is supposed to return the absolute height, and there's no other
way to retrieve this information after the bitmap is created.
2010-03-01 14:03:33 +01:00
Kusanagi Kouichi 10789142fc winex11.drv: Check XDND version. 2010-02-22 11:55:42 +01:00
Kusanagi Kouichi f7b18148d4 winex11.drv: Keep the state of XIM and IME consistent. 2010-02-22 11:55:25 +01:00
Kusanagi Kouichi 4ccbcb02b2 winex11.drv: Handle result string directly. 2010-02-16 12:28:41 +01:00
Roderick Colenbrander 3afa657636 winex11: Fix palette conversion bug.
The LookupPixel code assumed we want to convert pixels to the format
corresponding the default color shifts.
2010-02-16 11:32:44 +01:00
Alexandre Julliard 00b06dac85 winex11: Don't process ConfigureNotify events that have been superseded by a later configure request. 2010-01-04 17:56:32 +01:00
Rob Shearman e4888b0e3c winex11.drv: Empty clipboard cache on process unload to avoid false positives being reported for memory leaks. 2009-12-30 13:39:55 +01:00
Vincent Povirk 1bd13dec61 winex11.drv: Generate text/html clipboard data from HTML Format. 2009-11-23 13:34:15 +01:00
Roderick Colenbrander 14e21d955a winex11: Add X11DRV_XRender_SetDeviceClipping for syncing the clipping region with XRender pictures. 2009-10-14 14:01:34 +02:00
Alexandre Julliard 344cf57f1b winex11: Rename the XRENDERINFO type to make it clear it's a pointer. 2009-10-08 12:10:59 +02:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Roderick Colenbrander 6b8753185f winex11: Add support for 16-bit/32-bit DIB sections. 2009-10-01 13:47:53 +02:00
Alexandre Julliard 89c91ac0b1 winex11: Remove BITBLT_InternalStretchBlt now that it's identical to X11DRV_StretchBlt. 2009-09-30 20:56:56 +02:00
Roderick Colenbrander 9465700083 winex11: Don't use ColorShifts for non-TrueColor bitmaps. 2009-09-25 13:16:56 +02:00
Roderick Colenbrander efa37f56ec winex11: Add helper function for copying brushes. 2009-09-10 12:13:45 +02:00
Roderick Colenbrander 4ef7bd6943 winex11: Add helper function for calculating ColorShifts. 2009-09-09 16:25:24 +02:00
Dmitry Timoshkov 9dbdd708e3 winex11.drv: Handle WM_DELETE_WINDOW by simulating clicking the caption Close button. 2009-09-09 12:18:28 +02:00
Roderick Colenbrander 5db05dfea9 winex11: Use ColorShifts data in X11DRV_PALETTE_ToLogical. 2009-09-02 16:09:07 +02:00
Roderick Colenbrander 5fc017c497 winex11: Use ColorShifts from physDev in X11DRV_PALETTE_ToPhysical. 2009-09-02 16:08:36 +02:00
Roderick Colenbrander 3ad349f316 winex11: Prepare X11DRV_PALETTE_ToPhysical/_ToLogical for a new ColorShift structure. 2009-09-02 16:07:41 +02:00
Roderick Colenbrander 3878b4810e winex11: Introduce a new function for looking up the physical color of a pixel for use with colormap generation-like functions.
This prepares to a rewrite of X11DRV_PALETTE_ToPhysical which requires
the physDev for retrieving the color shifts.
2009-09-02 16:07:11 +02:00
Henri Verbeet 9fd29492c1 winex11.drv: Add support for XShm pixmaps.
Most of this is "Copyright 2004 Huw Davies for CodeWeavers", I just did a
little bit of integration.
2009-08-06 17:26:31 +02:00
Roderick Colenbrander 6a1aa9b166 winex11: XRenderComposite can be inaccurate when scaled x / y source coordinates are passed to it.
Moving this translation to the transformation matrix fixes the problem.
2009-07-24 13:10:12 +02:00
Roderick Colenbrander 618b410aa8 winex11: Add a function for retrieving the bitmap GC. 2009-07-16 11:19:34 +02:00
Roderick Colenbrander 004eabfbd3 winex11: Add an XRender based GetSrcAreaStretch. 2009-07-13 11:58:26 +02:00
Vincent Povirk 6259aeaacb winex11.drv: Link the windows JFIF format to the X image/jpeg format. 2009-06-22 11:22:23 +02:00
Vincent Povirk e4663206be winex11.drv: Link the windows PNG format to the X image/png format. 2009-06-22 11:22:19 +02:00
Francois Gouget c642481305 winex11.drv: Replace an strdup() with HeapAlloc() in the OpenGL code.
Free the corresponding memory when the library is unloaded.
2009-05-26 14:25:12 +02:00
Andrew Talbot f63ceec432 winex11.drv: Declare some functions static. 2009-01-30 11:43:41 +01:00
Damjan Jovanovic 3613b15785 winex11: Support the startup notification fd.o spec. 2009-01-07 14:17:46 +01:00
Maarten Lankhorst 0a6459598a user32/winex11.drv: Change all user32 operations to use CDECL. 2008-12-23 13:06:04 +01:00
Maarten Lankhorst 131d0a79a1 gdi32/winex11.drv: Change all gdi/opengl operations to use CDECL calling convention. 2008-12-23 13:02:33 +01:00
Aric Stewart b3d308b96f x11drv: Allow ActivateKeyboardLayout to set the keyboard for the thread and GetKeyboardLayout to return the stored keyboard. 2008-12-18 14:19:13 +01:00
Maarten Lankhorst 602b9b0833 winex11.drv: Make XIM functions hidden. 2008-12-17 15:02:25 +01:00
Alexandre Julliard e48283bedd winex11: Remove some unused functions. 2008-12-03 12:10:21 +01:00