Commit Graph

1693 Commits

Author SHA1 Message Date
Alexandre Julliard 5a9de7a498 winex11: Use the XShm extension to copy window surfaces. 2012-10-03 15:37:07 +02:00
Alexandre Julliard 70a511739e winex11: Maintain a separate copy of the surface image bits when we need byte swapping. 2012-10-03 15:24:21 +02:00
Alexandre Julliard 219e2a3545 winex11: Split copy_image_bits into a couple of helper functions. 2012-10-03 14:32:54 +02:00
Alexandre Julliard 37f36b7326 winex11: Don't try to change the window visual if we don't have a valid ARGB visual. 2012-10-03 11:19:39 +02:00
Alexandre Julliard 6f3b097a20 winex11: Fix a typo in the surface region computation with an alpha channel. 2012-10-03 11:19:39 +02:00
Alexandre Julliard dbff4f422c winex11: Copy the existing surface bits when a dirty rectangle is specified in UpdateLayeredWindow. 2012-10-03 11:19:38 +02:00
Alexandre Julliard 4ac1a5ac60 winex11: Allow changing the pixel format of a window from a different thread. 2012-10-03 11:19:35 +02:00
Alexandre Julliard 28721d69f4 winex11: Get rid of the OpenGL GDI driver. 2012-10-02 22:06:06 +02:00
Alexandre Julliard 05fe1e4e35 winex11: Move the FLUSH_GL_DRAWABLE implementation to the main ExtEscape routine. 2012-10-02 21:56:43 +02:00
Alexandre Julliard d8de77f01e winex11: Pass the source drawable to the FLUSH_GL_DRAWABLE escape. 2012-10-02 21:50:54 +02:00
Alexandre Julliard 53806917a3 winex11: Refuse to set the pixel format for HWND_MESSAGE windows. 2012-10-02 19:52:41 +02:00
Alexandre Julliard e03b8e1a1d winex11: Use ARGB layered windows for system tray icons when supported. 2012-10-02 14:08:37 +02:00
Alexandre Julliard d8247efd5e winex11: Take the alpha channel into account to compute the region of layered windows. 2012-10-02 14:08:37 +02:00
Alexandre Julliard f12c1c6630 winex11: Switch to an ARGB visual for layered windows with per-pixel alpha. 2012-10-02 14:08:37 +02:00
Alexandre Julliard 8dcbeff760 winex11: Add support for per-window visuals. 2012-10-02 14:08:37 +02:00
Alexandre Julliard a81c23a450 winex11: Don't put window manager decorations on layered windows. 2012-10-02 14:08:37 +02:00
Alexandre Julliard 24eee97d21 user32: Add a driver entry point for UpdateLayeredWindow. 2012-10-01 13:20:20 +02:00
Alexandre Julliard 91b0ee56cf user32: Default to the dummy surface if the driver doesn't provide something else. 2012-10-01 13:09:27 +02:00
Henri Verbeet 3ac14606ae winex11: Use the first active CRTC as primary if no primary is explicitly set. 2012-09-28 11:26:36 +02:00
Henri Verbeet 73d68c5a31 winex11: Handle a NULL cursor clipping rect the same as a fullscreen rect.
We want to avoid ungrabbing the clipping window if "fullscreen clipping" is
enabled.
2012-09-28 11:26:33 +02:00
Henri Verbeet 47c54c4ae7 winex11: Fullscreen windows are never maximized.
Some window managers incorrectly set maximized state on fullscreen windows.
2012-09-28 11:26:22 +02:00
Aric Stewart 5f5f20d6cf imm32: Properly separate the IME UI window and the thread default IME window. 2012-09-27 16:49:18 +02:00
Rico Schüller 9be6846224 winex11.drv: Remove unneeded include file. 2012-09-26 14:40:49 +02:00
Alexandre Julliard 7ee7d3a83f winex11: Recreate the graphics context when setting the drawable. 2012-09-26 14:40:43 +02:00
Alexandre Julliard 014ec638d6 winex11: Remove some unused palette code. 2012-09-26 14:40:42 +02:00
Alexandre Julliard 3c57f11374 winex11: Create a default colormap along with the default visual info. 2012-09-26 14:40:40 +02:00
Alexandre Julliard 988f2fde86 winex11: Store the full visual info for the default visual. 2012-09-26 14:40:39 +02:00
Alexandre Julliard 0a9398421c winex11: Add a workaround for XInput support with mouse drivers that don't provide labels. 2012-09-26 14:40:38 +02:00
Ken Thomases 5844105223 winex11: Avoid a redundant TRACE. 2012-09-24 22:27:27 +02:00
Alexandre Julliard 313157a036 winex11: Add window data structure locking to the remaining entry points. 2012-09-24 22:27:27 +02:00
Alexandre Julliard b515beb4a0 winex11: Add window data structure locking to the SetLayeredWindowAttributes entry point. 2012-09-24 22:27:27 +02:00
Alexandre Julliard 84918e7f06 winex11: Add window data structure locking to the SetWindowStyle entry point. 2012-09-24 22:27:27 +02:00
Alexandre Julliard 4c58210390 winex11: Add window data structure locking to the WindowPosChanging/Changed entry points. 2012-09-24 22:27:27 +02:00
Alexandre Julliard 803fc6e27c winex11: Add window data structure locking to the SysCommand entry point. 2012-09-24 22:27:27 +02:00
Alexandre Julliard 6a9f5e18d1 winex11: Add window data structure locking to the ShowWindow entry point. 2012-09-24 22:27:26 +02:00
Alexandre Julliard a6c543d0e6 winex11: Add window data structure locking to the map/unmap functions. 2012-09-21 16:54:40 +02:00
Alexandre Julliard ba926faf91 winex11: Store the window display connection in the window structure. 2012-09-21 16:29:24 +02:00
Alexandre Julliard 9ac774b88d winex11: Add window data structure locking to the window region functions. 2012-09-21 15:53:48 +02:00
Alexandre Julliard ffa7af171a winex11: Add window data structure locking to the X window creation paths. 2012-09-21 15:51:37 +02:00
Alexandre Julliard 16410ead78 winex11: Separate fetching the window icon bits and setting the WM hints. 2012-09-21 14:01:40 +02:00
Alexandre Julliard d82082c14f winex11: Move the support for making the owner window managed to a separate function. 2012-09-21 13:57:00 +02:00
Alexandre Julliard 5f8e41233b winex11: Add window data structure locking to the XEmbed event handler. 2012-09-19 13:14:00 +02:00
Alexandre Julliard 220f1af064 winex11: Add window data structure locking to the GravityNotify event handler. 2012-09-19 13:13:51 +02:00
Alexandre Julliard 89a60562a7 winex11: Add window data structure locking to the ReparentNotify event handler. 2012-09-19 13:13:40 +02:00
Alexandre Julliard 24c0abfd40 winex11: Add window data structure locking to the ConfigureNotify event handler. 2012-09-19 13:13:23 +02:00
Alexandre Julliard 6a4490d8ab winex11: Add window data structure locking to the Expose event handler. 2012-09-19 13:13:04 +02:00
Alexandre Julliard 2c9ce4968a winex11: Add window data locking to the focus event handlers. 2012-09-18 14:47:02 +02:00
Alexandre Julliard b8edf184ee winex11: Add a helper function to set input focus for non-managed windows. 2012-09-18 14:47:02 +02:00
Alexandre Julliard 41d0316522 winex11: Add window data locking to the system tray functions. 2012-09-18 14:47:01 +02:00
Alexandre Julliard 731e497a87 winex11: Add window data locking to the drag and drop functions. 2012-09-18 14:47:01 +02:00
Alexandre Julliard 1cfed8922e winex11: Add window data locking to the mouse functions. 2012-09-18 14:47:01 +02:00
Alexandre Julliard 4289c74f50 winex11: Allow retrieving the window data structure from another thread, with appropriate locking. 2012-09-17 14:13:24 +02:00
Alexandre Julliard c8ea1e50dc winex11: Avoid passing a window data structure to functions that can send messages. 2012-09-17 12:42:21 +02:00
Alexandre Julliard 0682355af2 winex11: Don't use a window surface for embedded windows. 2012-09-13 10:31:58 +02:00
Alexandre Julliard edea44f0ff winex11: Add support for the LWA_COLORKEY layered window attribute. 2012-09-12 16:00:18 +02:00
Alexandre Julliard 64dc6561cd winex11: Remove support for icon windows, use a default icon instead. 2012-09-10 16:22:08 +02:00
Alexandre Julliard a39659fcc9 winex11: Disable client-side rendering for OpenGL windows. 2012-09-10 16:16:05 +02:00
Rico Schüller c67e48b9fa winex11.drv: Remove unneeded variable definition. 2012-09-10 11:47:11 +02:00
Alexandre Julliard 115d488183 winex11: Add helper functions to retrieve drawable information for a window or DC. 2012-09-10 11:39:28 +02:00
Alexandre Julliard 025f4aed1e winex11: Move the fps tracing to opengl32. 2012-09-10 11:38:30 +02:00
Alexandre Julliard 05c32b9b89 gdi32: Move the SwapBuffers entry point to the OpenGL driver. 2012-09-10 11:38:28 +02:00
Alexandre Julliard b4e3674747 winex11: Get the information from the drawable structure in SwapBuffers. 2012-09-10 11:38:25 +02:00
Alexandre Julliard bde5156876 winex11: Get the current pixel format from the drawable structure in wglMakeContextCurrentARB. 2012-09-07 16:19:17 +02:00
Alexandre Julliard 11013af0a1 winex11: Get the current pixel format from the drawable structure in wglMakeCurrent. 2012-09-07 16:19:16 +02:00
Alexandre Julliard d52c2de7da winex11: Get the current pixel format from the drawable structure in wglCreateContextAttribsARB. 2012-09-07 16:19:15 +02:00
Alexandre Julliard c01d723a4f winex11: Get the current pixel format from the drawable structure in wglCreateContext. 2012-09-07 16:01:14 +02:00
Alexandre Julliard 356f9897cd winex11: Store a format pointer instead of an index in the drawable structures. 2012-09-07 16:01:13 +02:00
Alexandre Julliard bf5e1b6a05 winex11: Get the current pixel format from the drawable structure in wglGetPixelFormat. 2012-09-07 16:01:10 +02:00
Alexandre Julliard 4df8f15ff9 winex11: Store a drawable structure also for pbuffer contexts. 2012-09-07 16:01:03 +02:00
Alexandre Julliard ecc8559fe8 winex11: Get the current pixel format from the drawable structure for wglSetPixelFormat. 2012-09-07 16:00:59 +02:00
Alexandre Julliard 6f1d43b16e winex11: Check for changes in min/maximize state even when the window rectangle didn't change. 2012-09-06 14:09:06 +02:00
Alexandre Julliard 2eebedf38e winex11: Handle Expose events by refreshing from the window surface. 2012-09-06 14:08:37 +02:00
Alexandre Julliard 33ac850c80 winex11: Use window surfaces for rendering top-level windows.
It can be disabled by setting "ClientSideGraphics"="n".
2012-09-06 12:44:54 +02:00
Alexandre Julliard a5ef549c6e user32: Add support for managing a DIB surface for a window. 2012-09-06 12:35:32 +02:00
Alexandre Julliard 514eb69584 winex11: Store the rectangle of the GL drawable and use it when updating the window size. 2012-09-04 15:03:04 +02:00
Alexandre Julliard ea07c310ec winex11: Create the whole window at window creation time. 2012-09-04 14:11:16 +02:00
Alexandre Julliard 9f042298f7 winex11: Move the GL drawable management to opengl.c. 2012-09-03 16:45:51 +02:00
Alexandre Julliard ef034e71e2 winex11: Treat the client window as an OpenGL drawable. 2012-09-03 16:45:51 +02:00
Alexandre Julliard fbac3194a5 winex11: Store the OpenGL drawable in a separate structure with its own context. 2012-09-03 16:45:51 +02:00
Alexandre Julliard d596b62d95 winex11: Only create the client window when the pixel format is changed. 2012-09-03 16:45:50 +02:00
Alexandre Julliard 044f790bcb winex11: Always paint to the whole window. 2012-08-30 19:02:27 +02:00
Alexandre Julliard 2967599286 winex11: Don't select for mouse events on the client window. 2012-08-30 12:57:45 +02:00
Alexandre Julliard e280527f6b winex11: Never attempt to create the window data from a different thread. 2012-08-30 12:11:58 +02:00
Alexandre Julliard d35fc4369f user32: Always go through set_window_pos when the WS_VISIBLE style is changed. 2012-08-29 20:09:28 +02:00
Henri Verbeet e426fa9cb9 winex11: Try harder to get usable RandR screen resources. 2012-08-20 11:00:29 +02:00
Henri Verbeet 28a9b39372 winex11: Try XRandR 1.0 if 1.2 fails. 2012-08-20 10:59:52 +02:00
Alexandre Julliard 03d377eae7 winex11: Release the keyboard lock before sending input to the server. 2012-08-17 10:06:41 +02:00
Alexandre Julliard 9980868b81 winex11: Get rid of the X11 locking functions. 2012-08-16 16:52:31 +02:00
Alexandre Julliard cf1be58706 winex11: Remove the remaining X11 locking calls. 2012-08-16 16:48:00 +02:00
Alexandre Julliard 26fb3d4a69 winex11: Add a critical section to protect the keyboard mapping tables. 2012-08-16 16:43:19 +02:00
Alexandre Julliard c970621d90 winex11: Create contexts at initialization time to avoid the need for locks. 2012-08-16 14:34:00 +02:00
Alexandre Julliard ff60249cab winex11: Use the labels to find the mouse motion valuators for XInput2. 2012-08-16 10:27:19 +02:00
Alexandre Julliard f579091380 winex11: Store XInput2 device info in the thread data. 2012-08-16 10:25:49 +02:00
Alexandre Julliard 5e932efbf6 winex11: Remove the redundant pixel format index from the pixel format object. 2012-08-15 15:44:00 +02:00
Alexandre Julliard 451828e169 winex11: Make pixel format objects const and get rid of the WineGLPixelFormat typedef. 2012-08-15 15:38:05 +02:00
Alexandre Julliard b908a72635 winex11: Initialize the OpenGL format list at startup and simplify the conversion routines. 2012-08-15 15:32:24 +02:00
Alexandre Julliard b8cc4d50ef winex11: Add a critical section to protect the OpenGL context list. 2012-08-15 14:41:57 +02:00
Alexandre Julliard f9a383323f winex11: Remove unnecessary cleanups on process exit. 2012-08-15 14:24:20 +02:00
Alexandre Julliard 6f6217e9a4 winex11: Remove remaining X11 locking around graphics calls. 2012-08-14 15:13:21 +02:00
Alexandre Julliard 6bfcb347bf winex11: Remove X11 locking around simple X calls. 2012-08-14 15:13:08 +02:00
Henri Verbeet 292869b969 winex11: Explicitly clear virtual desktop maximized state. 2012-08-13 16:28:50 +02:00
Henri Verbeet 13820b6f94 winex11: Don't set MWM decorations either for fullscreen virtual desktops. 2012-08-13 16:28:50 +02:00
Michael Stefaniuc 43b8858986 winex11.drv: Avoid TRUE:FALSE conditional expressions. 2012-07-31 12:36:42 +02:00
Alexandre Julliard 96e80c2623 gdi32: Move DescribePixelFormat and SetPixelFormat to the WGL driver. 2012-07-30 22:12:13 +02:00
Alexandre Julliard 917fe72bb0 winex11: Get rid of the OpenGL bitmap support. 2012-07-27 17:05:29 +02:00
Alexandre Julliard 5f157e18e2 opengl32: Store the context current DCs on the opengl32 side. 2012-07-25 16:11:05 +02:00
Alexandre Julliard f3e1e46c85 winex11: Add a helper function to correctly check extension strings. 2012-07-24 17:37:50 +02:00
Francois Gouget baf0a74b11 winex11.drv: Don't include wgl_driver.h if OpenGL is not supported. 2012-07-23 19:53:49 +02:00
Alexandre Julliard 72e873873e winex11: Get rid of the glGetIntegerv wrapper. 2012-07-20 13:21:25 +02:00
Alexandre Julliard 76ae99a426 winex11: Remove unused fields in the PBuffer object. 2012-07-20 12:36:44 +02:00
Alexandre Julliard 6a3aa4eb49 opengl32: Use proper handles for PBuffers instead of raw pointers. 2012-07-20 12:36:41 +02:00
Alexandre Julliard 1b9455e65d opengl32: Add supported wgl extension functions to the OpenGL function table. 2012-07-20 00:40:42 +02:00
Alexandre Julliard 4c0779006e opengl32: Move the wgl functions to the main OpenGL function table. 2012-07-19 22:50:37 +02:00
Alexandre Julliard 101bdf425b winex11: Use the function table pointer to call dynamically loaded OpenGL functions. 2012-07-18 19:51:09 +02:00
Alexandre Julliard df91c7bc83 opengl32: Redirect standard OpenGL functions through the TEB function table. 2012-07-18 17:12:29 +02:00
Alexandre Julliard 33ca17e1e9 winex11: Fill a function table with the standard OpenGL functions and store it in the TEB. 2012-07-18 17:11:42 +02:00
Henri Verbeet 2b4a7912ec winex11: Add support for XRandR 1.3. 2012-07-16 14:26:11 +02:00
Henri Verbeet cf6f8d2eb5 winex11: Add support for XRandR 1.2. 2012-07-16 14:25:42 +02:00
Henri Verbeet ed331cb0a5 winex11: Properly calculate the virtual screen rect in xinerama_init(). 2012-07-16 14:23:20 +02:00
Henri Verbeet 401d12085b winex11: Fix the virtual desktop check in update_desktop_fullscreen(). 2012-07-13 10:31:52 -05:00
Henri Verbeet 92e04256a9 winex11: Simplify the XRandR mode matching code a bit. 2012-07-13 10:30:21 -05:00
Alexandre Julliard 4b0f27f664 winex11: Get rid of the no longer needed drawable rect in the X11 device. 2012-07-12 16:05:37 -05:00
Henri Verbeet b4a31d0a9e winex11: Get rid of some needless globals. 2012-07-11 11:17:21 -05:00
Henri Verbeet 5ed890904b winex11: Simplify X11DRV_XRandR_Init() error handling a bit. 2012-07-11 11:17:18 -05:00
Francois Gouget 98c605d6c7 winex11.drv: We must include Xlib.h before Xrandr.h. 2012-07-11 10:00:51 -05:00
Henri Verbeet 3e5c76bd09 winex11: Introduce a separate function for initializing the list of XRandR display modes. 2012-07-10 10:40:17 -05:00
Henri Verbeet 76725f9885 winex11: Remove some unused includes from xrandr.c. 2012-07-10 10:40:08 -05:00
Henri Verbeet 6c4465f4ac winex11: Get rid of xrandr.h. 2012-07-09 15:05:02 -04:00
Henri Verbeet eafc8d0b34 winex11: Get rid of xvidmode.h. 2012-07-09 15:04:48 -04:00
Dmitry Timoshkov 6173e6bfb6 winex11.drv: Avoid conflicting definitions of WINGDIAPI. 2012-07-09 09:59:32 -04:00
Alexandre Julliard 241ab9257c winex11: Use the correct drawable with the X11DRV_GET_DRAWABLE escape. 2012-07-03 16:56:40 +02:00
Henri Verbeet 3ea8de2637 winex11: Use our own structure for mode information. 2012-07-03 14:57:07 +02:00
Henri Verbeet 0fda9d95a5 winex11: Get rid of some unused prototypes. 2012-07-02 19:18:01 +02:00
Alexandre Julliard 39819d1e8b winex11: Replace wgl.h by the official wglext.h from the OpenGL registry. 2012-07-02 19:17:41 +02:00
Alexandre Julliard 19fcc230d0 winex11: Move GLX definitions out of wgl.h. 2012-07-02 13:21:54 +02:00
Alexandre Julliard 83be88953b opengl32: Make the WGL driver context-specific. 2012-06-29 20:41:36 +02:00
Alexandre Julliard d89f7f2563 opengl32: Move checks of the context thread id to opengl32. 2012-06-29 20:41:35 +02:00
Alexandre Julliard 0045ec9dfb opengl32: Use proper handles for GL contexts and pass a context pointer to the WGL driver functions. 2012-06-29 20:41:34 +02:00
Alexandre Julliard e059d565ab gdi32: Add a null WGL driver. 2012-06-28 18:52:27 +02:00
Alexandre Julliard 6a9dcd51a2 gdi32: Remove the remaining OpenGL entry points from the DC driver. 2012-06-28 18:52:23 +02:00
Alexandre Julliard 855f225498 opengl32: Move wglGetCurrentContext implementation to opengl32. 2012-06-28 18:52:11 +02:00
Alexandre Julliard edfc7f0de0 opengl32: Move wglGetProcAddress to the WGL driver. 2012-06-28 16:14:55 +02:00
Alexandre Julliard 8a13afedd6 opengl32: Move GetPixelFormat to the WGL driver. 2012-06-28 15:53:14 +02:00
Alexandre Julliard bbdf77a311 opengl32: Move wglCreateContext to the WGL driver. 2012-06-28 15:47:31 +02:00
Alexandre Julliard 3bcb8057a1 opengl32: Move wglCreateContextAttribsARB to the WGL driver. 2012-06-28 15:07:44 +02:00
Alexandre Julliard 47fe838b15 opengl32: Move wglMakeContextCurrentARB to the WGL driver. 2012-06-28 14:49:49 +02:00
Alexandre Julliard 7a031d9b92 opengl32: Add the concept of a WGL driver. 2012-06-28 14:37:31 +02:00
Alexandre Julliard db25d4022a winex11: Simplify wglSetPixelFormatWINE and export it as a standard extension function. 2012-06-28 13:13:01 +02:00
Alexandre Julliard 4a367c5719 winex11: Export wglMakeCurrent and wglMakeContextCurrentARB as standard extension functions. 2012-06-28 01:44:03 +02:00
Alexandre Julliard bebf84f7a8 winex11: Use the GET_DRAWABLE escape to implement wglMakeContextCurrentARB. 2012-06-28 01:44:03 +02:00