Daniel Wennberg
3142c5aa60
macOS: Don't clip surfaceView to contentView
...
Fixes #9248
2025-11-08 09:34:02 -08:00
Daniel Wennberg
afc64f6285
Refactor scrollview to preserve state across split tree changes
2025-11-04 00:02:21 -08:00
Daniel Wennberg
d678e2e305
Use notifications to deal with NSScrollPocket
2025-11-04 00:02:21 -08:00
Daniel Wennberg
951374cd1c
Fix documentView padding calculations
2025-10-31 00:39:03 -07:00
Daniel Wennberg
88444d4bd7
macOS: Adjust documentView padding on layout changes
2025-10-27 10:43:47 -07:00
Daniel Wennberg
e2fe0cf53a
macOS: remove scroll edge styling with hidden titlebar ( #9317 )
...
With `macos-titlebar-style = hidden`, creating splits or cycling
fullscreen sometimes produces a transparent overlay in the titlebar
area, clipping the top of the surfaces:
<img width="504" height="272" alt="Screenshot 2025-10-22 at 21 27 28"
src="https://github.com/user-attachments/assets/e28c5226-2e47-4c1d-8c14-b286fdb261f3 "
/>
This is actually SwiftUI styling for scroll views, and the fact that it
pops up even though the titlebar is hidden is possibly a SwiftUI bug; at
least it's causing frustration for others too, see
https://developer.apple.com/forums/thread/798392 and
https://stackoverflow.com/questions/79776037/strange-nsscrollpocket-height-on-my-nstableview-in-fullscreen-mode-on-macos-taho .
I tried setting `.scrollEdgeEffectHidden()` on various nodes in the
SwiftUI hierarchy, but couldn't get it to work, so I ended up resorting
to an old-fashioned game of imperative whack-a-mole. Now:
<img width="504" height="272" alt="Screenshot 2025-10-22 at 21 28 47"
src="https://github.com/user-attachments/assets/e4499f16-5bd0-43cd-a7de-37fbc56eb1c4 "
/>
AI disclosure (my first!): I consulted copilot trying to figure out of
the whole SwiftUI/AppKit situation and whether there might be a
declarative solution on the SwiftUI side. Just chatting in general terms
without showing real-world code. No dice.
2025-10-23 08:33:39 -07:00
Mitchell Hashimoto
5b7f145640
macos: make terminal smaller to account for legacy scrollbar
...
When the preferred scrollbar style is "legacy", the scrollbar takes up
space that offsets the actual terminal. To prevent reflow, we detect
this before the scrollbar becomes visible and shrink our terminal width
to prepare for it.
This doesn't account for the style changing at runtime, yet.
2025-10-17 20:08:03 -07:00
Daniel Wennberg
51b2374616
Add window padding to scrollView document height
2025-10-17 00:14:21 -07:00
Daniel Wennberg
ffead466c7
Remove hidden titlebar safe area for SurfaceScrollView
2025-10-17 00:06:00 -07:00
Lars
cc91e2ad16
macOS: remove background from SurfaceScrollView
2025-10-16 23:52:07 +02:00
Mitchell Hashimoto
4b34b2389a
config: add `scrollbar` config to control when scrollbars appear
2025-10-16 14:06:48 -07:00
Mitchell Hashimoto
7207ff08d5
macos: SurfaceScrollView
2025-10-16 14:06:46 -07:00