made settings sections with a whole lot of unnecessary abstractions for the funny 
[FromKeyedServices] when i could just access a static instance? absolutely yes!!
i couldn’t figure out how to style the children of an ItemsControl externally, so i had to give it an ItemTemplate with a class (which would be unnecessary if i could style the thing)
all that for a separator line… and padding… and margin… what if i just nuke this idea and simply have some spacing between the sections?
i tried organizing classes into vertical slices architecture, but i gave up and only did it for the Linux project instead
the using updates would’ve been funky + some global usings would become useless
PipeWire
the toggle list now no longer “flickers” on/off when refreshing devices, as i only set the link manager after PipeWire objects have been queried
device lists and link toggles are now disabled when switching devices so the user doesn’t accidentally break the linking process
added a button that refreshes links (in case things go wrong somehow)
you can now select the physical microphone from the PipeWire list, and it will update links
this preference isn’t saved to disk just yet
in my last devlog i mentioned some issues, which have now been fixed:
upon startup, the first two switches don’t work sometimes (race condition maybe?)
turns out that i had forgotten to add a potentially valid node to the list after looping through all lines, so it just discarded the last entry
certain links might not reconnect properly when switching the output device
what did i do to fix that? i’m not sure anymore
maybe it was a bit of delay?
this one might be linked related to the former issue