diff options
| author | Fraxinas <andreas.frisch@multimedia-labs.de> | 2011-03-16 15:31:34 +0100 |
|---|---|---|
| committer | Fraxinas <andreas.frisch@multimedia-labs.de> | 2011-03-16 15:31:34 +0100 |
| commit | a12fae872b0ab0de222ba8fa1293213d307e60e4 (patch) | |
| tree | de16cc297be4d43a3ffff4d67611716db6c84739 /lib/python | |
| parent | ac2878879847f965225e0f72c22ad17b513c16e6 (diff) | |
| parent | 56da7b1c456ed1cbd8a09a9c6bc7c312e51ca037 (diff) | |
| download | enigma2-a12fae872b0ab0de222ba8fa1293213d307e60e4.tar.gz enigma2-a12fae872b0ab0de222ba8fa1293213d307e60e4.zip | |
Merge branch 'bug_723_infobarext_pvr'
Diffstat (limited to 'lib/python')
| -rw-r--r-- | lib/python/Screens/InfoBarGenerics.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py index 0bb7fd37..2e97b59d 100644 --- a/lib/python/Screens/InfoBarGenerics.py +++ b/lib/python/Screens/InfoBarGenerics.py @@ -1353,6 +1353,7 @@ class InfoBarExtensions: answer[1][1]() from Tools.BoundFunction import boundFunction +import inspect # depends on InfoBarExtensions @@ -1364,9 +1365,13 @@ class InfoBarPlugins: return name def getPluginList(self): - list = [((boundFunction(self.getPluginName, p.name), boundFunction(self.runPlugin, p), lambda: True), None, p.name) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EXTENSIONSMENU)] - list.sort(key = lambda e: e[2]) # sort by name - return list + l = [] + for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EXTENSIONSMENU): + args = inspect.getargspec(p.__call__)[0] + if len(args) == 1 or len(args) == 2 and isinstance(self, InfoBarChannelSelection): + l.append(((boundFunction(self.getPluginName, p.name), boundFunction(self.runPlugin, p), lambda: True), None, p.name)) + l.sort(key = lambda e: e[2]) # sort by name + return l def runPlugin(self, plugin): if isinstance(self, InfoBarChannelSelection): |
