summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-01-06 15:46:03 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-01-06 15:46:03 (GMT)
commit679a545cb805382c97582dffa3fda4dbc438c81f (patch)
treef6ea9a9bd36b8636f0c5d5bf956c82a2ea81c391
parenta6a8bee86f7e13d49d9115eb33aaee999bd15ad5 (diff)
parent6d331b6ee7711cde2bf9adc1a584a45875c07983 (diff)
downloadQt-679a545cb805382c97582dffa3fda4dbc438c81f.zip
Qt-679a545cb805382c97582dffa3fda4dbc438c81f.tar.gz
Qt-679a545cb805382c97582dffa3fda4dbc438c81f.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2 into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2: Designer: Block QEvent::WinIdChange. QUrl::setUrl should call detach qkeymapper_x11.cpp: fix compilation with LSB and without XKB
-rw-r--r--src/corelib/io/qurl.cpp1
-rw-r--r--src/gui/kernel/qkeymapper_x11.cpp15
-rw-r--r--tests/auto/qurl/tst_qurl.cpp8
-rw-r--r--tools/designer/src/components/formeditor/formwindowmanager.cpp1
4 files changed, 17 insertions, 8 deletions
diff --git a/src/corelib/io/qurl.cpp b/src/corelib/io/qurl.cpp
index 6a3037d..45f908d 100644
--- a/src/corelib/io/qurl.cpp
+++ b/src/corelib/io/qurl.cpp
@@ -4262,6 +4262,7 @@ void QUrl::setUrl(const QString &url)
*/
void QUrl::setUrl(const QString &url, ParsingMode parsingMode)
{
+ detach();
// escape all reserved characters and delimiters
// reserved = gen-delims / sub-delims
if (parsingMode != TolerantMode) {
diff --git a/src/gui/kernel/qkeymapper_x11.cpp b/src/gui/kernel/qkeymapper_x11.cpp
index 825edbc..e085d11 100644
--- a/src/gui/kernel/qkeymapper_x11.cpp
+++ b/src/gui/kernel/qkeymapper_x11.cpp
@@ -61,13 +61,6 @@
#include <ctype.h>
-QT_BEGIN_NAMESPACE
-
-#ifndef QT_NO_XKB
-
-// bring in the auto-generated xkbLayoutData
-#include "qkeymapper_x11_p.cpp"
-
#ifdef QT_LINUXBASE
// LSB's IsKeypadKey define is wrong - see
// http://bugs.linuxbase.org/show_bug.cgi?id=2521
@@ -80,6 +73,13 @@ QT_BEGIN_NAMESPACE
(((KeySym)(keysym) >= 0x11000000) && ((KeySym)(keysym) <= 0x1100FFFF))
#endif
+QT_BEGIN_NAMESPACE
+
+#ifndef QT_NO_XKB
+
+// bring in the auto-generated xkbLayoutData
+#include "qkeymapper_x11_p.cpp"
+
QLocale q_getKeyboardLocale(const QByteArray &layoutName, const QByteArray &variantName)
{
int i = 0;
@@ -92,7 +92,6 @@ QLocale q_getKeyboardLocale(const QByteArray &layoutName, const QByteArray &vari
}
#endif // QT_NO_XKB
-
// from qapplication_x11.cpp
extern uchar qt_alt_mask;
extern uchar qt_meta_mask;
diff --git a/tests/auto/qurl/tst_qurl.cpp b/tests/auto/qurl/tst_qurl.cpp
index 63f9721..4354ffb 100644
--- a/tests/auto/qurl/tst_qurl.cpp
+++ b/tests/auto/qurl/tst_qurl.cpp
@@ -675,6 +675,14 @@ void tst_QUrl::setUrl()
QCOMPARE(url.encodedPath().constData(), "text/javascript,d5%20%3D%20'five%5Cu0027s'%3B");
}
+ { //check it calls detach
+ QUrl u1("http://aaa.com");
+ QUrl u2 = u1;
+ u2.setUrl("http://bbb.com");
+ QCOMPARE(u1.host(), QString::fromLatin1("aaa.com"));
+ QCOMPARE(u2.host(), QString::fromLatin1("bbb.com"));
+ }
+
/*
The tests below are copied from kdelibs/kdecore/tests/kurltest.cpp (an old version of)
diff --git a/tools/designer/src/components/formeditor/formwindowmanager.cpp b/tools/designer/src/components/formeditor/formwindowmanager.cpp
index ce809ff..ed854cf 100644
--- a/tools/designer/src/components/formeditor/formwindowmanager.cpp
+++ b/tools/designer/src/components/formeditor/formwindowmanager.cpp
@@ -192,6 +192,7 @@ bool FormWindowManager::eventFilter(QObject *o, QEvent *e)
case QEvent::ToolTip:
case QEvent::WhatsThis:
case QEvent::WhatsThisClicked:
+ case QEvent::WinIdChange:
case QEvent::DynamicPropertyChange:
case QEvent::HoverEnter:
case QEvent::HoverLeave: