Tim Culverhouse
11c2ae1007
gtk: use GtkDrawingArea to dim unfocused split
...
Refactor the GTK unfocused split code to use a GtkDrawingArea widget to
dim the unfocused split. The GtkDrawingArea is added to the overlay and
a CSS style is used to give it a background color and opacity. This
aligns with the macOS design of drawing on top of the surface. In GTK,
we don't need to actually draw a rectangle because we can apply CSS
directly to the widget.
2024-07-11 08:28:47 -05:00
Tim Culverhouse
f04fe01ac6
gtk: improve readability of runtime css fmt
2024-07-10 14:17:58 -05:00
Tim Culverhouse
d1d3de758c
gtk: prevent CSS collision on notebook stack
...
Add a class to the GtkNotebook which holds our tabs so we can more
precisely set the background color of just this `stack`. A collision was
occurring with the menu widgets, which are also a `stack`.
2024-07-10 13:56:03 -05:00
Tim Culverhouse
6c40cd963d
gtk: implement unfocused-split opacity and fill
...
For a long time, us GTK users have been subject to lesser UX by not
knowing which split was focused. Improve the GTK UX by implementing both
unfocused-split-opacity and unfocused-split-fill. This is implemented by
setting the background-color of the notebook stack, and conditionally
applying a new css class "unfocused-split" to the unfocused split.
2024-07-10 12:56:09 -05:00
Gregory Anders
c9c7b3803e
macos: add split menu items to context menu
2024-07-10 08:47:04 -05:00
Mitchell Hashimoto
b1677b8900
Merge pull request #1932 from ghostty-org/urllen
...
macOS: URL preview limited to one line, truncate
2024-07-09 09:34:18 -07:00
Mitchell Hashimoto
53fbed492b
apprt/gtk: ellipsize URLs in middle to show end
2024-07-09 09:26:07 -07:00
Mitchell Hashimoto
eaa7a3f69c
macos: left hover needs to be higher Z so it takes mouse priority
2024-07-09 09:18:32 -07:00
Mitchell Hashimoto
4d3797c15e
macos: limit URL preview to a single line, ellipses in middle
2024-07-09 09:15:45 -07:00
Mitchell Hashimoto
205bbc35f0
Merge pull request #1929 from qwerasd205/reflow-fix
...
Reflow rework, various fixes
2024-07-09 09:08:45 -07:00
Mitchell Hashimoto
54034468b7
terminal: remove errdefer deleted call for refcountedset
2024-07-09 09:07:28 -07:00
Mitchell Hashimoto
0acdea646b
Merge pull request #1923 from antonk52/docs/window-decoration
...
docs: warn about `window-decoration` disables tabs functionality
2024-07-09 08:34:34 -07:00
Mitchell Hashimoto
4d1d5f282a
Merge pull request #1931 from jparise/shell-features-true-false
...
config: document true/false for shell-integration-features
2024-07-09 07:59:04 -07:00
Jon Parise
91b56e2494
config: document true/false for shell-integration-features
2024-07-09 10:52:20 -04:00
Mitchell Hashimoto
68599244fe
Merge pull request #1930 from jparise/packed-struct-true-false
...
cli: boolean value support for packed structs
2024-07-09 07:11:43 -07:00
Jon Parise
9de940cbbf
cli: boolean value support for packed structs
...
Allow standalone boolean values like "true" and "false" to turn on or
off all of the struct's fields.
2024-07-09 09:08:27 -04:00
Anton Kastritskii
d97910a4e8
docs: fix typo
2024-07-09 10:51:51 +01:00
Qwerasd
8589f2c0fb
terminal/PageList: rework reflow logic to fix issues
...
Reflow logic now lives inside of ReflowCursor. This fixes multiple
issues with the previous implementation, and is more straightforward
in how it works. The old impl resulted in fragmentation of pages,
leading to unbounded memory growth when resizing repeatedly.
Also improves the preserved_cursor logic in `resizeCols`.
2024-07-08 22:35:15 -04:00
Qwerasd
10dbca9464
terminal/PageList: fix some incorrect test expectations
2024-07-08 22:29:55 -04:00
Qwerasd
be99e50c50
terminal/PageList: add method for logging debug diagrams
2024-07-08 22:28:16 -04:00
Qwerasd
6f1a2d1e8e
terminal/Screen: fix trailing blank cell handling for wrapped rows in dumpString
2024-07-08 22:26:36 -04:00
Qwerasd
730185b212
terminal: spacer heads and tails should be codepoint 0, not ' '
2024-07-08 22:25:39 -04:00
Qwerasd
0cee115ba3
terminal/page: use addWithIdContext when cloning hyperlink data
2024-07-08 22:22:18 -04:00
Qwerasd
29e6dcdee5
terminal/page: add methods to get hyperlink and grapheme map capacities
2024-07-08 22:20:31 -04:00
Qwerasd
11c8bdc00e
BitmapAllocator: slightly improve findFreeChunks mask calculation
2024-07-08 22:17:56 -04:00
Qwerasd
94f50be0fe
Disable mouse scroll logging since it floods logs when trackpad scrolling
2024-07-08 22:16:13 -04:00
Qwerasd
a9aef11b4b
RefCountedSet: add some missing context delete callbacks
2024-07-08 22:15:31 -04:00
Mitchell Hashimoto
31d5384920
macOS select output is cmd+tripleclick not control anymore
...
Fixes #1920
Ctrl interferes with context menus.
2024-07-07 14:01:20 -07:00
Mitchell Hashimoto
2ecb8e4c94
Merge pull request #1928 from ghostty-org/osc8
...
OSC8 Hyperlink Support
2024-07-07 13:58:45 -07:00
Mitchell Hashimoto
a32007bfeb
core: when mouse reporting, clear link state
2024-07-07 12:26:40 -07:00
Mitchell Hashimoto
f1561a4cae
apprt/gtk: committed the forever status bar again
2024-07-07 12:25:08 -07:00
Mitchell Hashimoto
b7699b9af9
apprt/gtk: add all event handlers to the overlay so both receive
2024-07-07 12:17:40 -07:00
Mitchell Hashimoto
9085f86c5c
Merge pull request #1927 from OkanEsen/main
...
document unfocused split option only working on macOS
2024-07-07 09:52:14 -07:00
Mitchell Hashimoto
45d0653f46
apprt/gtk: add deinit for url widget
2024-07-07 09:48:39 -07:00
Mitchell Hashimoto
10a3214cb4
apprt/gtk: forgot to remove debug code to hide overlay
2024-07-07 09:39:41 -07:00
Mitchell Hashimoto
f9e5d9c10b
apprt/gtk: move url hover bar when its under the mouse
2024-07-07 09:37:43 -07:00
Mitchell Hashimoto
c9accc52e2
core: show URL even for non-OSC8 hyperlnks
2024-07-06 21:36:28 -07:00
Mitchell Hashimoto
571182fb60
macos: move OSC8 URL view to right if mouse is over it
2024-07-06 21:33:42 -07:00
Mitchell Hashimoto
ecdb0a74b0
apprt/gtk: style the overlay
2024-07-06 15:09:59 -07:00
Mitchell Hashimoto
8858c2ba4e
apprt/gtk: convert surface to overlay so we can support the url overlay
2024-07-06 15:01:18 -07:00
Okan Esen
9eacf6c27d
document unfocused split option only working on macOS
2024-07-06 22:48:53 +02:00
Mitchell Hashimoto
9344676960
macos: fix iOS build
2024-07-06 10:45:57 -07:00
Mitchell Hashimoto
36648ae397
apprt: stubs for mouseOverLink
2024-07-06 10:29:23 -07:00
Mitchell Hashimoto
8ecc84b943
core: helper to get osc8 URI
2024-07-06 10:27:21 -07:00
Mitchell Hashimoto
cb790b8e39
macos: show URL on OSC8 hover
2024-07-06 10:25:12 -07:00
Mitchell Hashimoto
d5a23e78fe
macos: some disabled swiftui code that makes link tooltips show
2024-07-06 10:01:35 -07:00
Mitchell Hashimoto
4a861a8c8f
terminal: hyperlink capacity adjustment needs to call safe variant
2024-07-06 08:47:22 -07:00
Anton Kastritskii
3f85ad6892
docs: specify that window-decoration disables tabs on macos only
2024-07-06 13:42:24 +01:00
Mitchell Hashimoto
d79bbaac68
terminal: adjustCapacity handles hyperlink state
2024-07-05 21:44:30 -07:00
Mitchell Hashimoto
251ec0c9f3
terminal: on print, adjust page size if we need to grow for hyperlinks
2024-07-05 21:40:40 -07:00