Commit graph

18431 commits

Author SHA1 Message Date
Kovid Goyal
6c586934f4
... 2026-06-02 13:31:14 +05:30
Kovid Goyal
4043e99b75
Merge branch 'copilot/show-secure-input-in-menubar' of https://github.com/kovidgoyal/kitty 2026-06-01 13:11:30 +05:30
Kovid Goyal
26d255b27d
Merge branch 'dependabot/github_actions/actions-754f0868f5' of https://github.com/kovidgoyal/kitty 2026-06-01 13:04:24 +05:30
Kovid Goyal
905e1b77d1
Merge branch 'dependabot/go_modules/all-go-deps-c4d8eed042' of https://github.com/kovidgoyal/kitty 2026-06-01 13:01:52 +05:30
dependabot[bot]
de8870da47
Bump github/codeql-action from 4.35.5 to 4.36.0 in the actions group
Bumps the actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 4.35.5 to 4.36.0
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v4.35.5...v4.36.0)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.36.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-01 06:48:15 +00:00
dependabot[bot]
73ac7b738f
Bump the all-go-deps group with 3 updates
Bumps the all-go-deps group with 3 updates: [github.com/ebitengine/purego](https://github.com/ebitengine/purego), [github.com/sgtdi/fswatcher](https://github.com/sgtdi/fswatcher) and [golang.org/x/sys](https://github.com/golang/sys).


Updates `github.com/ebitengine/purego` from 0.10.0 to 0.10.1
- [Release notes](https://github.com/ebitengine/purego/releases)
- [Commits](https://github.com/ebitengine/purego/compare/v0.10.0...v0.10.1)

Updates `github.com/sgtdi/fswatcher` from 1.2.0 to 1.3.0
- [Release notes](https://github.com/sgtdi/fswatcher/releases)
- [Commits](https://github.com/sgtdi/fswatcher/compare/v1.2.0...v1.3.0)

Updates `golang.org/x/sys` from 0.44.0 to 0.45.0
- [Commits](https://github.com/golang/sys/compare/v0.44.0...v0.45.0)

---
updated-dependencies:
- dependency-name: github.com/ebitengine/purego
  dependency-version: 0.10.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-go-deps
- dependency-name: github.com/sgtdi/fswatcher
  dependency-version: 1.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-go-deps
- dependency-name: golang.org/x/sys
  dependency-version: 0.45.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-go-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-01 06:40:37 +00:00
Kovid Goyal
385d90c427
Fix matching of var/env against tabs
Fixes #10095
2026-06-01 11:49:45 +05:30
Kovid Goyal
9c7b3d778a
Switch to match/case 2026-06-01 11:47:14 +05:30
copilot-swe-agent[bot]
f388fdabdc
Show [Secure input] indicator in macOS global menubar title area when secure keyboard entry is enabled 2026-06-01 00:57:43 +00:00
Kovid Goyal
ce4defcff4
Merge branch 'wayland-titlebar-crash' of https://github.com/cwelsys/kitty 2026-05-31 11:03:13 +05:30
Connor Welsh
fb4d05f7e8
Wayland: Fix crash hiding titlebar on layer-shell windows
inform_compositor_of_window_geometry() calls xdg_surface_set_window_geometry()
unconditionally, but layer-shell surfaces (e.g. those from `kitten panel`) have
no xdg_surface. With hide_window_decorations set to titlebar-only, the panel hits
this geometry call during creation and dereferences the NULL proxy, crashing in
wl_proxy_get_version() with SIGSEGV.

Guard on window->wl.xdg.surface: layer-shell surfaces manage geometry via the
layer surface, so the xdg call is skipped. Normal toplevels are unaffected.
2026-05-30 16:14:55 -04:00
Matsumoto Kotaro
cc2d7a1789 graphics: add memory-only storage for graphics data
Add a new graphics protocol key, N=1, to request that transmitted
image/frame data is kept only in memory and not written to the graphics
disk cache file.

This is useful for transient high-frequency updates such as video-like
streams, where the latest frame is the only useful data and persisting
each frame to the disk cache causes unnecessary write traffic.

The implementation keeps the existing graphics cache abstraction intact:
memory-only entries can still be read back by animation, composition, and
frame coalescing paths. Only persistence to the disk cache file is skipped.

The default behavior is unchanged when N is omitted or set to zero.
2026-05-30 18:46:24 +09:00
Kovid Goyal
6bd62a5242
Merge branch 'master' of https://github.com/codeasone/kitty 2026-05-30 07:35:10 +05:30
Kovid Goyal
4aa0cd6215
bump go image mod version for CVE 2026-05-30 05:17:19 +05:30
Mark Stuart
852fc4a662 Add equalize action and equalize_on_close option to Splits layout
Adds an `equalize` layout action that redistributes split sizes so each
window receives a proportional share of space along each axis.

Also adds an `equalize_on_close` layout option that automatically
equalizes splits whenever a window is closed, keeping the remaining
windows balanced without requiring an explicit key binding.

These two features compose well. For example, to keep splits balanced
at all times - equalizing on every open and close:

    enabled_layouts splits:equalize_on_close=true
    map ctrl+' combine : launch --location=hsplit --cwd=current : layout_action equalize
    map ctrl+/ combine : launch --location=vsplit --cwd=current : layout_action equalize

A standalone key binding for manual rebalancing is also supported:

    map ctrl+shift+e layout_action equalize
2026-05-29 20:02:42 +01:00
Kovid Goyal
2b7d8af55a
Fix #10089 2026-05-29 14:55:14 +05:30
Kovid Goyal
9ffabc7caf
... 2026-05-29 14:52:30 +05:30
Kovid Goyal
52b44f4f1a
Ensure we dont double copy 2026-05-29 07:52:38 +05:30
Kovid Goyal
d6b662e706
macOS: Fix regression in 0.47.0 that broke passing Cmd+C on to terminal applications when no text is selected
Fixes #10087
2026-05-29 07:47:29 +05:30
Kovid Goyal
74b80e9a29
Update changelog 2026-05-29 07:14:28 +05:30
Kovid Goyal
a6aa51e823
Merge branch 'master' of https://github.com/pakhromov/kitty 2026-05-29 07:13:17 +05:30
Pavel
0fedf69d87 scrollbar: start drag after track click when jump_on_click is enabled
When scrollbar_jump_on_click is on and the user clicks the track, immediately
jump to the clicked position and begin a drag so holding the button and
moving the mouse continues scrolling. Matches the behavior of Firefox and
GTK apps.
2026-05-28 21:19:10 +02:00
Kovid Goyal
fb5255b1ae
version 0.47.1 2026-05-28 09:51:42 +05:30
Kovid Goyal
51261c9fba
... 2026-05-28 09:13:16 +05:30
Kovid Goyal
99248ea629
Update changelog
Fixes #10082
2026-05-28 07:43:44 +05:30
Kovid Goyal
db8938fc9f
Merge branch 'copilot/fix-10082' of https://github.com/kovidgoyal/kitty 2026-05-28 07:42:31 +05:30
copilot-swe-agent[bot]
0146b02aaf
Fix #10082: Re-apply _NET_WM_STATE for X11 layer shell windows on each show
Some window managers (e.g. kwin_x11) clear _NET_WM_STATE when a window
is unmapped/withdrawn. This caused layer shell windows to lose states like
_NET_WM_STATE_ABOVE, _NET_WM_STATE_SKIP_TASKBAR, etc. when hidden and
re-shown via toggle. The result was inconsistent behaviour between the
first show and subsequent shows.

Fix by calling update_wm_hints() before XMapWindow in
_glfwPlatformShowWindow() for layer shell windows, which re-applies all
WM state properties (_NET_WM_STATE, window type, strut, size hints)
before each map operation.
2026-05-28 02:07:59 +00:00
Kovid Goyal
2c48b7409b
List what software supports the DnD protocol 2026-05-28 07:27:24 +05:30
Kovid Goyal
3fc5bed364
Merge branch 'decst8c' of https://github.com/aymanbagabas/kitty 2026-05-27 08:38:45 +05:30
Kovid Goyal
c7622683c8
Cleanup previous PR 2026-05-27 08:31:41 +05:30
Kovid Goyal
1c69bc5c99
Merge branch 'tab-resize-reset' of https://github.com/aymanbagabas/kitty 2026-05-27 08:30:58 +05:30
Ayman Bagabas
c68a1654d3 feat(vt): add support for DECST8C escape sequence
Recognize CSI ? 5 W as DECST8C, which resets the active screen's tab
stops to the default of every 8 columns. Other CSI W variants continue
to produce a parse error.

Signed-off-by: Ayman Bagabas <aymanbagabas@gmail.com>
2026-05-26 21:12:27 -04:00
Ayman Bagabas
3138ae4aad fix(screen): preserve tab stops across window resizes
Previously, every window resize reinitialised the tab stops to the
default of every 8 columns, discarding any stops set via HTS or cleared
via TBC. ECMA-48 only treats RIS, DECSTR, and DECCOLM as events that
reset tab stops, and other terminal emulators all preserve user-set
stops across an interactive resize.

Copy the surviving prefix of the previous tab stops into the freshly
allocated array on both main and alt screens. Newly added columns when
growing the window keep the default every 8 columns pattern. Also point
the active tabstops pointer at the alt screen's array when a resize
happens while the alt screen is active, instead of unconditionally
resetting it to the main screen's array.

Signed-off-by: Ayman Bagabas <aymanbagabas@gmail.com>
2026-05-26 21:12:27 -04:00
Kovid Goyal
e257e5695f
Fix focus change on drag with focus_follows_mouse not working 2026-05-27 05:31:25 +05:30
Kovid Goyal
173535736a
Allow non UI/client drags from programs that disallow move on drag 2026-05-26 21:56:35 +05:30
Kovid Goyal
2096948cbc
Wayland: Only use key repeat events from server is repeat rate == 0
Fixes #10070
2026-05-26 08:31:52 +05:30
Kovid Goyal
a20ea1b96a
Merge branch 'dependabot/github_actions/actions-bcb0c4251a' of https://github.com/kovidgoyal/kitty 2026-05-25 11:00:30 +05:30
Kovid Goyal
ca80b376b0
Merge branch 'dependabot/go_modules/all-go-deps-4e9911e4e5' of https://github.com/kovidgoyal/kitty 2026-05-25 11:00:09 +05:30
dependabot[bot]
b2948a5018
Bump github/codeql-action from 4.35.4 to 4.35.5 in the actions group
Bumps the actions group with 1 update: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 4.35.4 to 4.35.5
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v4.35.4...v4.35.5)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.35.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 04:19:17 +00:00
dependabot[bot]
afaa7053a5
Bump github.com/nwaples/rardecode/v2 in the all-go-deps group
Bumps the all-go-deps group with 1 update: [github.com/nwaples/rardecode/v2](https://github.com/nwaples/rardecode).


Updates `github.com/nwaples/rardecode/v2` from 2.2.2 to 2.2.3
- [Commits](https://github.com/nwaples/rardecode/compare/v2.2.2...v2.2.3)

---
updated-dependencies:
- dependency-name: github.com/nwaples/rardecode/v2
  dependency-version: 2.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-go-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-25 04:14:21 +00:00
Kovid Goyal
f2df2394ce
Fix conf watcher kitten not tracking changes to symlink targets 2026-05-24 09:54:01 +05:30
Kovid Goyal
dd136ba806
... 2026-05-24 09:12:43 +05:30
Kovid Goyal
2d9b104134
Fix #10058 2026-05-22 21:38:00 +05:30
Kovid Goyal
2dcbb392dc
Merge branch 'add-orbiton-to-documentation' of https://github.com/xyproto/kitty 2026-05-22 17:13:56 +05:30
Alexander F. Rødseth
8f87080cbb Add the Orbiton text editor to the documentation 2026-05-22 12:42:36 +02:00
Kovid Goyal
a17b2df580
Fix #10054 2026-05-22 07:57:41 +05:30
Kovid Goyal
270c553af6
When background_image glob does not match anything use the literal path for backwards compat 2026-05-20 20:37:23 +05:30
Kovid Goyal
bfc4947cac
Bump dependency for CVE 2026-05-20 20:32:08 +05:30
Kovid Goyal
fbbac6de38
Fix #10044 2026-05-20 20:13:09 +05:30
Kovid Goyal
8bc6389f3d
Technically copy_or_noop should be passed through event when there is no active window, although it will do nothing in that case anyway 2026-05-20 12:08:31 +05:30