Michael's patch currently doesn't make the menus more configurable, it
just adds two new hard coded menus:
- Album Artists
- Composers

That's true for yesterday's patch, which was a POC implementation. Incidentally I spent some time this morning to move the new menus out of S::M::BrowseLibrary into its own plugin. I'm convinced that hard-coding this will just trigger requests for more. Therefore I'd like to keep this as flexible as possible.

The plugin (which I've committed to the public/feature/extended-browse-modes branch) would add a hard coded list of items for now. But it could easily be used by other plugins to register custom browse modes. I would hope that the audiobook case could be implemented calling something like:

Slim::Plugin::ExtendedBrowseModes::Plugin->registerBrowseMode({
        name     => 'AUDIOBOOKS',
        params   => [ 'genre_id:' . getTheGenreIdFor('Audiobooks') ],
        feed     => 'Slim::Menu::BrowseLibrary::_albums',
        icon     => 'html/images/audiobooks.png',
        id       => 'myMusicAudiobooks',
})

It's not there yet (and you'd have to implement the getTheGenreIdFor() yourself :-P). But I sure hope it'll offer that flexibility at some point. A more advanced plugin could provide a UI to let the user define such configurations...

I'll probably use your use case as another POC item in the plugin. And it'll help me to get the infrastructure in the core code ready.

Another (stupid...) reason why I moved this to a plugin is the fact that the hard-coded S::M::BrowseLibrary menus are sent to the client as a SlimMenu response, and those can't have icon IDs... We'd have to modify the player firmware (and client applications) if we wanted to use custom icons for additional menu items. And that's something I definitely want to prevent.

--

Michael
_______________________________________________
beta mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/beta

Reply via email to