Version: (using Devel) OS: Linux Installed from: Compiled sources Hi' I have a custom font color and format (bold) for my outcoming messages. If the message that I write starts with an special character like 'á' kopete doesn't apply the font color to that letter in the panel where you write. Take a look at the screenshot and you will see it :)
Created attachment 29887 [details] Screenshot
Let the status CONFIRMED, please... the problem is going on for a long time!! Should this be fixed? I just want to set a font like Trebuchet, I want it bold, and I want it coloured. If I try to set it in the chat window from the Format Toolbar I have to set the font one thing at time. So first I set the *bold* setting, then I write in the chat window, then I set the color, the settings remain the same for a while, then come back to regular sans serif with custom settings. I'm using MSN protocol with latest Kopete on kde4 from openSuSE repository, please solve this. THANKS
This should be already fixed in kdelibs
Hi, should be possible to know in which version will be included this fix? KDE 4.2x or KDE 4.3? Thank you
It should be fixed since commit 873146. So it is in whole KDE 4.2 and 4.3 series.
Sorry this is different bug :( but this one is also fixed (commit 965446) :) but only in trunk so it will be in KDE 4.3 beta2 (not in KDE 4.3 beta1)
And the fix is in Kopete
Hi, I'm sorry but in KMess we use a normal KTextEdit and we still experience the same issue; how is it be possible for it to have been a Kopete bug?
It's more a Qt bug/feature, the QTextEdit removes format when text is cleared. So in Kopete I've hacked it by remembering the last valid QTextCharFormat format and setting it back right after it's cleared. The fix is in commit 965446. To be precise it's the part below (the updateCharFormat is called every time currentCharFormatChanged is emitted) Opaque part is there only so we don't store non opaque formats (can happen during html paste) as a text because when we would load it from string the background would be back. void KopeteRichTextWidget::updateCharFormat(const QTextCharFormat & f) { // TODO: This should go to KRichTextWidget or KRichTextEdit if (d->resettingCharFormat) return; if (f != QTextCharFormat() || !document()->isEmpty()) { d->lastCharFormat = f; bool bOpaque = d->lastCharFormat.foreground().isOpaque(); bool fOpaque = d->lastCharFormat.background().isOpaque(); if (!fOpaque) d->lastCharFormat.setForeground(palette().color(QPalette::Active, QPalette::Text)); if (!bOpaque) d->lastCharFormat.setBackground(palette().color(QPalette::Active, QPalette::Base)); if (!fOpaque || !bOpaque) { d->resettingCharFormat = true; KRichTextWidget::setCurrentCharFormat(d->lastCharFormat); d->resettingCharFormat = false; } } else { d->resettingCharFormat = true; KRichTextWidget::setCurrentCharFormat(d->lastCharFormat); d->resettingCharFormat = false; } updateActionStates(); } plus in virtual function createActions has to be // FIXME: Really ugly hack, but we reset format in updateCharFormat and if we don't disconnect this // then actions will have old values and not the resetted. disconnect(this, SIGNAL(currentCharFormatChanged(const QTextCharFormat &)), this, SLOT(_k_updateCharFormatActions(const QTextCharFormat &)));