Skip to content

feat(inputbox): smooth scrolling (ex: search and dynamic playlist editing)#456

Merged
AnthonyMichaelTDM merged 18 commits intomainfrom
scroll-inputbox
Feb 5, 2026
Merged

feat(inputbox): smooth scrolling (ex: search and dynamic playlist editing)#456
AnthonyMichaelTDM merged 18 commits intomainfrom
scroll-inputbox

Conversation

@AnthonyMichaelTDM
Copy link
Owner

@AnthonyMichaelTDM AnthonyMichaelTDM commented Feb 5, 2026

This PR should make the UX for editing dynamic playlist queries much better for long queries

@codecov
Copy link

codecov bot commented Feb 5, 2026

Codecov Report

❌ Patch coverage is 93.63636% with 28 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
tui/src/ui/widgets/popups/playlist.rs 65.71% 12 Missing ⚠️
tui/src/ui/widgets/input_box.rs 94.07% 8 Missing ⚠️
tui/src/ui/widgets/popups/dynamic.rs 81.81% 4 Missing ⚠️
...ui/src/ui/components/content_view/views/generic.rs 91.66% 2 Missing ⚠️
tui/src/ui/components/content_view/views/search.rs 93.93% 2 Missing ⚠️
@@            Coverage Diff             @@
##             main     #456      +/-   ##
==========================================
+ Coverage   80.39%   80.54%   +0.14%     
==========================================
  Files         118      118              
  Lines       10070    10147      +77     
==========================================
+ Hits         8096     8173      +77     
  Misses       1974     1974              
Components Coverage Δ
MECOMP Core 83.94% <ø> (ø)
MECOMP Daemon 80.04% <ø> (-0.38%) ⬇️
MECOMP Storage 82.10% <ø> (+0.06%) ⬆️
SurrealQLX 72.31% <ø> (ø)
OneOrMany 95.97% <ø> (ø)
Analysis 84.58% <ø> (+0.33%) ⬆️
MECOMP CLI 72.94% <ø> (ø)
MECOMP TUI 79.44% <93.63%> (+0.53%) ⬆️
MECOMP MPRIS 85.33% <ø> (ø)
Files with missing lines Coverage Δ
tui/src/ui/app.rs 94.73% <100.00%> (ø)
tui/src/ui/components/content_view/mod.rs 89.76% <100.00%> (ø)
tui/src/ui/components/content_view/views/album.rs 100.00% <100.00%> (ø)
tui/src/ui/components/content_view/views/artist.rs 100.00% <100.00%> (ø)
...src/ui/components/content_view/views/collection.rs 100.00% <100.00%> (ø)
...ui/src/ui/components/content_view/views/dynamic.rs 98.29% <100.00%> (+0.62%) ⬆️
tui/src/ui/components/content_view/views/none.rs 94.11% <100.00%> (ø)
...i/src/ui/components/content_view/views/playlist.rs 92.62% <100.00%> (-0.06%) ⬇️
tui/src/ui/components/content_view/views/radio.rs 100.00% <100.00%> (ø)
tui/src/ui/components/content_view/views/random.rs 98.57% <100.00%> (ø)
... and 12 more

... and 4 files with indirect coverage changes

this will enable us to remove mutex's and refcells around component state
- Removed unnecessary use of Mutex and RefCell for tree states and input boxes in various components.
- Updated the handling of key events and mouse events to directly interact with the state without locking.
- Simplified the initialization of input boxes and tree states by removing RefCell and Mutex wrappers.
- Improved readability and performance by reducing the complexity of state access patterns.
@AnthonyMichaelTDM AnthonyMichaelTDM changed the title feat: inputbox scrolling feat(inputbox): smooth scrolling (ex: search and dynamic playlist editing) Feb 5, 2026
@AnthonyMichaelTDM AnthonyMichaelTDM marked this pull request as ready for review February 5, 2026 06:36
@AnthonyMichaelTDM AnthonyMichaelTDM merged commit 4f1604a into main Feb 5, 2026
13 checks passed
@AnthonyMichaelTDM AnthonyMichaelTDM deleted the scroll-inputbox branch February 5, 2026 17:09
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.

1 participant