Commit Graph

3450 Commits

Author SHA1 Message Date
Kovid Goyal
774b9af9e3 Fix crash when applying selections when rendering is paused
Use the scrolled by value from the paused rendering and clamp the
selection to the visual area.

Fixes #9778
2026-03-31 09:10:14 +05:30
Kovid Goyal
59d93577b1 Fix double click to rename tab being triggered too easily
Fixes #9774
2026-03-30 17:09:52 +05:30
Kovid Goyal
0f0ea8e43b ... 2026-03-30 09:25:19 +05:30
Kovid Goyal
1c95b321c4 ... 2026-03-30 09:22:08 +05:30
Kovid Goyal
b3bdfbc487 Add link to where in the Unicode spec VS15 behavior comes from 2026-03-30 09:21:31 +05:30
Kovid Goyal
cf8ae0781e ... 2026-03-29 21:09:59 +05:30
Kovid Goyal
dd31561481 Docs: Sample function to output a line of text robustly in the face of VS15 narrowing the last grapheme 2026-03-29 20:57:51 +05:30
Kovid Goyal
9721346387 XWayland: Fix a regression where some wheel mice were not scrolling properly
We assume increment == 1 and delta * 120 == integer means we have
V120 events in units of 1/120.

Fixes #9770
2026-03-29 14:43:48 +05:30
Kovid Goyal
4718881e45 ... 2026-03-28 14:35:27 +05:30
Kovid Goyal
66843f8058 Merge branch 'copilot/improve-window-dragging-feature' of https://github.com/kovidgoyal/kitty 2026-03-28 14:26:45 +05:30
copilot-swe-agent[bot]
0bafc0bdf7 Improve window drag thumbnail to include window content screenshot
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/d929ed68-51ad-414b-8c7e-139aa52cb506

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-03-28 08:47:23 +00:00
Kovid Goyal
f1f19519f7 Update changelog 2026-03-28 13:59:22 +05:30
Kovid Goyal
65cd74bfa0 Cleanup previous PR 2026-03-27 21:36:07 +05:30
Kovid Goyal
801718e38a Update changelog 2026-03-27 20:11:48 +05:30
Kovid Goyal
4798ccd0d2 Fix completion for edit-in-kitty not including some common text file types 2026-03-27 20:07:55 +05:30
copilot-swe-agent[bot]
24414f6189 Fix scrollbar hit region to account for window margin (issue #9756)
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/eb5869d6-9938-4ff3-87fb-34fe14694d6c

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-03-27 05:25:06 +00:00
copilot-swe-agent[bot]
215bbf68de Fix spurious mouse release event during drag out of OS window
Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/f4f7b9e7-102b-4af7-aa03-4fb7a85d6ed0
2026-03-26 14:00:57 +00:00
Kovid Goyal
79713b3ddf Add a FAQ entry about grid size padding 2026-03-26 17:08:29 +05:30
Kovid Goyal
354d0780b2 Re-order FAQ 2026-03-26 17:03:06 +05:30
Kovid Goyal
0c46783f5e Cleanup previous PR 2026-03-26 10:21:08 +05:30
copilot-swe-agent[bot]
6a0efbfdba Refactor ShortcutTracker.Match() to respect AllowFallback priority order
Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/85fbf706-4688-4901-9a23-907cebc91da3
2026-03-26 04:31:37 +00:00
Kovid Goyal
9ea5441a2f ... 2026-03-26 09:39:33 +05:30
Kovid Goyal
88ee80b327 Cleanup previous PR
Actually respect the fallback order when finding matching shortcuts
2026-03-26 09:30:14 +05:30
Павел Мешалкин
8ffdf7d7ee feat: add per-mapping --allow-fallback for layout-independent shortcuts
Add --allow-fallback option to the map command that controls shifted
and ascii (alternate_key) fallback for individual key mappings.

For non-Latin keyboard layouts, when the current layout key is
non-ascii (codepoint > 127 and < 0xE000), the alternate_key from
the base layout is used for matching if the mapping opts in via
--allow-fallback=shifted,ascii.

Default kitty bindings use --allow-fallback=shifted,ascii so they
work out of the box with non-Latin layouts. User custom mappings
default to --allow-fallback=shifted (preserving existing shifted_key
behavior without ascii fallback).

--allow-fallback=none disables all fallback for a mapping.

Python side: parse_options_for_map() in options/utils.py handles flag
parsing, ShortcutMapping uses it in __init__. get_shortcut() filters
candidates by per-mapping allow_fallback.

Go side: ParseMap() handles --allow-fallback, KeyAction stores
AllowFallback, ShortcutTracker.Match passes it to matching.
MatchesParsedShortcut defaults to shifted,ascii for hardcoded shortcuts.

Migrated kittens (themes, command_palette, diff, choose_files) to
use ShortcutTracker with configurable map entries.

Tests added for Python (5 test methods) and Go (ParseMap + key matching).
2026-03-25 19:34:13 +03:00
Kovid Goyal
0ddad7474b Cleanup previous PR 2026-03-25 09:23:29 +05:30
Kovid Goyal
2ce9d575ef Update changelog 2026-03-24 21:18:42 +05:30
Kovid Goyal
97d3cd889c Update changelog 2026-03-23 21:43:55 +05:30
copilot-swe-agent[bot]
c2f6fd9155 Expose session_name in kitten @ ls output for each window (fix #9732)
Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/98770c1a-7605-4597-a5ce-f27b35315930
2026-03-23 15:21:46 +00:00
copilot-swe-agent[bot]
6b86e7db5d Extend glfwGetKeyboardRepeatDelay() to return both initial delay and repeat interval
Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/bde9bf2e-a0dd-4ccd-8385-6a37be1e025f
2026-03-23 11:58:48 +00:00
copilot-swe-agent[bot]
998ee22ecb Add glfwGetKeyboardRepeatDelay() to the GLFW API for X11, Wayland and Cocoa
Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/4765810b-ecf5-4348-ae3a-ff0ff481aaae
2026-03-23 11:46:35 +00:00
Kovid Goyal
503e0a8acf Cleanup previous PR 2026-03-23 08:54:57 +05:30
Daniel M German
6a3fe6ae01 Command palette: word-level search with multi-token cross-column matching
Implement a word-level scoring engine for the command palette that replaces
the previous FZF-based approach. Query tokens are matched against pre-tokenized
words in each column (key, action, category) with exact, prefix, and
edit-distance scoring. Multiple search terms are supported with cross-column
matching — items matching more tokens rank higher. Compound query tokens
containing delimiters (e.g. mouse_selection) are matched as units.

Add comprehensive tests using a Go builder API instead of raw JSON blobs,
covering single-token, multi-token, partial-match, ranking, mouse binding,
and unmapped action scenarios.

Add documentation for the command palette kitten.
2026-03-22 17:28:28 -07:00
Kovid Goyal
e9661f0f3a Graphics protocol: Fix crash when handling invalid offset values in graphics compose commands 2026-03-22 21:49:12 +05:30
Kovid Goyal
46eee6e5df Update changelog 2026-03-22 07:54:51 +05:30
Kovid Goyal
48ab623f59 Graphics protocol: Fix crash when handling invalid PNG image with direct transmission 2026-03-21 17:23:06 +05:30
Kovid Goyal
bd2a5cccfb More work on dnd protocol 2026-03-21 17:13:19 +05:30
Kovid Goyal
6a71687942 Apply same correction for mid_lines() based chars as well
Also update changelog
2026-03-21 12:09:05 +05:30
copilot-swe-agent[bot]
e55c4468e5 Fix Too many timers bug and snprintf format string bug in DnD protocol
Fixes #9628
2026-03-21 08:41:47 +05:30
Kovid Goyal
b4d57525ea Only base64 encode payload when needed 2026-03-21 08:41:47 +05:30
Kovid Goyal
17e941a180 Implement finishing of drops 2026-03-21 08:41:47 +05:30
Kovid Goyal
5ad55ec936 Implement drop data transmission 2026-03-21 08:41:47 +05:30
Kovid Goyal
4f404f8c85 Send dropped message 2026-03-21 08:41:47 +05:30
Kovid Goyal
3a30c47942 Get drop status updates working 2026-03-21 08:41:47 +05:30
Kovid Goyal
111b35b6a7 Implement drop leaving window 2026-03-21 08:41:47 +05:30
Kovid Goyal
fba67322d6 Some docs 2026-03-21 08:41:47 +05:30
Kovid Goyal
b0e57b4dce Send drop move events to child 2026-03-21 08:41:46 +05:30
Kovid Goyal
8d069d3bcd More dnd protocol docs 2026-03-21 08:41:46 +05:30
Kovid Goyal
5a8132d241 Start and stop accepting drops 2026-03-21 08:41:46 +05:30
Kovid Goyal
2898324047 Start work on DnD protocol 2026-03-21 08:41:46 +05:30
Kovid Goyal
4483a6c110 version 0.46.2 2026-03-21 06:36:04 +05:30