1. 17 Jan, 2020 1 commit
  2. 31 Dec, 2019 2 commits
    • Camilla Löwy's avatar
      Cocoa: Replace display link with IOKit query · 9fc5fd13
      Camilla Löwy authored
      This removes the final dependency on CoreVideo, using a display link to
      get the refresh rate of monitors where Core Graphics report a refresh
      rate of zero.  Instead we now query the I/O registry directly, similarly
      to what the display link does at creation.
      Thanks to @OneSadCookie for pointers to this solution.
      (cherry picked from commit 4ec7daf3e92440efab8dac7c1f4c60707d990ed0)
    • Camilla Löwy's avatar
      Cocoa: Only create per-monitor display link once · 7c9d0081
      Camilla Löwy authored
      The display link query is not specific to any particular display mode
      and so only needs to be done once.
      The next step is to replace the display link altogether by querying
      IOKit directly, which is what the display link does.
      (cherry picked from commit b4a8eb9b197caebcec1304cd3d55cd56e3869376)
  3. 14 Nov, 2019 1 commit
  4. 23 Sep, 2019 1 commit
    • Camilla Löwy's avatar
      Unify key name string handling · 79f4ec68
      Camilla Löwy authored
      This makes key names per-key static strings for all supported platforms.
      Fixes #1200.
      (cherry picked from commit 56ca0cb3b30ecb1310752360e9c875fc1b2bab5e)
  5. 15 Apr, 2019 1 commit
  6. 27 Mar, 2019 2 commits
  7. 26 Mar, 2019 1 commit
  8. 05 Mar, 2019 3 commits
    • Camilla Löwy's avatar
      NSGL: Update current display for display link · 8d7e5cdb
      Camilla Löwy authored
      This solution of one display link per window is far from ideal but is
      still better than no solution.
      As a side-effect this fixes swap interval breaking being ignored for
      occluded windows on earlier versions of macOS.
      Fixes #680.
      Fixes #1337.
      Related to #1417.
      Fixes #1435.
    • Camilla Löwy's avatar
      Cocoa: Replace global autorelease pool with blocks · 4e3204d8
      Camilla Löwy authored
      This is another small step towards having GLFW play nice with other
      toolkits sharing the same process, including AppKit.
      Any macOS platform function that touches Cocoa must now wrap itself in
      an autoreleasepool block.
      Since GLFW no longer provides an autoreleasepool outside of its
      Please add your own autoreleasepool blocks as needed.
      Fixes #1107.
      Closes #1114.
    • Camilla Löwy's avatar
      Cocoa: Fix work area using NS screen coordinates · 4b20fb70
      Camilla Löwy authored
      Related to #1322.
  9. 11 Jan, 2019 1 commit
    • Camilla Löwy's avatar
      Cocoa: Move app delegate and menu creation to init · ea7eb2dd
      Camilla Löwy authored
      The application delegate needs to be set at init to receive monitor
      events before window creation.  Menu creation is moved to
      applicationWillFinishLaunching: to play nicer with other toolkits in the
      same process.
      Related to #1317.
  10. 25 Dec, 2018 1 commit
    • Camilla Löwy's avatar
      Cocoa: Remove subclassing of NSApplication · 88c5edb4
      Camilla Löwy authored
      This removes the GLFW NSApplication subclass as a step towards better
      coexistence with other libraries that touch Cocoa.
      This moves application object creation to platform init to allow event
      processing before window creation.
      Related to #1317.
  11. 24 Oct, 2018 1 commit
  12. 07 Feb, 2018 1 commit
    • Camilla Löwy's avatar
      Cleanup · 1d75b205
      Camilla Löwy authored
      Allow window creation despite video mode setting failure.
      Video mode setting failure is ignored the rest of the time and the
      desired video mode has never been a hard constraint anyway.
  13. 09 Jan, 2018 1 commit
  14. 16 Nov, 2017 1 commit
  15. 26 Oct, 2017 1 commit
    • Camilla Löwy's avatar
      Add content scale queries · 16bf8721
      Camilla Löwy authored
      This adds glfwGetWindowContentScale and glfwGetMonitorContentScale for
      querying the recommended drawing scale factor for DPI-aware rendering.
      Parts of this patch are based on code by @ferreiradaselva.
      Fixes #235.
      Fixes #439.
      Fixes #677.
      Fixes #845.
      Fixes #898.
  16. 23 Aug, 2017 2 commits
    • Camilla Löwy's avatar
      Cleanup · ce5e649d
      Camilla Löwy authored
      Move global data to library struct.  Simplify semantics.  Update
      Related to #1028.
    • Sergey Tikhomirov's avatar
      Cocoa: Hide cursor instead of using blank image · 80e4922b
      Sergey Tikhomirov authored
      When cursor isn't in normal mode and should be hidden, use [NSCursor hide]
      method instead of setting it to blank image. This should prevent
      situations when hidden cursor becomes visible after system notification
      was shown.
      Fixes #971.
      Closes #1028.
  17. 08 Jun, 2017 1 commit
  18. 25 May, 2017 1 commit
    • Camilla Löwy's avatar
      Remove internal header inclusion guards · 372e9086
      Camilla Löwy authored
      Inclusion of internal headers is already both centralized and follows
      strict rules.  Inclusion guards are both an unneccessary maintenance
      burden and may hide inclusion order bugs.
  19. 19 Mar, 2017 1 commit
  20. 28 Feb, 2017 1 commit
    • Camilla Löwy's avatar
      Add GLFW_OSMESA_CONTEXT_API · e9560ef0
      Camilla Löwy authored
      This allows the creation of OpenGL contexts via OSMesa on existing
      platforms.  It does not add a compile- or link-time dependency on
      Fixes #281.
  21. 02 Jan, 2017 3 commits
  22. 06 Dec, 2016 1 commit
  23. 30 Nov, 2016 1 commit
  24. 01 Nov, 2016 1 commit
    • Camilla Berglund's avatar
      Cocoa: Add basic support for Vulkan via MoltenVK · e94d1666
      Camilla Berglund authored
      This adds basic support for MoltenVK, a Vulkan implementation on top of
      Metal, on macOS 10.11 and later.  It looks for MoltenVK in the process
      via RTLD_DEFAULT symbol lookup if _GLFW_VULKAN_STATIC is disabled.
      glfwCreateWindowSurface now creates and sets a CAMetalLayer for the
      window content view, which is required for MoltenVK to function.
      You must help CMake find MoltenVK for the Vulkan test to be built.
      Fixes #870.
  25. 20 Oct, 2016 1 commit
  26. 29 Sep, 2016 1 commit
  27. 07 Sep, 2016 1 commit
  28. 18 Aug, 2016 1 commit
  29. 15 Jun, 2016 2 commits
  30. 01 Jun, 2016 2 commits
  31. 30 May, 2016 1 commit