macOS: Implement background blurring

Uses a private API that allows us to control the amount of blurring.
While using a private API is obviously not ideal, it is used by both
iTerm.app and Apple's own Terminal.app, so hopefully it should stick
around. Fixes #6135
This commit is contained in:
Kovid Goyal
2023-06-27 08:48:16 +05:30
parent 326b81a970
commit 7a1bdb4ff1
15 changed files with 89 additions and 1 deletions

3
kitty/glfw-wrapper.c generated
View File

@@ -443,6 +443,9 @@ load_glfw(const char* path) {
*(void **) (&glfwCocoaRequestRenderFrame_impl) = dlsym(handle, "glfwCocoaRequestRenderFrame");
if (glfwCocoaRequestRenderFrame_impl == NULL) dlerror(); // clear error indicator
*(void **) (&glfwCocoaSetBackgroundBlur_impl) = dlsym(handle, "glfwCocoaSetBackgroundBlur");
if (glfwCocoaSetBackgroundBlur_impl == NULL) dlerror(); // clear error indicator
*(void **) (&glfwGetX11Display_impl) = dlsym(handle, "glfwGetX11Display");
if (glfwGetX11Display_impl == NULL) dlerror(); // clear error indicator