Skip to content

Commit

Permalink
Trying to Escape the Hell of Escaping.
Browse files Browse the repository at this point in the history
Years ago people lived in plain text and they were happy.
  • Loading branch information
machekku committed Jan 19, 2010
1 parent c350f02 commit 44386a4
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 4 deletions.
16 changes: 13 additions & 3 deletions src/groupchatdlg.cpp
Expand Up @@ -1445,7 +1445,7 @@ void GCMainDlg::message(const Message &_m)
}

if(from.isEmpty())
appendSysMsg(TextUtil::prepareMessageText(m.body()), alert, m.timeStamp());
appendSysMsg(m.body(), alert, m.timeStamp(), true);
else
appendMessage(m, alert);
}
Expand Down Expand Up @@ -1482,8 +1482,17 @@ void GCMainDlg::updateLastMsgTime(QDateTime t)
}
}

void GCMainDlg::appendSysMsg(const QString &str, bool alert, const QDateTime &ts)
void GCMainDlg::appendSysMsg(const QString &str, bool alert, const QDateTime &ts, bool prepareAsChatMessage)
{
// FIXME:
// prepareAsChatMessage was added to linkify server-generated topic informations.
// First idea was to linkify, etc, every SysMsg, but that leads to problems,
// such as parsing full JIDs of participants joining a non-anonymous room as
// emails and looking ugly.
// Possibly a better way would be to change this function to something like
// appendSysMsg(nick, jid, message, alert, ts)
// or maybe even separate functions for different types of system messages.

if (d->trackBar)
d->doTrackBar();

Expand All @@ -1497,7 +1506,8 @@ void GCMainDlg::appendSysMsg(const QString &str, bool alert, const QDateTime &ts
updateLastMsgTime(time);
QString timestr = ui_.log->formatTimeStamp(time);
QString color = PsiOptions::instance()->getOption("options.ui.look.colors.messages.informational").toString();
ui_.log->appendText(QString("<font color=\"%1\">[%2]").arg(color, timestr) + QString(" *** %1</font>").arg(str));
ui_.log->appendText(QString("<font color=\"%1\">[%2]").arg(color, timestr) +
QString(" *** %1</font>").arg(prepareAsChatMessage ? TextUtil::prepareMessageText(str) : Qt::escape(str)));

if(alert)
doAlert();
Expand Down
2 changes: 1 addition & 1 deletion src/groupchatdlg.h
Expand Up @@ -138,7 +138,7 @@ private slots:
Ui::GroupChatDlg ui_;

void doAlert();
void appendSysMsg(const QString &, bool, const QDateTime &ts=QDateTime());
void appendSysMsg(const QString &, bool, const QDateTime &ts=QDateTime(), bool prepareAsChatMessage=false);
void appendMessage(const Message &, bool);
void updateLastMsgTime(QDateTime t);
void setLooks();
Expand Down

0 comments on commit 44386a4

Please sign in to comment.