Compare commits

...

3 Commits

Author SHA1 Message Date
OlegAckbar
4eec413c53
Merge 305fcbbf94 into 0d2d85d19c 2025-08-17 17:22:28 +01:00
Doug Binks
0d2d85d19c Revert "Wayland: Keyboard leave event handler now processes key repeats" 2025-08-15 11:27:59 +02:00
OlegAckbar
305fcbbf94
Wayland: unset output for fullscreen set operation 2024-06-24 22:39:43 +03:00

View File

@ -643,12 +643,12 @@ static void acquireMonitor(_GLFWwindow* window)
if (window->wl.libdecor.frame)
{
libdecor_frame_set_fullscreen(window->wl.libdecor.frame,
window->monitor->wl.output);
NULL);
}
else if (window->wl.xdg.toplevel)
{
xdg_toplevel_set_fullscreen(window->wl.xdg.toplevel,
window->monitor->wl.output);
NULL);
}
setIdleInhibitor(window, GLFW_TRUE);
@ -989,7 +989,7 @@ static GLFWbool createLibdecorFrame(_GLFWwindow* window)
if (window->monitor)
{
libdecor_frame_set_fullscreen(window->wl.libdecor.frame,
window->monitor->wl.output);
NULL);
setIdleInhibitor(window, GLFW_TRUE);
}
else
@ -1082,7 +1082,7 @@ static GLFWbool createXdgShellObjects(_GLFWwindow* window)
if (window->monitor)
{
xdg_toplevel_set_fullscreen(window->wl.xdg.toplevel, window->monitor->wl.output);
xdg_toplevel_set_fullscreen(window->wl.xdg.toplevel, NULL);
setIdleInhibitor(window, GLFW_TRUE);
}
else
@ -1778,24 +1778,6 @@ static void keyboardHandleLeave(void* userData,
if (!window)
return;
// Handle any key repeats up to this point. We don't poll as this should be infrequent.
uint64_t repeats;
if (read(_glfw.wl.keyRepeatTimerfd, &repeats, sizeof(repeats)) == 8)
{
if(_glfw.wl.keyboardFocus)
{
for (uint64_t i = 0; i < repeats; i++)
{
_glfwInputKey(_glfw.wl.keyboardFocus,
translateKey(_glfw.wl.keyRepeatScancode),
_glfw.wl.keyRepeatScancode,
GLFW_PRESS,
_glfw.wl.xkb.modifiers);
inputText(_glfw.wl.keyboardFocus, _glfw.wl.keyRepeatScancode);
}
}
}
struct itimerspec timer = {0};
timerfd_settime(_glfw.wl.keyRepeatTimerfd, 0, &timer, NULL);