The branch, gotham has been updated
via d87f6e8278ee85be93a416a9a61709e30c4b4e97 (commit)
from d9115eec79c4711f740d8cdbf0f47955d3755b36 (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/scripts;a=commit;h=d87f6e8278ee85be93a416a9a61709e30c4b4e97
commit d87f6e8278ee85be93a416a9a61709e30c4b4e97
Author: Martijn Kaijser <[email protected]>
Date: Tue Aug 19 18:47:57 2014 +0200
[script.xbmc.lcdproc] 2.5.1
diff --git a/script.xbmc.lcdproc/addon.xml b/script.xbmc.lcdproc/addon.xml
index 04e9231..984ff64 100644
--- a/script.xbmc.lcdproc/addon.xml
+++ b/script.xbmc.lcdproc/addon.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="script.xbmc.lcdproc" name="XBMC LCDproc" version="2.5.0"
provider-name="Team XBMC: Memphiz, Daniel 'herrnst' Scheller">
+<addon id="script.xbmc.lcdproc" name="XBMC LCDproc" version="2.5.1"
provider-name="Team XBMC: Memphiz, Daniel 'herrnst' Scheller">
<requires>
<import addon="xbmc.python" version="2.14.0"/>
<import addon="xbmc.addon" version="12.0.0"/>
diff --git a/script.xbmc.lcdproc/changelog.txt
b/script.xbmc.lcdproc/changelog.txt
index 27e39fe..61eeba8 100644
--- a/script.xbmc.lcdproc/changelog.txt
+++ b/script.xbmc.lcdproc/changelog.txt
@@ -1,3 +1,7 @@
+2.5.1
+- Fix name conflict with the LCDproc PyEgg
+- Split setup command list loop to initialise hbars before icons, fixes
progress bars not being shown if placed after any icons on RasbPi
+- Fix charset encoding exceptions on LCD.xml load if it contains UTF8 chars
2.5.0 (Gotham)
- Initial version for XBMC Gotham with updated dependencies
- BBcode tags are stripped before sending content to the display (reported to
happen on e.g. OpenELEC)
diff --git a/script.xbmc.lcdproc/lcdmain.py b/script.xbmc.lcdproc/lcdmain.py
index 182a259..08c7f4b 100644
--- a/script.xbmc.lcdproc/lcdmain.py
+++ b/script.xbmc.lcdproc/lcdmain.py
@@ -32,7 +32,7 @@ __icon__ = os.path.join(__cwd__,"icon.png")
__scriptname__ = "XBMC LCDproc"
BASE_RESOURCE_PATH = xbmc.translatePath( os.path.join( __cwd__, 'resources',
'lib' ) )
-sys.path.append (BASE_RESOURCE_PATH)
+sys.path.insert(0, BASE_RESOURCE_PATH)
from settings import *
from lcdproc import *
diff --git a/script.xbmc.lcdproc/resources/lib/lcdbase.py
b/script.xbmc.lcdproc/resources/lib/lcdbase.py
index e684eb5..dcfdbe8 100644
--- a/script.xbmc.lcdproc/resources/lib/lcdbase.py
+++ b/script.xbmc.lcdproc/resources/lib/lcdbase.py
@@ -389,7 +389,8 @@ class LcdBase():
if line.text == None:
linetext = ""
else:
- linetext = str(line.text).strip()
+ # prepare text line for XBMC's expected encoding
+ linetext = line.text.strip().encode(self.m_strInfoLabelEncoding,
"ignore")
# make sure linetext has something so re.match won't fail
if linetext != "":
@@ -405,7 +406,7 @@ class LcdBase():
return
# progressbar line if InfoLabel exists
- if str(linetext).lower().find("$info[lcd.progressbar]") >= 0:
+ if linetext.lower().find("$info[lcd.progressbar]") >= 0:
linedescriptor['type'] = LCD_LINETYPE.LCD_LINETYPE_PROGRESS
linedescriptor['endx'] = int(self.m_iCellWidth) * int(self.m_iColumns)
@@ -415,32 +416,32 @@ class LcdBase():
linedescriptor['endx'] = int(self.m_iCellWidth) *
(int(self.GetColumns()) - 2)
# textline with icon in front
- elif str(linetext).lower().find("$info[lcd.playicon]") >= 0:
+ elif linetext.lower().find("$info[lcd.playicon]") >= 0:
linedescriptor['type'] = LCD_LINETYPE.LCD_LINETYPE_ICONTEXT
linedescriptor['startx'] = int(1 + self.m_iIconTextOffset) # icon
widgets take 2 chars, so shift text offset (default: 2)
# support Python < 2.7 (e.g. Debian Squeeze)
if self.m_vPythonVersion < (2, 7):
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.PlayIcon]") + '\s?', ' ', str(linetext))).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.PlayIcon]") + '\s?', ' ', linetext).strip()
else:
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.PlayIcon]") + '\s?', ' ', str(linetext),
flags=re.IGNORECASE)).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.PlayIcon]") + '\s?', ' ', linetext,
flags=re.IGNORECASE).strip()
# standard (scrolling) text line
else:
linedescriptor['type'] = LCD_LINETYPE.LCD_LINETYPE_TEXT
- linedescriptor['text'] = str(linetext)
+ linedescriptor['text'] = linetext
# check for alignment pseudo-labels
- if str(linetext).lower().find("$info[lcd.aligncenter]") >= 0:
+ if linetext.lower().find("$info[lcd.aligncenter]") >= 0:
linedescriptor['align'] = LCD_LINEALIGN.LCD_LINEALIGN_CENTER
- if str(linetext).lower().find("$info[lcd.alignright]") >= 0:
+ if linetext.lower().find("$info[lcd.alignright]") >= 0:
linedescriptor['align'] = LCD_LINEALIGN.LCD_LINEALIGN_RIGHT
if self.m_vPythonVersion < (2, 7):
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignCenter]") + '\s?', ' ',
linedescriptor['text'])).strip()
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignRight]") + '\s?', ' ',
linedescriptor['text'])).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignCenter]") + '\s?', ' ',
linedescriptor['text']).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignRight]") + '\s?', ' ', linedescriptor['text']).strip()
else:
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignCenter]") + '\s?', ' ', linedescriptor['text'],
flags=re.IGNORECASE)).strip()
- linedescriptor['text'] = str(re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignRight]") + '\s?', ' ', linedescriptor['text'],
flags=re.IGNORECASE)).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignCenter]") + '\s?', ' ', linedescriptor['text'],
flags=re.IGNORECASE).strip()
+ linedescriptor['text'] = re.sub(r'\s?' +
re.escape("$INFO[LCD.AlignRight]") + '\s?', ' ', linedescriptor['text'],
flags=re.IGNORECASE).strip()
self.m_lcdMode[mode].append(linedescriptor)
diff --git a/script.xbmc.lcdproc/resources/lib/lcdproc.py
b/script.xbmc.lcdproc/resources/lib/lcdproc.py
index eb54ee3..55fa51e 100644
--- a/script.xbmc.lcdproc/resources/lib/lcdproc.py
+++ b/script.xbmc.lcdproc/resources/lib/lcdproc.py
@@ -161,7 +161,7 @@ class LCDProc(LcdBase):
# Initialize command list var
strInitCommandList = ""
- # Setup widgets
+ # Setup widgets (scrollers and hbars first)
for i in range(1,int(self.m_iRows)+1):
# Text widgets
strInitCommandList += "widget_add xbmc lineScroller" + str(i) + "
scroller\n"
@@ -172,14 +172,17 @@ class LCDProc(LcdBase):
# Reset bars to zero
strInitCommandList += "widget_set xbmc lineProgress" + str(i) + " 0 0
0\n"
+ self.m_strLineText[i-1] = ""
+ self.m_strLineType[i-1] = ""
+
+ # Setup icons last
+ for i in range(1,int(self.m_iRows)+1):
# Icons
strInitCommandList += "widget_add xbmc lineIcon" + str(i) + " icon\n"
# Default icon
strInitCommandList += "widget_set xbmc lineIcon" + str(i) + " 0 0
BLOCK_FILLED\n"
- self.m_strLineText[i-1] = ""
- self.m_strLineType[i-1] = ""
self.m_strLineIcon[i-1] = ""
for i in range(1,int(self.m_iBigDigits + 1)):
-----------------------------------------------------------------------
Summary of changes:
script.xbmc.lcdproc/addon.xml | 2 +-
script.xbmc.lcdproc/changelog.txt | 4 ++++
script.xbmc.lcdproc/lcdmain.py | 2 +-
script.xbmc.lcdproc/resources/lib/lcdbase.py | 25 +++++++++++++------------
script.xbmc.lcdproc/resources/lib/lcdproc.py | 9 ++++++---
5 files changed, 25 insertions(+), 17 deletions(-)
hooks/post-receive
--
Scripts
------------------------------------------------------------------------------
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons