Commit Graph

299 Commits

Author SHA1 Message Date
Alexandre Julliard 9cd1ce2510 winex11: Don't try to create the owner window if it belongs to a different thread. 2010-03-01 17:06:19 +01:00
Alexandre Julliard 913cab1353 winex11: Switch owner window to managed when displaying one of its popups. 2010-02-23 12:35:10 +01:00
Alexandre Julliard 391afac66f winex11: Windows that own popups should be managed. 2010-02-23 12:34:19 +01:00
Alexandre Julliard 7b3a00c09e winex11: Make sure that the owner window exists when setting the transient for attribute. 2010-02-23 12:33:01 +01:00
Kusanagi Kouichi 10789142fc winex11.drv: Check XDND version. 2010-02-22 11:55:42 +01:00
Alexandre Julliard bcf88b5885 winex11: Fix the DC rect offset for a released DC. 2010-02-16 12:37:42 +01:00
Alexandre Julliard 08b8325460 winex11: Shape offset must be relative to the window position. 2010-02-08 17:49:47 +01:00
Alexandre Julliard 4c7b8ca524 winex11: Update the window shape offset when the window rect changes. 2010-02-04 17:27:19 +01:00
Alexandre Julliard aa47784130 winex11: Synchronize the shaped flag with the window region before determining the window size. 2010-02-02 20:28:21 +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
Vincent Povirk 05f00f4ed8 winex11.drv: Allow windows in a virtual desktop to have X focus. 2009-11-12 14:39:14 +01: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
Alexandre Julliard e3720c2810 winex11: Use the Globally Active focus model with take focus. 2009-08-13 18:18:33 +02:00
Alexandre Julliard edebc2b75f winex11: Try to use the correct window rectangle as far as possible at XCreateWindow time. 2009-06-25 12:10:44 +02:00
Alexandre Julliard a4644f126b winex11: Limit window dimensions to 65535 to avoid 16-bit truncation issues. 2009-05-05 15:36:25 +02:00
Andrew Talbot f63ceec432 winex11.drv: Declare some functions static. 2009-01-30 11:43:41 +01:00
Alexandre Julliard 95cf00f30b winex11: Flush the display after releasing the capture to make sure it happens right away. 2009-01-26 15:12:55 +01:00
Vincent Povirk 538cf8b847 winex11: Select StructureNotifyMask input on all windows. 2009-01-10 17:43:11 +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
Alexandre Julliard 7fdadbb377 server: Add functions for conversions between server user handles and pointer-style handles. 2008-12-08 16:58:20 +01:00
Dmitry Timoshkov 15c8206118 winex11.drv: Use the monitor work area to decide whether a window should be made managed. 2008-10-07 12:13:03 +02:00
Alexandre Julliard fb84ba59d9 winex11: Fix SetLayeredWindowAttributes when called on a thread that doesn't have any window. 2008-09-22 12:52:53 +02:00
Alexandre Julliard 3cb23d3455 winex11: Don't try to retrieve the X11 size on ShowWindow for zero-sized windows. 2008-09-17 21:17:11 +02:00
Alexandre Julliard 308476ef2f winex11: Force the X11 size of zero-sized window to always be 1x1. 2008-09-17 21:11:47 +02:00
Alexandre Julliard be3c3a5214 winex11: Driver-side implementation of SetLayeredWindowAttributes.
Based on a patch by Rob Shearman.
2008-09-12 15:54:02 +02:00
Alexandre Julliard 2f11213168 user32: Notify the user driver about window extended style changes too. 2008-09-12 14:55:07 +02:00
Alexandre Julliard 9fab7b458a winex11: Fixed mapping of the move/resize starting point to X11 root coordinates. 2008-09-12 11:03:26 +02:00
Alexandre Julliard 9d45cfde33 winex11: Support setting the window region on windows belonging to other threads. 2008-09-08 15:51:08 +02:00
Alexandre Julliard 370368aace winex11: Moved the X11DRV_WindowMessage function to window.c. 2008-09-08 15:42:24 +02:00
Alexandre Julliard ac40efa911 winex11: Always set the z-order when a window is being made visible. 2008-08-29 13:34:55 +02:00
Alexandre Julliard 31b4061c9b winex11: Fetch the current X window position on ShowWindow resulting from a window manager event.
This ensures that we get the correct size for maximized windows too,
which cannot be done with SetWindowPlacement.
2008-07-31 11:40:49 +02:00
Alexandre Julliard 89a3bd0c15 user32: Split the SetWindowPos driver backend in WindowPosChanging/Changed.
This is needed to allow updating the visible rect before invalidating
the DCEs.
2008-07-02 15:40:10 +02:00
Alexandre Julliard 93a02e7f65 winex11: Don't create a win data structure for HWND_MESSAGE windows. 2008-06-26 16:49:09 +02:00
Alexandre Julliard e7044cb8f8 winex11: Explicitly request creation of the thread display where necessary. 2008-06-26 16:47:42 +02:00
Alexandre Julliard 9d53a1ae2b winex11: Get rid of the explicit colormap management. 2008-06-26 16:21:32 +02:00
Alexandre Julliard 06a1407c13 winex11: Explicitly request creation of the per-thread data where necessary. 2008-06-26 15:08:08 +02:00
Alexandre Julliard fc8c21c259 winex11: Avoid erasing the window when changing the pixel format. 2008-06-18 20:10:56 +02:00
Alexandre Julliard 2d9b38133b winex11: Add support for performing GL calls on a top-level window DC. 2008-05-28 17:52:06 +02:00
Alexandre Julliard ed37174a71 winex11: Make sure that all glX functions are called under the X11 lock. 2008-05-28 17:02:07 +02:00
Alexandre Julliard 30a133fe00 winex11: When re-creating a client window check the new visual against the current one instead of the default one. 2008-05-13 10:43:48 +02:00
Alexandre Julliard b605980bf1 winex11: Create a dummy parent window for composite child windows to avoid using the root. 2008-05-12 19:37:57 +02:00
Alexandre Julliard 6e9dea8a27 winex11: Create all the GL drawables using the gdi_display to avoid synchronization issues. 2008-05-12 19:37:54 +02:00
Andrew Talbot 5156219a1c winex11.drv: Remove unused variables. 2008-05-02 16:08:15 +02:00
Alexandre Julliard 6b9517a70a winex11: Only unmap a window when explicitly hidden, not just when WS_VISIBLE is cleared. 2008-05-01 18:11:26 +02:00
Alexandre Julliard 8a5f578223 winex11: Ignore the specified owner if it's a zero-size window.
Go back to not mapping zero-size windows.
2008-05-01 18:11:26 +02:00
Alexandre Julliard 2bbf00ed08 winex11: Don't put window manager decorations on shaped windows. 2008-04-29 12:46:16 +02:00
Alexandre Julliard 1f99d80c06 winex11: Don't force tool windows to unmanaged mode.
The detection algorithm should be good enough for that case now.
2008-04-25 14:26:52 +02:00
Roderick Colenbrander f0307d9366 wgl: Add a wine specific WGL extension which allows you to change the pixel format multiple times. 2008-04-24 12:32:38 +02:00
Alexandre Julliard bbd32aacff winex11: Don't allow changing the X11 size of a maximized window. 2008-04-23 15:34:07 +02:00
Alexandre Julliard 6ba06fa7af winex11: Make sure that the window gravity is always set. 2008-04-23 15:33:29 +02:00
Alexandre Julliard 855308fd95 winex11: Merged the contents of winpos.c into window.c. 2008-04-23 15:32:58 +02:00
Alexandre Julliard 0bbadeb69b winex11: Set type to dialog for owned popup windows. 2008-04-21 20:33:18 +02:00
Alexandre Julliard 9727aa8123 winex11: Use SetWindowPos to invalidate DCEs when changing the pixel format. 2008-04-21 20:32:22 +02:00
Alexandre Julliard 24dbaa0856 winex11: Moved the WM_SYSCOMMAND handling to window.c. 2008-04-17 16:13:34 +02:00
Dmitry Timoshkov 15c0bcb3d8 winex11.drv: Map zero-sized windows but don't add WM decoration to them. 2008-04-17 12:41:18 +02:00
Alexandre Julliard 18f4fb9883 winex11: Fix the type hint for the desktop window. 2008-04-14 13:27:38 +02:00
Alexandre Julliard 9bf9c0b7ec winex11: Make WS_EX_APPWINDOW windows have normal type. 2008-04-14 13:27:19 +02:00
Matthew D'Asaro 4217fcb187 winex11: Add registry option to let wine decorate windows. 2008-04-11 13:11:17 +02:00
Alexandre Julliard 70ef99e5e1 winex11: Make sure to flush painting operations before moving a window. 2008-04-10 14:47:19 +02:00
Kusanagi Kouichi 185157cb6e winex11: Connect to XIM server dynamically. 2008-04-10 12:45:56 +02:00
Alexandre Julliard 731d77f762 winex11: Flush the display after creating X windows. 2008-04-09 20:24:27 +02:00
Alexandre Julliard 52246fb921 winex11: Move all the embedded systray window support to winex11.drv. 2008-04-08 15:47:36 +02:00
Dmitry Timoshkov 1bf824e0b0 winex11.drv: Do not set window type to utility to avoid a Metacity bug. 2008-04-07 20:35:27 +02:00
Dmitry Timoshkov 751a71a044 winex11: Change the priority of evaluated window styles to workaround a Metacity bug with handling of utility windows. 2008-04-07 12:15:26 +02:00
Alexandre Julliard 2108734f97 winex11: Get rid of the SetWindowPos hack to unmap systray windows. 2008-04-07 11:42:31 +02:00
Alexandre Julliard 3bfa90eeda winex11: Fix handling of property sizes for 64-bit platforms. 2008-04-07 11:41:54 +02:00
Alexandre Julliard cf9d3e3a00 winex11: Don't update the normal size hints when a window is minimized or maximized. 2008-04-04 11:28:30 +02:00
Alexandre Julliard 4d14adfea3 winex11: Use the same test for resizable windows when setting size and mwm hints. 2008-04-04 11:25:48 +02:00
Alexandre Julliard cef3bc62ce winex11: Always update the window position without relying on the cached values. 2008-04-04 11:20:45 +02:00
Alexandre Julliard 46489aeda2 winex11: Don't attempt to dock into the system tray in desktop mode. 2008-03-25 12:13:28 +01:00
Alexandre Julliard 78de7e363b winex11: Grab the pointer in menu tracking mode too. 2008-03-24 17:59:40 +01:00
Alexandre Julliard 5787c12ba6 winex11: Setting window z-order using a sibling doesn't work with some window managers.
So let's see what happens if we don't set z-order at all in that case.
2008-03-24 15:47:28 +01:00
Alexandre Julliard af369106db winex11: Clip out children window when repainting the desktop. 2008-03-18 12:42:25 +01:00
Alexandre Julliard dc26f27835 winex11: Moved support for window moving/resizing back to user32. 2008-03-12 15:01:24 +01:00
Alexandre Julliard 51d3d620cf winex11: Reset the cursor window when re-creating the client window. 2008-03-05 20:52:14 +01:00
Alexandre Julliard 3b6f95c663 winex11: Add a DestroyNotify handler to catch a situation that is not supposed to happen. 2008-03-05 16:51:09 +01:00
Alexandre Julliard 7af2a9a902 winex11: Avoid depending on win.h. 2008-02-29 13:44:55 +01:00
Alexandre Julliard 936ab3a644 user32: Moved the ShowWindow implementation from winex11 back to user32. 2008-02-28 17:01:30 +01:00
Alexandre Julliard 63dd1a02ca winex11: Merge the iconification support into the SetWindowPos driver backend. 2008-02-28 17:01:10 +01:00
Dmitry Timoshkov cfcacdf554 winex11: Add a workaround for Metacity being too strict and disabling fullscreen support for not resizable windows. 2008-02-28 13:15:03 +01:00
Alexandre Julliard 5a5344b4ad winex11: Added tracking of the WM_STATE window property. 2008-02-27 19:11:43 +01:00
Alexandre Julliard dba8ad5751 winex11: Use the same full screen test in is_window_managed and update_wm_states. 2008-02-25 19:48:07 +01:00
Alexandre Julliard a268725922 winex11: Get rid of the visual id property, we are using the default now. 2008-02-25 16:06:08 +01:00
Alexandre Julliard 1642fbcbc2 user32: Moved the DCE support from winex11 back to user32.
Window and class DCEs are now allocated lazily.
2008-02-25 15:59:19 +01:00
Alexandre Julliard f13ef6b898 winex11: Force the client dimensions to at least 1x1 in sync_gl_drawable. 2008-02-22 16:30:10 +01:00
Alexandre Julliard 42ad345852 winex11: Re-create the client window when setting the pixel format on a top-level window. 2008-02-22 10:40:22 +01:00
Alexandre Julliard e9307d09a6 winex11: Keep track of the window colormap and free it on destroy. 2008-02-21 20:23:32 +01:00
Alexandre Julliard 8ee07d49ae winex11: Re-introduce a separate X11 window for the client area of top-level windows. 2008-02-21 12:53:00 +01:00
Alexandre Julliard 125793df0e winex11: Move the raising of windows on SetFocus to the X11 driver where it belongs. 2008-02-18 17:22:51 +01:00
Alexandre Julliard e6dfbcb07f winex11: Check for managed mode in create_whole_window again now that it is called lazily. 2008-01-25 12:07:11 +01:00
Alexandre Julliard d6f6745c9c user32: Moved the bulk of CreateWindow and SetWindowPos from the driver back into user32. 2008-01-24 11:23:09 +01:00
Alexandre Julliard 8913182b89 winex11: Check for need to make window managed when WS_VISIBLE is set outside of SetWindowPos. 2008-01-24 10:21:07 +01:00
Alexandre Julliard 026974f5be winex11: Create the window data structure lazily, once the window is made visible. 2008-01-24 10:20:51 +01:00
Alexandre Julliard b6cc7f9bcc winex11: Don't create a win_data structure for the root window in non-desktop mode. 2008-01-24 10:20:11 +01:00
Alexandre Julliard cbdf1294e6 winex11: Export a function to dock a window into the system tray, and get rid of the WS_EX_TRAYWINDOW style. 2008-01-23 21:40:45 +01:00
Alexandre Julliard d147e02087 winex11: Remove obsolete code to set Z-order for child windows. 2008-01-23 21:39:32 +01:00
Alexandre Julliard e929e3b603 winex11: Get the icon from the window in case it was changed before the whole window was created. 2008-01-23 16:41:09 +01:00
Alexandre Julliard 12d1d4041a winex11: Set icon hints on non-managed windows too, since they may become managed later on. 2008-01-23 16:40:19 +01:00
Alexandre Julliard 3ba20257ce winex11: Set hints for the existing window text when creating the whole window. 2008-01-23 16:32:55 +01:00
Alexandre Julliard 395928dfb1 winex11: Apply the existing window region (if any) when creating the whole window.
Move X11DRV_SetWindowRgn to window.c.
2008-01-23 16:30:18 +01:00
Alexandre Julliard 9fc4e5f740 winex11: Add a mapped flag to the window data instead of relying on WS_VISIBLE. 2008-01-23 12:28:32 +01:00
Alexandre Julliard c567556dfe winex11: Move code around in X11DRV_SetWindowPos to reduce indentation levels. 2008-01-23 12:28:12 +01:00
Alexandre Julliard bbfbe24681 winex11: Update the win data rectangles before doing anything else in SetWindowPos. 2008-01-23 12:28:01 +01:00
Alexandre Julliard a76abc0322 winex11: Leave it up to explorer to specify the correct size and position for the desktop. 2008-01-23 11:31:07 +01:00
Alexandre Julliard f1a0348b4e winex11: Make the client rect relative to the parent window for consistency with the server side. 2008-01-22 20:08:56 +01:00
Alexandre Julliard dc07b6f969 winex11.drv: Only allocate wm hints if we have an X11 window. 2008-01-22 10:17:52 +01:00
Alexandre Julliard 390ae9cc28 winex11.drv: Fix handling of strange window sizes in CreateWindow, with tests. 2008-01-22 10:16:19 +01:00
Alexandre Julliard 30d84fcd77 user32,server: Set the initial window rectangles to 0,0-0,0. 2008-01-22 10:15:38 +01:00
Alexandre Julliard 6a23bd885d winex11.drv: Set the initial icon hints in set_initial_wm_hints(). 2008-01-21 11:13:37 +01:00
Alexandre Julliard c19af910eb winex11.drv: Don't create a win_data structure for the desktop window, except in the process that owns it.
Handle desktop size changes by sending a message to the desktop owner.
2008-01-17 19:53:59 +01:00
Michael Stefaniuc 4e2eef2b25 winex11.drv: Fix two missing unlocks on error paths. Found by Smatch. 2007-10-22 12:36:08 +02:00
Alexandre Julliard c881875c07 winex11: Don't use a window manager border for a simple WS_BORDER-style border. 2007-10-11 16:24:28 +02:00
Alexandre Julliard c4e20e7462 winex11: Reuse the mwm hints when computing the window X11 rectangle.
This allows more flexibility in deciding which elements of the decor
are done by the window manager.
2007-10-11 16:24:28 +02:00
Alexandre Julliard 8a87429d12 winex11: Add generic mechanism for managing WM_STATE properties. 2007-10-11 16:24:28 +02:00
Chris Robinson 37d835bf9a winex11: Use a GLXPixmap for offscreen OpenGL rendering when XComposite isn't available. 2007-10-03 11:56:55 +02:00
Chris Robinson 00633e37bc winex11: Use an offscreen redirected window for child OpenGL rendering. 2007-10-03 11:46:52 +02:00
Chris Robinson a8124f97e6 winex11: Store a GL-specific drawable with the window. 2007-10-03 11:39:07 +02:00
Alexandre Julliard 12b4930f96 winex11.drv: Invalidate the DCE when the window format is changed. 2007-09-18 09:34:08 +02:00
Chris Robinson d9571c9e6f wgl: Store the fbconfig id with the window when a pixel format is set. 2007-09-18 09:28:06 +02:00
Alexandre Julliard a2a5118362 winex11: Set initial wm hints on the desktop window too. 2007-08-30 12:19:55 +02:00
Alexandre Julliard 74cd76c9c7 winex11: Tool windows should not have WM decorations. 2007-08-29 12:02:57 +02:00
Alexandre Julliard effdfa7da4 winex11: Child windows don't get activated even when requested, so don't make them managed either. 2007-08-27 12:37:14 +02:00
Rob Shearman fba87b110f winex11.drv: Don't activate the systray window when repositioning it. 2007-08-23 20:18:32 +02:00
Alexandre Julliard f48eb1581d winex11: Force a window to managed mode when it is activated. 2007-08-20 22:06:50 +02:00
Alexandre Julliard ac98e0c075 winex11: Switch windows to managed mode in SetWindowPos instead of at creation time. 2007-08-20 22:06:33 +02:00
Alexandre Julliard 0ce718702d winex11: Don't select for StructureNotify events on unmanaged windows. 2007-08-20 14:23:10 +02:00
Alexandre Julliard 7d9739e2b5 winex11: Move setting of the initial wm hints to a separate function. 2007-08-20 14:04:36 +02:00
Alexandre Julliard bde89576b3 winex11: Store wm hints in the window data instead of fetching them when needed. 2007-08-16 23:27:37 +02:00
Peter Dons Tychsen d0b21abe81 x11drv: Fix the special case where windows have WS_CHILD and WS_POPUP. 2007-07-25 14:01:14 +02:00
Andrew Talbot 080635bdeb winex11.drv: Exclude unused headers. 2007-05-29 12:10:21 +02:00
Dmitry Timoshkov 56852a5eac user32: Windows uses ptMaxTrackSize to set an initial window size not ptMaxSize. 2007-04-06 12:37:53 +02:00
Andrew Talbot a33f71a32d winex11.drv: Replace inline static with static inline. 2007-03-17 20:04:54 +01:00
Vitaliy Margolen abcbcc35da winex11.drv: Popup windows with system menu are managed. 2007-02-13 17:16:54 +01:00
Dmitry Timoshkov 0fcc10fc3c user32: Although Windows sends WM_GETMINMAXINFO at the window creation time, it doesn't use returned values to set window size. 2007-02-05 14:01:49 +01:00
Dmitry Timoshkov d57dc9da0a user32: Fix some failures in the MDI message test. 2007-01-04 21:12:26 +01:00
Juris Smotrovs 00982465c4 user32: Extend the support for SWP_STATECHANGED for all windows. 2006-12-19 16:58:24 +01:00
Pierre d'Herbemont 221b044740 user32: Factorize graphics driver SetParent into user32. 2006-12-12 20:38:32 +01:00
Pierre d'Herbemont e5e58a6b13 user32: Factorize driver's SetWindowPos in user32. 2006-11-29 14:05:33 +01:00
Alexandre Julliard a06aeaba39 winex11.drv: Offset X11 coordinates with the primary monitor position.
No longer force the primary monitor to contain the X11 (0,0) coordinate.
2006-10-26 13:04:52 +02:00
Alexandre Julliard 3c305f9db9 winex11.drv: Preliminary support for Xinerama. 2006-10-23 14:37:17 +02:00
Nickolay V. Shmyrev 1a1b902e7f winex11.drv: Always set window type. 2006-10-12 11:37:52 +02:00
Vitaliy Margolen 6069d0d596 winex11drv: Win64 printf format warning fixes. 2006-10-09 15:23:33 +02:00
Dmitry Timoshkov ac387bbe13 winex11.drv: Make all windows moveable by default. 2006-10-05 18:07:10 +02:00
James Liggett 8a75f3bb79 winex11.drv: Fix explorer regression caused by systray patch
Move systray_dock_window call to X11DRV_CreateWindow so that it can
safely call SetWindowPos without having _CheckNotSysLevel crash the
explorer.
2006-08-24 11:51:45 +02:00
James Liggett 60a97505a6 winex11.drv: Add XEmbed system tray support.
Portions of this patch based on the work of Mike Hearn and Rob
Shearman.
2006-08-23 12:09:09 +02:00
Dmitry Timoshkov b2686ad2dd include: Move appropriate parts of winpos.h to winuser.h and win.h,
remove winpos.h afterwards.
2006-06-29 14:48:42 +02:00
Andrew Talbot 55e20a7482 winex11.drv: Write-strings warning fix. 2006-06-27 11:16:19 +02:00
Alexandre Julliard bdb4fab7a7 x11drv: Renamed the x11drv directory to winex11.drv. 2006-06-16 09:57:50 +02:00