rpms/kdebase-workspace/F-12 kdebase-workspace-4.4.85-kdebug238325.patch, NONE, 1.1 .cvsignore, 1.46, 1.47 kdebase-workspace.spec, 1.339, 1.340
Rex Dieter
rdieter at fedoraproject.org
Fri Jun 11 15:48:36 UTC 2010
Author: rdieter
Update of /cvs/pkgs/rpms/kdebase-workspace/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv16409
Modified Files:
.cvsignore kdebase-workspace.spec
Added Files:
kdebase-workspace-4.4.85-kdebug238325.patch
Log Message:
* Tue Jun 08 2010 Rex Dieter <rdieter at Fedoraproject.org> - 4.4.4-2
- - Adding "Enable networking" button to knetworkmanager (rh#598765, kde#238325)
kdebase-workspace-4.4.85-kdebug238325.patch:
libs/solid/control/ifaces/networkmanager.h | 5 +
libs/solid/control/networkmanager.cpp | 2
libs/solid/control/networkmanager.h | 4 +
solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml | 6 +
solid/networkmanager-0.7/dbus/introspection/nm-manager.xml | 29 +++++++-
solid/networkmanager-0.7/dbus/nm-manager-clientinterface.h | 13 +++
solid/networkmanager-0.7/manager.cpp | 36 +++++++++-
solid/networkmanager-0.7/manager_p.h | 2
8 files changed, 93 insertions(+), 4 deletions(-)
--- NEW FILE kdebase-workspace-4.4.85-kdebug238325.patch ---
diff -up kdebase-workspace-4.4.85/libs/solid/control/ifaces/networkmanager.h.kde238325 kdebase-workspace-4.4.85/libs/solid/control/ifaces/networkmanager.h
--- kdebase-workspace-4.4.85/libs/solid/control/ifaces/networkmanager.h.kde238325 2009-04-28 08:46:11.000000000 -0500
+++ kdebase-workspace-4.4.85/libs/solid/control/ifaces/networkmanager.h 2010-06-08 14:40:43.554897330 -0500
@@ -164,6 +164,11 @@ namespace Ifaces
void wirelessHardwareEnabledChanged(bool enabled);
/**
+ * This signal is emitted when the status of overall networking changed
+ */
+ void networkingEnabledChanged(bool enabled);
+
+ /**
* This signal is emitted when the set of active connections changes
*/
void activeConnectionsChanged();
diff -up kdebase-workspace-4.4.85/libs/solid/control/networkmanager.cpp.kde238325 kdebase-workspace-4.4.85/libs/solid/control/networkmanager.cpp
--- kdebase-workspace-4.4.85/libs/solid/control/networkmanager.cpp.kde238325 2009-07-17 16:44:59.000000000 -0500
+++ kdebase-workspace-4.4.85/libs/solid/control/networkmanager.cpp 2010-06-08 14:40:43.555907737 -0500
@@ -56,6 +56,8 @@ Solid::Control::NetworkManagerPrivate::N
this, SIGNAL(wirelessEnabledChanged(bool)));
connect(managerBackend(), SIGNAL(wirelessHardwareEnabledChanged(bool)),
this, SIGNAL(wirelessHardwareEnabledChanged(bool)));
+ connect(managerBackend(), SIGNAL(networkingEnabledChanged(bool)),
+ this, SIGNAL(networkingEnabledChanged(bool)));
connect(managerBackend(), SIGNAL(activeConnectionsChanged()),
this, SIGNAL(activeConnectionsChanged()));
}
diff -up kdebase-workspace-4.4.85/libs/solid/control/networkmanager.h.kde238325 kdebase-workspace-4.4.85/libs/solid/control/networkmanager.h
--- kdebase-workspace-4.4.85/libs/solid/control/networkmanager.h.kde238325 2009-04-28 08:46:11.000000000 -0500
+++ kdebase-workspace-4.4.85/libs/solid/control/networkmanager.h 2010-06-08 14:40:43.555907737 -0500
@@ -170,6 +170,10 @@ namespace Control
*/
void wirelessHardwareEnabledChanged(bool enabled);
/**
+ * This signal is emitted when the status of overall networking changed
+ */
+ void networkingEnabledChanged(bool enabled);
+ /**
* This signal is emitted when the set of active connections changes
*/
void activeConnectionsChanged();
diff -up kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml.kde238325 kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml
--- kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml.kde238325 2008-05-15 13:37:15.000000000 -0500
+++ kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml 2010-06-08 14:40:43.549905432 -0500
@@ -39,6 +39,12 @@ object. dbus-glib generates the same bo
<arg name="sleep" type="b" direction="in"/>
</method>
+ <method name="Enable">
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_enable"/>
+ <arg name="enable" type="b" direction="in"/>
+ </method>
+
+ <property name="NetworkingEnabled" type="b" access="read"/>
<property name="WirelessEnabled" type="b" access="readwrite"/>
<property name="WirelessHardwareEnabled" type="b" access="read"/>
<property name="ActiveConnections" type="ao" access="read"/>
diff -up kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager.xml.kde238325 kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager.xml
--- kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager.xml.kde238325 2008-05-15 13:37:15.000000000 -0500
+++ kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/introspection/nm-manager.xml 2010-06-08 14:40:43.549905432 -0500
@@ -80,7 +80,10 @@
<method name="Sleep">
<annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_sleep"/>
<tp:docstring>
- Control the NetworkManager daemon's sleep state. When asleep, all interfaces that it manages are deactivated. When awake, devices are available to be activated.
+ Control the NetworkManager daemon's sleep state. When asleep, all
+ interfaces that it manages are deactivated. When awake, devices are
+ available to be activated. This command should not be called directly
+ by users or clients; it is intended for system suspend/resume tracking.
</tp:docstring>
<arg name="sleep" type="b" direction="in">
<tp:docstring>
@@ -89,6 +92,30 @@
</arg>
</method>
+ <method name="Enable">
+ <annotation name="org.freedesktop.DBus.GLib.CSymbol" value="impl_manager_enable"/>
+ <tp:docstring>
+ Control whether overall networking is enabled or disabled. When
+ disabled, all interfaces that NM manages are deactivated. When enabled,
+ all managed interfaces are re-enabled and available to be activated.
+ This command should be used by clients that provide to users the ability
+ to enable/disable all networking.
+ </tp:docstring>
+ <arg name="enable" type="b" direction="in">
+ <tp:docstring>
+ If FALSE, indicates that all networking should be disabled. If TRUE,
+ indicates that NetworkManager should begin managing network devices.
+ </tp:docstring>
+ </arg>
+ </method>
+
+ <property name="NetworkingEnabled" type="b" access="read">
+ <tp:docstring>
+ Indicates if overall networking is currently enabled or not. See the
+ Enable() method.
+ </tp:docstring>
+ </property>
+
<property name="WirelessEnabled" type="b" access="readwrite">
<tp:docstring>
Indicates if wireless is currently enabled or not.
diff -up kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/nm-manager-clientinterface.h.kde238325 kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/nm-manager-clientinterface.h
--- kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/nm-manager-clientinterface.h.kde238325 2009-06-17 15:06:03.000000000 -0500
+++ kdebase-workspace-4.4.85/solid/networkmanager-0.7/dbus/nm-manager-clientinterface.h 2010-06-08 14:40:43.551895445 -0500
@@ -2,7 +2,7 @@
* This file was generated by qdbusxml2cpp version 0.7
* Command line was: qdbusxml2cpp -N -m -p nm-manager-clientinterface /space/kde/sources/trunk/KDE/kdebase/workspace/solid/networkmanager-0.7/dbus/introspection/nm-manager-client.xml
*
- * qdbusxml2cpp is Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
+ * qdbusxml2cpp is Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
*
* This is an auto-generated file.
* Do not edit! All changes made to it will be lost.
@@ -39,6 +39,10 @@ public:
inline QList<QDBusObjectPath> activeConnections() const
{ return qvariant_cast< QList<QDBusObjectPath> >(internalPropGet("ActiveConnections")); }
+ Q_PROPERTY(bool NetworkingEnabled READ networkingEnabled)
+ inline bool networkingEnabled() const
+ { return qvariant_cast< bool >(internalPropGet("NetworkingEnabled")); }
+
Q_PROPERTY(uint State READ state)
inline uint state() const
{ return qvariant_cast< uint >(internalPropGet("State")); }
@@ -68,6 +72,13 @@ public Q_SLOTS: // METHODS
return asyncCallWithArgumentList(QLatin1String("DeactivateConnection"), argumentList);
}
+ inline QDBusPendingReply<> Enable(bool enable)
+ {
+ QList<QVariant> argumentList;
+ argumentList << qVariantFromValue(enable);
+ return asyncCallWithArgumentList(QLatin1String("Enable"), argumentList);
+ }
+
inline QDBusPendingReply<QList<QDBusObjectPath> > GetDevices()
{
QList<QVariant> argumentList;
diff -up kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager.cpp.kde238325 kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager.cpp
--- kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager.cpp.kde238325 2010-02-09 08:30:15.000000000 -0600
+++ kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager.cpp 2010-06-08 14:40:43.552905013 -0500
@@ -49,6 +49,14 @@ NMNetworkManager::NMNetworkManager(QObje
d->nmState = d->iface.state();
d->isWirelessHardwareEnabled = d->iface.wirelessHardwareEnabled();
d->isWirelessEnabled = d->iface.wirelessEnabled();
+ QVariant netEnabled = d->iface.property("NetworkingEnabled");
+ if (!netEnabled.isNull()) {
+ d->isNetworkingEnabled = netEnabled.toBool();
+ d->NetworkingEnabledPropertyAvailable = true;
+ } else {
+ d->isNetworkingEnabled = !(NM_STATE_UNKNOWN == d->nmState || NM_STATE_ASLEEP == d->nmState);
+ d->NetworkingEnabledPropertyAvailable = false;
+ }
connect( &d->iface, SIGNAL(DeviceAdded(const QDBusObjectPath &)),
this, SLOT(deviceAdded(const QDBusObjectPath &)));
connect( &d->iface, SIGNAL(DeviceRemoved(const QDBusObjectPath &)),
@@ -138,7 +146,7 @@ QObject *NMNetworkManager::createNetwork
bool NMNetworkManager::isNetworkingEnabled() const
{
Q_D(const NMNetworkManager);
- return !(NM_STATE_UNKNOWN == d->nmState || NM_STATE_ASLEEP == d->nmState);
+ return d->isNetworkingEnabled;
}
bool NMNetworkManager::isWirelessEnabled() const
@@ -182,7 +190,14 @@ void NMNetworkManager::deactivateConnect
void NMNetworkManager::setNetworkingEnabled(bool enabled)
{
Q_D(NMNetworkManager);
- d->iface.Sleep(!enabled);
+
+ QDBusPendingReply<> reply = d->iface.Enable(enabled);
+ reply.waitForFinished();
+ if (reply.isError()) {
+ kDebug(1441) << "Enable() D-Bus method not available:" << reply.error();
+ kDebug(1441) << "Calling Sleep() instead";
+ d->iface.Sleep(!enabled);
+ }
}
void NMNetworkManager::setWirelessEnabled(bool enabled)
@@ -211,9 +226,19 @@ void NMNetworkManager::stateChanged(uint
{
Q_D(NMNetworkManager);
if ( d->nmState != state ) {
+
+ // When "NetworkingEnabled" property is not available, set isNetworkingEnabled flag and emit signal here.
+ // It has to be done before emitting statusChanged(), else it would cause infinite status switching.
+ if (!d->NetworkingEnabledPropertyAvailable) {
+ d->isNetworkingEnabled = !(NM_STATE_UNKNOWN == state || NM_STATE_ASLEEP == state);
+ emit networkingEnabledChanged(d->isNetworkingEnabled);
+ }
+
+ // set new state
d->nmState = state;
emit statusChanged( convertNMState( state ) );
}
+
}
void NMNetworkManager::propertiesChanged(const QVariantMap &properties)
@@ -221,6 +246,7 @@ void NMNetworkManager::propertiesChanged
Q_D(NMNetworkManager);
kDebug(1441) << properties.keys();
QLatin1String activeConnKey("ActiveConnections");
+ QLatin1String netEnabledKey("NetworkingEnabled");
QLatin1String wifiHwKey("WirelessHardwareEnabled");
QLatin1String wifiEnabledKey("WirelessEnabled");
QVariantMap::const_iterator it = properties.find(activeConnKey);
@@ -248,6 +274,12 @@ void NMNetworkManager::propertiesChanged
kDebug(1441) << wifiEnabledKey << d->isWirelessEnabled;
emit wirelessEnabledChanged(d->isWirelessEnabled);
}
+ it = properties.find(netEnabledKey);
+ if ( it != properties.end()) {
+ d->isNetworkingEnabled = it->toBool();
+ kDebug(1441) << netEnabledKey << d->isNetworkingEnabled;
+ emit networkingEnabledChanged(d->isNetworkingEnabled);
+ }
}
Solid::Networking::Status NMNetworkManager::convertNMState(uint state)
diff -up kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager_p.h.kde238325 kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager_p.h
--- kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager_p.h.kde238325 2008-06-10 06:41:03.000000000 -0500
+++ kdebase-workspace-4.4.85/solid/networkmanager-0.7/manager_p.h 2010-06-08 14:40:43.552905013 -0500
@@ -35,6 +35,8 @@ public:
uint nmState;
bool isWirelessEnabled;
bool isWirelessHardwareEnabled;
+ bool isNetworkingEnabled;
+ bool NetworkingEnabledPropertyAvailable;
QStringList networkInterfaces;
QStringList activeConnections;
};
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/kdebase-workspace/F-12/.cvsignore,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -p -r1.46 -r1.47
--- .cvsignore 1 May 2010 10:14:21 -0000 1.46
+++ .cvsignore 11 Jun 2010 15:48:36 -0000 1.47
@@ -1 +1,2 @@
kdebase-workspace-4.4.3.tar.bz2
+kdebase-workspace-4.4.4.tar.bz2
Index: kdebase-workspace.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kdebase-workspace/F-12/kdebase-workspace.spec,v
retrieving revision 1.339
retrieving revision 1.340
diff -u -p -r1.339 -r1.340
--- kdebase-workspace.spec 6 Jun 2010 19:50:13 -0000 1.339
+++ kdebase-workspace.spec 11 Jun 2010 15:48:36 -0000 1.340
@@ -16,7 +16,7 @@
Summary: KDE Workspace
Name: kdebase-workspace
Version: 4.4.4
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2
Group: User Interface/Desktops
@@ -65,6 +65,9 @@ Patch50: kdebase-workspace-4.3.3-kde#171
# FIXME: Not upstreamed yet --Ben (4.3.80)
#Patch51: http://bazaar.launchpad.net/~kubuntu-members/kdebase-workspace/ubuntu/annotate/head%3A/debian/patches/kubuntu_101_brightness_fn_keys_and_osd.diff
Patch51: kdebase-workspace-4.3.95-brightness_keys.patch
+# "Adding "Enable networking" button to knetworkmanager"
+# https://bugzilla.redhat.com/598765 https://bugs.kde.org/238325
+Patch52: kdebase-workspace-4.4.85-kdebug238325.patch
# 4.4 patches
@@ -326,8 +329,9 @@ Requires: akonadi
# upstream patches
%patch50 -p1 -b .kde#171685
-# kubuntu patches
%patch51 -p1 -b .brightness_keys
+%patch52 -p1 -b .kdebug238325
+
# 4.4 patches
@@ -681,6 +685,9 @@ fi
%changelog
+* Tue Jun 08 2010 Rex Dieter <rdieter at Fedoraproject.org> - 4.4.4-2
+- - Adding "Enable networking" button to knetworkmanager (rh#598765, kde#238325)
+
* Sun May 30 2010 Than Ngo <than at redhat.com> - 4.4.4-1
- 4.4.4
More information about the scm-commits
mailing list