zenangst / KeyboardCowboy

:keyboard: The missing keyboard shortcut utility for macOS
Other
798 stars 14 forks source link

Rewrite how the UI performs updates #570

Closed zenangst closed 2 weeks ago

zenangst commented 2 weeks ago

The way we handled updates from SwiftUI to logic was through closures. However, the view hierarchy made this incredibly challenging to work with. To address this, we now perform updates via a ConfigurationUpdater that is passed down as an environment object. Internally, this component can perform targeted updates to the current configuration, such as updating a workflow, a group, a trigger, or any other relevant component. Additionally, it debounces updates to the storage to prevent excessive disk writes.

Furthermore, the implementation includes significant renaming and organization of the UI components into different folders. Moreover, it employs more precise naming conventions to enhance clarity and maintainability.

Commit summary