diff --git a/docs/changelog.rst b/docs/changelog.rst index f57aa96e4..8d8172405 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -54,6 +54,11 @@ Changelog - Linux: Fix window icon not set on X11 for the first OS window (:iss:`961`) +- macOS: Add an :opt:`macos_custom_beam_cursor` option to use a special + mouse cursor image that can be seen on both light and dark backgrounds + (:iss:`359`) + + 0.12.1 [2018-09-08] ------------------------------ diff --git a/kitty/config_data.py b/kitty/config_data.py index 098d537b9..58832e1dc 100644 --- a/kitty/config_data.py +++ b/kitty/config_data.py @@ -790,6 +790,12 @@ common font sizes. o('macos_traditional_fullscreen', False, long_text=_(''' Use the traditional full-screen transition, that is faster, but less pretty. ''')) + +# Disabled by default because of https://github.com/kovidgoyal/kitty/issues/794 +o('macos_custom_beam_cursor', False, long_text=_(''' +Enable/disable custom mouse cursor for macOS that is easier to see on both +light and dark backgrounds. WARNING: this might make your mouse cursor +invisible on dual GPU machines.''')) # }}} g('shortcuts') # {{{ diff --git a/kitty/main.py b/kitty/main.py index a619f86fe..be691b5f4 100644 --- a/kitty/main.py +++ b/kitty/main.py @@ -120,9 +120,7 @@ def get_new_os_window_trigger(opts): def _run_app(opts, args): new_os_window_trigger = get_new_os_window_trigger(opts) - if False and is_macos: - # This is disabled because using custom cursors fails - # on dual GPU machines: https://github.com/kovidgoyal/kitty/issues/794 + if is_macos and opts.macos_custom_beam_cursor: set_custom_ibeam_cursor() load_all_shaders.cursor_text_color = opts.cursor_text_color if not is_wayland and not is_macos: # no window icons on wayland