Commit Graph

338 Commits

Author SHA1 Message Date
Frédéric Delanoy 323bec99b3 winex11.drv: Use BOOL type where appropriate. 2013-11-29 13:32:46 +01:00
Sebastian Lackner df6dc091e6 winex11: Implement additional XEMBED events. 2013-11-11 20:06:56 +01:00
Alexandre Julliard 13149b67d3 explorer: Create the driver desktop window after the window handle is created. 2013-10-16 12:13:50 +02:00
Alexandre Julliard 9f1f29cc91 winex11: Add a helper function to return the virtual screen rectangle. 2013-10-14 17:26:14 +02:00
Alexandre Julliard 0b71e0bf12 winex11: Add helper functions for converting between root and virtual screen coords. 2013-10-14 17:26:13 +02:00
Frédéric Delanoy ff7fc1fd45 winex11.drv: Use BOOL type where appropriate. 2013-10-02 11:06:39 +02:00
Sebastian Lackner e915cfd4e7 winex11: Call destroy_gl_drawable before destroying the window. 2013-09-30 20:36:33 +02:00
Sebastian Lackner 5fb74c48d1 winex11: Added missing release_win_data() to create_foreign_window(). 2013-09-25 11:54:52 +02:00
Alexandre Julliard ba54de6ed5 winex11: Don't use a surface if there is a client window.
We can't get clipping right for child windows if using a surface.
2013-06-11 18:07:42 +02:00
Alexandre Julliard 04ad06353d user32: Move the common parts of ScrollDC into user32 and the null driver. 2013-04-19 16:16:16 +02:00
Andrew Talbot 0ff8c9da52 winex11.drv: Avoid signed-unsigned integer comparisons. 2013-03-06 11:43:06 +01:00
Alexandre Julliard 4391deb930 winex11: Wait for the client window to be created on the server side. 2013-03-04 13:34:28 +01:00
Alexandre Julliard f15a5ff70f winex11: Explicitly set the border pixel when creating the client window. 2013-03-04 13:34:11 +01:00
Alexandre Julliard 76b8612c3e winex11: Preserve the client window when changing the window visual. 2013-02-13 17:19:40 +01:00
Alexandre Julliard 8373f8b6f6 winex11: Handle Expose events on top-level client windows. 2013-01-23 19:09:29 +01:00
Alexandre Julliard 951415b602 winex11: Store the client window in the window data again, now that it can be accessed from all threads. 2013-01-23 19:06:32 +01:00
Alexandre Julliard 3ad40bf647 winex11: Delay mapping a layered window until its attributes are set. 2012-10-29 14:39:55 +01:00
Alexandre Julliard 5fae649bdf winex11: Never use a surface for embedded windows, even for the parents. 2012-10-21 12:18:28 +02:00
Alexandre Julliard 0f71ff281f winex11: Get rid of the __wine_x11_managed property. 2012-10-15 16:19:09 +02:00
Alexandre Julliard 0bc93684f0 winex11: Move the icon window off-screen for managed windows. 2012-10-15 16:17:22 +02:00
Alexandre Julliard c6e0daa200 winex11: Recreate the GL drawable when changing the window parent. 2012-10-10 20:33:54 +02:00
Alexandre Julliard 47983d819f winex11: Create a surface even for OpenGL windows, to allow painting the non-client area. 2012-10-10 18:56:53 +02:00
Alexandre Julliard 20768173ba server: Add flags in the set_window_pos request to inform the server about the window surface. 2012-10-09 15:22:14 +02:00
Alexandre Julliard 2500e21a90 winex11: Hold a reference to the surface in UpdateLayeredWindow. 2012-10-04 10:34:41 +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 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 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
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 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 b8edf184ee winex11: Add a helper function to set input focus for non-managed windows. 2012-09-18 14:47:02 +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
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
Alexandre Julliard cf1be58706 winex11: Remove the remaining X11 locking calls. 2012-08-16 16:48:00 +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 6bfcb347bf winex11: Remove X11 locking around simple X calls. 2012-08-14 15:13:08 +02:00
Henri Verbeet 13820b6f94 winex11: Don't set MWM decorations either for fullscreen virtual desktops. 2012-08-13 16:28:50 +02: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
Alexandre Julliard 1adbfe921b winex11: Don't free a variable that is no longer allocated on the heap. 2012-06-04 12:17:55 +02:00
Alexandre Julliard c2073b7ba2 winex11: Use the create_pixmap_from_image helper to create window icons. 2012-05-15 20:58:39 +02:00
Alexandre Julliard a708448725 winex11: Define an enum to manage the various types of GL device contexts. 2012-05-07 13:10:18 +02:00
Alexandre Julliard fdef173ce0 winex11: Make sure the clip window is created as soon as possible. 2012-02-13 20:52:03 +01:00
Alexandre Julliard abfed909b2 winex11: Move the window resizing support to mouse.c. 2012-02-01 16:42:48 +01:00
Alexandre Julliard a534925a48 winex11: Reset clipping when a fullscreen window is unmapped. 2012-01-31 13:45:04 +01:00
Matteo Bruni b4afbf98cf winex11: Don't put the GL drawable offscreen. 2012-01-25 11:28:02 +01:00
Dmitry Timoshkov c0cf49d50c winex11.drv: Use dialog window type also for owned windows with WS_EX_DLGMODALFRAME style set. 2012-01-19 21:08:51 +01:00
Kusanagi Kouichi f56e1fcf7c winex11.drv: Assign struct. 2012-01-11 17:47:35 +01:00
Alexandre Julliard c1297ac0d8 winex11: Only take managed popups into account when deciding whether to make a window managed. 2011-12-19 20:15:41 +01:00
Alexandre Julliard c4cf90246d winex11: Hardcode the MWM hints for the desktop window. 2011-12-19 20:15:41 +01:00
Alexandre Julliard 5f1f57ce48 winex11: Update MWM hints when the window size changes. 2011-12-16 12:08:08 +01:00
Ulrich Czekalla 392785965f winex11: Avoid grabbing user_section while holding X11DRV_CritSection. 2011-11-28 20:15:18 +01:00
Alexandre Julliard 098b11e995 winex11: Don't allow setting the cursor across processes while clipping. 2011-11-09 14:26:34 +01: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 a07b8411fc winex11: Export a couple of helper functions for window rectangles. 2011-05-11 12:09:12 +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 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 fd043c5644 winex11.drv: Use dialog window type again for owned popup windows. 2011-04-20 16:29:33 +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 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 ae2b356361 winex11: Implement cursor clipping using a pointer grab. 2011-04-05 13:36:57 +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 b1af55d551 winex11: Don't unmap off-screen windows on PropertyNotify events. 2011-03-07 15:11:10 +01:00
Alexandre Julliard 94fb0f5935 winex11: Synchronize the mouse cursor in update_mouse_state. 2011-02-24 12:16:54 +01:00