Commit Graph

18521 Commits

Author SHA1 Message Date
Kovid Goyal
8b17088b58 dnd fix remote drag source premature removal of remote file data
Instead the remote data is removed from the cache on:
1) new drag start
2) window destruction
3) application exit
2026-05-13 12:35:10 +05:30
Kovid Goyal
8b85bc3440 Cleanup previous PR 2026-05-13 11:51:18 +05:30
Kovid Goyal
7cd9ba03a3 Merge branch 'read-fc-matrix' of https://github.com/Strykar/kitty 2026-05-13 11:50:13 +05:30
Kovid Goyal
572b14f994 Merge branch 'pr-single-instance-background-overrides' of https://github.com/oxysoft/kitty 2026-05-13 11:20:04 +05:30
Kovid Goyal
c2a7225657 Ensure drag finish timer doesnt fire will waiting for remote item data 2026-05-13 10:59:44 +05:30
Kovid Goyal
9c29c612a5 Merge branch 'copilot/finish-promised-data-ready-function' of https://github.com/kovidgoyal/kitty 2026-05-13 10:44:04 +05:30
copilot-swe-agent[bot]
217a01cfdf Implement promised_data_ready() in glfw/cocoa_window.m
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/38f75cd7-b61b-42b4-9d28-9a40459a9536

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-13 03:03:47 +00:00
Kovid Goyal
c909809bb4 More work on DnD kitten 2026-05-13 08:25:14 +05:30
Kovid Goyal
b28712bfae More work on the DnD kitten 2026-05-13 07:17:06 +05:30
Kovid Goyal
cb8fe24ab1 Merge branch 'fix/help-pager-fallback' of https://github.com/Xuyiyang23333/kitty 2026-05-13 04:48:59 +05:30
Xuyiyang23333
c0661024d8 Fix silent failure when pager (less) is not installed
When kitten --help is run in a terminal and less is not available,
ShowHelpInPager silently discards the error from pager.Run(), resulting
in no output and a zero exit code. Fall back to writing help text
directly to stdout when the pager fails, matching the behavior of the
Python equivalent in kitty/cli.py which catches FileNotFoundError and
prints the text as a fallback.

