Merge pull request #679 from enikesha/htmlfix

Fix unicode handling in 'View HTML code as formated text'. Fixes #667
This commit is contained in:
Jonathan Warren 2014-07-14 19:45:15 -04:00
commit ce62294975

View File

@ -2583,19 +2583,22 @@ class MyForm(QtGui.QMainWindow):
'''select message from inbox where msgid=?''', msgid) '''select message from inbox where msgid=?''', msgid)
if queryreturn != []: if queryreturn != []:
for row in queryreturn: for row in queryreturn:
messageAtCurrentInboxRow, = row messageText, = row
lines = messageAtCurrentInboxRow.split('\n') lines = messageText.split('\n')
for i in xrange(len(lines)): totalLines = len(lines)
for i in xrange(totalLines):
if 'Message ostensibly from ' in lines[i]: if 'Message ostensibly from ' in lines[i]:
lines[i] = '<p style="font-size: 12px; color: grey;">%s</span></p>' % ( lines[i] = '<p style="font-size: 12px; color: grey;">%s</span></p>' % (
lines[i]) lines[i])
elif lines[i] == '------------------------------------------------------': elif lines[i] == '------------------------------------------------------':
lines[i] = '<hr>' lines[i] = '<hr>'
content = '' elif lines[i] == '' and (i+1) < totalLines and \
for i in xrange(len(lines)): lines[i+1] != '------------------------------------------------------':
content += lines[i] lines[i] = '<br><br>'
content = content.replace('\n\n', '<br><br>') content = ' '.join(lines) # To keep the whitespace between lines
content = shared.fixPotentiallyInvalidUTF8Data(content)
content = unicode(content, 'utf-8)')
self.ui.textEditInboxMessage.setHtml(QtCore.QString(content)) self.ui.textEditInboxMessage.setHtml(QtCore.QString(content))
def on_action_InboxMarkUnread(self): def on_action_InboxMarkUnread(self):