Commit Graph

1325 Commits

Author SHA1 Message Date
André Hentschel 56e804eea4 winex11: Reject too bright gamma ramps. 2011-08-24 14:03:03 +02:00
André Hentschel 4b538567e8 winex11: Validate the ramps also when not converting them to single values. 2011-08-23 16:53:48 +02:00
Huw Davies 6d0f81336a winex11: Simplify rectangle operations. 2011-08-22 16:14:35 +02:00
Huw Davies f15dcec52f winex11: Sync a dib section's bits before copying the brush. 2011-08-22 16:14:35 +02:00
André Hentschel 0dba66c05b winex11: Fix function header for building without xrender headers. 2011-08-22 16:14:33 +02:00
Alexandre Julliard 3a1194edd7 gdi32: Always use BI_BITFIELDS for 16-bpp in GetImage. 2011-08-05 15:22:43 +02:00
Kusanagi Kouichi 806e407193 winex11.drv: Fix a memory leak. 2011-08-04 18:27:36 +02:00
Alexandre Julliard f825f5db8c gdi32: Create a sanitized BITMAPINFO in SetDIBitsToDevice and pass that to the drivers. 2011-08-04 18:23:25 +02:00
Alexandre Julliard 7deda05185 gdi32: Create a sanitized BITMAPINFO in CreateDIBSection and pass that to the driver. 2011-08-04 18:21:49 +02:00
Vincent Povirk 62802b8bdf winex11.drv: Don't set gamma when UseXVidMode is turned off. 2011-08-03 17:43:21 +02:00
Frédéric Delanoy 7e309601f3 dlls: Assorted spelling fixes. 2011-08-03 14:15:50 +02:00
Francois Gouget ed3c9a1eca Assorted spelling fixes. 2011-08-03 14:15:48 +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 372ad442fc winex11: Force unprotecting the DIB section bits in PutImage. 2011-07-27 12:18:09 +02:00
Alexandre Julliard 366174b213 gdi32: Get rid of the GetBitmapBits driver entry point. 2011-07-25 20:32:41 +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 8a906250eb gdi32: Get rid of the SetDIBits driver entry point. 2011-07-25 19:47:03 +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 57a050048a winex11: Return color information in GetImage when passed null bits. 2011-07-25 17:59:04 +02:00
Alexandre Julliard 316372a21f winex11: Implement the additional clipping in PutImage. 2011-07-22 12:57:02 +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 7dc8f48ef8 gdi32: Get rid of the offset in the gdi_image_bits structure now that we are passing the full rectangles. 2011-07-21 15:36:34 +02:00
Alexandre Julliard 97c30bdd6c gdi32: Allow the PutImage entry point to optionally support stretching. 2011-07-21 15:35:48 +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
Huw Davies 3cead4fe1b winex11: Use the appropriate color_shifts when the target is a bitmap. 2011-07-20 19:23:05 +02:00
Huw Davies 8679d0b138 winex11: Sync the dib-section bits before writing to the image. 2011-07-20 19:23:05 +02:00
Alexandre Julliard 01e12ec9f9 gdi32: Move the checks for empty visible rects in PatBlt/StretchBlt back to gdi32. 2011-07-20 19:23:04 +02:00
Alexandre Julliard be835e2d9b winex11: Verify that the color map matches in PutImage for 4 and 8 bpp. 2011-07-20 11:42:17 +02:00
Alexandre Julliard 476a1fa1fb winex11: Fill in the color table in Get/PutImage for 4 and 8 bpp. 2011-07-20 11:31:38 +02:00
Alexandre Julliard be74c47e86 winex11: Remap pixels to system palette in Get/PutImage for 4 and 8 bpp. 2011-07-20 11:26:59 +02:00
Alexandre Julliard dc801b9831 winex11: Create a new message window every time we change clipping to avoid stale notifications. 2011-07-18 21:19:55 +02:00
Alexandre Julliard dbd0b4542f winex11: Remove the GetDIBits implementation. 2011-07-18 17:11:06 +02:00
Alexandre Julliard b01eb19511 gdi32: Remove the GetDIBits entry point from the graphics driver. 2011-07-18 17:07:51 +02:00
Francois Gouget 3726670098 winex11.drv: Make copy_image_bits() static. 2011-07-18 16:23:29 +02:00
Alexandre Julliard 1e2e45ce66 winex11: Avoid overflowing the source rectangle in StretchBlt. 2011-07-18 16:23:21 +02:00
Alexandre Julliard 5ce421efbd winex11: Simplify a couple of BitBlt operation codes. 2011-07-18 11:38:20 +02:00
Alexandre Julliard 55bc21938f winex11: Don't access the source rectangle in PutImage until needed. 2011-07-18 11:01:04 +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 678400b887 winex11: Set all the bitmap padding to 0 in GetImage. 2011-07-15 13:49:47 +02:00
Francois Gouget 60ffc296f0 winex11.drv: Make some DC functions static. 2011-07-14 14:48:26 +02:00
Alexandre Julliard eeb3625dce winex11: Add support for bottom-up format in PutImage. 2011-07-14 13:09:38 +02:00
Alexandre Julliard 611b168b35 winex11: Add support for rops in PutImage. 2011-07-14 13:09:04 +02:00
Alexandre Julliard c02bbb78b8 winex11: Move the execution of rop operations from X11DRV_StretchBlt to a separate function. 2011-07-14 13:08:56 +02:00
Alexandre Julliard ce9a5c6659 winex11: Add an implementation for the PutImage entry point. 2011-07-14 13:05:16 +02:00
Alexandre Julliard c2a9b4a8dc winex11: Add support for byte swapping in GetImage. 2011-07-14 12:56:26 +02:00
Alexandre Julliard e6fcbc543e winex11: Add an implementation for the GetImage entry point. 2011-07-14 12:53:51 +02:00
Alexandre Julliard cf05fca878 gdi32: Add driver entry points for GetImage and PutImage. 2011-07-14 11:30:58 +02:00
Ken Thomases ebebee5b9e winex11.drv: Map Meta keys to VK_{L, R}MENU, not just VK_MENU.
This fixes a problem with X11DRV_KeymapNotify sending incorrect key-up events.
2011-07-13 15:00:10 +02:00
Ken Thomases c4daf28186 winex11.drv: Fix X11DRV_KeymapNotify when multiple keycodes map to same vkey. 2011-07-13 15:00:00 +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 715d810073 gdi32: Sort the OpenGL driver functions alphabetically. 2011-07-13 14:23:22 +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 1ac1d7c69b gdi32: Pass the dest visible rectangle to the PatBlt driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard 8bd130b923 gdi32: Pass the source/dest visible rectangles to the StretchBlt 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
William Pettersson 266cd6c46a winex11: Add grab for XInput2 ButtonPress event. 2011-07-11 11:53:52 +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
Vincent Povirk 7a21d06295 winex11.drv: Process keyboard events when QS_HOTKEY is specified. 2011-07-06 19:43:52 +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
Frédéric Delanoy 8c8df2c220 winex11.drv: Remove dead assignment (Clang). 2011-07-06 11:27:02 +02:00
Alexandre Julliard 6b0d9ff1cd server: Allow setting a zero-size clip rectangle. 2011-06-21 15:04:24 +02:00
Alexandre Julliard b3946a0a59 winex11: Don't enable XInput for devices reporting absolute coordinates. 2011-06-21 14:51:15 +02:00
Alexandre Julliard adb86c5f2a winex11: Try harder to ignore broken raw motions events caused by pointer warping. 2011-06-20 19:32:05 +02:00
Huw Davies 129021a0ab winex11: Move the code that checks for a colortable based dib to a separate function. 2011-06-06 21:49:21 +02:00
Marcus Meissner 5a9b623212 winex11.drv: Mark internal symbols with hidden visibility. 2011-05-25 11:49:52 +02:00
Alexandre Julliard d1f5c13162 winex11: Filter out motion events resulting from setting the clip window. 2011-05-16 16:35:31 +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 9556b4f7db winex11: Don't wait for the foreground window to start clipping in ClipCursor. 2011-05-16 16:35:31 +02:00
Alexandre Julliard e52e57d133 winex11: Try a little harder to clip the cursor to avoid some race conditions. 2011-05-13 16:44:09 +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 fd4ad5a604 winex11: Don't use raw events for button events so that we get the right coordinates. 2011-05-13 12:41:12 +02:00
Alexandre Julliard 2e46c671d6 winex11: Set the desktop window gravity to NorthWest to avoid spurious position changes. 2011-05-12 16:25:50 +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 57fc5e7fcc winex11: Fix check for desktop process in non-desktop mode. 2011-05-05 16:31:58 +02:00
Marcus Meissner ea85bc9509 winex11.drv: Assertion was 1 off (Coverity). 2011-05-02 12:38:13 +02:00
Alexandre Julliard 84f085fb91 winex11: Grab the mouse in the thread that owns the foreground window if possible. 2011-04-28 16:47:14 +02:00
Alexandre Julliard bab850389a winex11: Merge consecutive RawMotion events. 2011-04-27 16:00:50 +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 897fdfd423 winex11: Refuse to clip cursor to a 1x1 window if we don't have XInput2 support. 2011-04-26 15:31:30 +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 a292220e1d winex11: Add separate helper functions for pointer grabbing and ungrabbing. 2011-04-22 17:51:28 +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 d2ff461615 winex11: Clip out the top-level windows when repainting the desktop. 2011-04-22 12:16:33 +02:00
Dmitry Timoshkov f339b6c0f1 winex11.drv: Make sure that all relevant keyboard traces are printed in the same debug channel. 2011-04-20 16:34:25 +02:00
Dmitry Timoshkov fd043c5644 winex11.drv: Use dialog window type again for owned popup windows. 2011-04-20 16:29:33 +02:00
Alexandre Julliard 55bfd2ef0d winex11: Allow installing the event handler multiple times. 2011-04-19 18:29:24 +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
Austin English 846ba03867 winex11.drv: Remove extraneous parentheses (LLVM/Clang). 2011-04-13 14:13:54 +02:00
Alexandre Julliard b1be3ddbc6 winex11: Build the mouse input structure directly in the mouse event handlers. 2011-04-13 14:13:51 +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
Huw Davies b295b53630 winex11: Don't use the bitfields for the BI_RGB case. 2011-04-12 17:42:12 +02:00
Alexandre Julliard f13c65b4f5 winex11: Get rid of the old ddraw HAL support. 2011-04-12 17:42:12 +02:00
Dmitry Timoshkov 6eed4c4241 winex11: Move the SendMessage(WM_SYSCOMMAND, SC_MAXIMIZE/SC_RESTORE) call after the window extents check. 2011-04-08 17:11:21 +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 21e86f60ec server: Post a message to the desktop window when the cursor clip rectangle changes. 2011-04-05 13:36:57 +02:00
Gerald Pfeifer 4d93675332 winex11.drv: Initialize a variable in create_xcursor_frame to silence a warning. 2011-04-04 14:50:28 +02:00
Matteo Bruni 1e0075cd61 winex11.drv: Take care of the destroyed drawable in wglFlush/wglFinish too. 2011-03-31 12:43:29 +02:00
Matteo Bruni 90608c8ce6 winex11.drv: Don't call glXSwapBuffers if the context or the drawable are invalid. 2011-03-31 12:43:22 +02:00
Matteo Bruni 1902e1cb93 winex11.drv: Fix wglMakeContextCurrent with an invalid drawable. 2011-03-31 12:42:35 +02:00
Matteo Bruni 868974c615 winex11.drv: Don't modify state if glXMakeContextCurrent fails. 2011-03-31 12:42:27 +02:00
Matteo Bruni 716df1c2d2 winex11.drv: Make wglMakeCurrent return the correct error when the drawable is invalid. 2011-03-30 13:28:04 +02:00
Matteo Bruni 77679c4e9c winex11.drv: Don't modify current state if glXMakeCurrent fails. 2011-03-30 13:28:04 +02:00
Joshua Beck ddada67538 winex11: Improved error handling in pglXMakeCurrent() call. 2011-03-29 12:23:16 +02:00
Dmitry Timoshkov 5ef58c11ce winex11.drv: Do not use any window types except _NET_WM_WINDOW_TYPE_NORMAL.
Main window of the Atom Zombie Smasher game has WS_DLGFRAME style set,
but Metacity allows making fullscreen ONLY normal windows, so do not
use any window types except _NET_WM_WINDOW_TYPE_NORMAL.
2011-03-29 12:21:22 +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 8e396a9417 winex11: Implement a separate entry point for PatBlt and simplify the StretchBlt handling. 2011-03-17 14:49:16 +01:00
Erich Hoover eddffff780 winex11: Add support for retrieving multi-rate animated cursor data. 2011-03-10 15:36:55 +01:00
Henri Verbeet 7b0a3128fb winex11: Remove a redundant forward declaration. 2011-03-10 12:53:24 +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
Henri Verbeet 727ecc1714 winex11.drv: Allow disabling vertical sync using EXT_swap_control.
EXT_swap_control redefines glXSwapIntervalSGI() as glXSwapIntervalEXT() on the
current drawable (if any), and glXSwapIntervalEXT() supports disabling vsync.
2011-03-08 12:28:30 +01:00
Alexandre Julliard 7879b8e349 user32: Get rid of the RegisterClipboardFormat driver entry point. 2011-03-07 17:06:50 +01:00
Alexandre Julliard 59fb0ad174 winex11: Register clipboard formats only once they are actually used. 2011-03-07 17:06:42 +01:00
Alexandre Julliard c7d2a4dddf winex11: Remove the unused clipboard format flags. 2011-03-07 16:59:39 +01:00
Alexandre Julliard b1af55d551 winex11: Don't unmap off-screen windows on PropertyNotify events. 2011-03-07 15:11:10 +01:00
Erich Hoover 2a02649341 winex11: Use GetCursorFrameInfo to obtain animated frame delay. 2011-03-07 15:10:25 +01:00
Alexandre Julliard 383d8ac105 user32: Remove GetClipboardFormatName from the user driver interface. 2011-03-04 16:25:52 +01:00
Alexandre Julliard 57921fec3a winex11: Always reference clipboard formats by atom instead of name. 2011-03-04 10:52:25 +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 ade3b4f148 winex11: Add a debug helper for printing clipboard formats. 2011-03-03 21:16:34 +01:00
Alexandre Julliard 7aa4acb80a winex11: Convert the clipboard format list to a standard Wine list. 2011-03-03 20:56:21 +01:00
Alexandre Julliard bfa753ba55 winex11: Convert the clipboard data list to a standard Wine list. 2011-03-03 20:56:05 +01:00
Peter Urbanec 0ea8bf17fa wintab32: Better handling of XInput initialisation errors. 2011-03-03 17:47:14 +01:00
Alexandre Julliard e047a20627 winex11: Merge updating the mouse state and sending the input into a single helper function. 2011-03-03 17:47:08 +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 f1a3480068 user32: Handle input injected through SendInput entirely in user32. 2011-03-02 21:48:39 +01:00
Alexandre Julliard c7efa293f0 server: Invoke low-level hardware hooks directly from the server side. 2011-03-02 21:26:13 +01:00
Alexandre Julliard ae895a1f10 user32: Export a Wine-specific function to send hardware input from the graphics driver. 2011-03-02 21:25:43 +01:00
Alexandre Julliard 731f5b0b7b winex11: Fetch the key state from the server when adjusting state on KeymapNotify and key events. 2011-03-02 12:24:32 +01:00
Alexandre Julliard 0f18d2bb09 server: Set the message code for mouse input on the server side. 2011-03-02 11:59:38 +01:00
Alexandre Julliard 02e30f5f77 server: Pass the original hardware input data to the server and set the message parameters on the server side. 2011-03-02 11:34:15 +01:00
Alexandre Julliard bc4afb0786 server: Don't pass a thread id to send_hardware_message, determine it from the window. 2011-03-01 13:21:58 +01:00