0

I'm trying to build a scrollable horizontal list (HStack) of scrollable vertical lists (VStack).

Issue:

The issue is that when scrolling horizontally on one of the vertical stacks, the phase ended event is not called on the parent. The parent scrolls horizontally and it stays there until I move the mouse cursor outside the parent frame.

This only happens on macos 13 (Ventura).

Does anyone know if anything changed recently that could cause this?

struct ContentView: View {
    var body: some View {
        ScrollView(.horizontal) {
            HStack {
                ScrollView(.vertical) {
                    VStack {
                        Rectangle().padding().frame(width: 150, height: 150)
                    }
                }
                .frame(height:300)
                
                ScrollView(.vertical) {
                    VStack {
                        Rectangle().padding().frame(width: 150, height: 150)
                    }
                }
                .frame(height:300)
            }
            .frame(width: 400, height: 300)
            .border(.red)
            .backgroundStyle(Color.gray)
        }
        .border(.green)
    }
}

enter image description here

0 Answers0