Kovid Goyal
0b8782d0fe
Avoid multiple redundant relayouts when instantiating a SessionTab
2025-08-11 11:40:49 +05:30
Kovid Goyal
b71edfc1a6
...
2025-08-11 11:31:19 +05:30
Kovid Goyal
261ac9d8e8
Make debug config a bit more robust
2025-08-11 11:28:30 +05:30
Kovid Goyal
96c9c557c6
Dont include gl.h in glfw.c
2025-08-11 10:55:29 +05:30
Kovid Goyal
bfa51daa0a
Merge branch 'dependabot/go_modules/all-go-deps-4f63f750fb' of https://github.com/kovidgoyal/kitty
2025-08-11 10:24:43 +05:30
dependabot[bot]
e62362628d
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 ), [golang.org/x/image](https://github.com/golang/image ), [golang.org/x/sys](https://github.com/golang/sys ) and [golang.org/x/text](https://github.com/golang/text ).
Updates `github.com/alecthomas/chroma/v2` from 2.19.0 to 2.20.0
- [Release notes](https://github.com/alecthomas/chroma/releases )
- [Changelog](https://github.com/alecthomas/chroma/blob/master/.goreleaser.yml )
- [Commits](https://github.com/alecthomas/chroma/compare/v2.19.0...v2.20.0 )
Updates `golang.org/x/image` from 0.29.0 to 0.30.0
- [Commits](https://github.com/golang/image/compare/v0.29.0...v0.30.0 )
Updates `golang.org/x/sys` from 0.34.0 to 0.35.0
- [Commits](https://github.com/golang/sys/compare/v0.34.0...v0.35.0 )
Updates `golang.org/x/text` from 0.27.0 to 0.28.0
- [Release notes](https://github.com/golang/text/releases )
- [Commits](https://github.com/golang/text/compare/v0.27.0...v0.28.0 )
---
updated-dependencies:
- dependency-name: github.com/alecthomas/chroma/v2
dependency-version: 2.20.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all-go-deps
- dependency-name: golang.org/x/image
dependency-version: 0.30.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.35.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all-go-deps
- dependency-name: golang.org/x/text
dependency-version: 0.28.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: all-go-deps
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-11 04:49:31 +00:00
Kovid Goyal
9f51779750
More robust detection of support for GL_FRAMEBUFFER_SRGB
...
When not supported fallback to layer based rendering
2025-08-11 09:13:49 +05:30
Kovid Goyal
dea16c2ef7
...
2025-08-11 01:16:58 +05:30
Kovid Goyal
1073e59598
Move cursor trail draw call into shaders.c
2025-08-11 00:54:08 +05:30
Kovid Goyal
d52f2e7981
Rewrite rendering pipeline
...
This was needed to fix various corner cases when doing blending of colors
in linear space. The new architecture has the same performance as the
old in the common case of opaque rendering with no UI layers or images.
In the case of only positive z-index images there is a performance
decrease as the OS Window is now rendered to a offscreen texture and
then blitted to screen. However, in the future when we move to Vulkan or
I can figure out how to get Wayland to accept buffers with colors in
linear space, this performance penalty can be removed. The performance
penalty was not significant on my system but this is highly GPU
dependent. Modern GPUs are supposedly optimised for rendering to
offscreen buffers, so we will see. The awrit project might be a good
test case.
Now either we have 1-shot rendering for the case of opaque with only ext
or all the various pieces are rendered in successive draw calls into an
offscreen buffer that is blitted to the output buffer after all drawing
is done.
Fixes #8869
2025-08-11 00:47:02 +05:30
Kovid Goyal
0afa0c4e50
Make set of excluded env vars for clone re-useable
2025-08-08 09:06:51 +05:30
Kovid Goyal
c86ec79e32
macOS: Add default mapping and global menubar action to erase last command
...
This is "Cmd+L" from Terminal.app
2025-08-07 09:15:12 +05:30
Kovid Goyal
b0439d4183
Function to erase the last command and its output
2025-08-07 08:45:45 +05:30
Kovid Goyal
97f1d7f436
Implement session command to set layout state
2025-08-06 20:43:12 +05:30
Kovid Goyal
bc8fc6642c
Cross link scrollback fill enlarged window option in zoom action docs
2025-08-06 09:58:28 +05:30
Kovid Goyal
02301e80ef
...
2025-08-06 09:47:07 +05:30
Kovid Goyal
c0c3a48b4a
Cleanup previous PR
2025-08-04 20:31:31 +05:30
Kovid Goyal
b84849a0ab
Merge branch 'kitten-desktop-ui-portal-xdg-compat' of https://github.com/azertyfun/kitty
2025-08-04 20:24:46 +05:30
Nathan Monfils
dd7fa6b25a
kitten desktop-ui: Do not create an empty *-portals.conf file
...
In the case where a portals.conf file does not exist in the user
configuration, there is nothing to patch; we should default to defining
the relevant portals for kitty.
2025-08-04 16:44:08 +02:00
Nathan Monfils
ff1c8ab917
kitten desktop-ui portal.go: Compat with XDG spec
...
1. Make sure we coalesce XDG_DATA_HOME as per the spec
On my machine /etc/profile.d/flatpak.sh sets
XDG_DATA_DIRS=$HOME/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
but XDG_DATA_HOME is unset.
2. Update directory creation logic to find-or-create
`enable_portal`'s current behavior is to first find a writable directory and
write the portal definition to it, then fall back to creating a directory
in the first available configuration directory.
This is incorrect in the case where one of the locations in
XDG_DATA_DIRS already has a directory, we should still prioritize
XDG_DATA_HOME.
2025-08-04 16:41:58 +02:00
Kovid Goyal
b95b4164fc
Add a couple of password manager kitty integrations
2025-08-04 19:05:44 +05:30
Kovid Goyal
bdf3b9300e
Make creation of window_id_map generic
2025-08-04 16:28:06 +05:30
Kovid Goyal
16e659c477
DRYer
2025-08-04 16:16:55 +05:30
Kovid Goyal
1665b06d59
Implement set_layout_state for a few remaining layouts
2025-08-04 16:02:19 +05:30
Kovid Goyal
e6f35571a5
Implement full serialization/unserialization for layouts
...
Need to go over all the non-split layouts and see if they need
any TLC
2025-08-04 15:51:46 +05:30
Kovid Goyal
6d2b17d877
opts serialization is done by base class
2025-08-02 12:49:06 +05:30
Kovid Goyal
bbbeeb8206
More rigorous set layout state sanity check
2025-08-02 12:48:04 +05:30
Kovid Goyal
c4ed1d3b69
Implement unserialization for splits layout
...
Also cleanup the serialization code.
2025-08-02 12:12:40 +05:30
Kovid Goyal
f64182e16c
Scroll indicator should usepremult blending whenever draw_cells_simple uses it
2025-07-31 21:24:17 +05:30
Kovid Goyal
8b9d802206
Specify the color space on Wayland surfaces
...
Uses sRGB with the sRGB transfer function. Seems to give identical
results as not specifying a color space. But sadly does not get the
compositor to blend in linear space, we need another wayland protocol
extension for that I suppose. Sigh.
2025-07-31 19:18:09 +05:30
Kovid Goyal
2ffa8cd7c2
Apparently gamma22 gives incorrect colors or at least colors different from rendering without color management. srgb transfer function gives expected colors.
2025-07-31 19:07:28 +05:30
Kovid Goyal
caa654b6b8
Also track needed color manager features
2025-07-31 18:53:24 +05:30
Kovid Goyal
12c6d799b7
...
2025-07-31 18:34:29 +05:30
Kovid Goyal
d37bd7afcf
Create the sRGB colorspace description we need
2025-07-31 18:30:47 +05:30
Kovid Goyal
df22e8c9b7
Only report missing features when color manager itself is supported
2025-07-31 15:41:17 +05:30
Kovid Goyal
fe860d170f
Track that the compositor supports the sRGB primary
2025-07-31 15:39:55 +05:30
Kovid Goyal
46114c251b
Create the color manager object for a window surface
2025-07-31 15:24:21 +05:30
Kovid Goyal
77106b1035
DRYer
2025-07-31 15:15:49 +05:30
Kovid Goyal
8762576a5b
Also track support for extlinear transfer function
2025-07-31 15:12:26 +05:30
Kovid Goyal
d0a862bedb
Get the color manager capabilities from the compositor
2025-07-31 15:09:18 +05:30
Kovid Goyal
f04e963683
Bind the wayland color manager interface
2025-07-31 14:37:42 +05:30
Kovid Goyal
0382463bcb
Grab keyboard when running file chooser kitten via portal
2025-07-30 07:52:19 +05:30
Kovid Goyal
8c8d7d6ce3
Fix continuous retry on macOS when reading and writing to a peer that has closed its end of the socket
...
Apparently, macOS sends POLLHUP for POLLOUT as well. Fixes #8865
2025-07-29 19:33:12 +05:30
Kovid Goyal
f41091366e
...
2025-07-29 19:06:26 +05:30
Kovid Goyal
e468885b03
spelling
2025-07-29 10:04:21 +05:30
Kovid Goyal
a0b73b4c19
Merge branch 'dependabot/go_modules/all-go-deps-beec343394' of https://github.com/kovidgoyal/kitty
2025-07-28 09:35:16 +05:30
dependabot[bot]
1cc9f97138
Bump github.com/bmatcuk/doublestar/v4 in the all-go-deps group
...
Bumps the all-go-deps group with 1 update: [github.com/bmatcuk/doublestar/v4](https://github.com/bmatcuk/doublestar ).
Updates `github.com/bmatcuk/doublestar/v4` from 4.9.0 to 4.9.1
- [Release notes](https://github.com/bmatcuk/doublestar/releases )
- [Commits](https://github.com/bmatcuk/doublestar/compare/v4.9.0...v4.9.1 )
---
updated-dependencies:
- dependency-name: github.com/bmatcuk/doublestar/v4
dependency-version: 4.9.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: all-go-deps
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-07-28 04:02:16 +00:00
Kovid Goyal
9229af98b8
...
2025-07-27 11:34:24 +05:30
Kovid Goyal
83bc0423b2
Micro optimisation
...
Dont lookup char props for ascii char at start of draw command.
Improves benchmark by 2-5%
2025-07-26 09:34:13 +05:30
Kovid Goyal
53aea0642f
...
2025-07-26 09:28:34 +05:30