Well, the point is, it's always going to be the full monitor, isn't it?
Perhaps, but I don't think it really matters as this is a custom and probably a temporary mechanism. Ultimately we might want to do things differently but here I'm only aiming at something simple that works for Wine 11, not something perfect that will take time to design properly. We have the rect at hand, while getting a monitor would require something more complicated possibly with more unforeseen issues.
Yeah, like I said it's just unimportant bikeshedding.
Right, we also need that call. I think it's still better arrangement to have calls in those three places.
Sure, changed it to this.
Thanks! Henri pointed out a couple other things: * "present_rect" is a bit of an unfortunate name, since that could refer to one or more of the rects passed to wined3d_swapchain_present(). "drawable_rect" would be more in line with existing terminology. * The GetClientRect() usage replaced by patch 3/3 exists because native d3d will present to the client rect of a window, even if it's resized without resizing the swapchain. However, the same is *not* true of fullscreen mode—if the application or user changes the mode, that loses the d3d device, and causes subsequent presentation attempts to fail until the swapchain is recreated. The upshot of this is that the whole of get_swapchain_present_rect() is pretty much unnecessary; you can just use the swapchain size directly. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9585#note_124753