Commit Graph

16262 Commits

Author SHA1 Message Date
Kovid Goyal
8451ad44b5 Implement running foreground process even on unknown shells
This is not as nice because the environment wont have been setup by
the shell before running the process, but it's the best we can do
for an unknown shell.
2025-08-19 10:37:05 +05:30
Kovid Goyal
1460a69ae9 unset KITTY_SI_RUN_COMMAND_AT_STARTUP when running the command 2025-08-19 09:57:51 +05:30
Kovid Goyal
cd6acf9523 fix abspath of pid function on macOS 2025-08-19 09:50:37 +05:30
Kovid Goyal
4d6672a67c fish shell integration: run startup command before shell line editor is initialized as it changes terminal state 2025-08-19 09:38:56 +05:30
Kovid Goyal
fc142ff7eb set window title when running startup command in fish as well 2025-08-19 09:31:45 +05:30
Kovid Goyal
b38b38d17d Do the same for bash and also sanitize control chars in zsh 2025-08-19 09:23:48 +05:30
Kovid Goyal
54ad4fc63b zsh shell integration: run startup command before any prompt/exec marking is done and set window title to the command being run 2025-08-19 09:14:46 +05:30
Kovid Goyal
51cc6ec525 Auto create parent directory when saving session file 2025-08-19 07:43:05 +05:30
Kovid Goyal
41488fe8ba Allow showing the currently active session name in the tab bar 2025-08-19 06:49:14 +05:30
Kovid Goyal
4c0752fd07 Fix #8915 2025-08-19 06:31:36 +05:30
Kovid Goyal
d7c2cdccb1 macOS: Fix closing an OS Window when another OS Window is minimized causing the minimized window to be un-minimized
This is a bug we inherited from GLFW.
Fixes #8913
2025-08-18 21:26:54 +05:30
Kovid Goyal
3638adda6c macOS: Elaborate dance to work around yet another Cocoa bug
Fixes #8740
2025-08-18 16:01:51 +05:30
Kovid Goyal
b8b7592b40 ... 2025-08-18 15:07:12 +05:30
Kovid Goyal
6beded7b49 Cleanup previous PR 2025-08-18 14:45:18 +05:30
Kovid Goyal
c47e63c2fd Merge branch 'titlebar_transparent' of https://github.com/zzhaolei/kitty 2025-08-18 11:44:29 +05:30
Kovid Goyal
5662d04b2f Fix resized area background color not correct during live resize
Have to write sRGB colors rather than linear colors in this case
2025-08-18 11:17:40 +05:30
Kovid Goyal
43d4e757aa Properly blank bar area
Otherwise the rounded rect frame lets content from below the bar shine
through at the corners
2025-08-17 21:06:11 +05:30
Kovid Goyal
ac66265b9d macOS: Also change the font used to be the system ui default font rather than window title font 2025-08-17 20:45:10 +05:30
Kovid Goyal
bccd7135fc Linux: Dont draw visual select lines and hyperlink hover popups in bold weight 2025-08-17 20:39:33 +05:30
Kovid Goyal
d2c7dd3ed6 ... 2025-08-17 20:28:16 +05:30
Kovid Goyal
0cab165daa Remove duplicate sessions label 2025-08-17 20:13:33 +05:30
Kovid Goyal
322b91b51f Only use Wayland if loading the glfw-wayland.so DLL succeeds 2025-08-17 19:59:44 +05:30
Kovid Goyal
a2d76a6c34 Document the save_as_session action 2025-08-17 14:44:26 +05:30
Kovid Goyal
34ae42cf30 Update changelog 2025-08-17 14:32:38 +05:30
Kovid Goyal
c982978e82 Add some docs for the new session features 2025-08-17 14:27:19 +05:30
Kovid Goyal
d233cd0a53 Make switching OS window focus more robust under Wayland at various call sites 2025-08-17 13:33:16 +05:30
Kovid Goyal
c2389a1adc Option to make saved session files relocatable 2025-08-17 11:56:32 +05:30
Kovid Goyal
f8c3a721f7 Avoid unneccessarily duplicating --cwd argument for all launch commands in a tab during serialization 2025-08-17 11:41:02 +05:30
Kovid Goyal
67b2e859f5 Allow using relative paths in cd in sessions files that get resolved relative to the directory containing the session file 2025-08-17 11:23:36 +05:30
zhaolei
ba8acf508f make macos_titlebar_color background support transparent 2025-08-17 13:37:31 +08:00
Kovid Goyal
117f6cc4fa Dont serialize OS Window class/name if they are the defaults 2025-08-17 10:20:36 +05:30
Kovid Goyal
d04bb12a09 Use absolute path when serializing foreground process 2025-08-16 17:33:00 +05:30
Kovid Goyal
f91a0f6986 When saving session add option to save the foreground process running in the shell so that it is also restarted
Useful if user builds up session to save by running programs via
the shell.

