Merge pull request #5069 from Ede123/master

Fixes for songinfo/lyrics
This commit is contained in:
David Sansome 2015-10-11 13:46:46 +11:00
commit d51a1add86
3 changed files with 13 additions and 7 deletions

View File

@ -79,9 +79,12 @@ void SongInfoTextView::contextMenuEvent(QContextMenuEvent* e) {
void SongInfoTextView::SetHtml(const QString& html) {
QString copy(html.trimmed());
// Simplify newlines, and convert them to <p>
copy.replace(QRegExp("[\\r\\n]+"), "\n");
copy.replace(QRegExp("([^>])[\\t ]*\\n"), "\\1<p>");
// Simplify newlines
copy.replace(QRegExp("\\r\\n?"), "\n");
// Convert two or more newlines to <p>, convert single newlines to <br>
copy.replace(QRegExp("([^>])([\\t ]*\\n){2,}"), "\\1<p>");
copy.replace(QRegExp("([^>])[\\t ]*\\n"), "\\1<br>");
// Strip any newlines from the end
copy.replace(QRegExp("((<\\s*br\\s*/?\\s*>)|(<\\s*/?\\s*p\\s*/?\\s*>))+$"),

View File

@ -25,9 +25,12 @@ UltimateLyricsLyric::UltimateLyricsLyric(QObject* parent)
void UltimateLyricsLyric::SetHtml(const QString& html) {
QString copy(html.trimmed());
// Simplify newlines, and convert them to <p>
copy.replace(QRegExp("[\\r\\n]+"), "\n");
copy.replace(QRegExp("([^>])[\\t ]*\\n"), "\\1<p>");
// Simplify newlines
copy.replace(QRegExp("\\r\\n?"), "\n");
// Convert two or more newlines to <p>, convert single newlines to <br>
copy.replace(QRegExp("([^>])([\\t ]*\\n){2,}"), "\\1<p>");
copy.replace(QRegExp("([^>])[\\t ]*\\n"), "\\1<br>");
// Strip any newlines from the end
copy.replace(QRegExp("((<\\s*br\\s*/?\\s*>)|(<\\s*/?\\s*p\\s*/?\\s*>))+$"),

View File

@ -223,7 +223,7 @@ QString UltimateLyricsProvider::Extract(const QString& source,
int end_idx = source.indexOf(end, begin_idx);
if (end_idx == -1) return QString();
return source.mid(begin_idx, end_idx - begin_idx - 1);
return source.mid(begin_idx, end_idx - begin_idx);
}
void UltimateLyricsProvider::ApplyExcludeRule(const Rule& rule,