[gnome-control-center/gnome-3-38] network: Show DNS6 parameters in details and connection editor



commit 0b7d9c79abdcec46381c007f7b8dd8bd17fba58c
Author: treysis <treysis gmx net>
Date:   Mon Jan 11 22:13:18 2021 +0100

    network: Show DNS6 parameters in details and connection editor
    
    Fixes https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1231

 panels/network/connection-editor/ce-page-details.c | 51 ++++++++++++++++-----
 panels/network/connection-editor/details-page.ui   | 53 +++++++++++++++++++---
 panels/network/connection-editor/ip4-page.ui       |  2 +-
 panels/network/connection-editor/ip6-page.ui       |  2 +-
 panels/network/net-device-ethernet.c               | 18 +++++++-
 panels/network/net-device-mobile.c                 | 49 +++++++++++++++-----
 panels/network/network-mobile.ui                   | 40 +++++++++++++++-
 7 files changed, 180 insertions(+), 35 deletions(-)
---
diff --git a/panels/network/connection-editor/ce-page-details.c 
b/panels/network/connection-editor/ce-page-details.c
index cd5d36cbb..91014c49c 100644
--- a/panels/network/connection-editor/ce-page-details.c
+++ b/panels/network/connection-editor/ce-page-details.c
@@ -34,8 +34,10 @@ struct _CEPageDetails
 
         GtkCheckButton *all_user_check;
         GtkCheckButton *auto_connect_check;
-        GtkLabel *dns_heading_label;
-        GtkLabel *dns_label;
+        GtkLabel *dns4_heading_label;
+        GtkLabel *dns4_label;
+        GtkLabel *dns6_heading_label;
+        GtkLabel *dns6_label;
         GtkButton *forget_button;
         GtkLabel *freq_heading_label;
         GtkLabel *freq_label;
@@ -243,6 +245,8 @@ connect_details_page (CEPageDetails *self)
         gboolean device_is_active;
         NMIPConfig *ipv4_config = NULL, *ipv6_config = NULL;
         gboolean have_ipv4_address = FALSE, have_ipv6_address = FALSE;
+        gboolean have_dns4 = FALSE, have_dns6 = FALSE;
+
 
         sc = nm_connection_get_setting_connection (self->connection);
         type = nm_setting_connection_get_connection_type (sc);
@@ -345,7 +349,7 @@ connect_details_page (CEPageDetails *self)
         if (ipv4_config != NULL) {
                 GPtrArray *addresses;
                 const gchar *ipv4_text = NULL;
-                g_autofree gchar *dns_text = NULL;
+                g_autofree gchar *ip4_dns = NULL;
                 const gchar *route_text;
 
                 addresses = nm_ip_config_get_addresses (ipv4_config);
@@ -356,10 +360,13 @@ connect_details_page (CEPageDetails *self)
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv4_label), ipv4_text != NULL);
                 have_ipv4_address = ipv4_text != NULL;
 
-                dns_text = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv4_config));
-                gtk_label_set_label (self->dns_label, dns_text);
-                gtk_widget_set_visible (GTK_WIDGET (self->dns_heading_label), dns_text != NULL);
-                gtk_widget_set_visible (GTK_WIDGET (self->dns_label), dns_text != NULL);
+                ip4_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv4_config));
+                if (!*ip4_dns)
+                        ip4_dns = NULL;
+                gtk_label_set_label (self->dns4_label, ip4_dns);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns4_heading_label), ip4_dns != NULL);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns4_label), ip4_dns != NULL);
+                have_dns4 = ip4_dns != NULL;
 
                 route_text = nm_ip_config_get_gateway (ipv4_config);
                 gtk_label_set_label (self->route_label, route_text);
@@ -368,8 +375,8 @@ connect_details_page (CEPageDetails *self)
         } else {
                 gtk_widget_hide (GTK_WIDGET (self->ipv4_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->ipv4_label));
-                gtk_widget_hide (GTK_WIDGET (self->dns_heading_label));
-                gtk_widget_hide (GTK_WIDGET (self->dns_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns4_heading_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns4_label));
                 gtk_widget_hide (GTK_WIDGET (self->route_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->route_label));
         }
