Various fixes for the style engine
[quassel.git] / src / uisupport / uistyle.cpp
index 1626c01..025c9d1 100644 (file)
@@ -87,6 +87,7 @@ void UiStyle::loadStyleSheet() {
   qDeleteAll(_metricsCache);
   _metricsCache.clear();
   _formatCache.clear();
   qDeleteAll(_metricsCache);
   _metricsCache.clear();
   _formatCache.clear();
+  _formats.clear();
 
   UiStyleSettings s;
 
 
   UiStyleSettings s;
 
@@ -335,7 +336,7 @@ void UiStyle::mergeFormat(QTextCharFormat &fmt, quint32 ftype, quint64 label) {
   if((ftype & 0xfff00)) { // element format
     for(quint32 mask = 0x00100; mask <= 0x40000; mask <<= 1) {
       if(ftype & mask) {
   if((ftype & 0xfff00)) { // element format
     for(quint32 mask = 0x00100; mask <= 0x40000; mask <<= 1) {
       if(ftype & mask) {
-        mergeSubElementFormat(fmt, mask | 0xff, label);
+        mergeSubElementFormat(fmt, ftype & (mask | 0xff), label);
       }
     }
   }
       }
     }
   }