Kitty is all about the speed, but one thing that slows me down is entering Full Screen mode in OSX. It performs a (slow) OSX animation that gets in the way (and then ties you to a weird OSX desktop mode where switching to other apps is also slowed down via a pointless animation). Could Kitty have a "Fast Full Screen" mode that operates like MacVim or iTerm's full screen? It more or less instantly transitions to full screen and operates like a "normal app" in full screen mode.
I'm afraid I have no idea how to implement such a mode (those pointless animations come from the OS). But patches are welcome.
@jordwalke see this answer: https://apple.stackexchange.com/questions/128717/how-to-disable-full-screen-animation-on-os-x-10-9
It shows how to 'reduce motion' in the settings.
I think jordwalke is talking about a "legacy full screen" mode. Basically it can be done by creating a boderless full screen window:
NSWindowStyleMaskBorderless and NSWindowStyleMaskFullScreen the window style maskNSApplicationPresentationAutoHideMenuBar and NSApplicationPresentationAutoHideDock to window presentation optionsIf that's the case it can probably be implemented in kitty. I leave the implementation to someone with more cocoa knowledge than me. The outline for how to implement it is:
in kitty/glfw.c change toggle_fullscreen() to not use the GLFW full screen method
instead implement a cocoa specific toggle_fullscreen in kitty/cocoa_window.m and call that from glfw.c
Do you like to keep issues like this open or closed? (Do you think that keeping issues open is a good way to signal to potential contributors that fixes are welcome?)
My policy is to keep reports that dont have a clear path to implementation or that I dont think are particularly good ideas closed. In this case I am somewhat skeptical of the concept of using a deprecated technique for full screening windows. It's quite possible it will stop working in the future (apple seems to love breaking things with every new macOS release).
I am willing to merge a patch for it, but I dont particularly want to encourage anyone to do it.
Would it be possible to make this an option? I highly prefer the native fullscreen instead of legacy way...
iTerm has this as an option with native as default if I remember correctly.
It's certainly possible, but I am reluctant to do so because of #898 I really dont like having crashing bugs in my software, and because I dont have an external monitor and the problem is not in kitty code, it is hard fo rme to find any other way to fix it.
Well, I think I figured out how to solve the crashing issue, at least I hope so. So I have modified this patch to make it an option, defaulting to off
Most helpful comment
Well, I think I figured out how to solve the crashing issue, at least I hope so. So I have modified this patch to make it an option, defaulting to off