Skip to content

refactor(collections): move collection types from HandyControl.Controls to HandyControl.Collections (closes #241) - #251

Merged
ghost1372 merged 1 commit into
ghost1372:developfrom
omid-io:refactor/move-collection-namespace
Sep 6, 2026
Merged

ghost1372 merged 1 commit into
ghost1372:developfrom
omid-io:refactor/move-collection-namespace

Conversation

@omid-io

@omid-io omid-io commented Sep 6, 2026

Copy link
Copy Markdown
Contributor

Description

This PR resolves #241 by moving collection types (OptimizedObservableCollection, ThreadSafeObservableCollection, UndoRedoList, and UndoRedoObservableCollection) out of the HandyControl.Controls namespace into HandyControl.Collections.

Motivation

Previously, collection classes located in src/Shared/HandyControl_Shared/HandyControls/Tools/Collection/ were placed under namespace HandyControl.Controls;. Importing HandyControl.Controls in ViewModels polluted the VM scope and degraded MVVM separation. The codebase already utilizes HandyControl.Collections (e.g. ManualObservableCollection<T>), making it the natural home for these collection structures.

Changes

  • Updated namespace from HandyControl.Controls to HandyControl.Collections in:
    • OptimizedObservableCollection.cs
    • ThreadSafeObservableCollection.cs
    • UndoRedoList.cs
    • UndoRedoObservableCollection.cs
  • Updated DispatchedObservableCollection.cs import from using HandyControl.Controls; to using HandyControl.Collections;
  • Preserved UTF-8 BOM encoding across all modified source files.

Closes #241.

@ghost1372
ghost1372 merged commit c10a050 into ghost1372:develop Sep 6, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Move OptimizedObservableCollection from the HandyControl.Controls namespace to another

2 participants