From 8669823d5a5c0f26ff3909ad9c83fa99a63a89f3 Mon Sep 17 00:00:00 2001
From: Tom Cooksey <thomas.cooksey@nokia.com>
Date: Fri, 23 Apr 2010 15:08:17 +0200
Subject: Force full-screen updates for QGLWindowSurface

If the back buffer is destroyed when swap buffers is called, we must
tell the backing store any update needs to invalidate the entire
window surface, so everything gets re-drawn.

Task-number: QTBUG-9978
Reviewed-By: Trond
---
 src/opengl/qwindowsurface_gl.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp
index b693245..bcb96fa 100644
--- a/src/opengl/qwindowsurface_gl.cpp
+++ b/src/opengl/qwindowsurface_gl.cpp
@@ -82,7 +82,7 @@
 #define GLX_SAMPLES_ARB         100001
 #endif
 
-#ifdef QT_OPENGL_ES
+#ifndef QT_NO_EGL
 #include <private/qeglcontext_p.h>
 #endif
 
@@ -354,6 +354,11 @@ void QGLWindowSurface::hijackWindow(QWidget *widget)
     QGLContext *ctx = new QGLContext(surfaceFormat, widget);
     ctx->create(qt_gl_share_widget()->context());
 
+#ifndef QT_NO_EGL
+    if (ctx->d_func()->eglContext->configAttrib(EGL_SWAP_BEHAVIOR) != EGL_BUFFER_PRESERVED)
+        setPartialUpdateSupport(false); // Force full-screen updates
+#endif
+
     widgetPrivate->extraData()->glContext = ctx;
 
     union { QGLContext **ctxPtr; void **voidPtr; };
-- 
cgit v0.12


From 372392153a2c1de69d9257753ba84f44cbbd9cf1 Mon Sep 17 00:00:00 2001
From: Tom Cooksey <thomas.cooksey@nokia.com>
Date: Fri, 23 Apr 2010 15:24:19 +0200
Subject: Enable QX11GLWindowSurface using "-graphicssystem x11gl" option

When the OpenGL graphics system is in X11GL mode, it will use the
QX11GLWindowSurface for all widgets except QGraphicsViews with the
FullViewportUpdate update mode set, where it will use the regular
QGLWindowSurface, as this is probabbly faster.

QX11GLWindowSurface differs from QGLWindowSurface because it allows
accelerated scrolling and partial updates, while still being using
opengl to do rendering.

Task-number: QT-280
Task-number: QT-2625
Reviewed-By: Trond
---
 src/opengl/qgraphicssystem_gl.cpp           | 22 ++++++++++++++--------
 src/opengl/qgraphicssystem_gl_p.h           |  4 +++-
 src/opengl/qpixmapdata_x11gl_egl.cpp        | 16 +++++++---------
 src/opengl/qwindowsurface_gl.cpp            |  4 ++--
 src/plugins/graphicssystems/opengl/main.cpp | 14 +++++++++++---
 5 files changed, 37 insertions(+), 23 deletions(-)

diff --git a/src/opengl/qgraphicssystem_gl.cpp b/src/opengl/qgraphicssystem_gl.cpp
index a282e4c..58cc28a 100644
--- a/src/opengl/qgraphicssystem_gl.cpp
+++ b/src/opengl/qgraphicssystem_gl.cpp
@@ -40,6 +40,7 @@
 ****************************************************************************/
 
 #include "qgraphicssystem_gl_p.h"
+#include <QGraphicsView>
 
 #include "private/qpixmap_raster_p.h"
 #include "private/qpixmapdata_gl_p.h"
@@ -47,7 +48,7 @@
 #include "private/qgl_p.h"
 #include <private/qwindowsurface_raster_p.h>
 
-#if defined(Q_WS_X11) && defined(QT_OPENGL_ES)
+#if defined(Q_WS_X11) && !defined(QT_NO_EGL)
 #include "private/qpixmapdata_x11gl_p.h"
 #include "private/qwindowsurface_x11gl_p.h"
 #endif
@@ -58,10 +59,6 @@ extern QGLWidget *qt_gl_getShareWidget();
 
 QPixmapData *QGLGraphicsSystem::createPixmapData(QPixmapData::PixelType type) const
 {
-#if defined(Q_WS_X11) && defined(QT_OPENGL_ES)
-    if (type == QPixmapData::PixmapType && QX11GLPixmapData::hasX11GLPixmaps())
-        return new QX11GLPixmapData();
-#endif
     return new QGLPixmapData(type);
 }
 
@@ -75,9 +72,18 @@ QWindowSurface *QGLGraphicsSystem::createWindowSurface(QWidget *widget) const
         return new QRasterWindowSurface(widget);
 #endif
 
-#if defined(Q_WS_X11) && defined(QT_OPENGL_ES)
-    if (QX11GLPixmapData::hasX11GLPixmaps())
-        return new QX11GLWindowSurface(widget);
+#if defined(Q_WS_X11) && !defined(QT_NO_EGL)
+    if (m_useX11GL && QX11GLPixmapData::hasX11GLPixmaps()) {
+        // If the widget is a QGraphicsView which will be re-drawing the entire
+        // scene each frame anyway, we should use QGLWindowSurface as this may
+        // provide proper buffer flipping, which should be faster than QX11GL's
+        // blitting approach:
+        QGraphicsView* qgv = qobject_cast<QGraphicsView*>(widget);
+        if (qgv && qgv->viewportUpdateMode() == QGraphicsView::FullViewportUpdate)
+            return new QGLWindowSurface(widget);
+        else
+            return new QX11GLWindowSurface(widget);
+    }
 #endif
 
     return new QGLWindowSurface(widget);
diff --git a/src/opengl/qgraphicssystem_gl_p.h b/src/opengl/qgraphicssystem_gl_p.h
index ff47854..9d2d506 100644
--- a/src/opengl/qgraphicssystem_gl_p.h
+++ b/src/opengl/qgraphicssystem_gl_p.h
@@ -62,10 +62,12 @@ QT_BEGIN_NAMESPACE
 class Q_OPENGL_EXPORT QGLGraphicsSystem : public QGraphicsSystem
 {
 public:
-    QGLGraphicsSystem();
+    QGLGraphicsSystem(bool useX11GL);
 
     QPixmapData *createPixmapData(QPixmapData::PixelType type) const;
     QWindowSurface *createWindowSurface(QWidget *widget) const;
+private:
+    bool m_useX11GL;
 };
 
 QT_END_NAMESPACE
diff --git a/src/opengl/qpixmapdata_x11gl_egl.cpp b/src/opengl/qpixmapdata_x11gl_egl.cpp
index 58d34fc..e0c274a 100644
--- a/src/opengl/qpixmapdata_x11gl_egl.cpp
+++ b/src/opengl/qpixmapdata_x11gl_egl.cpp
@@ -216,18 +216,16 @@ QX11GLSharedContexts* QX11GLPixmapData::sharedContexts()
 
 bool QX11GLPixmapData::hasX11GLPixmaps()
 {
-    static bool checkedForX11Pixmaps = false;
-    static bool haveX11Pixmaps = false;
+    static bool checkedForX11GLPixmaps = false;
+    static bool haveX11GLPixmaps = false;
 
-    if (checkedForX11Pixmaps)
-        return haveX11Pixmaps;
+    if (checkedForX11GLPixmaps)
+        return haveX11GLPixmaps;
 
-    checkedForX11Pixmaps = true;
+    checkedForX11GLPixmaps = true;
+    haveX11GLPixmaps = sharedContexts()->isValid();
 
-    if (!qgetenv("QT_USE_X11GL_PIXMAPS").isEmpty() && sharedContexts()->isValid())
-        haveX11Pixmaps = true;
-
-    return haveX11Pixmaps;
+    return haveX11GLPixmaps;
 }
 
 QX11GLPixmapData::QX11GLPixmapData()
diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp
index bcb96fa..92a347b 100644
--- a/src/opengl/qwindowsurface_gl.cpp
+++ b/src/opengl/qwindowsurface_gl.cpp
@@ -94,8 +94,8 @@ QT_BEGIN_NAMESPACE
 #ifdef Q_WS_WIN
 extern Q_GUI_EXPORT bool qt_win_owndc_required;
 #endif
-QGLGraphicsSystem::QGLGraphicsSystem()
-    : QGraphicsSystem()
+QGLGraphicsSystem::QGLGraphicsSystem(bool useX11GL)
+    : QGraphicsSystem(), m_useX11GL(useX11GL)
 {
     QGLWindowSurface::surfaceFormat.setSampleBuffers(true);
 #if defined(Q_WS_X11) && !defined(QT_OPENGL_ES)
diff --git a/src/plugins/graphicssystems/opengl/main.cpp b/src/plugins/graphicssystems/opengl/main.cpp
index abcfb7f..4c740ca 100644
--- a/src/plugins/graphicssystems/opengl/main.cpp
+++ b/src/plugins/graphicssystems/opengl/main.cpp
@@ -59,6 +59,9 @@ QStringList QGLGraphicsSystemPlugin::keys() const
 #if !defined(QT_OPENGL_ES_1)
     list << QLatin1String("OpenGL2");
 #endif
+#if defined(Q_WS_X11) && !defined(QT_NO_EGL)
+    list << QLatin1String("X11GL");
+#endif
     return list;
 }
 
@@ -66,18 +69,23 @@ QGraphicsSystem* QGLGraphicsSystemPlugin::create(const QString& system)
 {
     if (system.toLower() == QLatin1String("opengl1")) {
         QGL::setPreferredPaintEngine(QPaintEngine::OpenGL);
-        return new QGLGraphicsSystem;
+        return new QGLGraphicsSystem(false);
     }
 
 #if !defined(QT_OPENGL_ES_1)
     if (system.toLower() == QLatin1String("opengl2")) {
         QGL::setPreferredPaintEngine(QPaintEngine::OpenGL2);
-        return new QGLGraphicsSystem;
+        return new QGLGraphicsSystem(false);
     }
 #endif
 
+#if defined(Q_WS_X11) && !defined(QT_NO_EGL)
+    if (system.toLower() == QLatin1String("x11gl"))
+        return new QGLGraphicsSystem(true);
+#endif
+
     if (system.toLower() == QLatin1String("opengl"))
-        return new QGLGraphicsSystem;
+        return new QGLGraphicsSystem(false);
 
     return 0;
 }
-- 
cgit v0.12


From bdd7372edf4cb64177e97ef6087a6ec2a4903225 Mon Sep 17 00:00:00 2001
From: Tom Cooksey <thomas.cooksey@nokia.com>
Date: Fri, 23 Apr 2010 17:21:39 +0200
Subject: Don't leak objects if QX11GLSharedContexts is instanciated twice

If two threads call the Q_GLOBAL_STATIC accessor at the same time,
two QX11GLSharedContexts objects can be created with one being
destroyed.

Reviewed-By: TrustMe
---
 src/opengl/qpixmapdata_x11gl_egl.cpp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/opengl/qpixmapdata_x11gl_egl.cpp b/src/opengl/qpixmapdata_x11gl_egl.cpp
index e0c274a..2c11a0b 100644
--- a/src/opengl/qpixmapdata_x11gl_egl.cpp
+++ b/src/opengl/qpixmapdata_x11gl_egl.cpp
@@ -74,7 +74,6 @@ public:
         EGLint rgbConfigId;
         EGLint argbConfigId;
 
-
         do {
             EGLConfig rgbConfig = QEgl::defaultConfig(QInternal::Pixmap, QEgl::OpenGL, QEgl::Renderable);
             EGLConfig argbConfig = QEgl::defaultConfig(QInternal::Pixmap, QEgl::OpenGL,
@@ -138,6 +137,7 @@ public:
                 valid = argbContext->makeCurrent(argbPixmapSurface);
                 argbContext->doneCurrent();
                 eglDestroySurface(QEgl::display(), argbPixmapSurface);
+                argbPixmapData->gl_surface = 0;
             }
 
             if (!valid) {
@@ -150,7 +150,6 @@ public:
             QGLTextureCache::instance();
         } while(0);
 
-
         if (!valid)
             cleanup();
         else
@@ -158,6 +157,10 @@ public:
 
     }
 
+    ~QX11GLSharedContexts() {
+        cleanup();
+    }
+
     void cleanup() {
         if (sharedQGLContext) {
             delete sharedQGLContext;
@@ -222,8 +225,8 @@ bool QX11GLPixmapData::hasX11GLPixmaps()
     if (checkedForX11GLPixmaps)
         return haveX11GLPixmaps;
 
+    haveX11GLPixmaps = qt_x11gl_share_contexts()->isValid();
     checkedForX11GLPixmaps = true;
-    haveX11GLPixmaps = sharedContexts()->isValid();
 
     return haveX11GLPixmaps;
 }
-- 
cgit v0.12


From 89aa90f58e7df3c2f6b0f4b3d2bab65dca9cf140 Mon Sep 17 00:00:00 2001
From: Tom Cooksey <thomas.cooksey@nokia.com>
Date: Mon, 26 Apr 2010 10:42:14 +0200
Subject: Remove stray qDebug

Reviewed-By: TrustMe
---
 src/opengl/qgl_x11egl.cpp | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/opengl/qgl_x11egl.cpp b/src/opengl/qgl_x11egl.cpp
index c0b1515..9d28de0 100644
--- a/src/opengl/qgl_x11egl.cpp
+++ b/src/opengl/qgl_x11egl.cpp
@@ -351,7 +351,6 @@ void QGLWidgetPrivate::recreateEglSurface()
     }
 
     if (glcx->d_func()->eglSurface == EGL_NO_SURFACE) {
-        qDebug("Re-creating the surface");
         glcx->d_func()->eglSurface = glcx->d_func()->eglContext->createSurface(q);
         eglSurfaceWindowId = currentId;
     }
-- 
cgit v0.12


From 51c40fdceaa7caec60f8934d9f95dbff76d5ed8e Mon Sep 17 00:00:00 2001
From: Thiago Macieira <thiago.macieira@nokia.com>
Date: Mon, 19 Apr 2010 21:02:54 +0200
Subject: Don't rely on tryStart() to do job control.

It may fail but threads become available the next instant. Instead,
simply use our own currentLookups count.

Reviewed-by: Markus Goetz
---
 src/network/kernel/qhostinfo.cpp | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/network/kernel/qhostinfo.cpp b/src/network/kernel/qhostinfo.cpp
index 7e006e0..f287630 100644
--- a/src/network/kernel/qhostinfo.cpp
+++ b/src/network/kernel/qhostinfo.cpp
@@ -565,13 +565,11 @@ void QHostInfoLookupManager::work()
                 }
             }
 
-            if (scheduled && threadPool.tryStart(scheduled)) {
+            if (scheduled && currentLookups.size() < threadPool.maxThreadCount()) {
                 // runnable now running in new thread, track this in currentLookups
+                threadPool.start(scheduled);
                 iterator.remove();
                 currentLookups.append(scheduled);
-            } else if (scheduled) {
-                // wanted to start, but could not because thread pool is busy
-                break;
             } else {
                 // was postponed, continue iterating
                 continue;
-- 
cgit v0.12


From 9e46d92af90ed6fb5b98a1a043f7564ec1e67a94 Mon Sep 17 00:00:00 2001
From: Thiago Macieira <thiago.macieira@nokia.com>
Date: Mon, 19 Apr 2010 21:43:03 +0200
Subject: Ensure we stop the name lookups in QAbstractSocket if we abort().

If we're not even going to connect, there's no point in trying to get
the host resolution

Reviewed-By: Markus Goetz
---
 src/network/socket/qabstractsocket.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/network/socket/qabstractsocket.cpp b/src/network/socket/qabstractsocket.cpp
index 21cd0fd..b604e89 100644
--- a/src/network/socket/qabstractsocket.cpp
+++ b/src/network/socket/qabstractsocket.cpp
@@ -2382,6 +2382,10 @@ void QAbstractSocket::disconnectFromHostImplementation()
 #if defined(QABSTRACTSOCKET_DEBUG)
         qDebug("QAbstractSocket::disconnectFromHost() aborting immediately");
 #endif
+        if (d->state == HostLookupState) {
+            QHostInfo::abortHostLookup(d->hostLookupId);
+            d->hostLookupId = -1;
+        }
     } else {
         // Perhaps emit closing()
         if (d->state != ClosingState) {
-- 
cgit v0.12


From e7e38aa43dc57f206b7d64189a598f6f49b0d8d3 Mon Sep 17 00:00:00 2001
From: Frans Englich <frans.englich@nokia.com>
Date: Mon, 26 Apr 2010 14:22:26 +0200
Subject: Assigned a UID3 to qml.exe.

Allocated in S60 Team's wiki over UID3s in Qt.
---
 tools/qml/qml.pro | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/qml/qml.pro b/tools/qml/qml.pro
index 869907f..7a101d0 100644
--- a/tools/qml/qml.pro
+++ b/tools/qml/qml.pro
@@ -26,7 +26,7 @@ QT += scripttools \
     }
 }
 symbian {
-#    TARGET.UID3 =
+    TARGET.UID3 = 0x20021317
     include($$QT_SOURCE_TREE/examples/symbianpkgrules.pri)
     INCLUDEPATH += $$QT_SOURCE_TREE/examples/network/qftp/
     TARGET.EPOCHEAPSIZE = 0x20000 0x2000000
-- 
cgit v0.12


From 1c1f655d82e4af2ff98970472f687e55216e9fcf Mon Sep 17 00:00:00 2001
From: Robin Burchell <robin.burchell@collabora.co.uk>
Date: Mon, 26 Apr 2010 14:36:58 +0200
Subject: Don't use QList's begin() and end() where possible. This avoids an
 unnecessary iterator creation, which can speed up some cases.

Merge-request: 2371
Reviewed-by: Andreas Kling <andreas.kling@nokia.com>
---
 src/corelib/tools/qlist.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/corelib/tools/qlist.h b/src/corelib/tools/qlist.h
index 67f63f3..722744c 100644
--- a/src/corelib/tools/qlist.h
+++ b/src/corelib/tools/qlist.h
@@ -267,9 +267,9 @@ public:
     inline int count() const { return p.size(); }
     inline int length() const { return p.size(); } // Same as count()
     inline T& first() { Q_ASSERT(!isEmpty()); return *begin(); }
-    inline const T& first() const { Q_ASSERT(!isEmpty()); return *begin(); }
+    inline const T& first() const { Q_ASSERT(!isEmpty()); return at(0); }
     T& last() { Q_ASSERT(!isEmpty()); return *(--end()); }
-    const T& last() const { Q_ASSERT(!isEmpty()); return *(--end()); }
+    const T& last() const { Q_ASSERT(!isEmpty()); return at(count() - 1); }
     inline void removeFirst() { Q_ASSERT(!isEmpty()); erase(begin()); }
     inline void removeLast() { Q_ASSERT(!isEmpty()); erase(--end()); }
     inline bool startsWith(const T &t) const { return !isEmpty() && first() == t; }
-- 
cgit v0.12


From b50ab5629d81bd6ea3a1a420fd09dfd963382da8 Mon Sep 17 00:00:00 2001
From: Thomas Zander <t.zander@nokia.com>
Date: Mon, 26 Apr 2010 14:51:44 +0200
Subject: Revert "Add QML imports to s60installs.pro"

This reverts commit e1b1b11afbddbe260d4de61f20181ffd3b941996.

Seems this was not tested, it doesn't work.
---
 src/s60installs/s60installs.pro | 19 -------------------
 1 file changed, 19 deletions(-)

diff --git a/src/s60installs/s60installs.pro b/src/s60installs/s60installs.pro
index c3809b2..dfce7d2 100644
--- a/src/s60installs/s60installs.pro
+++ b/src/s60installs/s60installs.pro
@@ -143,25 +143,6 @@ symbian: {
 
     contains(QT_CONFIG, declarative): {
         qtlibraries.sources += $$QMAKE_LIBDIR_QT/QtDeclarative$${QT_LIBINFIX}.dll
-
-        widgetImport.sources = widgets.dll $$QT_BUILD_TREE/src/imports/widgets/qmldir
-        widgetImport.path = $$QT_IMPORTS_BASE_DIR/Qt/widgets
-        DEPLOYMENT += widgetImport
-
-        particlesImport.sources = particles.dll $$QT_BUILD_TREE/src/imports/particles/qmldir
-        particlesImport.path = $$QT_IMPORTS_BASE_DIR/Qt/labs/particles
-        DEPLOYMENT += particlesImport
-
-        contains(QT_CONFIG, webkit): {
-            webkitImport.sources = webkitqmlplugin.dll $$QT_BUILD_TREE/src/imports/webkit/qmldir
-            webkitImport.path = $$QT_IMPORTS_BASE_DIR/org/webkit
-            DEPLOYMENT += webkitImport
-        }
-        contains(QT_CONFIG, multimedia): {
-            multimediaImport.sources = multimedia.dll $$QT_BUILD_TREE/src/imports/multimedia/qmldir
-            multimediaImport.path = $$QT_IMPORTS_BASE_DIR/Qt/multimedia
-            DEPLOYMENT += multimediaImport
-        }
     }
 
     graphicssystems_plugins.path = c:$$QT_PLUGINS_BASE_DIR/graphicssystems
-- 
cgit v0.12


From 1558dcdc98f21c3bcf9e394dec98e13ae8665401 Mon Sep 17 00:00:00 2001
From: Thomas Zander <t.zander@nokia.com>
Date: Mon, 26 Apr 2010 15:17:45 +0200
Subject: Fix typo

Reviewed-by: TrustMe
---
 bin/createpackage.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/createpackage.pl b/bin/createpackage.pl
index 23fe26d..e844767 100755
--- a/bin/createpackage.pl
+++ b/bin/createpackage.pl
@@ -68,7 +68,7 @@ Convenience script for creating signed packages you can install on your phone.
 
 Usage: createpackage.pl [options] templatepkg [target]-[platform] [certificate key [passphrase]]
 
-Where supported optiobns are as follows:
+Where supported options are as follows:
      [-i|install]            = Install the package right away using PC suite
      [-p|preprocess]         = Only preprocess the template .pkg file.
      [-c|certfile=<file>]    = The file containing certificate information for signing.
-- 
cgit v0.12


From 9b3dceaac61a48a4524e586705c50637f62993d2 Mon Sep 17 00:00:00 2001
From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Date: Tue, 20 Apr 2010 17:01:42 +0200
Subject: save a QFile::encodeName()

Reviewed-by: joao
---
 src/corelib/io/qfsfileengine_unix.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/corelib/io/qfsfileengine_unix.cpp b/src/corelib/io/qfsfileengine_unix.cpp
index 1415e44..5762d94 100644
--- a/src/corelib/io/qfsfileengine_unix.cpp
+++ b/src/corelib/io/qfsfileengine_unix.cpp
@@ -122,7 +122,7 @@ void QFSFileEnginePrivate::setSymbianError(int symbianError, QFile::FileError de
 
     Returns the stdlib open string corresponding to a QIODevice::OpenMode.
 */
-static inline QByteArray openModeToFopenMode(QIODevice::OpenMode flags, const QString &fileName)
+static inline QByteArray openModeToFopenMode(QIODevice::OpenMode flags, const QByteArray &fileName)
 {
     QByteArray mode;
     if ((flags & QIODevice::ReadOnly) && !(flags & QIODevice::Truncate)) {
@@ -130,7 +130,7 @@ static inline QByteArray openModeToFopenMode(QIODevice::OpenMode flags, const QS
         if (flags & QIODevice::WriteOnly) {
             QT_STATBUF statBuf;
             if (!fileName.isEmpty()
-                && QT_STAT(QFile::encodeName(fileName), &statBuf) == 0
+                && QT_STAT(fileName, &statBuf) == 0
                 && (statBuf.st_mode & S_IFMT) == S_IFREG) {
                 mode += '+';
             } else {
@@ -254,7 +254,7 @@ bool QFSFileEnginePrivate::nativeOpen(QIODevice::OpenMode openMode)
 
         fh = 0;
     } else {
-        QByteArray fopenMode = openModeToFopenMode(openMode, filePath);
+        QByteArray fopenMode = openModeToFopenMode(openMode, nativeFilePath.constData());
 
         // Try to open the file in buffered mode.
         do {
-- 
cgit v0.12


From 22c57db236d7cd72ea6c06dfd22c174d81cd8504 Mon Sep 17 00:00:00 2001
From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Date: Wed, 21 Apr 2010 13:05:37 +0200
Subject: add translator comment

---
 src/gui/kernel/qkeysequence.cpp | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gui/kernel/qkeysequence.cpp b/src/gui/kernel/qkeysequence.cpp
index 9efcc4e..931bc33 100644
--- a/src/gui/kernel/qkeysequence.cpp
+++ b/src/gui/kernel/qkeysequence.cpp
@@ -390,6 +390,9 @@ static const struct {
     int key;
     const char* name;
 } keyname[] = {
+    //: This and all following "incomprehensible" strings in QShortcut context
+    //: are key names. Please use the localized names appearing on actual
+    //: keyboards or whatever is commonly used.
     { Qt::Key_Space,        QT_TRANSLATE_NOOP("QShortcut", "Space") },
     { Qt::Key_Escape,       QT_TRANSLATE_NOOP("QShortcut", "Esc") },
     { Qt::Key_Tab,          QT_TRANSLATE_NOOP("QShortcut", "Tab") },
-- 
cgit v0.12


From 9b7c1eb6fbfab71cfd3ebe8cb5ded98141ae2304 Mon Sep 17 00:00:00 2001
From: Iain <qt-info@nokia.com>
Date: Mon, 26 Apr 2010 21:12:41 +0200
Subject: DEF file updates for BWINS and EABI for Symbian

Reviewed-by: TrustMe
---
 src/s60installs/bwins/QtCoreu.def        |  1 +
 src/s60installs/bwins/QtDeclarativeu.def | 82 +++++++++++++++++++++++---------
 src/s60installs/bwins/QtGuiu.def         | 13 +++--
 src/s60installs/bwins/QtNetworku.def     |  3 +-
 src/s60installs/bwins/QtOpenVGu.def      |  4 ++
 src/s60installs/eabi/QtCoreu.def         |  4 +-
 src/s60installs/eabi/QtDeclarativeu.def  | 58 ++++++++++++----------
 src/s60installs/eabi/QtGuiu.def          |  4 ++
 src/s60installs/eabi/QtNetworku.def      |  2 +-
 src/s60installs/eabi/QtOpenVGu.def       |  2 +
 10 files changed, 119 insertions(+), 54 deletions(-)

diff --git a/src/s60installs/bwins/QtCoreu.def b/src/s60installs/bwins/QtCoreu.def
index 8b2d7e8..d0a446b 100644
--- a/src/s60installs/bwins/QtCoreu.def
+++ b/src/s60installs/bwins/QtCoreu.def
@@ -4462,4 +4462,5 @@ EXPORTS
 	?parentChanged@QDeclarativeData@@2P6AXPAV1@PAVQObject@@1@ZA @ 4461 NONAME ABSENT ; void (*QDeclarativeData::parentChanged)(class QDeclarativeData *, class QObject *, class QObject *)
 	?parentChanged@QAbstractDeclarativeData@@2P6AXPAV1@PAVQObject@@1@ZA @ 4462 NONAME ; void (*QAbstractDeclarativeData::parentChanged)(class QAbstractDeclarativeData *, class QObject *, class QObject *)
 	?destroyed@QAbstractDeclarativeData@@2P6AXPAV1@PAVQObject@@@ZA @ 4463 NONAME ; void (*QAbstractDeclarativeData::destroyed)(class QAbstractDeclarativeData *, class QObject *)
+	?selectThread@QEventDispatcherSymbian@@AAEAAVQSelectThread@@XZ @ 4464 NONAME ; class QSelectThread & QEventDispatcherSymbian::selectThread(void)
 
diff --git a/src/s60installs/bwins/QtDeclarativeu.def b/src/s60installs/bwins/QtDeclarativeu.def
index 35cb06d..ec25b5c 100644
--- a/src/s60installs/bwins/QtDeclarativeu.def
+++ b/src/s60installs/bwins/QtDeclarativeu.def
@@ -107,7 +107,7 @@ EXPORTS
 	??0QDeclarativeImage@@IAE@AAVQDeclarativeImagePrivate@@PAVQDeclarativeItem@@@Z @ 106 NONAME ; QDeclarativeImage::QDeclarativeImage(class QDeclarativeImagePrivate &, class QDeclarativeItem *)
 	??0QDeclarativeImage@@QAE@PAVQDeclarativeItem@@@Z @ 107 NONAME ; QDeclarativeImage::QDeclarativeImage(class QDeclarativeItem *)
 	??0QDeclarativeImageBase@@IAE@AAVQDeclarativeImageBasePrivate@@PAVQDeclarativeItem@@@Z @ 108 NONAME ; QDeclarativeImageBase::QDeclarativeImageBase(class QDeclarativeImageBasePrivate &, class QDeclarativeItem *)
-	??0QDeclarativeInfo@@QAE@PBVQObject@@@Z @ 109 NONAME ; QDeclarativeInfo::QDeclarativeInfo(class QObject const *)
+	??0QDeclarativeInfo@@QAE@PBVQObject@@@Z @ 109 NONAME ABSENT ; QDeclarativeInfo::QDeclarativeInfo(class QObject const *)
 	??0QDeclarativeInstruction@@QAE@XZ @ 110 NONAME ; QDeclarativeInstruction::QDeclarativeInstruction(void)
 	??0QDeclarativeItem@@IAE@AAVQDeclarativeItemPrivate@@PAV0@@Z @ 111 NONAME ; QDeclarativeItem::QDeclarativeItem(class QDeclarativeItemPrivate &, class QDeclarativeItem *)
 	??0QDeclarativeItem@@QAE@PAV0@@Z @ 112 NONAME ; QDeclarativeItem::QDeclarativeItem(class QDeclarativeItem *)
@@ -400,7 +400,7 @@ EXPORTS
 	??8QDeclarativeProperty@@QBE_NABV0@@Z @ 399 NONAME ; bool QDeclarativeProperty::operator==(class QDeclarativeProperty const &) const
 	??AQDeclarativeOpenMetaObject@@QAEAAVQVariant@@ABVQByteArray@@@Z @ 400 NONAME ; class QVariant & QDeclarativeOpenMetaObject::operator[](class QByteArray const &)
 	??AQDeclarativePropertyMap@@QAEAAVQVariant@@ABVQString@@@Z @ 401 NONAME ; class QVariant & QDeclarativePropertyMap::operator[](class QString const &)
-	??AQDeclarativePropertyMap@@QBE?BVQVariant@@ABVQString@@@Z @ 402 NONAME ; class QVariant const QDeclarativePropertyMap::operator[](class QString const &) const
+	??AQDeclarativePropertyMap@@QBE?BVQVariant@@ABVQString@@@Z @ 402 NONAME ABSENT ; class QVariant const QDeclarativePropertyMap::operator[](class QString const &) const
 	??AQDeclarativeValueTypeFactory@@QBEPAVQDeclarativeValueType@@H@Z @ 403 NONAME ; class QDeclarativeValueType * QDeclarativeValueTypeFactory::operator[](int) const
 	??_EQDeclarativeAction@@QAE@I@Z @ 404 NONAME ; QDeclarativeAction::~QDeclarativeAction(unsigned int)
 	??_EQDeclarativeAnchorChanges@@UAE@I@Z @ 405 NONAME ; QDeclarativeAnchorChanges::~QDeclarativeAnchorChanges(unsigned int)
@@ -516,7 +516,7 @@ EXPORTS
 	??_EQPacket@@UAE@I@Z @ 515 NONAME ; QPacket::~QPacket(unsigned int)
 	??_EQPacketAutoSend@@UAE@I@Z @ 516 NONAME ; QPacketAutoSend::~QPacketAutoSend(unsigned int)
 	??_EQPacketProtocol@@UAE@I@Z @ 517 NONAME ; QPacketProtocol::~QPacketProtocol(unsigned int)
-	?__q_notify@QDeclarativeExpression@@AAEXXZ @ 518 NONAME ; void QDeclarativeExpression::__q_notify(void)
+	?__q_notify@QDeclarativeExpression@@AAEXXZ @ 518 NONAME ABSENT ; void QDeclarativeExpression::__q_notify(void)
 	?_q_createdPackage@QDeclarativeVisualDataModel@@AAEXHPAVQDeclarativePackage@@@Z @ 519 NONAME ; void QDeclarativeVisualDataModel::_q_createdPackage(int, class QDeclarativePackage *)
 	?_q_dataChanged@QDeclarativeVisualDataModel@@AAEXABVQModelIndex@@0@Z @ 520 NONAME ; void QDeclarativeVisualDataModel::_q_dataChanged(class QModelIndex const &, class QModelIndex const &)
 	?_q_destroyingPackage@QDeclarativeVisualDataModel@@AAEXPAVQDeclarativePackage@@@Z @ 521 NONAME ; void QDeclarativeVisualDataModel::_q_destroyingPackage(class QDeclarativePackage *)
@@ -650,7 +650,7 @@ EXPORTS
 	?buildPropertyInNamespace@QDeclarativeCompiler@@AAE_NPAUImportedNamespace@QDeclarativeEnginePrivate@@PAVProperty@QDeclarativeParser@@PAVObject@5@ABUBindingContext@1@@Z @ 649 NONAME ; bool QDeclarativeCompiler::buildPropertyInNamespace(struct QDeclarativeEnginePrivate::ImportedNamespace *, class QDeclarativeParser::Property *, class QDeclarativeParser::Object *, struct QDeclarativeCompiler::BindingContext const &)
 	?buildPropertyLiteralAssignment@QDeclarativeCompiler@@AAE_NPAVProperty@QDeclarativeParser@@PAVObject@3@PAVValue@3@ABUBindingContext@1@@Z @ 650 NONAME ; bool QDeclarativeCompiler::buildPropertyLiteralAssignment(class QDeclarativeParser::Property *, class QDeclarativeParser::Object *, class QDeclarativeParser::Value *, struct QDeclarativeCompiler::BindingContext const &)
 	?buildPropertyObjectAssignment@QDeclarativeCompiler@@AAE_NPAVProperty@QDeclarativeParser@@PAVObject@3@PAVValue@3@ABUBindingContext@1@@Z @ 651 NONAME ; bool QDeclarativeCompiler::buildPropertyObjectAssignment(class QDeclarativeParser::Property *, class QDeclarativeParser::Object *, class QDeclarativeParser::Value *, struct QDeclarativeCompiler::BindingContext const &)
-	?buildScript@QDeclarativeCompiler@@AAE_NPAVObject@QDeclarativeParser@@0@Z @ 652 NONAME ; bool QDeclarativeCompiler::buildScript(class QDeclarativeParser::Object *, class QDeclarativeParser::Object *)
+	?buildScript@QDeclarativeCompiler@@AAE_NPAVObject@QDeclarativeParser@@0@Z @ 652 NONAME ABSENT ; bool QDeclarativeCompiler::buildScript(class QDeclarativeParser::Object *, class QDeclarativeParser::Object *)
 	?buildScriptStringProperty@QDeclarativeCompiler@@AAE_NPAVProperty@QDeclarativeParser@@PAVObject@3@ABUBindingContext@1@@Z @ 653 NONAME ; bool QDeclarativeCompiler::buildScriptStringProperty(class QDeclarativeParser::Property *, class QDeclarativeParser::Object *, struct QDeclarativeCompiler::BindingContext const &)
 	?buildSignal@QDeclarativeCompiler@@AAE_NPAVProperty@QDeclarativeParser@@PAVObject@3@ABUBindingContext@1@@Z @ 654 NONAME ; bool QDeclarativeCompiler::buildSignal(class QDeclarativeParser::Property *, class QDeclarativeParser::Object *, struct QDeclarativeCompiler::BindingContext const &)
 	?buildSubObject@QDeclarativeCompiler@@AAE_NPAVObject@QDeclarativeParser@@ABUBindingContext@1@@Z @ 655 NONAME ; bool QDeclarativeCompiler::buildSubObject(class QDeclarativeParser::Object *, struct QDeclarativeCompiler::BindingContext const &)
@@ -663,7 +663,7 @@ EXPORTS
 	?canAppend@QDeclarativeListReference@@QBE_NXZ @ 662 NONAME ; bool QDeclarativeListReference::canAppend(void) const
 	?canAt@QDeclarativeListReference@@QBE_NXZ @ 663 NONAME ; bool QDeclarativeListReference::canAt(void) const
 	?canClear@QDeclarativeListReference@@QBE_NXZ @ 664 NONAME ; bool QDeclarativeListReference::canClear(void) const
-	?canCoerce@QDeclarativeCompiler@@AAE_NHH@Z @ 665 NONAME ; bool QDeclarativeCompiler::canCoerce(int, int)
+	?canCoerce@QDeclarativeCompiler@@AAE_NHH@Z @ 665 NONAME ABSENT ; bool QDeclarativeCompiler::canCoerce(int, int)
 	?canCoerce@QDeclarativeCompiler@@AAE_NHPAVObject@QDeclarativeParser@@@Z @ 666 NONAME ; bool QDeclarativeCompiler::canCoerce(int, class QDeclarativeParser::Object *)
 	?canCount@QDeclarativeListReference@@QBE_NXZ @ 667 NONAME ; bool QDeclarativeListReference::canCount(void) const
 	?cancel@QDeclarativePixmapCache@@SAXABVQUrl@@PAVQObject@@@Z @ 668 NONAME ; void QDeclarativePixmapCache::cancel(class QUrl const &, class QObject *)
@@ -825,7 +825,7 @@ EXPORTS
 	?create@QDeclarativeComponent@@UAEPAVQObject@@PAVQDeclarativeContext@@@Z @ 824 NONAME ; class QObject * QDeclarativeComponent::create(class QDeclarativeContext *)
 	?create@QDeclarativeType@@QBEPAVQObject@@XZ @ 825 NONAME ; class QObject * QDeclarativeType::create(void) const
 	?createCursor@QDeclarativeTextInput@@AAEXXZ @ 826 NONAME ; void QDeclarativeTextInput::createCursor(void)
-	?createObject@QDeclarativeComponent@@QAE?AVQScriptValue@@XZ @ 827 NONAME ; class QScriptValue QDeclarativeComponent::createObject(void)
+	?createObject@QDeclarativeComponent@@QAE?AVQScriptValue@@XZ @ 827 NONAME ABSENT ; class QScriptValue QDeclarativeComponent::createObject(void)
 	?createPlugin@QDeclarativeWebPage@@MAEPAVQObject@@ABVQString@@ABVQUrl@@ABVQStringList@@2@Z @ 828 NONAME ABSENT ; class QObject * QDeclarativeWebPage::createPlugin(class QString const &, class QUrl const &, class QStringList const &, class QStringList const &)
 	?createPointCache@QDeclarativePath@@ABEXXZ @ 829 NONAME ; void QDeclarativePath::createPointCache(void) const
 	?createProperty@QDeclarativeOpenMetaObject@@MAEHPBD0@Z @ 830 NONAME ; int QDeclarativeOpenMetaObject::createProperty(char const *, char const *)
@@ -1099,9 +1099,9 @@ EXPORTS
 	?eventFilter@QDeclarativeGraphicsObjectContainer@@MAE_NPAVQObject@@PAVQEvent@@@Z @ 1098 NONAME ABSENT ; bool QDeclarativeGraphicsObjectContainer::eventFilter(class QObject *, class QEvent *)
 	?eventFilter@QDeclarativeLoader@@MAE_NPAVQObject@@PAVQEvent@@@Z @ 1099 NONAME ; bool QDeclarativeLoader::eventFilter(class QObject *, class QEvent *)
 	?eventFilter@QDeclarativeSystemPalette@@EAE_NPAVQObject@@PAVQEvent@@@Z @ 1100 NONAME ; bool QDeclarativeSystemPalette::eventFilter(class QObject *, class QEvent *)
-	?execute@QDeclarativeAnchorChanges@@UAEXXZ @ 1101 NONAME ; void QDeclarativeAnchorChanges::execute(void)
-	?execute@QDeclarativeParentChange@@UAEXXZ @ 1102 NONAME ; void QDeclarativeParentChange::execute(void)
-	?execute@QDeclarativeStateChangeScript@@UAEXXZ @ 1103 NONAME ; void QDeclarativeStateChangeScript::execute(void)
+	?execute@QDeclarativeAnchorChanges@@UAEXXZ @ 1101 NONAME ABSENT ; void QDeclarativeAnchorChanges::execute(void)
+	?execute@QDeclarativeParentChange@@UAEXXZ @ 1102 NONAME ABSENT ; void QDeclarativeParentChange::execute(void)
+	?execute@QDeclarativeStateChangeScript@@UAEXXZ @ 1103 NONAME ABSENT ; void QDeclarativeStateChangeScript::execute(void)
 	?exited@QDeclarativeMouseArea@@IAEXXZ @ 1104 NONAME ; void QDeclarativeMouseArea::exited(void)
 	?expandToWebPage@QDeclarativeWebView@@AAEXXZ @ 1105 NONAME ABSENT ; void QDeclarativeWebView::expandToWebPage(void)
 	?expression@QDeclarativeDebugExpressionQuery@@QBE?AVQString@@XZ @ 1106 NONAME ; class QString QDeclarativeDebugExpressionQuery::expression(void) const
@@ -1781,7 +1781,7 @@ EXPORTS
 	?newWindowParent@QDeclarativeWebView@@QBEPAVQDeclarativeItem@@XZ @ 1780 NONAME ABSENT ; class QDeclarativeItem * QDeclarativeWebView::newWindowParent(void) const
 	?newWindowParentChanged@QDeclarativeWebView@@IAEXXZ @ 1781 NONAME ABSENT ; void QDeclarativeWebView::newWindowParentChanged(void)
 	?noteContentsSizeChanged@QDeclarativeWebView@@AAEXABVQSize@@@Z @ 1782 NONAME ABSENT ; void QDeclarativeWebView::noteContentsSizeChanged(class QSize const &)
-	?notifyOnServerStart@QDeclarativeDebugService@@SAXPAVQObject@@PBD@Z @ 1783 NONAME ; void QDeclarativeDebugService::notifyOnServerStart(class QObject *, char const *)
+	?notifyOnServerStart@QDeclarativeDebugService@@SAXPAVQObject@@PBD@Z @ 1783 NONAME ABSENT ; void QDeclarativeDebugService::notifyOnServerStart(class QObject *, char const *)
 	?notifyOnValueChanged@QDeclarativeExpression@@QBE_NXZ @ 1784 NONAME ; bool QDeclarativeExpression::notifyOnValueChanged(void) const
 	?notifySignal@QMetaPropertyBuilder@@QBE?AVQMetaMethodBuilder@@XZ @ 1785 NONAME ; class QMetaMethodBuilder QMetaPropertyBuilder::notifySignal(void) const
 	?number@QDeclarativeNumberFormatter@@QBEMXZ @ 1786 NONAME ABSENT ; float QDeclarativeNumberFormatter::number(void) const
@@ -2223,8 +2223,8 @@ EXPORTS
 	?restoreEntryValues@QDeclarativePropertyChanges@@QBE_NXZ @ 2222 NONAME ; bool QDeclarativePropertyChanges::restoreEntryValues(void) const
 	?result@QDeclarativeDebugExpressionQuery@@QBE?AVQVariant@@XZ @ 2223 NONAME ; class QVariant QDeclarativeDebugExpressionQuery::result(void) const
 	?returnType@QMetaMethodBuilder@@QBE?AVQByteArray@@XZ @ 2224 NONAME ; class QByteArray QMetaMethodBuilder::returnType(void) const
-	?reverse@QDeclarativeAnchorChanges@@UAEXXZ @ 2225 NONAME ; void QDeclarativeAnchorChanges::reverse(void)
-	?reverse@QDeclarativeParentChange@@UAEXXZ @ 2226 NONAME ; void QDeclarativeParentChange::reverse(void)
+	?reverse@QDeclarativeAnchorChanges@@UAEXXZ @ 2225 NONAME ABSENT ; void QDeclarativeAnchorChanges::reverse(void)
+	?reverse@QDeclarativeParentChange@@UAEXXZ @ 2226 NONAME ABSENT ; void QDeclarativeParentChange::reverse(void)
 	?reversible@QDeclarativeTransition@@QBE_NXZ @ 2227 NONAME ; bool QDeclarativeTransition::reversible(void) const
 	?reversingMode@QDeclarativeEaseFollow@@QBE?AW4ReversingMode@1@XZ @ 2228 NONAME ABSENT ; enum QDeclarativeEaseFollow::ReversingMode QDeclarativeEaseFollow::reversingMode(void) const
 	?reversingModeChanged@QDeclarativeEaseFollow@@IAEXXZ @ 2229 NONAME ABSENT ; void QDeclarativeEaseFollow::reversingModeChanged(void)
@@ -2243,7 +2243,7 @@ EXPORTS
 	?rootContext@QDeclarativeDebugRootContextQuery@@QBE?AVQDeclarativeDebugContextReference@@XZ @ 2242 NONAME ; class QDeclarativeDebugContextReference QDeclarativeDebugRootContextQuery::rootContext(void) const
 	?rootContext@QDeclarativeEngine@@QAEPAVQDeclarativeContext@@XZ @ 2243 NONAME ; class QDeclarativeContext * QDeclarativeEngine::rootContext(void)
 	?rootContext@QDeclarativeView@@QAEPAVQDeclarativeContext@@XZ @ 2244 NONAME ; class QDeclarativeContext * QDeclarativeView::rootContext(void)
-	?rootIndex@QDeclarativeVisualDataModel@@QBE?AVQModelIndex@@XZ @ 2245 NONAME ; class QModelIndex QDeclarativeVisualDataModel::rootIndex(void) const
+	?rootIndex@QDeclarativeVisualDataModel@@QBE?AVQModelIndex@@XZ @ 2245 NONAME ABSENT ; class QModelIndex QDeclarativeVisualDataModel::rootIndex(void) const
 	?rootIndexChanged@QDeclarativeVisualDataModel@@IAEXXZ @ 2246 NONAME ; void QDeclarativeVisualDataModel::rootIndexChanged(void)
 	?rootObject@QDeclarativeDomDocument@@QBE?AVQDeclarativeDomObject@@XZ @ 2247 NONAME ; class QDeclarativeDomObject QDeclarativeDomDocument::rootObject(void) const
 	?rootObject@QDeclarativeView@@QBEPAVQGraphicsObject@@XZ @ 2248 NONAME ; class QGraphicsObject * QDeclarativeView::rootObject(void) const
@@ -2553,7 +2553,7 @@ EXPORTS
 	?setRight@QDeclarativeAnchors@@QAEXABVQDeclarativeAnchorLine@@@Z @ 2552 NONAME ABSENT ; void QDeclarativeAnchors::setRight(class QDeclarativeAnchorLine const &)
 	?setRight@QDeclarativeScaleGrid@@QAEXH@Z @ 2553 NONAME ; void QDeclarativeScaleGrid::setRight(int)
 	?setRightMargin@QDeclarativeAnchors@@QAEXM@Z @ 2554 NONAME ; void QDeclarativeAnchors::setRightMargin(float)
-	?setRootIndex@QDeclarativeVisualDataModel@@QAEXABVQModelIndex@@@Z @ 2555 NONAME ; void QDeclarativeVisualDataModel::setRootIndex(class QModelIndex const &)
+	?setRootIndex@QDeclarativeVisualDataModel@@QAEXABVQModelIndex@@@Z @ 2555 NONAME ABSENT ; void QDeclarativeVisualDataModel::setRootIndex(class QModelIndex const &)
 	?setRootObject@QDeclarativeView@@MAEXPAVQObject@@@Z @ 2556 NONAME ; void QDeclarativeView::setRootObject(class QObject *)
 	?setRotation@QDeclarativeParentChange@@QAEXM@Z @ 2557 NONAME ; void QDeclarativeParentChange::setRotation(float)
 	?setRows@QDeclarativeGrid@@QAEXH@Z @ 2558 NONAME ; void QDeclarativeGrid::setRows(int)
@@ -2653,8 +2653,8 @@ EXPORTS
 	?setWidth@QDeclarativeItem@@QAEXM@Z @ 2652 NONAME ; void QDeclarativeItem::setWidth(float)
 	?setWidth@QDeclarativeParentChange@@QAEXM@Z @ 2653 NONAME ; void QDeclarativeParentChange::setWidth(float)
 	?setWidth@QDeclarativePen@@QAEXH@Z @ 2654 NONAME ; void QDeclarativePen::setWidth(int)
-	?setWrap@QDeclarativeText@@QAEX_N@Z @ 2655 NONAME ; void QDeclarativeText::setWrap(bool)
-	?setWrap@QDeclarativeTextEdit@@QAEX_N@Z @ 2656 NONAME ; void QDeclarativeTextEdit::setWrap(bool)
+	?setWrap@QDeclarativeText@@QAEX_N@Z @ 2655 NONAME ABSENT ; void QDeclarativeText::setWrap(bool)
+	?setWrap@QDeclarativeTextEdit@@QAEX_N@Z @ 2656 NONAME ABSENT ; void QDeclarativeTextEdit::setWrap(bool)
 	?setWrapEnabled@QDeclarativeGridView@@QAEX_N@Z @ 2657 NONAME ; void QDeclarativeGridView::setWrapEnabled(bool)
 	?setWrapEnabled@QDeclarativeListView@@QAEX_N@Z @ 2658 NONAME ; void QDeclarativeListView::setWrapEnabled(bool)
 	?setWritable@QMetaPropertyBuilder@@QAEX_N@Z @ 2659 NONAME ; void QMetaPropertyBuilder::setWritable(bool)
@@ -2681,7 +2681,7 @@ EXPORTS
 	?signature@QMetaMethodBuilder@@QBE?AVQByteArray@@XZ @ 2680 NONAME ; class QByteArray QMetaMethodBuilder::signature(void) const
 	?size@QDeclarativePropertyMap@@QBEHXZ @ 2681 NONAME ; int QDeclarativePropertyMap::size(void) const
 	?sizeChange@QDeclarativeGridView@@AAEXXZ @ 2682 NONAME ABSENT ; void QDeclarativeGridView::sizeChange(void)
-	?sizeChanged@QDeclarativeView@@AAEXXZ @ 2683 NONAME ; void QDeclarativeView::sizeChanged(void)
+	?sizeChanged@QDeclarativeView@@AAEXXZ @ 2683 NONAME ABSENT ; void QDeclarativeView::sizeChanged(void)
 	?sizeFFromString@QDeclarativeStringConverters@@YA?AVQSizeF@@ABVQString@@PA_N@Z @ 2684 NONAME ; class QSizeF QDeclarativeStringConverters::sizeFFromString(class QString const &, bool *)
 	?sizeHint@QDeclarativeView@@UBE?AVQSize@@XZ @ 2685 NONAME ; class QSize QDeclarativeView::sizeHint(void) const
 	?smooth@QDeclarativeItem@@QBE_NXZ @ 2686 NONAME ; bool QDeclarativeItem::smooth(void) const
@@ -3235,7 +3235,7 @@ EXPORTS
 	?url@QDeclarativePixmapReply@@QBEABVQUrl@@XZ @ 3234 NONAME ; class QUrl const & QDeclarativePixmapReply::url(void) const
 	?url@QDeclarativeWebView@@QBE?AVQUrl@@XZ @ 3235 NONAME ABSENT ; class QUrl QDeclarativeWebView::url(void) const
 	?urlChanged@QDeclarativeWebView@@IAEXXZ @ 3236 NONAME ABSENT ; void QDeclarativeWebView::urlChanged(void)
-	?usedAnchors@QDeclarativeAnchors@@QBE?AV?$QFlags@W4UsedAnchor@QDeclarativeAnchors@@@@XZ @ 3237 NONAME ; class QFlags<enum QDeclarativeAnchors::UsedAnchor> QDeclarativeAnchors::usedAnchors(void) const
+	?usedAnchors@QDeclarativeAnchors@@QBE?AV?$QFlags@W4UsedAnchor@QDeclarativeAnchors@@@@XZ @ 3237 NONAME ABSENT ; class QFlags<enum QDeclarativeAnchors::UsedAnchor> QDeclarativeAnchors::usedAnchors(void) const
 	?vAlign@QDeclarativeText@@QBE?AW4VAlignment@1@XZ @ 3238 NONAME ; enum QDeclarativeText::VAlignment QDeclarativeText::vAlign(void) const
 	?vAlign@QDeclarativeTextEdit@@QBE?AW4VAlignment@1@XZ @ 3239 NONAME ; enum QDeclarativeTextEdit::VAlignment QDeclarativeTextEdit::vAlign(void) const
 	?vHeight@QDeclarativeFlickable@@IBEMXZ @ 3240 NONAME ; float QDeclarativeFlickable::vHeight(void) const
@@ -3245,7 +3245,7 @@ EXPORTS
 	?value@QDeclarativeBind@@QBE?AVQVariant@@XZ @ 3244 NONAME ; class QVariant QDeclarativeBind::value(void) const
 	?value@QDeclarativeDebugPropertyReference@@QBE?AVQVariant@@XZ @ 3245 NONAME ; class QVariant QDeclarativeDebugPropertyReference::value(void) const
 	?value@QDeclarativeDomProperty@@QBE?AVQDeclarativeDomValue@@XZ @ 3246 NONAME ; class QDeclarativeDomValue QDeclarativeDomProperty::value(void) const
-	?value@QDeclarativeExpression@@QAE?AVQVariant@@PA_N@Z @ 3247 NONAME ; class QVariant QDeclarativeExpression::value(bool *)
+	?value@QDeclarativeExpression@@QAE?AVQVariant@@PA_N@Z @ 3247 NONAME ABSENT ; class QVariant QDeclarativeExpression::value(bool *)
 	?value@QDeclarativeOpenMetaObject@@QBE?AVQVariant@@ABVQByteArray@@@Z @ 3248 NONAME ; class QVariant QDeclarativeOpenMetaObject::value(class QByteArray const &) const
 	?value@QDeclarativeOpenMetaObject@@QBE?AVQVariant@@H@Z @ 3249 NONAME ; class QVariant QDeclarativeOpenMetaObject::value(int) const
 	?value@QDeclarativePathAttribute@@QBEMXZ @ 3250 NONAME ; float QDeclarativePathAttribute::value(void) const
@@ -3291,7 +3291,7 @@ EXPORTS
 	?viewportMoved@QDeclarativeGridView@@MAEXXZ @ 3290 NONAME ; void QDeclarativeGridView::viewportMoved(void)
 	?viewportMoved@QDeclarativeListView@@MAEXXZ @ 3291 NONAME ; void QDeclarativeListView::viewportMoved(void)
 	?visibleArea@QDeclarativeFlickable@@IAEPAVQDeclarativeFlickableVisibleArea@@XZ @ 3292 NONAME ; class QDeclarativeFlickableVisibleArea * QDeclarativeFlickable::visibleArea(void)
-	?waitForClients@QDeclarativeDebugService@@SAXXZ @ 3293 NONAME ; void QDeclarativeDebugService::waitForClients(void)
+	?waitForClients@QDeclarativeDebugService@@SAXXZ @ 3293 NONAME ABSENT ; void QDeclarativeDebugService::waitForClients(void)
 	?wantsFocus@QDeclarativeItem@@QBE_NXZ @ 3294 NONAME ; bool QDeclarativeItem::wantsFocus(void) const
 	?wantsFocusChanged@QDeclarativeItem@@IAEXXZ @ 3295 NONAME ABSENT ; void QDeclarativeItem::wantsFocusChanged(void)
 	?wheelEvent@QDeclarativeFlickable@@MAEXPAVQGraphicsSceneWheelEvent@@@Z @ 3296 NONAME ; void QDeclarativeFlickable::wheelEvent(class QGraphicsSceneWheelEvent *)
@@ -3307,8 +3307,8 @@ EXPORTS
 	?window@QDeclarativeSystemPalette@@QBE?AVQColor@@XZ @ 3306 NONAME ; class QColor QDeclarativeSystemPalette::window(void) const
 	?windowObjectCleared@QDeclarativeWebView@@AAEXXZ @ 3307 NONAME ABSENT ; void QDeclarativeWebView::windowObjectCleared(void)
 	?windowText@QDeclarativeSystemPalette@@QBE?AVQColor@@XZ @ 3308 NONAME ; class QColor QDeclarativeSystemPalette::windowText(void) const
-	?wrap@QDeclarativeText@@QBE_NXZ @ 3309 NONAME ; bool QDeclarativeText::wrap(void) const
-	?wrap@QDeclarativeTextEdit@@QBE_NXZ @ 3310 NONAME ; bool QDeclarativeTextEdit::wrap(void) const
+	?wrap@QDeclarativeText@@QBE_NXZ @ 3309 NONAME ABSENT ; bool QDeclarativeText::wrap(void) const
+	?wrap@QDeclarativeTextEdit@@QBE_NXZ @ 3310 NONAME ABSENT ; bool QDeclarativeTextEdit::wrap(void) const
 	?wrapChanged@QDeclarativeText@@IAEX_N@Z @ 3311 NONAME ABSENT ; void QDeclarativeText::wrapChanged(bool)
 	?wrapChanged@QDeclarativeTextEdit@@IAEX_N@Z @ 3312 NONAME ABSENT ; void QDeclarativeTextEdit::wrapChanged(bool)
 	?write@QDeclarativeBehavior@@UAEXABVQVariant@@@Z @ 3313 NONAME ; void QDeclarativeBehavior::write(class QVariant const &)
@@ -3917,4 +3917,42 @@ EXPORTS
 	?setFill@QDeclarativeAnchors@@QAEXPAVQGraphicsObject@@@Z @ 3916 NONAME ; void QDeclarativeAnchors::setFill(class QGraphicsObject *)
 	?trUtf8@QDeclarativePixmapCache@@SA?AVQString@@PBD0H@Z @ 3917 NONAME ; class QString QDeclarativePixmapCache::trUtf8(char const *, char const *, int)
 	?setCenterIn@QDeclarativeAnchors@@QAEXPAVQGraphicsObject@@@Z @ 3918 NONAME ; void QDeclarativeAnchors::setCenterIn(class QGraphicsObject *)
+	?execute@QDeclarativeParentChange@@UAEXW4Reason@QDeclarativeActionEvent@@@Z @ 3919 NONAME ; void QDeclarativeParentChange::execute(enum QDeclarativeActionEvent::Reason)
+	?resetSourceComponent@QDeclarativeLoader@@QAEXXZ @ 3920 NONAME ; void QDeclarativeLoader::resetSourceComponent(void)
+	?rootIndex@QDeclarativeVisualDataModel@@QBE?AVQVariant@@XZ @ 3921 NONAME ; class QVariant QDeclarativeVisualDataModel::rootIndex(void) const
+	?createObject@QDeclarativeComponent@@IAE?AVQScriptValue@@XZ @ 3922 NONAME ; class QScriptValue QDeclarativeComponent::createObject(void)
+	?execute@QDeclarativeStateChangeScript@@UAEXW4Reason@QDeclarativeActionEvent@@@Z @ 3923 NONAME ; void QDeclarativeStateChangeScript::execute(enum QDeclarativeActionEvent::Reason)
+	?active@QDeclarativeDrag@@QBE_NXZ @ 3924 NONAME ; bool QDeclarativeDrag::active(void) const
+	?retransformBack@QDeclarativeFlipable@@AAEXXZ @ 3925 NONAME ; void QDeclarativeFlipable::retransformBack(void)
+	?noCreationReason@QDeclarativeType@@QBE?AVQString@@XZ @ 3926 NONAME ; class QString QDeclarativeType::noCreationReason(void) const
+	?forceFocus@QDeclarativeItem@@QAEXXZ @ 3927 NONAME ; void QDeclarativeItem::forceFocus(void)
+	?evaluate@QDeclarativeExpression@@QAE?AVQVariant@@PA_N@Z @ 3928 NONAME ; class QVariant QDeclarativeExpression::evaluate(bool *)
+	??AQDeclarativePropertyMap@@QBE?AVQVariant@@ABVQString@@@Z @ 3929 NONAME ; class QVariant QDeclarativePropertyMap::operator[](class QString const &) const
+	?mousePositionChanged@QDeclarativeMouseArea@@IAEXPAVQDeclarativeMouseEvent@@@Z @ 3930 NONAME ; void QDeclarativeMouseArea::mousePositionChanged(class QDeclarativeMouseEvent *)
+	?reverse@QDeclarativeParentChange@@UAEXW4Reason@QDeclarativeActionEvent@@@Z @ 3931 NONAME ; void QDeclarativeParentChange::reverse(enum QDeclarativeActionEvent::Reason)
+	?boundsBehaviorChanged@QDeclarativeFlickable@@IAEXXZ @ 3932 NONAME ; void QDeclarativeFlickable::boundsBehaviorChanged(void)
+	??6QDeclarativeInfo@@QAEAAV0@ABVQUrl@@@Z @ 3933 NONAME ; class QDeclarativeInfo & QDeclarativeInfo::operator<<(class QUrl const &)
+	?hasDebuggingClient@QDeclarativeDebugService@@SA_NXZ @ 3934 NONAME ; bool QDeclarativeDebugService::hasDebuggingClient(void)
+	?animStopped@QDeclarativeGridView@@AAEXXZ @ 3935 NONAME ; void QDeclarativeGridView::animStopped(void)
+	?modelIndex@QDeclarativeVisualDataModel@@QBE?AVQVariant@@H@Z @ 3936 NONAME ; class QVariant QDeclarativeVisualDataModel::modelIndex(int) const
+	?transformChanged@QDeclarativeItemPrivate@@UAEXXZ @ 3937 NONAME ; void QDeclarativeItemPrivate::transformChanged(void)
+	?setRootIndex@QDeclarativeVisualDataModel@@QAEXABVQVariant@@@Z @ 3938 NONAME ; void QDeclarativeVisualDataModel::setRootIndex(class QVariant const &)
+	?boundsBehavior@QDeclarativeFlickable@@QBE?AW4BoundsBehavior@1@XZ @ 3939 NONAME ; enum QDeclarativeFlickable::BoundsBehavior QDeclarativeFlickable::boundsBehavior(void) const
+	?qmlInfo@@YA?AVQDeclarativeInfo@@PBVQObject@@ABV?$QList@VQDeclarativeError@@@@@Z @ 3940 NONAME ; class QDeclarativeInfo qmlInfo(class QObject const *, class QList<class QDeclarativeError> const &)
+	?setActive@QDeclarativeDrag@@QAEX_N@Z @ 3941 NONAME ; void QDeclarativeDrag::setActive(bool)
+	?setOutputWarningsToStandardError@QDeclarativeEngine@@QAEX_N@Z @ 3942 NONAME ; void QDeclarativeEngine::setOutputWarningsToStandardError(bool)
+	??0QDeclarativeInfo@@QAE@ABV0@@Z @ 3943 NONAME ; QDeclarativeInfo::QDeclarativeInfo(class QDeclarativeInfo const &)
+	?reverse@QDeclarativeAnchorChanges@@UAEXW4Reason@QDeclarativeActionEvent@@@Z @ 3944 NONAME ; void QDeclarativeAnchorChanges::reverse(enum QDeclarativeActionEvent::Reason)
+	?geometryChanged@QDeclarativeMouseArea@@MAEXABVQRectF@@0@Z @ 3945 NONAME ; void QDeclarativeMouseArea::geometryChanged(class QRectF const &, class QRectF const &)
+	?setBoundsBehavior@QDeclarativeFlickable@@QAEXW4BoundsBehavior@1@@Z @ 3946 NONAME ; void QDeclarativeFlickable::setBoundsBehavior(enum QDeclarativeFlickable::BoundsBehavior)
+	?outputWarningsToStandardError@QDeclarativeEngine@@QBE_NXZ @ 3947 NONAME ; bool QDeclarativeEngine::outputWarningsToStandardError(void) const
+	?execute@QDeclarativeAnchorChanges@@UAEXW4Reason@QDeclarativeActionEvent@@@Z @ 3948 NONAME ; void QDeclarativeAnchorChanges::execute(enum QDeclarativeActionEvent::Reason)
+	?qmlInfo@@YA?AVQDeclarativeInfo@@PBVQObject@@ABVQDeclarativeError@@@Z @ 3949 NONAME ; class QDeclarativeInfo qmlInfo(class QObject const *, class QDeclarativeError const &)
+	?error@QDeclarativeCustomParser@@IAEXABVQString@@@Z @ 3950 NONAME ; void QDeclarativeCustomParser::error(class QString const &)
+	?activeChanged@QDeclarativeDrag@@IAEXXZ @ 3951 NONAME ; void QDeclarativeDrag::activeChanged(void)
+	??0QDeclarativeInfo@@AAE@PAUQDeclarativeInfoPrivate@@@Z @ 3952 NONAME ; QDeclarativeInfo::QDeclarativeInfo(struct QDeclarativeInfoPrivate *)
+	?warnings@QDeclarativeEngine@@IAEXABV?$QList@VQDeclarativeError@@@@@Z @ 3953 NONAME ; void QDeclarativeEngine::warnings(class QList<class QDeclarativeError> const &)
+	?parentModelIndex@QDeclarativeVisualDataModel@@QBE?AVQVariant@@XZ @ 3954 NONAME ; class QVariant QDeclarativeVisualDataModel::parentModelIndex(void) const
+	?usedAnchors@QDeclarativeAnchors@@QBE?AV?$QFlags@W4Anchor@QDeclarativeAnchors@@@@XZ @ 3955 NONAME ; class QFlags<enum QDeclarativeAnchors::Anchor> QDeclarativeAnchors::usedAnchors(void) const
+	?eventFilter@QDeclarativeView@@MAE_NPAVQObject@@PAVQEvent@@@Z @ 3956 NONAME ; bool QDeclarativeView::eventFilter(class QObject *, class QEvent *)
 
diff --git a/src/s60installs/bwins/QtGuiu.def b/src/s60installs/bwins/QtGuiu.def
index b84585a..c3a3a08 100644
--- a/src/s60installs/bwins/QtGuiu.def
+++ b/src/s60installs/bwins/QtGuiu.def
@@ -12565,11 +12565,11 @@ EXPORTS
 	?setApi@QEglContext@@QAEXW4API@QEgl@@@Z @ 12564 NONAME ; void QEglContext::setApi(enum QEgl::API)
 	?makeCurrent@QEglContext@@QAE_NH@Z @ 12565 NONAME ; bool QEglContext::makeCurrent(int)
 	?createSurface@QEglContext@@QAEHPAVQPaintDevice@@PBVQEglProperties@@@Z @ 12566 NONAME ; int QEglContext::createSurface(class QPaintDevice *, class QEglProperties const *)
-	?dumpAllConfigs@QEglContext@@QAEXXZ @ 12567 NONAME ; void QEglContext::dumpAllConfigs(void)
+	?dumpAllConfigs@QEglContext@@QAEXXZ @ 12567 NONAME ABSENT ; void QEglContext::dumpAllConfigs(void)
 	?reduceConfiguration@QEglProperties@@QAE_NXZ @ 12568 NONAME ; bool QEglProperties::reduceConfiguration(void)
 	?removeValue@QEglProperties@@QAE_NH@Z @ 12569 NONAME ; bool QEglProperties::removeValue(int)
 	?toString@QEglProperties@@QBE?AVQString@@XZ @ 12570 NONAME ; class QString QEglProperties::toString(void) const
-	?dumpAllConfigs@QEglProperties@@SAXXZ @ 12571 NONAME ; void QEglProperties::dumpAllConfigs(void)
+	?dumpAllConfigs@QEglProperties@@SAXXZ @ 12571 NONAME ABSENT ; void QEglProperties::dumpAllConfigs(void)
 	?defaultDisplay@QEglContext@@SAHPAVQPaintDevice@@@Z @ 12572 NONAME ABSENT ; int QEglContext::defaultDisplay(class QPaintDevice *)
 	?configProperties@QEglContext@@QBE?AVQEglProperties@@H@Z @ 12573 NONAME ABSENT ; class QEglProperties QEglContext::configProperties(int) const
 	?properties@QEglProperties@@QBEPBHXZ @ 12574 NONAME ; int const * QEglProperties::properties(void) const
@@ -12597,10 +12597,10 @@ EXPORTS
 	?setConfig@QEglContext@@QAEXH@Z @ 12596 NONAME ; void QEglContext::setConfig(int)
 	?hasExtension@QEglContext@@SA_NPBD@Z @ 12597 NONAME ABSENT ; bool QEglContext::hasExtension(char const *)
 	?doneCurrent@QEglContext@@QAE_NXZ @ 12598 NONAME ; bool QEglContext::doneCurrent(void)
-	?display@QEglContext@@QBEHXZ @ 12599 NONAME ; int QEglContext::display(void) const
+	?display@QEglContext@@QBEHXZ @ 12599 NONAME ABSENT ; int QEglContext::display(void) const
 	?setPixelFormat@QEglProperties@@QAEXW4Format@QImage@@@Z @ 12600 NONAME ; void QEglProperties::setPixelFormat(enum QImage::Format)
 	?currentContext@QEglContext@@CAPAV1@W4API@QEgl@@@Z @ 12601 NONAME ; class QEglContext * QEglContext::currentContext(enum QEgl::API)
-	?errorString@QEglContext@@SA?AVQString@@H@Z @ 12602 NONAME ; class QString QEglContext::errorString(int)
+	?errorString@QEglContext@@SA?AVQString@@H@Z @ 12602 NONAME ABSENT ; class QString QEglContext::errorString(int)
 	?removeAllApplicationFonts@QFontDatabase@@SA_NXZ @ 12603 NONAME ; bool QFontDatabase::removeAllApplicationFonts()
 	??0FileInfo@QZipReader@@QAE@XZ @ 12604 NONAME ; QZipReader::FileInfo::FileInfo(void)
 	??0QAbstractScrollAreaPrivate@@QAE@XZ @ 12605 NONAME ; QAbstractScrollAreaPrivate::QAbstractScrollAreaPrivate(void)
@@ -12793,4 +12793,9 @@ EXPORTS
 	?setDeviceType@QEglProperties@@QAEXH@Z @ 12792 NONAME ; void QEglProperties::setDeviceType(int)
 	?glyphPadding@QTextureGlyphCache@@UBEHXZ @ 12793 NONAME ; int QTextureGlyphCache::glyphPadding(void) const
 	?createSurface@QEgl@@YAHPAVQPaintDevice@@HPBVQEglProperties@@@Z @ 12794 NONAME ; int QEgl::createSurface(class QPaintDevice *, int, class QEglProperties const *)
+	?setPartialUpdateSupport@QWindowSurface@@IAEX_N@Z @ 12795 NONAME ; void QWindowSurface::setPartialUpdateSupport(bool)
+	?transformChanged@QGraphicsItemPrivate@@UAEXXZ @ 12796 NONAME ; void QGraphicsItemPrivate::transformChanged(void)
+	?hasPartialUpdateSupport@QWindowSurface@@QBE_NXZ @ 12797 NONAME ; bool QWindowSurface::hasPartialUpdateSupport(void) const
+	?name@QIcon@@QBE?AVQString@@XZ @ 12798 NONAME ; class QString QIcon::name(void) const
+	?iconName@QIconEngineV2@@QAE?AVQString@@XZ @ 12799 NONAME ; class QString QIconEngineV2::iconName(void)
 
diff --git a/src/s60installs/bwins/QtNetworku.def b/src/s60installs/bwins/QtNetworku.def
index b4db510..9391ad5 100644
--- a/src/s60installs/bwins/QtNetworku.def
+++ b/src/s60installs/bwins/QtNetworku.def
@@ -1137,9 +1137,10 @@ EXPORTS
 	?networkAccessibleChanged@QNetworkAccessManager@@IAEXW4NetworkAccessibility@1@@Z @ 1136 NONAME ; void QNetworkAccessManager::networkAccessibleChanged(enum QNetworkAccessManager::NetworkAccessibility)
 	?networkSessionConnected@QNetworkAccessManager@@IAEXXZ @ 1137 NONAME ; void QNetworkAccessManager::networkSessionConnected(void)
 	?pollEngines@QNetworkConfigurationManagerPrivate@@AAEXXZ @ 1138 NONAME ; void QNetworkConfigurationManagerPrivate::pollEngines(void)
-	?qt_qhostinfo_clear_cache@@YAXXZ @ 1139 NONAME ; void qt_qhostinfo_clear_cache(void)
+	?qt_qhostinfo_clear_cache@@YAXXZ @ 1139 NONAME ABSENT ; void qt_qhostinfo_clear_cache(void)
 	?qt_qhostinfo_lookup@@YA?AVQHostInfo@@ABVQString@@PAVQObject@@PBDPA_NPAH@Z @ 1140 NONAME ; class QHostInfo qt_qhostinfo_lookup(class QString const &, class QObject *, char const *, bool *, int *)
 	?requiresPolling@QBearerEngine@@UBE_NXZ @ 1141 NONAME ; bool QBearerEngine::requiresPolling(void) const
 	?setNetworkAccessible@QNetworkAccessManager@@QAEXW4NetworkAccessibility@1@@Z @ 1142 NONAME ; void QNetworkAccessManager::setNetworkAccessible(enum QNetworkAccessManager::NetworkAccessibility)
 	?startPolling@QNetworkConfigurationManagerPrivate@@QAEXXZ @ 1143 NONAME ; void QNetworkConfigurationManagerPrivate::startPolling(void)
+	?capabilities@QNetworkConfigurationManagerPrivate@@QAE?AV?$QFlags@W4Capability@QNetworkConfigurationManager@@@@XZ @ 1144 NONAME ; class QFlags<enum QNetworkConfigurationManager::Capability> QNetworkConfigurationManagerPrivate::capabilities(void)
 
diff --git a/src/s60installs/bwins/QtOpenVGu.def b/src/s60installs/bwins/QtOpenVGu.def
index b32406b..28b9e62 100644
--- a/src/s60installs/bwins/QtOpenVGu.def
+++ b/src/s60installs/bwins/QtOpenVGu.def
@@ -167,4 +167,8 @@ EXPORTS
 	?drawStaticTextItem@QVGPaintEngine@@UAEXPAVQStaticTextItem@@@Z @ 166 NONAME ; void QVGPaintEngine::drawStaticTextItem(class QStaticTextItem *)
 	?drawPixmapFragments@QVGPaintEngine@@UAEXPBVPixmapFragment@QPainter@@HABVQPixmap@@V?$QFlags@W4PixmapFragmentHint@QPainter@@@@@Z @ 167 NONAME ; void QVGPaintEngine::drawPixmapFragments(class QPainter::PixmapFragment const *, int, class QPixmap const &, class QFlags<enum QPainter::PixmapFragmentHint>)
 	?drawCachedGlyphs@QVGPaintEngine@@QAE_NHPBIABVQFont@@PAVQFontEngine@@ABVQPointF@@@Z @ 168 NONAME ; bool QVGPaintEngine::drawCachedGlyphs(int, unsigned int const *, class QFont const &, class QFontEngine *, class QPointF const &)
+	?supportsStaticContents@QVGEGLWindowSurfaceDirect@@UBE_NXZ @ 169 NONAME ; bool QVGEGLWindowSurfaceDirect::supportsStaticContents(void) const
+	?scroll@QVGEGLWindowSurfacePrivate@@UAE_NPAVQWidget@@ABVQRegion@@HH@Z @ 170 NONAME ; bool QVGEGLWindowSurfacePrivate::scroll(class QWidget *, class QRegion const &, int, int)
+	?scroll@QVGEGLWindowSurfaceDirect@@UAE_NPAVQWidget@@ABVQRegion@@HH@Z @ 171 NONAME ; bool QVGEGLWindowSurfaceDirect::scroll(class QWidget *, class QRegion const &, int, int)
+	?supportsStaticContents@QVGEGLWindowSurfacePrivate@@UBE_NXZ @ 172 NONAME ; bool QVGEGLWindowSurfacePrivate::supportsStaticContents(void) const
 
diff --git a/src/s60installs/eabi/QtCoreu.def b/src/s60installs/eabi/QtCoreu.def
index caeac8d..daa9dc6 100644
--- a/src/s60installs/eabi/QtCoreu.def
+++ b/src/s60installs/eabi/QtCoreu.def
@@ -622,9 +622,9 @@ EXPORTS
 	_ZN14QObjectPrivate14deleteChildrenEv @ 621 NONAME
 	_ZN14QObjectPrivate14setDeleteWatchEPS_Pi @ 622 NONAME
 	_ZN14QObjectPrivate16resetDeleteWatchEPS_Pii @ 623 NONAME
-	_ZN14QObjectPrivate16setCurrentSenderEP7QObjectPNS_6SenderE @ 624 NONAME
+	_ZN14QObjectPrivate16setCurrentSenderEP7QObjectPNS_6SenderE @ 624 NONAME ABSENT
 	_ZN14QObjectPrivate16setParent_helperEP7QObject @ 625 NONAME
-	_ZN14QObjectPrivate18resetCurrentSenderEP7QObjectPNS_6SenderES3_ @ 626 NONAME
+	_ZN14QObjectPrivate18resetCurrentSenderEP7QObjectPNS_6SenderES3_ @ 626 NONAME ABSENT
 	_ZN14QObjectPrivate19_q_reregisterTimersEPv @ 627 NONAME
 	_ZN14QObjectPrivate19moveToThread_helperEv @ 628 NONAME
 	_ZN14QObjectPrivate20cleanConnectionListsEv @ 629 NONAME
diff --git a/src/s60installs/eabi/QtDeclarativeu.def b/src/s60installs/eabi/QtDeclarativeu.def
index 7ad123d..953d0a1 100644
--- a/src/s60installs/eabi/QtDeclarativeu.def
+++ b/src/s60installs/eabi/QtDeclarativeu.def
@@ -99,8 +99,8 @@ EXPORTS
 	_ZN16QDeclarativeGrid7setRowsEi @ 98 NONAME
 	_ZN16QDeclarativeGridC1EP16QDeclarativeItem @ 99 NONAME
 	_ZN16QDeclarativeGridC2EP16QDeclarativeItem @ 100 NONAME
-	_ZN16QDeclarativeInfoC1EPK7QObject @ 101 NONAME
-	_ZN16QDeclarativeInfoC2EPK7QObject @ 102 NONAME
+	_ZN16QDeclarativeInfoC1EPK7QObject @ 101 NONAME ABSENT
+	_ZN16QDeclarativeInfoC2EPK7QObject @ 102 NONAME ABSENT
 	_ZN16QDeclarativeInfoD1Ev @ 103 NONAME
 	_ZN16QDeclarativeInfoD2Ev @ 104 NONAME
 	_ZN16QDeclarativeItem10classBeginEv @ 105 NONAME
@@ -200,7 +200,7 @@ EXPORTS
 	_ZN16QDeclarativeText5paintEP8QPainterPK24QStyleOptionGraphicsItemP7QWidget @ 199 NONAME
 	_ZN16QDeclarativeText7setFontERK5QFont @ 200 NONAME
 	_ZN16QDeclarativeText7setTextERK7QString @ 201 NONAME
-	_ZN16QDeclarativeText7setWrapEb @ 202 NONAME
+	_ZN16QDeclarativeText7setWrapEb @ 202 NONAME ABSENT
 	_ZN16QDeclarativeText8setColorERK6QColor @ 203 NONAME
 	_ZN16QDeclarativeText8setStyleENS_9TextStyleE @ 204 NONAME
 	_ZN16QDeclarativeText9setHAlignENS_10HAlignmentE @ 205 NONAME
@@ -222,7 +222,7 @@ EXPORTS
 	_ZN16QDeclarativeView11qt_metacastEPKc @ 221 NONAME
 	_ZN16QDeclarativeView11resizeEventEP12QResizeEvent @ 222 NONAME
 	_ZN16QDeclarativeView11rootContextEv @ 223 NONAME
-	_ZN16QDeclarativeView11sizeChangedEv @ 224 NONAME
+	_ZN16QDeclarativeView11sizeChangedEv @ 224 NONAME ABSENT
 	_ZN16QDeclarativeView12sceneResizedE5QSize @ 225 NONAME
 	_ZN16QDeclarativeView13setResizeModeENS_10ResizeModeE @ 226 NONAME
 	_ZN16QDeclarativeView13setRootObjectEP7QObject @ 227 NONAME
@@ -547,7 +547,7 @@ EXPORTS
 	_ZN20QDeclarativeBehaviorD1Ev @ 546 NONAME
 	_ZN20QDeclarativeBehaviorD2Ev @ 547 NONAME
 	_ZN20QDeclarativeCompiler11buildObjectEPN18QDeclarativeParser6ObjectERKNS_14BindingContextE @ 548 NONAME
-	_ZN20QDeclarativeCompiler11buildScriptEPN18QDeclarativeParser6ObjectES2_ @ 549 NONAME
+	_ZN20QDeclarativeCompiler11buildScriptEPN18QDeclarativeParser6ObjectES2_ @ 549 NONAME ABSENT
 	_ZN20QDeclarativeCompiler11buildSignalEPN18QDeclarativeParser8PropertyEPNS0_6ObjectERKNS_14BindingContextE @ 550 NONAME
 	_ZN20QDeclarativeCompiler11compileTreeEPN18QDeclarativeParser6ObjectE @ 551 NONAME
 	_ZN20QDeclarativeCompiler12buildBindingEPN18QDeclarativeParser5ValueEPNS0_8PropertyERKNS_14BindingContextE @ 552 NONAME
@@ -597,7 +597,7 @@ EXPORTS
 	_ZN20QDeclarativeCompiler5resetEP24QDeclarativeCompiledData @ 596 NONAME
 	_ZN20QDeclarativeCompiler7compileEP18QDeclarativeEngineP29QDeclarativeCompositeTypeDataP24QDeclarativeCompiledData @ 597 NONAME
 	_ZN20QDeclarativeCompiler9canCoerceEiPN18QDeclarativeParser6ObjectE @ 598 NONAME
-	_ZN20QDeclarativeCompiler9canCoerceEii @ 599 NONAME
+	_ZN20QDeclarativeCompiler9canCoerceEii @ 599 NONAME ABSENT
 	_ZN20QDeclarativeCompiler9dumpStatsEv @ 600 NONAME
 	_ZN20QDeclarativeCompiler9genObjectEPN18QDeclarativeParser6ObjectE @ 601 NONAME
 	_ZN20QDeclarativeCompiler9toQmlTypeEPN18QDeclarativeParser6ObjectE @ 602 NONAME
@@ -946,7 +946,7 @@ EXPORTS
 	_ZN20QDeclarativeTextEdit5eventEP6QEvent @ 945 NONAME
 	_ZN20QDeclarativeTextEdit7setFontERK5QFont @ 946 NONAME
 	_ZN20QDeclarativeTextEdit7setTextERK7QString @ 947 NONAME
-	_ZN20QDeclarativeTextEdit7setWrapEb @ 948 NONAME
+	_ZN20QDeclarativeTextEdit7setWrapEb @ 948 NONAME ABSENT
 	_ZN20QDeclarativeTextEdit8setColorERK6QColor @ 949 NONAME
 	_ZN20QDeclarativeTextEdit9selectAllEv @ 950 NONAME
 	_ZN20QDeclarativeTextEdit9setHAlignENS_10HAlignmentE @ 951 NONAME
@@ -1283,7 +1283,7 @@ EXPORTS
 	_ZN22QDeclarativeDebugWatchD0Ev @ 1282 NONAME
 	_ZN22QDeclarativeDebugWatchD1Ev @ 1283 NONAME
 	_ZN22QDeclarativeDebugWatchD2Ev @ 1284 NONAME
-	_ZN22QDeclarativeExpression10__q_notifyEv @ 1285 NONAME
+	_ZN22QDeclarativeExpression10__q_notifyEv @ 1285 NONAME ABSENT
 	_ZN22QDeclarativeExpression10clearErrorEv @ 1286 NONAME
 	_ZN22QDeclarativeExpression11qt_metacallEN11QMetaObject4CallEiPPv @ 1287 NONAME
 	_ZN22QDeclarativeExpression11qt_metacastEPKc @ 1288 NONAME
@@ -1293,7 +1293,7 @@ EXPORTS
 	_ZN22QDeclarativeExpression17setSourceLocationERK7QStringi @ 1292 NONAME
 	_ZN22QDeclarativeExpression19getStaticMetaObjectEv @ 1293 NONAME
 	_ZN22QDeclarativeExpression23setNotifyOnValueChangedEb @ 1294 NONAME
-	_ZN22QDeclarativeExpression5valueEPb @ 1295 NONAME
+	_ZN22QDeclarativeExpression5valueEPb @ 1295 NONAME ABSENT
 	_ZN22QDeclarativeExpressionC1EP19QDeclarativeContextRK7QStringP7QObject @ 1296 NONAME
 	_ZN22QDeclarativeExpressionC1EP23QDeclarativeContextDataPvP20QDeclarativeRefCountP7QObjectRK7QStringiR29QDeclarativeExpressionPrivate @ 1297 NONAME
 	_ZN22QDeclarativeExpressionC1EP23QDeclarativeContextDataRK7QStringP7QObject @ 1298 NONAME
@@ -1573,12 +1573,12 @@ EXPORTS
 	_ZN24QDeclarativeDebugService11sendMessageERK10QByteArray @ 1572 NONAME
 	_ZN24QDeclarativeDebugService14enabledChangedEb @ 1573 NONAME
 	_ZN24QDeclarativeDebugService14objectToStringEP7QObject @ 1574 NONAME
-	_ZN24QDeclarativeDebugService14waitForClientsEv @ 1575 NONAME
+	_ZN24QDeclarativeDebugService14waitForClientsEv @ 1575 NONAME ABSENT
 	_ZN24QDeclarativeDebugService15messageReceivedERK10QByteArray @ 1576 NONAME
 	_ZN24QDeclarativeDebugService16staticMetaObjectE @ 1577 NONAME DATA 16
 	_ZN24QDeclarativeDebugService18isDebuggingEnabledEv @ 1578 NONAME
 	_ZN24QDeclarativeDebugService19getStaticMetaObjectEv @ 1579 NONAME
-	_ZN24QDeclarativeDebugService19notifyOnServerStartEP7QObjectPKc @ 1580 NONAME
+	_ZN24QDeclarativeDebugService19notifyOnServerStartEP7QObjectPKc @ 1580 NONAME ABSENT
 	_ZN24QDeclarativeDebugServiceC1ERK7QStringP7QObject @ 1581 NONAME
 	_ZN24QDeclarativeDebugServiceC2ERK7QStringP7QObject @ 1582 NONAME
 	_ZN24QDeclarativeDomComponentC1ERKS_ @ 1583 NONAME
@@ -1611,8 +1611,8 @@ EXPORTS
 	_ZN24QDeclarativeParentChange4setYEf @ 1610 NONAME
 	_ZN24QDeclarativeParentChange6rewindEv @ 1611 NONAME
 	_ZN24QDeclarativeParentChange7actionsEv @ 1612 NONAME
-	_ZN24QDeclarativeParentChange7executeEv @ 1613 NONAME
-	_ZN24QDeclarativeParentChange7reverseEv @ 1614 NONAME
+	_ZN24QDeclarativeParentChange7executeEv @ 1613 NONAME ABSENT
+	_ZN24QDeclarativeParentChange7reverseEv @ 1614 NONAME ABSENT
 	_ZN24QDeclarativeParentChange8overrideEP23QDeclarativeActionEvent @ 1615 NONAME
 	_ZN24QDeclarativeParentChange8setScaleEf @ 1616 NONAME
 	_ZN24QDeclarativeParentChange8setWidthEf @ 1617 NONAME
@@ -1721,8 +1721,8 @@ EXPORTS
 	_ZN25QDeclarativeAnchorChanges6rewindEv @ 1720 NONAME
 	_ZN25QDeclarativeAnchorChanges7actionsEv @ 1721 NONAME
 	_ZN25QDeclarativeAnchorChanges7anchorsEv @ 1722 NONAME
-	_ZN25QDeclarativeAnchorChanges7executeEv @ 1723 NONAME
-	_ZN25QDeclarativeAnchorChanges7reverseEv @ 1724 NONAME
+	_ZN25QDeclarativeAnchorChanges7executeEv @ 1723 NONAME ABSENT
+	_ZN25QDeclarativeAnchorChanges7reverseEv @ 1724 NONAME ABSENT
 	_ZN25QDeclarativeAnchorChanges8overrideEP23QDeclarativeActionEvent @ 1725 NONAME
 	_ZN25QDeclarativeAnchorChanges9setObjectEP16QDeclarativeItem @ 1726 NONAME
 	_ZN25QDeclarativeAnchorChangesC1EP7QObject @ 1727 NONAME
@@ -1918,7 +1918,7 @@ EXPORTS
 	_ZN27QDeclarativeVisualDataModel11stringValueEiRK7QString @ 1917 NONAME
 	_ZN27QDeclarativeVisualDataModel12_q_rowsMovedERK11QModelIndexiiS2_i @ 1918 NONAME
 	_ZN27QDeclarativeVisualDataModel12completeItemEv @ 1919 NONAME
-	_ZN27QDeclarativeVisualDataModel12setRootIndexERK11QModelIndex @ 1920 NONAME
+	_ZN27QDeclarativeVisualDataModel12setRootIndexERK11QModelIndex @ 1920 NONAME ABSENT
 	_ZN27QDeclarativeVisualDataModel13_q_itemsMovedEiii @ 1921 NONAME
 	_ZN27QDeclarativeVisualDataModel13_q_modelResetEv @ 1922 NONAME
 	_ZN27QDeclarativeVisualDataModel14_q_dataChangedERK11QModelIndexS2_ @ 1923 NONAME
@@ -2034,7 +2034,7 @@ EXPORTS
 	_ZN29QDeclarativeStateChangeScript16staticMetaObjectE @ 2033 NONAME DATA 16
 	_ZN29QDeclarativeStateChangeScript19getStaticMetaObjectEv @ 2034 NONAME
 	_ZN29QDeclarativeStateChangeScript7actionsEv @ 2035 NONAME
-	_ZN29QDeclarativeStateChangeScript7executeEv @ 2036 NONAME
+	_ZN29QDeclarativeStateChangeScript7executeEv @ 2036 NONAME ABSENT
 	_ZN29QDeclarativeStateChangeScript7setNameERK7QString @ 2037 NONAME
 	_ZN29QDeclarativeStateChangeScript9setScriptERK24QDeclarativeScriptString @ 2038 NONAME
 	_ZN29QDeclarativeStateChangeScriptC1EP7QObject @ 2039 NONAME
@@ -2234,7 +2234,7 @@ EXPORTS
 	_ZNK16QDeclarativeText10textFormatEv @ 2233 NONAME
 	_ZNK16QDeclarativeText4fontEv @ 2234 NONAME
 	_ZNK16QDeclarativeText4textEv @ 2235 NONAME
-	_ZNK16QDeclarativeText4wrapEv @ 2236 NONAME
+	_ZNK16QDeclarativeText4wrapEv @ 2236 NONAME ABSENT
 	_ZNK16QDeclarativeText5colorEv @ 2237 NONAME
 	_ZNK16QDeclarativeText5styleEv @ 2238 NONAME
 	_ZNK16QDeclarativeText6hAlignEv @ 2239 NONAME
@@ -2515,7 +2515,7 @@ EXPORTS
 	_ZNK20QDeclarativeTextEdit20textInteractionFlagsEv @ 2514 NONAME
 	_ZNK20QDeclarativeTextEdit4fontEv @ 2515 NONAME
 	_ZNK20QDeclarativeTextEdit4textEv @ 2516 NONAME
-	_ZNK20QDeclarativeTextEdit4wrapEv @ 2517 NONAME
+	_ZNK20QDeclarativeTextEdit4wrapEv @ 2517 NONAME ABSENT
 	_ZNK20QDeclarativeTextEdit5colorEv @ 2518 NONAME
 	_ZNK20QDeclarativeTextEdit6hAlignEv @ 2519 NONAME
 	_ZNK20QDeclarativeTextEdit6vAlignEv @ 2520 NONAME
@@ -3310,8 +3310,8 @@ EXPORTS
 	_ZThn8_N24QDeclarativeParentChange13saveOriginalsEv @ 3309 NONAME
 	_ZThn8_N24QDeclarativeParentChange17saveCurrentValuesEv @ 3310 NONAME
 	_ZThn8_N24QDeclarativeParentChange6rewindEv @ 3311 NONAME
-	_ZThn8_N24QDeclarativeParentChange7executeEv @ 3312 NONAME
-	_ZThn8_N24QDeclarativeParentChange7reverseEv @ 3313 NONAME
+	_ZThn8_N24QDeclarativeParentChange7executeEv @ 3312 NONAME ABSENT
+	_ZThn8_N24QDeclarativeParentChange7reverseEv @ 3313 NONAME ABSENT
 	_ZThn8_N24QDeclarativeParentChange8overrideEP23QDeclarativeActionEvent @ 3314 NONAME
 	_ZThn8_N24QDeclarativeParentChangeD0Ev @ 3315 NONAME
 	_ZThn8_N24QDeclarativeParentChangeD1Ev @ 3316 NONAME
@@ -3333,8 +3333,8 @@ EXPORTS
 	_ZThn8_N25QDeclarativeAnchorChanges16saveTargetValuesEv @ 3332 NONAME
 	_ZThn8_N25QDeclarativeAnchorChanges17saveCurrentValuesEv @ 3333 NONAME
 	_ZThn8_N25QDeclarativeAnchorChanges6rewindEv @ 3334 NONAME
-	_ZThn8_N25QDeclarativeAnchorChanges7executeEv @ 3335 NONAME
-	_ZThn8_N25QDeclarativeAnchorChanges7reverseEv @ 3336 NONAME
+	_ZThn8_N25QDeclarativeAnchorChanges7executeEv @ 3335 NONAME ABSENT
+	_ZThn8_N25QDeclarativeAnchorChanges7reverseEv @ 3336 NONAME ABSENT
 	_ZThn8_N25QDeclarativeAnchorChanges8overrideEP23QDeclarativeActionEvent @ 3337 NONAME
 	_ZThn8_N25QDeclarativeAnchorChangesD0Ev @ 3338 NONAME
 	_ZThn8_N25QDeclarativeAnchorChangesD1Ev @ 3339 NONAME
@@ -3348,7 +3348,7 @@ EXPORTS
 	_ZThn8_N27QDeclarativeExtensionPluginD1Ev @ 3347 NONAME
 	_ZThn8_N29QDeclarativeSmoothedAnimationD0Ev @ 3348 NONAME
 	_ZThn8_N29QDeclarativeSmoothedAnimationD1Ev @ 3349 NONAME
-	_ZThn8_N29QDeclarativeStateChangeScript7executeEv @ 3350 NONAME
+	_ZThn8_N29QDeclarativeStateChangeScript7executeEv @ 3350 NONAME ABSENT
 	_ZThn8_N29QDeclarativeStateChangeScriptD0Ev @ 3351 NONAME
 	_ZThn8_N29QDeclarativeStateChangeScriptD1Ev @ 3352 NONAME
 	_ZThn8_N35QDeclarativeGraphicsObjectContainer10itemChangeEN13QGraphicsItem18GraphicsItemChangeERK8QVariant @ 3353 NONAME ABSENT
@@ -3486,4 +3486,14 @@ EXPORTS
 	_ZNK16QDeclarativeText16resourcesLoadingEv @ 3485 NONAME
 	_ZNK19QDeclarativeContext7isValidEv @ 3486 NONAME
 	_ZNK23QDeclarativePixmapReply11errorStringEv @ 3487 NONAME
+	_ZTI26QDeclarativeAnimationGroup @ 3488 NONAME ABSENT
+	_ZTI26QDeclarativeTimeLineObject @ 3489 NONAME ABSENT
+	_ZTI29QDeclarativeAbstractAnimation @ 3490 NONAME ABSENT
+	_ZTI29QDeclarativePropertyAnimation @ 3491 NONAME ABSENT
+	_ZTI30QDeclarativeAbstractExpression @ 3492 NONAME ABSENT
+	_ZTIN14QDeclarativeJS3AST14ExpressionNodeE @ 3493 NONAME ABSENT
+	_ZTIN14QDeclarativeJS3AST14UiObjectMemberE @ 3494 NONAME ABSENT
+	_ZTIN14QDeclarativeJS3AST18FunctionExpressionE @ 3495 NONAME ABSENT
+	_ZTIN14QDeclarativeJS3AST4NodeE @ 3496 NONAME ABSENT
+	_ZTIN14QDeclarativeJS3AST9StatementE @ 3497 NONAME ABSENT
 
diff --git a/src/s60installs/eabi/QtGuiu.def b/src/s60installs/eabi/QtGuiu.def
index 569247a..b1166c5 100644
--- a/src/s60installs/eabi/QtGuiu.def
+++ b/src/s60installs/eabi/QtGuiu.def
@@ -11994,4 +11994,8 @@ EXPORTS
 	_ZNK11QEglContext12configAttribEi @ 11993 NONAME
 	_ZNK11QEglContext16configPropertiesEv @ 11994 NONAME ABSENT
 	_ZNK19QItemSelectionRange7isEmptyEv @ 11995 NONAME
+	_ZN13QIconEngineV28iconNameEv @ 11996 NONAME
+	_ZN14QWindowSurface23setPartialUpdateSupportEb @ 11997 NONAME
+	_ZNK14QWindowSurface23hasPartialUpdateSupportEv @ 11998 NONAME
+	_ZNK5QIcon4nameEv @ 11999 NONAME
 
diff --git a/src/s60installs/eabi/QtNetworku.def b/src/s60installs/eabi/QtNetworku.def
index 926a000..2796778 100644
--- a/src/s60installs/eabi/QtNetworku.def
+++ b/src/s60installs/eabi/QtNetworku.def
@@ -1151,7 +1151,7 @@ EXPORTS
 	_ZThn8_N19QBearerEnginePluginD0Ev @ 1150 NONAME
 	_ZThn8_N19QBearerEnginePluginD1Ev @ 1151 NONAME
 	_Z19qt_qhostinfo_lookupRK7QStringP7QObjectPKcPbPi @ 1152 NONAME
-	_Z24qt_qhostinfo_clear_cachev @ 1153 NONAME
+	_Z24qt_qhostinfo_clear_cachev @ 1153 NONAME ABSENT
 	_ZN21QNetworkAccessManager20setNetworkAccessibleENS_20NetworkAccessibilityE @ 1154 NONAME
 	_ZN21QNetworkAccessManager23networkSessionConnectedEv @ 1155 NONAME
 	_ZN21QNetworkAccessManager24networkAccessibleChangedENS_20NetworkAccessibilityE @ 1156 NONAME
diff --git a/src/s60installs/eabi/QtOpenVGu.def b/src/s60installs/eabi/QtOpenVGu.def
index cffc891..5db9dce 100644
--- a/src/s60installs/eabi/QtOpenVGu.def
+++ b/src/s60installs/eabi/QtOpenVGu.def
@@ -199,4 +199,6 @@ EXPORTS
 	_ZN14QVGPaintEngine16drawCachedGlyphsEiPKjRK5QFontP11QFontEngineRK7QPointF @ 198 NONAME
 	_ZN14QVGPaintEngine18drawStaticTextItemEP15QStaticTextItem @ 199 NONAME
 	_ZN14QVGPaintEngine19drawPixmapFragmentsEPKN8QPainter14PixmapFragmentEiRK7QPixmap6QFlagsINS0_18PixmapFragmentHintEE @ 200 NONAME
+	_ZN25QVGEGLWindowSurfaceDirect6scrollEP7QWidgetRK7QRegionii @ 201 NONAME
+	_ZNK25QVGEGLWindowSurfaceDirect22supportsStaticContentsEv @ 202 NONAME
 
-- 
cgit v0.12


From 4f3a7b5992b5aed67cced46d5d8c8c2f052dfb66 Mon Sep 17 00:00:00 2001
From: Peter Yard <peter.yard@nokia.com>
Date: Tue, 27 Apr 2010 10:35:48 +1000
Subject: Docs Changes to start page. Minor change to Elements doc. See also
 added to some elements docs.

---
 doc/src/declarative/declarativeui.qdoc               | 17 +++++++++++++----
 doc/src/declarative/elements.qdoc                    |  2 +-
 examples/declarative/animations/easing.qml           |  4 ++--
 src/declarative/qml/qdeclarativecomponent.cpp        |  2 ++
 src/declarative/util/qdeclarativeanimation.cpp       |  2 ++
 src/declarative/util/qdeclarativebehavior.cpp        |  2 ++
 src/declarative/util/qdeclarativebind.cpp            |  2 ++
 src/declarative/util/qdeclarativeconnections.cpp     |  2 ++
 src/declarative/util/qdeclarativelistmodel.cpp       |  2 +-
 src/declarative/util/qdeclarativepackage.cpp         |  1 +
 src/declarative/util/qdeclarativepropertychanges.cpp |  2 +-
 src/declarative/util/qdeclarativestate.cpp           |  2 +-
 src/declarative/util/qdeclarativestategroup.cpp      |  2 +-
 src/declarative/util/qdeclarativetimer.cpp           |  2 ++
 src/declarative/util/qdeclarativetransition.cpp      |  2 +-
 src/declarative/util/qdeclarativexmllistmodel.cpp    |  4 ++++
 16 files changed, 38 insertions(+), 12 deletions(-)

diff --git a/doc/src/declarative/declarativeui.qdoc b/doc/src/declarative/declarativeui.qdoc
index a2a5283..2d646b9 100644
--- a/doc/src/declarative/declarativeui.qdoc
+++ b/doc/src/declarative/declarativeui.qdoc
@@ -40,19 +40,28 @@
 ****************************************************************************/
 
 /*!
-\title Declarative UI (QML)
+\title Declarative UI Using QML
 \page declarativeui.html
 
 \brief The Qt Declarative module provides a declarative framework for building
 highly dynamic, custom user interfaces.
 
+\section1 \l{QML Elements}{Fast QML Elements Reference Page}
+
+\raw HTML
+<br>
+\endraw
+
+\section1 Preamble
+
 Qt Declarative UI provides a declarative framework for building highly dynamic, custom
 user interfaces.  Declarative UI helps programmers and designers collaborate to build
 the animation rich, fluid user interfaces that are becoming common in portable
 consumer devices, such as mobile phones, media players, set-top boxes and netbooks.
-The Qt Declarative module provides an engine for interpreting the declarative QML
-language, and a rich set of \l {QML Elements}{QML elements} that can be used
-from QML.
+
+The Qt Declarative module provides an engine for interpreting the declarative
+QML language, and a rich set of \bold { \l {QML Elements}{QML elements} }
+that can be used from QML.
 
 QML is an extension to \l {http://www.ecma-international.org/publications/standards/Ecma-262.htm}
 {JavaScript}, that provides a mechanism to declaratively build an object tree
diff --git a/doc/src/declarative/elements.qdoc b/doc/src/declarative/elements.qdoc
index ce3a6e3..8318392 100644
--- a/doc/src/declarative/elements.qdoc
+++ b/doc/src/declarative/elements.qdoc
@@ -44,7 +44,7 @@
 \target elements
 \title QML Elements
 
-The following table lists the QML elements provided by the Qt Declarative module.
+The following table lists the QML elements provided by the \l {QtDeclarative}{Qt Declarative} module.
 
 \bold {Standard Qt Declarative Elements}
 
diff --git a/examples/declarative/animations/easing.qml b/examples/declarative/animations/easing.qml
index bed4b5f9..b0f9669 100644
--- a/examples/declarative/animations/easing.qml
+++ b/examples/declarative/animations/easing.qml
@@ -79,10 +79,10 @@ Rectangle {
                 }
 
                 transitions: Transition {
-                    ParallelAnimation {
+                    // ParallelAnimation {
                         NumberAnimation { properties: "x"; easing.type: type; duration: 1000 }
                         ColorAnimation { properties: "color"; easing.type: type; duration: 1000 }
-                    }
+                    // }
                 }
             }
         }
diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp
index 3e4651c..f41d867 100644
--- a/src/declarative/qml/qdeclarativecomponent.cpp
+++ b/src/declarative/qml/qdeclarativecomponent.cpp
@@ -140,6 +140,8 @@ Item {
         }
     }
     \endqml
+
+    \sa QtDeclarative
 */
 
 /*!
diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp
index 7e20428..f38f66c 100644
--- a/src/declarative/util/qdeclarativeanimation.cpp
+++ b/src/declarative/util/qdeclarativeanimation.cpp
@@ -834,6 +834,8 @@ QAbstractAnimation *QDeclarativeScriptAction::qtAnimation()
 
     The PropertyAction is immediate -
     the target property is not animated to the selected value in any way.
+    
+    \sa QtDeclarative
 */
 /*!
     \internal
diff --git a/src/declarative/util/qdeclarativebehavior.cpp b/src/declarative/util/qdeclarativebehavior.cpp
index a6c578e..1089d31 100644
--- a/src/declarative/util/qdeclarativebehavior.cpp
+++ b/src/declarative/util/qdeclarativebehavior.cpp
@@ -90,6 +90,8 @@ public:
 
     Currently only a single Behavior may be specified for a property;
     this Behavior can be enabled and disabled via the \l{enabled} property.
+
+    \sa QtDeclarative
 */
 
 
diff --git a/src/declarative/util/qdeclarativebind.cpp b/src/declarative/util/qdeclarativebind.cpp
index b7bd4e8..5516628 100644
--- a/src/declarative/util/qdeclarativebind.cpp
+++ b/src/declarative/util/qdeclarativebind.cpp
@@ -92,6 +92,8 @@ public:
 
     If the binding target or binding property is changed, the bound value is
     immediately pushed onto the new target.
+
+    \sa QtDeclarative
     */
 /*!
     \internal
diff --git a/src/declarative/util/qdeclarativeconnections.cpp b/src/declarative/util/qdeclarativeconnections.cpp
index 596b306..c392c74 100644
--- a/src/declarative/util/qdeclarativeconnections.cpp
+++ b/src/declarative/util/qdeclarativeconnections.cpp
@@ -116,6 +116,8 @@ public:
         onClicked: foo(...)
     }
     \endqml
+
+    \sa QtDeclarative
 */
 
 /*!
diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp
index 2616ccf..0c2c2a4 100644
--- a/src/declarative/util/qdeclarativelistmodel.cpp
+++ b/src/declarative/util/qdeclarativelistmodel.cpp
@@ -244,7 +244,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM
 
     In addition, the WorkerScript cannot add any list data to the model.
 
-    \sa {qmlmodels}{Data Models}, WorkerScript
+    \sa {qmlmodels}{Data Models}, WorkerScript, QtDeclarative
 */
 
 
diff --git a/src/declarative/util/qdeclarativepackage.cpp b/src/declarative/util/qdeclarativepackage.cpp
index ac0788f..20e9907 100644
--- a/src/declarative/util/qdeclarativepackage.cpp
+++ b/src/declarative/util/qdeclarativepackage.cpp
@@ -70,6 +70,7 @@ QT_BEGIN_NAMESPACE
 
     \snippet examples/declarative/package/view.qml 0
 
+    \sa QtDeclarative
 */
 
 
diff --git a/src/declarative/util/qdeclarativepropertychanges.cpp b/src/declarative/util/qdeclarativepropertychanges.cpp
index 9c3ee9f..81b83c3 100644
--- a/src/declarative/util/qdeclarativepropertychanges.cpp
+++ b/src/declarative/util/qdeclarativepropertychanges.cpp
@@ -128,7 +128,7 @@ QT_BEGIN_NAMESPACE
     Changes to an Item's parent or anchors should be done using the associated change elements
     (ParentChange and AnchorChanges, respectively) rather than PropertyChanges.
 
-    \sa {qmlstate}{States}
+    \sa {qmlstate}{States}, QtDeclarative
 */
 
 /*!
diff --git a/src/declarative/util/qdeclarativestate.cpp b/src/declarative/util/qdeclarativestate.cpp
index 78813fa..d27fc51 100644
--- a/src/declarative/util/qdeclarativestate.cpp
+++ b/src/declarative/util/qdeclarativestate.cpp
@@ -141,7 +141,7 @@ QDeclarativeStateOperation::QDeclarativeStateOperation(QObjectPrivate &dd, QObje
     \note setting the state of an object from within another state of the same object is
     not allowed.
 
-    \sa {qmlstates}{States}, {state-transitions}{Transitions}
+    \sa {qmlstates}{States}, {state-transitions}{Transitions}, QtDeclarative
 */
 
 /*!
diff --git a/src/declarative/util/qdeclarativestategroup.cpp b/src/declarative/util/qdeclarativestategroup.cpp
index ff78c60..79bc677 100644
--- a/src/declarative/util/qdeclarativestategroup.cpp
+++ b/src/declarative/util/qdeclarativestategroup.cpp
@@ -109,7 +109,7 @@ public:
    }
    \endqml
 
-   \sa {qmlstate}{States} {state-transitions}{Transitions}
+   \sa {qmlstate}{States} {state-transitions}{Transitions}, {QtDeclarative}
 */
 
 QDeclarativeStateGroup::QDeclarativeStateGroup(QObject *parent)
diff --git a/src/declarative/util/qdeclarativetimer.cpp b/src/declarative/util/qdeclarativetimer.cpp
index 76e6d5e..53a9d83 100644
--- a/src/declarative/util/qdeclarativetimer.cpp
+++ b/src/declarative/util/qdeclarativetimer.cpp
@@ -98,6 +98,8 @@ public:
     1000ms has its \e repeat property changed 500ms after starting, the
     elapsed time will be reset to 0, and the Timer will be triggered
     1000ms later.
+
+    \sa {QtDeclarative}
 */
 
 QDeclarativeTimer::QDeclarativeTimer(QObject *parent)
diff --git a/src/declarative/util/qdeclarativetransition.cpp b/src/declarative/util/qdeclarativetransition.cpp
index 815dc4c..f284156 100644
--- a/src/declarative/util/qdeclarativetransition.cpp
+++ b/src/declarative/util/qdeclarativetransition.cpp
@@ -56,7 +56,7 @@ QT_BEGIN_NAMESPACE
   \since 4.7
     \brief The Transition element defines animated transitions that occur on state changes.
 
-    \sa {qmlstates}{States}, {state-transitions}{Transitions}
+    \sa {qmlstates}{States}, {state-transitions}{Transitions}, {QtDeclarative}
 */
 
 /*!
diff --git a/src/declarative/util/qdeclarativexmllistmodel.cpp b/src/declarative/util/qdeclarativexmllistmodel.cpp
index 7f8b962..c9f7fee 100644
--- a/src/declarative/util/qdeclarativexmllistmodel.cpp
+++ b/src/declarative/util/qdeclarativexmllistmodel.cpp
@@ -74,6 +74,8 @@ typedef QPair<int, int> QDeclarativeXmlListRange;
     \qmlclass XmlRole QDeclarativeXmlListModelRole
   \since 4.7
     \brief The XmlRole element allows you to specify a role for an XmlListModel.
+
+    \sa {QtDeclarative}
 */
 
 /*!
@@ -502,6 +504,8 @@ void QDeclarativeXmlListModelPrivate::clear_role(QDeclarativeListProperty<QDecla
 
     This is useful to provide incremental updates and avoid repainting an
     entire model in a view.
+
+    \sa {QtDeclarative}
 */
 
 QDeclarativeXmlListModel::QDeclarativeXmlListModel(QObject *parent)
-- 
cgit v0.12


From 646b21ac2eb3b0c73826936bf4dba9eac97a34a0 Mon Sep 17 00:00:00 2001
From: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
Date: Mon, 26 Apr 2010 12:45:48 +0200
Subject: Mac: improve mac native events autotest API

Make it possible to add a delay between two events
---
 tests/auto/macnativeevents/nativeeventlist.cpp | 5 -----
 tests/auto/macnativeevents/nativeeventlist.h   | 1 -
 2 files changed, 6 deletions(-)

diff --git a/tests/auto/macnativeevents/nativeeventlist.cpp b/tests/auto/macnativeevents/nativeeventlist.cpp
index d5d7b95..1a90ee0 100644
--- a/tests/auto/macnativeevents/nativeeventlist.cpp
+++ b/tests/auto/macnativeevents/nativeeventlist.cpp
@@ -88,11 +88,6 @@ void NativeEventList::append(int waitMs, QNativeEvent *event)
     eventList.append(QPair<int, QNativeEvent *>(waitMs, event));
 }
 
-void NativeEventList::append(int waitMs)
-{
-    eventList.append(QPair<int, QNativeEvent *>(waitMs, 0));
-}
-
 void NativeEventList::play(Playback playback)
 {
     waitNextEvent();
diff --git a/tests/auto/macnativeevents/nativeeventlist.h b/tests/auto/macnativeevents/nativeeventlist.h
index 688665d..efcca43 100644
--- a/tests/auto/macnativeevents/nativeeventlist.h
+++ b/tests/auto/macnativeevents/nativeeventlist.h
@@ -57,7 +57,6 @@ class NativeEventList : public QObject
 
     void append(QNativeEvent *event);
     void append(int waitMs, QNativeEvent *event = 0);
-    void append(int waitMs);
 
     void play(Playback playback = WaitUntilFinished);
     void stop();
-- 
cgit v0.12


From 09c6d182a70f25626e12a739a9b7c3db937f47ce Mon Sep 17 00:00:00 2001
From: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
Date: Tue, 27 Apr 2010 09:01:36 +0200
Subject: Cocoa: Native QFileDialog has problems selecting name filter

The problem occured if you told the dialog to not show name filter
details, then tried to select a filter specifying those details.
The patch makes sure that we accept a filter as found in the
drop down list if it matches the specified filter with or
without details

Task-number: QTBUG-8439
Reviewed-by: msorvig
---
 src/gui/dialogs/qfiledialog_mac.mm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gui/dialogs/qfiledialog_mac.mm b/src/gui/dialogs/qfiledialog_mac.mm
index 14a5f15..28acf24 100644
--- a/src/gui/dialogs/qfiledialog_mac.mm
+++ b/src/gui/dialogs/qfiledialog_mac.mm
@@ -493,7 +493,7 @@ QT_USE_NAMESPACE
         for (int i=0; i<mNameFilterDropDownList->size(); ++i) {
             QString filter = hideDetails ? [self removeExtensions:filters->at(i)] : filters->at(i);
             [mPopUpButton addItemWithTitle:QT_PREPEND_NAMESPACE(qt_mac_QStringToNSString)(filter)];
-            if (filters->at(i) == selectedFilter)
+            if (filters->at(i).startsWith(selectedFilter))
                 [mPopUpButton selectItemAtIndex:i];
         }
     }
-- 
cgit v0.12


From 530092bc0b1710504a7e98950eab8d545af42b50 Mon Sep 17 00:00:00 2001
From: Jarek Kobus <jkobus@trolltech.com>
Date: Mon, 26 Apr 2010 13:30:17 +0200
Subject: Update Polish translation

---
 translations/qt_pl.ts | 2496 +++++++++++++++++++++++++++++++++++++++++--------
 1 file changed, 2112 insertions(+), 384 deletions(-)

diff --git a/translations/qt_pl.ts b/translations/qt_pl.ts
index db7d2c5..dd8a160 100644
--- a/translations/qt_pl.ts
+++ b/translations/qt_pl.ts
@@ -2,6 +2,27 @@
 <!DOCTYPE TS>
 <TS version="2.0" language="pl">
 <context>
+    <name>CloseButton</name>
+    <message>
+        <location filename="../src/gui/widgets/qtabbar.cpp" line="+2266"/>
+        <source>Close Tab</source>
+        <translation>Zamknij kartę</translation>
+    </message>
+</context>
+<context>
+    <name>FakeReply</name>
+    <message>
+        <location filename="../src/3rdparty/webkit/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp" line="+2217"/>
+        <source>Fake error !</source>
+        <translation>Fałszywy błąd!</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Invalid URL</source>
+        <translation>Niepoprawny URL</translation>
+    </message>
+</context>
+<context>
     <name>MAC_APPLICATION_MENU</name>
     <message>
         <location filename="../src/gui/kernel/qapplication.cpp" line="+2316"/>
@@ -40,27 +61,6 @@
     </message>
 </context>
 <context>
-    <name>CloseButton</name>
-    <message>
-        <location filename="../src/gui/widgets/qtabbar.cpp" line="+2264"/>
-        <source>Close Tab</source>
-        <translation>Zamknij kartę</translation>
-    </message>
-</context>
-<context>
-    <name>FakeReply</name>
-    <message>
-        <location filename="../src/3rdparty/webkit/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp" line="+2199"/>
-        <source>Fake error !</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+3"/>
-        <source>Invalid URL</source>
-        <translation>Niepoprawny URL</translation>
-    </message>
-</context>
-<context>
     <name>Phonon::</name>
     <message>
         <location filename="../src/3rdparty/phonon/phonon/phononnamespace.cpp" line="+55"/>
@@ -96,25 +96,32 @@
 <context>
     <name>Phonon::AudioOutput</name>
     <message>
-        <location filename="../src/3rdparty/phonon/phonon/audiooutput.cpp" line="+385"/>
+        <location filename="../src/3rdparty/phonon/phonon/audiooutput.cpp" line="+444"/>
+        <location line="+34"/>
         <source>&lt;html&gt;The audio playback device &lt;b&gt;%1&lt;/b&gt; does not work.&lt;br/&gt;Falling back to &lt;b&gt;%2&lt;/b&gt;.&lt;/html&gt;</source>
         <translation>&lt;html&gt;Urządzenie dźwiękowe &lt;b&gt;%1&lt;/b&gt; nie działa.&lt;br/&gt;Przywracanie do &lt;b&gt;%2&lt;/b&gt;.&lt;/html&gt;</translation>
     </message>
     <message>
-        <location line="+13"/>
+        <location line="-21"/>
         <source>&lt;html&gt;Switching to the audio playback device &lt;b&gt;%1&lt;/b&gt;&lt;br/&gt;which just became available and has higher preference.&lt;/html&gt;</source>
         <translation>&lt;html&gt;Przełączanie na urządzenie dźwiękowe &lt;b&gt;%1&lt;/b&gt;&lt;br/&gt;które właśnie stało się dostępne i ma wyższy priorytet.&lt;/html&gt;</translation>
     </message>
     <message>
         <location line="+3"/>
+        <location line="+14"/>
         <source>Revert back to device &apos;%1&apos;</source>
         <translation>Przywróć do urządzenia &apos;%1&apos;</translation>
     </message>
+    <message>
+        <location line="-3"/>
+        <source>&lt;html&gt;Switching to the audio playback device &lt;b&gt;%1&lt;/b&gt;&lt;br/&gt;which has higher preference or is specifically configured for this stream.&lt;/html&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>Phonon::Gstreamer::Backend</name>
     <message>
-        <location filename="../src/3rdparty/phonon/gstreamer/backend.cpp" line="+182"/>
+        <location filename="../src/3rdparty/phonon/gstreamer/backend.cpp" line="+188"/>
         <source>Warning: You do not seem to have the package gstreamer0.10-plugins-good installed.
           Some video features have been disabled.</source>
         <translation>Ostrzeżenie: Wygląda na to, że pakiet gstreamer0.10-plugins-good nie jest zainstalowany w tym systemie.
@@ -131,7 +138,7 @@ Obsługa dźwięku i wideo została wyłączona</translation>
 <context>
     <name>Phonon::Gstreamer::MediaObject</name>
     <message>
-        <location filename="../src/3rdparty/phonon/gstreamer/mediaobject.cpp" line="+90"/>
+        <location filename="../src/3rdparty/phonon/gstreamer/mediaobject.cpp" line="+93"/>
         <source>Cannot start playback. 
 
 Check your GStreamer installation and make sure you 
@@ -142,29 +149,39 @@ Sprawdź instalację Gstreamer i upewnij się że
 zainstalowałeś libgstreamer-plugins-base.</translation>
     </message>
     <message>
-        <location line="+113"/>
+        <location line="+129"/>
+        <source>Missing codec helper script assistant.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Plugin codec installation failed for codec: %0</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+11"/>
         <source>A required codec is missing. You need to install the following codec(s) to play this content: %0</source>
         <translation>Brak wymaganego kodeka. Aby odtworzyć zawartość musisz zainstalować poniższy kodek: %0</translation>
     </message>
     <message>
-        <location line="+702"/>
-        <location line="+8"/>
-        <location line="+15"/>
-        <location line="+26"/>
+        <location line="+730"/>
         <location line="+6"/>
-        <location line="+19"/>
-        <location line="+339"/>
+        <location line="+13"/>
+        <location line="+24"/>
+        <location line="+6"/>
+        <location line="+18"/>
+        <location line="+434"/>
         <location line="+24"/>
         <source>Could not open media source.</source>
         <translation>Nie można otworzyć źródła mediów.</translation>
     </message>
     <message>
-        <location line="-424"/>
+        <location line="-514"/>
         <source>Invalid source type.</source>
         <translation>Niepoprawny typ źródła.</translation>
     </message>
     <message>
-        <location line="+398"/>
+        <location line="+488"/>
         <source>Could not locate media source.</source>
         <translation>Nie można znaleźć źródła mediów.</translation>
     </message>
@@ -182,7 +199,7 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
 <context>
     <name>Phonon::MMF</name>
     <message>
-        <location filename="../src/3rdparty/phonon/mmf/audiooutput.cpp" line="+98"/>
+        <location filename="../src/3rdparty/phonon/mmf/audiooutput.cpp" line="+103"/>
         <source>Audio Output</source>
         <translation>Wyjście dźwięku</translation>
     </message>
@@ -191,60 +208,341 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
         <source>The audio output device</source>
         <translation>Wyjściowe urządzenie dźwiękowe</translation>
     </message>
-</context>
-<context>
-    <name>Phonon::MMF::AudioEqualizer</name>
     <message>
-        <location filename="../src/3rdparty/phonon/mmf/audioequalizer.cpp" line="+75"/>
-        <source>Frequency band, %1 Hz</source>
-        <translation>Częstotliwość środkowa, %1 Hz</translation>
+        <location filename="../src/3rdparty/phonon/mmf/utils.cpp" line="+89"/>
+        <source>No error</source>
+        <translation>Brak błędu</translation>
     </message>
-</context>
-<context>
-    <name>Phonon::MMF::EffectFactory</name>
     <message>
-        <location filename="../src/3rdparty/phonon/mmf/effectfactory.cpp" line="+65"/>
-        <source>Audio Equalizer</source>
-        <translation>Korektor graficzny</translation>
+        <location line="+2"/>
+        <source>Not found</source>
+        <translation>Nie znaleziono</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Bass Boost</source>
-        <translation>Wzmocnienie basów</translation>
+        <source>Out of memory</source>
+        <translation>Brak pamięci</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Distance Attenuation</source>
-        <translation type="unfinished"></translation>
+        <source>Not supported</source>
+        <translation>Nieobsługiwane</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Overflow</source>
+        <translation>Przepełnienie</translation>
     </message>
     <message>
         <location line="+2"/>
+        <source>Underflow</source>
+        <translation>Niedopełnienie</translation>
+    </message>
+    <message>
         <location line="+2"/>
-        <source>Environmental Reverb</source>
-        <translation>Pogłos środowiskowy</translation>
+        <source>Already exists</source>
+        <translation>Już istnieje</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Loudness</source>
-        <translation>Głośność</translation>
+        <source>Path not found</source>
+        <translation>Nie znaleziono ścieżki</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Source Orientation</source>
-        <translation type="unfinished"></translation>
+        <source>In use</source>
+        <translation>W użyciu</translation>
     </message>
     <message>
         <location line="+2"/>
-        <source>Stereo Widening</source>
-        <translation type="unfinished"></translation>
+        <source>Not ready</source>
+        <translation>Brak gotowości</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Access denied</source>
+        <translation>Odmowa dostępu</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Could not connect</source>
+        <translation>Nie można połączyć</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Disconnected</source>
+        <translation>Rozłączono</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Permission denied</source>
+        <translation>Brak uprawnień</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Insufficient bandwidth</source>
+        <translation>Niewystarczająca szerokość pasma</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Network unavailable</source>
+        <translation>Sieć niedostępna</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Network communication error</source>
+        <translation>Błąd komunikacji sieciowej</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Streaming not supported</source>
+        <translation>Transmisje strumieniowe nie są obsługiwane</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Server alert</source>
+        <translation>Ostrzeżenie serwera</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Invalid protocol</source>
+        <translation>Nieprawidłowy protokół</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Invalid URL</source>
+        <translation>Nieprawidłowy adres URL</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Multicast error</source>
+        <translation>Błąd multiemisji</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Proxy server error</source>
+        <translation>Błąd serwera pośredniczącego</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Proxy server not supported</source>
+        <translation>Nieobsługiwany serwer pośredniczący</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Audio output error</source>
+        <translation>Błąd wyjściowego sygnału dźwiękowego</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Video output error</source>
+        <translation>Błąd wyjściowego sygnału wideo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Decoder error</source>
+        <translation>Błąd dekodera</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Audio or video components could not be played</source>
+        <translation>Nie można odtworzyć dźwięku lub wideo</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>DRM error</source>
+        <translation>Błąd DRM</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>Unknown error (%1)</source>
+        <translation>Nieznany błąd (%1)</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::AbstractMediaPlayer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/abstractmediaplayer.cpp" line="+73"/>
+        <source>Not ready to play</source>
+        <translation>Brak gotowości odtwarzania</translation>
+    </message>
+    <message>
+        <location line="+161"/>
+        <location line="+10"/>
+        <source>Error opening file</source>
+        <translation>Błąd otwierania pliku</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Error opening URL</source>
+        <translation>Błąd otwierania adresu URL</translation>
+    </message>
+    <message>
+        <location line="+83"/>
+        <source>Setting volume failed</source>
+        <translation>Ustawienie głośności zakończone błędem</translation>
+    </message>
+    <message>
+        <location line="+45"/>
+        <source>Loading clip failed</source>
+        <translation>Załadowanie klipu zakończone błędem</translation>
+    </message>
+    <message>
+        <location line="+24"/>
+        <source>Playback complete</source>
+        <translation>Zakończono odtwarzanie</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::AbstractVideoPlayer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/abstractvideoplayer.cpp" line="+108"/>
+        <source>Pause failed</source>
+        <translation>Zatrzymanie zakończone błędem</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Seek failed</source>
+        <translation>Wyszukiwanie zakończone błędem</translation>
+    </message>
+    <message>
+        <location line="+54"/>
+        <source>Getting position failed</source>
+        <translation>Ustalanie pozycji zakończone błędem</translation>
+    </message>
+    <message>
+        <location line="+66"/>
+        <source>Opening clip failed</source>
+        <translation>Otwieranie klipu zakończone błędem</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::AudioEqualizer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/audioequalizer.cpp" line="+92"/>
+        <source>%1 Hz</source>
+        <translation>%1 Hz</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::AudioPlayer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/audioplayer.cpp" line="+173"/>
+        <source>Getting position failed</source>
+        <translation>Ustalanie pozycji zakończone błędem</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::DsaVideoPlayer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/videoplayer_dsa.cpp" line="+238"/>
+        <location line="+15"/>
+        <location line="+8"/>
+        <location line="+22"/>
+        <location line="+22"/>
+        <source>Video display error</source>
+        <translation type="unfinished">Błąd wyświetlacza wideo</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::EffectFactory</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/effectfactory.cpp" line="+181"/>
+        <source>Enabled</source>
+        <translation>Włączono</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::EnvironmentalReverb</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/environmentalreverb.cpp" line="+146"/>
+        <source>Decay HF ratio (%)</source>
+        <extracomment>DecayHFRatio: Ratio of high-frequency decay time to the value specified by DecayTime.</extracomment>
+        <translation>Współczynnik zanikania HF (%)</translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Decay time (ms)</source>
+        <extracomment>DecayTime: Time over which reverberation is diminished.</extracomment>
+        <translation>Czas zanikania (ms)</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Density (%)</source>
+        <extracomment>Density Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Diffusion value.</extracomment>
+        <translation>Gęstość (%)</translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Diffusion (%)</source>
+        <extracomment>Diffusion: Delay between first and subsequent reflections. Note that the S60 platform documentation does not make clear the distinction between this value and the Density value.</extracomment>
+        <translation>Rozpraszanie (%)</translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Reflections delay (ms)</source>
+        <extracomment>ReflectionsDelay: Amount of delay between the arrival the direct path from the source and the arrival of the first reflection.</extracomment>
+        <translation>Opóźnienie odbić (ms)</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Reflections level (mB)</source>
+        <extracomment>ReflectionsLevel: Amplitude of reflections. This value is corrected by the RoomLevel to give the final reflection amplitude.</extracomment>
+        <translation>Poziom odbić (mB)</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Reverb delay (ms)</source>
+        <extracomment>ReverbDelay: Amount of time between arrival of the first reflection and start of the late reverberation.</extracomment>
+        <translation>Opóźnienie pogłosu (ms)</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Reverb level (mB)</source>
+        <extracomment>ReverbLevel Amplitude of reverberations. This value is corrected by the RoomLevel to give the final reverberation amplitude.</extracomment>
+        <translation>Poziom pogłosu (mB)</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Room HF level</source>
+        <extracomment>RoomHFLevel: Amplitude of low-pass filter used to attenuate the high frequency component of reflected sound.</extracomment>
+        <translation>Poziom HF pomieszczenia</translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Room level (mB)</source>
+        <extracomment>RoomLevel: Master volume control for all reflected sound.</extracomment>
+        <translation>Poziom pomieszczenia (mB)</translation>
     </message>
 </context>
 <context>
     <name>Phonon::MMF::MediaObject</name>
     <message>
-        <location filename="../src/3rdparty/phonon/mmf/mediaobject.cpp" line="+291"/>
-        <source>Media type could not be determined</source>
-        <translation>Nie można określić typu mediów</translation>
+        <location filename="../src/3rdparty/phonon/mmf/mediaobject.cpp" line="+276"/>
+        <source>Error opening source: type not supported</source>
+        <translation>Błąd otwierania źródła: typ źródła nie jest obsługiwany</translation>
+    </message>
+    <message>
+        <location line="+18"/>
+        <source>Error opening source: media type could not be determined</source>
+        <translation>Błąd otwierania źródła: nie można określić typu multimediów</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::StereoWidening</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/stereowidening.cpp" line="+79"/>
+        <source>Level (%)</source>
+        <translation>Poziom (%)</translation>
+    </message>
+</context>
+<context>
+    <name>Phonon::MMF::SurfaceVideoPlayer</name>
+    <message>
+        <location filename="../src/3rdparty/phonon/mmf/videoplayer_surface.cpp" line="+126"/>
+        <location line="+16"/>
+        <source>Video display error</source>
+        <translation type="unfinished">Błąd wyświetlacza wideo</translation>
     </message>
 </context>
 <context>
@@ -314,7 +612,7 @@ zainstalowałeś libgstreamer-plugins-base.</translation>
 <context>
     <name>Q3FileDialog</name>
     <message>
-        <location filename="../src/qt3support/dialogs/q3filedialog.cpp" line="+4493"/>
+        <location filename="../src/qt3support/dialogs/q3filedialog.cpp" line="+4501"/>
         <source>%1
 File not found.
 Check path and filename.</source>
@@ -585,7 +883,7 @@ Sprawdź ścieżkę i nazwę pliku.</translation>
     <message>
         <location line="+2"/>
         <source>Symlink to Special</source>
-        <translation>Specjalny dowiązanie symboliczne</translation>
+        <translation>Dowiązanie symboliczne do pliku specjalnego</translation>
     </message>
     <message>
         <location line="+1551"/>
@@ -951,8 +1249,8 @@ na
 <context>
     <name>QAbstractSocket</name>
     <message>
-        <location filename="../src/network/socket/qabstractsocket.cpp" line="+949"/>
-        <location filename="../src/network/socket/qhttpsocketengine.cpp" line="+646"/>
+        <location filename="../src/network/socket/qabstractsocket.cpp" line="+966"/>
+        <location filename="../src/network/socket/qhttpsocketengine.cpp" line="+632"/>
         <location filename="../src/network/socket/qsocks5socketengine.cpp" line="+691"/>
         <source>Connection refused</source>
         <translation>Połączenie odrzucone</translation>
@@ -971,19 +1269,20 @@ na
         <translation>Przekroczony czas połączenia</translation>
     </message>
     <message>
-        <location line="-555"/>
-        <location line="+805"/>
-        <location line="+208"/>
+        <location line="-559"/>
+        <location line="+809"/>
+        <location line="+220"/>
         <source>Operation on socket is not supported</source>
-        <translation>Operacja na gnieździe nieobsługiwana</translation>
+        <translation>Operacja na gnieździe nie jest obsługiwana</translation>
     </message>
     <message>
-        <location line="+580"/>
+        <location line="+583"/>
         <source>Socket is not connected</source>
         <translation>Gniazdo nie jest podłączone</translation>
     </message>
     <message>
-        <location line="-380"/>
+        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+614"/>
+        <location filename="../src/network/socket/qabstractsocket.cpp" line="-380"/>
         <source>Socket operation timed out</source>
         <translation>Przekroczony czas operacji gniazda</translation>
     </message>
@@ -996,7 +1295,7 @@ na
 <context>
     <name>QAbstractSpinBox</name>
     <message>
-        <location filename="../src/gui/widgets/qabstractspinbox.cpp" line="+1219"/>
+        <location filename="../src/gui/widgets/qabstractspinbox.cpp" line="+1265"/>
         <source>Step &amp;down</source>
         <translation>Krok w &amp;dół</translation>
     </message>
@@ -1042,7 +1341,7 @@ na
         <translation>Niekompatybilność biblioteki Qt</translation>
     </message>
     <message>
-        <location filename="../src/gui/kernel/qapplication.cpp" line="+2280"/>
+        <location filename="../src/gui/kernel/qapplication.cpp" line="-13"/>
         <source>QT_LAYOUT_DIRECTION</source>
         <comment>Translate this string to the string &apos;LTR&apos; in left-to-right languages or to &apos;RTL&apos; in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.</comment>
         <translation>LTR</translation>
@@ -1092,12 +1391,12 @@ na
 <context>
     <name>QColorDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qcolordialog.cpp" line="+1638"/>
+        <location filename="../src/gui/dialogs/qcolordialog.cpp" line="+1670"/>
         <source>&amp;Add to Custom Colors</source>
         <translation>&amp;Dodaj do własnych kolorów</translation>
     </message>
     <message>
-        <location line="-283"/>
+        <location line="-286"/>
         <source>A&amp;lpha channel:</source>
         <translation>Kanał &amp;alfa:</translation>
     </message>
@@ -1107,22 +1406,22 @@ na
         <translation>Wybierz kolor</translation>
     </message>
     <message>
-        <location line="+180"/>
+        <location line="+183"/>
         <source>&amp;Basic colors</source>
         <translation>&amp;Kolory podstawowe</translation>
     </message>
     <message>
-        <location line="-282"/>
+        <location line="-285"/>
         <source>Bl&amp;ue:</source>
         <translation>Błęki&amp;t:</translation>
     </message>
     <message>
-        <location line="+283"/>
+        <location line="+286"/>
         <source>&amp;Custom colors</source>
         <translation>Wła&amp;sne kolory</translation>
     </message>
     <message>
-        <location line="-284"/>
+        <location line="-287"/>
         <source>&amp;Green:</source>
         <translation>&amp;Zieleń:</translation>
     </message>
@@ -1150,7 +1449,7 @@ na
 <context>
     <name>QComboBox</name>
     <message>
-        <location filename="../src/plugins/accessible/widgets/complexwidgets.cpp" line="+1771"/>
+        <location filename="../src/plugins/accessible/widgets/complexwidgets.cpp" line="+1772"/>
         <location line="+65"/>
         <source>Open</source>
         <translation>Otwórz</translation>
@@ -1186,114 +1485,1177 @@ na
         <translation>%1: nie istnieje</translation>
     </message>
     <message>
-        <location line="+5"/>
-        <source>%1: out of resources</source>
-        <comment>QSystemSemaphore</comment>
-        <translation>%1: zasoby wyczerpane</translation>
+        <location line="+5"/>
+        <source>%1: out of resources</source>
+        <comment>QSystemSemaphore</comment>
+        <translation>%1: zasoby wyczerpane</translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>%1: unknown error %2</source>
+        <comment>QSystemSemaphore</comment>
+        <translation>%1: nieznany błąd %2</translation>
+    </message>
+    <message>
+        <location filename="../src/corelib/kernel/qsystemsemaphore_unix.cpp" line="+119"/>
+        <source>%1: key is empty</source>
+        <comment>QSystemSemaphore</comment>
+        <translation>%1: klucz jest pusty</translation>
+    </message>
+    <message>
+        <location line="+12"/>
+        <source>%1: unable to make key</source>
+        <comment>QSystemSemaphore</comment>
+        <translation>%1: nie można utworzyć klucza</translation>
+    </message>
+    <message>
+        <location line="+9"/>
+        <source>%1: ftok failed</source>
+        <comment>QSystemSemaphore</comment>
+        <translation>%1: wystąpił błąd w funkcji ftok()</translation>
+    </message>
+</context>
+<context>
+    <name>QDB2Driver</name>
+    <message>
+        <location filename="../src/sql/drivers/db2/qsql_db2.cpp" line="+1253"/>
+        <source>Unable to connect</source>
+        <translation>Nie można nawiązać połączenia</translation>
+    </message>
+    <message>
+        <location line="+298"/>
+        <source>Unable to commit transaction</source>
+        <translation>Nie można dokonać transakcji</translation>
+    </message>
+    <message>
+        <location line="+17"/>
+        <source>Unable to rollback transaction</source>
+        <translation>Nie można wycofać transakcji</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>Unable to set autocommit</source>
+        <translation>Nie można ustawić trybu automatycznego dokonywania transakcji</translation>
+    </message>
+</context>
+<context>
+    <name>QDB2Result</name>
+    <message>
+        <location line="-1030"/>
+        <location line="+240"/>
+        <source>Unable to execute statement</source>
+        <translation>Nie można wykonać polecenia</translation>
+    </message>
+    <message>
+        <location line="-203"/>
+        <source>Unable to prepare statement</source>
+        <translation>Nie można przygotować polecenia</translation>
+    </message>
+    <message>
+        <location line="+193"/>
+        <source>Unable to bind variable</source>
+        <translation>Nie można powiązać zmiennej</translation>
+    </message>
+    <message>
+        <location line="+89"/>
+        <source>Unable to fetch record %1</source>
+        <translation>Nie można pobrać rekordu %1</translation>
+    </message>
+    <message>
+        <location line="+19"/>
+        <source>Unable to fetch next</source>
+        <translation>Nie można pobrać kolejnego wiersza danych</translation>
+    </message>
+    <message>
+        <location line="+21"/>
+        <source>Unable to fetch first</source>
+        <translation>Nie można pobrać pierwszego wiersza danych</translation>
+    </message>
+</context>
+<context>
+    <name>QDateTimeEdit</name>
+    <message>
+        <location filename="../src/gui/widgets/qdatetimeedit.cpp" line="+2287"/>
+        <source>am</source>
+        <translation>am</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>AM</source>
+        <translation>AM</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>pm</source>
+        <translation>pm</translation>
+    </message>
+    <message>
+        <location line="+0"/>
+        <source>PM</source>
+        <translation>PM</translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeAbstractAnimation</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+165"/>
+        <source>Cannot animate non-existent property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Cannot animate read-only property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeutilmodule.cpp" line="+122"/>
+        <source>Animation is an abstract class</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeAnchorAnimation</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+2540"/>
+        <source>Cannot set a duration of &lt; 0</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeAnchors</name>
+    <message>
+        <location filename="../src/declarative/graphicsitems/qdeclarativeanchors.cpp" line="+181"/>
+        <source>Possible anchor loop detected on fill.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
+        <source>Possible anchor loop detected on centerIn.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+201"/>
+        <location line="+34"/>
+        <location line="+610"/>
+        <location line="+37"/>
+        <source>Cannot anchor to an item that isn&apos;t a parent or sibling.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-534"/>
+        <source>Possible anchor loop detected on vertical anchor.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+59"/>
+        <source>Possible anchor loop detected on horizontal anchor.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+422"/>
+        <source>Cannot specify left, right, and hcenter anchors.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <location line="+37"/>
+        <source>Cannot anchor to a null item.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-34"/>
+        <source>Cannot anchor a horizontal edge to a vertical edge.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <location line="+37"/>
+        <source>Cannot anchor item to self.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-25"/>
+        <source>Cannot specify top, bottom, and vcenter anchors.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Baseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+13"/>
+        <source>Cannot anchor a vertical edge to a horizontal edge.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeAnimatedImage</name>
+    <message>
+        <location filename="../src/declarative/graphicsitems/qdeclarativeitemsmodule.cpp" line="+86"/>
+        <source>Qt was built without support for QMovie</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeBehavior</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativebehavior.cpp" line="+122"/>
+        <source>Cannot change the animation assigned to a Behavior.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeBinding</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativebinding.cpp" line="+225"/>
+        <source>Binding loop detected for property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeCompiledBindings</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativecompiledbindings.cpp" line="+305"/>
+        <source>Binding loop detected for property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeCompiler</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativecompiler.cpp" line="+186"/>
+        <location line="+1561"/>
+        <location line="+187"/>
+        <location line="+82"/>
+        <location line="+75"/>
+        <location line="+488"/>
+        <source>Invalid property assignment: &quot;%1&quot; is a read-only property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-2384"/>
+        <source>Invalid property assignment: unknown enumeration</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Invalid property assignment: string expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Invalid property assignment: url expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Invalid property assignment: unsigned int expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: int expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: float expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: double expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: color expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: date expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: time expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: datetime expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Invalid property assignment: point expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Invalid property assignment: size expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Invalid property assignment: rect expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Invalid property assignment: boolean expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid property assignment: 3D vector expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+9"/>
+        <source>Invalid property assignment: unsupported type &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+271"/>
+        <source>Element is not creatable.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+592"/>
+        <source>Component elements may not contain properties other than id</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Invalid component id specification</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <location line="+477"/>
+        <source>id is not unique</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-467"/>
+        <source>Invalid component body specification</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Component objects cannot declare new properties.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Component objects cannot declare new signals.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Component objects cannot declare new functions.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Cannot create empty component specification</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+89"/>
+        <source>Incorrectly specified signal assignment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+13"/>
+        <source>Empty signal assignment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+38"/>
+        <source>Empty property assignment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
+        <source>Attached properties cannot be used here</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <location line="+104"/>
+        <source>Non-existent attached object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-100"/>
+        <location line="+103"/>
+        <source>Invalid attached object assignment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-50"/>
+        <source>Cannot assign to non-existent default property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location line="+355"/>
+        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-324"/>
+        <source>Invalid use of namespace</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Not an attached property name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+183"/>
+        <source>Invalid use of id property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+89"/>
+        <location line="+2"/>
+        <source>Property has already been assigned a value</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+12"/>
+        <location line="+8"/>
+        <source>Invalid grouped property access</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Cannot assign a value directly to a grouped property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Invalid property use</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+13"/>
+        <source>Property assignment expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Single property assignment expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Unexpected object assignment</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+57"/>
+        <source>Cannot assign object to list</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Can only assign one binding to lists</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Cannot assign primitives to lists</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+13"/>
+        <source>Cannot assign multiple values to a script property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Invalid property assignment: script expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+106"/>
+        <source>Cannot assign object to property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+50"/>
+        <source>&quot;%1&quot; cannot operate on &quot;%2&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+117"/>
+        <source>Duplicate default property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>Duplicate property name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Property names cannot begin with an upper case letter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Duplicate signal name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Signal names cannot begin with an upper case letter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Duplicate method name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Method names cannot begin with an upper case letter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+21"/>
+        <source>Property value set multiple times</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Invalid property nesting</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+53"/>
+        <source>Cannot override FINAL property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+25"/>
+        <source>Invalid property type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+159"/>
+        <source>Invalid empty ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>IDs cannot start with an uppercase letter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>IDs must start with a letter or underscore</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>IDs must contain only letters, numbers, and underscores</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>ID illegally masks global JavaScript property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+31"/>
+        <location line="+9"/>
+        <source>No property alias location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-4"/>
+        <location line="+25"/>
+        <source>Invalid alias location</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-16"/>
+        <source>Invalid alias reference. An alias reference must be specified as &lt;id&gt; or &lt;id&gt;.&lt;property&gt;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Invalid alias reference. Unable to find id &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeComponent</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativecomponent.cpp" line="+454"/>
+        <source>Invalid empty URL</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeCompositeTypeManager</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativecompositetypemanager.cpp" line="+482"/>
+        <location line="+268"/>
+        <source>Resource %1 unavailable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-119"/>
+        <source>Namespace %1 cannot be used as a type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>%1 is not a type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+46"/>
+        <source>Type %1 unavailable</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeConnections</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeconnections.cpp" line="+178"/>
+        <location line="+54"/>
+        <location line="+7"/>
+        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-51"/>
+        <source>Connections: nested objects not allowed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Connections: syntax error</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Connections: script expected</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeEngine</name>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativeengine.cpp" line="+1633"/>
+        <source>module &quot;%1&quot; definition &quot;%2&quot; not readable</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+23"/>
+        <source>plugin cannot be loaded for module &quot;%1&quot;: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>module &quot;%1&quot; plugin &quot;%2&quot; not found</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+82"/>
+        <location line="+55"/>
+        <source>module &quot;%1&quot; version %2.%3 is not installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-53"/>
+        <source>module &quot;%1&quot; is not installed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+14"/>
+        <location line="+19"/>
+        <source>&quot;%1&quot;: no such directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-2"/>
+        <source>import &quot;%1&quot; has no qmldir and no namespace</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativesqldatabase.cpp" line="+204"/>
+        <source>executeSql called outside transaction()</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+58"/>
+        <source>Read-only Transaction</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+20"/>
+        <source>Version mismatch: expected %1, found %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+14"/>
+        <source>SQL transaction failed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+21"/>
+        <source>transaction: missing callback</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+57"/>
+        <location line="+16"/>
+        <source>SQL: database version mismatch</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeFlipable</name>
+    <message>
+        <location filename="../src/declarative/graphicsitems/qdeclarativeflipable.cpp" line="+129"/>
+        <source>front is a write-once property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
+        <source>back is a write-once property</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeKeyNavigationAttached</name>
+    <message>
+        <location filename="../src/declarative/graphicsitems/qdeclarativeitemsmodule.cpp" line="+62"/>
+        <source>KeyNavigation is only available via attached properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeKeysAttached</name>
+    <message>
+        <location line="+1"/>
+        <source>Keys is only available via attached properties</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeListModel</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativelistmodel.cpp" line="+399"/>
+        <source>remove: index %1 out of range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+33"/>
+        <source>insert: value is not an object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+5"/>
+        <source>insert: index %1 out of range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+30"/>
+        <source>move: out of range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+40"/>
+        <source>append: value is not an object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+34"/>
+        <source>get: index %1 out of range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+25"/>
+        <source>set: value is not an object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <location line="+34"/>
+        <source>set: index %1 out of range</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+39"/>
+        <location line="+15"/>
+        <source>ListElement: cannot contain nested elements</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>ListElement: cannot use reserved &quot;id&quot; property</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+49"/>
+        <source>ListElement: cannot use script for property value</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+29"/>
+        <source>ListModel: undefined property &apos;%1&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeLoader</name>
+    <message>
+        <location filename="../src/declarative/graphicsitems/qdeclarativeloader.cpp" line="+317"/>
+        <source>Loader does not support loading non-visual elements.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeParentAnimation</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="-169"/>
+        <source>Unable to preserve appearance under complex transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <location line="+7"/>
+        <source>Unable to preserve appearance under non-uniform scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Unable to preserve appearance under scale of 0</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeParentChange</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativestateoperations.cpp" line="+95"/>
+        <source>Unable to preserve appearance under complex transform</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <location line="+7"/>
+        <source>Unable to preserve appearance under non-uniform scale</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Unable to preserve appearance under scale of 0</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativeParser</name>
+    <message>
+        <location filename="../src/declarative/qml/parser/qdeclarativejslexer.cpp" line="+542"/>
+        <location line="+123"/>
+        <location line="+54"/>
+        <source>Illegal unicode escape sequence</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-140"/>
+        <source>Illegal character</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+14"/>
+        <source>Unclosed string at end of line</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+26"/>
+        <source>Illegal escape squence</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+72"/>
+        <source>Unclosed comment at end of file</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+102"/>
+        <source>Illegal syntax for exponential number</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+26"/>
+        <source>Identifier cannot start with numeric literal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+338"/>
+        <source>Unterminated regular expression literal</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>Invalid regular expression flag &apos;%0&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <location line="+22"/>
+        <source>Unterminated regular expression backslash sequence</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+13"/>
+        <source>Unterminated regular expression class</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../src/declarative/qml/parser/qdeclarativejsparser.cpp" line="+1828"/>
+        <location line="+67"/>
+        <source>Syntax error</source>
+        <translation>Błąd składni</translation>
+    </message>
+    <message>
+        <location line="-65"/>
+        <source>Unexpected token `%1&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+28"/>
+        <location line="+24"/>
+        <source>Expected token `%1&apos;</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../src/declarative/qml/qdeclarativescriptparser.cpp" line="+264"/>
+        <location line="+456"/>
+        <location line="+59"/>
+        <source>Property value set multiple times</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-504"/>
+        <source>Expected type name</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+171"/>
+        <source>Invalid import qualifier ID</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>Script import qualifiers must be unique.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+10"/>
+        <source>Script import requires a qualifier</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+11"/>
+        <source>Library import requires a version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+59"/>
+        <source>Expected parameter type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+42"/>
+        <source>Invalid property type modifier</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+9"/>
+        <source>Unexpected property type modifier</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+9"/>
+        <source>Expected property type</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+9"/>
+        <source>Readonly not yet supported</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+213"/>
+        <source>JavaScript declaration outside Script element</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativePauseAnimation</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="-1973"/>
+        <source>Cannot set a duration of &lt; 0</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QDeclarativePixmapCache</name>
+    <message>
+        <location filename="../src/declarative/util/qdeclarativepixmapcache.cpp" line="+197"/>
+        <source>Error decoding: %1: %2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+70"/>
+        <source>Failed to get image from provider: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+19"/>
+        <location line="+342"/>
+        <source>Cannot open: %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+37"/>
+        <source>Unknown Error loading %1</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativePropertyAnimation</name>
     <message>
-        <location line="+4"/>
-        <source>%1: unknown error %2</source>
-        <comment>QSystemSemaphore</comment>
-        <translation>%1: nieznany błąd %2</translation>
+        <location filename="../src/declarative/util/qdeclarativeanimation.cpp" line="+1100"/>
+        <source>Cannot set a duration of &lt; 0</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativePropertyChanges</name>
     <message>
-        <location filename="../src/corelib/kernel/qsystemsemaphore_unix.cpp" line="+119"/>
-        <source>%1: key is empty</source>
-        <comment>QSystemSemaphore</comment>
-        <translation>%1: klucz jest pusty</translation>
+        <location filename="../src/declarative/util/qdeclarativepropertychanges.cpp" line="+231"/>
+        <source>PropertyChanges does not support creating state-specific objects.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+12"/>
-        <source>%1: unable to make key</source>
-        <comment>QSystemSemaphore</comment>
-        <translation>%1: nie można utworzyć klucza</translation>
+        <location line="+151"/>
+        <source>Cannot assign to non-existent property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+9"/>
-        <source>%1: ftok failed</source>
-        <comment>QSystemSemaphore</comment>
-        <translation>%1: wystąpił błąd w funkcji ftok()</translation>
+        <location line="+3"/>
+        <source>Cannot assign to read-only property &quot;%1&quot;</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>QDB2Driver</name>
+    <name>QDeclarativeTextInput</name>
     <message>
-        <location filename="../src/sql/drivers/db2/qsql_db2.cpp" line="+1253"/>
-        <source>Unable to connect</source>
-        <translation>Nie można nawiązać połączenia</translation>
+        <location filename="../src/declarative/graphicsitems/qdeclarativetextinput.cpp" line="+783"/>
+        <location line="+8"/>
+        <source>Could not load cursor delegate</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+298"/>
-        <source>Unable to commit transaction</source>
-        <translation>Nie można dokonać transakcji</translation>
+        <location line="+11"/>
+        <source>Could not instantiate cursor delegate</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativeVME</name>
     <message>
-        <location line="+17"/>
-        <source>Unable to rollback transaction</source>
-        <translation>Nie można wycofać transakcji</translation>
+        <location filename="../src/declarative/qml/qdeclarativevme.cpp" line="+194"/>
+        <source>Unable to create object of type %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+15"/>
-        <source>Unable to set autocommit</source>
-        <translation>Nie można ustawić trybu automatycznego dokonywania transakcji</translation>
+        <location line="+380"/>
+        <source>Cannot assign value %1 to property %2</source>
+        <translation type="unfinished"></translation>
     </message>
-</context>
-<context>
-    <name>QDB2Result</name>
     <message>
-        <location line="-1030"/>
-        <location line="+240"/>
-        <source>Unable to execute statement</source>
-        <translation>Nie można wykonać polecenia</translation>
+        <location line="+22"/>
+        <source>Cannot assign object type %1 with no default method</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="-203"/>
-        <source>Unable to prepare statement</source>
-        <translation>Nie można przygotować polecenia</translation>
+        <location line="+3"/>
+        <source>Cannot connect mismatched signal/slot %1 %vs. %2</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+193"/>
-        <source>Unable to bind variable</source>
-        <translation>Nie można powiązać zmiennej</translation>
+        <location line="+5"/>
+        <source>Cannot assign an object to signal property %1</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+89"/>
-        <source>Unable to fetch record %1</source>
-        <translation>Nie można pobrać rekordu %1</translation>
+        <location line="+146"/>
+        <source>Cannot assign object to list</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+19"/>
-        <source>Unable to fetch next</source>
-        <translation>Nie można pobrać kolejnego wiersza danych</translation>
+        <location line="+41"/>
+        <source>Cannot assign object to interface property</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+21"/>
-        <source>Unable to fetch first</source>
-        <translation>Nie można pobrać pierwszego wiersza danych</translation>
+        <location line="+11"/>
+        <source>Unable to create attached object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+32"/>
+        <source>Cannot set properties on %1 as it is null</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
-    <name>QDateTimeEdit</name>
+    <name>QDeclarativeVisualDataModel</name>
     <message>
-        <location filename="../src/gui/widgets/qdatetimeedit.cpp" line="+2287"/>
-        <source>am</source>
-        <translation>am</translation>
+        <location filename="../src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp" line="+1061"/>
+        <source>Delegate component must be Item type.</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativeXmlListModel</name>
     <message>
-        <location line="+0"/>
-        <source>AM</source>
-        <translation>AM</translation>
+        <location filename="../src/declarative/util/qdeclarativeutilmodule.cpp" line="-12"/>
+        <location line="+2"/>
+        <source>Qt was built without support for xmlpatterns</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativeXmlListModelRole</name>
     <message>
-        <location line="+2"/>
-        <source>pm</source>
-        <translation>pm</translation>
+        <location filename="../src/declarative/util/qdeclarativexmllistmodel_p.h" line="+168"/>
+        <source>An XmlRole query must not start with &apos;/&apos;</source>
+        <translation type="unfinished"></translation>
     </message>
+</context>
+<context>
+    <name>QDeclarativeXmlRoleList</name>
     <message>
-        <location line="+0"/>
-        <source>PM</source>
-        <translation>PM</translation>
+        <location filename="../src/declarative/util/qdeclarativexmllistmodel.cpp" line="+638"/>
+        <source>An XmlListModel query must start with &apos;/&apos; or &quot;//&quot;</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
@@ -1317,12 +2679,12 @@ na
 <context>
     <name>QDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qdialog.cpp" line="+636"/>
+        <location filename="../src/gui/dialogs/qdialog.cpp" line="+647"/>
         <source>What&apos;s This?</source>
         <translation>Co to jest?</translation>
     </message>
     <message>
-        <location line="-135"/>
+        <location line="-122"/>
         <source>Done</source>
         <translation>Wykonano</translation>
     </message>
@@ -1330,7 +2692,7 @@ na
 <context>
     <name>QDialogButtonBox</name>
     <message>
-        <location filename="../src/gui/widgets/qdialogbuttonbox.cpp" line="+669"/>
+        <location filename="../src/gui/widgets/qdialogbuttonbox.cpp" line="+696"/>
         <source>Abort</source>
         <translation>Przerwij</translation>
     </message>
@@ -1400,7 +2762,7 @@ na
         <translation>Ni&amp;e dla wszystkich</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qmessagebox.cpp" line="+1872"/>
+        <location filename="../src/gui/dialogs/qmessagebox.cpp" line="+1920"/>
         <location line="+464"/>
         <location filename="../src/gui/widgets/qdialogbuttonbox.cpp" line="-41"/>
         <source>OK</source>
@@ -1544,7 +2906,7 @@ na
 <context>
     <name>QFile</name>
     <message>
-        <location filename="../src/corelib/io/qfile.cpp" line="+697"/>
+        <location filename="../src/corelib/io/qfile.cpp" line="+703"/>
         <location line="+155"/>
         <source>Destination file exists</source>
         <translation>Plik wyjściowy już istnieje</translation>
@@ -1583,7 +2945,7 @@ na
 <context>
     <name>QFileDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+2049"/>
+        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+2078"/>
         <source>%1 already exists.
 Do you want to replace it?</source>
         <translation>%1 już istnieje.
@@ -1637,7 +2999,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Nie można skasować katalogu.</translation>
     </message>
     <message>
-        <location line="-2106"/>
+        <location line="-2135"/>
         <source>&amp;Delete</source>
         <translation>&amp;Skasuj</translation>
     </message>
@@ -1648,18 +3010,18 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Szczegóły</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+662"/>
+        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+682"/>
         <source>Directories</source>
         <translation>Katalogi</translation>
     </message>
     <message>
-        <location line="-655"/>
-        <location line="+659"/>
+        <location line="-675"/>
+        <location line="+679"/>
         <source>Directory:</source>
         <translation>Katalog:</translation>
     </message>
     <message>
-        <location filename="../src/gui/itemviews/qfileiconprovider.cpp" line="+461"/>
+        <location filename="../src/gui/itemviews/qfileiconprovider.cpp" line="+464"/>
         <source>Drive</source>
         <translation>Urządzenie</translation>
     </message>
@@ -1712,8 +3074,8 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     </message>
     <message>
         <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-7"/>
-        <location line="+50"/>
-        <location line="+1528"/>
+        <location line="+55"/>
+        <location line="+1532"/>
         <source>&amp;Open</source>
         <translation>&amp;Otwórz</translation>
     </message>
@@ -1724,18 +3086,18 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Katalog wyżej</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-2238"/>
+        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-2267"/>
         <source>&amp;Rename</source>
         <translation>&amp;Zmień nazwę</translation>
     </message>
     <message>
-        <location line="+660"/>
-        <location line="+50"/>
+        <location line="+680"/>
+        <location line="+55"/>
         <source>&amp;Save</source>
         <translation>&amp;Zachowaj</translation>
     </message>
     <message>
-        <location line="-708"/>
+        <location line="-733"/>
         <source>Show &amp;hidden files</source>
         <translation>Pokaż &amp;ukryte pliki</translation>
     </message>
@@ -1760,7 +3122,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Znajdź katalog</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog_win.cpp" line="+174"/>
+        <location filename="../src/gui/dialogs/qfiledialog_win.cpp" line="+148"/>
         <source>All Files (*.*)</source>
         <translation>Wszystkie pliki (*.*)</translation>
     </message>
@@ -1776,18 +3138,18 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Do przodu</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+1963"/>
+        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="+1992"/>
         <source>New Folder</source>
         <translation>Nowy katalog</translation>
     </message>
     <message>
-        <location line="-1956"/>
+        <location line="-1985"/>
         <source>&amp;New Folder</source>
         <translation>&amp;Nowy katalog</translation>
     </message>
     <message>
-        <location line="+667"/>
-        <location line="+38"/>
+        <location line="+687"/>
+        <location line="+43"/>
         <source>&amp;Choose</source>
         <translation>&amp;Wybierz</translation>
     </message>
@@ -1797,14 +3159,14 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Usuń</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-722"/>
-        <location line="+450"/>
+        <location filename="../src/gui/dialogs/qfiledialog.cpp" line="-747"/>
+        <location line="+481"/>
         <source>All Files (*)</source>
         <translation>Wszystkie pliki (*)</translation>
     </message>
     <message>
-        <location line="-426"/>
-        <location line="+663"/>
+        <location line="-457"/>
+        <location line="+683"/>
         <source>File &amp;name:</source>
         <translation>Nazwa &amp;pliku:</translation>
     </message>
@@ -1820,12 +3182,42 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <source>Create New Folder</source>
         <translation>Utwórz nowy katalog</translation>
     </message>
+    <message>
+        <location/>
+        <source>Go back</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location/>
+        <source>Go forward</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location/>
+        <source>Go to the parent directory</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location/>
+        <source>Create a New Folder</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location/>
+        <source>Change to list view mode</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location/>
+        <source>Change to detail view mode</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QFileSystemModel</name>
     <message>
-        <location filename="../src/gui/dialogs/qfilesystemmodel.cpp" line="+744"/>
-        <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+476"/>
+        <location filename="../src/gui/dialogs/qfilesystemmodel.cpp" line="+740"/>
+        <location filename="../src/gui/itemviews/qdirmodel.cpp" line="+482"/>
         <source>%1 TB</source>
         <translation>%1 TB</translation>
     </message>
@@ -1853,7 +3245,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>%1 bajtów</translation>
     </message>
     <message>
-        <location line="+77"/>
+        <location line="+89"/>
         <source>Invalid filename</source>
         <translation>Niepoprawna nazwa pliku</translation>
     </message>
@@ -1890,7 +3282,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Data modyfikacji</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qfilesystemmodel_p.h" line="+258"/>
+        <location filename="../src/gui/dialogs/qfilesystemmodel_p.h" line="+261"/>
         <source>My Computer</source>
         <translation>Mój komputer</translation>
     </message>
@@ -2132,7 +3524,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QFontDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qfontdialog.cpp" line="+782"/>
+        <location filename="../src/gui/dialogs/qfontdialog.cpp" line="+774"/>
         <source>Effects</source>
         <translation>Efekty</translation>
     </message>
@@ -2152,13 +3544,12 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Przykład</translation>
     </message>
     <message>
-        <location line="-608"/>
-        <location line="+257"/>
+        <location line="-595"/>
         <source>Select Font</source>
         <translation>Wybierz czcionkę</translation>
     </message>
     <message>
-        <location line="+343"/>
+        <location line="+587"/>
         <source>&amp;Size</source>
         <translation>&amp;Rozmiar</translation>
     </message>
@@ -2181,7 +3572,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QFtp</name>
     <message>
-        <location filename="../src/network/access/qftp.cpp" line="+2337"/>
+        <location filename="../src/network/access/qftp.cpp" line="+2343"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="+2024"/>
         <source>Changing directory failed:
 %1</source>
@@ -2194,14 +3585,14 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Podłączony do hosta</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qftp.cpp" line="-1329"/>
+        <location filename="../src/network/access/qftp.cpp" line="-1335"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-1458"/>
         <location line="+1451"/>
         <source>Connected to host %1</source>
         <translation>Podłączony do hosta %1</translation>
     </message>
     <message>
-        <location line="+1317"/>
+        <location line="+1323"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-290"/>
         <source>Connecting to host failed:
 %1</source>
@@ -2216,7 +3607,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Połączenie zamknięte</translation>
     </message>
     <message>
-        <location line="-1158"/>
+        <location line="-1164"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-1299"/>
         <source>Connection refused for data connection</source>
         <translation>Połączenie do przesyłu danych odrzucone</translation>
@@ -2233,7 +3624,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Połączenie do %1 zakończone</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qftp.cpp" line="+1453"/>
+        <location filename="../src/network/access/qftp.cpp" line="+1459"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-271"/>
         <source>Creating directory failed:
 %1</source>
@@ -2254,7 +3645,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Host %1 znaleziony</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qftp.cpp" line="-1445"/>
+        <location filename="../src/network/access/qftp.cpp" line="-1451"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-1555"/>
         <source>Host %1 not found</source>
         <translation>Host %1 nie znaleziony</translation>
@@ -2265,7 +3656,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Host znaleziony</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qftp.cpp" line="+1437"/>
+        <location filename="../src/network/access/qftp.cpp" line="+1443"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-289"/>
         <source>Listing directory failed:
 %1</source>
@@ -2277,11 +3668,11 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-3"/>
         <source>Login failed:
 %1</source>
-        <translation>Logowanie nie powiodło się:
+        <translation>Logowanie zakończone błędem:
 %1</translation>
     </message>
     <message>
-        <location line="-1501"/>
+        <location line="-1507"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-1335"/>
         <source>Not connected</source>
         <translation>Nie podłączony</translation>
@@ -2292,7 +3683,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Przekroczony czas połączenia do hosta %1</translation>
     </message>
     <message>
-        <location line="+1453"/>
+        <location line="+1459"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="+1356"/>
         <source>Removing directory failed:
 %1</source>
@@ -2308,7 +3699,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 %1</translation>
     </message>
     <message>
-        <location line="-944"/>
+        <location line="-950"/>
         <location line="+29"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="-823"/>
         <location line="+728"/>
@@ -2316,7 +3707,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Nieznany błąd</translation>
     </message>
     <message>
-        <location line="+911"/>
+        <location line="+917"/>
         <location filename="../src/qt3support/network/q3ftp.cpp" line="+92"/>
         <source>Uploading file failed:
 %1</source>
@@ -2325,19 +3716,33 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     </message>
 </context>
 <context>
+    <name>QGstreamerPlayerSession</name>
+    <message>
+        <location filename="../src/plugins/mediaservices/gstreamer/mediaplayer/qgstreamerplayersession.cpp" line="+423"/>
+        <location line="+16"/>
+        <source>Unable to play %1</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QHostInfo</name>
     <message>
-        <location filename="../src/network/kernel/qhostinfo_p.h" line="+185"/>
+        <location filename="../src/network/kernel/qhostinfo_p.h" line="+103"/>
         <source>Unknown error</source>
         <translation>Nieznany błąd</translation>
     </message>
+    <message>
+        <location filename="../src/network/kernel/qhostinfo.cpp" line="+175"/>
+        <source>No host name given</source>
+        <translation>Nie podano nazwy hosta</translation>
+    </message>
 </context>
 <context>
     <name>QHostInfoAgent</name>
     <message>
-        <location filename="../src/network/kernel/qhostinfo_unix.cpp" line="+257"/>
+        <location filename="../src/network/kernel/qhostinfo_unix.cpp" line="+259"/>
         <location line="+32"/>
-        <location filename="../src/network/kernel/qhostinfo_win.cpp" line="+220"/>
+        <location filename="../src/network/kernel/qhostinfo_win.cpp" line="+216"/>
         <location line="+27"/>
         <source>Host not found</source>
         <translation>Host nie znaleziony</translation>
@@ -2358,12 +3763,14 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Nieznany błąd</translation>
     </message>
     <message>
+        <location line="-98"/>
         <location filename="../src/network/kernel/qhostinfo_win.cpp" line="-67"/>
         <source>No host name given</source>
         <translation>Nie podano nazwy hosta</translation>
     </message>
     <message>
-        <location line="+0"/>
+        <location line="+1"/>
+        <location filename="../src/network/kernel/qhostinfo_win.cpp" line="+0"/>
         <source>Invalid hostname</source>
         <translation>Niepoprawna nazwa hosta</translation>
     </message>
@@ -2381,7 +3788,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Podłączony do hosta %1</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+581"/>
+        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="-3"/>
         <location filename="../src/qt3support/network/q3http.cpp" line="+17"/>
         <source>Connection closed</source>
         <translation>Połączenie zakończone</translation>
@@ -2416,8 +3823,6 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     </message>
     <message>
         <location filename="../src/network/access/qhttp.cpp" line="+20"/>
-        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+10"/>
-        <location line="+19"/>
         <location filename="../src/qt3support/network/q3http.cpp" line="-464"/>
         <source>HTTP request failed</source>
         <translation>Komenda HTTP zakończona błędem</translation>
@@ -2494,7 +3899,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Błąd zapisywania odpowiedzi do urządzenia</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="-16"/>
+        <location filename="../src/network/access/qhttpnetworkconnection.cpp" line="+13"/>
         <source>Proxy requires authentication</source>
         <translation>Pośrednik wymaga autoryzacji</translation>
     </message>
@@ -2516,7 +3921,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="+3"/>
         <source>SSL handshake failed</source>
-        <translation>Nawiązanie sesji SSL nie powiodło się</translation>
+        <translation>Nawiązanie sesji SSL zakończone błędem</translation>
     </message>
     <message>
         <location filename="../src/network/access/qhttp.cpp" line="-328"/>
@@ -2688,7 +4093,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QIODevice</name>
     <message>
-        <location filename="../src/corelib/global/qglobal.cpp" line="+2081"/>
+        <location filename="../src/corelib/global/qglobal.cpp" line="+2108"/>
         <source>No space left on device</source>
         <translation>Brak wolnego miejsca na urządzeniu</translation>
     </message>
@@ -2700,7 +4105,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="-6"/>
         <source>Permission denied</source>
-        <translation>Brak dostępu</translation>
+        <translation>Brak uprawnień</translation>
     </message>
     <message>
         <location line="+3"/>
@@ -2708,7 +4113,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Zbyt wiele otwartych plików</translation>
     </message>
     <message>
-        <location filename="../src/corelib/io/qiodevice.cpp" line="+1556"/>
+        <location filename="../src/corelib/io/qiodevice.cpp" line="+1596"/>
         <source>Unknown error</source>
         <translation>Nieznany błąd</translation>
     </message>
@@ -2716,7 +4121,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QInputContext</name>
     <message>
-        <location filename="../src/gui/inputmethod/qinputcontextfactory.cpp" line="+291"/>
+        <location filename="../src/gui/inputmethod/qinputcontextfactory.cpp" line="+336"/>
         <source>Mac OS X input method</source>
         <translation>Metoda wprowadzania Mac OS X</translation>
     </message>
@@ -2772,7 +4177,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Błąd podczas weryfikacji danych we wtyczce &apos;%1&apos;</translation>
     </message>
     <message>
-        <location line="+350"/>
+        <location line="+381"/>
         <source>The plugin &apos;%1&apos; uses incompatible Qt library. (%2.%3.%4) [%5]</source>
         <translation>Wtyczka &apos;%1&apos; używa niepoprawnej wersji biblioteki QT. (%2.%3.%4) [%5]</translation>
     </message>
@@ -2787,7 +4192,8 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Nieznany błąd</translation>
     </message>
     <message>
-        <location line="-402"/>
+        <location line="-540"/>
+        <location line="+138"/>
         <location filename="../src/corelib/plugin/qpluginloader.cpp" line="+343"/>
         <source>The shared library was not found.</source>
         <translation>Biblioteka współdzielona niedostępna.</translation>
@@ -2824,7 +4230,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QLineEdit</name>
     <message>
-        <location filename="../src/gui/widgets/qlineedit.cpp" line="+2033"/>
+        <location filename="../src/gui/widgets/qlineedit.cpp" line="+2089"/>
         <source>&amp;Copy</source>
         <translation>S&amp;kopiuj</translation>
     </message>
@@ -2870,7 +4276,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location filename="../src/network/socket/qlocalserver_unix.cpp" line="-8"/>
         <source>%1: Permission denied</source>
-        <translation>%1: Brak dostępu</translation>
+        <translation>%1: Brak uprawnień</translation>
     </message>
     <message>
         <location line="+12"/>
@@ -2900,8 +4306,8 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="+3"/>
         <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/>
-        <location filename="../src/network/socket/qlocalsocket_win.cpp" line="+80"/>
-        <location line="+45"/>
+        <location filename="../src/network/socket/qlocalsocket_win.cpp" line="+79"/>
+        <location line="+59"/>
         <source>%1: Invalid name</source>
         <translation>%1: Niepoprawna nazwa</translation>
     </message>
@@ -2932,7 +4338,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="+3"/>
         <location filename="../src/network/socket/qlocalsocket_unix.cpp" line="+3"/>
-        <location filename="../src/network/socket/qlocalsocket_win.cpp" line="-50"/>
+        <location filename="../src/network/socket/qlocalsocket_win.cpp" line="-64"/>
         <source>%1: Connection error</source>
         <translation>%1: Błąd połączenia</translation>
     </message>
@@ -2957,7 +4363,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QMYSQLDriver</name>
     <message>
-        <location filename="../src/sql/drivers/mysql/qsql_mysql.cpp" line="+1431"/>
+        <location filename="../src/sql/drivers/mysql/qsql_mysql.cpp" line="+1448"/>
         <source>Unable to begin transaction</source>
         <translation>Nie można rozpocząć transakcji</translation>
     </message>
@@ -3145,6 +4551,39 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     </message>
 </context>
 <context>
+    <name>QMediaPlayer</name>
+    <message>
+        <location filename="../src/multimedia/playback/qmediaplayer.cpp" line="+496"/>
+        <source>The QMediaPlayer object does not have a valid service</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QMediaPlaylist</name>
+    <message>
+        <location filename="../src/multimedia/base/qmediaplaylist.cpp" line="+455"/>
+        <location line="+46"/>
+        <source>Could not add items to read only playlist.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="-27"/>
+        <location line="+46"/>
+        <source>Playlist format is not supported</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+26"/>
+        <source>The file could not be accessed.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+35"/>
+        <source>Playlist format is not supported.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QMenu</name>
     <message>
         <location filename="../src/plugins/accessible/widgets/qaccessiblemenu.cpp" line="+157"/>
@@ -3169,7 +4608,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QMenuBar</name>
     <message>
-        <location filename="../src/gui/widgets/qmenu_symbian.cpp" line="+410"/>
+        <location filename="../src/gui/widgets/qmenu_symbian.cpp" line="+452"/>
         <source>Actions</source>
         <translation>Akcje</translation>
     </message>
@@ -3187,12 +4626,12 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Pomoc</translation>
     </message>
     <message>
-        <location line="-1098"/>
+        <location line="-1129"/>
         <source>Hide Details...</source>
         <translation>Ukryj szczegóły...</translation>
     </message>
     <message>
-        <location line="+250"/>
+        <location line="+281"/>
         <location line="+847"/>
         <location filename="../src/gui/dialogs/qmessagebox.h" line="-52"/>
         <location line="+8"/>
@@ -3207,10 +4646,10 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="+5"/>
         <source>&lt;p&gt;Qt is a C++ toolkit for cross-platform application development.&lt;/p&gt;&lt;p&gt;Qt provides single-source portability across MS&amp;nbsp;Windows, Mac&amp;nbsp;OS&amp;nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.&lt;/p&gt;&lt;p&gt;Qt is available under three different licensing options designed to accommodate the needs of our various users.&lt;/p&gt;&lt;p&gt;Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.&lt;/p&gt;&lt;p&gt;Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.&lt;/p&gt;&lt;p&gt;Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.&lt;/p&gt;&lt;p&gt;Please see &lt;a href=&quot;http://qt.nokia.com/products/licensing&quot;&gt;qt.nokia.com/products/licensing&lt;/a&gt; for an overview of Qt licensing.&lt;/p&gt;&lt;p&gt;Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).&lt;/p&gt;&lt;p&gt;Qt is a Nokia product. See &lt;a href=&quot;http://qt.nokia.com/&quot;&gt;qt.nokia.com&lt;/a&gt; for more information.&lt;/p&gt;</source>
-        <translation type="unfinished"></translation>
+        <translation type="unfinished">&lt;p&gt;Qt jest zestawem narzędzi programistycznych dedykowanym dla języka C++. Służy on do opracowywania aplikacji międzyplatformowych.&lt;/p&gt;&lt;p&gt;Qt umożliwia jednoźródłowe przenoszenie między systemami MS&amp;nbsp;Windows, Mac&amp;nbsp;OS&amp;nbsp;X, Linux i wszystkimi głównymi wersjami komercyjnymi systemu Unix. Środowisko Qt jest dostępne dla urządzeń wbudowanych opartych na systemie Linux ( Qt dla wbudowanego systemu Linux) oraz Windows CE.&lt;/p&gt;&lt;p&gt;Zestaw Qt jest dostępny w trzech różnych opcjach licencjonowania stworzonych w celu zadowolenia naszych różnych użytkowników.&lt;/p&gt;&lt;p&gt;Qt podlegający licencji zgodnie z naszą komercyjną umową licencyjną jest odpowiedni do opracowywania oprogramowań własnościowych/komercyjnych, dzięki czemu kod źródłowy nie jest udostępniany osobom trzecim. W przeciwnym razie zestaw Qt jest niezgodny z warunkami licencji GNU LGPL w wersji 2.1 lub GNU GPL w wersji 3.0.&lt;/p&gt;&lt;p&gt;Środowisko Qt objęte licencją GNU LGPL w wersji 2.1 nadaje się do tworzenia aplikacji Qt (własnościowych lub oprogramowań otwartych) tylko wtedy, gdy przestrzegane są warunki licencji GNU LGPL w wersji 2.1.&lt;/p&gt;&lt;p&gt;Qt objęty Powszechną Licencją Publiczną GNU w wersji 3.0 jest odpowiedni do opracowywania aplikacji QT, aby móc korzystać z aplikacji w połączeniu z oprogramowaniem podlegającym warunkom licencji GNU GPL w wersji 3.0 lub aby przestrzegać warunków licencji GNU GPL w wersji 3.0.&lt;/p&gt;&lt;p&gt;Więcej informacji na temat licencji Qt można znaleźć na stronie &lt;a href=&quot;http://qt.nokia.com/products/licensing&quot;&gt;qt.nokia.com/products/licensing&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Copyright (C) 2010 Nokia Corporation i/lub oddziały firmy.&lt;/p&gt;&lt;p&gt;Qt jest produktem firmy Nokia. Dodatkowe informacje znajdują się na stronie &lt;a href=&quot;http://qt.nokia.com/&quot;&gt;qt.nokia.com&lt;/a&gt; &lt;/p&gt;</translation>
     </message>
     <message>
-        <location line="-1580"/>
+        <location line="-1610"/>
         <source>Show Details...</source>
         <translation>Pokaż szczegóły...</translation>
     </message>
@@ -3239,7 +4678,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QNativeSocketEngine</name>
     <message>
-        <location filename="../src/network/socket/qnativesocketengine.cpp" line="+263"/>
+        <location filename="../src/network/socket/qnativesocketengine.cpp" line="+266"/>
         <source>Another socket is already listening on the same port</source>
         <translation>Inne gniazdo nasłuchuje już na tym porcie</translation>
     </message>
@@ -3301,7 +4740,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location line="+18"/>
         <source>Permission denied</source>
-        <translation>Brak dostępu</translation>
+        <translation>Brak uprawnień</translation>
     </message>
     <message>
         <location line="-12"/>
@@ -3378,23 +4817,46 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     </message>
 </context>
 <context>
+    <name>QNetworkAccessDataBackend</name>
+    <message>
+        <location filename="../src/network/access/qnetworkaccessdatabackend.cpp" line="+76"/>
+        <source>Operation not supported on %1</source>
+        <translation type="unfinished">Operacja nieobsługiwana na %1</translation>
+    </message>
+    <message>
+        <location line="+25"/>
+        <source>Invalid URI: %1</source>
+        <translation type="unfinished">Niepoprawny URI: %1</translation>
+    </message>
+</context>
+<context>
     <name>QNetworkAccessDebugPipeBackend</name>
     <message>
         <location filename="../src/network/access/qnetworkaccessdebugpipebackend.cpp" line="+195"/>
         <source>Write error writing to %1: %2</source>
         <translation>Błąd w trakcie zapisywania do %1: %2</translation>
     </message>
+    <message>
+        <location line="+60"/>
+        <source>Socket error on %1: %2</source>
+        <translation type="unfinished">Błąd gniazda na %1: %2</translation>
+    </message>
+    <message>
+        <location line="+15"/>
+        <source>Remote host closed the connection prematurely on %1</source>
+        <translation type="unfinished">Zdalny host przedwcześnie zakończył połączenie na %1</translation>
+    </message>
 </context>
 <context>
     <name>QNetworkAccessFileBackend</name>
     <message>
-        <location filename="../src/network/access/qfilenetworkreply.cpp" line="+83"/>
+        <location filename="../src/network/access/qfilenetworkreply.cpp" line="+85"/>
         <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+100"/>
         <source>Request for opening non-local file %1</source>
         <translation>Żądanie otwarcia zdalnego pliku %1</translation>
     </message>
     <message>
-        <location line="+31"/>
+        <location line="+33"/>
         <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+45"/>
         <source>Error opening %1: %2</source>
         <translation>Błąd otwierania %1: %2</translation>
@@ -3405,7 +4867,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Błąd w trakcie zapisywania do %1: %2</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qfilenetworkreply.cpp" line="-11"/>
+        <location filename="../src/network/access/qfilenetworkreply.cpp" line="-13"/>
         <location filename="../src/network/access/qnetworkaccessfilebackend.cpp" line="+48"/>
         <source>Cannot open %1: Path is a directory</source>
         <translation>Nie można otworzyć %1: Ścieżka jest katalogiem</translation>
@@ -3447,37 +4909,111 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QNetworkAccessHttpBackend</name>
     <message>
-        <location filename="../src/network/access/qnetworkaccesshttpbackend.cpp" line="+585"/>
+        <location filename="../src/network/access/qnetworkaccesshttpbackend.cpp" line="+645"/>
         <source>No suitable proxy found</source>
         <translation>Nie odnaleziono odpowiedniego pośrednika</translation>
     </message>
 </context>
 <context>
+    <name>QNetworkAccessManager</name>
+    <message>
+        <location filename="../src/network/access/qnetworkreplyimpl.cpp" line="+910"/>
+        <source>Network access is disabled.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QNetworkReply</name>
     <message>
-        <location line="+95"/>
+        <location filename="../src/network/access/qnetworkaccesshttpbackend.cpp" line="+101"/>
         <source>Error downloading %1 - server replied: %2</source>
         <translation>Błąd podczas pobierania %1 - odpowiedź serwera: %2</translation>
     </message>
     <message>
-        <location filename="../src/network/access/qnetworkreplyimpl.cpp" line="+77"/>
+        <location filename="../src/network/access/qnetworkreplyimpl.cpp" line="-828"/>
         <source>Protocol &quot;%1&quot; is unknown</source>
         <translation>Protokół &quot;%1&quot; nie jest znany</translation>
     </message>
+    <message>
+        <location line="+192"/>
+        <source>Network session error.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+329"/>
+        <source>Temporary network failure.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QNetworkReplyImpl</name>
     <message>
-        <location line="+519"/>
+        <location line="+111"/>
         <location line="+28"/>
         <source>Operation canceled</source>
         <translation>Operacja anulowana</translation>
     </message>
 </context>
 <context>
+    <name>QNetworkSession</name>
+    <message>
+        <location filename="../src/network/bearer/qnetworksession.cpp" line="+449"/>
+        <source>Invalid configuration.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
+    <name>QNetworkSessionPrivateImpl</name>
+    <message>
+        <location filename="../src/plugins/bearer/icd/qnetworksession_impl.cpp" line="+1005"/>
+        <source>Roaming error</source>
+        <translation>Błąd roamingu</translation>
+    </message>
+    <message>
+        <location line="+3"/>
+        <source>Session aborted by user or system</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Unidentified Error</source>
+        <translation>Niezidentyfikowany błąd</translation>
+    </message>
+    <message>
+        <location filename="../src/plugins/bearer/qnetworksession_impl.cpp" line="+272"/>
+        <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+227"/>
+        <source>Unknown session error.</source>
+        <translation>Nieznany błąd sesji.</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/>
+        <source>The session was aborted by the user or system.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/>
+        <source>The requested operation is not supported by the system.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/>
+        <source>The specified configuration cannot be used.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <location filename="../src/plugins/bearer/symbian/qnetworksession_impl.cpp" line="+2"/>
+        <source>Roaming was aborted or is not possible.</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
+<context>
     <name>QOCIDriver</name>
     <message>
-        <location filename="../src/sql/drivers/oci/qsql_oci.cpp" line="+1939"/>
+        <location filename="../src/sql/drivers/oci/qsql_oci.cpp" line="+1944"/>
         <source>Unable to initialize</source>
         <comment>QOCIDriver</comment>
         <translation>Nie można dokonać inicjalizacji</translation>
@@ -3551,17 +5087,17 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QODBCDriver</name>
     <message>
-        <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="+2045"/>
+        <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="+2174"/>
         <source>Unable to commit transaction</source>
         <translation>Nie można potwierdzić transakcji</translation>
     </message>
     <message>
-        <location line="-255"/>
+        <location line="-286"/>
         <source>Unable to connect</source>
         <translation>Nie można nawiązać połączenia</translation>
     </message>
     <message>
-        <location line="+238"/>
+        <location line="+269"/>
         <source>Unable to disable autocommit</source>
         <translation>Nie można wyłączyć trybu automatycznego dokonywania transakcji</translation>
     </message>
@@ -3576,7 +5112,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>Nie można wycofać transakcji</translation>
     </message>
     <message>
-        <location line="-266"/>
+        <location line="-297"/>
         <source>Unable to connect - Driver doesn&apos;t support all functionality required</source>
         <translation>Nie można nawiązać połączenia - sterownik nie obsługuje całej potrzebnej funkcjonalności</translation>
     </message>
@@ -3584,24 +5120,24 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QODBCResult</name>
     <message>
-        <location line="-932"/>
-        <location line="+346"/>
+        <location line="-941"/>
+        <location line="+351"/>
         <source>QODBCResult::reset: Unable to set &apos;SQL_CURSOR_STATIC&apos; as statement attribute. Please check your ODBC driver configuration</source>
         <translation>QODBCResult::reset: Nie można ustawić &apos;SQL_CURSOR_STATIC&apos; jako atrybutu polecenia. Proszę sprawdzić konfiguracje sterownika ODBC</translation>
     </message>
     <message>
-        <location line="+286"/>
+        <location line="+285"/>
         <source>Unable to bind variable</source>
         <translation>Nie można powiązać zmiennej</translation>
     </message>
     <message>
-        <location line="-615"/>
-        <location line="+623"/>
+        <location line="-619"/>
+        <location line="+627"/>
         <source>Unable to execute statement</source>
         <translation>Nie można wykonać polecenia</translation>
     </message>
     <message>
-        <location line="-547"/>
+        <location line="-546"/>
         <source>Unable to fetch next</source>
         <translation>Nie można pobrać kolejnych danych</translation>
     </message>
@@ -3613,12 +5149,12 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
     <message>
         <location filename="../src/sql/drivers/db2/qsql_db2.cpp" line="+189"/>
         <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="-199"/>
-        <location line="+576"/>
+        <location line="+578"/>
         <source>Unable to fetch last</source>
         <translation>Nie można pobrać ostatnich danych</translation>
     </message>
     <message>
-        <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="-670"/>
+        <location filename="../src/sql/drivers/odbc/qsql_odbc.cpp" line="-672"/>
         <source>Unable to fetch</source>
         <translation>Nie można pobrać</translation>
     </message>
@@ -3636,41 +5172,21 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QObject</name>
     <message>
-        <location filename="../src/network/kernel/qhostinfo_unix.cpp" line="-97"/>
-        <source>Invalid hostname</source>
-        <translation>Niepoprawna nazwa hosta</translation>
-    </message>
-    <message>
-        <location filename="../src/network/access/qnetworkaccessdatabackend.cpp" line="+74"/>
-        <source>Operation not supported on %1</source>
-        <translation>Operacja nieobsługiwana na %1</translation>
-    </message>
-    <message>
-        <location line="+57"/>
-        <source>Invalid URI: %1</source>
-        <translation>Niepoprawny URI: %1</translation>
-    </message>
-    <message>
-        <location filename="../src/network/access/qnetworkaccessdebugpipebackend.cpp" line="+60"/>
-        <source>Socket error on %1: %2</source>
-        <translation>Błąd gniazda na %1: %2</translation>
-    </message>
-    <message>
-        <location line="+15"/>
-        <source>Remote host closed the connection prematurely on %1</source>
-        <translation>Zdalny host przedwcześnie zakończył połączenie na %1</translation>
+        <location filename="../src/3rdparty/phonon/phonon/pulsesupport.cpp" line="+162"/>
+        <location line="+11"/>
+        <source>PulseAudio Sound Server</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location filename="../src/network/kernel/qhostinfo.cpp" line="+175"/>
-        <location filename="../src/network/kernel/qhostinfo_unix.cpp" line="+0"/>
-        <source>No host name given</source>
-        <translation>Nie podano nazwy hosta</translation>
+        <location filename="../src/declarative/util/qdeclarativexmllistmodel.cpp" line="-194"/>
+        <source>&quot;%1&quot; duplicates a previous role name and will be disabled.</source>
+        <translation type="unfinished"></translation>
     </message>
 </context>
 <context>
     <name>QPPDOptionsModel</name>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="+1197"/>
+        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="+1238"/>
         <source>Name</source>
         <translation>Nazwa</translation>
     </message>
@@ -3845,7 +5361,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
 <context>
     <name>QPrintDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="+329"/>
+        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="+333"/>
         <source>A0 (841 x 1189 mm)</source>
         <translation>A0 (841 x 1189 mm)</translation>
     </message>
@@ -3895,13 +5411,18 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>A9 (37 x 52 mm)</translation>
     </message>
     <message>
-        <location filename="../src/gui/painting/qprinterinfo_unix.cpp" line="+131"/>
+        <location line="+40"/>
+        <source>Print current page</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../src/gui/painting/qprinterinfo_unix.cpp" line="+133"/>
         <location line="+225"/>
         <source>Aliases: %1</source>
         <translation>Aliasy: %1</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="+1"/>
+        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="-39"/>
         <source>B0 (1000 x 1414 mm)</source>
         <translation>B0 (1000 x 1414 mm)</translation>
     </message>
@@ -3971,7 +5492,7 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>podłączony lokalnie</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="+266"/>
+        <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="+272"/>
         <source>OK</source>
         <translation>OK</translation>
     </message>
@@ -4027,14 +5548,14 @@ Proszę o sprawdzenie podanej nazwy pliku.</translation>
         <translation>US Common #10 Envelope (105 x 241 mm)</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qabstractprintdialog.cpp" line="+112"/>
+        <location filename="../src/gui/dialogs/qabstractprintdialog.cpp" line="+113"/>
         <location line="+13"/>
         <location filename="../src/gui/dialogs/qprintdialog_win.cpp" line="-2"/>
         <source>Print</source>
         <translation>Drukowanie</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-359"/>
+        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-392"/>
         <source>Print To File ...</source>
         <translation>Drukuj do pliku ...</translation>
     </message>
@@ -4060,7 +5581,7 @@ Please choose a different file name.</source>
 Proszę wybrać inną nazwę pliku.</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="-210"/>
+        <location filename="../src/gui/dialogs/qprintdialog_qws.cpp" line="-214"/>
         <source>File exists</source>
         <translation>Plik istnieje</translation>
     </message>
@@ -4070,7 +5591,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>&lt;qt&gt;Czy chcesz nadpisać?&lt;/qt&gt;</translation>
     </message>
     <message>
-        <location line="+227"/>
+        <location line="+231"/>
         <source>Print selection</source>
         <translation>Drukuj zaznaczone</translation>
     </message>
@@ -4230,7 +5751,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Niestandardowy</translation>
     </message>
     <message>
-        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-523"/>
+        <location filename="../src/gui/dialogs/qprintdialog_unix.cpp" line="-530"/>
         <location line="+68"/>
         <source>&amp;Options &gt;&gt;</source>
         <translation>&amp;Opcje &gt;&gt;</translation>
@@ -4246,7 +5767,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>&amp;Opcje &lt;&lt;</translation>
     </message>
     <message>
-        <location line="+253"/>
+        <location line="+260"/>
         <source>Print to File (PDF)</source>
         <translation>Drukuj do pliku (PDF)</translation>
     </message>
@@ -4274,12 +5795,12 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QPrintPreviewDialog</name>
     <message>
-        <location filename="../src/gui/dialogs/qprintpreviewdialog.cpp" line="+246"/>
+        <location filename="../src/gui/dialogs/qprintpreviewdialog.cpp" line="+249"/>
         <source>%1%</source>
         <translation>%1%</translation>
     </message>
     <message>
-        <location line="+68"/>
+        <location line="+84"/>
         <source>Print Preview</source>
         <translation>Podgląd wydruku</translation>
     </message>
@@ -4359,7 +5880,12 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Ustawienia strony</translation>
     </message>
     <message>
-        <location line="+150"/>
+        <location line="+6"/>
+        <source>Close</source>
+        <translation>Zamknij</translation>
+    </message>
+    <message>
+        <location line="+148"/>
         <source>Export to PDF</source>
         <translation>Wyeksportuj do PDF</translation>
     </message>
@@ -4490,6 +6016,11 @@ Proszę wybrać inną nazwę pliku.</translation>
         <source>Short side</source>
         <translation>Krótka strona</translation>
     </message>
+    <message>
+        <location/>
+        <source>Current Page</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>QPrintWidget</name>
@@ -4572,7 +6103,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Przekroczony czas operacji procesu</translation>
     </message>
     <message>
-        <location filename="../src/corelib/io/qprocess.cpp" line="+855"/>
+        <location filename="../src/corelib/io/qprocess.cpp" line="+866"/>
         <location line="+52"/>
         <location filename="../src/corelib/io/qprocess_win.cpp" line="-211"/>
         <location line="+50"/>
@@ -4687,7 +6218,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QSQLite2Driver</name>
     <message>
-        <location filename="../src/sql/drivers/sqlite2/qsql_sqlite2.cpp" line="+391"/>
+        <location filename="../src/sql/drivers/sqlite2/qsql_sqlite2.cpp" line="+399"/>
         <source>Error opening database</source>
         <translation>Błąd otwierania bazy danych</translation>
     </message>
@@ -4715,7 +6246,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Nie można wykonać polecenia</translation>
     </message>
     <message>
-        <location line="-143"/>
+        <location line="-150"/>
         <source>Unable to fetch results</source>
         <translation>Nie można pobrać wyników</translation>
     </message>
@@ -4723,7 +6254,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QSQLiteDriver</name>
     <message>
-        <location filename="../src/sql/drivers/sqlite/qsql_sqlite.cpp" line="+551"/>
+        <location filename="../src/sql/drivers/sqlite/qsql_sqlite.cpp" line="+549"/>
         <source>Error closing database</source>
         <translation>Błąd zamykania bazy danych</translation>
     </message>
@@ -4751,7 +6282,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QSQLiteResult</name>
     <message>
-        <location line="-203"/>
+        <location line="-194"/>
         <source>Parameter count mismatch</source>
         <translation>Niezgodna liczba parametrów</translation>
     </message>
@@ -5009,7 +6540,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QScriptDebuggerLocalsModel</name>
     <message>
-        <location filename="../src/scripttools/debugging/qscriptdebuggerlocalsmodel.cpp" line="+872"/>
+        <location filename="../src/scripttools/debugging/qscriptdebuggerlocalsmodel.cpp" line="+897"/>
         <source>Name</source>
         <translation>Nazwa</translation>
     </message>
@@ -5229,7 +6760,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <location filename="../src/corelib/kernel/qsharedmemory_unix.cpp" line="+81"/>
         <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+87"/>
         <source>%1: permission denied</source>
-        <translation>%1: brak dostępu</translation>
+        <translation>%1: brak uprawnień</translation>
     </message>
     <message>
         <location line="-16"/>
@@ -5310,7 +6841,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location filename="../src/corelib/kernel/qsharedmemory_win.cpp" line="+32"/>
         <source>%1: size query failed</source>
-        <translation>%1: zapytanie o rozmiar nie powiodło się</translation>
+        <translation>%1: zapytanie o rozmiar zakończone błędem</translation>
     </message>
     <message>
         <location filename="../src/corelib/kernel/qsharedmemory.cpp" line="-271"/>
@@ -5321,7 +6852,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QShortcut</name>
     <message>
-        <location filename="../src/gui/kernel/qkeysequence.cpp" line="+1249"/>
+        <location filename="../src/gui/kernel/qkeysequence.cpp" line="+1312"/>
         <source>+</source>
         <translation>+</translation>
     </message>
@@ -5332,7 +6863,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Alt</translation>
     </message>
     <message>
-        <location line="-871"/>
+        <location line="-934"/>
         <source>Back</source>
         <translation>Back</translation>
     </message>
@@ -5389,27 +6920,27 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Keyboard Light On/Off</source>
-        <translation type="unfinished"></translation>
+        <translation>Włącz/wyłącz podświetlenie klawiatury</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Keyboard Brightness Up</source>
-        <translation type="unfinished"></translation>
+        <translation>Zwiększ jasność klawiatury</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Keyboard Brightness Down</source>
-        <translation type="unfinished"></translation>
+        <translation>Zmniejsz jasność klawiatury</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Power Off</source>
-        <translation type="unfinished"></translation>
+        <translation>Wyłącz zasilanie</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Wake Up</source>
-        <translation type="unfinished"></translation>
+        <translation>Przebudzenie</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5429,12 +6960,12 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Sleep</source>
-        <translation type="unfinished"></translation>
+        <translation>Uśpienie</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>LightBulb</source>
-        <translation type="unfinished"></translation>
+        <translation>Żarówka</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5454,17 +6985,17 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Hot Links</source>
-        <translation type="unfinished"></translation>
+        <translation>Popularne łącza</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Adjust Brightness</source>
-        <translation type="unfinished"></translation>
+        <translation>Ustaw jasność</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Finance</source>
-        <translation type="unfinished"></translation>
+        <translation>Finanse</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5474,7 +7005,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Audio Rewind</source>
-        <translation type="unfinished"></translation>
+        <translation>Przewijanie do tyłu</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5534,7 +7065,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Display</source>
-        <translation type="unfinished"></translation>
+        <translation>Wyświetlacz</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5549,7 +7080,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Spreadsheet</source>
-        <translation type="unfinished"></translation>
+        <translation>Arkusz kalkulacyjny</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5559,7 +7090,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Game</source>
-        <translation type="unfinished"></translation>
+        <translation>Gra</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5574,7 +7105,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Logoff</source>
-        <translation type="unfinished"></translation>
+        <translation>Wyloguj</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5589,12 +7120,12 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Keyboard Menu</source>
-        <translation type="unfinished"></translation>
+        <translation>Menu klawiatury</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Menu PB</source>
-        <translation type="unfinished"></translation>
+        <translation>Menu PB</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5609,7 +7140,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Home Office</source>
-        <translation type="unfinished"></translation>
+        <translation>Biuro domowe</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5644,12 +7175,12 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Rotation PB</source>
-        <translation type="unfinished"></translation>
+        <translation>Obrót PB</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Rotation KB</source>
-        <translation type="unfinished"></translation>
+        <translation>Obrót KB</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5664,7 +7195,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Spellchecker</source>
-        <translation type="unfinished"></translation>
+        <translation>Sprawdzanie pisowni</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5679,7 +7210,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Task Panel</source>
-        <translation type="unfinished"></translation>
+        <translation>Panel zadań</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5704,12 +7235,12 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Word Processor</source>
-        <translation type="unfinished"></translation>
+        <translation>Procesor tekstu</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>XFer</source>
-        <translation type="unfinished"></translation>
+        <translation>XFer</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5729,7 +7260,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Messenger</source>
-        <translation type="unfinished"></translation>
+        <translation>Komunikator</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5739,7 +7270,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Mail Forward</source>
-        <translation type="unfinished"></translation>
+        <translation>Przekazanie poczty</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5769,22 +7300,22 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Ultra Wide Band</source>
-        <translation type="unfinished"></translation>
+        <translation>Ultraszerokie pasmo</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Audio Forward</source>
-        <translation type="unfinished"></translation>
+        <translation>Przewijanie do przodu</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Audio Repeat</source>
-        <translation type="unfinished"></translation>
+        <translation>Powtarzanie</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Audio Random Play</source>
-        <translation type="unfinished"></translation>
+        <translation>Odtwarzanie losowe</translation>
     </message>
     <message>
         <location line="+1"/>
@@ -5814,12 +7345,12 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+1"/>
         <source>Suspend</source>
-        <translation type="unfinished"></translation>
+        <translation>Wstrzymanie</translation>
     </message>
     <message>
         <location line="+1"/>
         <source>Hibernate</source>
-        <translation type="unfinished"></translation>
+        <translation>Hibernacja</translation>
     </message>
     <message>
         <location line="+24"/>
@@ -5842,13 +7373,163 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Kontekst4</translation>
     </message>
     <message>
-        <location line="+578"/>
+        <location line="+7"/>
+        <source>Kanji</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Muhenkan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Henkan</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Romaji</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hiragana</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Katakana</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hiragana Katakana</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Zenkaku</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hankaku</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Zenkaku Hankaku</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Touroku</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Massyo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Kana Lock</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Kana Shift</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Eisu Shift</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Eisu toggle</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Code input</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Multiple Candidate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Previous Candidate</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+4"/>
+        <source>Hangul</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Start</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul End</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Hanja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Jamo</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Romaja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Jeonja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Banja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul PreHanja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul PostHanja</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+1"/>
+        <source>Hangul Special</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+602"/>
         <location line="+135"/>
         <source>Ctrl</source>
         <translation>Ctrl</translation>
     </message>
     <message>
-        <location line="-890"/>
+        <location line="-953"/>
         <source>Del</source>
         <translation>Del</translation>
     </message>
@@ -5883,12 +7564,12 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Escape</translation>
     </message>
     <message>
-        <location line="+746"/>
+        <location line="+809"/>
         <source>F%1</source>
         <translation>F%1</translation>
     </message>
     <message>
-        <location line="-870"/>
+        <location line="-933"/>
         <source>Favorites</source>
         <translation>Ulubione</translation>
     </message>
@@ -6058,13 +7739,13 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Menu</translation>
     </message>
     <message>
-        <location line="+743"/>
+        <location line="+806"/>
         <location line="+130"/>
         <source>Meta</source>
         <translation>Meta</translation>
     </message>
     <message>
-        <location line="-718"/>
+        <location line="-781"/>
         <source>No</source>
         <translation>Nie</translation>
     </message>
@@ -6160,13 +7841,13 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Wybierz</translation>
     </message>
     <message>
-        <location line="+588"/>
+        <location line="+651"/>
         <location line="+138"/>
         <source>Shift</source>
         <translation>Shift</translation>
     </message>
     <message>
-        <location line="-902"/>
+        <location line="-965"/>
         <source>Space</source>
         <translation>Spacja</translation>
     </message>
@@ -6335,7 +8016,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QSoftKeyManager</name>
     <message>
-        <location filename="../src/gui/kernel/qsoftkeymanager.cpp" line="+79"/>
+        <location filename="../src/gui/kernel/qsoftkeymanager.cpp" line="+63"/>
         <source>Ok</source>
         <translation>OK</translation>
     </message>
@@ -6360,7 +8041,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Anuluj</translation>
     </message>
     <message>
-        <location line="+176"/>
+        <location filename="../src/gui/kernel/qsoftkeymanager_s60.cpp" line="+319"/>
         <source>Exit</source>
         <translation>Wyjście</translation>
     </message>
@@ -6438,12 +8119,17 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QSslSocket</name>
     <message>
-        <location filename="../src/network/ssl/qsslsocket_openssl.cpp" line="+546"/>
+        <location filename="../src/network/ssl/qsslsocket_openssl.cpp" line="+550"/>
         <source>Unable to write data: %1</source>
-        <translation>Nie można zapisać danych: %1</translation>
+        <translation></translation>
     </message>
     <message>
-        <location line="+119"/>
+        <location line="+63"/>
+        <source>Unable to decrypt data: %1</source>
+        <translation>Nie można odszyfrować danych: %1</translation>
+    </message>
+    <message>
+        <location line="+76"/>
         <source>Error while reading: %1</source>
         <translation>Błąd podczas czytania: %1</translation>
     </message>
@@ -6453,7 +8139,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Błąd podczas nawiązania sesji SSL: %1</translation>
     </message>
     <message>
-        <location line="-501"/>
+        <location line="-524"/>
         <source>Error creating SSL context (%1)</source>
         <translation>Błąd tworzenia kontekstu (%1)</translation>
     </message>
@@ -6463,7 +8149,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Niepoprawna lub pusta lista szyfrów (%1)</translation>
     </message>
     <message>
-        <location line="+42"/>
+        <location line="+45"/>
         <source>Private key does not certify public key, %1</source>
         <translation>Prywatny klucz nie uwiarygodnia publicznego, %1</translation>
     </message>
@@ -6478,7 +8164,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Błąd tworzenia sesji SSL: %1</translation>
     </message>
     <message>
-        <location line="-61"/>
+        <location line="-64"/>
         <source>Cannot provide a certificate with no key, %1</source>
         <translation>Nie można dostarczyć certyfikatu bez klucza, %1</translation>
     </message>
@@ -6488,7 +8174,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Błąd ładowania lokalnego certyfikatu, %1</translation>
     </message>
     <message>
-        <location line="+12"/>
+        <location line="+15"/>
         <source>Error loading private key, %1</source>
         <translation>Błąd ładowania prywatnego klucza, %1</translation>
     </message>
@@ -6540,67 +8226,67 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="+3"/>
         <source>The certificate is self-signed, and untrusted</source>
-        <translation type="unfinished"></translation>
+        <translation>Niewiarygodny certyfikat z podpisem własnym</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The root certificate of the certificate chain is self-signed, and untrusted</source>
-        <translation type="unfinished"></translation>
+        <translation>Główny certyfikat łańcucha zaufania ma własny podpis i jest niewiarygodny</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The issuer certificate of a locally looked up certificate could not be found</source>
-        <translation type="unfinished"></translation>
+        <translation>Nie można odnaleźć certyfikatu wydawcy wyszukanego lokalnie certyfikatu</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>No certificates could be verified</source>
-        <translation type="unfinished"></translation>
+        <translation>Nie można zweryfikować żadnych certyfikatów</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>One of the CA certificates is invalid</source>
-        <translation type="unfinished"></translation>
+        <translation>Jeden z certyfikatów urzędu certyfikacji jest nieprawidłowy</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The basicConstraints path length parameter has been exceeded</source>
-        <translation type="unfinished"></translation>
+        <translation>Długość ścieżki określona w podstawowych warunkach ograniczających została przekroczona</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The supplied certificate is unsuitable for this purpose</source>
-        <translation type="unfinished"></translation>
+        <translation>Dostarczony certyfikat jest nieodpowiedni dla tego przeznaczenia</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The root CA certificate is not trusted for this purpose</source>
-        <translation type="unfinished"></translation>
+        <translation>Główny certyfikat urzędu certyfikacji nie jest wiarygodny dla tego przeznaczenia</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The root CA certificate is marked to reject the specified purpose</source>
-        <translation type="unfinished"></translation>
+        <translation>Główny certyfikat urzędu certyfikacji jest wyznaczony do odrzucania podanego przeznaczenia</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate</source>
-        <translation type="unfinished"></translation>
+        <translation>Certyfikat wydawcy obecnego kandydata został odrzucony, ponieważ nazwa podmiotu nie odpowiadała nazwie wydawcy obecnego certyfikatu</translation>
     </message>
     <message>
         <location line="+4"/>
         <source>The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate</source>
-        <translation type="unfinished"></translation>
+        <translation>Certyfikat wydawcy obecnego kandydata został odrzucony, ponieważ nazwa wydawcy i przedstawiony numer seryjny nie odpowiadały identyfikatorowi klucza urzędu certyfikacji obecnego certyfikatu</translation>
     </message>
     <message>
         <location line="+5"/>
         <source>The peer did not present any certificate</source>
-        <translation type="unfinished"></translation>
+        <translation>Element równorzędny nie przedstawił żadnego certyfikatu</translation>
     </message>
     <message>
         <location line="+3"/>
         <source>The host name did not match any of the valid hosts for this certificate</source>
-        <translation type="unfinished"></translation>
+        <translation>Nazwa hosta nie odpowiadała żadnemu z poprawnych hostów dla tego certyfikatu</translation>
     </message>
     <message>
         <location line="+6"/>
@@ -6613,17 +8299,17 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location filename="../src/corelib/statemachine/qstatemachine.cpp" line="+1028"/>
         <source>Missing initial state in compound state &apos;%1&apos;</source>
-        <translation>Brak stanu początkowego w stanie złożonym &apos;%1&apos;</translation>
+        <translation>Brak stanu początkowego w stanie złożonym &quot;%1&quot;</translation>
     </message>
     <message>
         <location line="+7"/>
         <source>Missing default state in history state &apos;%1&apos;</source>
-        <translation>Brak domyślnego stanu w historycznym stanie &apos;%1&apos;</translation>
+        <translation>Brak domyślnego stanu w historycznym stanie &quot;%1&quot;</translation>
     </message>
     <message>
         <location line="+7"/>
         <source>No common ancestor for targets and source of transition from state &apos;%1&apos;</source>
-        <translation>Brak wspólnego przodka dla stanów docelowych i stanu źródłowego w przejściu ze stanu &apos;%1&apos;</translation>
+        <translation>Brak wspólnego przodka dla stanów docelowych i stanu źródłowego w przejściu ze stanu &quot;%1&quot;</translation>
     </message>
     <message>
         <location line="+4"/>
@@ -6643,7 +8329,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <location line="-13"/>
         <location filename="../src/corelib/kernel/qsystemsemaphore_win.cpp" line="+4"/>
         <source>%1: permission denied</source>
-        <translation>%1: brak dostępu</translation>
+        <translation>%1: brak uprawnień</translation>
     </message>
     <message>
         <location line="+4"/>
@@ -6691,7 +8377,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QTcpServer</name>
     <message>
-        <location filename="../src/network/socket/qtcpserver.cpp" line="+282"/>
+        <location filename="../src/network/socket/qtcpserver.cpp" line="+292"/>
         <source>Operation on socket is not supported</source>
         <translation>Operacja na gnieździe nieobsługiwana</translation>
     </message>
@@ -6699,7 +8385,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QTextControl</name>
     <message>
-        <location filename="../src/gui/text/qtextcontrol.cpp" line="+2034"/>
+        <location filename="../src/gui/text/qtextcontrol.cpp" line="+2047"/>
         <source>&amp;Copy</source>
         <translation>S&amp;kopiuj</translation>
     </message>
@@ -6711,7 +8397,7 @@ Proszę wybrać inną nazwę pliku.</translation>
     <message>
         <location line="-12"/>
         <source>Cu&amp;t</source>
-        <translation>&amp;Wytnij</translation>
+        <translation>W&amp;ytnij</translation>
     </message>
     <message>
         <location line="+21"/>
@@ -6757,7 +8443,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QUdpSocket</name>
     <message>
-        <location filename="../src/network/socket/qudpsocket.cpp" line="+179"/>
+        <location filename="../src/network/socket/qudpsocket.cpp" line="+189"/>
         <source>This platform does not support IPv6</source>
         <translation>Ta platforma nie obsługuje IPv6</translation>
     </message>
@@ -6857,7 +8543,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QWebFrame</name>
     <message>
-        <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp" line="+712"/>
+        <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp" line="+753"/>
         <source>Request cancelled</source>
         <translation>Prośba anulowana</translation>
     </message>
@@ -6890,7 +8576,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QWebPage</name>
     <message>
-        <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="+42"/>
+        <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="+44"/>
         <source>Submit</source>
         <comment>default label for Submit buttons in forms on web pages</comment>
         <translation>Wyślij</translation>
@@ -7130,7 +8816,13 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Domyślny</translation>
     </message>
     <message>
-        <location line="+115"/>
+        <location line="+110"/>
+        <source>Missing Plug-in</source>
+        <comment>Label text to be used when a plug-in is missing</comment>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+20"/>
         <source>Loading...</source>
         <comment>Media controller status message when the media is loading</comment>
         <translation>Ładowanie...</translation>
@@ -7271,7 +8963,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <location line="+2"/>
         <source>Pause playback</source>
         <comment>Media controller element</comment>
-        <translation>Wstrzymaj odtwarzanie</translation>
+        <translation>Zatrzymaj odtwarzanie</translation>
     </message>
     <message>
         <location line="+2"/>
@@ -7364,7 +9056,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>%1 sekund</translation>
     </message>
     <message>
-        <location line="-210"/>
+        <location line="-225"/>
         <source>Inspect</source>
         <comment>Inspect Element context menu item</comment>
         <translation>Zwiedzaj</translation>
@@ -7388,23 +9080,23 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Wyczyść ostatnie wyszukiwania</translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+90"/>
         <source>Unknown</source>
         <comment>Unknown filesize FTP directory listing item</comment>
         <translation>Nieznany</translation>
     </message>
     <message>
-        <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp" line="+167"/>
+        <location filename="../src/3rdparty/webkit/WebKit/qt/WebCoreSupport/InspectorClientQt.cpp" line="+236"/>
         <source>Web Inspector - %2</source>
         <translation>Wizytator sieciowy - %2</translation>
     </message>
     <message>
-        <location filename="../src/3rdparty/webkit/WebCore/platform/network/qt/QNetworkReplyHandler.cpp" line="+416"/>
+        <location filename="../src/3rdparty/webkit/WebCore/platform/network/qt/QNetworkReplyHandler.cpp" line="+456"/>
         <source>Bad HTTP request</source>
         <translation>Niepoprawna komenda HTTP</translation>
     </message>
     <message>
-        <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="-286"/>
+        <location filename="../src/3rdparty/webkit/WebCore/platform/qt/Localizations.cpp" line="-301"/>
         <source>This is a searchable index. Enter search keywords: </source>
         <comment>text that appears at the start of nearly-obsolete web pages in the form of a &apos;searchable index&apos;</comment>
         <translation>To jest indeks wyszukiwawczy. Podaj słowa do wyszukania:</translation>
@@ -7422,7 +9114,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Z prawej na lewą</translation>
     </message>
     <message>
-        <location line="+100"/>
+        <location line="+115"/>
         <source>%1 (%2x%3 pixels)</source>
         <comment>Title string for images</comment>
         <translation>%1 (%2x%3 piksli)</translation>
@@ -7503,22 +9195,22 @@ Proszę wybrać inną nazwę pliku.</translation>
         </translation>
     </message>
     <message>
-        <location filename="../src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp" line="+1827"/>
+        <location filename="../src/3rdparty/webkit/WebKit/qt/Api/qwebpage.cpp" line="+1959"/>
         <source>JavaScript Alert - %1</source>
         <translation>Ostrzeżenie JavaScript - %1</translation>
     </message>
     <message>
-        <location line="+16"/>
+        <location line="+17"/>
         <source>JavaScript Confirm - %1</source>
         <translation>Potwierdzenie JavaScript - %1</translation>
     </message>
     <message>
-        <location line="+18"/>
+        <location line="+20"/>
         <source>JavaScript Prompt - %1</source>
         <translation>Zachęta JavaScript - %1</translation>
     </message>
     <message>
-        <location line="+25"/>
+        <location line="+26"/>
         <source>JavaScript Problem - %1</source>
         <translation>Problem JavaScript - %1</translation>
     </message>
@@ -7528,7 +9220,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Skrypt na tej stronie nie działa poprawnie. Czy chcesz przerwać ten skrypt?</translation>
     </message>
     <message>
-        <location line="+381"/>
+        <location line="+374"/>
         <source>Move the cursor to the next character</source>
         <translation>Przesuń kursor do następnego znaku</translation>
     </message>
@@ -7749,7 +9441,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QWidget</name>
     <message>
-        <location filename="../src/gui/kernel/qwidget.cpp" line="+5723"/>
+        <location filename="../src/gui/kernel/qwidget.cpp" line="+5809"/>
         <source>*</source>
         <translation>*</translation>
     </message>
@@ -7757,7 +9449,7 @@ Proszę wybrać inną nazwę pliku.</translation>
 <context>
     <name>QWizard</name>
     <message>
-        <location filename="../src/gui/dialogs/qwizard.cpp" line="+649"/>
+        <location filename="../src/gui/dialogs/qwizard.cpp" line="+689"/>
         <source>Go Back</source>
         <translation>Wróć</translation>
     </message>
@@ -8001,6 +9693,34 @@ Proszę wybrać inną nazwę pliku.</translation>
     </message>
 </context>
 <context>
+    <name>QXmlPatternistCLI</name>
+    <message>
+        <location filename="../src/xmlpatterns/api/qcoloringmessagehandler.cpp" line="+87"/>
+        <source>Warning in %1, at line %2, column %3: %4</source>
+        <translation>Ostrzeżenie w %1, wiersz %2, kolumna %3: %4</translation>
+    </message>
+    <message>
+        <location line="+7"/>
+        <source>Warning in %1: %2</source>
+        <translation>Ostrzeżenie w %1: %2</translation>
+    </message>
+    <message>
+        <location line="+16"/>
+        <source>Unknown location</source>
+        <translation>Nieznane położenie</translation>
+    </message>
+    <message>
+        <location line="+14"/>
+        <source>Error %1 in %2, at line %3, column %4: %5</source>
+        <translation>Błąd %1 w %2, wiersz %3, kolumna %4: %5</translation>
+    </message>
+    <message>
+        <location line="+8"/>
+        <source>Error %1 in %2: %3</source>
+        <translation>Błąd %1 w %2: %3</translation>
+    </message>
+</context>
+<context>
     <name>QXmlStream</name>
     <message>
         <location filename="../src/corelib/xml/qxmlstream.cpp" line="+611"/>
@@ -9834,7 +11554,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Brak podelementu w tym zakresie, możliwymi podelementami są: %1.</translation>
     </message>
     <message>
-        <location line="+127"/>
+        <location line="+143"/>
         <source>Document is not a XML schema.</source>
         <translation>Dokument nie jest schematem XML.</translation>
     </message>
@@ -9860,7 +11580,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Docelowa przestrzeń nazw %1 zaimportowanego schematu jest różna od docelowej przestrzeni nazw %2 która jest zdefiniowana w schemacie importującym.</translation>
     </message>
     <message>
-        <location line="+237"/>
+        <location line="+243"/>
         <source>%1 element is not allowed to have the same %2 attribute value as the target namespace %3.</source>
         <translation>Element %1 nie może zawierać tej samej wartości atrybutu %2 co docelowa przestrzeń nazw %3.</translation>
     </message>
@@ -9870,7 +11590,7 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Element %1 bez atrybutu %2 jest niedozwolony wewnątrz schematu bez docelowej przestrzeni nazw.</translation>
     </message>
     <message>
-        <location line="+833"/>
+        <location line="+851"/>
         <location line="+158"/>
         <source>%1 element is not allowed inside %2 element if %3 attribute is present.</source>
         <translation>Element %1 jest niedozwolony wewnątrz elementu %2 jeśli jest obecny atrybut %3.</translation>
@@ -10555,4 +12275,12 @@ Proszę wybrać inną nazwę pliku.</translation>
         <translation>Atrybut &quot;%1&quot; zawiera niepoprawną zawartość QName: %2.</translation>
     </message>
 </context>
+<context>
+    <name>Widget</name>
+    <message>
+        <location filename="../src/3rdparty/webkit/WebKit/qt/tests/hybridPixmap/widget.ui"/>
+        <source>about:blank</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 </TS>
-- 
cgit v0.12


From 13dff164d2ab13b1258d31693b67acebc8636890 Mon Sep 17 00:00:00 2001
From: Joerg Bornemann <joerg.bornemann@nokia.com>
Date: Tue, 27 Apr 2010 10:14:44 +0200
Subject: changes-4.7.0 updated

---
 dist/changes-4.7.0 | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/dist/changes-4.7.0 b/dist/changes-4.7.0
index d5b4672..4fd7fdb 100644
--- a/dist/changes-4.7.0
+++ b/dist/changes-4.7.0
@@ -56,6 +56,10 @@ QtGui
       functions, and replaced them with setCopyCount(), copyCount() and
       supportsMultipleCopies().
 
+ - QCommonStyle
+    * Fixed a bug that led to missing text pixels in QTabBar when using
+      small font sizes. (QTBUG-7137)
+
 ****************************************************************************
 *                          Database Drivers                                *
 ****************************************************************************
@@ -72,6 +76,13 @@ Qt for Linux/X11
 Qt for Windows
 --------------
 
+ - QLocalSocket
+    * Pipe handle leak fixed, when closing a QLocalSocket that still has
+      unwritten data. (QTBUG-7815)
+    * Fixed closing state for local sockets with unwritten data. (QTBUG-9681)
+    * Detection of Windows mobile 6.5 fixed. (QTBUG-8418)
+    * Improved performance of writing to QLocalSocket.
+
 
 Qt for Mac OS X
 ---------------
@@ -84,6 +95,17 @@ Qt for Embedded Linux
 Qt for Windows CE
 -----------------
 
+ - Core changes
+    * Fixed menu handling on Windows mobile. (QTBUG-8754)
+    * Fixed a crash when receiving a certain type of WM_SETTINGSCHANGE
+      message. (QTBUG-7943)
+
+ - QWindowsMobileStyle
+    * Huge performance penalty for QTabWidget fixed for
+      Windows mobile 6.5. (QTBUG-8419)
+    * QTabBar scroll button size has been fixed. (QTBUG-8757)
+
+
 
 ****************************************************************************
 *                      Compiler Specific Changes                           *
@@ -96,6 +118,9 @@ Qt for Windows CE
 
 - Build System
 
+  - "configure -fast" on Windows now also works for other make tools than
+    nmake. (QTBUG-8562)
+
 - Assistant
 
 
-- 
cgit v0.12


From 6749edd4c6f647c4963793183a452bb1ae769c1c Mon Sep 17 00:00:00 2001
From: Martin Smith <msmith@trolltech.com>
Date: Tue, 27 Apr 2010 10:43:52 +0200
Subject: qdoc: Removed MacRefs for Xcode documentation stuff.

Also added the infrastructure for generating breadcrumbs.
---
 tools/qdoc3/htmlgenerator.cpp               | 39 +++++++++++++++++++++++++++++
 tools/qdoc3/htmlgenerator.h                 |  9 ++++++-
 tools/qdoc3/test/qt-html-templates.qdocconf |  5 ++--
 3 files changed, 50 insertions(+), 3 deletions(-)

diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp
index 6b7d350..01dc26c 100644
--- a/tools/qdoc3/htmlgenerator.cpp
+++ b/tools/qdoc3/htmlgenerator.cpp
@@ -259,6 +259,9 @@ void HtmlGenerator::initializeGenerator(const Config &config)
     postHeader = config.getString(HtmlGenerator::format() +
                                   Config::dot +
                                   HTMLGENERATOR_POSTHEADER);
+    postPostHeader = config.getString(HtmlGenerator::format() +
+                                      Config::dot +
+                                      HTMLGENERATOR_POSTPOSTHEADER);
     footer = config.getString(HtmlGenerator::format() +
                               Config::dot +
                               HTMLGENERATOR_FOOTER);
@@ -1697,6 +1700,27 @@ QString HtmlGenerator::fileExtension(const Node * /* node */) const
 </head>
 #endif
 
+void HtmlGenerator::generateBreadCrumbs(const QString& title,
+                                        const Node *node,
+                                        CodeMarker *marker)
+{
+    if (node->type() == Node::Class) {
+    }
+    else if (node->type() == Node::Fake) {
+        if (node->subType() == Node::Module) {
+        }
+        else if (node->subType() == Node::Page) {
+        }
+        else if (node->subType() == Node::QmlClass) {
+        }
+        else if (node->subType() == Node::Example) {
+        }
+    }
+    else if (node->type() == Node::Namespace) {
+    }
+}
+
+
 void HtmlGenerator::generateHeader(const QString& title,
                                    const Node *node,
                                    CodeMarker *marker,
@@ -1748,9 +1772,13 @@ void HtmlGenerator::generateHeader(const QString& title,
     else
         out() << "<body class=\"\">\n";
 
+#ifdef GENERATE_MAC_REFS    
     if (mainPage)
         generateMacRef(node, marker);
+#endif    
     out() << QString(postHeader).replace("\\" + COMMAND_VERSION, myTree->version());
+    generateBreadCrumbs(title,node,marker);
+    out() << QString(postPostHeader).replace("\\" + COMMAND_VERSION, myTree->version());
 
 #if 0 // Removed for new docf format. MWS
     if (node && !node->links().empty())
@@ -3687,10 +3715,14 @@ void HtmlGenerator::generateDetailedMember(const Node *node,
 {
     const EnumNode *enume;
 
+#ifdef GENERATE_MAC_REFS    
     generateMacRef(node, marker);
+#endif    
     if (node->type() == Node::Enum
             && (enume = static_cast<const EnumNode *>(node))->flagsType()) {
+#ifdef GENERATE_MAC_REFS    
         generateMacRef(enume->flagsType(), marker);
+#endif        
         out() << "<h3 class=\"flags\">";
         out() << "<a name=\"" + refForNode(node) + "\"></a>";
         generateSynopsis(enume, relative, marker, CodeMarker::Detailed);
@@ -4204,6 +4236,10 @@ void HtmlGenerator::generateStatus(const Node *node, CodeMarker *marker)
     }
 }
 
+#ifdef GENERATE_MAC_REFS    
+/*
+  No longer valid.
+ */
 void HtmlGenerator::generateMacRef(const Node *node, CodeMarker *marker)
 {
     if (!pleaseGenerateMacRef || marker == 0)
@@ -4213,6 +4249,7 @@ void HtmlGenerator::generateMacRef(const Node *node, CodeMarker *marker)
     foreach (const QString &macRef, macRefs)
         out() << "<a name=\"" << "//apple_ref/" << macRef << "\"></a>\n";
 }
+#endif
 
 void HtmlGenerator::beginLink(const QString &link,
                               const Node *node,
@@ -4314,7 +4351,9 @@ void HtmlGenerator::generateDetailedQmlMember(const Node *node,
                                               CodeMarker *marker)
 {
     const QmlPropertyNode* qpn = 0;
+#ifdef GENERATE_MAC_REFS    
     generateMacRef(node, marker);
+#endif    
     out() << "<div class=\"qmlitem\">";
     if (node->subType() == Node::QmlPropertyGroup) {
         const QmlPropGroupNode* qpgn = static_cast<const QmlPropGroupNode*>(node);
diff --git a/tools/qdoc3/htmlgenerator.h b/tools/qdoc3/htmlgenerator.h
index 2a365e9..68e620e 100644
--- a/tools/qdoc3/htmlgenerator.h
+++ b/tools/qdoc3/htmlgenerator.h
@@ -131,6 +131,9 @@ class HtmlGenerator : public PageGenerator
                                   const Node *relative,
                                   CodeMarker *marker, 
                                   const Atom *atom = 0);
+    void generateBreadCrumbs(const QString& title,
+                             const Node *node,
+                             CodeMarker *marker);
     void generateHeader(const QString& title, const Node *node = 0,
                         CodeMarker *marker = 0, bool mainPage = true);
     void generateTitle(const QString& title, 
@@ -262,7 +265,9 @@ class HtmlGenerator : public PageGenerator
     virtual void generateIndex(const QString &fileBase, 
                                const QString &url,
                                const QString &title);
+#ifdef GENERATE_MAC_REFS    
     void generateMacRef(const Node *node, CodeMarker *marker);
+#endif
     void beginLink(const QString &link, 
                    const Node *node, 
                    const Node *relative, 
@@ -303,6 +308,7 @@ class HtmlGenerator : public PageGenerator
     QRegExp funcLeftParen;
     QString style;
     QString postHeader;
+    QString postPostHeader;
     QString footer;
     QString address;
     bool pleaseGenerateMacRef;
@@ -337,8 +343,9 @@ class HtmlGenerator : public PageGenerator
 
 #define HTMLGENERATOR_ADDRESS           "address"
 #define HTMLGENERATOR_FOOTER            "footer"
-#define HTMLGENERATOR_GENERATEMACREFS    "generatemacrefs" // ### document me
+#define HTMLGENERATOR_GENERATEMACREFS   "generatemacrefs" // ### document me
 #define HTMLGENERATOR_POSTHEADER        "postheader"
+#define HTMLGENERATOR_POSTPOSTHEADER    "postpostheader"
 #define HTMLGENERATOR_STYLE             "style"
 #define HTMLGENERATOR_STYLESHEETS       "stylesheets"
 #define HTMLGENERATOR_CUSTOMHEADELEMENTS "customheadelements"
diff --git a/tools/qdoc3/test/qt-html-templates.qdocconf b/tools/qdoc3/test/qt-html-templates.qdocconf
index 158aef3..ba0783e 100644
--- a/tools/qdoc3/test/qt-html-templates.qdocconf
+++ b/tools/qdoc3/test/qt-html-templates.qdocconf
@@ -87,8 +87,9 @@ HTML.postheader         = " <div class=\"header\" id=\"qtdocheader\">\n" \
 			  "          <div class=\"breadcrumb toolblock\">\n" \
 			  "            <ul>\n" \
 			  "              <li class=\"first\"><a href=\"index.html\">Home</a></li>\n" \
-			  "              <!--  Bread crumbs goes here -->\n" \
-			  "            </ul>\n" \
+			  "              <!--  Bread crumbs goes here -->\n"
+
+HTML.postpostheader     = "            </ul>\n" \
 			  "          </div>\n" \
 			  "          <div class=\"toolbuttons toolblock\">\n" \
 			  "            <ul>\n" \
-- 
cgit v0.12


From 4580c2e9c2bbcb911f9e1cecd4551054598d256d Mon Sep 17 00:00:00 2001
From: Carlos Manuel Duclos Vergara <carlos.duclos@nokia.com>
Date: Tue, 27 Apr 2010 13:26:42 +0200
Subject: QTabWidget documentMode not working correctly on Mac

This feature was implemented in Carbon and was never ported to Cocoa.
The major problem is the fact that Cocoa draws a line under the titlebar,
regardless of what we say. The only way to avoid drawing that line is
by adding a native toolbar and ask it not to draw its baseline. If there
is not toolbar, as it happens in this case, there is no way to prevent
that line from being drawn. So instead we paint over that line and hope
for the best.

Task-number: QTBUG-8159
Reviewed-by: Richard Moe Gustavsen
---
 src/gui/kernel/qcocoasharedwindowmethods_mac_p.h |  54 ++++++++++
 src/gui/kernel/qt_cocoa_helpers_mac.mm           | 120 ++++++++++++++++++++++-
 src/gui/kernel/qt_cocoa_helpers_mac_p.h          |   5 +
 src/gui/kernel/qt_mac_p.h                        |   1 +
 src/gui/kernel/qwidget.cpp                       |  27 +++++
 src/gui/kernel/qwidget_p.h                       |   7 ++
 src/gui/widgets/qtabbar.cpp                      |  19 +++-
 7 files changed, 227 insertions(+), 6 deletions(-)

diff --git a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
index e94d247..8652816 100644
--- a/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
+++ b/src/gui/kernel/qcocoasharedwindowmethods_mac_p.h
@@ -363,3 +363,57 @@ QT_END_NAMESPACE
     }
     [super displayIfNeeded];
 }
+
+// This is a hack and it should be removed once we find the real cause for
+// the painting problems.
+// We have a static variable that signals if we have been called before or not.
+static bool firstDrawingInvocation = true;
+
+// The method below exists only as a workaround to draw/not draw the baseline
+// in the title bar. This is to support unifiedToolbar look.
+
+// This method is very special. To begin with, it is a
+// method that will get called only if we enable documentMode.
+// Furthermore, it won't get called as a normal method, we swap
+// this method with the normal implementation of drawRect in
+// _NSThemeFrame. When this method is active, its mission is to
+// first call the original drawRect implementation so the widget
+// gets proper painting. After that, it needs to detect if there
+// is a toolbar or not, in order to decide how to handle the unified
+// look. The distinction is important since the presence and
+// visibility of a toolbar change the way we enter into unified mode.
+// When there is a toolbar and that toolbar is visible, the problem
+// is as simple as to tell the toolbar not to draw its baseline.
+// However when there is not toolbar or the toolbar is not visible,
+// we need to draw a line on top of the baseline, because the baseline
+// in that case will belong to the title. For this case we need to draw
+// a line on top of the baseline.
+// As usual, there is a special case. When we first are called, we might
+// need to repaint ourselves one more time. We only need that if we
+// didn't get the activation, i.e. when we are launched via the command
+// line. And this only if the toolbar is visible from the beginning,
+// so we have a special flag that signals if we need to repaint or not.
+- (void)drawRectSpecial:(NSRect)rect
+{
+    // Call the original drawing method.
+    [self drawRectOriginal:rect];
+    NSWindow *window = [self window];
+    NSToolbar *toolbar = [window toolbar];
+    if(!toolbar) {
+        // There is no toolbar, we have to draw a line on top of the line drawn by Cocoa.
+        macDrawRectOnTop((void *)window);
+    } else {
+        if([toolbar isVisible]) {
+            // We tell Cocoa to avoid drawing the line at the end.
+            if(firstDrawingInvocation) {
+                firstDrawingInvocation = false;
+                macSyncDrawingOnFirstInvocation((void *)window);
+            } else
+                [toolbar setShowsBaselineSeparator:NO];
+        } else {
+            // There is a toolbar but it is not visible so
+            // we have to draw a line on top of the line drawn by Cocoa.
+            macDrawRectOnTop((void *)window);
+        }
+    }
+}
diff --git a/src/gui/kernel/qt_cocoa_helpers_mac.mm b/src/gui/kernel/qt_cocoa_helpers_mac.mm
index a05c7d5..024c1fc 100644
--- a/src/gui/kernel/qt_cocoa_helpers_mac.mm
+++ b/src/gui/kernel/qt_cocoa_helpers_mac.mm
@@ -1163,15 +1163,81 @@ void qt_mac_updateContentBorderMetricts(void * /*OSWindowRef */window, const ::H
 #endif
 }
 
+#if QT_MAC_USE_COCOA
+void qt_mac_replaceDrawRect(void * /*OSWindowRef */window, QWidgetPrivate *widget)
+{
+    QMacCocoaAutoReleasePool pool;
+    OSWindowRef theWindow = static_cast<OSWindowRef>(window);
+    if(!theWindow)
+        return;
+    id theClass = [[[theWindow contentView] superview] class];
+    // What we do here is basically to add a new selector to NSThemeFrame called
+    // "drawRectOriginal:" which will contain the original implementation of
+    // "drawRect:". After that we get the new implementation from QCocoaWindow
+    // and exchange them. The new implementation is called drawRectSpecial.
+    // We cannot just add the method because it might have been added before and since
+    // we cannot remove a method once it has been added we need to ask QCocoaWindow if
+    // we did the swap or not.
+    if(!widget->drawRectOriginalAdded) {
+        Method m2 = class_getInstanceMethod(theClass, @selector(drawRect:));
+        if(!m2) {
+            // This case is pretty extreme, no drawRect means no drawing!
+            return;
+        }
+        class_addMethod(theClass, @selector(drawRectOriginal:), method_getImplementation(m2), method_getTypeEncoding(m2));
+        widget->drawRectOriginalAdded = true;
+    }
+    if(widget->originalDrawMethod) {
+        Method m0 = class_getInstanceMethod([theWindow class], @selector(drawRectSpecial:));
+        if(!m0) {
+            // Ok, this means the methods were never swapped. Just ignore
+            return;
+        }
+        Method m1 = class_getInstanceMethod(theClass, @selector(drawRect:));
+        if(!m1) {
+            // Ok, this means the methods were never swapped. Just ignore
+            return;
+        }
+        // We have the original method here. Proceed and swap the methods.
+        method_exchangeImplementations(m1, m0);
+        widget->originalDrawMethod = false;
+        [window display];
+    }
+}
+
+void qt_mac_replaceDrawRectOriginal(void * /*OSWindowRef */window, QWidgetPrivate *widget)
+{
+    QMacCocoaAutoReleasePool pool;
+    OSWindowRef theWindow = static_cast<OSWindowRef>(window);
+    id theClass = [[[theWindow contentView] superview] class];
+    // Now we need to revert the methods to their original state.
+    // We cannot remove the method, so we just keep track of it in QCocoaWindow.
+    Method m0 = class_getInstanceMethod([theWindow class], @selector(drawRectSpecial:));
+    if(!m0) {
+        // Ok, this means the methods were never swapped. Just ignore
+        return;
+    }
+    Method m1 = class_getInstanceMethod(theClass, @selector(drawRect:));
+    if(!m1) {
+        // Ok, this means the methods were never swapped. Just ignore
+        return;
+    }
+    method_exchangeImplementations(m1, m0);
+    widget->originalDrawMethod = true;
+    [window display];
+}
+#endif // QT_MAC_USE_COCOA
+
 void qt_mac_showBaseLineSeparator(void * /*OSWindowRef */window, bool show)
 {
+    if(!window)
+        return;
 #if QT_MAC_USE_COCOA
     QMacCocoaAutoReleasePool pool;
     OSWindowRef theWindow = static_cast<OSWindowRef>(window);
     NSToolbar *macToolbar = [theWindow toolbar];
-    if (macToolbar)
-        [macToolbar setShowsBaselineSeparator: show];
-#endif
+    [macToolbar setShowsBaselineSeparator:show];
+#endif // QT_MAC_USE_COCOA
 }
 
 QStringList qt_mac_NSArrayToQStringList(void *nsarray)
@@ -1403,4 +1469,52 @@ void qt_mac_post_retranslateAppMenu()
 #endif
 }
 
+#ifdef QT_MAC_USE_COCOA
+// This method implements the magic for the drawRectSpecial method.
+// We draw a line at the upper edge of the content view in order to
+// override the title baseline.
+void macDrawRectOnTop(void * /*OSWindowRef */window)
+{
+    OSWindowRef theWindow = static_cast<OSWindowRef>(window);
+    NSView *contentView = [theWindow contentView];
+    if(!contentView)
+        return;
+    // Get coordinates of the content view
+    NSRect contentRect = [contentView frame];
+    // Draw a line on top of the already drawn line.
+    // We need to check if we are active or not to use the proper color.
+    if([window isKeyWindow] || [window isMainWindow]) {
+        [[NSColor colorWithCalibratedRed:1.0 green:1.0 blue:1.0 alpha:1.0] set];
+    } else {
+        [[NSColor colorWithCalibratedRed:1.0 green:1.0 blue:1.0 alpha:1.0] set];
+    }
+    NSPoint origin = NSMakePoint(0, contentRect.size.height);
+    NSPoint end = NSMakePoint(contentRect.size.width, contentRect.size.height);
+    [NSBezierPath strokeLineFromPoint:origin toPoint:end];
+}
+
+// This method will (or at least should) get called only once.
+// Its mission is to find out if we are active or not. If we are active
+// we assume that we were launched via finder, otherwise we assume
+// we were called from the command line. The distinction is important,
+// since in the first case we don't need to trigger a paintEvent, while
+// in the second case we do.
+void macSyncDrawingOnFirstInvocation(void * /*OSWindowRef */window)
+{
+    OSWindowRef theWindow = static_cast<OSWindowRef>(window);
+    NSApplication *application = [NSApplication sharedApplication];
+    NSToolbar *toolbar = [window toolbar];
+    if([application isActive]) {
+        // Launched from finder
+        [toolbar setShowsBaselineSeparator:NO];
+    } else {
+        // Launched from commandline
+        [toolbar setVisible:false];
+        [toolbar setShowsBaselineSeparator:NO];
+        [toolbar setVisible:true];
+        [theWindow display];
+    }
+}
+#endif // QT_MAC_USE_COCOA
+
 QT_END_NAMESPACE
diff --git a/src/gui/kernel/qt_cocoa_helpers_mac_p.h b/src/gui/kernel/qt_cocoa_helpers_mac_p.h
index 3fd62a4..5db121a 100644
--- a/src/gui/kernel/qt_cocoa_helpers_mac_p.h
+++ b/src/gui/kernel/qt_cocoa_helpers_mac_p.h
@@ -131,6 +131,8 @@ void macWindowSetHasShadow( void * /*OSWindowRef*/ window, bool hasShadow );
 void macWindowFlush(void * /*OSWindowRef*/ window);
 void macSendToolbarChangeEvent(QWidget *widget);
 void qt_mac_updateContentBorderMetricts(void * /*OSWindowRef */window, const ::HIContentBorderMetrics &metrics);
+void qt_mac_replaceDrawRect(void * /*OSWindowRef */window, QWidgetPrivate *widget);
+void qt_mac_replaceDrawRectOriginal(void * /*OSWindowRef */window, QWidgetPrivate *widget);
 void qt_mac_showBaseLineSeparator(void * /*OSWindowRef */window, bool show);
 void * /*NSImage */qt_mac_create_nsimage(const QPixmap &pm);
 void qt_mac_update_mouseTracking(QWidget *widget);
@@ -140,6 +142,9 @@ void qt_dispatchTabletProximityEvent(void * /*NSEvent * */ tabletEvent);
 #ifdef QT_MAC_USE_COCOA
 bool qt_dispatchKeyEventWithCocoa(void * /*NSEvent * */ keyEvent, QWidget *widgetToGetEvent);
 void qt_cocoaChangeOverrideCursor(const QCursor &cursor);
+// These methods exists only for supporting unified mode.
+void macDrawRectOnTop(void * /*OSWindowRef */ window);
+void macSyncDrawingOnFirstInvocation(void * /*OSWindowRef */window);
 #endif
 void qt_mac_menu_collapseSeparators(void * /*NSMenu */ menu, bool collapse);
 bool qt_dispatchKeyEvent(void * /*NSEvent * */ keyEvent, QWidget *widgetToGetEvent);
diff --git a/src/gui/kernel/qt_mac_p.h b/src/gui/kernel/qt_mac_p.h
index 7bfb257..3341ce1 100644
--- a/src/gui/kernel/qt_mac_p.h
+++ b/src/gui/kernel/qt_mac_p.h
@@ -57,6 +57,7 @@
 
 #ifdef __OBJC__
 #include <Cocoa/Cocoa.h>
+#include <objc/runtime.h>
 #endif
 
 #include <CoreServices/CoreServices.h>
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp
index 441e823..cf952aa 100644
--- a/src/gui/kernel/qwidget.cpp
+++ b/src/gui/kernel/qwidget.cpp
@@ -220,6 +220,11 @@ QWidgetPrivate::QWidgetPrivate(int version)
 
     isWidget = true;
     memset(high_attributes, 0, sizeof(high_attributes));
+#if QT_MAC_USE_COCOA
+    drawRectOriginalAdded = false;
+    originalDrawMethod = true;
+    changeMethods = false;
+#endif // QT_MAC_USE_COCOA
 #ifdef QWIDGET_EXTRA_DEBUG
     static int count = 0;
     qDebug() << "widgets" << ++count;
@@ -12292,6 +12297,28 @@ void QWidgetPrivate::_q_delayedDestroy(WId winId)
 }
 #endif
 
+#if QT_MAC_USE_COCOA
+void QWidgetPrivate::syncUnifiedMode() {
+    // The whole purpose of this method is to keep the unifiedToolbar in sync.
+    // That means making sure we either exchange the drawing methods or we let
+    // the toolbar know that it does not require to draw the baseline.
+    Q_Q(QWidget);
+    // This function makes sense only if this is a top level
+    if(!q->isWindow())
+        return;
+    OSWindowRef window = qt_mac_window_for(q);
+    if(changeMethods) {
+        // Ok, we are in documentMode.
+        if(originalDrawMethod)
+            qt_mac_replaceDrawRect(window, this);
+    } else {
+        if(!originalDrawMethod)
+            qt_mac_replaceDrawRectOriginal(window, this);
+    }
+}
+
+#endif // QT_MAC_USE_COCOA
+
 QT_END_NAMESPACE
 
 #include "moc_qwidget.cpp"
diff --git a/src/gui/kernel/qwidget_p.h b/src/gui/kernel/qwidget_p.h
index 89ea256..cad60b5 100644
--- a/src/gui/kernel/qwidget_p.h
+++ b/src/gui/kernel/qwidget_p.h
@@ -773,6 +773,13 @@ public:
     void finishCreateWindow_sys_Cocoa(void * /*NSWindow * */ windowRef);
     void syncCocoaMask();
     void finishCocoaMaskSetup();
+    void syncUnifiedMode();
+    // Did we add the drawRectOriginal method?
+    bool drawRectOriginalAdded;
+    // Is the original drawRect method available?
+    bool originalDrawMethod;
+    // Do we need to change the methods?
+    bool changeMethods;
 #endif
     void determineWindowClass();
     void transferChildren();
diff --git a/src/gui/widgets/qtabbar.cpp b/src/gui/widgets/qtabbar.cpp
index d03a2f4..8aaaade 100644
--- a/src/gui/widgets/qtabbar.cpp
+++ b/src/gui/widgets/qtabbar.cpp
@@ -69,6 +69,7 @@
 
 QT_BEGIN_NAMESPACE
 
+
 inline static bool verticalTabs(QTabBar::Shape shape)
 {
     return shape == QTabBar::RoundedWest
@@ -95,9 +96,20 @@ void QTabBarPrivate::updateMacBorderMetrics()
         metrics.left = 0;
         metrics.right = 0;
         qt_mac_updateContentBorderMetricts(window, metrics);
-        
-        // hide the base line separator if the tabs have docuemnt mode enabled (Cocoa)
-        qt_mac_showBaseLineSeparator(window, !documentMode);
+#if QT_MAC_USE_COCOA
+        // In Cocoa we need to keep track of the drawRect method.
+        // If documentMode is enabled we need to change it, unless
+        // a toolbar is present.
+        // Notice that all the information is kept in the window,
+        // that's why we get the private widget for it instead of
+        // the private widget for this widget.
+        QWidgetPrivate *privateWidget = qt_widget_private(q->window());
+        if(privateWidget)
+            privateWidget->changeMethods = documentMode;
+        // Since in Cocoa there is no simple way to remove the baseline, so we just ask the
+        // top level to do the magic for us.
+        privateWidget->syncUnifiedMode();
+#endif // QT_MAC_USE_COCOA
     }
 #endif
 }
@@ -2193,6 +2205,7 @@ bool QTabBar::documentMode() const
 void QTabBar::setDocumentMode(bool enabled)
 {
     Q_D(QTabBar);
+
     d->documentMode = enabled;
     d->updateMacBorderMetrics();
 }
-- 
cgit v0.12


From 0f02d27038017a9040c635a8053826671bb10517 Mon Sep 17 00:00:00 2001
From: Martin Smith <msmith@trolltech.com>
Date: Tue, 27 Apr 2010 14:55:11 +0200
Subject: qdoc: Added breadcrumbs for class pages.

---
 tools/qdoc3/htmlgenerator.cpp | 44 ++++++++++++++++++-------------------------
 tools/qdoc3/text.h            |  2 +-
 2 files changed, 19 insertions(+), 27 deletions(-)

diff --git a/tools/qdoc3/htmlgenerator.cpp b/tools/qdoc3/htmlgenerator.cpp
index 01dc26c..8e3b38c 100644
--- a/tools/qdoc3/htmlgenerator.cpp
+++ b/tools/qdoc3/htmlgenerator.cpp
@@ -1674,39 +1674,30 @@ QString HtmlGenerator::fileExtension(const Node * /* node */) const
     return "html";
 }
 
-#if 0
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-  <title>Qt Reference Documentation</title>
-  <link rel="stylesheet" type="text/css" href="style/style.css" />
-  <!--[if IE]>
-	<meta name="MSSmartTagsPreventParsing" content="true">
-	<meta http-equiv="imagetoolbar" content="no">
-	<![endif]-->
-  <!--[if lt IE 7]>
-	<link rel="stylesheet" type="text/css" href="style/style_ie6.css">
-	<![endif]-->
-  <!--[if IE 7]>
-	<link rel="stylesheet" type="text/css" href="style/style_ie7.css">
-	<![endif]-->
-  <!--[if IE 8]>
-	<link rel="stylesheet" type="text/css" href="style/style_ie8.css">
-	<![endif]-->
-
-  <script src="scripts/jquery.js" type="text/javascript"></script>
-
-</head>
-#endif
-
 void HtmlGenerator::generateBreadCrumbs(const QString& title,
                                         const Node *node,
                                         CodeMarker *marker)
 {
+    Text breadcrumb;
     if (node->type() == Node::Class) {
+        ClassNode* cn = static_cast<const ClassNode*>(node);
+        QString name =  node->moduleName();
+        if (!name.isEmpty()) {
+            out() << "              <li>";
+            breadcrumb << Atom(Atom::AutoLink,name);
+            generateText(breadcrumb, node, marker);
+            out() << "</li>\n";
+        }
+        breadcrumb.clear();
+        if (!cn->name().isEmpty()) {
+            out() << "              <li>";
+            breadcrumb << Atom(Atom::AutoLink,cn->name());
+            generateText(breadcrumb, 0, marker);
+            out() << "</li>\n";
+        }
     }
     else if (node->type() == Node::Fake) {
+        const FakeNode* fn = static_cast<const FakeNode*>(node);
         if (node->subType() == Node::Module) {
         }
         else if (node->subType() == Node::Page) {
@@ -1717,6 +1708,7 @@ void HtmlGenerator::generateBreadCrumbs(const QString& title,
         }
     }
     else if (node->type() == Node::Namespace) {
+        const NamespaceNode* nsn = static_cast<const NamespaceNode*>(node);
     }
 }
 
diff --git a/tools/qdoc3/text.h b/tools/qdoc3/text.h
index fa3ecda..879f6da 100644
--- a/tools/qdoc3/text.h
+++ b/tools/qdoc3/text.h
@@ -75,6 +75,7 @@ class Text
     const Atom *lastAtom() const { return last; }
     Text subText(Atom::Type left, Atom::Type right, const Atom *from = 0) const;
     void dump() const;
+    void clear();
 
     static Text subText(const Atom *begin, const Atom *end = 0);
     static Text sectionHeading(const Atom *sectionBegin);
@@ -82,7 +83,6 @@ class Text
     static int compare(const Text &text1, const Text &text2);
 
  private:
-    void clear();
 
     Atom *first;
     Atom *last;
-- 
cgit v0.12


From 4c6963fe61f2d7751428669f40bc10d683b4336b Mon Sep 17 00:00:00 2001
From: Carlos Manuel Duclos Vergara <carlos.duclos@nokia.com>
Date: Tue, 27 Apr 2010 15:37:31 +0200
Subject: Doc & menubar hidden for QtDemo after switching back from fullscreen

The problem here was fix for bug QTBUG-8933. In order to fix that
bug we added a new call to the SetSystemUIMode(...) system call, but
I forgot to update the status inside Qt, so the system didn't know it
was in full screen mode.

Task-number: QTBUG-9883
Reviewed-by: Prasanth
---
 src/gui/widgets/qmenu_mac.mm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gui/widgets/qmenu_mac.mm b/src/gui/widgets/qmenu_mac.mm
index e8400d6..aaa113b 100644
--- a/src/gui/widgets/qmenu_mac.mm
+++ b/src/gui/widgets/qmenu_mac.mm
@@ -2066,6 +2066,7 @@ bool QMenuBarPrivate::macUpdateMenuBarImmediatly()
     cancelAllMenuTracking();
     QWidget *w = findWindowThatShouldDisplayMenubar();
     QMenuBar *mb = findMenubarForWindow(w);
+    extern bool qt_mac_app_fullscreen; //qapplication_mac.mm
 
     // We need to see if we are in full screen mode, if so we need to
     // switch the full screen mode to be able to show or hide the menubar.
@@ -2074,12 +2075,14 @@ bool QMenuBarPrivate::macUpdateMenuBarImmediatly()
         if(w->isFullScreen()) {
             // Ok, switch to showing the menubar when hovering over it.
             SetSystemUIMode(kUIModeAllHidden, kUIOptionAutoShowMenuBar);
+            qt_mac_app_fullscreen = true;
         }
     } else if(w) {
         // Removing a menubar
         if(w->isFullScreen()) {
             // Ok, switch to not showing the menubar when hovering on it
             SetSystemUIMode(kUIModeAllHidden, 0);
+            qt_mac_app_fullscreen = true;
         }
     }
 
-- 
cgit v0.12


From 3f8a97d5ced09f4cc8893772f8e1291a2830a22c Mon Sep 17 00:00:00 2001
From: Prasanth Ullattil <prasanth.ullattil@nokia.com>
Date: Tue, 27 Apr 2010 16:44:49 +0200
Subject: Crash while dragging on Mac OS X (Cocoa)

This happens only if a new drag is started while a drag operation is
going on. It seems to be an unsupported operation on Mac.

Reviewed-by: Fabien Freling
---
 src/gui/kernel/qcocoaview_mac.mm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gui/kernel/qcocoaview_mac.mm b/src/gui/kernel/qcocoaview_mac.mm
index dd12f65..4953c48 100644
--- a/src/gui/kernel/qcocoaview_mac.mm
+++ b/src/gui/kernel/qcocoaview_mac.mm
@@ -1554,7 +1554,8 @@ Qt::DropAction QDragManager::drag(QDrag *o)
     qt_button_down = 0;
     [dndParams.view release];
     [image release];
-    dragPrivate()->executed_action = Qt::IgnoreAction;
+    if (dragPrivate())
+        dragPrivate()->executed_action = Qt::IgnoreAction;
     object = 0;
     Qt::DropAction performedAction(qt_mac_mapNSDragOperation(qMacDnDParams()->performedAction));
     // do post drag processing, if required.
-- 
cgit v0.12


From 9fb2faef7f7cf85175f35af32f2ff260d025982b Mon Sep 17 00:00:00 2001
From: Robin Burchell <robin.burchell@collabora.co.uk>
Date: Tue, 27 Apr 2010 17:59:05 +0200
Subject: Add unit tests for a number of QList methods.

Granted, if this breaks, it will be noticed quickly - but it is desirable to
catch such problems at test time rather than in production.

Merge-request: 575
Reviewed-by: Benjamin Poulain <benjamin.poulain@nokia.com>
---
 tests/auto/qlist/tst_qlist.cpp | 489 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 489 insertions(+)

diff --git a/tests/auto/qlist/tst_qlist.cpp b/tests/auto/qlist/tst_qlist.cpp
index e2944cc..ba8aefa 100644
--- a/tests/auto/qlist/tst_qlist.cpp
+++ b/tests/auto/qlist/tst_qlist.cpp
@@ -62,6 +62,33 @@ private slots:
     void append() const;
     void prepend() const;
     void mid() const;
+    void at() const;
+    void first() const;
+    void last() const;
+    void begin() const;
+    void end() const;
+    void contains() const;
+    void count() const;
+    void empty() const;
+    void endsWith() const;
+    void lastIndexOf() const;
+    void move() const;
+    void removeAll() const;
+    void removeAt() const;
+    void removeOne() const;
+    void replace() const;
+    void startsWith() const;
+    void swap() const;
+    void takeAt() const;
+    void takeFirst() const;
+    void takeLast() const;
+    void toSet() const;
+    void toStdList() const;
+    void toVector() const;
+    void value() const;
+
+    void testSTLIterators() const;
+    void testOperators() const;
 };
 
 void tst_QList::length() const
@@ -173,5 +200,467 @@ void tst_QList::mid() const
              QList<QString>() << "bak" << "buck" << "hello");
 }
 
+void tst_QList::at() const
+{
+    // test at() and make sure it functions correctly with some simple list manipulation.
+    QList<QString> list;
+
+    // create a list
+    list << "foo" << "bar" << "baz";
+    QVERIFY(list.size() == 3);
+    QCOMPARE(list.at(0), QLatin1String("foo"));
+    QCOMPARE(list.at(1), QLatin1String("bar"));
+    QCOMPARE(list.at(2), QLatin1String("baz"));
+
+    // append an item
+    list << "hello";
+    QVERIFY(list.size() == 4);
+    QCOMPARE(list.at(0), QLatin1String("foo"));
+    QCOMPARE(list.at(1), QLatin1String("bar"));
+    QCOMPARE(list.at(2), QLatin1String("baz"));
+    QCOMPARE(list.at(3), QLatin1String("hello"));
+
+    // remove an item
+    list.removeAt(1);
+    QVERIFY(list.size() == 3);
+    QCOMPARE(list.at(0), QLatin1String("foo"));
+    QCOMPARE(list.at(1), QLatin1String("baz"));
+    QCOMPARE(list.at(2), QLatin1String("hello"));
+}
+
+void tst_QList::first() const
+{
+    QList<QString> list;
+    list << "foo" << "bar";
+
+    QCOMPARE(list.first(), QLatin1String("foo"));
+
+    // remove an item, make sure it still works
+    list.pop_front();
+    QVERIFY(list.size() == 1);
+    QCOMPARE(list.first(), QLatin1String("bar"));
+}
+
+void tst_QList::last() const
+{
+    QList<QString> list;
+    list << "foo" << "bar";
+
+    QCOMPARE(list.last(), QLatin1String("bar"));
+
+    // remove an item, make sure it still works
+    list.pop_back();
+    QVERIFY(list.size() == 1);
+    QCOMPARE(list.last(), QLatin1String("foo"));
+}
+
+void tst_QList::begin() const
+{
+    QList<QString> list;
+    list << "foo" << "bar";
+
+    QCOMPARE(*list.begin(), QLatin1String("foo"));
+
+    // remove an item, make sure it still works
+    list.pop_front();
+    QVERIFY(list.size() == 1);
+    QCOMPARE(*list.begin(), QLatin1String("bar"));
+}
+
+void tst_QList::end() const
+{
+    QList<QString> list;
+    list << "foo" << "bar";
+
+    QCOMPARE(*--list.end(), QLatin1String("bar"));
+
+    // remove an item, make sure it still works
+    list.pop_back();
+    QVERIFY(list.size() == 1);
+    QCOMPARE(*--list.end(), QLatin1String("foo"));
+}
+
+void tst_QList::contains() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QVERIFY(list.contains(QLatin1String("foo")) == true);
+    QVERIFY(list.contains(QLatin1String("pirates")) != true);
+
+    // add it and make sure it matches
+    list.append(QLatin1String("ninjas"));
+    QVERIFY(list.contains(QLatin1String("ninjas")) == true);
+}
+
+void tst_QList::count() const
+{
+    QList<QString> list;
+
+    // starts empty
+    QVERIFY(list.count() == 0);
+
+    // goes up
+    list.append(QLatin1String("foo"));
+    QVERIFY(list.count() == 1);
+
+    // and up
+    list.append(QLatin1String("bar"));
+    QVERIFY(list.count() == 2);
+
+    // and down
+    list.pop_back();
+    QVERIFY(list.count() == 1);
+
+    // and empty. :)
+    list.pop_back();
+    QVERIFY(list.count() == 0);
+}
+
+void tst_QList::empty() const
+{
+    QList<QString> list;
+
+    // make sure it starts empty
+    QVERIFY(list.empty());
+
+    // and doesn't stay empty
+    list.append(QLatin1String("foo"));
+    QVERIFY(!list.empty());
+
+    // and goes back to being empty
+    list.pop_back();
+    QVERIFY(list.empty());
+}
+
+void tst_QList::endsWith() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // test it returns correctly in both cases
+    QVERIFY(list.endsWith(QLatin1String("baz")));
+    QVERIFY(!list.endsWith(QLatin1String("bar")));
+
+    // remove an item and make sure the end item changes
+    list.pop_back();
+    QVERIFY(list.endsWith(QLatin1String("bar")));
+}
+
+void tst_QList::lastIndexOf() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // one instance of the target item
+    QVERIFY(list.lastIndexOf(QLatin1String("baz")) == 2);
+
+    // shouldn't find this
+    QVERIFY(list.lastIndexOf(QLatin1String("shouldntfindme")) == -1);
+
+    // multiple instances
+    list.append("baz");
+    list.append("baz");
+    QVERIFY(list.lastIndexOf(QLatin1String("baz")) == 4);
+
+    // search from the middle to find the last one
+    QVERIFY(list.lastIndexOf(QLatin1String("baz"), 3) == 3);
+
+    // try find none
+    QVERIFY(list.lastIndexOf(QLatin1String("baz"), 1) == -1);
+}
+
+void tst_QList::move() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // move an item
+    list.move(0, list.count() - 1);
+    QCOMPARE(list, QList<QString>() << "bar" << "baz" << "foo");
+
+    // move it back
+    list.move(list.count() - 1, 0);
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz");
+
+    // move an item in the middle
+    list.move(1, 0);
+    QCOMPARE(list, QList<QString>() << "bar" << "foo" << "baz");
+}
+
+void tst_QList::removeAll() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // remove one instance
+    list.removeAll(QLatin1String("bar"));
+    QCOMPARE(list, QList<QString>() << "foo" << "baz");
+
+    // many instances
+    list << "foo" << "bar" << "baz";
+    list << "foo" << "bar" << "baz";
+    list << "foo" << "bar" << "baz";
+    list.removeAll(QLatin1String("bar"));
+    QCOMPARE(list, QList<QString>() << "foo" << "baz" << "foo" << "baz" << "foo" << "baz" << "foo" << "baz");
+
+    // try remove something that doesn't exist
+    list.removeAll(QLatin1String("you won't remove anything I hope"));
+    QCOMPARE(list, QList<QString>() << "foo" << "baz" << "foo" << "baz" << "foo" << "baz" << "foo" << "baz");
+}
+
+void tst_QList::removeAt() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // middle
+    list.removeAt(1);
+    QCOMPARE(list, QList<QString>() << "foo" << "baz");
+
+    // start
+    list.removeAt(0);
+    QCOMPARE(list, QList<QString>() << "baz");
+
+    // final
+    list.removeAt(0);
+    QCOMPARE(list, QList<QString>());
+}
+
+void tst_QList::removeOne() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // middle
+    list.removeOne(QLatin1String("bar"));
+    QCOMPARE(list, QList<QString>() << "foo" << "baz");
+
+    // start
+    list.removeOne(QLatin1String("foo"));
+    QCOMPARE(list, QList<QString>() << "baz");
+
+    // last
+    list.removeOne(QLatin1String("baz"));
+    QCOMPARE(list, QList<QString>());
+
+    // make sure it really only removes one :)
+    list << "foo" << "foo";
+    list.removeOne("foo");
+    QCOMPARE(list, QList<QString>() << "foo");
+
+    // try remove something that doesn't exist
+    list.removeOne(QLatin1String("you won't remove anything I hope"));
+    QCOMPARE(list, QList<QString>() << "foo");
+}
+
+void tst_QList::replace() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // start
+    list.replace(0, "moo");
+    QCOMPARE(list, QList<QString>() << "moo" << "bar" << "baz");
+
+    // middle
+    list.replace(1, "cow");
+    QCOMPARE(list, QList<QString>() << "moo" << "cow" << "baz");
+
+    // end
+    list.replace(2, "milk");
+    QCOMPARE(list, QList<QString>() << "moo" << "cow" << "milk");
+}
+
+void tst_QList::startsWith() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // make sure it starts ok
+    QVERIFY(list.startsWith(QLatin1String("foo")));
+
+    // remove an item
+    list.removeFirst();
+    QVERIFY(list.startsWith(QLatin1String("bar")));
+}
+
+void tst_QList::swap() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // swap
+    list.swap(0, 2);
+    QCOMPARE(list, QList<QString>() << "baz" << "bar" << "foo");
+
+    // swap again
+    list.swap(1, 2);
+    QCOMPARE(list, QList<QString>() << "baz" << "foo" << "bar");
+}
+
+void tst_QList::takeAt() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QCOMPARE(list.takeAt(0), QLatin1String("foo"));
+    QVERIFY(list.size() == 2);
+    QCOMPARE(list.takeAt(1), QLatin1String("baz"));
+    QVERIFY(list.size() == 1);
+    QCOMPARE(list.takeAt(0), QLatin1String("bar"));
+    QVERIFY(list.size() == 0);
+}
+
+void tst_QList::takeFirst() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QCOMPARE(list.takeFirst(), QLatin1String("foo"));
+    QVERIFY(list.size() == 2);
+    QCOMPARE(list.takeFirst(), QLatin1String("bar"));
+    QVERIFY(list.size() == 1);
+    QCOMPARE(list.takeFirst(), QLatin1String("baz"));
+    QVERIFY(list.size() == 0);
+}
+
+void tst_QList::takeLast() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QCOMPARE(list.takeLast(), QLatin1String("baz"));
+    QCOMPARE(list.takeLast(), QLatin1String("bar"));
+    QCOMPARE(list.takeLast(), QLatin1String("foo"));
+}
+
+void tst_QList::toSet() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // no duplicates
+    QCOMPARE(list.toSet(), QSet<QString>() << "foo" << "bar" << "baz");
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz");
+
+    // duplicates (is this more of a QSet test?)
+    list << "foo" << "bar" << "baz";
+    QCOMPARE(list.toSet(), QSet<QString>() << "foo" << "bar" << "baz");
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz" << "foo" << "bar" << "baz");
+}
+
+void tst_QList::toStdList() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // yuck.
+    std::list<QString> slist;
+    slist.push_back(QLatin1String("foo"));
+    slist.push_back(QLatin1String("bar"));
+    slist.push_back(QLatin1String("baz"));
+
+    QCOMPARE(list.toStdList(), slist);
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz");
+}
+
+void tst_QList::toVector() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QCOMPARE(list.toVector(), QVector<QString>() << "foo" << "bar" << "baz");
+}
+
+void tst_QList::value() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    // test real values
+    QCOMPARE(list.value(0), QLatin1String("foo"));
+    QCOMPARE(list.value(2), QLatin1String("baz"));
+
+    // test empty default
+    QCOMPARE(list.value(3), QString());
+    QCOMPARE(list.value(-1), QString());
+
+    // test defaults
+    QLatin1String defaultstr("default");
+    QCOMPARE(list.value(-1, defaultstr), defaultstr);
+    QCOMPARE(list.value(3, defaultstr), defaultstr);
+}
+
+void tst_QList::testOperators() const
+{
+    QList<QString> list;
+    list << "foo" << "bar" << "baz";
+
+    QList<QString> listtwo;
+    listtwo << "foo" << "bar" << "baz";
+
+    // test equal
+    QVERIFY(list == listtwo);
+
+    // not equal
+    listtwo.append("not equal");
+    QVERIFY(list != listtwo);
+
+    // +=
+    list += listtwo;
+    QVERIFY(list.size() == 7);
+    QVERIFY(listtwo.size() == 4);
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz" << "foo" << "bar" << "baz" << "not equal");
+
+    // =
+    list = listtwo;
+    QCOMPARE(list, listtwo);
+    QCOMPARE(list, QList<QString>() << "foo" << "bar" << "baz" << "not equal");
+
+    // []
+    QCOMPARE(list[0], QLatin1String("foo"));
+    QCOMPARE(list[list.size() - 1], QLatin1String("not equal"));
+}
+
+void tst_QList::testSTLIterators() const
+{
+    QList<QString> list;
+
+    // create a list
+    list << "foo" << "bar" << "baz";
+    QList<QString>::iterator it = list.begin();
+    QCOMPARE(*it, QLatin1String("foo")); it++;
+    QCOMPARE(*it, QLatin1String("bar")); it++;
+    QCOMPARE(*it, QLatin1String("baz")); it++;
+    QCOMPARE(it, list.end()); it--;
+
+    // walk backwards
+    QCOMPARE(*it, QLatin1String("baz")); it--;
+    QCOMPARE(*it, QLatin1String("bar")); it--;
+    QCOMPARE(*it, QLatin1String("foo"));
+
+    // test erase
+    it = list.erase(it);
+    QVERIFY(list.size() == 2);
+    QCOMPARE(*it, QLatin1String("bar"));
+
+    // test multiple erase
+    it = list.erase(it, it + 2);
+    QVERIFY(list.size() == 0);
+    QCOMPARE(it, list.end());
+
+    // insert again
+    it = list.insert(it, QLatin1String("foo"));
+    QVERIFY(list.size() == 1);
+    QCOMPARE(*it, QLatin1String("foo"));
+
+    // insert again
+    it = list.insert(it, QLatin1String("bar"));
+    QVERIFY(list.size() == 2);
+    QCOMPARE(*it++, QLatin1String("bar"));
+    QCOMPARE(*it, QLatin1String("foo"));
+}
+
 QTEST_APPLESS_MAIN(tst_QList)
 #include "tst_qlist.moc"
-- 
cgit v0.12

