Commit Graph

16704 Commits

Author SHA1 Message Date
Jackie Li
2a129f2b3b remove --focus-tab and add docs 2025-10-26 17:32:23 +00:00
Jackie Li
47b4c94c61 implement --base-dir and --focus-tab to save_as_session 2025-10-26 11:08:43 +00:00
Jackie Li
75537187a8 support search_syntax in focus_tab 2025-10-26 09:44:29 +00:00
Jackie Li
e0bea0cac4 add doc + changelog 2025-10-26 09:44:29 +00:00
Jackie Li
c9645378f7 add focus-tab command to session file 2025-10-26 09:44:04 +00:00
Kovid Goyal
a54f30ab3d Fix incorrect calculation of tab bar margins
Fixes #9154
2025-10-26 08:51:41 +05:30
Kovid Goyal
84d7c411bf Merge branch 'fix/desktop-portal-fallback' of https://github.com/azertyfun/kitty 2025-10-24 21:45:12 +05:30
Nathan Monfils
ff7e1a90a8 Fix: Make portals.conf fallback (Fixes #9144) 2025-10-24 18:02:57 +02:00
Kovid Goyal
c2be527d3d Merge branch 'utf-8-simd-parser-fix' of https://github.com/Wukuyon/kitty 2025-10-24 14:49:58 +05:30
Wukuyon
9d336be0d3 Combine ascii_mask/counts check with errors vector in simd-string-impl.h
Initialize errors by xoring ascii_mask with the movemask result and
setting the scalar mismatch into the chunk_is_invalid vector.

Removes another conditional branch.
Improves unicode benchmark performance by about 3%.
2025-10-23 22:37:33 -06:00
Wukuyon
1c869d3629 Refine test for overlapping UTF-8 sequences in simd-string-impl.h
Replace a shift_right_by_one_byte call with comparison operations.
Improves unicode benchmark performance by about 1%.
2025-10-23 22:37:33 -06:00
Wukuyon
65890de60d Fix UTF-8 overlong and special range checks in simd-string-impl.h
Modified `start_classification` in `utf8_decode_to_esc` in `simd-string-impl.h`, which now:

Rejects `0xC0`, `0xC1` and `0xF5..0xFF` lead bytes in UTF-8 subsequences.

Enforces special ranges for the second subsequence bytes after `0xE0`, `0xED`, `0xF0` and `0xF4` bytes to prevent overlong sequences, surrogates, and code points above U+10FFFF.

Accumulates UTF-8 validation errors in a single vector to avoid many conditional branches.

Worsens unicode benchmark performance by about 4%.
2025-10-23 22:37:33 -06:00
Wukuyon
295951348c Add boundary case tests for test_utf8_simd_decode
These tests were generated from Node.js and match the WHATWG Encoding Specification's behavior (substitution of maximal subparts).
2025-10-23 21:43:20 -06:00
Wukuyon
77a3fc8dd2 Swap expected/actual variables in t function in test_utf8_simd_decode
For more useful debugging.
The expected value is what the scalar decoder returns.
The actual value is what the "which" SIMD decoder returns.
2025-10-23 21:43:20 -06:00
Kovid Goyal
c7117c2839 Make the os window id available in tab bar drawing 2025-10-24 07:32:36 +05:30
Kovid Goyal
0a6ed15858 ... 2025-10-22 13:53:44 +05:30
Kovid Goyal
33b9d858ad Nano-optimisation: Avoid using a block with GCD 2025-10-22 13:40:42 +05:30
Kovid Goyal
6a6b0b47a3 Micro-optimize display link callback
Use a GCD block rather than a runtime selector with a boxed number
2025-10-22 13:35:02 +05:30
Kovid Goyal
26ea343f95 Fix failing tests 2025-10-22 13:21:53 +05:30
Kovid Goyal
8e2b489eed Fix a couple more places where right/bottom edges were considered inclusive
Fixes #9132 (I hope as I cant reproduce it)
2025-10-22 12:29:26 +05:30
Kovid Goyal
77f282785c Allow resizing label to have lower background opacity if overall background opacity is low 2025-10-22 11:57:54 +05:30
Kovid Goyal
a9ad58fa78 Draw OS window contents at top left instead of bottom left during live resize
Also, since I was here, have the size display be translucent.

Fixes #9141
2025-10-22 11:53:43 +05:30
Kovid Goyal
878b502fc1 Cleanup previous PR
The locks were not being initialized, and since I was there did some
general cleanup as well, moved the locks array into displayLinks rather
than having another global namespaced variable.
2025-10-22 09:54:21 +05:30
Kovid Goyal
d07100d9b2 Merge branch 'fix-macos-displaylink-idle' of https://github.com/meghendra6/kitty 2025-10-22 09:54:16 +05:30
Scott Lee
fc8f3ca6e2 Improve macOS idle wakeups handling 2025-10-22 07:38:10 +09:00
Kovid Goyal
94f3da53aa Cleanup previous PR 2025-10-21 09:44:41 +05:30
Kovid Goyal
8630f21af1 Merge branch 'evan-goode/accumulate-value120' of https://github.com/evan-goode/kitty 2025-10-21 09:43:43 +05:30
Evan Goode
80a9bdb999 Smoothly handle VALUE120 scroll events 2025-10-20 09:32:59 -04:00
Kovid Goyal
55e8d3e38c Fix #9127
See upstream bug: https://github.com/sphinx-doc/sphinx/issues/13976
2025-10-20 08:16:48 +05:30
Kovid Goyal
1e1a1851d0 Add support for Unicode 17
This is preliminary, all tests pass, but needs more careful review.
2025-10-18 09:59:53 +05:30
Kovid Goyal
c2fb9f14b5 Only reset termios when user triggers reset action rather than in reponse to reset escape code
Fixes #9126
2025-10-18 08:53:50 +05:30
Kovid Goyal
0780eef7b1 Fix #9125 2025-10-17 20:29:20 +05:30
Kovid Goyal
d3ef27c2bc Update grype db as part of install 2025-10-17 10:59:11 +05:30
Kovid Goyal
8ff59050da Merge branch 'update-wayland-compat-matrix' of https://github.com/alex-huff/kitty 2025-10-16 23:53:18 +05:30
alex-huff
b1d4bdc019 docs: panel: update river compatibility information 2025-10-16 12:28:48 -05:00
Kovid Goyal
f19831e482 Merge branch 'update-wayland-compat-matrix' of https://github.com/alex-huff/kitty 2025-10-16 22:40:50 +05:30
alex-huff
e00cf17732 docs: panel: added xfce to compatibility matrix 2025-10-16 11:57:49 -05:00
Kovid Goyal
2e39244dfa Update changelog 2025-10-16 21:06:27 +05:30
Kovid Goyal
9be82c0f97 Merge branch 'fix-panel-center-sized' of https://github.com/alex-huff/kitty 2025-10-16 20:56:16 +05:30
alex-huff
10e0d11093 panel: use an anchor of 0 for --edge=center-sized
Fixes #9116
2025-10-16 10:04:55 -05:00
Kovid Goyal
f06f85a9e0 Cleanup previous PR 2025-10-15 09:12:32 +05:30
Kovid Goyal
6586780371 Merge branch 'draw-borders-when-focused' of https://github.com/jackielii/kitty 2025-10-15 08:56:02 +05:30
Kovid Goyal
1c2c01722b Bump version of imaging
Fixes an out of bounds error when processing opaque images
2025-10-15 08:29:23 +05:30
Kovid Goyal
284ae74201 icat: Report panics in the render function correctly
Also, only fallback to imagemagick on error when the engine is not
specified as builtin
2025-10-15 08:17:53 +05:30
Kovid Goyal
dd7caaa91b ... 2025-10-15 08:09:29 +05:30
Kovid Goyal
ee9a5386b9 When doing a reset also reset termios to its initial state 2025-10-15 07:56:45 +05:30
Jackie Li
b99a5bd7da fix comment 2025-10-14 19:50:47 +01:00
Jackie Li
6a2ee9253b set_options() in layout tests 2025-10-14 19:43:07 +01:00
Jackie Li
6db3441e29 respect draw_window_borders_for_single_window=yes in lgd.draw_minimal_borders 2025-10-14 19:23:35 +01:00
Jackie Li
05810722be use draw_window_borders_for_single_window
single window + has focus -> active border
single window + no focus -> inactive border
multiple window + regardless of focus -> active border

a) option set:

    1) Single *visible* window in the layout - always draw a border
    border color = active if os_window is focused else inactive

    2) multiple visible windows in the layout - no change in existing
    behavior, in particular draw_minimal_borders is respected as before.

b) option unset - no changes from present behavior

option default to false.
2025-10-14 18:39:23 +01:00