@@ -379,6 +386,7 @@ connect_details_page (CEPageDetails *self)
         if (ipv6_config != NULL) {
                 GPtrArray *addresses;
                 const gchar *ipv6_text = NULL;
+                g_autofree gchar *ip6_dns = NULL;
 
                 addresses = nm_ip_config_get_addresses (ipv6_config);
                 if (addresses->len > 0)
@@ -387,9 +395,19 @@ connect_details_page (CEPageDetails *self)
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv6_heading_label), ipv6_text != NULL);
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv6_label), ipv6_text != NULL);
                 have_ipv6_address = ipv6_text != NULL;
+
+                ip6_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv6_config));
+                if (!*ip6_dns)
+                        ip6_dns = NULL;
+                gtk_label_set_label (self->dns6_label, ip6_dns);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns6_heading_label), ip6_dns != NULL);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns6_label), ip6_dns != NULL);
+                have_dns6 = ip6_dns != NULL;
         } else {
                 gtk_widget_hide (GTK_WIDGET (self->ipv6_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->ipv6_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns6_heading_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns6_label));
         }
 
         if (have_ipv4_address && have_ipv6_address) {
@@ -401,6 +419,15 @@ connect_details_page (CEPageDetails *self)
                 gtk_label_set_label (self->ipv6_heading_label, _("IP Address"));
         }
 
+        if (have_dns4 && have_dns6) {
+                gtk_label_set_label (self->dns4_heading_label, _("DNS4"));
+                gtk_label_set_label (self->dns6_heading_label, _("DNS6"));
+        }
+        else {
+                gtk_label_set_label (self->dns4_heading_label, _("DNS"));
+                gtk_label_set_label (self->dns6_heading_label, _("DNS"));
+        }
+
         if (!device_is_active && self->connection)
                 update_last_used (self, self->connection);
         else {
@@ -474,8 +501,10 @@ ce_page_details_class_init (CEPageDetailsClass *klass)
 
         gtk_widget_class_bind_template_child (widget_class, CEPageDetails, all_user_check);
         gtk_widget_class_bind_template_child (widget_class, CEPageDetails, auto_connect_check);
-        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns_heading_label);
-        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns_label);
+        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns4_heading_label);
+        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns4_label);
+        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns6_heading_label);
+        gtk_widget_class_bind_template_child (widget_class, CEPageDetails, dns6_label);
         gtk_widget_class_bind_template_child (widget_class, CEPageDetails, forget_button);
         gtk_widget_class_bind_template_child (widget_class, CEPageDetails, freq_heading_label);
         gtk_widget_class_bind_template_child (widget_class, CEPageDetails, freq_label);
diff --git a/panels/network/connection-editor/details-page.ui 
b/panels/network/connection-editor/details-page.ui
index fba3aa7be..7dfabbe6d 100644
--- a/panels/network/connection-editor/details-page.ui
+++ b/panels/network/connection-editor/details-page.ui
@@ -191,13 +191,13 @@
       </packing>
     </child>
     <child>
-      <object class="GtkLabel" id="dns_heading_label">
+      <object class="GtkLabel" id="dns4_heading_label">
         <property name="visible">True</property>
         <property name="can_focus">False</property>
         <property name="xalign">1</property>
         <property name="yalign">0</property>
         <property name="label" translatable="yes">DNS</property>
-        <property name="mnemonic_widget">dns_label</property>
+        <property name="mnemonic_widget">dns4_label</property>
         <style>
           <class name="dim-label"/>
         </style>
@@ -209,6 +209,25 @@
         <property name="height">1</property>
       </packing>
     </child>
+    <child>
+      <object class="GtkLabel" id="dns6_heading_label">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="xalign">1</property>
+        <property name="yalign">0</property>
+        <property name="label" translatable="yes">DNS</property>
+        <property name="mnemonic_widget">dns6_label</property>
+        <style>
+          <class name="dim-label"/>
+        </style>
+      </object>
+      <packing>
+        <property name="left_attach">0</property>
+        <property name="top_attach">9</property>
+        <property name="width">1</property>
+        <property name="height">1</property>
+      </packing>
+    </child>
     <child>
       <object class="GtkLabel" id="last_used_heading_label">
         <property name="visible">True</property>
@@ -222,7 +241,7 @@
       </object>
       <packing>
         <property name="left_attach">0</property>
-        <property name="top_attach">9</property>
+        <property name="top_attach">10</property>
         <property name="width">1</property>
         <property name="height">1</property>
       </packing>
