(feat) Computer feature: use library data model if selected path is watched by library#14687
(feat) Computer feature: use library data model if selected path is watched by library#14687ronso0 wants to merge 7 commits into
Conversation
23c3637 to
8ed8b49
Compare
|
Hehe, I tested this in a session with my personal branch (ie. on top of Sidebar Bookmakrs PR #14508) and it all works as expected! |
a713a5f to
791812d
Compare
bfb133e to
5cb3eae
Compare
|
Cool, I merged this and #14508 Sidebar Bookmarks into my performace branch, and it works nicely! |
5cb3eae to
d0e02e6
Compare
d0e02e6 to
c711781
Compare
|
Hmm, weird. I'll check, maybe I messed up something during the rebase. |
c711781 to
f28c584
Compare
Looks like I screwed that up with a fixup.. |
|
Yes, that's it. that is supposed to add dirty tracks is pointless / counter-productive. I'll file a separate issue if I don't find a quick fix myself. edit fixed by #15597 in 2.5 |
d80e5be to
d26c648
Compare
d26c648 to
ccc18cf
Compare
ccc18cf to
cba285b
Compare
FWIW hidden tracks are not filtered. |
cb7ecfe to
3f04c6c
Compare
3f04c6c to
a78931f
Compare
a78931f to
76828f8
Compare
|
This is a 2.7 candidate. |
|
Great 🎉 This is a massive change set, so I understand that's it's been sitting so long. Let me know if you wanna start reviewing before I'm done. |
76828f8 to
0435cd6
Compare
library directory view currently uses recursive mode
…library directories change
0435cd6 to
a1d4161
Compare


Fixes #14683
Related: #11026 #9897
TL:DR
If the selected path is watched by library, we show it like the other track views (Tracks, Crates, ..).

This gives us the same the view (colums) and editing capabilities.
Watched paths are currently marked with an
orangecyan dot:This is really handy if you want to browse your library by path!
Supposed to enhance the Sidebar Bookmarks use case #14508.
Details
If the path is watched, we use an alternative model (derived from
LibraryTableModel, uses track data).Luckily, LibraryTableModel already allows to use an extra search filter (not visible in the searchbox) which allows to filter tracks by directory. (such a filter is also used in Analyze view)
Since BrowseFeature tells the library to load its model on click, switching between the file / track model works flawlessly.
This also introduces
SidebarItemDelegateto do the painting.Note:
The header is different for the file / track views (eg. the file view does not have the rating column), but the views can be made somewhat similar by adjusting the headers once.
isWatchedPathproperty to avoid string comparison when expanding the tree?try to adopt solution from (feat) add Library sidebar bookmarks #14508
isWatchedPathflag when directories have been added to or removed from libraryTODO
use ibrary view in Recording, toopostponed, will happen as followup