Commit graph

206 commits

Author SHA1 Message Date
Paul Gofman
698ab75a59 server: Don't update cursor pos in set_window_pos() if window wasn't moved.
Fixes a regression introduced by commit db9a4bc66a.
2024-11-14 21:56:33 +01:00
Rémi Bernon
9a11af381b server: Use the monitor infos to map points from raw to virt. 2024-11-12 21:52:24 +01:00
Rémi Bernon
11f56b3a04 server: Use the monitor infos to compute the virtual screen rect. 2024-11-04 13:32:55 +01:00
Paul Gofman
db9a4bc66a server: Sync cursor position on window position change. 2024-10-29 14:23:53 -05:00
Tim Clem
a7b69cb692 server: Make shell, taskman, and progman windows per-desktop. 2024-10-02 09:47:42 +02:00
Aida Jonikienė
a4e77b33f6 server: Move last_active variable initialization (Valgrind).
Fixes: 5b56bad50b ("server: Make window struct a server object.")
2024-09-24 23:23:33 +02:00
Rémi Bernon
1c9c6f0b32 server: Pass window's per-monitor DPI in set_window_pos. 2024-09-02 22:52:55 +02:00
Rémi Bernon
309daa5bee win32u: Avoid sending WM_PAINT to layered window surfaces.
And prevent drawing to layered surface.
2024-08-01 16:48:38 +02:00
Rémi Bernon
ee8f0b6c5d server: Update window surface regions when the window is shaped. 2024-05-30 19:53:21 +02:00
Rémi Bernon
7cdf20267c server: Merge get_surface_region / get_window_region requests together. 2024-05-30 19:53:21 +02:00
Rémi Bernon
a3b22d3bf7 win32u: Only keep DPI awareness context with window objects. 2024-05-28 20:45:11 +02:00
Zhiyi Zhang
cd771fa713 server: Allow creating a real explorer desktop window for invisible window stations.
The graphics driver information is stored as a property in the desktop window. When the server
get_desktop_window handler simply returns a window handle when the window station is invisible,
the window handle doesn't have the graphics driver property, which is set in desktop_window_proc()
when handling WM_NCCREATE. Removing the invisible window station check allows an invisible explorer
desktop window to be created and with the required property.
2023-07-03 22:15:42 +02:00
Rémi Bernon
ab9b99c4a5 server: Pass set_cursor flags in WM_WINE_CLIPCURSOR wparam.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55047
2023-06-16 21:35:58 +02:00
Rémi Bernon
2101d4d6ad server: Use the helper to reset the clip rect when the desktop size changes. 2023-06-07 22:48:27 +02:00
Jinoh Kang
078b0219aa server: Update parent window region when exposing previously invisible window.
Fixes: 33617af814
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54949
2023-06-02 20:47:28 +02:00
Jinoh Kang
33617af814 server: Don't invalidate the newly exposed child region on the parent if it doesn't clip children.
This partly reverts e42eaaaf3a.

Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jinoh Kang
c310e975f4 server: Redraw composited window child when its z-order changes.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53153
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jinoh Kang
17e6ef6d7e server: Correctly expose composited parent window and its child on position change.
Skip redrawing the composited child window when the window rect and
visible region stays the same, since we're taking the union of the old
and new visible regions.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53153
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
2022-11-04 19:23:56 +01:00
Jacek Caban
f139b06651 server: Store all 64 bits of window id.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-10 18:15:04 +01:00
Jacek Caban
6366694d2b user32: Destroy window server objects from destroy_thread_windows.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-10 18:11:20 +01:00
Jacek Caban
3cbccd4477 server: Don't allow creating children of orphaned windows.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
862d0eeff9 server: Orphan child windows when unlinking them from parent.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
82572350cd server: Don't allow orphaned windows in set_parent request.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
078bcc066c server: Don't immediately destroy child windows belonging to different thread in free_window_handle.
Notify their thread instead.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
d52e454c12 server: Keep a reference to parent in window objects.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
5b56bad50b server: Make window struct a server object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Jacek Caban
88131e4764 server: Allocate extra_bytes separately from window struct.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-09 18:37:32 +01:00
Piotr Caban
fd60414fce user32: Fix window style while CBT_CREATEWND hook is called.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 18:03:12 +02:00
Alexandre Julliard
c954e5b9e6 server: Avoid using wine/port.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-07 18:03:11 +02:00
Alexandre Julliard
a88973a5f9 server: Store length of window text instead of null-terminating it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-23 11:40:04 +01:00
Alexandre Julliard
dc6f39ac29 server: Use screen coordinates in the update_window_zorder request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 15:16:45 +02:00
Alexandre Julliard
87d1a4a329 server: Scale coordinates in get_window_children_from_point based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-27 13:32:57 +02:00
Alexandre Julliard
8698b600c6 server: Map region to the window DPI in redraw_region().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
8de1b2c2ce user32: Scale coordinates in MapWindowPoints() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
c5a6925676 user32: Scale coordinates in WIN_GetRectangles() based on DPI awareness.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-24 20:12:05 +02:00
Alexandre Julliard
766287ad6a server: Return the surface rect as top clipping rect.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Alexandre Julliard
6ccb94392a server: Clip visible region to the surface rectangle instead of the desktop.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:45:11 +02:00
Alexandre Julliard
85f81948de server: Store the surface rectangle in the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-11 15:44:15 +02:00
Alexandre Julliard
b73a50a35e user32: Update RedrawWindow behavior with explicit desktop window handle.
Newer Windows versions behave differently.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-06 20:51:26 +02:00
Alexandre Julliard
8cfac3b218 server: Don't clip update regions to the desktop window.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-05 19:08:34 +02:00
Alexandre Julliard
d3876ca84e server: Add a couple of rectangle helper functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-05 19:08:34 +02:00
Alexandre Julliard
55f036e730 server: Don't convert the surface region to screen coordinates.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:50:28 +02:00
Alexandre Julliard
026309888c user32: Only pass the new valid rectangle to the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-05 17:19:53 +02:00
Alexandre Julliard
376c218ad6 server: Removed unused visible rect from get_window_rectangles request.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-24 19:12:03 +02:00
Alexandre Julliard
51e8d579bb user32: Don't send cross-process message for GetWindowTextLength().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-22 21:58:02 +02:00
Alexandre Julliard
f7b5b8975c user32: Store the window DPI in the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-17 14:10:23 +02:00
Alexandre Julliard
8a70b70f42 user32: Update the window DPI awareness in SetParent().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 16:27:57 +02:00
Alexandre Julliard
433788736b user32: Store the window DPI awareness in the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-15 16:27:36 +02:00
Alexandre Julliard
bcbc84e214 user32: Don't exclude clipped children from the copied window bits since they may be up to date.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 10:41:43 +02:00
Alexandre Julliard
4f88a57ce7 server: Return the top surface window even when not using OpenGL.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 11:05:15 +02:00