Skip to content

Conversation

@ignatovv
Copy link
Member

Summary

  • Migrated object settings menu ViewModels from Combine to Swift's Observation framework
  • Replaced @Published properties with manual observation using withObservationTracking
  • Updated views to use @State instead of @StateObject
  • Added @ObservationIgnored to injected dependencies and non-observed properties

This completes the migration to modern Swift concurrency patterns for the object settings menu system.

Replaced Combine publishers with withObservationTracking for manual observation of nested @observable objects. Changes include:
- Removed Combine dependency and cancellables
- Updated @StateObject to @State in views
- Converted @published properties to regular properties
- Added @ObservationIgnored to injected dependencies and non-observed properties
- Implemented manual observation pattern using withObservationTracking for settings and actions
@ignatovv ignatovv requested a review from a team as a code owner October 30, 2025 13:49
@claude
Copy link
Contributor

claude bot commented Oct 30, 2025

Best Practices

ObjectActionsViewModel.swift:2 - Unused import: Combine is no longer needed after migrating to Observation framework. Remove this import.

ObjectSettingsViewModel.swift:2 - Unused import: Combine is no longer needed after migrating to Observation framework. Remove this import.


⚠️ Minor Issues - Remove unused Combine imports

@ignatovv ignatovv force-pushed the ios-5255-update-object-settings-menu-converted-to-project-2 branch from c1a4d4a to c0a4308 Compare October 30, 2025 14:04
@ignatovv ignatovv merged commit e6bd718 into develop Oct 31, 2025
8 checks passed
@ignatovv ignatovv deleted the ios-5255-update-object-settings-menu-converted-to-project-2 branch October 31, 2025 10:32
@github-actions github-actions bot locked and limited conversation to collaborators Oct 31, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants