summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-01-08 02:23:15 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-01-08 02:23:15 (GMT)
commit2bddf15b87a9e27bfdcbc3aec5d79da49f070c15 (patch)
tree15bfb4b167e2594453ea22b2cde0433197e6e47b
parent8ca64c4ea1484321ebaade018369fe33bcfcb02e (diff)
parent706b0ed0555b708c52e1ac9c9e8cb747a92a23c7 (diff)
downloadQt-2bddf15b87a9e27bfdcbc3aec5d79da49f070c15.zip
Qt-2bddf15b87a9e27bfdcbc3aec5d79da49f070c15.tar.gz
Qt-2bddf15b87a9e27bfdcbc3aec5d79da49f070c15.tar.bz2
Merge branch 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration into master-integration
* 'qt-master-from-4.7' of scm.dev.nokia.troll.no:qt/qt-integration: QmlViewer: Remove unused class variables Fixed bug and performance problem in windowsstyle. Restored old flushing behavior in -graphicssystem opengl on desktop. Fix KERN-EXEC 0 panic on exit when bearer is searching for WLANs 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--src/gui/styles/qwindowsstyle.cpp4
-rw-r--r--src/opengl/qwindowsurface_gl.cpp7
-rw-r--r--src/plugins/bearer/symbian/symbianengine.cpp6
-rw-r--r--tests/auto/qurl/tst_qurl.cpp8
-rw-r--r--tools/designer/src/components/formeditor/formwindowmanager.cpp1
-rw-r--r--tools/qml/qmlruntime.h2
8 files changed, 27 insertions, 17 deletions
diff --git a/src/corelib/io/qurl.cpp b/src/corelib/io/qurl.cpp
index 6ec5562..b39867c 100644
--- a/src/corelib/io/qurl.cpp
+++ b/src/corelib/io/qurl.cpp
@@ -4309,6 +4309,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/src/gui/styles/qwindowsstyle.cpp b/src/gui/styles/qwindowsstyle.cpp
index 2604f1f..b85537b 100644
--- a/src/gui/styles/qwindowsstyle.cpp
+++ b/src/gui/styles/qwindowsstyle.cpp
@@ -1395,8 +1395,8 @@ void QWindowsStyle::drawPrimitive(PrimitiveElement pe, const QStyleOption *opt,
if (!QPixmapCache::find(pixmapName, pixmap)) {
int border = size/5;
int sqsize = 2*(size/2);
- QImage image(sqsize, sqsize, QImage::Format_ARGB32);
- image.fill(Qt::transparent);
+ QImage image(sqsize, sqsize, QImage::Format_ARGB32_Premultiplied);
+ image.fill(0);
QPainter imagePainter(&image);
QPolygon a;
diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp
index 2876906..81575e3 100644
--- a/src/opengl/qwindowsurface_gl.cpp
+++ b/src/opengl/qwindowsurface_gl.cpp
@@ -550,9 +550,10 @@ void QGLWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoint &
// did_paint is set to true in ::beginPaint. ::beginPaint means that we
// at least cleared the background (= painted something). In EGL API it's a
- // mistakte to call swapBuffers if nothing was painted. This check protects
- // the flush func from being executed if it's for nothing.
- if (!d_ptr->did_paint)
+ // mistake to call swapBuffers if nothing was painted unless
+ // EGL_BUFFER_PRESERVED is set. This check protects the flush func from
+ // being executed if it's for nothing.
+ if (!hasPartialUpdateSupport() && !d_ptr->did_paint)
return;
QWidget *parent = widget->internalWinId() ? widget : widget->nativeParentWidget();
diff --git a/src/plugins/bearer/symbian/symbianengine.cpp b/src/plugins/bearer/symbian/symbianengine.cpp
index f025d86..a370d78 100644
--- a/src/plugins/bearer/symbian/symbianengine.cpp
+++ b/src/plugins/bearer/symbian/symbianengine.cpp
@@ -144,6 +144,10 @@ SymbianEngine::~SymbianEngine()
{
Cancel();
+ //The scanner may be using the connection monitor so it needs to be
+ //deleted first while the handle is still valid.
+ delete ipAccessPointsAvailabilityScanner;
+
iConnectionMonitor.CancelNotifications();
iConnectionMonitor.Close();
@@ -151,8 +155,6 @@ SymbianEngine::~SymbianEngine()
iCmManager.Close();
#endif
- delete ipAccessPointsAvailabilityScanner;
-
// CCommsDatabase destructor uses cleanup stack. Since QNetworkConfigurationManager
// is a global static, but the time we are here, E32Main() has been exited already and
// the thread's default cleanup stack has been deleted. Without this line, a
diff --git a/tests/auto/qurl/tst_qurl.cpp b/tests/auto/qurl/tst_qurl.cpp
index c089a59..a00ccf9 100644
--- a/tests/auto/qurl/tst_qurl.cpp
+++ b/tests/auto/qurl/tst_qurl.cpp
@@ -679,6 +679,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:
diff --git a/tools/qml/qmlruntime.h b/tools/qml/qmlruntime.h
index b43aa54..a70ffc9 100644
--- a/tools/qml/qmlruntime.h
+++ b/tools/qml/qmlruntime.h
@@ -188,8 +188,6 @@ private:
ScriptOptions m_scriptOptions;
QDeclarativeTester *tester;
- QNetworkReply *wgtreply;
- QString wgtdir;
NetworkAccessManagerFactory *namFactory;
bool useQmlFileBrowser;