Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion Sources/ContentView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -9811,6 +9811,8 @@ struct VerticalTabsSidebar: View {
}
.background(
SidebarScrollViewResolver { scrollView in
scrollView?.scrollerStyle = .overlay
scrollView?.autohidesScrollers = true
dragAutoScrollController.attach(scrollView: scrollView)
}
.frame(width: 0, height: 0)
Expand Down Expand Up @@ -12189,7 +12191,7 @@ private struct SidebarEmptyArea: View {
var body: some View {
Color.clear
.contentShape(Rectangle())
.frame(maxWidth: .infinity, maxHeight: .infinity)
.frame(maxWidth: .infinity)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 SidebarEmptyArea change is a no-op — maxHeight: .infinity still applied at call site

Removing maxHeight: .infinity from inside SidebarEmptyArea.body has no effect because the call site in workspaceScrollContent (line 9882) immediately re-applies .frame(maxWidth: .infinity, maxHeight: .infinity) to the same view:

SidebarEmptyArea(...)
    .frame(maxWidth: .infinity, maxHeight: .infinity)  // line 9882 — still present

The outer frame modifier wraps the view, so the SidebarEmptyArea still requests unlimited height inside the ScrollView. If the goal is to remove artificial height inflation that causes unneeded scroll overflow, the maxHeight: .infinity at the call site also needs to be removed. The actual scrollbar visual fix (.overlay + autohidesScrollers) addresses the symptom, but the underlying content sizing issue described in the PR remains.

.onTapGesture(count: 2) {
Comment on lines 12192 to 12195

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Keep SidebarEmptyArea hit target expanded vertically

Removing maxHeight: .infinity from SidebarEmptyArea shrinks the view that owns .onTapGesture/.onDrop, so the interactive empty-sidebar region can collapse to minimal height when there are few workspaces. In that state, double-click-to-create-workspace and drop-to-end only work on a thin strip instead of the whole empty area, because the outer frame applied at the call site does not restore this view’s internal hit-test region.

Useful? React with 👍 / 👎.

tabManager.addWorkspace(placementOverride: .end)
if let selectedId = tabManager.selectedTabId {
Expand Down
Loading