Commit Graph

301 Commits

Author SHA1 Message Date
Kovid Goyal
c0f04231ed Move CVDisplayLink code into its own module
Apple has deprecated CVDisplayLink in favor of CADisplayLink which has
different semantics. So turn off deprecation warnings for
CVDisplayLink related code only until I can be bothered to port it to
CADisplayLink.
2024-09-27 12:12:12 +05:30
Kovid Goyal
271665dbaf Temporary workaround for CVDisplayLink deprecation
Apple simply cannot get its APIs right on the first try, ever.
2024-09-26 01:13:10 +05:30
Kovid Goyal
9acca045bd macOS: Fix changing window chrome/colors while in traditional fullscreen causing the titlebar to become visible
Fixes #7469
2024-05-23 22:30:57 +05:30
Kovid Goyal
f86102ab88 macOS: Fix --start-as=fullscreen not working when another window is already fullscreen
Apparently, we need to make the window visible before full screening it.
Sigh. I dont know why Apple insisted on this horrible "fancy"
fullscreen of theirs, it's full of bugs and dog slow.

Fixes #7448
2024-05-23 08:38:38 +05:30
Kovid Goyal
e57692e4f5 Possibly fix #7327 2024-04-09 21:19:25 +05:30
Kovid Goyal
8fc96c5bd7 Make the debug logging functions consistent
They now all output the same format of:
[time since program start] msg
2024-04-08 12:53:55 +05:30
Kovid Goyal
1bffe89b5d Wayland GNOME: titlebar color now follows system theme
When GNOME system theme is default, the color matches the background
color. When it is dark it is dark.
2024-04-04 21:52:56 +05:30
Kovid Goyal
8335a5212e macOS: Fix an abort due to an assertion when a program tries to set an invalid window title
Fixes #7271
2024-03-27 19:02:43 +05:30
Kovid Goyal
2f151e773c ... 2024-03-22 13:52:17 +05:30
Kovid Goyal
1c9f9a74e8 Wayland KDE: Add support for background_blur under kwin using a kwin private Wayland protocol 2024-03-22 13:41:44 +05:30
Kovid Goyal
585ac148a6 ... 2024-02-09 19:14:26 +05:30
Kovid Goyal
7c14e0d666 macOS: Fix an abort when changing OS window chrome for a full screen window via remote control or the themes kitten
Fixes #7106
2024-02-09 15:32:09 +05:30
Kovid Goyal
54900183ec Fix #6997 2024-01-16 13:38:12 +05:30
Felix Kratz
912c5ce4f9 dont reuse cascade point on another display
fix wording

reset cascade point to zero point
2023-12-21 11:30:50 +01:00
Kovid Goyal
b2587c1d54 Fix modifier reporting on macOS
We make use of the fact that the device dependent modifiers flags
actually report left/right modifier. Code taken form SDL, with thanks.
2023-12-14 11:31:48 +05:30
Kovid Goyal
00f8f340bf macOS: Fix returning from full screen via the button when the titlebar is hidden not hiding the buttons
Fixes #6883
2023-12-10 22:30:15 +05:30
Kovid Goyal
fa53ac7896 Fix deprecation warning for compositing operation 2023-10-18 06:12:31 +05:30
Kovid Goyal
187fa996f8 Add the cell pointer shape 2023-10-16 20:33:12 +05:30
Kovid Goyal
792b74503c Implement mouse shape support for macOS
Code for loading hidden system cursors not available via NCursor comes
from the SDL library, with thanks.
2023-10-15 09:42:06 +05:30
Kovid Goyal
630101204b macOS: Disable OS window shadows for transparent windows as they cause rendering artifacts due to Cocoa bugs
Fixes #6439
2023-07-22 11:20:37 +05:30
Kovid Goyal
9e0e23ae99 macOS: Fix a regression that caused the titlebar to be translucent even for non-translucent windows
Fixes #6450
2023-07-12 10:24:51 +05:30
Kovid Goyal
5f8610f7bc macOS: Add a new value titlebar-and-corners for :opt:hide_window_decorations that emulates the behavior of hide_window_decorations yes in older versions of kitty 2023-07-11 22:27:47 +05:30
Kovid Goyal
b00c2d644e macOS: Render OS windows during windowDidResize for even smoother live resize rendering 2023-07-11 17:22:35 +05:30
Kovid Goyal
72f283e7f7 macOS: Fix a regression that caused rendering to hang when transitioning to full screen with macos_colorspace set to default
YACOB (Yet Another COcoa Bug)
Fixes #6435
2023-07-10 19:33:25 +05:30
Kovid Goyal
d3f14ffbf4 macOS: Fix window shadows not being drawn for transparent windows
Re-organize the whole infrastructure for setting window chrome, doing it
in a single function that has access to all settings.

