Python project for cleaning Synapse server media using API
Find a file
Hirad ac6ce2746c refactor: migrate UserMediaDialog to Model/View architecture with state persistence
- Replace QTableWidget with QTableView + custom MediaTableModel for better performance
- Extract user media components into modular submodules (_columns, _delegates, _header_view, _model, _table_state, _widgets)
- Implement CenteredCheckBoxDelegate for centered checkbox rendering in table cells
- Add CheckableHeaderView with 'select all' checkbox functionality
- Add TableStateManager for persisting/restoring column widths and visibility to JSON
- Create Pydantic models (ColumnState, TableState) for table state serialization
- Add Settings action to main window toolbar with flexible spacer
- Improve load-more pagination with sentinel row in model

The new architecture separates data management from presentation, enables lazy loading,
and provides a more maintainable codebase for future enhancements.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-02-26 14:49:03 +03:30
.idea feat: enhance documentation, refactor services, and update project configuration 2026-02-22 11:05:47 +03:30
src/synclean refactor: migrate UserMediaDialog to Model/View architecture with state persistence 2026-02-26 14:49:03 +03:30
.directory Add GUI components and refactor application structure 2026-02-14 14:09:14 +03:30
.gitignore Initial commit 2025-08-06 11:34:10 +03:30
.python-version feat: enhance documentation, refactor services, and update project configuration 2026-02-22 11:05:47 +03:30
LICENSE Initial commit 2025-08-06 11:34:10 +03:30
main.py Add GUI components and refactor application structure 2026-02-14 14:09:14 +03:30
pyproject.toml feat: enhance documentation, refactor services, and update project configuration 2026-02-22 11:05:47 +03:30
README.md Initial commit 2025-08-06 11:34:10 +03:30
uv.lock feat: enhance documentation, refactor services, and update project configuration 2026-02-22 11:05:47 +03:30

Synclean

Python project for cleaning Synapse server media using API