mirror of
https://github.com/glfw/glfw.git
synced 2025-12-22 07:02:16 +00:00
Compare commits
3 Commits
76587d0b20
...
0cbe6feb32
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0cbe6feb32 | ||
|
|
0d2d85d19c | ||
|
|
c5e83f1b6a |
@ -264,6 +264,7 @@ video tutorials.
|
||||
- Jared Tiala
|
||||
- Sergey Tikhomirov
|
||||
- Arthur Tombs
|
||||
- Luis Torres
|
||||
- TronicLabs
|
||||
- Ioannis Tsakpinis
|
||||
- Samuli Tuomola
|
||||
|
||||
@ -128,6 +128,8 @@ information on what to include when reporting a bug.
|
||||
- [Win32] Removed support for Windows XP and Vista (#2505)
|
||||
- [Cocoa] Added `QuartzCore` framework as link-time dependency
|
||||
- [Cocoa] Removed support for OS X 10.10 Yosemite and earlier (#2506)
|
||||
- [Cocoa] Bugfix: glfwGetFramebufferSize() now returns correct values for
|
||||
non-retina windows for some Macs. (#2478)
|
||||
- [Wayland] Bugfix: The fractional scaling related objects were not destroyed
|
||||
- [Wayland] Bugfix: `glfwInit` would segfault on compositor with no seat (#2517)
|
||||
- [Wayland] Bugfix: A drag entering a non-GLFW surface could cause a segfault
|
||||
|
||||
@ -1133,12 +1133,24 @@ void _glfwGetFramebufferSizeCocoa(_GLFWwindow* window, int* width, int* height)
|
||||
@autoreleasepool {
|
||||
|
||||
const NSRect contentRect = [window->ns.view frame];
|
||||
|
||||
if (window->ns.scaleFramebuffer)
|
||||
{
|
||||
const NSRect fbRect = [window->ns.view convertRectToBacking:contentRect];
|
||||
|
||||
if (width)
|
||||
*width = (int) fbRect.size.width;
|
||||
if (height)
|
||||
*height = (int) fbRect.size.height;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (width)
|
||||
*width = (int) contentRect.size.width;
|
||||
if (height)
|
||||
*height = (int) contentRect.size.height;
|
||||
|
||||
}
|
||||
|
||||
} // autoreleasepool
|
||||
}
|
||||
|
||||
@ -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);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user