Fixes #2827
Fixes #6416
2023-07-04 11:59:50 +05:30
Kovid Goyal
7a1bdb4ff1 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
2023-06-27 08:48:16 +05:30
olzhasar
d0a5d1b3a4 Fix misspellings 2023-06-14 03:39:53 +06:00
Kovid Goyal
66801b6b28 GLFW API to track system color scheme dark/light
Implemented only on macOS and Wayland.
2023-04-13 13:16:33 +05:30
pagedown
4f44945c07 macOS: Restore pre-edit text after inserting text from the service
Add comments to explain how to get the methods to be called.
2023-02-24 19:57:09 +08:00
pagedown
f8b53df5c2 macOS: Fix resize_in_steps being applied when double-clicking on the
title bar to maximize the window
2023-02-24 19:56:51 +08:00
pagedown
9a598237c6 macOS: Allow IME to actively get the cursor position in real time
IME will automatically get the display position when needed, which keeps
it consistent with the overlay as much as possible.

Fix the issue that when IME is activated after mouse click, it is
displayed at the wrong position.
2023-02-22 22:36:20 +08:00
pagedown
ba83ce7b10 macOS: Display the newly created OS window in specified state
Fix the maximized window can't occupy full screen space when window
decoration or title bar is hidden.
Fix resize_in_steps being applied even when window is maximized.
Allows to specify `os_window_state` in startup session file.
2023-02-18 14:02:19 +08:00
pagedown
c41b65af97 macOS: Update window button visibility after toggling full screen 2023-02-12 13:45:27 +08:00
Kovid Goyal
78d0cc40a3 Fix readSelectionFromPasteboard not actually inserting the text 2023-02-02 06:14:34 +05:30
Kovid Goyal
01720a8d4f Fix typo seems to have no actual effect, but... 2023-02-02 06:07:30 +05:30
Kovid Goyal
682428fb54 Optimize the services implementation
Dont construct the selection string when we are merely checking if a
selection exists.
2023-02-01 12:46:19 +05:30
Kovid Goyal
1c6bae636b Only accept service requests when we actually have a selection 2023-02-01 12:17:59 +05:30
Kovid Goyal
18fc8dad37 Instead of calling insertText duplicate some of its code so we arent limited in the size of text we can insert 2023-01-29 19:56:53 +05:30
Kovid Goyal
9b5034f904 macOS: Integrate with system services 2023-01-29 19:47:50 +05:30
Kovid Goyal
79fba9dd9a Use the dynamic property instead of testing identifier serialization 2022-09-09 15:39:00 +05:30
Kovid Goyal
9c5d1f9771 Pass null bytes through the clipboard on cocoa 2022-09-09 13:12:12 +05:30
Kovid Goyal
be89da2271 Handle dyn prefixes 2022-09-09 11:59:49 +05:30
Kovid Goyal
0e7da8643e Get cocoa clipboard backend working 2022-09-09 10:59:10 +05:30
Kovid Goyal
410b1816ad More work on cocoa clipboard backend 2022-09-09 07:39:38 +05:30
Kovid Goyal
bcfa2a64e4 Start work on new clipboard api support for macos 2022-09-08 21:45:13 +05:30
Rafael Kitover
7b75f055ea Fix build on macOS High Sierra
Check for >= 10.14 using Availability.h to use the accessibilityRole
callback which does not seem to be available in 10.13.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
2022-08-20 16:08:28 +00:00
Kovid Goyal
5bba1a0851 get_current_selection should return char* not const char* 2022-08-09 09:05:13 +05:30
Kovid Goyal
e9823eb40c Cleanup previous PR 2022-08-09 08:54:47 +05:30
pagedown
74714f942a Implement macOS accessibility protocol to provide selected text
Allow "Speak selection" (Option+Esc) to work properly.
2022-08-09 11:02:12 +08:00
Kovid Goyal
d04d4444af implement primary selection api on cocoa as stubs, can be useful for #5357 2022-08-06 12:59:15 +05:30