diff --git a/kitty/cocoa_window.h b/kitty/cocoa_window.h new file mode 100644 index 000000000..e5fc15c85 --- /dev/null +++ b/kitty/cocoa_window.h @@ -0,0 +1,29 @@ +/* + * cocoa_window.h + * Copyright (C) 2024 Kovid Goyal + * + * Distributed under terms of the GPL3 license. + */ + +#pragma once + +#include "data-types.h" + +void cocoa_focus_window(void *w); +long cocoa_window_number(void *w); +void cocoa_create_global_menu(void); +void cocoa_recreate_global_menu(void); +void cocoa_system_beep(const char*); +void cocoa_set_activation_policy(bool); +bool cocoa_alt_option_key_pressed(unsigned long); +void cocoa_toggle_secure_keyboard_entry(void); +void cocoa_hide(void); +void cocoa_clear_global_shortcuts(void); +void cocoa_hide_others(void); +void cocoa_minimize(void *w); +void cocoa_set_uncaught_exception_handler(void); +void cocoa_update_menu_bar_title(PyObject*); +size_t cocoa_get_workspace_ids(void *w, size_t *workspace_ids, size_t array_sz); +monotonic_t cocoa_cursor_blink_interval(void); +bool cocoa_render_line_of_text(const char *text, const color_type fg, const color_type bg, uint8_t *rgba_output, const size_t width, const size_t height); +extern uint8_t* render_single_ascii_char_as_mask(const char ch, size_t *result_width, size_t *result_height); diff --git a/kitty/cocoa_window.m b/kitty/cocoa_window.m index 85daec863..460230582 100644 --- a/kitty/cocoa_window.m +++ b/kitty/cocoa_window.m @@ -8,7 +8,7 @@ #include "state.h" #include "cleanup.h" -#include "monotonic.h" +#include "cocoa_window.h" #include #include #include diff --git a/kitty/glfw.c b/kitty/glfw.c index 1c1f433e3..b5981349a 100644 --- a/kitty/glfw.c +++ b/kitty/glfw.c @@ -11,26 +11,11 @@ #include #include "glfw-wrapper.h" #include "gl.h" -#ifndef __APPLE__ +#ifdef __APPLE__ +#include "cocoa_window.h" +#else #include "freetype_render_ui_text.h" #endif -extern void cocoa_focus_window(void *w); -extern long cocoa_window_number(void *w); -extern void cocoa_create_global_menu(void); -extern void cocoa_recreate_global_menu(void); -extern void cocoa_system_beep(const char*); -extern void cocoa_set_activation_policy(bool); -extern bool cocoa_alt_option_key_pressed(unsigned long); -extern void cocoa_toggle_secure_keyboard_entry(void); -extern void cocoa_hide(void); -extern void cocoa_clear_global_shortcuts(void); -extern void cocoa_hide_others(void); -extern void cocoa_minimize(void *w); -extern void cocoa_set_uncaught_exception_handler(void); -extern void cocoa_update_menu_bar_title(PyObject*); -extern size_t cocoa_get_workspace_ids(void *w, size_t *workspace_ids, size_t array_sz); -extern monotonic_t cocoa_cursor_blink_interval(void); - #define debug debug_rendering typedef struct mouse_cursor {