[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdenetwork/kit
From: Neil Stevens <neil () qualityassistant ! com>
Date: 2003-01-06 0:23:04
[Download RAW message or body]
CVS commit by neil:
Fix some odd messages. Notice when shift gets released even when focus is lost.
M +23 -3 tmessage.cpp 1.46
--- kdenetwork/kit/tmessage.cpp #1.45:1.46
@@ -38,4 +38,6 @@ inline bool tagIsOpen(const QString &htm
}
+#define SKIP_TO_SEMI {while(newstr[++i] != ';' && i < newstr.length());}
+
#define SKIP_TO_GT {while(newstr[++i] != '>' && i < newstr.length());}
@@ -64,7 +66,15 @@ void parseAndProcess(QString &newstr)
else if(newstr[i] == '&')
{
+ QRegExp entity("^&(?=[^;<>&]*;)");
+ if(entity.search(newstr.mid(i)) == 0)
+ {
+ SKIP_TO_SEMI
+ }
+ else
+ {
newstr.replace(i, 1, "&");
i += 4;
}
+ }
else if(newstr[i] == '<')
{
@@ -297,5 +307,8 @@ void TMessage::keyPressEvent(QKeyEvent *
{
if(e->key() == Qt::Key_Shift)
+ {
+ edit->grabKeyboard();
lineBreak = true;
+ }
}
@@ -303,5 +316,8 @@ void TMessage::keyReleaseEvent(QKeyEvent
{
if(e->key() == Qt::Key_Shift)
+ {
+ edit->releaseKeyboard();
lineBreak = false;
+ }
}
@@ -338,5 +354,9 @@ void TMessage::send(void)
back.red(), back.green(), back.blue(), fore.red(), fore.green(), fore.blue());
if(bold) aolHTML += "<B>";
- aolHTML += message.replace(QRegExp("\n"), "<br/>");
+ message.replace(QRegExp("&"), "&");
+ message.replace(QRegExp("<"), "<");
+ message.replace(QRegExp(">"), ">");
+ message.replace(QRegExp("\n"), "<br/>");
+ aolHTML += message;
if(bold) aolHTML += "</B>";
aolHTML += "</FONT></BODY></HTML>";
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic