André Hentschel
4f547e784a
winex11: Build helper functions only when needed.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-29 16:06:02 +02:00
Wei xie
48fb9d6a03
winex11: Avoid deadlock when setting cursor.
...
Signed-off-by: Wei xie <xiewei@linuxdeepin.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-29 09:28:34 +02:00
Alexandre Julliard
9b2b9d9cb3
winex11: Use more common names for resizing cursors.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-28 20:11:07 +02:00
Józef Kucia
295b630144
winex11: Return Wine Vulkan driver functions from vkGetDeviceProcAddr().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 11:25:14 +02:00
Józef Kucia
e952a1879f
winex11: Return Wine Vulkan driver functions from vkGetInstanceProcAddr().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 11:25:10 +02:00
Józef Kucia
73f9ceddab
winex11: Properly indent LOAD_FUNCPTR() for Vulkan functions.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 16:24:22 +01:00
Józef Kucia
eefc444f9f
winex11: Simplify X11DRV_vkEnumerateInstanceExtensionProperties().
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-23 16:24:13 +01:00
Nikolay Sivov
9e539f4822
winex11: Fix build without Vulkan support.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-22 08:52:01 +01:00
Józef Kucia
107e7c78fc
winex11: Print ERR() message when Wine was built without Vulkan support.
...
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-21 10:13:47 +01:00
Henri Verbeet
14ec499d5b
winex11: Restore the X11DRV_FLUSH_GL_DRAWABLE XFlush() for setups without OML_sync_control.
...
This was removed in e75bc6228e
, but appears to
mitigate lack of OML_sync_control in at least some setups.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-16 16:40:32 +01:00
Roderick Colenbrander
8ef70305f9
winevulkan: Filter graphics driver reported instance extensions.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-15 12:20:44 +01:00
Roderick Colenbrander
7b07952c25
winex11: Implement Vulkan swapchain support.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 16:40:39 +01:00
Roderick Colenbrander
bd13129a9b
winex11: Implement support for vkGetPhysicalDeviceSurface*KHR APIs.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:08 +01:00
Roderick Colenbrander
53df81c457
winex11: Implement vkDestroySurfaceKHR.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:08 +01:00
Roderick Colenbrander
2d09b4930f
winex11: Implement vkGetPhysicalDeviceWin32PresentationSupportKHR.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:08 +01:00
Roderick Colenbrander
211de3aa0b
winex11: Add initial vkCreateWin32SurfaceKHR implementation.
...
Implement surface creation for top-level windows. Child window rendering
is not yet supported.
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-13 20:58:08 +01:00
Roderick Colenbrander
43c71d9916
winex11: Enable surface support for instances.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:59:40 +01:00
Roderick Colenbrander
0cb6654237
winevulkan/winex11: Add Vulkan WSI stubs (VK_KHR_surface / VK_KHR_swapchain).
...
The WSI APIs are meant for window system integration, so essentially the WGL
of Vulkan. Implementation belongs in the graphics drivers as we need to hook
into surface and swapchains.
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-12 17:59:35 +01:00
Roderick Colenbrander
6eacdf38e2
winevulkan: Implement vkCreateDevice.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-09 13:15:16 -06:00
Roderick Colenbrander
4ab041c370
winevulkan: Load instance functions.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 16:19:45 +01:00
Roderick Colenbrander
75b68a8585
winevulkan/winex11: Implement vkCreateInstance.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:57 +01:00
Roderick Colenbrander
0c87c1c4b7
winex11: Implement vkEnumerateInstanceExtensionProperties.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:17 +01:00
Roderick Colenbrander
6a5c85564c
winex11: Add Vulkan stubs.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:17 +01:00
Roderick Colenbrander
3de61a9dd9
winevulkan: Define vulkan driver interface.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:16 +01:00
Alexandre Julliard
7bc327a1d1
winex11: Get rid of the WineGLInfo structure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 16:06:01 +01:00
Alexandre Julliard
1ce36987eb
winex11: Use the client window support also for XComposite child windows.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 15:49:23 +01:00
Alexandre Julliard
ac4f2ac36f
winex11: Hold a reference to the drawable from the GL context.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 15:42:05 +01:00
Alexandre Julliard
6dc30a2ed3
winex11: Implement refcounting of GL drawables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 15:34:57 +01:00
Alexandre Julliard
99041a6fd3
winex11: Store only the pixmap size instead of the window rectangle in the GL drawable.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-09 13:10:25 +01:00
Alexandre Julliard
9efcd61d01
winex11: Store the visual info in the OpenGL pixel format.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-09 11:08:37 +01:00
Alexandre Julliard
31c7a7157d
winex11: Default to an ARGB visual when depth is set to 32.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-26 13:39:22 +01:00
Alexandre Julliard
e40ff92e7c
winex11: Support using an ARGB visual as default visual.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-26 13:39:03 +01:00
Alexandre Julliard
dcf526b5b1
winex11: Force the alpha bits in the window surface for 32-bit visuals.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-26 13:38:13 +01:00
Alexandre Julliard
a2a2b5bc88
winex11: Use a separate XRender format for the root window.
...
When using a custom visual, the default format may not work with the
root window.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-26 13:36:21 +01:00
Alexandre Julliard
d6332e0e57
winex11: Use the correct colormap for the OpenGL parent window.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-26 13:35:38 +01:00
Henri Verbeet
3eaa23cbbf
winex11: Implement WGL_ARB_create_context_no_error.
...
Mostly because it's easy, and we'd like to use this from wined3d at some
point.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-24 21:30:51 +01:00
Alexandre Julliard
5ef349e45f
winex11: Don't allocate a window surface for off-screen windows.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 15:18:47 +01:00
Henri Verbeet
1246a27730
winex11: Failing to create a context in X11DRV_wglCreateContextAttribsARB() is not an internal error.
...
In particular, without WGL_WINE_query_renderer, the only way to determine
whether a particular context version is supported or not is by attempting to
create a context with that version.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-19 19:45:57 +01:00
Alex Henrie
5c06eba58e
winex11: Escape non-UTF-8 characters in string literals.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-04 21:46:59 +01:00
Rafał Harabień
5c2526a086
winex11.drv: Preserve last error in x11drv_thread_data().
...
Signed-off-by: Rafał Harabień <rafalh1992@o2.pl>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-17 17:44:05 +01:00
Akihiro Sagawa
4adfb1be29
user32: Send WM_IME_CHAR messages from DefWindowProc.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Aric Stewart <aric@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-16 21:48:49 +01:00
Akihiro Sagawa
b8dc1e7cde
winex11: Keep the result string in the IME UI window procedure.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-14 18:06:43 +01:00
Alexandre Julliard
5632c82c42
include: Get rid of wglext.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 19:49:29 +02:00
Alexandre Julliard
17dffaac7d
opengl32: Get WGL function definitions from the XML files.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-10 10:06:10 +02:00
Vincent Povirk
50b0336914
winex11: Convert process name to lowercase for WM name hint.
...
The startup-notification spec is vague on this point, but it seems
that StartupWMClass is case-sensitive. We should convert to a
standard case so we can use that field.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 18:54:52 +02:00
Miklós Máté
cd4139df3c
winex11: Improve the desktop resolution list.
...
Signed-off-by: Miklós Máté <mtmkls@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-26 06:30:28 +02:00
Alexandre Julliard
401ccc73e2
winex11: If importing an X11 clipboard format fails, try other candidate formats for the target.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 08:09:06 +02:00
Alexandre Julliard
fc21a83a91
winex11: Store the process name at startup to avoid grabbing the loader lock again.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-17 22:12:08 +02:00
Henri Verbeet
147f934103
winex11: Only use glXSwapBuffersMscOML() for child windows.
...
The notion that glXSwapBuffersMscOML() with 0/0/0 target_msc/divisor/remainder
is supposed to behave like glXSwapBuffers() with respect to the swap interval
turns out to have been a misconception on my behalf, the extension spec
doesn't actually say that. Adding to the confusion is the fact that some
drivers do in fact behave like that in practice. It's possible to make
glXSwapBuffersMscOML() use the proper swap interval, but it's much easier to
just use glXSwapBuffers() instead. One consequence of the approach taken in
this patch is that child window buffer swaps aren't necessarily synchronised
to vblank, but ultimately that's up to X11DRV_FLUSH_GL_DRAWABLE, not the
buffer swap. This fixes a regression introduced by commit
e75bc6228e
.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-12 19:51:55 +02:00
Alexandre Julliard
2e0a1cfd83
winex11: Load a monochrome cursor instead of converting a color one when possible.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-10 20:51:09 +02:00