Commit Graph

17381 Commits

Author SHA1 Message Date
Kovid Goyal
5599a5c5ca DRYer 2026-03-05 17:03:47 +05:30
Kovid Goyal
ebba5dbe08 Ensure full titlebar line is erased to current background before re-drawing 2026-03-05 17:00:34 +05:30
Kovid Goyal
917616d09b Cleanup previous PR
Press on titlebar should focus window
2026-03-05 16:58:30 +05:30
Kovid Goyal
5e5243a52a Merge branch 'double-click-rename' of https://github.com/mcrmck/kitty 2026-03-05 16:52:05 +05:30
mcrmck
0f256e2724 Double-click window title bar to rename 2026-03-05 01:42:49 -05:00
Kovid Goyal
09e9cbea51 Cleanup previous PR 2026-03-05 11:58:15 +05:30
copilot-swe-agent[bot]
74f817cd36 Add detect_title_bar parameter to mouse_region() to detect window title bars
Fixes #9610
2026-03-05 11:54:58 +05:30
Kovid Goyal
134ca894f8 DRYer 2026-03-05 11:53:03 +05:30
Kovid Goyal
be83cf3a4a Refactor mouse event region detection 2026-03-05 11:38:05 +05:30
Kovid Goyal
50bc3f465e Cleanup previous PR
Also fix ask kitten not setting window title in modes other than choose
2026-03-05 11:19:40 +05:30
Kovid Goyal
f89617893f Merge branch 'double-click-rename' of https://github.com/mcrmck/kitty 2026-03-05 11:10:42 +05:30
Kovid Goyal
fcdc67a356 Make shift+left click extend the current selection instead of starting a new selection when the mouse is not grabbed by the TUI application
Matches behavior common to most GUI applications and other terminal
emulators. Can be reverted to previous behavior easily.

See https://github.com/kovidgoyal/kitty/discussions/9608
2026-03-05 11:00:43 +05:30
mcrmck
f3b9a2d7d8 Double-click tab to rename 2026-03-04 23:37:16 -05:00
Kovid Goyal
e1a14551fa Cleanup previous PR 2026-03-05 09:25:10 +05:30
Kovid Goyal
b66703ec85 Merge branch 'pane-title-bar' of https://github.com/mcrmck/kitty 2026-03-05 08:31:50 +05:30
Kovid Goyal
f9529d53ed DRYer 2026-03-05 08:23:41 +05:30
Kovid Goyal
114d0813b6 Be a little defensive about resetting the suppress left mouse release flag
Also reset the flag on a subsequent press event even if no intervening
release event was received.
2026-03-05 08:18:04 +05:30
Kovid Goyal
c772b9a078 Add a note about kitty UI mouse features to the docs 2026-03-05 07:59:57 +05:30
mcrmck
f2ae5d0028 Add window_title_bar_min_windows option, simplify window_title_bar
- Add window_title_bar_min_windows (0=never, 1=always, 2+=threshold)
  similar to tab_bar_min_tabs, to control when title bars appear
- Remove 'none' choice from window_title_bar so it purely controls
  position (top/bottom); disabling is now via min_windows 0
- Only hide title bar for truly empty template strings, not
  whitespace-only, so users can have intentionally blank bars

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 21:14:54 -05:00
Kovid Goyal
206cba3cc9 DRYer 2026-03-05 07:14:32 +05:30
mcrmck
dd26469cb3 Rework window title bar architecture per review feedback
- Eliminate double set_geometry() call: removed _apply_window_title_bars()
  which post-processed geometry causing expensive SIGWINCH to children
- Move title bar screen ownership to Window objects instead of central
  manager, with show_title_bar flag set during layout before do_layout()
- Window.set_geometry() now handles title bar geometry internally:
  self.geometry stays at layout-computed value (borders/padding correct),
  only C-side render data diverges via adjusted top/bottom
- Hide title bar for 1-row windows (ynum <= 1)
- Hide title bar when template evaluates to empty/whitespace
- Optimize C render loop: merge title bar GPU prep and draw into existing
  per-window loops, use trd pointer and is_visible=false, use
  num_visible_windows > 1 guard. Eliminates separate iteration passes.
- Simplify WindowTitleBarManager to thin coordinator

