@@ -64,6 +64,10 @@ def dhcp_change():
6464 for x in [ ip_field , gateway_field , subnet_field , dns_field ]:
6565 x .setFlags (FLAG_DISABLED , static_rb .selected ())
6666
67+ # Allow manual DNS for autoconf
68+ if autoconf_rb .selected ():
69+ dns_field .setFlags (FLAG_DISABLED , False )
70+
6771 ipv6 = iface_class == NetInterfaceV6
6872
6973 gf = GridFormHelp (tui .screen , 'Networking' , 'ifconfig' , 1 , 10 )
@@ -123,16 +127,19 @@ def dhcp_change():
123127 dns_text = Textbox (15 , 1 , "Nameserver:" )
124128 vlan_text = Textbox (15 , 1 , "VLAN (1-4094):" )
125129
126- entry_grid = Grid (2 , include_dns and 4 or 3 )
130+ entry_grid = Grid (2 , 3 )
127131 entry_grid .setField (ip_text , 0 , 0 )
128132 entry_grid .setField (ip_field , 1 , 0 )
129133 entry_grid .setField (subnet_text , 0 , 1 )
130134 entry_grid .setField (subnet_field , 1 , 1 )
131135 entry_grid .setField (gateway_text , 0 , 2 )
132136 entry_grid .setField (gateway_field , 1 , 2 )
137+
138+ dns_grid = None
133139 if include_dns :
134- entry_grid .setField (dns_text , 0 , 3 )
135- entry_grid .setField (dns_field , 1 , 3 )
140+ dns_grid = Grid (2 , 1 )
141+ dns_grid .setField (dns_text , 0 , 0 )
142+ dns_grid .setField (dns_field , 1 , 0 )
136143
137144 vlan_grid = Grid (2 , 1 )
138145 vlan_grid .setField (vlan_text , 0 , 0 )
@@ -144,9 +151,11 @@ def dhcp_change():
144151 gf .add (entry_grid , 0 , 4 , padding = (0 , 0 , 0 , 1 ))
145152 if ipv6 :
146153 gf .add (autoconf_rb , 0 , 5 , anchorLeft = True )
147- gf .add (vlan_cb , 0 , 6 , anchorLeft = True )
148- gf .add (vlan_grid , 0 , 7 , padding = (0 , 0 , 0 , 1 ))
149- gf .add (buttons , 0 , 8 , growx = 1 )
154+ if include_dns :
155+ gf .add (dns_grid , 0 , 6 , padding = (0 , 0 , 0 , 1 ))
156+ gf .add (vlan_cb , 0 , 7 , anchorLeft = True )
157+ gf .add (vlan_grid , 0 , 8 , padding = (0 , 0 , 0 , 1 ))
158+ gf .add (buttons , 0 , 9 , growx = 1 )
150159
151160 loop = True
152161 ip_family = socket .AF_INET6 if ipv6 else socket .AF_INET
0 commit comments