[SCM] qtbase packaging branch, ubuntu+1, updated. debian/5.8.0+dfsg-3-247-g035b3be
Timo Jyrinki
timo at moszumanska.debian.org
Tue Apr 11 10:33:20 UTC 2017
Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtbase.git;a=commitdiff;h=035b3be
The following commit has been merged in the ubuntu+1 branch:
commit 035b3be052d18db6314af5e25e222c0d1a59859d
Author: Timo Jyrinki <timo.jyrinki at canonical.com>
Date: Tue Apr 11 10:33:07 2017 +0000
Drop Ubuntu specific patches and patches that will be in upstream 5.9.
* Drop Ubuntu specific patches and patches that will be in upstream 5.9.
- Add-workaround-for-GL-on-Android-emulator.patch - 5.9
- qdbus-tray-icon-always-save-icon-in-unity.patch - 5.9
- qdbus-tray-icon-use-runtimedir.patch - 5.9
- qnam-ubuntu-fix6.patch - not submitted upstream, but also might be
outdated
- skip-largefile-test-s390x.patch - likely not needed anymore
---
debian/changelog | 7 +
...Add-workaround-for-GL-on-Android-emulator.patch | 40 --
debian/patches/disable_overlay_scrollbars.diff | 50 ---
...qdbus-tray-icon-always-save-icon-in-unity.patch | 43 --
.../patches/qdbus-tray-icon-use-runtimedir.patch | 66 ---
debian/patches/qnam-ubuntu-fix6.patch | 499 ---------------------
debian/patches/series | 6 -
debian/patches/skip-largefile-test-s390x.patch | 14 -
8 files changed, 7 insertions(+), 718 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index b56673c..30254da 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,13 @@ qtbase-opensource-src (5.8.0+dfsg-4) UNRELEASED; urgency=medium
[ Timo Jyrinki ]
* Drop support for twin gles packages.
+ * Drop Ubuntu specific patches and patches that will be in upstream 5.9.
+ - Add-workaround-for-GL-on-Android-emulator.patch - 5.9
+ - qdbus-tray-icon-always-save-icon-in-unity.patch - 5.9
+ - qdbus-tray-icon-use-runtimedir.patch - 5.9
+ - qnam-ubuntu-fix6.patch - not submitted upstream, but also might be
+ outdated
+ - skip-largefile-test-s390x.patch - likely not needed anymore
-- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org> Thu, 16 Feb 2017 11:40:03 +0300
diff --git a/debian/patches/Add-workaround-for-GL-on-Android-emulator.patch b/debian/patches/Add-workaround-for-GL-on-Android-emulator.patch
deleted file mode 100644
index 700330e..0000000
--- a/debian/patches/Add-workaround-for-GL-on-Android-emulator.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From cbf649ff92e7d3416cb9d03609648f96efdf76dd Mon Sep 17 00:00:00 2001
-From: Ricardo Salveti de Araujo <ricardo.salveti at canonical.com>
-Date: Mon, 17 Mar 2014 19:43:41 -0300
-Subject: [PATCH] Add workaround for GL on Android emulator
-
-On the Android Emulator, the shaders will be compiled by a desktop
-GL driver, since the GL driver in the emulator is just a thin
-wrapper. The GL driver does not necessarily support the precision
-qualifiers, which can cause applications to break. We detect this
-at runtime in the platform plugin and set a workaround flag to
-
-Upstream (9eeb1bd) just enabled the workaround when the android
-backend is used, which is not true in our case (traditional desktop).
-As a consequence, we also need a similar check in order to have
-a functional Ubuntu Touch emulator.
-
-Signed-off-by: Ricardo Salveti de Araujo <ricardo.salveti at canonical.com>
----
- src/gui/kernel/qopenglcontext.cpp | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/gui/kernel/qopenglcontext.cpp b/src/gui/kernel/qopenglcontext.cpp
-index 39dd2a2..71e3f8c 100644
---- a/src/gui/kernel/qopenglcontext.cpp
-+++ b/src/gui/kernel/qopenglcontext.cpp
-@@ -774,6 +774,11 @@ bool QOpenGLContext::makeCurrent(QSurface *surface)
-
- d->shareGroup->d_func()->deletePendingResources(this);
-
-+ const char *rendererString = reinterpret_cast<const char *>(glGetString(GL_RENDERER));
-+ if (rendererString != 0 && qstrncmp(rendererString, "Android Emulator", 16) == 0) {
-+ QOpenGLContextPrivate *ctx_d = QOpenGLContextPrivate::get(this);
-+ ctx_d->workaround_missingPrecisionQualifiers = true;
-+ }
- #ifndef QT_NO_DEBUG
- QOpenGLContextPrivate::toggleMakeCurrentTracker(this, true);
- #endif
---
-1.9.0
-
diff --git a/debian/patches/disable_overlay_scrollbars.diff b/debian/patches/disable_overlay_scrollbars.diff
deleted file mode 100644
index 52e9194..0000000
--- a/debian/patches/disable_overlay_scrollbars.diff
+++ /dev/null
@@ -1,50 +0,0 @@
-Description: disable Ubuntu overlay scrollbars as they don’t play well with Qt
-Author: Aurélien Gâteau <aurelien.gateau at canonical.com>
-Last-Update: 2013-04-22
-Forwarded: not-needed
-
---- a/src/widgets/styles/qgtkstyle_p.cpp
-+++ b/src/widgets/styles/qgtkstyle_p.cpp
-@@ -99,6 +99,7 @@ Q_GLOBAL_STATIC(QGtkStyleUpdateScheduler, styleScheduler)
-
- Ptr_gtk_container_forall QGtkStylePrivate::gtk_container_forall = 0;
- Ptr_gtk_init QGtkStylePrivate::gtk_init = 0;
-+Ptr_ubuntu_gtk_set_use_overlay_scrollbar QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar = 0;
- Ptr_gtk_style_attach QGtkStylePrivate::gtk_style_attach = 0;
- Ptr_gtk_window_new QGtkStylePrivate::gtk_window_new = 0;
- Ptr_gtk_widget_destroy QGtkStylePrivate::gtk_widget_destroy = 0;
-@@ -351,6 +352,7 @@ void QGtkStylePrivate::resolveGtk() const
- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
-
- gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
-+ ubuntu_gtk_set_use_overlay_scrollbar = (Ptr_ubuntu_gtk_set_use_overlay_scrollbar)libgtk.resolve("ubuntu_gtk_set_use_overlay_scrollbar");
- gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new");
- gtk_style_attach = (Ptr_gtk_style_attach)libgtk.resolve("gtk_style_attach");
- gtk_widget_destroy = (Ptr_gtk_widget_destroy)libgtk.resolve("gtk_widget_destroy");
-@@ -549,6 +551,8 @@ void QGtkStylePrivate::initGtkWidgets() const
- QGtkStylePrivate::gtk_init (NULL, NULL);
- #ifndef Q_OS_MAC
- XSetErrorHandler(qt_x_errhandler);
-+ if (QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar)
-+ QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar(false);
- #endif
-
- // make a window
---- a/src/widgets/styles/qgtkstyle_p_p.h
-+++ b/src/widgets/styles/qgtkstyle_p_p.h
-@@ -129,6 +129,7 @@ typedef char* (*Ptr_gconf_client_get_string)(GConfClient*, const char*, GError *
- typedef bool (*Ptr_gconf_client_get_bool)(GConfClient*, const char*, GError **);
-
- typedef void (*Ptr_gtk_init)(int *, char ***);
-+typedef void (*Ptr_ubuntu_gtk_set_use_overlay_scrollbar) (gboolean);
- typedef GtkWidget* (*Ptr_gtk_window_new) (GtkWindowType);
- typedef GtkStyle* (*Ptr_gtk_style_attach)(GtkStyle *, GdkWindow *);
- typedef void (*Ptr_gtk_widget_destroy) (GtkWidget *);
-@@ -344,6 +345,7 @@ public:
-
- static Ptr_gtk_container_forall gtk_container_forall;
- static Ptr_gtk_init gtk_init;
-+ static Ptr_ubuntu_gtk_set_use_overlay_scrollbar ubuntu_gtk_set_use_overlay_scrollbar;
- static Ptr_gtk_style_attach gtk_style_attach;
- static Ptr_gtk_window_new gtk_window_new;
- static Ptr_gtk_widget_destroy gtk_widget_destroy;
diff --git a/debian/patches/qdbus-tray-icon-always-save-icon-in-unity.patch b/debian/patches/qdbus-tray-icon-always-save-icon-in-unity.patch
deleted file mode 100644
index 8ca7fc4..0000000
--- a/debian/patches/qdbus-tray-icon-always-save-icon-in-unity.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Description: QDBusTrayIcon: always save the temp icon in Unity
-Author: Marco Trevisan <marco.trevisan at canonical.com>
-Bug-Ubuntu: 1600136
-Forwarded: yes
-Applied-Upstream: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=b934572
-
-
-From b934572b30ca64ea0f85dffaeb9ff3c30add1e7e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail at 3v1n0.net>
-Date: Fri, 13 Jan 2017 17:40:56 +0100
-Subject: QDBusTrayIcon: always save the temp icon in Unity
-
-We enforce the check of saving the icon when the indicator
-process name isn't available (as we might be running in a
-confined world), but we're running in Unity.
-
-Change-Id: I80d3be1a8c6eba8c391364260746e78cf89a5b98
-Reviewed-by: Dmitry Shachnev <mitya57 at gmail.com>
-Reviewed-by: Shawn Rutledge <shawn.rutledge at qt.io>
----
- src/platformsupport/dbustray/qdbustrayicon.cpp | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/src/platformsupport/dbustray/qdbustrayicon.cpp b/src/platformsupport/dbustray/qdbustrayicon.cpp
-index 5c4157c..b55ace3 100644
---- a/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
-+++ b/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
-@@ -171,6 +171,12 @@ QTemporaryFile *QDBusTrayIcon::tempIcon(const QIcon &icon)
- uint pid = session.interface()->servicePid(KDEWatcherService).value();
- QString processName = QLockFilePrivate::processNameByPid(pid);
- necessary = processName.endsWith(QLatin1String("indicator-application-service"));
-+ if (!necessary && QGuiApplication::desktopSettingsAware()) {
-+ // Accessing to process name might be not allowed if the application
-+ // is confined, thus we can just rely on the current desktop in use
-+ const QPlatformServices *services = QGuiApplicationPrivate::platformIntegration()->services();
-+ necessary = services->desktopEnvironment().split(':').contains("UNITY");
-+ }
- necessity_checked = true;
- }
- if (!necessary)
---
-cgit v1.0-4-g1e03
-
diff --git a/debian/patches/qdbus-tray-icon-use-runtimedir.patch b/debian/patches/qdbus-tray-icon-use-runtimedir.patch
deleted file mode 100644
index dcd3be2..0000000
--- a/debian/patches/qdbus-tray-icon-use-runtimedir.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-Description: QDBusTrayIcon: try use runtime or cache for icons
-Author: Marco Trevisan <marco.trevisan at canonical.com>
-Bug-Ubuntu: 1600136
-Forwarded: yes
-Applied-Upstream: http://code.qt.io/cgit/qt/qtbase.git/commit/?id=e1c93cc74
-
-
-From e1c93cc74b43d8c49208b38dde824298590ac788 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail at 3v1n0.net>
-Date: Fri, 13 Jan 2017 17:17:14 +0100
-Subject: QDBusTrayIcon: try use runtime or cache for icons
-
-It's better to save icons in $XDG_RUNTIME_DIR or
-$XDG_CACHE_HOME paths than in $TMPDIR as these
-places are readable from the desktop environment
-when an app is ran confined in a sandbox (as in
-snap packages)
-
-Change-Id: I1a3e4c5714f8ea51034d18fb87cead87ed21d6be
-Reviewed-by: Shawn Rutledge <shawn.rutledge at qt.io>
-Reviewed-by: Dmitry Shachnev <mitya57 at gmail.com>
----
- .../themes/genericunix/dbustray/qdbustrayicon.cpp | 25 +++++++++++++++++++++-
- 1 file changed, 24 insertions(+), 1 deletion(-)
-
-diff --git a/src/platformsupport/dbustray/qdbustrayicon.cpp b/src/platformsupport/dbustray/qdbustrayicon.cpp
-index b55ace3..9baf947 100644
---- a/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
-+++ b/src/platformsupport/themes/genericunix/dbustray/qdbustrayicon.cpp
-@@ -65,9 +65,32 @@ QT_BEGIN_NAMESPACE
-
- Q_LOGGING_CATEGORY(qLcTray, "qt.qpa.tray")
-
-+static QString iconTempPath()
-+{
-+ QString tempPath = QStandardPaths::writableLocation(QStandardPaths::RuntimeLocation);
-+ if (!tempPath.isEmpty())
-+ return tempPath;
-+
-+ tempPath = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation);
-+
-+ if (!tempPath.isEmpty()) {
-+ QDir tempDir(tempPath);
-+ if (tempDir.exists())
-+ return tempPath;
-+
-+ if (tempDir.mkpath(QStringLiteral("."))) {
-+ const QFile::Permissions permissions = QFile::ReadOwner | QFile::WriteOwner | QFile::ExeOwner;
-+ if (QFile(tempPath).setPermissions(permissions))
-+ return tempPath;
-+ }
-+ }
-+
-+ return QDir::tempPath();
-+}
-+
- static const QString KDEItemFormat = QStringLiteral("org.kde.StatusNotifierItem-%1-%2");
- static const QString KDEWatcherService = QStringLiteral("org.kde.StatusNotifierWatcher");
--static const QString TempFileTemplate = QDir::tempPath() + QLatin1String("/qt-trayicon-XXXXXX.png");
-+static const QString TempFileTemplate = iconTempPath() + QLatin1String("/qt-trayicon-XXXXXX.png");
- static const QString XdgNotificationService = QStringLiteral("org.freedesktop.Notifications");
- static const QString XdgNotificationPath = QStringLiteral("/org/freedesktop/Notifications");
- static const QString DefaultAction = QStringLiteral("default");
---
-cgit v1.0-4-g1e03
-
diff --git a/debian/patches/qnam-ubuntu-fix6.patch b/debian/patches/qnam-ubuntu-fix6.patch
deleted file mode 100644
index 57e792f..0000000
--- a/debian/patches/qnam-ubuntu-fix6.patch
+++ /dev/null
@@ -1,499 +0,0 @@
-Index: qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkaccessmanager.cpp
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/network/access/qnetworkaccessmanager.cpp
-+++ qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkaccessmanager.cpp
-@@ -69,6 +69,8 @@
-
- QT_BEGIN_NAMESPACE
-
-+Q_LOGGING_CATEGORY(lcQnam, "qt.network.qnam")
-+
- Q_GLOBAL_STATIC(QNetworkAccessFileBackendFactory, fileBackend)
- #ifndef QT_NO_FTP
- Q_GLOBAL_STATIC(QNetworkAccessFtpBackendFactory, ftpBackend)
-Index: qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkaccessmanager_p.h
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/network/access/qnetworkaccessmanager_p.h
-+++ qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkaccessmanager_p.h
-@@ -55,8 +55,11 @@
- #ifndef QT_NO_BEARERMANAGEMENT
- #include "QtNetwork/qnetworkconfigmanager.h"
- #endif
-+#include <QtCore/QLoggingCategory>
-+
-
- QT_BEGIN_NAMESPACE
-+Q_DECLARE_LOGGING_CATEGORY(lcQnam)
-
- class QAuthenticator;
- class QAbstractNetworkCache;
-Index: qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkreplyhttpimpl.cpp
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/network/access/qnetworkreplyhttpimpl.cpp
-+++ qtbase-opensource-src-5.4.1+dfsg/src/network/access/qnetworkreplyhttpimpl.cpp
-@@ -1598,6 +1598,11 @@ bool QNetworkReplyHttpImplPrivate::start
- Q_Q(QNetworkReplyHttpImpl);
- QObject::connect(networkSession.data(), SIGNAL(usagePoliciesChanged(QNetworkSession::UsagePolicies)),
- q, SLOT(_q_networkSessionUsagePoliciesChanged(QNetworkSession::UsagePolicies)));
-+ QObject::connect(networkSession.data(), SIGNAL(error(QNetworkSession::SessionError)),
-+ q, SLOT(_q_networkSessionFailed()), Qt::QueuedConnection);
-+ QObject::connect(networkSession.data(), SIGNAL(stateChanged(QNetworkSession::State)),
-+ q, SLOT(_q_networkSessionStateChanged(QNetworkSession::State)), Qt::QueuedConnection);
-+
- postRequest(newHttpRequest);
- return true;
- } else if (synchronous) {
-@@ -1648,7 +1653,7 @@ void QNetworkReplyHttpImplPrivate::_q_st
- q, SLOT(_q_networkSessionFailed()), Qt::QueuedConnection);
-
- if (!session->isOpen()) {
-- session->setSessionProperty(QStringLiteral("ConnectInBackground"), isBackground);
-+ session->setSessionProperty(QStringLiteral("ConnectInBackground"), isBackground);
- session->open();
- }
- } else {
-@@ -1811,6 +1818,7 @@ void QNetworkReplyHttpImplPrivate::_q_bu
- #ifndef QT_NO_BEARERMANAGEMENT
- void QNetworkReplyHttpImplPrivate::_q_networkSessionConnected()
- {
-+
- Q_Q(QNetworkReplyHttpImpl);
-
- if (!manager)
-@@ -1841,7 +1849,8 @@ void QNetworkReplyHttpImplPrivate::_q_ne
-
- void QNetworkReplyHttpImplPrivate::_q_networkSessionStateChanged(QNetworkSession::State sessionState)
- {
-- if (sessionState == QNetworkSession::Disconnected
-+ if ((sessionState == QNetworkSession::Disconnected ||
-+ sessionState == QNetworkSession::NotAvailable)
- && state != Idle && state != Reconnecting) {
- error(QNetworkReplyImpl::NetworkSessionFailedError,
- QCoreApplication::translate("QNetworkReply", "Network session error."));
-Index: qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp
-+++ qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerengine.cpp
-@@ -125,7 +125,12 @@ void QNetworkManagerEngine::setupConfigu
-
- QNetworkManagerConnectionActive *activeConnection =
- new QNetworkManagerConnectionActive(acPath.path(),this);
-- activeConnectionsList.insert(acPath.path(), activeConnection);
-+ if (activeConnection->defaultRoute()) {
-+ defaultPathConnectionPath = activeConnection->connection().path();
-+ }
-+ newConnection(activeConnection->connection(), systemSettings); //add system connection configs
-+
-+ activeConnectionsList.insert(activeConnection->connection().path(), activeConnection);
- connect(activeConnection, SIGNAL(propertiesChanged(QMap<QString,QVariant>)),
- this, SLOT(activeConnectionPropertiesChanged(QMap<QString,QVariant>)));
-
-@@ -242,70 +247,50 @@ void QNetworkManagerEngine::requestUpdat
- void QNetworkManagerEngine::interfacePropertiesChanged(const QMap<QString, QVariant> &properties)
- {
- QMutexLocker locker(&mutex);
-- QMapIterator<QString, QVariant> i(properties);
-- while (i.hasNext()) {
-- i.next();
--
-- if (i.key() == QLatin1String("ActiveConnections")) {
-- // Active connections changed, update configurations.
-+ if (properties.contains(QLatin1String("PrimaryConnectionType"))) {
-
-- QList<QDBusObjectPath> activeConnections =
-- qdbus_cast<QList<QDBusObjectPath> >(i.value().value<QDBusArgument>());
--
-- QStringList identifiers = accessPointConfigurations.keys();
-- QStringList priorActiveConnections = activeConnectionsList.keys();
-+ QString aPath = properties.value("PrimaryConnection").value<QDBusObjectPath>().path();
-+ QNetworkManagerConnectionActive *activeConnection = new QNetworkManagerConnectionActive(aPath,this);
-+ defaultPathConnectionPath = activeConnection->connection().path();
-+ }
-
-- foreach (const QDBusObjectPath &acPath, activeConnections) {
-- priorActiveConnections.removeOne(acPath.path());
-- QNetworkManagerConnectionActive *activeConnection =
-+ if (properties.contains(QLatin1String("ActiveConnections"))) {
-+ // Active connections changed, update configurations.
-+ QList<QDBusObjectPath> activeConnections =
-+ qdbus_cast<QList<QDBusObjectPath> >(properties.value("ActiveConnections").value<QDBusArgument>());
-+
-+ QStringList identifiers = accessPointConfigurations.keys();
-+ QStringList priorActiveConnections = activeConnectionsList.keys();
-+
-+ foreach (const QDBusObjectPath &acPath, activeConnections) {
-+ priorActiveConnections.removeOne(acPath.path());
-+ QNetworkManagerConnectionActive *activeConnection =
- activeConnectionsList.value(acPath.path());
-
-- if (!activeConnection) {
-- activeConnection = new QNetworkManagerConnectionActive(acPath.path(),this);
-- activeConnectionsList.insert(acPath.path(), activeConnection);
--
-- connect(activeConnection, SIGNAL(propertiesChanged(QMap<QString,QVariant>)),
-- this, SLOT(activeConnectionPropertiesChanged(QMap<QString,QVariant>)));
-- }
-+ if (!activeConnection) {
-+ activeConnection = new QNetworkManagerConnectionActive(acPath.path(),this);
-+ activeConnectionsList.insert(acPath.path(), activeConnection);
-
-- const QString id = activeConnection->connection().path();
--
-- identifiers.removeOne(id);
--
-- QNetworkConfigurationPrivatePointer ptr = accessPointConfigurations.value(id);
-- if (ptr) {
-- ptr->mutex.lock();
-- if (activeConnection->state() == NM_ACTIVE_CONNECTION_STATE_ACTIVATED &&
-- (ptr->state & QNetworkConfiguration::Active) != QNetworkConfiguration::Active) {
--
-- ptr->state |= QNetworkConfiguration::Active;
--
-- if (activeConnectionsList.value(id) && activeConnectionsList.value(id)->defaultRoute()
-- && managerInterface->state() < QNetworkManagerInterface::NM_STATE_CONNECTED_GLOBAL) {
-- ptr->purpose = QNetworkConfiguration::PrivatePurpose;
-- }
-- ptr->mutex.unlock();
--
-- locker.unlock();
-- emit configurationChanged(ptr);
-- locker.relock();
-- } else {
-- ptr->mutex.unlock();
-- }
-- }
-+ connect(activeConnection, SIGNAL(propertiesChanged(QMap<QString,QVariant>)),
-+ this, SLOT(activeConnectionPropertiesChanged(QMap<QString,QVariant>)));
- }
-
-- while (!priorActiveConnections.isEmpty())
-- delete activeConnectionsList.take(priorActiveConnections.takeFirst());
-+ const QString id = activeConnection->connection().path();
-
-- while (!identifiers.isEmpty()) {
-- QNetworkConfigurationPrivatePointer ptr =
-- accessPointConfigurations.value(identifiers.takeFirst());
-+ identifiers.removeOne(id);
-
-+ QNetworkConfigurationPrivatePointer ptr = accessPointConfigurations.value(id);
-+ if (ptr) {
- ptr->mutex.lock();
-- if ((ptr->state & QNetworkConfiguration::Active) == QNetworkConfiguration::Active) {
-- QNetworkConfiguration::StateFlags flag = QNetworkConfiguration::Defined;
-- ptr->state = (flag | QNetworkConfiguration::Discovered);
-+ if (activeConnection->state() == NM_ACTIVE_CONNECTION_STATE_ACTIVATED &&
-+ (ptr->state & QNetworkConfiguration::Active) != QNetworkConfiguration::Active) {
-+
-+ ptr->state |= QNetworkConfiguration::Active;
-+
-+ if (activeConnectionsList.value(id) && activeConnectionsList.value(id)->defaultRoute()
-+ && managerInterface->state() < QNetworkManagerInterface::NM_STATE_CONNECTED_GLOBAL) {
-+ ptr->purpose = QNetworkConfiguration::PrivatePurpose;
-+ }
- ptr->mutex.unlock();
-
- locker.unlock();
-@@ -316,6 +301,27 @@ void QNetworkManagerEngine::interfacePro
- }
- }
- }
-+
-+ while (!priorActiveConnections.isEmpty())
-+ delete activeConnectionsList.take(priorActiveConnections.takeFirst());
-+
-+ while (!identifiers.isEmpty()) {
-+ QNetworkConfigurationPrivatePointer ptr =
-+ accessPointConfigurations.value(identifiers.takeFirst());
-+
-+ ptr->mutex.lock();
-+ if ((ptr->state & QNetworkConfiguration::Active) == QNetworkConfiguration::Active) {
-+ QNetworkConfiguration::StateFlags flag = QNetworkConfiguration::Defined;
-+ ptr->state = (flag | QNetworkConfiguration::Discovered);
-+ ptr->mutex.unlock();
-+
-+ locker.unlock();
-+ emit configurationChanged(ptr);
-+ locker.relock();
-+ } else {
-+ ptr->mutex.unlock();
-+ }
-+ }
- }
- }
-
-@@ -323,8 +329,6 @@ void QNetworkManagerEngine::activeConnec
- {
- QMutexLocker locker(&mutex);
-
-- Q_UNUSED(properties)
--
- QNetworkManagerConnectionActive *activeConnection = qobject_cast<QNetworkManagerConnectionActive *>(sender());
-
- if (!activeConnection)
-@@ -354,57 +358,10 @@ void QNetworkManagerEngine::activeConnec
- ptr->mutex.unlock();
- }
- }
-- }
--}
--
--void QNetworkManagerEngine::deviceConnectionsChanged(const QStringList &connectionsList)
--{
-- QMutexLocker locker(&mutex);
-- for (int i = 0; i < connections.count(); ++i) {
-- if (connectionsList.contains(connections.at(i)->path()))
-- continue;
--
-- const QString settingsPath = connections.at(i)->path();
--
-- QNetworkConfigurationPrivatePointer ptr =
-- accessPointConfigurations.value(settingsPath);
-- ptr->mutex.lock();
-- QNetworkConfiguration::StateFlags flag = QNetworkConfiguration::Defined;
-- ptr->state = (flag | QNetworkConfiguration::Discovered);
-- ptr->mutex.unlock();
--
-- locker.unlock();
-- emit configurationChanged(ptr);
-- locker.relock();
-- Q_EMIT updateCompleted();
-- }
--}
--
--void QNetworkManagerEngine::wiredCarrierChanged(bool carrier)
--{
-- QNetworkManagerInterfaceDeviceWired *deviceWired = qobject_cast<QNetworkManagerInterfaceDeviceWired *>(sender());
-- if (!deviceWired)
-- return;
-- QMutexLocker locker(&mutex);
-- foreach (const QDBusObjectPath &settingsPath, systemSettings->listConnections()) {
-- for (int i = 0; i < connections.count(); ++i) {
-- QNetworkManagerSettingsConnection *connection = connections.at(i);
-- if (connection->getType() == DEVICE_TYPE_ETHERNET
-- && settingsPath.path() == connection->path()) {
-- QNetworkConfigurationPrivatePointer ptr =
-- accessPointConfigurations.value(settingsPath.path());
--
-- if (ptr) {
-- ptr->mutex.lock();
-- if (carrier)
-- ptr->state |= QNetworkConfiguration::Discovered;
-- else
-- ptr->state = QNetworkConfiguration::Defined;
-- ptr->mutex.unlock();
-- locker.unlock();
-- emit configurationChanged(ptr);
-- return;
-- }
-+ if (properties.contains(QStringLiteral("Default")) || properties.contains(QStringLiteral("Default6"))) {
-+ if (!properties.value("Default").toBool() && !properties.value("Default6").toBool()) {
-+ if (defaultPathConnectionPath == id)
-+ defaultPathConnectionPath.clear();
- }
- }
- }
-@@ -460,7 +417,7 @@ void QNetworkManagerEngine::newConnectio
- parseConnection(settingsPath, connection->getSettings());
-
- // Check if connection is active.
-- if (isConnectionActive(settingsPath))
-+ if (isConnectionActive(settingsPath)|| defaultPathConnectionPath.contains(settingsPath))
- cpPriv->state |= QNetworkConfiguration::Active;
-
- if (deviceType == DEVICE_TYPE_ETHERNET) {
-@@ -829,14 +786,8 @@ QNetworkSessionPrivate *QNetworkManagerE
-
- QNetworkConfigurationPrivatePointer QNetworkManagerEngine::defaultConfiguration()
- {
-- QHashIterator<QString, QNetworkManagerConnectionActive*> i(activeConnectionsList);
-- while (i.hasNext()) {
-- i.next();
-- QNetworkManagerConnectionActive *activeConnection = i.value();
-- if ((activeConnection->defaultRoute() || activeConnection->default6Route())) {
-- return accessPointConfigurations.value(activeConnection->connection().path());
-- }
-- }
-+ if (!defaultPathConnectionPath.isEmpty())
-+ return accessPointConfigurations.value(defaultPathConnectionPath);
-
- return QNetworkConfigurationPrivatePointer();
- }
-Index: qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h
-+++ qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerengine.h
-@@ -97,10 +97,8 @@ private Q_SLOTS:
- void newConnection(const QDBusObjectPath &path, QNetworkManagerSettings *settings = 0);
- void removeConnection(const QString &path);
- void updateConnection();
-- void activationFinished(QDBusPendingCallWatcher *watcher);
-- void deviceConnectionsChanged(const QStringList &activeConnectionsList);
-
-- void wiredCarrierChanged(bool);
-+ void activationFinished(QDBusPendingCallWatcher *watcher);
-
- void nmRegistered(const QString &serviceName = QString());
- void nmUnRegistered(const QString &serviceName = QString());
-@@ -138,6 +136,7 @@ private:
- bool isActiveContext(const QString &contextPath);
- bool nmAvailable;
- void setupConfigurations();
-+ QString defaultPathConnectionPath;
- };
-
- QT_END_NAMESPACE
-Index: qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp
-+++ qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerservice.cpp
-@@ -228,20 +228,8 @@ void QNetworkManagerInterface::propertie
- while (i.hasNext()) {
- i.next();
- propertyMap.insert(i.key(),i.value());
--
-- if (i.key() == QLatin1String("State")) {
-- quint32 state = i.value().toUInt();
-- if (state == NM_DEVICE_STATE_ACTIVATED
-- || state == NM_DEVICE_STATE_DISCONNECTED
-- || state == NM_DEVICE_STATE_UNAVAILABLE
-- || state == NM_DEVICE_STATE_FAILED) {
-- Q_EMIT propertiesChanged(map);
-- Q_EMIT stateChanged(state);
-- }
-- } else if (i.key() == QLatin1String("ActiveConnections")) {
-- Q_EMIT propertiesChanged(map);
-- }
- }
-+ Q_EMIT propertiesChanged(map);
- }
-
- QNetworkManagerInterfaceAccessPoint::QNetworkManagerInterfaceAccessPoint(const QString &dbusPathName, QObject *parent)
-@@ -411,25 +399,36 @@ QDBusObjectPath QNetworkManagerInterface
- return QDBusObjectPath();
- }
-
-+QStringList QNetworkManagerInterfaceDevice::availableConnections() const
-+{
-+ return availableConnectionPaths;
-+}
-+
- void QNetworkManagerInterfaceDevice::propertiesSwap(QMap<QString,QVariant> map)
- {
- QMapIterator<QString, QVariant> i(map);
- while (i.hasNext()) {
- i.next();
-- if (i.key() == QLatin1String("AvailableConnections")) { //Device
-- const QDBusArgument &dbusArgs = i.value().value<QDBusArgument>();
-- QDBusObjectPath path;
-- QStringList paths;
-- dbusArgs.beginArray();
-- while (!dbusArgs.atEnd()) {
-- dbusArgs >> path;
-- paths << path.path();
-- }
-- dbusArgs.endArray();
-- Q_EMIT connectionsChanged(paths);
-- }
- propertyMap.insert(i.key(),i.value());
- }
-+
-+ if (map.contains(QLatin1String("AvailableConnections"))) {
-+ availableConnectionPaths.clear();
-+ const QDBusArgument &dbusArgs = map.value("ActiveConnections").value<QDBusArgument>();
-+ QDBusObjectPath path;
-+ dbusArgs.beginArray();
-+ while (!dbusArgs.atEnd()) {
-+ dbusArgs >> path;
-+ availableConnectionPaths << path.path();
-+ }
-+ dbusArgs.endArray();
-+ Q_EMIT connectionsChanged(availableConnectionPaths);
-+ }
-+ if (map.contains(QLatin1String("State"))) {
-+ quint32 state = map.value("State").toUInt();
-+ Q_EMIT stateChanged(state);
-+ }
-+
- Q_EMIT propertiesChanged(map);
- }
-
-@@ -1007,20 +1006,21 @@ bool QNetworkManagerConnectionActive::de
- return false;
- }
-
-+QString QNetworkManagerConnectionActive::type() const
-+{
-+ if (propertyMap.contains("Type"))
-+ return propertyMap.value("Type").toString();
-+ return QString();
-+}
-+
- void QNetworkManagerConnectionActive::propertiesSwap(QMap<QString,QVariant> map)
- {
- QMapIterator<QString, QVariant> i(map);
- while (i.hasNext()) {
- i.next();
- propertyMap.insert(i.key(),i.value());
-- if (i.key() == QLatin1String("State")) {
-- quint32 state = i.value().toUInt();
-- if (state == NM_ACTIVE_CONNECTION_STATE_ACTIVATED
-- || state == NM_ACTIVE_CONNECTION_STATE_DEACTIVATED) {
-- Q_EMIT propertiesChanged(map);
-- }
-- }
- }
-+ Q_EMIT propertiesChanged(map);
- }
-
- QNetworkManagerIp4Config::QNetworkManagerIp4Config( const QString &deviceObjectPath, QObject *parent)
-Index: qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h
-===================================================================
---- qtbase-opensource-src-5.4.1+dfsg.orig/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h
-+++ qtbase-opensource-src-5.4.1+dfsg/src/plugins/bearer/networkmanager/qnetworkmanagerservice.h
-@@ -79,6 +79,8 @@ typedef enum
- NM_DEVICE_STATE_CONFIG = 50,
- NM_DEVICE_STATE_NEED_AUTH = 60,
- NM_DEVICE_STATE_IP_CONFIG = 70,
-+ NM_DEVICE_STATE_IP_CHECK = 80,
-+ NM_DEVICE_STATE_SECONDARIES = 90,
- NM_DEVICE_STATE_ACTIVATED = 100,
- NM_DEVICE_STATE_DEACTIVATING = 110,
- NM_DEVICE_STATE_FAILED = 120
-@@ -89,6 +91,7 @@ typedef enum
- NM_ACTIVE_CONNECTION_STATE_UNKNOWN = 0,
- NM_ACTIVE_CONNECTION_STATE_ACTIVATING,
- NM_ACTIVE_CONNECTION_STATE_ACTIVATED,
-+ NM_ACTIVE_CONNECTION_STATE_DEACTIVATING,
- NM_ACTIVE_CONNECTION_STATE_DEACTIVATED = 4
- } NMActiveConnectionState;
-
-@@ -261,11 +264,12 @@ public:
- quint32 ip4Address() const;
- quint32 state() const;
- quint32 deviceType() const;
-+ QStringList availableConnections() const;
-
- QDBusObjectPath ip4config() const;
-
- Q_SIGNALS:
-- void stateChanged(const QString &, quint32);
-+ void stateChanged(quint32);
- void propertiesChanged(QMap<QString,QVariant>);
- void connectionsChanged(QStringList);
- void propertiesReady();
-@@ -273,6 +277,7 @@ private Q_SLOTS:
- void propertiesSwap(QMap<QString,QVariant>);
- private:
- QVariantMap propertyMap;
-+ QStringList availableConnectionPaths;
- };
-
- class QNetworkManagerInterfaceDeviceWired : public QDBusAbstractInterface
-@@ -454,6 +459,7 @@ public:
- quint32 state() const;
- bool defaultRoute() const;
- bool default6Route() const;
-+ QString type() const;
-
-
- Q_SIGNALS:
diff --git a/debian/patches/series b/debian/patches/series
index c0dc661..29acf30 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -20,10 +20,4 @@ armv4.diff
# Ubuntu specific.
qt5-qmake-arm-linux-gnueabihf
-Add-workaround-for-GL-on-Android-emulator.patch
#enable-tests.patch
-skip-largefile-test-s390x.patch
-#qnam-ubuntu-fix6.patch
-#disable_overlay_scrollbars.diff
-qdbus-tray-icon-always-save-icon-in-unity.patch
-qdbus-tray-icon-use-runtimedir.patch
diff --git a/debian/patches/skip-largefile-test-s390x.patch b/debian/patches/skip-largefile-test-s390x.patch
deleted file mode 100644
index 6e5221d..0000000
--- a/debian/patches/skip-largefile-test-s390x.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Description: Skip largefile test on s390x too, in addition to amd64.
-Author: Dimitri John Ledkov <xnox at ubuntu.com>
-
---- qtbase-opensource-src-5.5.1+dfsg.orig/tests/auto/corelib/io/largefile/tst_largefile.cpp
-+++ qtbase-opensource-src-5.5.1+dfsg/tests/auto/corelib/io/largefile/tst_largefile.cpp
-@@ -511,7 +511,7 @@ void tst_LargeFile::mapOffsetOverflow()
- uchar *address = 0;
-
- address = largeFile.map(((qint64)1 << i), blockSize);
--#if defined(__x86_64__)
-+#if defined(__x86_64__) || defined(Q_PROCESSOR_S390_X)
- QEXPECT_FAIL("", "fails on 64-bit Linux (QTBUG-21175)", Abort);
- #endif
- QVERIFY( !address );
--
qtbase packaging
More information about the pkg-kde-commits
mailing list