Note on C-side GPU prep placement: the suggested patch placed
send_cell_data_to_gpu for title bars inside the is_active_window branch
only. This caused a segfault (NULL deref in gleRunVertexSubmitImmediate)
because inactive windows' title bars had valid screen/geometry but no
GPU data uploaded, yet draw_cells was called for all visible title bars.
Moved to the per-window visibility block alongside the main window's
send_cell_data_to_gpu call so all visible title bars get GPU data
prepared. The draw loop matches the suggested patch exactly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 20:17:38 -05:00
Kovid Goyal
561433dfa5 Merge branch 'feature/ghostty-split-focus-click' of https://github.com/rockorager/kitty 2026-03-05 05:24:01 +05:30
Tim Culverhouse
b277a016be mouse suppress split focus-transfer clicks
Treat left clicks that only transfer split focus as focus-only events. Suppress forwarding the left press and matching release to the child so applications do not see release-without-press sequences.

Amp-Thread-ID: https://ampcode.com/threads/T-019cba50-5f2e-763b-ab5f-aa8c96a45747
Co-authored-by: Amp <amp@ampcode.com>
2026-03-04 13:41:02 -06:00
copilot-swe-agent[bot]
a5322c06d1 Fix debug_config showing sequence shortcuts grouped on a single line
Fixes #9604
Fixes #9605
2026-03-04 20:25:27 +05:30
Kovid Goyal
e6aeaaa4ff Fix #9602 2026-03-04 19:48:36 +05:30
copilot-swe-agent[bot]
f7a4bf6be2 Reduce per OS Window VRAM usage for windows that use layered rendering, such as translucent windows.
The texture used as the intermediate rendering target is now shared between
all OS Windows instead of each OS Window having its own.

Fixes #9600
Fixes #9599
2026-03-04 14:46:14 +05:30
Kovid Goyal
0170c2c0c6 Fix #9590 2026-03-04 13:46:12 +05:30
Kovid Goyal
d15905c918 Change default word regexp to exclude punctuation 2026-03-04 09:20:53 +05:30
copilot-swe-agent[bot]
1785873835 diff kitten: Use a words based algorithm for intra line changed region highlighting
Fixes #9598
2026-03-04 09:06:37 +05:30
Kovid Goyal
cbfc60aa4f Prevent copilot from using go test 2026-03-03 22:25:24 +05:30
Kovid Goyal
c53a81e8cd ... 2026-03-03 22:24:28 +05:30
Kovid Goyal
558d99d6ab Speed up dependency installation 2026-03-03 22:18:21 +05:30
Kovid Goyal
7f691198de Try to get copilot to setup the repo first before doing anything else 2026-03-03 22:12:53 +05:30
Kovid Goyal
ff6ad25b9b More copilot instructions 2026-03-03 21:52:01 +05:30
Kovid Goyal
1f2729bafd More instructions for copilot 2026-03-03 21:35:36 +05:30
Kovid Goyal
27b11523de ... 2026-03-03 21:09:57 +05:30
Kovid Goyal
6c5d27229b Add copilot instructions 2026-03-03 21:01:34 +05:30
Kovid Goyal
ebbfb206e6 Run command palette action after event loop tick 2026-03-03 15:44:08 +05:30
Kovid Goyal
ab40d41609 Make gofmt happy 2026-03-03 15:37:55 +05:30
Kovid Goyal
11e8ccb7c1 Fix categorisation of some show command actions 2026-03-03 15:36:02 +05:30
Kovid Goyal
baca6acdc7 Document the new command palette 2026-03-03 15:34:10 +05:30
copilot-swe-agent[bot]
5638d20921 Make showing of unmapped actions a runtime cached setting
Fixes #9591
2026-03-03 15:24:26 +05:30
copilot-swe-agent[bot]
f13c8cd44d Allow optionally showing unmapped actions in the command palette
Also highlight letters matching the search query.
Fixes #9589
2026-03-03 14:29:10 +05:30
Kovid Goyal
a7480370a4 Cleanup previous PR
Fixes #9587
2026-03-03 13:37:14 +05:30
Kovid Goyal
0930535642 Remove debug prints 2026-03-03 13:34:13 +05:30
Kovid Goyal
bca1926933 Merge branch 'feat/cursor-trail-between-tabs' of https://github.com/ngavinsir/kitty 2026-03-03 13:30:22 +05:30
Kovid Goyal
4ec1fa5168 Prevent invocation of command-palette from command line 2026-03-03 13:13:20 +05:30
copilot-swe-agent[bot]
347c829156 Cleanup previous PR
Various fixes and improvements to the command palette kitten

Fixes #9585
2026-03-03 13:04:26 +05:30
ngavinsir
777bddaa28 update cursor blink zero time 2026-03-03 14:32:16 +07:00
ngavinsir
0f476efbd1 feat: cursor trail between tabs 2026-03-03 13:33:13 +07:00