case Qt::EditRole:
{
QString newName = value.toString();
+
+ // Sanity check - buffer names must not contain newlines!
+ int nlpos = newName.indexOf('\n');
+ if (nlpos >= 0)
+ newName = newName.left(nlpos);
+
if (!newName.isEmpty()) {
Client::renameBuffer(bufferId(), newName);
return true;
}
tooltip << "</p>";
- auto addRow = [&](const QString& key, const QString& value, bool condition = true) {
+ auto addRow = [&](const QString& key, const QString& value, bool condition) {
if (condition)
{
tooltip << "<tr><td class='bold' align='right'>" << key << "</td><td>" << value << "</td></tr>";
if(!_ircUser->awayMessage().isEmpty()) {
awayMessage = _ircUser->awayMessage();
}
- addRow(tr("Away Message"), awayMessage);
+ addRow(tr("Away Message"), awayMessage, true);
}
addRow(tr("Realname"), _ircUser->realName(), !_ircUser->realName().isEmpty());
addRow(tr("Operator"), _ircUser->ircOperator(), !_ircUser->ircOperator().isEmpty());
addRow(tr("Suser Host"), _ircUser->suserHost(),!_ircUser->suserHost().isEmpty());
addRow(tr("Whois Service Reply"), _ircUser->whoisServiceReply(), !_ircUser->whoisServiceReply().isEmpty());
- addRow(tr("Hostmask"), _ircUser->hostmask().remove(0, _ircUser->hostmask().indexOf("!")+1));
+ addRow(tr("Hostmask"), _ircUser->hostmask().remove(0, _ircUser->hostmask().indexOf("!")+1), true);
addRow(tr("Operator"), _ircUser->ircOperator(), !_ircUser->ircOperator().isEmpty());
if (_ircUser->idleTime().isValid()) {
QDateTime now = QDateTime::currentDateTime();
QDateTime idle = _ircUser->idleTime();
int idleTime = idle.secsTo(now);
- addRow(tr("Idling since"), secondsToString(idleTime));
+ addRow(tr("Idling since"), secondsToString(idleTime), true);
}
if (_ircUser->loginTime().isValid()) {
- addRow(tr("Login time"), _ircUser->loginTime().toString());
+ addRow(tr("Login time"), _ircUser->loginTime().toString(), true);
}
addRow(tr("Server"), _ircUser->server(), !_ircUser->server().isEmpty());