Commit Graph

16228 Commits

Author SHA1 Message Date
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
Kovid Goyal
a8de8e45b0 Fix serialization of mirrored option 2025-08-15 12:04:24 +05:30
Kovid Goyal
a0b58ef205 Dont allow CUB to move cursor onto previous line
Reserve this behavior for actual backspace. Fixes #8900
2025-08-14 21:49:36 +05:30
Kovid Goyal
c8c0201cbb Handle relative paths in goto_session 2025-08-14 20:57:02 +05:30
Kovid Goyal
7cf53a6a68 Implement goto previous session 2025-08-14 20:28:55 +05:30
Kovid Goyal
0789e62b11 Fix adding of tabs to existing OS Window in create_session 2025-08-14 20:11:43 +05:30
Kovid Goyal
f5d305c0df Dont serialize the launch cmd if it is the shell 2025-08-14 19:51:40 +05:30
Kovid Goyal
035ce949b4 Start work on goto_session action 2025-08-14 19:43:14 +05:30
Kovid Goyal
1544cab96f Fix #8901 2025-08-14 19:33:43 +05:30
Kovid Goyal
08f9c0c100 ... 2025-08-14 18:58:53 +05:30
Kovid Goyal
1c01805b1c Fix shader conditional compilation with override fg enabled 2025-08-14 12:04:32 +05:30
Kovid Goyal
25456806aa Fix positioning of window numbers
Was broken in rendering pipeline refactor
2025-08-14 08:46:02 +05:30
Kovid Goyal
2a26a4ddca Fix hovered hyperlink not being cleared when mouse moves from one kitty window to another 2025-08-14 08:40:53 +05:30
Kovid Goyal
4fd84ac5ea Improve rendering of hyperlink hover popups
Now they are rendered in default bg/fg with a rounded rectangle
border.
2025-08-14 08:30:28 +05:30
Kovid Goyal
6c93d640e9 Fix #8897 2025-08-13 11:25:38 +05:30
Kovid Goyal
d7ab6ad314 Allow shader names with underscores 2025-08-13 07:10:16 +05:30
Kovid Goyal
c01df574a2 ... 2025-08-13 06:49:35 +05:30
Kovid Goyal
b94d6dc713 Dont include gl.h in generated uniforms defn 2025-08-13 06:41:35 +05:30
Kovid Goyal
9d0df0db4e Add link to fzf based tab switcher kitten with previews 2025-08-13 05:20:22 +05:30
Kovid Goyal
7ae0e8da62 ... 2025-08-12 20:50:09 +05:30
Kovid Goyal
be63598355 desktop-ui: Add config to control file chooser popup size
Fixes #8894
2025-08-12 20:47:26 +05:30
Kovid Goyal
7a27144b7a Insert some blank lines in the generated session file 2025-08-12 20:08:25 +05:30
Kovid Goyal
ee5a2413c6 ... 2025-08-12 18:50:15 +05:30
Kovid Goyal
214dc73c52 When serializing windows in a tab keep the window order
This is needed because layouts other than split use the window
order to position windows.

Maybe should serialize active history in layout state, but I dont think
it's that important.
2025-08-12 18:45:23 +05:30
Kovid Goyal
3aff57933a Cleanup previous PR 2025-08-12 18:41:24 +05:30
Kovid Goyal
c8e412650a Merge branch 'master' of https://github.com/zzhaolei/kitty 2025-08-12 18:18:02 +05:30
zhaolei
92ff8f9160 kitty @ ls output session 2025-08-12 20:37:44 +08:00
Kovid Goyal
9a2de7bf66 cleanup 2025-08-12 16:14:23 +05:30
Kovid Goyal
09ff0b1c52 ... 2025-08-12 16:09:07 +05:30
Kovid Goyal
9dc3e56e5e DRYer 2025-08-12 16:08:33 +05:30
Kovid Goyal
067afe35e4 Dont create an extra OS Window when serializing 2025-08-12 16:04:19 +05:30
Kovid Goyal
da7ac31258 Sort active tabs instead of directly using active_tab_history
Ensures current active tab is preserved and remaining tabs are created
in active history order
2025-08-12 16:00:24 +05:30
Kovid Goyal
db584694ad Fix serialization not working when active_tab_history is empty 2025-08-12 15:38:34 +05:30
Kovid Goyal
a8eacd500c Finish serialization to session file 2025-08-12 13:44:15 +05:30
Kovid Goyal
53dbdeeca5 Function to serialize tab state as session 2025-08-12 11:37:58 +05:30