←  [EN] Third-Party Development

Forums

»

InputDeviceSetup Lenght

athoik's Photo athoik 19 Oct 2013

Hello,


InputDeviceSetup has a hardcodec lenght of 400. This causes issues with some translations (eg the Greek one), letters are not shown even though there is enouph space.

Changing length to 600 solves the above issue.

Attached Files

Quote

athoik's Photo athoik 19 Oct 2013

Hello,

On PluginList we are also limiting the plugin description (without apparent reason) although there is space.

Attached File  0001-PluginList-make-some-space-for-longer-plugin-descrip.patch.txt   997bytes   5 downloads

Before patch:

Attached File  screenshotOld.jpg   24.87KB   66 downloads

After path:

Attached File  screenshotNew.jpg   25.33KB   64 downloads

Thanks
Quote

mirakels's Photo mirakels 19 Oct 2013

I guess this is not a problem in the with of the box. When a box has certain width and you start at xpos = 120 in the box, there is only width-xpos space left in the box. So if you xpos=120 and you use width-40 to draw text you basically write outside the box.

 

The the greek (and probably other languages) width issue may be in the font renderer...

Quote

athoik's Photo athoik 20 Oct 2013

But same happens with default skin PLi-HD and English (almost 42 chars dispayed).

Attached File  screenshot.jpg   27.39KB   28 downloads

So does that mean that English font renderer suffers from the same issue?
Edited by athoik, 20 October 2013 - 10:12.
Quote

mirakels's Photo mirakels 20 Oct 2013

Hm, in the download list it shows that all width is used.
So maybe something else is wrong.

In the code the default width is 440 pixels, but in the skin 630 pixels are reserved. I expect the 630 is passed to the widget, but maybe it does not.
Quote

athoik's Photo athoik 20 Oct 2013

I add the following to PluginList class.
        print "PluginEntryComponent width:" + str(width)
And this is what i get when i am opening the list:
PluginEntryComponent width:440
...
PluginEntryComponent width:440
PluginEntryComponent width:440
So probably we are not passing 630, but the default 440 used.
Quote

mirakels's Photo mirakels 20 Oct 2013

yes already found the problem. Just commited the fix.

Other list may suffer from the same problem, who knows...

Quote

athoik's Photo athoik 20 Oct 2013

I can find PluginEntryComponent only in PluginBrowser and we are calling it without width argument.
$ find -type f -name "*.py" | xargs fgrep PluginEntryComponent
./lib/python/Components/PluginList.py:def PluginEntryComponent(plugin, width=440):
./lib/python/Screens/PluginBrowser.py:          self.list = [PluginEntryComponent(plugin) for plugin in self.pluginlist]
So what you suggest to do? Change PluginBrowser or Change PluginEntryComponent?

Edit1. Just show your post. Thanks!
Edited by athoik, 20 October 2013 - 11:41.
Quote