Signed-off-by: Xuyiyang23333 <xuyiyang23333@gmail.com>
2026-05-13 00:37:55 +08:00
Kovid Goyal
824b46507c Keep text/uri-list as private MIME for kitty to kitty DnD 2026-05-12 13:20:35 +05:30
Kovid Goyal
b9261c4e26 Fix failing test
Ensure we never write empty payloads for symlinks/dir listings
2026-05-12 12:52:04 +05:30
Kovid Goyal
2bda489698 Clear remote_item_write_id on completion
Needed as send next remote item checks it is zero before sending
2026-05-12 12:39:34 +05:30
Kovid Goyal
0a69b89a80 More work on dnd kitten 2026-05-12 12:23:57 +05:30
Kovid Goyal
12bdf972e0 ... 2026-05-12 09:37:16 +05:30
Kovid Goyal
4e3a3ba6ab Fix infinite wait in test 2026-05-12 09:36:30 +05:30
nuck
654cce687e Honor background image overrides for single instance windows 2026-05-11 18:52:04 -04:00
Kovid Goyal
f4e9824e18 Fix off by one in if condition 2026-05-11 22:06:32 +05:30
Kovid Goyal
02cfa89bae ... 2026-05-11 21:59:45 +05:30
Kovid Goyal
634f13e65f More work on dnd kitten 2026-05-11 21:51:23 +05:30
Kovid Goyal
43b028bd6a Finish terminal side port of new dnd sub protocol 2026-05-11 13:39:43 +05:30
Kovid Goyal
114f1ff128 Merge branch 'dependabot/github_actions/actions-937d73b4db' of https://github.com/kovidgoyal/kitty 2026-05-11 09:35:58 +05:30
Kovid Goyal
845aeeffd9 Merge branch 'dependabot/go_modules/all-go-deps-c79d8bb26a' of https://github.com/kovidgoyal/kitty 2026-05-11 09:35:30 +05:30
dependabot[bot]
9993f82d64 Bump github/codeql-action from 4.35.2 to 4.35.3 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.2 to 4.35.3
- [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.2...v4.35.3)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-05-11 03:52:22 +00:00
dependabot[bot]
15f71ebd37 Bump the all-go-deps group with 4 updates
Bumps the all-go-deps group with 4 updates: [github.com/alecthomas/chroma/v2](https://github.com/alecthomas/chroma), [github.com/klauspost/compress](https://github.com/klauspost/compress), [github.com/shirou/gopsutil/v4](https://github.com/shirou/gopsutil) and [golang.org/x/sys](https://github.com/golang/sys).


Updates `github.com/alecthomas/chroma/v2` from 2.23.1 to 2.24.1
- [Release notes](https://github.com/alecthomas/chroma/releases)
- [Commits](https://github.com/alecthomas/chroma/compare/v2.23.1...v2.24.1)

Updates `github.com/klauspost/compress` from 1.18.5 to 1.18.6
- [Release notes](https://github.com/klauspost/compress/releases)
- [Commits](https://github.com/klauspost/compress/compare/v1.18.5...v1.18.6)

Updates `github.com/shirou/gopsutil/v4` from 4.26.3 to 4.26.4
- [Release notes](https://github.com/shirou/gopsutil/releases)
- [Commits](https://github.com/shirou/gopsutil/compare/v4.26.3...v4.26.4)

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

---
updated-dependencies:
- dependency-name: github.com/alecthomas/chroma/v2
  dependency-version: 2.24.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-go-deps
- dependency-name: github.com/klauspost/compress
  dependency-version: 1.18.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-go-deps
- dependency-name: github.com/shirou/gopsutil/v4
  dependency-version: 4.26.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all-go-deps
- dependency-name: golang.org/x/sys
  dependency-version: 0.44.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-05-11 03:48:34 +00:00
Kovid Goyal
07ec007388 Start work on porting code to new remote drag source protocol 2026-05-10 05:04:46 +05:30
Strykar
b3e7c3e717 Read FC_MATRIX from fontconfig
pattern_as_dict() in fontconfig.c never read FC_MATRIX, so any per-font
transform set by fontconfig was silently dropped. fontconfig ships a
default rule (90-synthetic.conf) that applies a slant matrix to any
roman-only font when italic is requested, which is why italic CJK has
been rendering upright in kitty.

Read the matrix, carry it on the descriptor as a 4-tuple of doubles,
apply it once in face_from_descriptor() via FT_Set_Transform, also
inform HarfBuzz via hb_font_set_synthetic_slant + hb_ft_font_changed
so shaping reflects the slanted rendering. Extend
face_equals_descriptor() to compare the matrix so the per-FontGroup
fallback cache returns the right face when upright and italic share a
font file.

The FT transform is sticky on the face, so subsequent FT_Load_Glyph
calls inherit it with no per-call overhead, and the per-Face glyph
atlas cache stays correct because the matrix is set at init and never
changes. Pure shears (xx=1, yy=1) preserve horizontal advance and do
not disturb monospace cell width.

The HB synthetic_slant call is gated on HB_VERSION_ATLEAST(4,0,0) since
setup.py allows down to 1.5.0. hb_ft_font_changed runs unconditionally
to invalidate any populated caches.

Refs #9857, #9700.
2026-05-10 02:48:29 +05:30
Kovid Goyal
07f1a7ac03 ... 2026-05-09 22:33:00 +05:30
Kovid Goyal
7da113e4ab Modify the drag remote data protocol to accommodate macOS semantics
Implementation to follow
2026-05-09 13:15:11 +05:30
Kovid Goyal
a0da884c6a Add optional error descriptions to drop errors as well 2026-05-09 12:24:43 +05:30
Kovid Goyal
21d8b2bcc0 Add descriptions to error codes for drag sources 2026-05-09 09:58:38 +05:30
Kovid Goyal
10efa4be76 dnd kitten: fix remote -> local on Wayland
The compositor can request data for items before dropping
2026-05-09 08:33:42 +05:30
Kovid Goyal
0cddb39d95 More work on dnd kitten 2026-05-08 22:23:29 +05:30
Kovid Goyal
e4eb85216d Cleanup previous PR 2026-05-08 21:24:38 +05:30
Kovid Goyal
947139fd81 Merge branch 'copilot/fix-drag-finished-event' of https://github.com/kovidgoyal/kitty 2026-05-08 21:24:32 +05:30
Kovid Goyal
744fc12ca8 Cleanup previous PR
We cant rely on is_wayland() during parsing as that can occur in offline
contexts.
2026-05-08 21:07:51 +05:30
copilot-swe-agent[bot]
e99a6c686b Add DRAG_FINISH_TIMEOUT_SECONDS named constant for the 2-second timeout
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/5f783d91-e095-4f98-9d13-9d6359889ea2

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-08 15:29:11 +00:00
copilot-swe-agent[bot]
2b4c51707f Fix GLFW_DRAG_FINSHED never firing after GLFW_DRAG_DROPPED on macOS
Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/5f783d91-e095-4f98-9d13-9d6359889ea2

Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
2026-05-08 15:27:36 +00:00
Kovid Goyal
5c99f0735d Merge branch 'pr-os-window-position' of https://github.com/oxysoft/kitty 2026-05-08 20:55:47 +05:30
Kovid Goyal
46c83298e3 dnd kitten: get local -> finder working 2026-05-08 20:34:30 +05:30
Kovid Goyal
d2641d93c9 Bump go version 2026-05-08 19:16:27 +05:30
nuck
bb7df075cf Honor OS window positions in launch paths 2026-05-08 08:06:50 -04:00
Kovid Goyal
9e8bd7207b Track remote client on drag source items 2026-05-08 16:54:20 +05:30
Kovid Goyal
b85ec2b8c6 Update changelog 2026-05-07 10:17:17 +05:30
Kovid Goyal
e07177ecae Update changelog 2026-05-07 09:54:03 +05:30
Kovid Goyal
6146031183 ... 2026-05-07 09:44:14 +05:30
Kovid Goyal
5de8734ce3 choose-files kitten: Output a trailing newline when writing to a tty in text format
Fixes #9982
2026-05-07 08:53:09 +05:30
Kovid Goyal
fc8a41c93e Old compiler compat 2026-05-06 20:47:57 +05:30
Kovid Goyal
7db469d3c4 Merge branch 'copilot/fix-drag-thumbnail-background' of https://github.com/kovidgoyal/kitty 2026-05-06 20:44:39 +05:30