network: Don't create submenus for multiple-connection items

As multiple-connections for a Wi-Fi AP won't fit in the new design,
remove submenus right now. Simply make a simple item that connects
to the first known connection for the AP, which should be the common
case.

https://bugzilla.gnome.org/show_bug.cgi?id=698918
This commit is contained in:
Jasper St. Pierre 2013-04-25 16:32:01 -04:00
parent e645edbda7
commit a55288bda0

View File

@ -1118,23 +1118,8 @@ const NMDeviceWireless = new Lang.Class({
break; break;
if (network.item) { if (network.item) {
if (network.item instanceof PopupMenu.PopupSubMenuMenuItem) { network.item.destroy();
let items = network.item.menu._getMenuItems(); network.item = null;
if (items.length == 2) {
// we need to update the connection list to convert this to a normal item
forceupdate = true;
} else {
for (let j = 0; j < items.length; j++) {
if (items[j]._connection.get_uuid() == connection.get_uuid()) {
items[j].destroy();
break;
}
}
}
} else {
network.item.destroy();
network.item = null;
}
} }
break; break;
} }
@ -1198,14 +1183,7 @@ const NMDeviceWireless = new Lang.Class({
} }
if(network.connections.length > 0) { if(network.connections.length > 0) {
if (network.connections.length == 1) { network.item = this._createAPItem(network.connections[0], network, false);
network.item = this._createAPItem(network.connections[0], network, false);
} else {
let title = network.ssidText;
network.item = new PopupMenu.PopupSubMenuMenuItem(title);
for (let i = 0; i < network.connections.length; i++)
network.item.menu.addMenuItem(this._createAPItem(network.connections[i], network, true));
}
} else { } else {
network.item = new NMNetworkMenuItem(network.accessPoints[0]); network.item = new NMNetworkMenuItem(network.accessPoints[0]);
network.item.connect('activate', Lang.bind(this, function() { network.item.connect('activate', Lang.bind(this, function() {