Commit Graph

17460 Commits

Author SHA1 Message Date
Kovid Goyal
f57eb74dbe Update changelog 2026-03-17 09:31:51 +05:30
Kovid Goyal
8457258f26 ... 2026-03-17 09:30:23 +05:30
Kovid Goyal
6704f359a9 Update changelog 2026-03-17 08:57:30 +05:30
copilot-swe-agent[bot]
877be65447 Fix crashes when moving tab between OS windows (issue #9677)
Wayland (glfw/wl_window.c):
- Fix out-of-bounds access in send_drag_data: look up item by MIME type
  instead of using the data-request index i to index _glfw.drag.items[].
  The compositor calls drag_source_send once per target window entered,
  so _glfw.wl.drag.count grows independently of item_count, causing
  _glfw.drag.items[i] to be out-of-bounds on the second drag, yielding a
  garbage optional_data pointer that made write() fail with EFAULT.
- Fix protocol error "Drag has not ended": change on_fail and the
  GLFW_DRAG_DATA_REQUEST error path to call finish_drag_write(i)+return
  instead of cancel_drag(), which was calling wl_data_source_destroy()
  before the compositor ended the drag, violating the Wayland protocol.
- Fix double-free of dr.pending_data: null the pointer after free and
  add cleanup to finish_drag_write().
- Fix missing finish_drag_write() after a full write in data-request
  mode, which left the pipe open causing the target to wait for EOF.

X11 (glfw/x11_window.c):
- Wrap XSendEvent() calls in send_xdnd_enter/position/leave/drop with
  _glfwGrabErrorHandlerX11()/_glfwReleaseErrorHandlerX11(). A target
  window destroyed between discovery and message delivery produced a
  BadWindow error that hit the default X11 abort handler. Now handled
  gracefully by clearing current_target or cancelling the drag."

Fixes #9677
Fixes #9683
2026-03-17 08:53:17 +05:30
Kovid Goyal
ad53a5bdff Cleanup previous PR 2026-03-17 08:40:56 +05:30
copilot-swe-agent[bot]
25f97f4ce5 Implement on_quit event for global watchers
Fixes #9682
2026-03-17 08:37:30 +05:30
Kovid Goyal
02a34ecd04 Fix #9684 2026-03-17 08:32:38 +05:30
Kovid Goyal
c977d1edcb ... 2026-03-17 08:22:45 +05:30
Kovid Goyal
77821f6321 Fix #9679 2026-03-17 08:21:11 +05:30
Kovid Goyal
83160c10c4 Cleanup previous PR 2026-03-16 17:38:14 +05:30
copilot-swe-agent[bot]
d97850274f Implement Python vectorcall calling convention for Color type in colors.c
Fixes #9674
2026-03-16 17:09:39 +05:30
copilot-swe-agent[bot]
780b4337e4 Fix move_tab_forward/backward with tab_bar_filter
When tab_bar_filter is used (e.g. with sessions), move_tab() was using
self.active_tab_idx (index in the full tabs list) as an index into the
filtered tabs list, causing incorrect behavior.

Also fix the same bug in tab_at_location() for left/right locations.

Fixes #9672
Fixes #9673
2026-03-16 17:05:40 +05:30
Kovid Goyal
40f9945ea7 version 0.46.1 v0.46.1 2026-03-16 13:20:03 +05:30
Kovid Goyal
f4d4a80ca3 Merge branch 'dependabot/go_modules/all-go-deps-48d5999cd7' of https://github.com/kovidgoyal/kitty 2026-03-16 09:19:20 +05:30
Kovid Goyal
0c90b66f91 ... 2026-03-16 09:18:50 +05:30
dependabot[bot]
1f2149eb6f Bump golang.org/x/sys from 0.41.0 to 0.42.0 in the all-go-deps group
Bumps the all-go-deps group with 1 update: [golang.org/x/sys](https://github.com/golang/sys).


Updates `golang.org/x/sys` from 0.41.0 to 0.42.0
- [Commits](https://github.com/golang/sys/compare/v0.41.0...v0.42.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-version: 0.42.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-03-16 03:43:04 +00:00
Kovid Goyal
ddfd8d7f45 Wayland: Dont set window icons on layer shell windows as some compositors complain about them 2026-03-16 08:28:36 +05:30
copilot-swe-agent[bot]
66ffb6895c Fix macOS keyboard focus not restored when switching back from another space
Fixes #9665
Fixes #9666
2026-03-15 14:57:46 +05:30
Kovid Goyal
b3b7d0596d Dont use neighboring tab colors for tab bar margins on translucent OS windows
The colors are rendered semi-transparent which effectively means they blend
with background unlike the neighboring colors and end up not matching
2026-03-15 09:22:43 +05:30
copilot-swe-agent[bot]
b93f1badd1 Fix tab bar border artifacts with background_opacity on non-cell-aligned windows
Fixes #9663: visible gray/black bars appear at the left and right
sides of the tab bar when background_opacity is set and the window width
is not a multiple of the cell width.

Three fixes in update_blank_rects:

1. Fix off-by-one: use g.right instead of g.right-1 for the right blank
   rect start position. The old code caused a 1-pixel overlap with tab
   content and spuriously added a right blank rect even for
   perfectly-aligned windows.

2. Fix blank rect colors: only use tab_bar_left/right_edge_color when
   tab_bar_margin_width > 0 (explicit configured margin). When
   margin_width=0 (default), use default_bg which blends with the window
   background instead of showing a solid tab-colored bar.

3. Fix inner margin BOTTOM_EDGE height: use tab_bar.top instead of vh
   so the inner margin blank rect covers only the inner margin area.

Fixes #9664

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-03-15 09:00:41 +05:30
Kovid Goyal
30756bb819 Cleanup previous PR 2026-03-15 08:38:59 +05:30
Kovid Goyal
d244a697bf Merge branch 'dictation_fix' of https://github.com/alexeyshurygin/kitty 2026-03-15 08:34:46 +05:30
Alexey Shurygin
827c8dd614 Address PR review feedback 2026-03-15 01:33:38 +03:00
Alexey Shurygin
b66c6c4932 Fix: Dictation does not start on double Fn key press on Mac OS 2026-03-15 01:15:05 +03:00
Kovid Goyal
e72f49952d Linux: Fix regression that broke drag and drop from GTK applications
Fixes #9656
2026-03-13 20:19:33 +05:30
copilot-swe-agent[bot]
a97f468a02 Add remove_duplicate_mimes() and call it from update_allowed_mimes_for_drop()
Fixes #9657
2026-03-13 20:01:43 +05:30
Kovid Goyal
c332211997 Possible fix for #9656 2026-03-13 19:16:44 +05:30
Kovid Goyal
98931d99b0 Wayland: Fix momentum scrolling not working on compositors that send a stop frame with no axis information
Fixes #9653
2026-03-13 08:47:45 +05:30
Kovid Goyal
5585b773bf Merge branch 'master' of https://github.com/1024th/kitty 2026-03-13 08:23:39 +05:30
1024th
ffe8cef1a8 Fix font detection command on linux in setup.py 2026-03-13 01:03:20 +08:00
Kovid Goyal
c0b549fee8 Make XI2 scroll offset type detection more robust
Since we have to use heuristics, lets at least collect stats for a few
events before deciding.
2026-03-12 21:44:20 +05:30
Kovid Goyal
99639f1373 XInput2: Assume any fractional scroll value means the device is high res
Because as far as I can tell there is no reliable way to detect high res
scroll devices under XWayland. Sigh.
2026-03-12 20:32:15 +05:30
Kovid Goyal
5ba3d10471 X11: Fix a regression that caused some high res scroll devices to be treated as line based scroll devices
Apparently when running under XWayland, we cant rely on libinput to
detect highres scroll devices. Sigh. Linux input is such a disaster.
Dunno if this will break something else, hopefully not.

Fixes #9649
2026-03-12 19:23:41 +05:30
Kovid Goyal
39683e0c34 ... 2026-03-12 18:33:52 +05:30
Kovid Goyal
2c395a1ef9 Fix #9650 2026-03-12 18:03:53 +05:30
Kovid Goyal
01a70e06c4 ... 2026-03-12 13:53:41 +05:30
Kovid Goyal
0614f05335 Use new SIMD function for non blank checking 2026-03-12 13:50:35 +05:30
Kovid Goyal
7b9b8834a8 ... 2026-03-12 13:48:20 +05:30
copilot-swe-agent[bot]
f4bf9cf1c9 Add not_index_byte and not_index_byte2 functions to simdstring package
Fixes #9646
2026-03-12 13:47:05 +05:30
Kovid Goyal
d8af7e2c88 Add an option to control highlighting of moved lines 2026-03-12 12:59:46 +05:30
copilot-swe-agent[bot]
f45345c7a7 Add colorMoved support to kitty diff kitten
Fixes #3241
Fixes #9644
2026-03-12 12:44:21 +05:30
Kovid Goyal
c78592174d ... 2026-03-12 12:23:58 +05:30
Kovid Goyal
3f16aab664 Merge branch 'patch-1' of https://github.com/ChangMarkusYu/kitty 2026-03-12 12:23:34 +05:30
Chang Yu
9f45daf300 Fix bookorat link in integrations.rst 2026-03-11 22:26:17 -07:00
Kovid Goyal
a0709acdde DRYer 2026-03-12 10:06:20 +05:30
Kovid Goyal
b9d7a661ce Dont import ctypes unless type checking
ctypes in Python 3.14 is broken on Intel macs. It uses libffi which is
broken on Intel macs without extra security entitlements. At least
com.apple.security.cs.allow-unsigned-executable-memory and possibly
com.apple.security.cs.disable-executable-page-protection

Rather than add these entitlements, we simply do not import ctypes as it
is not actually used on macs anyway.

Fixes #9643
2026-03-12 09:58:49 +05:30
Kovid Goyal
c2447abd30 Update changelog 2026-03-12 09:22:02 +05:30
Kovid Goyal
36810862ed Update changelog 2026-03-12 08:57:57 +05:30
Kovid Goyal
01104bac65 Fix a regression that broke `kitten update-self`
Fixes #9642
2026-03-12 08:33:20 +05:30
Kovid Goyal
99ff621b21 Merge branch 'fix/clear-dock-badge-on-interaction' of https://github.com/pietervdheijden/kitty 2026-03-12 08:14:19 +05:30