Kodi Community Forum
My 30 Add-on API wishes - Printable Version

+- Kodi Community Forum (https://forum.kodi.tv)
+-- Forum: Discussions (https://forum.kodi.tv/forumdisplay.php?fid=222)
+--- Forum: Feature Requests (https://forum.kodi.tv/forumdisplay.php?fid=9)
+--- Thread: My 30 Add-on API wishes (/showthread.php?tid=154805)

Pages: 1 2 3 4 5 6 7 8


RE: My 30 Add-on API wishes - ruuk - 2013-04-05

2.4

Why can't we have our own fonts for the addon's skin. I've always wondered this. It keeps me awake at night Smile


RE: My 30 Add-on API wishes - pieh - 2013-04-06

(2013-02-12, 21:57)jmarshall Wrote: Regarding viewtypes, none of XBMC's filesystem layers require this, so I'd question whether it is the best method to apply for VFS add-ons.

ATM all switching is generally done by the skin based on content type. It might be better to make the content type more fine-grained would be a good way to deal with this (e.g. content type should probably be a set of content types that apply).

If we need a way to specify views specifically, then it could be done with something like video|art.wide|info or some such.
Right, I might have rushed with idea earlier Wink
This seems good. We could automatically set "properties" like "art.wide" / "art.banners" for tvshows and "info" for database items. We would need to compile list of possible values for this I think but in meantime I'll do some work on it.


RE: My 30 Add-on API wishes - pieh - 2013-04-06

Quote:5.3 Missing context-Menu commands
Plugins can add commands to the context menu. They can also clear all original items while adding new items. But they can't clear and add some original items back because not all are available, e.g. "Add to favourites".
Ok, I've lately noticed I couldn't add plugin items to favourites or use "play with" and that really bugs me, so let's do something about it! Smile

What would be prefered way to this (from plugin developer perspective)? We have list of context entries ( https://github.com/xbmc/xbmc/blob/master/xbmc/dialogs/GUIDialogContextMenu.h#L27 ). We could add either white list (addbuttons=[CONTEXT_BUTTON_ADD_FAVOURITE] or black list (removebuttons=[CONTEXT_BUTTON_ADD_FAVOURITE]) of context items


RE: My 30 Add-on API wishes - sphere - 2013-04-06

(2013-04-06, 09:50)pieh Wrote: What would be prefered way to this (from plugin developer perspective)? We have list of context entries ( https://github.com/xbmc/xbmc/blob/master/xbmc/dialogs/GUIDialogContextMenu.h#L27 ). We could add either white list (addbuttons=[CONTEXT_BUTTON_ADD_FAVOURITE] or black list (removebuttons=[CONTEXT_BUTTON_ADD_FAVOURITE]) of context items

What about exposing these constants (as tuples (cmd, translated-label)), then its similar to the SORT_METHOD_FOO logic?


RE: My 30 Add-on API wishes - pieh - 2013-04-06

We can only expose CONTEXT_BUTTON enum values (integer constants) to plugin (translated-label can be different on same context action depending on some conditions and we don't have command stored as builtin action - we are handling actions based on CONTEXT_BUTTON value)

So we could do something like (which is white list method I mentioned in earlier post):
Code:
listitem.addContextMenuItems(contextMenuTuple, replaceItems=True)
listItem.addStandardContextMenuItems([CONTEXT_BUTTON_ADD_FAVOURITE, MORE_CONTEXT_BUTTONS_HERE])
We can't really combine custom context menu entries with builtin ones - they are incompatible.


RE: My 30 Add-on API wishes - sphere - 2013-04-06

Sure, this will solve the problem, cool. But can't this be done without adding a new method to listitem?

PHP Code:
MY_CONTEXT_ITEM = ('Add to Trakt.tv''XBMC.RunPlugin(plugin://plugin.video.trakt_list_manager/customlists/movie/add?title=The+Rock)')

listitem.addContextMenuItems([
    
xbmcplugin.CONTEXT_BUTTON_PLAY,
    
MY_CONTEXT_ITEM,
    
xbmcplugin.CONTEXT_BUTTON_ADDON_SETTINGS
], replaceItems=True



RE: My 30 Add-on API wishes - pieh - 2013-04-06

I don't know if bindings will allow mixed type list (some items are tuples some are constants) - will have to ask jcarroll about it.


RE: My 30 Add-on API wishes - Bstrdsmkr - 2013-04-06

I'd personally prefer to see the missing options exposed as builtins. That way they can be used in places other than the context menu as well.


RE: My 30 Add-on API wishes - Nuka1195 - 2013-04-06

May not be a huge issue, but doing it with two methods would mean your ordering would not be as customizable.


RE: My 30 Add-on API wishes - pan2 - 2013-04-07

Would like to see support for animated gifs for fanart and background images, well, in fact animated gifs totally. Oh and automatic clean out and update of all thumbnails and other stuff that seems to get cached and imbedded in superglue


RE: My 30 Add-on API wishes - Martijn - 2013-04-16

Small request from my side. atm we have to use
PHP Code:
xbmc.executebuiltin("XBMC.Notification(%s, %s, %d, %s)" %(__addonname__,
                                                              
__localize__(line1),
                                                              
time,
                                                              
__icon__)) 
to show a notification.
Nicer would be if it was part of the xbmcgui.Dialog() class.
PHP Code:
xbmcgui.Dialog().Notification(heading,message[,time,image]) 



RE: My 30 Add-on API wishes - Nuka1195 - 2013-04-16

I have a working version of this, but am trying to add the default icons as string constants, with no luck. this way image can be any image you set, not just the default Info, Warning and Error.


RE: My 30 Add-on API wishes - Martijn - 2013-04-20

To have an easy way to use the xbmc.getlanguage() to return either the full language name, or the ISO code (two or three letters)


RE: My 30 Add-on API wishes - Bstrdsmkr - 2013-04-21

This may be a little Pie In The Sky, but is anyone familiar with the Web2Py framework?

It would be really nice if the language translation in XBMC worked the same. Basically, the framework defines a T() function. You pass any strings to be translated into the T() function at runtime and they're automatically replaced with the appropriate language if available. A pseudo example would be:
Code:
control.setLabel(T("My Button"))

So instead of passing in an ID, pass in a string, the back end looks up the ID, then the translated string and returns it.


RE: My 30 Add-on API wishes - jmarshall - 2013-04-21

That's basically how the gettext stuff works. I don't think alanwww1 has done much more work on that side of things, but it was initially going to be part of the plan (move to actual text rather than id's).