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
copilot-swe-agent[bot]
4706243380
Fix GLFW drop API to always present full original MIME type list to callbacks
...
Fixes #9633
2026-03-10 20:10:44 +05:30
mcrmck
59c963c481
Add draggable window title bars
...
Implements drag-to-reorder for window title bars, following up on the
merged window title bar feature (#9450 ) and the design discussion in #9619 .
- Drag a title bar and drop on another title bar to swap positions
- Drop on a window body quadrant (left/right/top/bottom) to insert as
a directional split; Splits layout uses insert_window_next_to(), other
layouts fall back to move_window_to_group()
- Drop on a tab bar tab to move the window into that tab
- Drop on another OS window to move into its active tab
- Drop outside kitty to detach into a new OS window
- Tab bar highlights the hovered tab during a window drag, mirroring
how the destination window title bar is highlighted
- toggle_window_title_bars action temporarily force-shows title bars
for drag-to-reorder when they are normally hidden, auto-hiding after
the drag completes
- window_title_bar_drag_threshold option (default 5px) controls how far
the mouse must move before a drag is initiated; 0 disables dragging
MIME type follows the same convention as tab dragging:
application/net.kovidgoyal.kitty-window-{PID}
Ref: #9619
2026-03-08 20:56:38 -04:00
Kovid Goyal
5c2b088895
Merge branch 'fix/split-view-fullscreen-crash' of https://github.com/AndrewP-GH/kitty
2026-03-01 10:59:41 +05:30
Kovid Goyal
04c35d85da
Merge branch 'fix-accessibility-window-management' of https://github.com/alexasa79/kitty
2026-03-01 10:26:20 +05:30
Sasha Sandler
2c89a7dedf
Allow accessibility selectors needed for external window management tools
...
Tools like Easy Move+Resize use the macOS Accessibility API to find and
move/resize windows. They call AXUIElementCopyElementAtPosition to get the
content view, then use kAXWindowAttribute to navigate to the parent window.
The isAccessibilitySelectorAllowed: whitelist was blocking these selectors,
preventing external window management tools (Easy Move+Resize) from working with
kitty.
Fixes #5561
2026-02-28 22:22:38 -05:00
Andrey Paramonov
21c2e585cf
Refactor fullscreen exit handling to ensure frame constraint suppression is lifted consistently after a delay
2026-02-28 20:21:59 +03:00
Andrey Paramonov
72de57b5e5
Enhance fullscreen transition handling on macOS by adding frame constraint suppression
2026-02-28 19:59:43 +03:00
Andrey Paramonov
6d33cea816
Fix fullscreen handling for macOS Split View to prevent crashes
2026-02-28 17:56:19 +03:00
Kovid Goyal
7500c58e1c
Fix #9569
2026-02-28 16:54:02 +05:30
zhaolei
31b4614c87
fix crash when macos_titlebar_color=background with transparent background
2026-02-24 18:06:53 +08:00
Kovid Goyal
5cc510dea4
Merge branch 'titlebar-only-wayland' of https://github.com/antoinecellerier/kitty
2026-02-23 19:19:30 +05:30
Kovid Goyal
1df89d9448
Cleanup previous PR
...
Fixes #9463
2026-02-23 07:44:58 +05:30
Kovid Goyal
1f5b11be0b
Merge branch 'fix-sleep-macos' of https://github.com/jorgemmsilva/kitty
2026-02-23 07:27:58 +05:30
Kovid Goyal
f0d11f7223
...
2026-02-22 16:48:59 +05:30
Kovid Goyal
9f2a4ad2dd
Wayland: Implement ridiculous workaround for broken dnd
...
Wayland is *the worst* window system I have ever had the
displeasure of trying to support.
2026-02-22 16:24:46 +05:30
Kovid Goyal
322a51da98
...
2026-02-22 15:44:28 +05:30
Kovid Goyal
b737eaad65
Cleanup previous PR
...
Use a single wl_surface for the drag icon. Whther it is attached to the
top level drag or not is determined based on availability.
2026-02-22 15:36:10 +05:30
copilot-swe-agent[bot]
accee908aa
Implement Wayland xdg-toplevel-drag protocol for make_toplevel in _glfwPlatformChangeDragImage
...
Fixes #9544
2026-02-22 14:53:34 +05:30
Kovid Goyal
ca43d57cdf
Fix enumeration of pasteboard items in the source
2026-02-22 13:32:55 +05:30
Kovid Goyal
531fb3e1b1
Change drag thumbnail when in detach/move modes
2026-02-22 13:09:56 +05:30
Kovid Goyal
449abb69bc
Cleanup previous PR
2026-02-22 11:13:57 +05:30
copilot-swe-agent[bot]
0c0c5a62f7
Implement changing drag image in the various backends
...
Fixes #9542
2026-02-22 09:26:14 +05:30
Kovid Goyal
6506ce1e91
API to change image for drag in progress
2026-02-22 09:10:26 +05:30
Kovid Goyal
8ad22e7859
On Wayland detach even on drag cancel
...
Wayland compositors contravene their own spec and make it impossible to
distinguish between drop-but-not-accept and drag-cancel cases.
https://gitlab.freedesktop.org/wayland/wayland/-/issues/140
2026-02-22 08:19:31 +05:30
Kovid Goyal
eb23c18821
Dont detach when user presses esc to cancel drag and there is no drop
2026-02-22 07:42:42 +05:30
Kovid Goyal
0f10380773
Cocoa backend: distinguish between cancelling drop by esc key/dragging to trash and dropping in unsupported place
2026-02-22 07:34:27 +05:30
copilot-swe-agent[bot]
56a9dd1bb7
Place drag icon below cursor on macOS
...
Fixes #9539
2026-02-21 22:06:49 +05:30
copilot-swe-agent[bot]
bcba8fc04c
Wayland: Add support for ext-background-effects
...
Fixes #9536
Fixes #9534
2026-02-21 20:56:40 +05:30
Kovid Goyal
dea3ad5eed
API for registering MIME types for drag enter
2026-02-21 17:25:25 +05:30
Kovid Goyal
57e7dc2cdc
Add some more common types
2026-02-21 17:25:03 +05:30
Kovid Goyal
7efba91ffc
Register UTI for tab drag mime on Cocoa
2026-02-21 16:59:58 +05:30
Kovid Goyal
aab60b7967
Fix mime <-> UTI roundtripping
2026-02-21 16:37:04 +05:30
Kovid Goyal
96c01b74d8
Detach tab via drag and drop now implemented
2026-02-21 15:15:33 +05:30
copilot-swe-agent[bot]
0dfb01e8c5
Implement X11 drag source backend for the new API
...
Fixes #9522
2026-02-18 16:55:52 +05:30
Kovid Goyal
3cd2aa6a2f
Add some docs for the drag source API
2026-02-18 16:05:27 +05:30
Kovid Goyal
a2b7a0cd6d
Port Cocoa drag source backend to new API
2026-02-18 11:20:17 +05:30
Jorge Silva
adc97bc117
fix blank screen on macOS resume from sleep
2026-02-17 17:56:14 +00:00
Kovid Goyal
e5eb63fcd0
Refactor drag source API to be async
...
Wayland implementation done. Other two backends remain.
2026-02-17 13:07:55 +05:30
Kovid Goyal
76a29273c8
Dont send non-finger based zero size scroll events on Wayland
2026-02-17 11:23:49 +05:30
Kovid Goyal
a99103d9a1
Drop events should use same co-ordinate system as mouse events
2026-02-13 10:08:25 +05:30
Kovid Goyal
34ffc6cdce
X11: port drop code to new API
2026-02-09 07:54:40 +05:30
Antoine Cellerier
ef4574ae97
Support hide_window_decorations titlebar-only on Wayland
...
Hide the CSD titlebar subsurface while keeping shadow borders for
resizing. On SSD compositors (GNOME), forces CSD mode to draw
kitty's own shadows without a titlebar.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-02-08 19:49:44 +01:00
Kovid Goyal
ff70e2e3ab
Dont hardcode mimetype to extension mappings
2026-02-08 22:05:15 +05:30
Kovid Goyal
08217c949d
Fix crash on self drop
2026-02-08 22:05:15 +05:30
Kovid Goyal
625e3b5d1c
Notes for X11 backend refactor
2026-02-08 22:05:14 +05:30
Kovid Goyal
a80d742449
Port cocoa backend drop code to the new API
2026-02-08 22:05:14 +05:30
Kovid Goyal
af4f3969b7
remove watch after all data is received on pipe
2026-02-08 22:05:14 +05:30
Kovid Goyal
5db41c7ba4
Remove remaining code for the old drop API
...
X11 and cocoa need to be ported to the new API
2026-02-08 22:05:14 +05:30
Kovid Goyal
f3cda7e828
Have mimes_count be always accurate
2026-02-08 22:05:14 +05:30