@@ -334,7 +353,7 @@
       </packing>
     </child>
     <child>
-      <object class="GtkLabel" id="dns_label">
+      <object class="GtkLabel" id="dns4_label">
         <property name="visible">True</property>
         <property name="can_focus">True</property>
         <property name="xalign">0</property>
@@ -353,6 +372,26 @@
         <property name="height">1</property>
       </packing>
     </child>
+    <child>
+      <object class="GtkLabel" id="dns6_label">
+        <property name="visible">True</property>
+        <property name="can_focus">True</property>
+        <property name="xalign">0</property>
+        <property name="yalign">0</property>
+        <property name="label">::1</property>
+        <property name="wrap">True</property>
+        <property name="selectable">True</property>
+        <property name="hexpand">True</property>
+        <property name="max-width-chars">50</property>
+        <property name="ellipsize">end</property>
+      </object>
+      <packing>
+        <property name="left_attach">1</property>
+        <property name="top_attach">9</property>
+        <property name="width">1</property>
+        <property name="height">1</property>
+      </packing>
+    </child>
     <child>
       <object class="GtkLabel" id="last_used_label">
         <property name="visible">True</property>
@@ -366,7 +405,7 @@
       </object>
       <packing>
         <property name="left_attach">1</property>
-        <property name="top_attach">9</property>
+        <property name="top_attach">10</property>
         <property name="width">1</property>
         <property name="height">1</property>
       </packing>
@@ -385,7 +424,7 @@
       </object>
       <packing>
         <property name="left_attach">0</property>
-        <property name="top_attach">10</property>
+        <property name="top_attach">11</property>
         <property name="width">2</property>
         <property name="height">1</property>
       </packing>
@@ -402,7 +441,7 @@
       </object>
       <packing>
         <property name="left_attach">0</property>
-        <property name="top_attach">11</property>
+        <property name="top_attach">12</property>
         <property name="width">2</property>
         <property name="height">1</property>
       </packing>
diff --git a/panels/network/connection-editor/ip4-page.ui b/panels/network/connection-editor/ip4-page.ui
index 60f9b30c7..c390eb8dc 100644
--- a/panels/network/connection-editor/ip4-page.ui
+++ b/panels/network/connection-editor/ip4-page.ui
@@ -203,7 +203,7 @@
                     <property name="margin_top">24</property>
                     <property name="spacing">6</property>
                     <child>
-                      <object class="GtkLabel" id="dns_label">
+                      <object class="GtkLabel" id="dns4_label">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="hexpand">True</property>
diff --git a/panels/network/connection-editor/ip6-page.ui b/panels/network/connection-editor/ip6-page.ui
index ed3f21141..2234cd1f4 100644
--- a/panels/network/connection-editor/ip6-page.ui
+++ b/panels/network/connection-editor/ip6-page.ui
@@ -217,7 +217,7 @@
                     <property name="margin_top">24</property>
                     <property name="spacing">6</property>
                     <child>
-                      <object class="GtkLabel" id="dns_label">
+                      <object class="GtkLabel" id="dns6_label">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="hexpand">True</property>
diff --git a/panels/network/net-device-ethernet.c b/panels/network/net-device-ethernet.c
index 1925c4703..7ce74cedf 100644
--- a/panels/network/net-device-ethernet.c
+++ b/panels/network/net-device-ethernet.c
@@ -116,6 +116,7 @@ add_details (GtkWidget *details, NMDevice *device, NMConnection *connection)
         const gchar *ip4_route = NULL;
         g_autofree gchar *ip4_dns = NULL;
         const gchar *ip6_address = NULL;
+        g_autofree gchar *ip6_dns = NULL;
         gint i = 0;
 
         ip4_config = nm_device_get_ip4_config (device);
@@ -128,6 +129,8 @@ add_details (GtkWidget *details, NMDevice *device, NMConnection *connection)
 
                 ip4_route = nm_ip_config_get_gateway (ip4_config);
                 ip4_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ip4_config));
