|
|
|
@ -23,6 +23,7 @@
|
|
|
|
|
#include <tqtooltip.h>
|
|
|
|
|
#include <tqfile.h>
|
|
|
|
|
#include <tqiconset.h>
|
|
|
|
|
#include <tqregexp.h>
|
|
|
|
|
|
|
|
|
|
#include <kconfig.h>
|
|
|
|
|
#include <kdebug.h>
|
|
|
|
@ -278,25 +279,28 @@ void JabberChatSession::slotMessageSent ( Kopete::Message &message, Kopete::Chat
|
|
|
|
|
{
|
|
|
|
|
// this message is not encrypted
|
|
|
|
|
jabberMessage.setBody ( message.plainBody ());
|
|
|
|
|
if (message.format() == Kopete::Message::RichText)
|
|
|
|
|
if (message.format() == Kopete::Message::RichText)
|
|
|
|
|
{
|
|
|
|
|
JabberResource *bestResource = account()->resourcePool()->bestJabberResource(toJid);
|
|
|
|
|
if( bestResource && bestResource->features().canXHTML() )
|
|
|
|
|
{
|
|
|
|
|
TQString xhtmlBody = message.escapedBody();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// According to JEP-0071 8.9 it is only RECOMMANDED to replace \n with <br/>
|
|
|
|
|
// which mean that some implementation (gaim 2 beta) may still think that \n are linebreak.
|
|
|
|
|
// which mean that some implementation (gaim 2 beta) may still think that \n are linebreak.
|
|
|
|
|
// and considered the fact that KTextEditor generate a well indented XHTML, we need to remove all \n from it
|
|
|
|
|
// see Bug 121627
|
|
|
|
|
// Anyway, theses client that do like that are *WRONG* considreded the example of jep-71 where there are lot of
|
|
|
|
|
// linebreak that are not interpreted. - Olivier 2006-31-03
|
|
|
|
|
xhtmlBody.replace("\n","");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// is not a valid XML entity
|
|
|
|
|
xhtmlBody.replace(" " , " ");
|
|
|
|
|
|
|
|
|
|
xhtmlBody="<p "+ message.getHtmlStyleAttribute() +">"+ xhtmlBody +"</p>";
|
|
|
|
|
|
|
|
|
|
// Remove trailing line break
|
|
|
|
|
xhtmlBody.remove( TQRegExp( "<br/>$" ) );
|
|
|
|
|
|
|
|
|
|
xhtmlBody = "<span " + message.getHtmlStyleAttribute() + ">" + xhtmlBody + "</span>";
|
|
|
|
|
jabberMessage.setXHTMLBody ( xhtmlBody );
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -310,11 +314,11 @@ void JabberChatSession::slotMessageSent ( Kopete::Message &message, Kopete::Chat
|
|
|
|
|
// FIXME: the view() is a speedy way to solve BUG:108389. A better solution is to be found
|
|
|
|
|
// but I don't want to introduce a new bug during the bug hunt ;-).
|
|
|
|
|
if (view() && view()->plugin()->pluginId() == "kopete_emailwindow" )
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
jabberMessage.setType ( "normal" );
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
{
|
|
|
|
|
jabberMessage.setType ( "chat" );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|