浏览代码

fix(rcore): correctly scale content on macOS (#5186)

Currently, scaling doesn't work correctly on macOS (see #5185).  This commit
works around this issue by disabling SCALE_FRAMEBUFFER on macOS when
`FLAG_WINDOW_HIGHDPI` is unset.
pull/5188/head
Max Coplan 3 周前
committed by GitHub
父节点
当前提交
fbdf5e4fd2
找不到此签名对应的密钥 GPG 密钥 ID: B5690EEEBB952194
共有 1 个文件被更改,包括 9 次插入1 次删除
  1. +9
    -1
      src/platforms/rcore_desktop_glfw.c

+ 9
- 1
src/platforms/rcore_desktop_glfw.c 查看文件

@ -1428,10 +1428,18 @@ int InitPlatform(void)
// was enabled by default. Disabling it gets back the old behavior. A
// complete fix will require removing a lot of CORE.Window.render
// manipulation code
glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE);
// NOTE: This currently doesn't work on macOS(see #5185), so we skip it there
// when FLAG_WINDOW_HIGHDPI is *unset*
#if !defined(__APPLE__)
glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE);
#endif
if ((CORE.Window.flags & FLAG_WINDOW_HIGHDPI) > 0)
{
// since we skipped it before, now make sure to set this on macOS
#if defined(__APPLE__)
glfwWindowHint(GLFW_SCALE_FRAMEBUFFER, GLFW_FALSE);
#endif
// Resize window content area based on the monitor content scale
// NOTE: This hint only has an effect on platforms where screen coordinates and pixels always map 1:1 such as Windows and X11
// On platforms like macOS the resolution of the framebuffer is changed independently of the window size

正在加载...
取消
保存