+                if (!*ip4_dns)
+                        ip4_dns = NULL;
         }
         ip6_config = nm_device_get_ip6_config (device);
         if (ip6_config) {
@@ -136,6 +139,10 @@ add_details (GtkWidget *details, NMDevice *device, NMConnection *connection)
                 addresses = nm_ip_config_get_addresses (ip6_config);
                 if (addresses->len > 0)
                         ip6_address = nm_ip_address_get_address (g_ptr_array_index (addresses, 0));
+
+                ip6_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ip6_config));
+                if (!*ip6_dns)
+                        ip6_dns = NULL;
         }
 
         if (ip4_address && ip6_address) {
@@ -144,7 +151,7 @@ add_details (GtkWidget *details, NMDevice *device, NMConnection *connection)
         } else if (ip4_address) {
                 add_details_row (details, i++, _("IP Address"), ip4_address);
         } else if (ip6_address) {
-                add_details_row (details, i++, _("IPv6 Address"), ip6_address);
+                add_details_row (details, i++, _("IP Address"), ip6_address);
         }
 
         add_details_row (details, i++, _("Hardware Address"),
@@ -152,8 +159,15 @@ add_details (GtkWidget *details, NMDevice *device, NMConnection *connection)
 
         if (ip4_route)
                 add_details_row (details, i++, _("Default Route"), ip4_route);
-        if (ip4_dns)
+
+        if (ip4_dns && ip6_dns) {
+                add_details_row (details, i++, _("DNS4"), ip4_dns);
+                add_details_row (details, i++, _("DNS6"), ip6_dns);
+        } else if (ip4_dns) {
                 add_details_row (details, i++, _("DNS"), ip4_dns);
+        } else if (ip6_dns) {
+                add_details_row (details, i++, _("DNS"), ip6_dns);
+        }
 
         if (nm_device_get_state (device) != NM_DEVICE_STATE_ACTIVATED) {
                 g_autofree gchar *last_used = NULL;
diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
index 0dd2ee305..34eb86241 100644
--- a/panels/network/net-device-mobile.c
+++ b/panels/network/net-device-mobile.c
@@ -41,8 +41,10 @@ struct _NetDeviceMobile
 
         GtkLabel     *device_label;
         GtkSwitch    *device_off_switch;
-        GtkLabel     *dns_heading_label;
-        GtkLabel     *dns_label;
+        GtkLabel     *dns4_heading_label;
+        GtkLabel     *dns4_label;
+        GtkLabel     *dns6_heading_label;
+        GtkLabel     *dns6_label;
         GtkLabel     *imei_heading_label;
         GtkLabel     *imei_label;
         GtkLabel     *ipv4_heading_label;
@@ -349,6 +351,7 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
         g_autofree gchar *status = NULL;
         NMIPConfig *ipv4_config = NULL, *ipv6_config = NULL;
         gboolean have_ipv4_address = FALSE, have_ipv6_address = FALSE;
+        gboolean have_dns4 = FALSE, have_dns6 = FALSE;
 
         /* set up the device on/off switch */
         gtk_widget_show (GTK_WIDGET (self->device_off_switch));
@@ -380,7 +383,7 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
         if (ipv4_config != NULL) {
                 GPtrArray *addresses;
                 const gchar *ipv4_text = NULL;
-                g_autofree gchar *dns_text = NULL;
+                g_autofree gchar *ip4_dns = NULL;
                 const gchar *route_text;
 
                 addresses = nm_ip_config_get_addresses (ipv4_config);
@@ -391,10 +394,13 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv4_label), ipv4_text != NULL);
                 have_ipv4_address = ipv4_text != NULL;
 
-                dns_text = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv4_config));
-                gtk_label_set_label (self->dns_label, dns_text);
-                gtk_widget_set_visible (GTK_WIDGET (self->dns_heading_label), dns_text != NULL);
-                gtk_widget_set_visible (GTK_WIDGET (self->dns_label), dns_text != NULL);
+                ip4_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv4_config));
+                if (!*ip4_dns)
+                        ip4_dns = NULL;
+                gtk_label_set_label (self->dns4_label, ip4_dns);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns4_heading_label), ip4_dns != NULL);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns4_label), ip4_dns != NULL);
+                have_dns4 = ip4_dns != NULL;
 
                 route_text = nm_ip_config_get_gateway (ipv4_config);
                 gtk_label_set_label (self->route_label, route_text);
@@ -403,8 +409,8 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
         } else {
                 gtk_widget_hide (GTK_WIDGET (self->ipv4_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->ipv4_label));
-                gtk_widget_hide (GTK_WIDGET (self->dns_heading_label));
-                gtk_widget_hide (GTK_WIDGET (self->dns_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns4_heading_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns4_label));
                 gtk_widget_hide (GTK_WIDGET (self->route_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->route_label));
         }