Note that the serialization format for session files has changed
slightly, becoming more robust and allowing us to add more types
of saved data in the future, without overloading user_vars and thus
risking name conflicts.
2025-08-16 16:50:45 +05:30
Kovid Goyal
dcc9ade7ae Record user vars in creation spec 2025-08-16 12:18:31 +05:30
Kovid Goyal
337cbf1435 Add an env var that can be used to eval an expression at startup of shell
This will come in handy to implement serialization as session
with running of current foreground command.
2025-08-16 11:58:30 +05:30
Kovid Goyal
0fb1835af1 Cache parsed save as session options spec 2025-08-16 09:57:00 +05:30
Kovid Goyal
ca715c4cae Pass session serialization options into all contexts where they might be needed 2025-08-16 09:15:47 +05:30
Kovid Goyal
1aeb22c158 Bump version of Wayland bundled with kitty
From 1.23.1 to 1.24.0

The just released mesa 25.2.0 doesn't work with libwayland < 1.24.0.
Sigh. Wayland is basically the world's biggest waste of time.

Fixes #8884
2025-08-16 08:42:50 +05:30
Kovid Goyal
363afac8af Fallback to eglGetDisplay() when eglGetPlatformDisplayEXT() returns EGL_NO_DISPLAY 2025-08-16 08:13:40 +05:30
Kovid Goyal
5ca22d660e Nicer error handling when EGL context initialize fails 2025-08-16 08:04:48 +05:30
Kovid Goyal
caba27240b Add some missing assertions
Port from upstream glfw: 38ec7abd3baffdd3ec4e6f8cbb5384cda8882ae3
2025-08-16 07:38:54 +05:30
Kovid Goyal
cb42fd82a4 EGL: Fix GLFW_CONTEXT_NO_ERROR on Mesa
Mesa EGL requires the context version to be set to 2.0 or greater before
EGL_CONTEXT_OPENGL_NO_ERROR_KHR in the attribute list.

Without this, context creation via Mesa EGL with
EGL_CONTEXT_OPENGL_NO_ERROR_KHR set fails with EGL_BAD_ATTRIBUTE.

Port from upstream glfw: eeeb56eb23c9a23866e8042fb23d7b0b4d96d106
2025-08-16 07:30:32 +05:30
Kovid Goyal
8e39041619 Add assertions for context function invariants
Port from upstream glfw
See 93d70cb6a8c9571b5b493936596633a1a8538cea
2025-08-16 07:27:20 +05:30
Kovid Goyal
a28e9a0146 Fix infinite recursion in readline completer 2025-08-16 06:55:39 +05:30
Kovid Goyal
e156a33543 Fix completion for paths starting with / 2025-08-16 06:43:41 +05:30
Kovid Goyal
24e0bbd50e Add save_as_session action
Docs need to be updated.
2025-08-16 06:32:42 +05:30
Kovid Goyal
23d8648f5d Add a new "file" mode to the ask kitten 2025-08-15 21:18:25 +05:30
Kovid Goyal
7b1647a5f7 Fix #8903 2025-08-15 20:19:28 +05:30
Kovid Goyal
8702057dda Implement interactive session picking 2025-08-15 16:09:45 +05:30
Kovid Goyal
3fbdeedfa7 Also make deserialization robust against bools 2025-08-15 12:09:01 +05:30