How to prevent Menu view from redrawing?

I have a complex project that includes a background process sending requests to the backend for updates. It sends requests once per second.

So, I have the MyView where the PresetPicker is located. When I open the PresetPicker and try to scroll down, it keeps pushing me back up every second. PresetPicker redraws itself every second due to some changes from the background process. (Turning off the background process confirmed that everything works fine.)

I wrapped my PresetPicker in EquatableView, added a bunch of logs triggered by changes/redraws of the PresetPicker, but the logs are empty and EquatableView didn't help.

I tried setting breakpoints; they trigger when the PresetPicker first appears but don't trigger afterward. How can I fix/debug this?

Here is some code:

struct PresetPicker: View, Equatable {
    
var body: some View {
Menu {
            Text("1")
            Text("2")
            Text("3")
            Text("4")
        } label: {
            Text("menu")
        }
    }
}
struct MyView: View {
var body: some View {
    EquatableView(content:
        PresetPicker()
    )
}
}

What does the backend modifies ? Does it modify PresetPicker ?

How to prevent Menu view from redrawing?
 
 
Q