Fix font artifact in Google Chrome on Windows (#1490353)

pull/280/head
Aleksander Machniak 9 years ago
parent 72863836e5
commit 22c0b291f6

@ -9,6 +9,7 @@ CHANGELOG Roundcube Webmail
- Fix message list header in classic skin on window resize in Internet Explorer (#1490213)
- Fix so text/calendar parts are listed as attachments even if not marked as such (#1490325)
- Fix lack of signature separator for plain text signatures in html mode (#1490352)
- Fix font artifact in Google Chrome on Windows (#1490353)
RELEASE 1.1.1
-------------

@ -45,18 +45,22 @@ class rcube_text2html
*/
protected $config = array(
// non-breaking space
'space' => "\xC2\xA0",
'space' => "\xC2\xA0",
// word-joiner (zero-width no-break space)
// 'wordjoiner' => "\xEF\xBB\xBF", // U+2060
// use deprecated U+FEFF character because of webkit issue with displaying U+2060 (#1490353)
'wordjoiner' => "\xEF\xBB\xBF", // U+FEFF
// enables format=flowed parser
'flowed' => false,
// enables wrapping for non-flowed text
'wrap' => true,
'wrap' => true,
// line-break tag
'break' => "<br>\n",
'break' => "<br>\n",
// prefix and suffix (wrapper element)
'begin' => '<div class="pre">',
'end' => '</div>',
'begin' => '<div class="pre">',
'end' => '</div>',
// enables links replacement
'links' => true,
'links' => true,
// string replacer class
'replacer' => 'rcube_string_replacer',
);
@ -278,6 +282,7 @@ class rcube_text2html
$text = strtr($text, $table);
$nbsp = $this->config['space'];
$nobr = $this->config['wordjoiner'];
// replace some whitespace characters
$text = str_replace(array("\r", "\t"), array('', ' '), $text);
@ -299,9 +304,15 @@ class rcube_text2html
$text = $copy;
}
// make the whole line non-breakable
else {
// make the whole line non-breakable
$text = str_replace(array(' ', '-', '/'), array($nbsp, '-&#8288;', '/&#8288;'), $text);
$repl = array(
' ' => $nbsp,
'-' => $nobr . '-' . $nobr,
'/' => $nobr . '/',
);
$text = str_replace(array_keys($repl), array_values($repl), $text);
}
return $text;

@ -41,7 +41,7 @@ class Framework_Text2Html extends PHPUnit_Framework_TestCase
$data[] = array(">aaaa \n>aaaa", "<blockquote>aaaa_<br>aaaa</blockquote>", $options);
$data[] = array(">aaaa\n>aaaa", "<blockquote>aaaa<br>aaaa</blockquote>", $options);
$data[] = array(">aaaa \n>bbbb\ncccc dddd", "<blockquote>aaaa_<br>bbbb</blockquote>cccc_dddd", $options);
$data[] = array("aaaa-bbbb/cccc", "aaaa-&#8288;bbbb/&#8288;cccc", $options);
$data[] = array("aaaa-bbbb/cccc", "aaaa\xEF\xBB\xBF-\xEF\xBB\xBFbbbb\xEF\xBB\xBF/cccc", $options);
$options['flowed'] = true;

Loading…
Cancel
Save