Skip to content

Virtual scrolling for large file lists #256

@nitrobass24

Description

@nitrobass24

Summary

Implement virtual scrolling (windowed rendering) for the file list to maintain performance with large numbers of files.

Motivation

Users with many files on their seedbox may see hundreds or thousands of entries. Rendering all of them as DOM elements causes performance degradation. Virtual scrolling only renders the visible rows plus a small buffer.

Implementation

  • Use Angular CDK `ScrollingModule` (`cdk-virtual-scroll-viewport`)
  • Apply to the file list in `file-list.component.html`
  • Maintain existing selection, filtering, and sorting behavior
  • Ensure SSE updates still reflect correctly in the virtual list

Acceptance Criteria

  • File list uses virtual scrolling
  • Smooth scrolling with no visual jumps
  • Selection, filtering, and bulk actions work correctly
  • Performance stays smooth with 1000+ files
  • Tests updated

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions