Providers framework needs to be able to target specific consumers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Exaile |
Fix Released
|
Wishlist
|
Dustin Spicuzza |
Bug Description
Providers in Exaile are pretty useful, but they currently are a bit limited. Currently, providers are all or nothing -- so there isn't a way to say 'only provide this service to a particular thing'.
A good example where this could be useful is with player enhancements. If I have an enhancement plugin that attaches to the player pipeline (say, to add an echo or something), when it registers a provider it will be added to *all* player objects that get created. However, what I really want is to only add the echo enhancement to a particular player object, and still be able to use the provider system to register other things for all players.
Another example would be with provider-based menus. You could use this functionality to ensure that a particular menu item is only applied to a particular widget, instead of all widgets -- while still retaining the ability for other menu items to be applied to all widgets if they so desire.
Related branches
Changed in exaile: | |
status: | Fix Committed → Fix Released |
Changed in exaile: | |
status: | Fix Committed → Fix Released |
FIxed in r4259, with ProviderMenu enhancements in r4260