@@ -413,6 +419,7 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
         if (ipv6_config != NULL) {
                 GPtrArray *addresses;
                 const gchar *ipv6_text = NULL;
+                g_autofree gchar *ip6_dns = NULL;
 
                 addresses = nm_ip_config_get_addresses (ipv6_config);
                 if (addresses->len > 0)
@@ -421,9 +428,19 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv6_heading_label), ipv6_text != NULL);
                 gtk_widget_set_visible (GTK_WIDGET (self->ipv6_label), ipv6_text != NULL);
                 have_ipv6_address = ipv6_text != NULL;
+
+                ip6_dns = g_strjoinv (" ", (char **) nm_ip_config_get_nameservers (ipv6_config));
+                if (!*ip6_dns)
+                        ip6_dns = NULL;
+                gtk_label_set_label (self->dns6_label, ip6_dns);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns6_heading_label), ip6_dns != NULL);
+                gtk_widget_set_visible (GTK_WIDGET (self->dns6_label), ip6_dns != NULL);
+                have_dns6 = ip6_dns != NULL;
         } else {
                 gtk_widget_hide (GTK_WIDGET (self->ipv6_heading_label));
                 gtk_widget_hide (GTK_WIDGET (self->ipv6_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns6_heading_label));
+                gtk_widget_hide (GTK_WIDGET (self->dns6_label));
         }
 
         if (have_ipv4_address && have_ipv6_address) {
@@ -434,6 +451,14 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *self)
                 gtk_label_set_label (self->ipv4_heading_label, _("IP Address"));
                 gtk_label_set_label (self->ipv6_heading_label, _("IP Address"));
         }
+
+        if (have_dns4 && have_dns6) {
+                gtk_label_set_label (self->dns4_heading_label, _("DNS4"));
+                gtk_label_set_label (self->dns6_heading_label, _("DNS6"));
+        } else {
+                gtk_label_set_label (self->dns4_heading_label, _("DNS"));
+                gtk_label_set_label (self->dns6_heading_label, _("DNS"));
+        }
 }
 
 static void
@@ -738,8 +763,10 @@ net_device_mobile_class_init (NetDeviceMobileClass *klass)
 
         gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, device_label);
         gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, device_off_switch);
-        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns_heading_label);
-        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns_label);
+        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns4_heading_label);
+        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns4_label);
+        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns6_heading_label);
+        gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, dns6_label);
         gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, imei_heading_label);
         gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, imei_label);
         gtk_widget_class_bind_template_child (widget_class, NetDeviceMobile, ipv4_heading_label);
diff --git a/panels/network/network-mobile.ui b/panels/network/network-mobile.ui
index fa1ad59cc..6f8340b74 100644
--- a/panels/network/network-mobile.ui
+++ b/panels/network/network-mobile.ui
@@ -141,7 +141,7 @@
               </packing>
             </child>
             <child>
-              <object class="GtkLabel" id="dns_label">
+              <object class="GtkLabel" id="dns4_label">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">0</property>
@@ -158,6 +158,24 @@
                 <property name="height">1</property>
               </packing>
             </child>
+            <child>
+              <object class="GtkLabel" id="dns6_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="yalign">0</property>
+                <property name="wrap">True</property>
+                <property name="selectable">True</property>
+                <property name="max-width-chars">50</property>
+                <property name="ellipsize">end</property>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="top_attach">8</property>
+                <property name="width">2</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
             <child>
               <object class="GtkAlignment">
                 <property name="visible">True</property>
@@ -227,7 +245,7 @@
               </packing>
             </child>
             <child>
-              <object class="GtkLabel" id="dns_heading_label">
+              <object class="GtkLabel" id="dns4_heading_label">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="xalign">1</property>
@@ -244,6 +262,24 @@
                 <property name="height">1</property>
               </packing>
             </child>
+            <child>
+              <object class="GtkLabel" id="dns6_heading_label">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">1</property>
+                <property name="yalign">0</property>
+                <property name="label" translatable="yes">DNS</property>
+                <style>
+                  <class name="dim-label"/>
+                </style>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="top_attach">8</property>
+                <property name="width">1</property>
+                <property name="height">1</property>
+              </packing>
+            </child>
             <child>
               <object class="GtkLabel" id="network_label">
                 <property name="visible">True</property>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]