summaryrefslogtreecommitdiffstats
path: root/textw/network_text.py
diff options
context:
space:
mode:
Diffstat (limited to 'textw/network_text.py')
-rw-r--r--textw/network_text.py34
1 files changed, 22 insertions, 12 deletions
diff --git a/textw/network_text.py b/textw/network_text.py
index ef22b6093..07d7f710f 100644
--- a/textw/network_text.py
+++ b/textw/network_text.py
@@ -23,6 +23,7 @@ from network import sanityCheckHostname
from snack import *
from constants_text import *
from rhpl.translate import _
+from rhpl.log import log
def badIPDisplay(screen, the_ip):
@@ -54,8 +55,13 @@ class NetworkDeviceWindow:
def runScreen(self, screen, network, dev, showonboot=1):
boot = dev.get("bootproto")
onboot = dev.get("onboot")
- onbootIsOn = ((dev == network.available().values()[0] and not onboot)
- or onboot == "yes")
+
+ devnames = self.devices.keys()
+ devnames.sort()
+ if devnames.index(dev.get("DEVICE")) == 0:
+ onbootIsOn = 1
+ else:
+ onbootIsOn = (onboot == "yes")
if not boot:
boot = "dhcp"
@@ -118,9 +124,9 @@ class NetworkDeviceWindow:
while 1:
result = toplevel.run()
rc = bb.buttonPressed (result)
- screen.popWindow()
if rc == TEXT_BACK_CHECK:
+ screen.popWindow()
return INSTALL_BACK
if self.onbootCb.selected() != 0:
@@ -158,16 +164,17 @@ class NetworkDeviceWindow:
break
+ screen.popWindow()
return INSTALL_OK
def __call__(self, screen, network, dir, intf, showonboot=1):
- devices = network.available()
- if not devices:
+ self.devices = network.available()
+ if not self.devices:
return INSTALL_NOOP
- list = devices.keys()
+ list = self.devices.keys()
list.sort()
devLen = len(list)
if dir == 1:
@@ -176,7 +183,8 @@ class NetworkDeviceWindow:
currentDev = devLen - 1
while currentDev < devLen and currentDev >= 0:
- rc = self.runScreen(screen, network, devices[list[currentDev]], showonboot)
+ rc = self.runScreen(screen, network,
+ self.devices[list[currentDev]], showonboot)
if rc == INSTALL_BACK:
currentDev = currentDev - 1
else:
@@ -252,9 +260,9 @@ class NetworkGlobalWindow:
while 1:
result = toplevel.run()
rc = bb.buttonPressed (result)
- screen.popWindow()
if rc == TEXT_BACK_CHECK:
+ screen.popWindow()
return INSTALL_BACK
val = gwEntry.value()
@@ -281,7 +289,8 @@ class NetworkGlobalWindow:
continue
network.ternaryNS = val
break
-
+
+ screen.popWindow()
return INSTALL_OK
@@ -352,9 +361,9 @@ class HostnameWindow:
while 1:
result = toplevel.run()
rc = bb.buttonPressed(result)
- screen.popWindow()
if rc == TEXT_BACK_CHECK:
+ screen.popWindow()
return INSTALL_BACK
if radio.getSelection() != "manual":
@@ -363,13 +372,13 @@ class HostnameWindow:
else:
hname = string.strip(hostEntry.value())
if len(hname) == 0:
- ButtonChoiceWindow(_("Invalid Hostname"),
+ ButtonChoiceWindow(screen, _("Invalid Hostname"),
_("You have not specified a hostname."),
buttons = [ _("OK") ])
continue
neterrors = sanityCheckHostname(hname)
if neterrors is not None:
- ButtonChoiceWindow(_("Invalid Hostname"),
+ ButtonChoiceWindow(screen, _("Invalid Hostname"),
_("The hostname \"%s\" is not valid "
"for the following reason:\n\n%s")
%(hname, neterrors),
@@ -380,6 +389,7 @@ class HostnameWindow:
network.hostname = hname
break
+ screen.popWindow()
return INSTALL_OK