parent
e81d381256
commit
68e4261d73
@ -17,6 +17,7 @@ matrix:
|
|||||||
- libxinerama-dev
|
- libxinerama-dev
|
||||||
- libxcursor-dev
|
- libxcursor-dev
|
||||||
- libxi-dev
|
- libxi-dev
|
||||||
|
- libxext-dev
|
||||||
env:
|
env:
|
||||||
- BUILD_SHARED_LIBS=ON
|
- BUILD_SHARED_LIBS=ON
|
||||||
- CFLAGS=-Werror
|
- CFLAGS=-Werror
|
||||||
@ -30,6 +31,7 @@ matrix:
|
|||||||
- libxinerama-dev
|
- libxinerama-dev
|
||||||
- libxcursor-dev
|
- libxcursor-dev
|
||||||
- libxi-dev
|
- libxi-dev
|
||||||
|
- libxext-dev
|
||||||
env:
|
env:
|
||||||
- BUILD_SHARED_LIBS=OFF
|
- BUILD_SHARED_LIBS=OFF
|
||||||
- CFLAGS=-Werror
|
- CFLAGS=-Werror
|
||||||
|
@ -176,6 +176,11 @@ if (_GLFW_X11)
|
|||||||
if (NOT X11_Xi_INCLUDE_PATH)
|
if (NOT X11_Xi_INCLUDE_PATH)
|
||||||
message(FATAL_ERROR "XInput headers not found; install libxi development package")
|
message(FATAL_ERROR "XInput headers not found; install libxi development package")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Check for X Shape (custom window input shape)
|
||||||
|
if (NOT X11_Xshape_INCLUDE_PATH)
|
||||||
|
message(FATAL_ERROR "X Shape headers not found; install libxext development package")
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
|
@ -48,6 +48,9 @@
|
|||||||
// The XInput extension provides raw mouse motion input
|
// The XInput extension provides raw mouse motion input
|
||||||
#include <X11/extensions/XInput2.h>
|
#include <X11/extensions/XInput2.h>
|
||||||
|
|
||||||
|
// The Shape extension provides custom window shapes
|
||||||
|
#include <X11/extensions/shape.h>
|
||||||
|
|
||||||
typedef XClassHint* (* PFN_XAllocClassHint)(void);
|
typedef XClassHint* (* PFN_XAllocClassHint)(void);
|
||||||
typedef XSizeHints* (* PFN_XAllocSizeHints)(void);
|
typedef XSizeHints* (* PFN_XAllocSizeHints)(void);
|
||||||
typedef XWMHints* (* PFN_XAllocWMHints)(void);
|
typedef XWMHints* (* PFN_XAllocWMHints)(void);
|
||||||
|
@ -2714,13 +2714,13 @@ void _glfwPlatformSetWindowMousePassthrough(_GLFWwindow* window, GLFWbool enable
|
|||||||
{
|
{
|
||||||
Region region = XCreateRegion();
|
Region region = XCreateRegion();
|
||||||
XShapeCombineRegion(_glfw.x11.display, window->x11.handle,
|
XShapeCombineRegion(_glfw.x11.display, window->x11.handle,
|
||||||
2/*ShapeInput*/, 0, 0, region, 0/*ShapeSet*/);
|
ShapeInput, 0, 0, region, ShapeSet);
|
||||||
XDestroyRegion(region);
|
XDestroyRegion(region);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
XShapeCombineMask(_glfw.x11.display, window->x11.handle,
|
XShapeCombineMask(_glfw.x11.display, window->x11.handle,
|
||||||
2/*ShapeInput*/, 0, 0, None, 0/*ShapeSet*/);
|
ShapeInput, 0, 0, None, ShapeSet);
|
||||||
}
|
}
|
||||||
|
|
||||||
window->mousePassthrough = enabled;
|
window->mousePassthrough = enabled;
|
||||||
|
Loading…
Reference in New Issue
Block a user